summaryrefslogtreecommitdiff
path: root/docs/res
diff options
context:
space:
mode:
Diffstat (limited to 'docs/res')
-rw-r--r--docs/res/JetBrainsMono-Italic.woff2bin0 -> 75736 bytes
-rw-r--r--docs/res/JetBrainsMono.woff2bin0 -> 70952 bytes
-rw-r--r--docs/res/base.css1160
-rw-r--r--docs/res/base.js115
-rw-r--r--docs/res/bindings.js242
-rw-r--r--docs/res/close.svg1
-rw-r--r--docs/res/ctxedit.css337
-rw-r--r--docs/res/ctxedit.js560
-rw-r--r--docs/res/dismiss.svg1
-rw-r--r--docs/res/fontkit-2.0.2.js8
-rw-r--r--docs/res/glyph-inspector.js965
-rw-r--r--docs/res/graphplot.js239
-rw-r--r--docs/res/grid.css341
-rwxr-xr-xdocs/res/icons/close-black.svg1
-rwxr-xr-xdocs/res/icons/close.svg1
-rwxr-xr-xdocs/res/icons/dismiss-black.svg1
-rwxr-xr-xdocs/res/icons/dismiss.svg1
-rwxr-xr-xdocs/res/icons/font-size-black.svg1
-rwxr-xr-xdocs/res/icons/font-size.svg1
-rwxr-xr-xdocs/res/icons/letter-spacing-black.svg1
-rwxr-xr-xdocs/res/icons/letter-spacing.svg1
-rwxr-xr-xdocs/res/icons/line-height-black.svg1
-rwxr-xr-xdocs/res/icons/line-height.svg1
-rw-r--r--docs/res/icons/minimize-black.svg1
-rw-r--r--docs/res/icons/minimize.svg1
-rwxr-xr-xdocs/res/icons/popup-black.svg1
-rwxr-xr-xdocs/res/icons/popup.svg1
-rwxr-xr-xdocs/res/icons/reset-black.svg1
-rwxr-xr-xdocs/res/icons/reset.svg1
-rwxr-xr-xdocs/res/icons/settings-black.svg1
-rwxr-xr-xdocs/res/icons/settings.svg1
-rwxr-xr-xdocs/res/icons/style-black.svg1
-rwxr-xr-xdocs/res/icons/style.svg1
-rw-r--r--docs/res/metrics.pngbin272310 -> 0 bytes
-rw-r--r--docs/res/metrics2.pngbin569638 -> 0 bytes
-rw-r--r--docs/res/popup.svg1
-rw-r--r--docs/res/preview-app.pngbin236331 -> 0 bytes
-rw-r--r--docs/res/reset.svg1
-rw-r--r--docs/res/sample.pngbin425764 -> 0 bytes
-rw-r--r--docs/res/settings.svg1
-rw-r--r--docs/res/share.pngbin45806 -> 29068 bytes
-rw-r--r--docs/res/weights-and-styles.svg1
42 files changed, 1465 insertions, 2528 deletions
diff --git a/docs/res/JetBrainsMono-Italic.woff2 b/docs/res/JetBrainsMono-Italic.woff2
new file mode 100644
index 000000000..365828fd8
--- /dev/null
+++ b/docs/res/JetBrainsMono-Italic.woff2
Binary files differ
diff --git a/docs/res/JetBrainsMono.woff2 b/docs/res/JetBrainsMono.woff2
new file mode 100644
index 000000000..d484f007d
--- /dev/null
+++ b/docs/res/JetBrainsMono.woff2
Binary files differ
diff --git a/docs/res/base.css b/docs/res/base.css
index c399fc9d3..49823ceaa 100644
--- a/docs/res/base.css
+++ b/docs/res/base.css
@@ -1,120 +1,273 @@
-:root {
- --fontSize: 15px;
- /*--emsAcrossViewport: 80;
- --fontSize: calc(100vw / var(--emsAcrossViewport));*/
+---
+layout: none
+---
+{%- assign font_v = site.data.fontinfo[0].version -%}
+@font-face {
+ font-family: InterVariable; font-style: normal; font-weight: 100 900;
+ font-display: block; /* <-- block, not swap */
+ src: url('../font-files/Inter-Variable.woff2?v={{font_v}}') format('woff2');
+}
+@font-face {
+ font-family: InterVariable; font-style: italic; font-weight: 100 900;
+ font-display: block; /* <-- block, not swap */
+ src: url('../font-files/Inter-Variable-Italic.woff2?v={{font_v}}') format('woff2');
+}
+@font-face {
+ font-family: "jbmono";
+ font-style: normal;
+ font-weight: 100 800;
+ font-display: swap;
+ src: url("JetBrainsMono.woff2") format("woff2");
+}
+@font-face {
+ font-family: "jbmono";
+ font-style: italic;
+ font-weight: 100 800;
+ font-display: swap;
+ src: url("JetBrainsMono-Italic.woff2") format("woff2");
+}
+@font-feature-values InterVariable {
+ @styleset {
+ alt-digits: 1;
+ disambiguation: 2;
+ round-quotes: 2;
+ }
+ @character-variant {
+ cv01: 1; alt-one: 1;
+ cv02: 2; alt-four: 2;
+ cv03: 3; alt-six: 3;
+ cv04: 4; alt-nine: 4;
+ cv05: 5; l-tail: 5;
+ cv06: 6; simple-u: 6;
+ cv07: 7; alt-german-s: 7;
+ cv08: 8; cap-i-serif: 8;
+ cv09: 9; alt-three: 9;
+ cv10: 10; cap-g-spur: 10;
+ cv11: 11; simple-a: 11;
+ cv12: 12; compact-f: 12;
+ cv13: 13; compact-t: 13;
+ }
+}
- --lineHeight: calc(var(--fontSize) * 1.5);
+:root {
+ --font-size: 16px;
+ --line-height: 1.5;
--spacing: 2rem;
- --spacingv: calc(var(--lineHeight) / 2);
-
+ --spacingv: 0.75rem; /* line-height / 2 = ((16*1.5)/2)/16 */
--columnGap: 2rem;
+ --line-width: 2px;
+ --header-height: 48px;
+ --row-padding: 4rem; /* .row */
+ --row-padding-vertical: var(--row-padding);
+
+ --background-color: #fff;
+ --foreground-color: #000;
+ --foreground-color-bright: #000;
+ --foreground-color-5: rgba(0, 0, 0, 0.5);
+ --foreground-color-1: rgba(0, 0, 0, 0.08);
+ --underline-color: rgba(0, 0, 0, 0.3);
+ --underline-color-bright: rgba(0, 0, 0, 0.6);
+ --link-hover-color: var(--blue);
+ --grid-color: #ccc; /* must be opaque */
+ --unit-background-color: var(--foreground-color-1);
- /* colors */
--red: color(display-p3 0.94 0.19 0.04);
+ --hot-orange: color(display-p3 1 0.38 0.19);
--yellow: color(display-p3 1 0.96 0.05);
- --warm-yellow: color(display-p3 1 0.87 0.05);
+ --warm-yellow: color(display-p3 1 0.83 0.2);
--light-yellow: color(display-p3 1 1 0.7);
+ --light-yellow2: color(display-p3 1 0.98 0.59);
--blue: rgb(3, 102, 230);
--green: rgb(38, 220, 78);
- --mediumGreen: rgb(119, 221, 134);
+ --medium-green: rgb(119, 221, 134);
+
+ --font-family: InterVariable;
+
+ /* font-size needed at :root for rem to work as expected */
+ font-family: var(--font-family), sans-serif;
+ font-synthesis: none;
+ font-size: var(--font-size);
+ font-feature-settings: 'liga' 1, 'calt' 1; /* workaround for bug in Chrome */
+}
+@supports not (font-variation-settings: normal) { :root {
+ --font-family: Inter;
+}}
+@supports not (color: color(display-p3 1 1 1)) { :root { /* sRGB colors */
+ --red: #F03009;
+ --yellow: #FFF310;
+ --warm-yellow: #FFE310;
+ --light-yellow: rgb(255, 255, 179);
+ --light-yellow2: rgb(255, 250, 135);
+}}
+@media (prefers-color-scheme: dark) { :root {
+ --background-color: #111;
+ --foreground-color: #fafafa;
+ --foreground-color-bright: #fff;
+ --foreground-color-5: rgba(255, 255, 255, 0.5);
+ --underline-color: rgba(255, 255, 255, 0.3);
+ --underline-color-bright: rgba(255, 255, 255, 0.6);
+ --link-hover-color: var(--light-yellow);
+ --grid-color: #555; /* must be opaque */
+ --unit-background-color: #333;
+ font-weight: 400;
+}}
- --font-family: 'Inter';
+/* narrow windows */
+@media only screen and (max-width: 1391px) { /* window width <= 1391 */
+ .only-huge-screen { display: none !important; }
}
-
-@supports (font-variation-settings: normal) {
- :root {
- --font-family: 'Inter var';
- }
+@media only screen and (max-width: 719px) { /* window width <= 719 */
+ :root { --row-padding: 2rem; }
+ .only-large-screen { display: none !important; }
}
-
-@supports not (color: color(display-p3 1 1 1)) {
- /* sRGB colors */
- :root {
- --red: #F03009;
- --yellow: #FFF310;
- --warm-yellow: #FFE310;
- --light-yellow: rgb(255, 255, 179);
- }
+@media only screen and (max-width: 500px) { /* window width <= 500 */
+ :root { --row-padding: 1rem; --row-padding-vertical: 2rem }
+}
+/* wide windows */
+@media only screen and (min-width: 720px) { /* window width >= 720 */
+ .only-small-screen { display: none !important; }
+}
+@media only screen and (min-width: 1392px) { /* window width >= 1392 */
+ :root { font-size: calc(100vw / 87); }
}
-* { margin:0; padding:0; font-synthesis: none; }
-
-html.debug *:nth-child(4n) { outline:1px solid rgba(0,0,255,0.5); }
-html.debug *:nth-child(4n+1) { outline:1px solid rgba(0,255,255,0.5); }
-html.debug *:nth-child(4n+2) { outline:1px solid rgba(255,0,255,0.5); }
-html.debug *:nth-child(4n+3) { outline:1px solid rgba(255,0,0,0.5); }
-
-html { }
body {
- background-color: #f4f4f4;
- color: #111;
- font: 15px/22px var(--font-family), system-ui, sans-serif;
+ background-color: var(--background-color);
+ color: var(--foreground-color);
+ line-height: var(--line-height);
+ -webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
+ -webkit-overflow-scrolling: touch;
+ scroll-behavior: smooth;
+ margin: 0;
+ padding: var(--header-height) 0 0 0;
+}
- /*font-size: 15px;
- line-height: 1.5;*/
+* { scroll-padding-top: var(--header-height); }
+
+header {
+ position: sticky; top: 0; left: 0; right: 0;
+ height: var(--header-height);
+ overflow: hidden;
+ z-index: 2;
+ background: var(--background-color);
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: stretch;
+ padding: 0;
+ font-size: 14px;
+}
+ header > div {
+ width:100%;
+ /*max-width: calc(1392px - 8rem);*/
+ flex: 1 0 100%;
+ display: flex;
+ flex-direction: row;
+ align-items: stretch;
+ }
+ header > div > * { padding: 0 var(--row-padding); }
+ header .menu {
+ flex: 1 0 auto;
+ display: flex;
+ flex-direction: row;
+ justify-content: flex-end;
+ align-items: center;
+ gap: 2em;
+ }
+ header h4 {
+ flex: 0 0 auto;
+ margin: 0;
+ display: flex;
+ align-items: center;
+ }
+ header a { padding: 0; text-decoration: none }
+ header a:hover { text-decoration: none; color:inherit }
+ header .scroll-reveal {
+ pointer-events: none;
+ user-select: none;
+ opacity: 0;
+ transition: opacity 200ms ease-in-out;
+ }
+ header .scroll-reveal.visible {
+ opacity: 1;
+ pointer-events: all;
+ }
+@media only screen and (max-width: 500px) { /* window width <= 500 */
+ header { position: fixed; }
+ header .scroll-reveal { opacity: 1; pointer-events: all; }
+ header .menu { gap: 8px }
+ header .menu > * { flex: 1 1 auto }
+}
- font-size: var(--fontSize);
- line-height: var(--lineHeight);
+footer { opacity: 0.4; }
+footer:hover { opacity: 1; }
- letter-spacing: -0.004em;
+/* blocks */
+div, p, pre, ol, ul, h1, h2, h3, h4, h5, h6 {
+ margin: 0;
+ padding: 0;
+}
+p, pre, ol, ul {
+ margin-bottom: calc(var(--spacingv) * 2);
+}
+h1 {
+ font-weight: 600;
+ font-size: 4rem;
+ letter-spacing: -0.01em;
+ line-height: 1.0;
+ margin-left: calc(3rem / -19);
+ margin-bottom: calc(var(--spacingv) * 2);
+ color: var(--foreground-color-bright);
+}
+h2 {
+ font-weight: 600;
+ font-size: 2rem;
+ letter-spacing: -0.01em;
+ line-height: calc(var(--spacingv) * 3);
+ margin-bottom: calc(var(--spacingv) * 2);
+}
+h3 {
+ font-weight: 600;
+ font-size: 1.2rem;
+ /*letter-spacing: -0.018em;*/
+ /*line-height: calc(var(--spacingv) * 2);*/
+ margin-bottom: calc(var(--spacingv) * 2);
+}
+h3 q {
font-weight: 400;
+ padding-left: 0.5em;
+}
+h4, h5, h6 {
+ font-weight: 640;
+ margin-bottom: calc(var(--spacingv) * 1);
+}
- -webkit-text-size-adjust: 100%;
- -ms-text-size-adjust: 100%;
+h1 > a,
+h2 > a,
+h3 > a,
+h4 > a {
+ display: inline-block;
+ color: inherit;
+ text-decoration: none !important;
+ text-shadow: none;
+ background: none;
+ outline:none;
+}
- -webkit-overflow-scrolling: touch;
- scroll-behavior: smooth;
+/* add top margin to Hn when it follows another element */
+* + h1 { margin-top: calc(var(--spacingv) * 6); }
+* + h2 { margin-top: calc(var(--spacingv) * 4); }
+* + h3 { margin-top: calc(var(--spacingv) * 3); }
+* + h4 { margin-top: calc(var(--spacingv) * 2); }
- font-kerning: normal;
- -webkit-font-kerning: normal;
- -ms-font-kerning: normal;
- -moz-font-kerning: normal;
- -o-font-kerning: normal;
-
- font-variant-ligatures: contextual common-ligatures;
- -webkit-font-variant-ligatures: contextual common-ligatures;
- -ms-font-variant-ligatures: contextual common-ligatures;
- -moz-font-variant-ligatures: contextual common-ligatures;
- -o-font-variant-ligatures: contextual common-ligatures;
-
- /* required to work around letter-spacing bug in Chrome: */
- font-feature-settings: 'kern' 1, 'liga' 1, 'calt' 1;
-}
-
-/* Font style classifiers used by samples and dynmetrics */
-/* Note: font-variation-settings is needed for Safari. */
-.font-style-thin { font-variation-settings: "wght" 100, "slnt" 0 !important; font-weight:100 !important; font-style:normal !important; }
-.font-style-thin-italic { font-variation-settings: "wght" 100, "slnt" 100 !important; font-weight:100 !important; font-style:oblique !important; }
-.font-style-extra-light { font-variation-settings: "wght" 200, "slnt" 0 !important; font-weight:100 !important; font-style:normal !important; }
-.font-style-extra-light-italic { font-variation-settings: "wght" 200, "slnt" 100 !important; font-weight:100 !important; font-style:oblique !important; }
-.font-style-light { font-variation-settings: "wght" 300, "slnt" 0 !important; font-weight:300 !important; font-style:normal !important; }
-.font-style-light-italic { font-variation-settings: "wght" 300, "slnt" 100 !important; font-weight:300 !important; font-style:oblique !important; }
-.font-style-regular { font-variation-settings: "wght" 400, "slnt" 0 !important; font-weight:400 !important; font-style:normal !important; }
-.font-style-italic { font-variation-settings: "wght" 400, "slnt" 100 !important; font-weight:400 !importants; font-style:oblique !important; }
-.font-style-medium { font-variation-settings: "wght" 500, "slnt" 0 !important; font-weight:500 !important; font-style:normal !important; }
-.font-style-medium-italic { font-variation-settings: "wght" 500, "slnt" 100 !important; font-weight:500 !important; font-style:oblique !important; }
-.font-style-semi-bold { font-variation-settings: "wght" 600, "slnt" 0 !important; font-weight:600 !important; font-style:normal !important; }
-.font-style-semi-bold-italic { font-variation-settings: "wght" 600, "slnt" 100 !important; font-weight:600 !important; font-style:oblique !important; }
-.font-style-bold { font-variation-settings: "wght" 700, "slnt" 0 !important; font-weight:700 !important; font-style:normal !important; }
-.font-style-bold-italic { font-variation-settings: "wght" 700, "slnt" 100 !important; font-weight:700 !important; font-style:oblique !important; }
-.font-style-extra-bold { font-variation-settings: "wght" 800, "slnt" 0 !important; font-weight:800 !important; font-style:normal !important; }
-.font-style-extra-bold-italic { font-variation-settings: "wght" 800, "slnt" 100 !important; font-weight:800 !important; font-style:oblique !important; }
-.font-style-black { font-variation-settings: "wght" 900, "slnt" 0 !important; font-weight:900 !important; font-style:normal !important; }
-.font-style-black-italic { font-variation-settings: "wght" 900, "slnt" 100 !important; font-weight:900 !important; font-style:oblique !important; }
-
-DISABLED:target:before {
- content:"";
- display: block;
- height: 20px; /* fixed header height*/
- margin: -20px 0 0; /* negative fixed header height */
- visibility: hidden;
-}
a {
- text-decoration: underline rgba(0, 0, 0, 0.3);
- color: black;
+ text-decoration: underline;
+ text-decoration-color: var(--underline-color);
+ color: var(--foreground-color);
word-break: break-word;
word-wrap: break-word;
}
@@ -123,7 +276,8 @@ a.fat {
color: #333;
}
a:hover {
- color: var(--red);
+ color: var(--link-hover-color);
+ text-decoration-color: var(--link-hover-color);
text-decoration: underline;
}
a.plain, a.fat {
@@ -136,25 +290,34 @@ a[href^="#"]:hover {
text-decoration-style: dashed;
}
-/*p, pre {
- margin: 1rem 0;
-}*/
-code, pre, q, tt {
- font-family: 'IBM Plex Mono', monospace;
- font-feature-settings: 'kern' 1, 'liga' 1, 'calt' 1, 'ss02' 1, 'zero' 1;
+code, pre, q, tt, r-feat, .feat {
+ font-family: jbmono, Menlo, monospace;
+ font-size: 92%;
+ font-feature-settings: "calt" 0;
line-height: inherit;
+ font-weight: 440;
}
-code {
- display: block;
- border-radius:1px;
- padding: 0.5em 0;
- overflow: auto;
+code, r-feat, .feat {
+ padding: 0 .1em;
+ white-space: pre;
}
pre {
white-space: pre-wrap;
line-break: loose;
overflow-x: auto;
}
+r-feat, .feat {
+ padding: 0 .3em;
+ /*margin: 0 .1em;*/
+ border-radius: 0.3em;
+ user-select: all;
+ background: var(--unit-background-color);
+}
+a.feat:hover {
+ text-decoration: none;
+ background: var(--foreground-color);
+ color:var(--background-color);
+}
q {
display: inline;
white-space: pre-wrap;
@@ -184,158 +347,47 @@ dem { /* de-emphasize */
opacity: 0.7;
}
num { /* number */
- /*-moz-font-feature-settings: 'calt' 1, 'ss01' 1;
- -ms-font-feature-settings: 'calt' 1, 'ss01' 1;
- -o-font-feature-settings: 'calt' 1, 'ss01' 1;
- -webkit-font-feature-settings: 'kern' 1, 'calt' 1, 'ss01' 1;
- font-feature-settings: 'calt' 1, 'ss01' 1;*/
letter-spacing:0.01em;
- white-space: pre;
+ white-space: nowrap;
+ font-variant: tabular-nums slashed-zero;
}
-
em, i, .italic {
- font-style: oblique;
+ font-style: italic;
}
-
-small {
- font-size: 11px;
+small, .small {
+ font-size: 1vw;
letter-spacing: 0.012em;
}
-
-h1, h2, h3, h4, h5, h6 {
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-}
-/*h1, .h1 {
- color: #222;
- font-size: 55px;
- letter-spacing: -0.038em;
- line-height: 1.1em;
- text-indent: -2px;
- font-weight: 700;
-}
-h1 {
- margin-bottom: 30px;
- margin-top: 10px;
-}*/
-h1, .h1 {
- margin-left: calc(3rem / -20);
- font-weight: 700;
- font-size: 4rem;
- letter-spacing: -0.07em;
- line-height: calc(var(--spacingv) * 6);
-}
-h1 {
- margin-bottom: calc(var(--spacingv) * 2);
-}
-
-h2, .h2 {
- font-weight: 700;
- font-size: 1.8rem;
- letter-spacing: -0.03em;
- line-height: calc(var(--spacingv) * 3);
-}
-h2 {
- margin-bottom: calc(var(--spacingv) * 2);
-}
-h3, .h3 {
- font-weight: 700;
- font-weight: 650;
- font-size: 1.2rem;
- letter-spacing: -0.018em;
- line-height: calc(var(--spacingv) * 2);
-}
-h3 {
- margin-bottom: calc(var(--spacingv) * 2);
-}
-
-h3 q, h3. q {
- font-weight: 400;
- padding-left: 0.5em;
+@media only screen and (max-width: 1200px) {
+ small, .small { font-size: 12px; }
}
-h1 > a, h2 > a, h3 > a, h4 > a,
-.h1 > a, .h2 > a, .h3 > a, .h4 > a {
- display:block;
- color: inherit;
- text-decoration: none !important;
- text-shadow: none;
- background: none;
- outline:none;
-}
-
-h4, h5, h6, .h4, .h5, .h6 {
- font-weight: 640;
- letter-spacing: -0.015em;
-}
-h4, h5, h6 {
- margin-bottom: calc(var(--spacingv) * 1);
-}
-/* add top margin to Hn when it follows another element */
-* + h1 { margin-top: calc(var(--spacingv) * 6); }
-* + h2 { margin-top: calc(var(--spacingv) * 4); }
-* + h3 { margin-top: calc(var(--spacingv) * 3); }
-* + h4 { margin-top: calc(var(--spacingv) * 2); }
-
-p, pre, p + grid, pre + grid {
- margin-bottom: var(--lineHeight);
+hr {
+ border: none;
+ background: var(--foreground-color);
+ /*width: 100%;*/
+ height: var(--line-width);
+ margin-top: calc(1em * var(--line-height));
+ margin-bottom: calc(1em * var(--line-height));
}
+ol, ul { padding-left:1.2rem; }
-.row.dark h2,
-.row.black h2 {
- letter-spacing: -0.014em;
-}
-h2.back {
- color:rgba(0,0,0,0.2);
- font-size: inherit;
- letter-spacing: inherit;
- font-weight:400;
- margin:0;
- margin-top:-1.9em;
-}
-h2.back a:hover {
- color: black;
- margin-left:-1.3em;
-}
-h2.back a:hover::before {
- content: "<- ";
-}
-h2.banner {
- text-align: center;
- display: flex;
- justify-content: center;
-}
- h2.banner > * {
- flex: 0 1 auto;
- padding: 0.8em 1.2em;
- border-radius: 4em;
- display: block;
- background: white;
- }
- h2.banner > a:hover {
- color: black;
- background: rgba(0,0,0,0.1);
- }
-
-.row.dark h3,
-.row.black h3 {
- letter-spacing: -0.012em;
-}
+input, select { font: inherit }
-.row.yellow {
- background: var(--yellow);
- color: rgba(0, 0, 0, 0.98);
+.leading-trim {
+ margin-top: -0.235em;
+ line-height: 1.2;
}
.row {
- padding: 50px;
+ padding: var(--row-padding-vertical) var(--row-padding);
display: flex;
justify-content: center;
}
.row > * {
width:100%;
- max-width: 888px;
+ max-width: calc(100vw - calc(var(--row-padding) * 2));
flex: 1 0 100%;
}
.row .learn-more {
@@ -360,374 +412,6 @@ h2.banner {
max-width: initial;
}
-.row-divider {
- height: 1rem;
- /*margin: 0 auto;
- max-width: 888px;
- height: 0.11rem;
- background: black;*/
-}
-
-.row.menu {
- padding: 0;
- border-bottom:1px solid rgba(0,0,0,0.1);
- background: #111;
- color: white;
- border-top: 40px solid red;
- margin-top: -40px;
-}
- .row.menu ul {
- width: auto;
- max-width: 888px;
- flex: 1 1 auto;
- list-style: none;
- padding: 0;
- margin: 0 50px;
- display: flex;
- flex-wrap: wrap;
- white-space: nowrap;
- }
- .row.menu ul li {
- margin-bottom: -1px;
- text-indent: -0.5px;
- text-align: center;
- }
- .row.menu ul li > a {
- color: inherit;
- opacity: 0.8;
- text-decoration:none;
- display: inline-block;
- padding: 15px 20px 13px 20px;
- margin-right: 1px;
- font-weight: 450;
- /*transition: 80ms all cubic-bezier(0.25, 0.47, 0.44, 0.93);*/
- }
- .row.menu ul li > a:hover,
- .row.menu ul li > a.active {
- color: white;
- background: var(--red);
- opacity: 1;
- }
- .row.menu ul li:first-child > a {
- padding-left:0;
- padding-right:0;
- margin-right: 25px;
- background:transparent;
- }
- .row.menu ul li:first-child > a:hover {
- text-decoration:underline;
- }
- .row.menu ul li.nav-home > a {
- font-weight: 600;
- color: white;
- opacity: 1;
- }
-
-/* narrow windows */
-@media only screen and (max-width: 565px) {
- .row {
- padding-left: 24px;
- padding-right: 24px;
- }
- .row.menu ul {
- display: grid;
- grid-template-columns: repeat(4,1fr);
- margin: 0 20px;
- }
- .row.menu ul {
- }
- .row.menu ul li {
- display: flex;
- }
- .row.menu ul li > a {
- flex: 0 1 100%;
- margin: 0;
- padding-right:0;
- padding-left:0;
- box-shadow: inset 1px 0 0 0 rgba(255,255,255,0.1);
- }
- .row.menu ul li:first-child > a {
- margin-right: 0;
- box-shadow: none;
- }
- .row.menu ul li.nav-home a {
- text-align: left;
- }
-}
-
-/* progressively hide menu items */
-@media only screen and (max-width: 680px) {
- .row.menu .nav-lab { display: none; }
-}
-@media only screen and (max-width: 565px) {
- .row.menu .nav-download { display: none; }
-}
-@media only screen and (max-width: 280px) {
- .row.menu ul { grid-template-columns: repeat(3,1fr); }
- .row.menu .nav-dynmetrics { display: none; }
-}
-
-
-.row.white {
- background: white;
-}
-
-.row.dark,
-.row.black {
- background: #2b2b2b;
- color: #99999b;
-}
-.row.green {
- background: var(--mediumGreen);
- color: black;
-}
-.row.blue {
- background: var(--blue);
- color: white;
-}
-.row.black {
- background: #010101;
-}
-.row.dark a,
-.row.black a {
- text-decoration-color: rgba(255, 255, 255, 0.2);
- color: #aaa;
-}
-.row.dark a:hover,
-.row.black a:hover {
- color: rgb(95, 170, 255);
- text-decoration: underline rgb(95, 170, 255);
-}
-.row.dark h2, .row.dark h2 > a,
-.row.black h2, .row.black h2 > a {
- color: #ccc;
- background: none;
-}
-.row.green h2 > a:hover {
- color: inherit;
- text-decoration-style: solid !important;
- text-decoration: underline !important;
- text-decoration: underline rgba(0, 0, 0, 0.3) !important;
-}
-.row.green > * > p > a:hover {
- color: inherit;
-}
-
-.row.color1 {
- background: #C0CDE2;
- color: #3B414A;
-}
-
-footer { opacity: 0.4; }
-footer:hover { opacity: 1; }
-
-
-/* --------------------------------------------------------------------- */
-
-ul { margin-left:1.1em; }
-a > img { display: block; }
-
-/* --------------------------------------------------------------------- */
-/* generic helpers */
-
-.low-contrast { opacity: 0.4; }
-.center-text { text-align: center; }
-
-/* --------------------------------------------------------------------- */
-
-#repertoire-image {
- display:block;
- width:100%;
- height:40vw;
- background-image: url(res/repertoire.png);
- background-repeat: no-repeat;
- background-size: cover;
- background-blend-mode: multiply;
- background-color: #f4f4f4;
-}
-
-.sample-images {}
- .sample-images img, .sample-images svg {
- display: block;
- width: 100%;
- }
-
-/* --------------------------------------------------------------------- */
-/* grid */
-
-grid {
- grid-column-gap: var(--columnGap);
- grid-row-gap: 0;
-}
-grid > c.spacer {
- grid-column: 1 / -1;
- height: calc(var(--spacingv) * 6);
-}
-
-@media only screen and (max-width: 565px) {
- grid { grid-column-gap: 1rem; }
- grid > c.spacer { height: calc(var(--spacingv) * 3); }
-}
-
-.row.features { display:none; }
-@supports (display: grid) {
- .row.features { display:flex; }
-}
-.row.features p.example { margin-top:2rem; opacity:0.4; }
-
-.row.features grid {
- grid-column-gap: 1rem;
- grid-row-gap: 0.5rem;
- margin-bottom: 0;
-}
-
-/* --------------------------------------------------------------------- */
-/* flow */
-
-flow { display:block; appearance: none; -webkit-appearance: none }
-flow[columns] {
- column-gap: var(--columnGap);
- column-fill: balance;
-}
-flow[columns="2"] {
- column-count: 2;
-}
-@media only screen and (max-width: 565px) {
- flow[columns-s="1"] {
- column-count: 1;
- }
-}
-
-/* column flow */
-[flow-cols], [flow-cols-s], [flow-cols-l] {
- column-gap: var(--columnGap);
- column-fill: balance;
-}
-[flow-cols="1"] { column-count: 1 }
-[flow-cols="2"] { column-count: 2 }
-[flow-cols="3"] { column-count: 3 }
-[flow-cols="4"] { column-count: 4 }
-[flow-cols="5"] { column-count: 5 }
-[flow-cols="6"] { column-count: 6 }
-[flow-cols="7"] { column-count: 7 }
-[flow-cols="8"] { column-count: 8 }
-
-@media only screen and (max-width: 565px) {
- [flow-cols-s="1"] { column-count: 1 }
- [flow-cols-s="2"] { column-count: 2 }
- [flow-cols-s="3"] { column-count: 3 }
- [flow-cols-s="4"] { column-count: 4 }
- [flow-cols-s="5"] { column-count: 5 }
- [flow-cols-s="6"] { column-count: 6 }
- [flow-cols-s="7"] { column-count: 7 }
- [flow-cols-s="8"] { column-count: 8 }
-}
-
-
-/* --------------------------------------------------------------------- */
-
-boxes {
- display: flex;
- flex-wrap: wrap;
- justify-content: stretch;
- margin-right:-1em;
-}
-box {
- overflow: auto;
- flex: 1 1 0;
- box-sizing: border-box;
- min-width: 270px;
- max-width: 100%;
- display: flex;
- flex-direction: column;
- background: white;
- padding: 2em;
- border-radius: 3px;
- margin-right:1em;
- margin-bottom:1em;
- flex-basis: 40%;
-}
-box:first-child {
- margin-left:0;
-}
-box h3 {
- margin-bottom:0.8em;
-}
-
-box.large tablex r {
- line-height: 1.5;
-}
-box.large tablex r in,
-box.large tablex r to,
-box.large tablex r out {
- font-size: 2rem;
- padding-bottom: 0;
-}
-
-#hud-notification {
- position: fixed;
- bottom: 20px;
- left: 0;
- right: 0;
- display: flex;
- justify-content: center;
- z-index: 9;
- pointer-events: none;
-}
- #hud-notification .msg {
- background: #000;
- color: white;
- height: 32px;
- line-height: 32px;
- font-size: 14px;
- letter-spacing: 0em;
- padding: 0 0.7em;
- border-radius: 4px;
- opacity: 0.1;
- transition: 250ms all ease-in;
- transform: translate3d(0, 71px, 0); /* height + bottom offset + 1 */
- }
- #hud-notification.visible .msg {
- transform: translate3d(0, 0, 0);
- transition: 120ms all cubic-bezier(0.25, 0.47, 0.44, 0.93);
- opacity: 1;
- }
-
-
-/* ------------------------------------------------------ */
-
-
-/* wide windows */
-@media only screen and (min-width: 566px) {
- .narrow-window, .only-small-screen { display: none; }
-}
-
-/* narrow windows */
-@media only screen and (max-width: 565px) {
- .wide-window, .only-large-screen { display: none; }
-}
-
-/* small devices (<= iPhone 6+) */
-@media only screen and (max-device-width: 414px) {
- box { padding: 1em; }
- box tablex r { font-size: 0.9em; }
- body {
- font-size: 14px;
- line-height: 20px;
- }
- .row {
- padding-left: 20px;
- padding-right: 20px;
- }
-}
-
-/* small devices (<= iPhone 5) */
-@media only screen and (max-device-width: 320px) {
- box {
- font-size: 0.8em;
- min-width: 240px;
- }
-}
/*
Feature helpers.
@@ -735,9 +419,7 @@ Feature helpers.
Note: font-variant-alternates:character-variant is not yet supported by
most browsers, which is why we use the "low leve" font-feature-settings
instead.
-
*/
-
.ff-none { font-feature-settings: 'kern' 1, 'calt' 0, 'liga' 0, 'ccmp' 0; -webkit-font-feature-settings: 'kern' 1, 'calt' 0, 'liga' 0, 'ccmp' 0; -ms-font-feature-settings: 'kern' 1, 'calt' 0, 'liga' 0, 'ccmp' 0; -moz-font-feature-settings: 'kern' 1, 'calt' 0, 'liga' 0, 'ccmp' 0; }
.ff-liga,
@@ -772,69 +454,26 @@ instead.
.ff-cv11 { font-feature-settings: 'kern' 1, 'cv11' 1; -webkit-font-feature-settings: 'kern' 1, 'cv11' 1; -ms-font-feature-settings: 'kern' 1, 'cv11' 1; -moz-font-feature-settings: 'kern' 1, 'cv11' 1; }
-
-.row.charset {
- padding-top: 1rem;
- padding-left: 0;
- padding-right: 0;
- /* maintain cascading margin-bottom */
-}
-
-.charset-table {
- --gridColor: #bbb;
- --columns: 24;
- --columnsL: 32;
- --columnsS: 16;
- --columnsXS: 8;
- --tableWidth: 95vw;
-
- flex: 1 1 auto;
- padding: 0;
- margin: 1rem auto;
-
- max-width: var(--tableWidth);
- width: var(--tableWidth);
+.button, a.button {
+ font: inherit;
+ display: inline-block;
+ padding: 0.25rem 0.8rem;
+ margin: 0.5rem 0;
+ border: none;
+ border-radius: 6px;
+ text-decoration: none;
+ user-select: none;
+ font-weight: 470;
+ letter-spacing: 0.02em;
+ background: var(--foreground-color);
+ color: var(--background-color);
+ white-space: nowrap;
overflow: hidden;
-
- display: flex;
- flex-wrap: wrap;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-
- box-shadow: -1px -1px 0 var(--gridColor),
- -1px 0 0 var(--gridColor),
- 0 -1px 0 var(--gridColor);
-}
- .charset-table > a {
- flex: 0 0 auto;
-
- margin: 0;
- padding: 0;
-
- display: flex;
- align-items: center;
- justify-content: center;
-
- width: calc(var(--tableWidth) / var(--columns));
- height: calc(var(--tableWidth) / var(--columns));
-
- font-size: calc(100vw / calc(var(--columns) * 2));
- line-height: 100%;
- text-align: center;
- font-feature-settings: "calt" 0; /* disable all */
-
- box-shadow: inset -1px -1px 0 var(--gridColor);
- text-decoration: none;
- }
-/* for window width >= 1600 */
-@media only screen and (min-width: 1599px) {
- .charset-table { --columns: var(--columnsL); }
+ text-overflow: ellipsis;
+ flex: 0 1 auto;
}
-@media only screen and (max-width: 800px) {
- .charset-table { --columns: var(--columnsS); }
-}
-@media only screen and (max-width: 565px) {
- .charset-table { --columns: var(--columnsXS); }
+.button:hover, a.button:hover {
+ background: var(--link-hover-color);
}
@@ -845,14 +484,14 @@ instead.
height: 2em;
line-height: 2em;
border-radius: 0.25em;
- border: 1px solid rgba(0,0,0,0.2);
+ border: 1px solid var(--underline-color);
font-weight: 500; font-weight: 480;
text-decoration: none;
padding: 0 0.6em;
user-select: none; -webkit-user-select: none;
}
#sponsor-button:hover {
- border-color: rgba(0,0,0,0.6);
+ border-color: var(--foreground-color);
color: inherit;
}
#sponsor-button span {
@@ -867,3 +506,188 @@ instead.
font-size: 1.1em;
line-height: 1em;
}
+
+
+.cv01 { font-variant-alternates: character-variant(cv01); }
+.cv02 { font-variant-alternates: character-variant(cv02); }
+.cv03 { font-variant-alternates: character-variant(cv03); }
+.cv04 { font-variant-alternates: character-variant(cv04); }
+.cv05 { font-variant-alternates: character-variant(cv05); }
+.cv06 { font-variant-alternates: character-variant(cv06); }
+.cv07 { font-variant-alternates: character-variant(cv07); }
+.cv08 { font-variant-alternates: character-variant(cv08); }
+.cv09 { font-variant-alternates: character-variant(cv09); }
+.cv10 { font-variant-alternates: character-variant(cv10); }
+.cv11 { font-variant-alternates: character-variant(cv11); }
+.cv12 { font-variant-alternates: character-variant(cv12); }
+.cv13 { font-variant-alternates: character-variant(cv13); }
+.zero { font-variant-numeric: slashed-zero; }
+
+
+/* Raster grid subsystem (rsms.me/raster) */
+r-grid {
+ display: grid;
+ --grid-tc: repeat(4, 1fr);
+ grid-template-columns: var(--grid-tc);
+ --grid-cs: 1; /* column start */
+ --grid-ce: -1; /* column end */
+ grid-column-gap: var(--columnGap);
+ grid-row-gap: 0;
+}
+
+r-grid > r-cell.spacer {
+ grid-column: 1 / -1;
+ height: calc(var(--spacingv) * 6);
+}
+@media only screen and (max-width: 719px) {
+ r-grid { grid-column-gap: 1rem; }
+ r-cell.spacer { height: calc(var(--spacingv) * 3); }
+}
+r-grid > hr { grid-column: 1 / -1; width: 100% }
+
+
+/* r-cell -- cell or column */
+r-grid > r-cell { display: block; appearance: none; -webkit-appearance: none }
+
+r-grid[columns="1"] { --grid-tc: repeat(1, 1fr) }
+r-grid[columns="2"] { --grid-tc: repeat(2, 1fr) }
+r-grid[columns="3"] { --grid-tc: repeat(3, 1fr) }
+r-grid[columns="4"] { --grid-tc: repeat(4, 1fr) }
+r-grid[columns="5"] { --grid-tc: repeat(5, 1fr) }
+r-grid[columns="6"] { --grid-tc: repeat(6, 1fr) }
+r-grid[columns="7"] { --grid-tc: repeat(7, 1fr) }
+r-grid[columns="8"] { --grid-tc: repeat(8, 1fr) }
+
+/* span=start... */
+r-grid > r-cell[span^="1"] { --grid-cs: 1 }
+r-grid > r-cell[span^="2"] { --grid-cs: 2 }
+r-grid > r-cell[span^="3"] { --grid-cs: 3 }
+r-grid > r-cell[span^="4"] { --grid-cs: 4 }
+r-grid > r-cell[span^="5"] { --grid-cs: 5 }
+r-grid > r-cell[span^="6"] { --grid-cs: 6 }
+r-grid > r-cell[span^="7"] { --grid-cs: 7 }
+r-grid > r-cell[span^="8"] { --grid-cs: 8 }
+
+/* span=...+width, span=...-end */
+r-grid > r-cell[span$="+1"], r-grid > r-cell[span="1"] { --grid-ce: 1 }
+r-grid > r-cell[span$="+2"], r-grid > r-cell[span$="-1"], r-grid > r-cell[span="2"] { --grid-ce: 2 }
+r-grid > r-cell[span$="+3"], r-grid > r-cell[span$="-2"], r-grid > r-cell[span="3"] { --grid-ce: 3 }
+r-grid > r-cell[span$="+4"], r-grid > r-cell[span$="-3"], r-grid > r-cell[span="4"] { --grid-ce: 4 }
+r-grid > r-cell[span$="+5"], r-grid > r-cell[span$="-4"], r-grid > r-cell[span="5"] { --grid-ce: 5 }
+r-grid > r-cell[span$="+6"], r-grid > r-cell[span$="-5"], r-grid > r-cell[span="6"] { --grid-ce: 6 }
+r-grid > r-cell[span$="+7"], r-grid > r-cell[span$="-6"], r-grid > r-cell[span="7"] { --grid-ce: 7 }
+r-grid > r-cell[span$="+8"], r-grid > r-cell[span$="-7"], r-grid > r-cell[span="8"] { --grid-ce: 8 }
+r-grid > r-cell[span$="-8"] { --grid-ce: 9 }
+
+/* connect vars */
+r-grid > r-cell[span] { grid-column-end: span var(--grid-ce) }
+r-grid > r-cell[span*="+"], r-grid > r-cell[span*="-"], r-grid > r-cell[span*=".."] {
+ grid-column-start: var(--grid-cs) }
+r-grid > r-cell[span*="-"], r-grid > r-cell[span*=".."] {
+ grid-column-end: var(--grid-ce) }
+r-grid > r-cell[span="row"] { grid-column: 1 / -1 }
+
+@media only screen and (max-width: 719px) {
+ r-grid[columns-s="1"] { --grid-tc: repeat(1, 1fr) }
+ r-grid[columns-s="2"] { --grid-tc: repeat(2, 1fr) }
+ r-grid[columns-s="3"] { --grid-tc: repeat(3, 1fr) }
+ r-grid[columns-s="4"] { --grid-tc: repeat(4, 1fr) }
+ r-grid[columns-s="5"] { --grid-tc: repeat(5, 1fr) }
+ r-grid[columns-s="6"] { --grid-tc: repeat(6, 1fr) }
+ r-grid[columns-s="7"] { --grid-tc: repeat(7, 1fr) }
+ r-grid[columns-s="8"] { --grid-tc: repeat(8, 1fr) }
+
+ /* span-s=start... */
+ r-grid > r-cell[span-s^="1"] { --grid-cs: 1 }
+ r-grid > r-cell[span-s^="2"] { --grid-cs: 2 }
+ r-grid > r-cell[span-s^="3"] { --grid-cs: 3 }
+ r-grid > r-cell[span-s^="4"] { --grid-cs: 4 }
+ r-grid > r-cell[span-s^="5"] { --grid-cs: 5 }
+ r-grid > r-cell[span-s^="6"] { --grid-cs: 6 }
+ r-grid > r-cell[span-s^="7"] { --grid-cs: 7 }
+ r-grid > r-cell[span-s^="8"] { --grid-cs: 8 }
+
+ /* span-s=...+width, span-s=...-end */
+ r-grid > r-cell[span-s$="+1"], r-grid > r-cell[span-s="1"] { --grid-ce: 1 }
+ r-grid > r-cell[span-s$="+2"], r-grid > r-cell[span-s$="-1"], r-grid > r-cell[span-s="2"] { --grid-ce: 2 }
+ r-grid > r-cell[span-s$="+3"], r-grid > r-cell[span-s$="-2"], r-grid > r-cell[span-s="3"] { --grid-ce: 3 }
+ r-grid > r-cell[span-s$="+4"], r-grid > r-cell[span-s$="-3"], r-grid > r-cell[span-s="4"] { --grid-ce: 4 }
+ r-grid > r-cell[span-s$="+5"], r-grid > r-cell[span-s$="-4"], r-grid > r-cell[span-s="5"] { --grid-ce: 5 }
+ r-grid > r-cell[span-s$="+6"], r-grid > r-cell[span-s$="-5"], r-grid > r-cell[span-s="6"] { --grid-ce: 6 }
+ r-grid > r-cell[span-s$="+7"], r-grid > r-cell[span-s$="-6"], r-grid > r-cell[span-s="7"] { --grid-ce: 7 }
+ r-grid > r-cell[span-s$="+8"], r-grid > r-cell[span-s$="-7"], r-grid > r-cell[span-s="8"] { --grid-ce: 8 }
+ r-grid > r-cell[span-s$="-8"] { --grid-ce: 9 }
+
+ /* connect vars */
+ r-grid > r-cell[span-s] { grid-column-end: span var(--grid-ce) }
+ r-grid > r-cell[span-s*="+"], r-grid > r-cell[span-s*="-"], r-grid > r-cell[span-s*=".."] {
+ grid-column-start: var(--grid-cs) }
+ r-grid > r-cell[span-s*="-"], r-grid > r-cell[span-s*=".."] {
+ grid-column-end: var(--grid-ce) }
+ r-grid > r-cell[span-s="row"] { grid-column: 1 / -1 }
+}
+
+/* for window width >= 1392 */
+@media only screen and (min-width: 1392px) {
+ r-grid[columns-l="1"] { --grid-tc: repeat(1, 1fr) }
+ r-grid[columns-l="2"] { --grid-tc: repeat(2, 1fr) }
+ r-grid[columns-l="3"] { --grid-tc: repeat(3, 1fr) }
+ r-grid[columns-l="4"] { --grid-tc: repeat(4, 1fr) }
+ r-grid[columns-l="5"] { --grid-tc: repeat(5, 1fr) }
+ r-grid[columns-l="6"] { --grid-tc: repeat(6, 1fr) }
+ r-grid[columns-l="7"] { --grid-tc: repeat(7, 1fr) }
+ r-grid[columns-l="8"] { --grid-tc: repeat(8, 1fr) }
+
+ /* span-l=start... */
+ r-grid > r-cell[span-l^="1"] { --grid-cs: 1 }
+ r-grid > r-cell[span-l^="2"] { --grid-cs: 2 }
+ r-grid > r-cell[span-l^="3"] { --grid-cs: 3 }
+ r-grid > r-cell[span-l^="4"] { --grid-cs: 4 }
+ r-grid > r-cell[span-l^="5"] { --grid-cs: 5 }
+ r-grid > r-cell[span-l^="6"] { --grid-cs: 6 }
+ r-grid > r-cell[span-l^="7"] { --grid-cs: 7 }
+ r-grid > r-cell[span-l^="8"] { --grid-cs: 8 }
+
+ /* span-l=...+width, span-l=...-end */
+ r-grid > r-cell[span-l$="+1"], r-grid > r-cell[span-l="1"] { --grid-ce: 1 }
+ r-grid > r-cell[span-l$="+2"], r-grid > r-cell[span-l$="-1"], r-grid > r-cell[span-l="2"] { --grid-ce: 2 }
+ r-grid > r-cell[span-l$="+3"], r-grid > r-cell[span-l$="-2"], r-grid > r-cell[span-l="3"] { --grid-ce: 3 }
+ r-grid > r-cell[span-l$="+4"], r-grid > r-cell[span-l$="-3"], r-grid > r-cell[span-l="4"] { --grid-ce: 4 }
+ r-grid > r-cell[span-l$="+5"], r-grid > r-cell[span-l$="-4"], r-grid > r-cell[span-l="5"] { --grid-ce: 5 }
+ r-grid > r-cell[span-l$="+6"], r-grid > r-cell[span-l$="-5"], r-grid > r-cell[span-l="6"] { --grid-ce: 6 }
+ r-grid > r-cell[span-l$="+7"], r-grid > r-cell[span-l$="-6"], r-grid > r-cell[span-l="7"] { --grid-ce: 7 }
+ r-grid > r-cell[span-l$="+8"], r-grid > r-cell[span-l$="-7"], r-grid > r-cell[span-l="8"] { --grid-ce: 8 }
+ r-grid > r-cell[span-l$="-8"] { --grid-ce: 9 }
+
+ /* connect vars */
+ r-grid > r-cell[span-l] { grid-column-end: span var(--grid-ce) }
+ r-grid > r-cell[span-l*="+"], r-grid > r-cell[span-l*="-"], r-grid > r-cell[span-l*=".."] {
+ grid-column-start: var(--grid-cs) }
+ r-grid > r-cell[span-l*="-"], r-grid > r-cell[span-l*=".."] {
+ grid-column-end: var(--grid-ce) }
+ r-grid > r-cell[span-l="row"] { grid-column: 1 / -1 }
+}
+
+/* .debug can be added to a r-grid to visualize its effective cells */
+r-grid.debug > * {
+ --color: rgba(248,110,91 ,0.3);
+ background-image:
+ linear-gradient(to bottom, var(--color) 0%, var(--color) 100%);
+}
+r-grid.debug > :nth-child(6n+2) { --color: rgba(103,126,208,0.3) }
+r-grid.debug > :nth-child(6n+3) { --color: rgba(224,174,72 ,0.3) }
+r-grid.debug > :nth-child(6n+4) { --color: rgba(77, 214,115,0.3) }
+r-grid.debug > :nth-child(6n+5) { --color: rgba(217,103,219,0.3) }
+r-grid.debug > :nth-child(6n+6) { --color: rgba(94, 204,211,0.3) }
+r-grid.debug > :nth-child(6n+7) { --color: rgba(248,110,91 ,0.3) }
+
+
+[contenteditable] {
+ outline:none;
+}
+
+
+:root.debug *:nth-child(4n) { outline:1px solid rgba(0,0,255,0.5); }
+:root.debug *:nth-child(4n+1) { outline:1px solid rgba(0,255,255,0.5); }
+:root.debug *:nth-child(4n+2) { outline:1px solid rgba(255,0,255,0.5); }
+:root.debug *:nth-child(4n+3) { outline:1px solid rgba(255,0,0,0.5); }
diff --git a/docs/res/base.js b/docs/res/base.js
deleted file mode 100644
index 7d38721b0..000000000
--- a/docs/res/base.js
+++ /dev/null
@@ -1,115 +0,0 @@
-
-function $$(query, el) {
- return [].slice.call((el || document).querySelectorAll(query))
-}
-
-function $(query, el) {
- return (el || document).querySelector(query)
-}
-
-// fetchjson(url string) :Promise<Object>
-//
-var fetchjson = (
- typeof window.fetch == 'function' ? (
- function _fetchjson(url, cb) {
- return window.fetch(url).then(function(r) { return r.json() })
- }
- ) :
- function _fetchjson(url, cb) {
- return new Promise(function(resolve, reject) {
- var r = new XMLHttpRequest()
- r.addEventListener("load", function(){
- try {
- resolve(JSON.parse(r.responseText))
- } catch (err) {
- reject(err)
- }
- })
- r.addEventListener("error", function(ev) {
- reject(ev.error || ev || new Error('network error'))
- })
- r.open("GET", url)
- r.send()
- })
- }
-)
-
-
-// timeNow() :float
-//
-var timeNow = (
- window.performance !== undefined && window.performance.now ? function() {
- return window.performance.now()
- } : Date.now ? function() {
- return Date.now()
- } : function() {
- return (new Date()).getTime()
- }
-)
-
-
-var HUDNotification = {
- el: $('#hud-notification'),
- timer: null,
- visible: false,
-
- show: function(message, duration) {
- var n = this
- n.el.firstChild.innerText = message
- n.el.classList.add('visible')
- if (n.visible) {
- n.hide()
- setTimeout(function(){ n.show(message, duration) }, 120)
- return
- }
- n.visible = true
- n.el.style.visibility = null
- clearTimeout(n.timer)
- n.timer = setTimeout(function(){ n.hide() }, duration || 1200)
- },
-
- hide: function() {
- var n = this
- if (n.visible) {
- n.el.classList.remove('visible')
- n.visible = false
- n.el.style.visibility = 'hidden'
- }
- }
-}
-
-
-// InterDynamicTracking takes the font size in points or pixels and returns
-// the compensating tracking in EM.
-//
-function InterDynamicTracking(fontSize) {
- var a = -0.0223, b = 0.185, c = -0.1745;
- // tracking = a + b * e ^ (c * fontSize)
- return a + b * Math.pow(Math.E, c * fontSize)
-}
-
-// InterDynamicLineHeight produces the line height for the given font size
-//
-function InterDynamicLineHeight(fontSize) {
- var l = 1.4
- return Math.round(fontSize * l)
-}
-
-
-// Mac or not? Maybe a buggy Safari or a busted Chrome on Windows...
-var isMac = false
-if (!window.MSStream &&
- /mac|ipad|iphone|ipod/i.test(navigator.userAgent))
-{
- isMac = true
- if (navigator.userAgent.indexOf('Safari') != -1 &&
- navigator.userAgent.indexOf('Chrome') == -1)
- {
- document.body.classList.add('safari')
- }
-} else if (
- navigator.userAgent.indexOf('Windows') != -1 &&
- navigator.userAgent.indexOf('Chrome') != -1
-) {
- document.body.classList.add('chrome-win')
-}
diff --git a/docs/res/bindings.js b/docs/res/bindings.js
deleted file mode 100644
index 3de3ec0b4..000000000
--- a/docs/res/bindings.js
+++ /dev/null
@@ -1,242 +0,0 @@
-// requires index.js
-
-function passThrough(v) { return v }
-
-function valueGetter(el) {
- return (
- 'valueAsNumber' in el ? () => el.valueAsNumber :
- (el.type == 'number' || el.type == 'range') ? () => parseFloat(el.value) :
- () => el.value
- )
-}
-
-function Binding(name){
- this.name = name
- this.value = undefined
- this.inputs = []
- this.outputs = []
- this.listeners = []
- this.parser = undefined
- this.formatter = passThrough
-}
-
-
-Binding.prototype.addInput = function(el) {
- var binding = this
- var getValue = valueGetter(el)
- var _onInput = ev => {
- binding.setValue(getValue(), el)
- }
- var input = {
- el: el,
- _onInput: _onInput,
- }
- this.inputs.push(input)
- if (this.value === undefined) {
- this.value = getValue()
- } else {
- input.el.value = this.formatter(this.value)
- }
- if (el.tagName == 'SELECT' || el.type == 'checkbox') {
- el.addEventListener('change', _onInput, {passive:true})
- } else {
- el.addEventListener('input', _onInput, {passive:true})
- }
-}
-
-
-Binding.prototype.addOutput = function(el) {
- this.outputs.push(el)
- if (this.value !== undefined) {
- el.innerText = this.formatter(this.value)
- }
-}
-
-
-// listener signature:
-// function(nextval string, prevval string, b Binding)void
-//
-Binding.prototype.addListener = function(listener) {
- this.listeners.push(listener)
-}
-
-
-Binding.prototype.setValue = function(nextval, origin) {
- var prevval = this.value
- if (this.parser) {
- nextval = this.parser(nextval, prevval)
- }
- if (this.value === nextval) {
- return
- }
- var binding = this
- this.value = nextval
- var value = binding.formatter(nextval)
- this.inputs.forEach(function(input) {
- if (input.el !== origin) {
- input.el.value = value
- }
- })
- this.outputs.forEach(function(el) {
- el.innerText = value
- })
- this.listeners.forEach(function(listener) {
- listener(nextval, prevval, this)
- })
-}
-
-// ------------------------------------------------------------------------
-
-function Bindings() {
- this.bindings = {}
-}
-
-Bindings.prototype.getBinding = function(name) {
- var binding = this.bindings[name]
- if (!binding) {
- binding = new Binding(name)
- this.bindings[name] = binding
- }
- return binding
-}
-
-Bindings.prototype.bindInput = function(name, input) {
- var binding = this.getBinding(name)
- binding.addInput(input)
-}
-
-Bindings.prototype.bindOutput = function(name, el) {
- var binding = this.getBinding(name)
- binding.addOutput(el)
-}
-
-Bindings.prototype.bindAllInputs = function(queryOrInputElementList) {
- var bindings = this
-
- var elements = (
- typeof queryOrInputElementList == 'string' ? $$(queryOrInputElementList) :
- queryOrInputElementList
- )
-
- elements.forEach(function(el) {
- var bindingName = el.dataset.binding
- if (bindingName) {
- if (
- el.tagName == 'INPUT' ||
- el.tagName == 'TEXTAREA' ||
- el.tagName == 'SELECT'
- ) {
- bindings.bindInput(bindingName, el)
- } else {
- bindings.bindOutput(bindingName, el)
- }
- }
- })
-}
-
-// listener signature:
-// function(nextval string, prevval string, b Binding)void
-//
-Bindings.prototype.addListener = function(name, listener) {
- var binding = this.getBinding(name)
- binding.addListener(listener)
-}
-
-Bindings.prototype.setValue = function(name, value) {
- var binding = this.getBinding(name)
- binding.setValue(value)
-}
-
-Bindings.prototype.setFormatter = function(name, formatter) {
- var binding = this.getBinding(name)
- binding.formatter = formatter || passThrough
-}
-
-
-Bindings.prototype.value = function(name, defaultValue) {
- var binding = this.bindings[name]
- return binding && binding.value !== undefined ? binding.value : defaultValue
-}
-
-
-function fmt_float(nextval, prevval) {
- var n = parseFloat(nextval)
- return isNaN(n) ? 0 : n
-}
-
-function fmt_int(nextval, prevval) {
- var n = parseInt(nextval)
- return isNaN(n) ? 0 : n
-}
-
-
-// configure is convenience function for setting value, adding a
-// listener and associating a parser with a binding.
-// If a listener and a value is provided, the value is set and the listener
-// is immediately invoked.
-//
-Bindings.prototype.configure = function(name, value, parser, listener) {
- var binding = this.getBinding(name)
- if (listener) {
- binding.addListener(listener)
- }
- if (value !== undefined && value !== null) {
- binding.setValue(value)
- }
- if (parser) {
- if (typeof parser == 'string') {
- switch (parser) {
- case 'number':
- case 'float':
- parser = fmt_float; break;
-
- case 'int':
- case 'integer':
- parser = fmt_int; break;
-
- default:
- throw new Error('unknown parser "' + parser + '"')
- }
- } else if (typeof parser != 'function') {
- throw new Error('parser should be a string or function')
- }
- binding.parser = parser
- }
-}
-
-
-Bindings.prototype.allBindings = (
- typeof Object.values == 'function' ? function() {
- return Object.values(this.bindings)
- } : function() {
- let v = []
- for (let name in this.bindings) {
- v.push(this.bindings[name])
- }
- return v
- }
-)
-
-
-Bindings.prototype.getValues = function() {
- let values = {}
- for (let name in this.bindings) {
- values[name] = this.bindings[name].value
- }
- return values
-}
-
-
-Bindings.prototype.setValues = function(values) {
- Object.keys(values).forEach(name => {
- let b = this.bindings[name]
- if (!b) {
- if (console.warn) {
- console.warn('Bindings.setValues: ignoring unknown "' + name + '"')
- }
- return
- }
- // console.log(`bindings setValue ${name} => ${values[name]}`)
- b.setValue(values[name])
- })
-}
diff --git a/docs/res/close.svg b/docs/res/close.svg
deleted file mode 100644
index f6b7b196e..000000000
--- a/docs/res/close.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8 8.707l4.646 4.647.708-.708L8.707 8l4.647-4.646-.708-.708L8 7.293 3.354 2.646l-.708.708L7.293 8l-4.647 4.646.708.708L8 8.707z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/ctxedit.css b/docs/res/ctxedit.css
deleted file mode 100644
index fb17514ae..000000000
--- a/docs/res/ctxedit.css
+++ /dev/null
@@ -1,337 +0,0 @@
-:root {
- --strip-height: 40px;
-}
-
-#ctxedit-ui {
- box-sizing: border-box;
- overflow: hidden;
- display: flex;
- position: fixed;
- left: 0;
- right: 0;
- bottom: 0;
- padding: 0 0;
- height: var(--strip-height);
-
- background: #111;
- color: #ccc;
- font-size: 12px;
- /*border-top-left-radius: 4px;
- border-bottom-left-radius: 4px;*/
-
- padding: 0 50px;
- display: flex;
- justify-content: center;
-
- opacity:0;
- transition: 90ms all cubic-bezier(0.25, 0.47, 0.44, 0.93);
- transform: translate(0, var(--strip-height));
-
- outline: none;
- pointer-events: none;
-}
-#ctxedit-ui.visible {
- opacity:1;
- transform: translate(0, 0);
- pointer-events: initial;
-}
-#ctxedit-ui .wrapper {
- display: flex;
- flex-direction: row;
- align-items: stretch;
- justify-content: center;
- width: 100%;
- max-width: 888px; /* same as base.css .row > * */
- flex: 1 0 100%;
-}
- #ctxedit-ui .control {
- display: flex;
- justify-content: space-between;
- align-items: center;
- overflow: hidden;
- min-height: 30px;
- margin: 0 16px;
- }
- #ctxedit-ui .control:first-child {
- margin-left:0;
- }
- #ctxedit-ui .control.range {
- flex: 1 1 auto;
- max-width: 200px;
- }
- #ctxedit-ui .control > * {
- flex: 1 1 auto;
- margin:0;
- box-sizing: border-box;
- }
- #ctxedit-ui .control > :last-child {
- margin-right: 0;
- }
- #ctxedit-ui .control > select {
- min-width: 8em;
- flex: 0 1 auto;
- align-items: center;
- justify-content: center;
- }
- #ctxedit-ui .control > input,
- #ctxedit-ui .control > select {
- width: 0;
- outline: none;
- color: inherit;
- }
- #ctxedit-ui .control.popup {
- margin-right: 0px;
- }
- #ctxedit-ui .control > select {
- font: inherit;
- appearance: none;
- -webkit-appearance: none;
- -moz-appearance: none;
- border: none;
- background-color: #111;
- margin: 0;
- padding: 0;
- height: var(--strip-height);
- background-image: url(popup.svg);
- background-repeat: no-repeat;
- background-position: left center;
- width: 120px;
- color: white;
- opacity: 0.6;
- padding-left: 20px;
- line-height: var(--strip-height);
- text-overflow: ellipsis;
- white-space: nowrap;
- overflow: hidden;
- }
- #ctxedit-ui .control > select::-ms-expand {
- display: none;
- }
- #ctxedit-ui .control > select:-moz-focusring {
- color: transparent;
- text-shadow: 0 0 0 #fff;
- background-color: #111;
- font: inherit;
- font-size: inherit;
- }
- #ctxedit-ui .control > select:hover {
- opacity: 1;
- }
- #ctxedit-ui .control > input[type="number"],
- #ctxedit-ui .control > input[type="text"] {
- background: none;
- border: none;
- padding: 4px 0;
- font-size: inherit;
- /*border-radius: 2px;*/
- }
- #ctxedit-ui .control > input[type="number"] {
- max-width: 48px;
- text-align: left;
- -moz-appearance: textfield;
- -moz-font-feature-settings: 'tnum' 1;
- -ms-font-feature-settings: 'tnum' 1;
- -o-font-feature-settings: 'tnum' 1;
- -webkit-font-feature-settings: 'tnum' 1;
- font-feature-settings: 'tnum' 1;
- }
- #ctxedit-ui .control > input[type=number]::-webkit-inner-spin-button,
- #ctxedit-ui .control > input[type=number]::-webkit-outer-spin-button {
- -webkit-appearance: none;
- margin: 0;
- }
- #ctxedit-ui .control > input[type="range"] {
- /*max-width: 80%;*/
- flex: 1 1 auto;
- display: block;
- }
- #ctxedit-ui .control > input[type="color"] {
- width:20px;
- height:20px;
- border: none;
- background: transparent;
- }
- #ctxedit-ui .control > img.icon,
- #ctxedit-ui .control > label {
- user-select: none;
- font-family: georgia, serif;
- font-style: italic;
- color: white;
- width: 16px;
- height: 16px;
- flex: 0 0 auto;
- margin-right: 16px;
- opacity: 0.6;
- }
-
- #ctxedit-ui .button {
- width: var(--strip-height);
- height: var(--strip-height);
- background-repeat: no-repeat;
- background-position: center;
- opacity: 0.6;
- margin:0;
- }
- #ctxedit-ui .button:hover {
- opacity: 1;
- background-color: #292929;
- }
- #ctxedit-ui .button:active {
- background-color: #444;
- }
- #ctxedit-ui .button.features-button { background-image: url(settings.svg); }
- #ctxedit-ui .button.reset-button { background-image: url(reset.svg); }
- #ctxedit-ui .button.dismiss-button { background-image: url(dismiss.svg); }
-
-
-
-/* narrow viewports */
-@media only screen and (max-width: 639px) {
- #ctxedit-ui {
- background: black;
- height: calc(var(--strip-height) * 4);
- }
- #ctxedit-ui .wrapper {
- flex-direction: column;
- flex-wrap: wrap;
- }
-}
-
-
-.font-preload {
- position: fixed;
- display: block;
- opacity: 0;
- pointer-events: none;
-}
-
-
-.slider-value-tip {
- pointer-events: none;
- opacity: 0;
- position: fixed;
- text-align: center;
- width: 100px;
- /*background: hotpink;*/
- left: 500px;
- display: flex;
- flex-direction: column;
- align-items: center;
- z-index: 9;
- transition: opacity 120ms ease-out;
- filter: drop-shadow(0px 2px 6px rgba(0,0,0,0.2));
- --fgcolor: #fff;
- --bgcolor: #444;
-}
-.slider-value-tip .value {
- padding: 4px 10px;
- border-radius: 2px;
- font-size: 11px;
- letter-spacing: 0.013em;
- color: var(--fgcolor);
- background: var(--bgcolor);
- -moz-font-feature-settings: 'tnum' 1;
- -ms-font-feature-settings: 'tnum' 1;
- -o-font-feature-settings: 'tnum' 1;
- -webkit-font-feature-settings: 'tnum' 1;
- font-feature-settings: 'tnum' 1;
- z-index: 1;
-}
-.slider-value-tip .callout {
- background: var(--bgcolor);
- width:10px;
- height:10px;
- transform: translate(0, -6px) rotate(45deg);
- z-index: 0;
-}
-.slider-value-tip.visible {
- opacity: 1;
-}
-
-.styled-inputs-neg {
- --track-thickness: 2px;
- --track-color: rgba(255, 255, 255, 0.3);
-
- --thumb-outline-thickness: 2px;
- --thumb-outline-color: #111; /* match control strip */
- --thumb-diameter: 10px;
- --thumb-color: white;
-
- --active-color: rgb(95, 170, 255);
-}
-
-.styled-inputs-neg input[type=range] {
- -webkit-appearance: none;
- margin: 0;
- width: 100%;
- height: var(--strip-height);
- background: transparent;
-}
-.styled-inputs-neg input[type=range]:focus {
- outline: none;
-}
-
-.styled-inputs-neg input[type=range]::-webkit-slider-runnable-track {
- width: 100%;
- margin: 0;
- animate: 0.2s;
- background: var(--track-color);
- height: var(--track-thickness);
-}
-.styled-inputs-neg input[type=range]:focus::-webkit-slider-runnable-track {
- background: var(--active-color);
-}
-.styled-inputs-neg input[type=range]::-moz-range-track {
- width: 100%;
- margin: 0;
- animate: 0.2s;
- background: var(--track-color);
- height: var(--track-thickness);
-}
-.styled-inputs-neg input[type=range]:focus::-moz-range-track {
- background: var(--active-color);
-}
-
-.styled-inputs-neg input[type=range]::-webkit-slider-thumb {
- --thumb-diameter2: calc(var(--thumb-diameter) + var(--thumb-outline-thickness) * 2);
- width: var(--thumb-diameter2);
- height: var(--thumb-diameter2);
- border: var(--thumb-outline-thickness) solid var(--thumb-outline-color);
- border-radius: 100%;
- background: var(--thumb-color);
- -webkit-appearance: none;
- margin-top: calc(((var(--thumb-diameter2) / 2) - (var(--track-thickness) / 2)) * -1);
-}
-.styled-inputs-neg input[type=range]::-moz-range-thumb {
- width: var(--thumb-diameter);
- height: var(--thumb-diameter);
- border: var(--thumb-outline-thickness) solid var(--thumb-outline-color);
- border-radius: 100%;
- background: var(--thumb-color);
- margin-top: calc(((var(--thumb-diameter) / 2) - (var(--track-thickness) / 2)) * -1);
-}
-
-/* MS Edge -- note that we can't use CSS variables here */
-.styled-inputs-neg input[type=range]::-ms-track {
- background: transparent;
- border-color: transparent;
- border-width: 0 0;
- color: transparent; /* markings */
- height: 2px;
- animate: 0.2s;
- margin: 0;
-}
-.styled-inputs-neg input[type=range]::-ms-fill-lower,
-.styled-inputs-neg input[type=range]::-ms-fill-upper {
- background: white;
- opacity: 0.3;
-}
-.styled-inputs-neg input[type=range]::-ms-thumb {
- width: 9px;
- height: 9px;
- /*border: 2px solid rgba(0,0,0,0.8);*/
- box-shadow: 0px 0px 0px 2px #111;
- border-radius: 100%;
- background: white;
-}
-/* Note: :focus selectors are buggy in Edge, so we skip that */
diff --git a/docs/res/ctxedit.js b/docs/res/ctxedit.js
deleted file mode 100644
index 1ab896b08..000000000
--- a/docs/res/ctxedit.js
+++ /dev/null
@@ -1,560 +0,0 @@
-var CtxEdit = (function(){
-
-
-function getLocalObject(key) {
- let s = sessionStorage.getItem(key)
- if (s) {
- try {
- return JSON.parse(s)
- } catch (e) {
- console.error(
- `failed to parse sessionStorage value "${s}" for key ${key}`,
- err.stack || String(err)
- )
- }
- }
- return null
-}
-
-
-function setLocalObject(key, value) {
- let json = JSON.stringify(value)
- sessionStorage.setItem(key, json)
-}
-
-
-function rmLocalObject(key) {
- sessionStorage.removeItem(key)
-}
-
-
-class FloatProp {
- constructor(cssProp, unitSuffix) {
- this.cssProp = cssProp
- this.unitSuffix = unitSuffix
- }
-
- valueInStyle(s) {
- let v = s[this.cssProp]
- return v !== undefined ? parseFloat(v) : v
- }
-
- applyStyle(el, value) {
- el.style[this.cssProp] = value + this.unitSuffix
- }
-}
-
-class FontStyleProp {
-
- valueInStyle(s) {
- let italic = s['font-style'] == 'italic' || s['font-style'].indexOf('oblique') != -1
- let weight = parseFloat(s['font-weight'])
- if (isNaN(weight)) {
- weight = s['font-weight']
- if (weight == 'thin') { return italic ? 'thin-italic' : 'thin' }
- if (weight == 'extra-light') {return italic ? 'extra-light-italic' :'extra-light' }
- if (weight == 'light') { return italic ? 'light-italic' : 'light' }
- if (weight == 'normal') { return italic ? 'italic' : 'regular' }
- if (weight == 'medium') { return italic ? 'medium-italic' : 'medium' }
- if (weight == 'semi-bold') { return italic ? 'semi-bold-italic' : 'semi-bold' }
- if (weight == 'bold') { return italic ? 'bold-italic' : 'bold' }
- if (weight == 'extra-bold') { return italic ? 'extra-bold-italic' : 'extra-bold' }
- } else {
- if (weight <= 150) { return italic ? 'thin-italic' : 'thin' }
- if (weight <= 250) { return italic ? 'extra-light-italic' :'extra-light' }
- if (weight <= 350) { return italic ? 'light-italic' : 'light' }
- if (weight <= 450) { return italic ? 'italic' : 'regular' }
- if (weight <= 550) { return italic ? 'medium-italic' : 'medium' }
- if (weight <= 650) { return italic ? 'semi-bold-italic' : 'semi-bold' }
- if (weight <= 750) { return italic ? 'bold-italic' : 'bold' }
- if (weight <= 850) { return italic ? 'extra-bold-italic' : 'extra-bold' }
- }
- return italic ? 'black-italic' : 'black'
- }
-
- applyStyle(el, value) {
- let cl = el.classList
- for (let k of Array.from(cl.values())) {
- if (k.indexOf('font-style-') == 0) {
- cl.remove(k)
- }
- }
- cl.add('font-style-' + value)
- }
-}
-
-class LineHeightProp {
- valueInStyle(s) {
- let v = s['line-height']
- if (v === undefined) {
- return 1.0
- }
- if (v.lastIndexOf('px') == v.length - 2) {
- // compute
- return parseFloat(
- (parseFloat(v) / parseFloat(s['font-size'])).toFixed(3)
- )
- }
- v = parseFloat(v)
- return isNaN(v) ? 1.0 : v
- }
-
- applyStyle(el, value) {
- el.style['line-height'] = String(value)
- }
-}
-
-class TrackingProp {
- valueInStyle(s) {
- let v = s['letter-spacing']
- if (v === undefined) {
- return 0
- }
- if (v.lastIndexOf('px') == v.length - 2) {
- // compute
- return parseFloat(
- (parseFloat(v) / parseFloat(s['font-size'])).toFixed(3)
- )
- }
- v = parseFloat(v)
- return isNaN(v) ? 0 : v
- }
-
- applyStyle(el, value) {
- el.style['letter-spacing'] = value.toFixed(3) + 'em'
- }
-}
-
-const Props = {
- size: new FloatProp('font-size', 'px'),
- tracking: new TrackingProp(),
- lineHeight: new LineHeightProp(),
- style: new FontStyleProp(),
-}
-
-function valuesFromStyle(s) {
- let values = {}
- for (let name in Props) {
- let p = Props[name]
- values[name] = p.valueInStyle(s)
- }
- return values
-}
-
-
-class Editable {
- constructor(el, key) {
- this.el = el
- this.key = key
- this.defaultValues = valuesFromStyle(getComputedStyle(this.el))
- this.values = Object.assign({}, this.defaultValues)
- this.defaultExplicitTracking = this.defaultValues['tracking'] != 0
- this.explicitTracking = this.defaultExplicitTracking
- this.explicitTrackingKey = this.key + ":etracking"
- this.loadValues()
- this.updateSizeDependantProps()
- }
-
- resetValues() {
- this.values = Object.assign({}, this.defaultValues)
- let style = this.el.style
- for (let name in this.values) {
- Props[name].applyStyle(this.el, this.values[name])
- }
- rmLocalObject(this.key)
- rmLocalObject(this.explicitTrackingKey)
- this.explicitTracking = this.defaultExplicitTracking
- this.updateSizeDependantProps()
- }
-
- setExplicitTracking(explicitTracking) {
- if (this.explicitTracking !== explicitTracking) {
- this.explicitTracking = explicitTracking
- if (!this.explicitTracking) {
- this.updateSizeDependantProps()
- }
- }
- }
-
- setValue(name, value) {
- this.values[name] = value
- Props[name].applyStyle(this.el, value)
- if (name == 'size') {
- this.updateSizeDependantProps()
- }
- }
-
- updateSizeDependantProps() {
- let size = this.values.size
-
- // dynamic tracking
- if (!this.explicitTracking) {
- this.setValue('tracking', InterDynamicTracking(size))
- }
-
- // left indent
- // TODO: Consider making this part of dynamic metrics.
- let leftMargin = size / -16
- if (leftMargin == 0) {
- this.el.style.marginLeft = null
- } else {
- this.el.style.marginLeft = leftMargin.toFixed(1) + 'px'
- }
- }
-
- loadValues() {
- let values = getLocalObject(this.key)
- if (values && typeof values == 'object') {
- for (let name in values) {
- if (name in this.values) {
- let value = values[name]
- this.values[name] = value
- Props[name].applyStyle(this.el, value)
- } else if (console.warn) {
- console.warn(`Editable.loadValues ignoring unknown "${name}"`)
- }
- }
- // console.log(`loaded values for ${this}:`, values)
- }
- let etr = getLocalObject(this.explicitTrackingKey)
- this.explicitTracking = this.defaultExplicitTracking || etr
- }
-
- isDefaultValues() {
- for (let k in this.values) {
- if (this.values[k] !== this.defaultValues[k]) {
- return false
- }
- }
- return true
- }
-
- saveValues() {
- if (this.isDefaultValues()) {
- rmLocalObject(this.key)
- rmLocalObject(this.explicitTrackingKey)
- } else {
- setLocalObject(this.key, this.values)
- setLocalObject(this.explicitTrackingKey, this.explicitTracking ? "1" : "0")
- }
- // console.log(`saved values for ${this}`)
- }
-
- toString() {
- return `Editable(${this.key})`
- }
-}
-
-
-var supportsFocusTrick = (u =>
- u.indexOf('Firefox/') == -1
-)(navigator.userAgent)
-
-
-class CtxEdit {
- constructor() {
- this.bindings = new Bindings()
- this.keyPrefix = 'ctxedit:' + document.location.pathname + ':'
- this.editables = new Map()
- this.ui = $('#ctxedit-ui')
- this.currEditable = null
- this._saveValuesTimer = null
- this.isChangingBindings = true
- this.bindings = new Bindings()
- this.initBindings()
- this.initUI()
- this.addAllEditables()
- this.isChangingBindings = false
- this.preloadFonts()
-
- if (supportsFocusTrick) {
- this.ui.addEventListener('focus', ev => {
- if (this.currEditable) {
- ev.preventDefault()
- ev.stopImmediatePropagation()
- this.currEditable.el.focus() // breaks Firefox
- }
- }, {capture:true, passive:false})
- }
- }
-
- initUI() {
- $('.reset-button', this.ui).addEventListener('click', ev => this.reset())
- $('.dismiss-button', this.ui).addEventListener('click', ev => this.stopEditing())
- this.initRangeSliders()
- }
-
- initRangeSliders() {
- this._sliderTimers = new Map()
- $$('input[type="range"]', this.ui).forEach(input => {
- var binding = this.bindings.getBinding(input.dataset.binding)
-
- // create and hook up value tip
- let valtip = document.createElement('div')
- let valtipval = document.createElement('div')
- let valtipcallout = document.createElement('div')
- valtip.className = 'slider-value-tip'
- valtipval.className = 'value'
- valtipcallout.className = 'callout'
- valtipval.innerText = '0'
- valtip.appendChild(valtipval)
- valtip.appendChild(valtipcallout)
- binding.addOutput(valtipval)
- document.body.appendChild(valtip)
-
- let inputBounds = {}
- let min = parseFloat(input.getAttribute('min'))
- let max = parseFloat(input.getAttribute('max'))
- if (isNaN(min)) {
- min = 0
- }
- if (isNaN(max)) {
- max = 1
- }
- const sliderThumbWidth = 12
- const valtipYOffset = 14
-
- let updateValTipXPos = () => {
- let r = (binding.value - min) / (max - min)
- let sliderWidth = inputBounds.width - sliderThumbWidth
- let x = ((inputBounds.x + (sliderThumbWidth / 2)) + (sliderWidth * r)) - (valtip.clientWidth / 2)
- valtip.style.left = x + 'px'
- }
-
- binding.addListener(updateValTipXPos)
-
- let shownCounter = 0
- let showValTip = () => {
- if (++shownCounter == 1) {
- valtip.classList.add('visible')
- inputBounds = input.getBoundingClientRect()
- valtip.style.top = (inputBounds.y - valtip.clientHeight + valtipYOffset) + 'px'
- updateValTipXPos()
- }
- }
- let hideValTip = () => {
- if (--shownCounter == 0) {
- valtip.classList.remove('visible')
- }
- }
-
- input.addEventListener('pointerdown', showValTip)
- input.addEventListener('pointerup', hideValTip)
- input.addEventListener('pointercancel', hideValTip)
-
- let timer = null
- input.addEventListener('input', ev => {
- if (timer === null) {
- showValTip()
- } else {
- clearTimeout(timer)
- }
- timer = setTimeout(() => {
- timer = null
- hideValTip()
- }, 400)
- })
- })
- }
-
- initBindings() {
- let b = this.bindings
-
- // let updateTracking = fontSize => {
- // if (!this.currEditable.explicitTracking) {
- // var tracking = InterDynamicTracking(fontSize)
- // this.isChangingBindings = true
- // b.setValue('tracking', tracking)
- // this.isChangingBindings = false
- // }
- // }
-
- b.configure('tracking', 0, 'float', tracking => {
- if (!this.isChangingBindings && !this.currEditable.explicitTracking) {
- // console.log('enabled explicit tracking')
- this.currEditable.setExplicitTracking(true)
- this.setNeedsSaveValues()
- }
- })
- b.setFormatter('tracking', v => v.toFixed(3))
-
- b.configure('size', 0, 'float', size => {
- let ed = this.currEditable
- if (ed) {
- setTimeout(() => {
- // HERE BE DRAGONS! Feedback loop from Editable
- if (!ed.explicitTracking) {
- this.isChangingBindings = true
- b.setValue('tracking', ed.values.tracking)
- this.isChangingBindings = false
- }
- }, 10)
- }
- })
-
- b.configure('lineHeight', 1, 'float')
-
- b.bindAllInputs($$('.control input', this.ui))
- b.bindAllInputs($$('.control select', this.ui))
-
- $('.control input[data-binding="tracking"]').addEventListener("dblclick", ev => {
- let ed = this.currEditable
- setTimeout(() => {
- ed.setExplicitTracking(false)
- this.setNeedsSaveValues()
- this.isChangingBindings = true
- b.setValue('tracking', ed.values.tracking)
- this.isChangingBindings = false
- }, 50)
- })
-
- for (let binding of b.allBindings()) {
- binding.addListener(() => this.bindingChanged(binding))
- }
- }
-
- preloadFonts() {
- // Note: This has no effect on systems supporting variable fonts.
- [
- "regular",
- "italic",
- "medium",
- "medium-italic",
- "semi-bold",
- "semi-bold-italic",
- "bold",
- "bold-italic",
- "extra-bold",
- "extra-bold-italic",
- "black",
- "black-italic",
- ].forEach(style => {
- let e = document.createElement('div')
- e.className = 'font-preload font-style-' + style
- e.innerText = 'a'
- document.body.appendChild(e)
- })
- }
-
- bindingChanged(binding) {
- if (this.isChangingBindings) {
- // Note: this.isChangingBindings is true when binding values are
- // changed internally, in which case we do nothing here.
- return
- }
- if (this.currEditable) {
- this.currEditable.setValue(binding.name, binding.value)
- }
- this.setNeedsSaveValues()
- }
-
- reset() {
- for (let ed of this.editables.values()) {
- ed.resetValues()
- }
- this.updateBindingValues()
- }
-
- updateBindingValues() {
- if (this.currEditable) {
- this.isChangingBindings = true
- this.bindings.setValues(this.currEditable.values)
- this.isChangingBindings = false
- }
- }
-
- saveValues() {
- if (this._saveValuesTimer !== null) {
- clearTimeout(this._saveValuesTimer)
- this._saveValuesTimer = null
- }
- if (this.currEditable) {
- this.currEditable.saveValues()
- }
- }
-
- setNeedsSaveValues() {
- if (this._saveValuesTimer !== null) {
- clearTimeout(this._saveValuesTimer)
- }
- this._saveValuesTimer = setTimeout(() => this.saveValues(), 300)
- }
-
- setCurrEditable(ed) {
- if (this._saveValuesTimer !== null &&
- this.currEditable &&
- !this.isChangingBindings)
- {
- this.saveValues()
- }
- this.currEditable = ed
- this.updateBindingValues()
- if (this.currEditable) {
- this.showUI()
- } else {
- this.hideUI()
- }
- }
-
- onEditableReceivedFocus(ed) {
- // console.log(`onEditableReceivedFocus ${ed}`)
- clearTimeout(this._deselectTimer)
- this.setCurrEditable(ed)
- }
-
- onEditableLostFocus(ed) {
- // console.log(`onEditableLostFocus ${ed}`)
- // this.setCurrEditable(null)
- if (supportsFocusTrick) {
- this._deselectTimer = setTimeout(() => this.setCurrEditable(null), 10)
- }
- }
-
- showUI() {
- this.ui.classList.add('visible')
- }
-
- hideUI() {
- this.ui.classList.remove('visible')
- }
-
- stopEditing() {
- if (this.currEditable) {
- this.currEditable.el.blur()
- this.setCurrEditable(null)
- }
- }
-
- addAllEditables() {
- for (let el of $$('[data-ctxedit]')) {
- this.addEditable(el)
- }
- }
-
- addEditable(el) {
- let key = this.keyPrefix + el.dataset.ctxedit
- let existing = this.editables.get(key)
- if (existing) {
- throw new Error(`duplicate editable ${key}`)
- }
- let ed = new Editable(el, key)
- this.editables.set(key, ed)
- this.initEditable(ed)
- // this.showUI() // XXX
- }
-
- initEditable(ed) {
- // filter paste
- ed.el.addEventListener('paste', ev => {
- ev.preventDefault()
- let text = ev.clipboardData.getData("text/plain")
- document.execCommand("insertHTML", false, text)
- }, {capture:true,passive:false})
-
- ed.el.addEventListener('focus', ev => this.onEditableReceivedFocus(ed))
- ed.el.addEventListener('blur', ev => this.onEditableLostFocus(ed))
- }
-}
-
-return CtxEdit
-})();
diff --git a/docs/res/dismiss.svg b/docs/res/dismiss.svg
deleted file mode 100644
index 0749e2196..000000000
--- a/docs/res/dismiss.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8 9l-.354.354.354.353.354-.353L8 9zm.354.354l5-5-.708-.708-5 5 .708.708zm0-.708l-5-5-.708.708 5 5 .708-.708z" fill="#fff"/><path stroke="#fff" d="M2 12.5h12"/></svg> \ No newline at end of file
diff --git a/docs/res/fontkit-2.0.2.js b/docs/res/fontkit-2.0.2.js
new file mode 100644
index 000000000..762cd7662
--- /dev/null
+++ b/docs/res/fontkit-2.0.2.js
@@ -0,0 +1,8 @@
+function _(T,ge,R,x){Object.defineProperty(T,ge,{get:R,set:x,enumerable:!0,configurable:!0})}function vn(T){return T&&T.__esModule?T.default:T}var xn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{},aa={},Dr={},O=xn.parcelRequire2431;O==null&&(O=function(T){if(T in aa)return aa[T].exports;if(T in Dr){var ge=Dr[T];delete Dr[T];var R={id:T,exports:{}};return aa[T]=R,ge.call(R.exports,R,R.exports),R.exports}var x=new Error("Cannot find module '"+T+"'");throw x.code="MODULE_NOT_FOUND",x},O.register=function(ge,R){Dr[ge]=R},xn.parcelRequire2431=O),O.register("gucAK",function(T,ge){O("fjkYL");var R=O("oF6Qu"),x=O("3RdzP"),t=O("QPUOh"),h=O("j1YaI"),f=O("8ILoy"),p=O("58FrE"),v=O("ccNhw"),$=O("fSFW4"),S=O("fQmG6"),P=O("cXHtO"),w=O("4GGKE"),te=O("67NHT"),re=O("WOuwO"),se=O("3pehy"),W=O("XgJeM"),Y=O("dmCi8"),Q=O("hHJih"),le=O("8vZwG"),ue=O("hWMJL"),Ie=O("4Cb2U"),Se=O("5QsL7"),X=O("iZEkP"),Z=O("jDtEd");function me(c,e){return Object.keys(e).forEach(function(r){r==="default"||r==="__esModule"||c.hasOwnProperty(r)||Object.defineProperty(c,r,{enumerable:!0,get:function(){return e[r]}})}),c}function B(c,e,r,a){Object.defineProperty(c,e,{get:r,set:a,enumerable:!0,configurable:!0})}function A(c){return c&&c.__esModule?c.default:c}var H={};B(H,"logErrors",()=>de),B(H,"registerFormat",()=>ce),B(H,"create",()=>Ne),B(H,"defaultLanguage",()=>be),B(H,"setDefaultLanguage",()=>Ze);let de=!1,J=[];function ce(c){J.push(c)}function Ne(c,e){for(let r=0;r<J.length;r++){let a=J[r];if(a.probe(c)){let n=new a(new R.DecodeStream(c));return e?n.getFont(e):n}}throw new Error("Unknown font format")}let be="en";function Ze(c="en"){be=c}function Be(c,e,r){if(r.get){let a=r.get;r.get=function(){let n=a.call(this);return Object.defineProperty(this,e,{value:n}),n}}else if(typeof r.value=="function"){let a=r.value;return{get(){let n=new Map;function s(...i){let u=i.length>0?i[0]:"value";if(n.has(u))return n.get(u);let b=a.apply(this,i);return n.set(u,b),b}return Object.defineProperty(this,e,{value:s}),s}}}}let qe=new x.Struct({firstCode:t.uint16,entryCount:t.uint16,idDelta:t.int16,idRangeOffset:t.uint16}),L=new x.Struct({startCharCode:t.uint32,endCharCode:t.uint32,glyphID:t.uint32}),k=new x.Struct({startUnicodeValue:t.uint24,additionalCount:t.uint8}),I=new x.Struct({unicodeValue:t.uint24,glyphID:t.uint16}),D=new h.Array(k,t.uint32),q=new h.Array(I,t.uint32),U=new x.Struct({varSelector:t.uint24,defaultUVS:new f.Pointer(t.uint32,D,{type:"parent"}),nonDefaultUVS:new f.Pointer(t.uint32,q,{type:"parent"})}),ae=new p.VersionedStruct(t.uint16,{0:{length:t.uint16,language:t.uint16,codeMap:new v.LazyArray(t.uint8,256)},2:{length:t.uint16,language:t.uint16,subHeaderKeys:new h.Array(t.uint16,256),subHeaderCount:c=>Math.max.apply(Math,c.subHeaderKeys),subHeaders:new v.LazyArray(qe,"subHeaderCount"),glyphIndexArray:new v.LazyArray(t.uint16,"subHeaderCount")},4:{length:t.uint16,language:t.uint16,segCountX2:t.uint16,segCount:c=>c.segCountX2>>1,searchRange:t.uint16,entrySelector:t.uint16,rangeShift:t.uint16,endCode:new v.LazyArray(t.uint16,"segCount"),reservedPad:new $.Reserved(t.uint16),startCode:new v.LazyArray(t.uint16,"segCount"),idDelta:new v.LazyArray(t.int16,"segCount"),idRangeOffset:new v.LazyArray(t.uint16,"segCount"),glyphIndexArray:new v.LazyArray(t.uint16,c=>(c.length-c._currentOffset)/2)},6:{length:t.uint16,language:t.uint16,firstCode:t.uint16,entryCount:t.uint16,glyphIndices:new v.LazyArray(t.uint16,"entryCount")},8:{reserved:new $.Reserved(t.uint16),length:t.uint32,language:t.uint16,is32:new v.LazyArray(t.uint8,8192),nGroups:t.uint32,groups:new v.LazyArray(L,"nGroups")},10:{reserved:new $.Reserved(t.uint16),length:t.uint32,language:t.uint32,firstCode:t.uint32,entryCount:t.uint32,glyphIndices:new v.LazyArray(t.uint16,"numChars")},12:{reserved:new $.Reserved(t.uint16),length:t.uint32,language:t.uint32,nGroups:t.uint32,groups:new v.LazyArray(L,"nGroups")},13:{reserved:new $.Reserved(t.uint16),length:t.uint32,language:t.uint32,nGroups:t.uint32,groups:new v.LazyArray(L,"nGroups")},14:{length:t.uint32,numRecords:t.uint32,varSelectors:new v.LazyArray(U,"numRecords")}}),Oe=new x.Struct({platformID:t.uint16,encodingID:t.uint16,table:new f.Pointer(t.uint32,ae,{type:"parent",lazy:!0})});var ot=new x.Struct({version:t.uint16,numSubtables:t.uint16,tables:new h.Array(Oe,"numSubtables")}),ye=new x.Struct({version:t.int32,revision:t.int32,checkSumAdjustment:t.uint32,magicNumber:t.uint32,flags:t.uint16,unitsPerEm:t.uint16,created:new h.Array(t.int32,2),modified:new h.Array(t.int32,2),xMin:t.int16,yMin:t.int16,xMax:t.int16,yMax:t.int16,macStyle:new S.Bitfield(t.uint16,["bold","italic","underline","outline","shadow","condensed","extended"]),lowestRecPPEM:t.uint16,fontDirectionHint:t.int16,indexToLocFormat:t.int16,glyphDataFormat:t.int16}),Ke=new x.Struct({version:t.int32,ascent:t.int16,descent:t.int16,lineGap:t.int16,advanceWidthMax:t.uint16,minLeftSideBearing:t.int16,minRightSideBearing:t.int16,xMaxExtent:t.int16,caretSlopeRise:t.int16,caretSlopeRun:t.int16,caretOffset:t.int16,reserved:new $.Reserved(t.int16,4),metricDataFormat:t.int16,numberOfMetrics:t.uint16});let at=new x.Struct({advance:t.uint16,bearing:t.int16});var He=new x.Struct({metrics:new v.LazyArray(at,c=>c.parent.hhea.numberOfMetrics),bearings:new v.LazyArray(t.int16,c=>c.parent.maxp.numGlyphs-c.parent.hhea.numberOfMetrics)}),ft=new x.Struct({version:t.int32,numGlyphs:t.uint16,maxPoints:t.uint16,maxContours:t.uint16,maxComponentPoints:t.uint16,maxComponentContours:t.uint16,maxZones:t.uint16,maxTwilightPoints:t.uint16,maxStorage:t.uint16,maxFunctionDefs:t.uint16,maxInstructionDefs:t.uint16,maxStackElements:t.uint16,maxSizeOfInstructions:t.uint16,maxComponentElements:t.uint16,maxComponentDepth:t.uint16});function K(c,e,r=0){return c===1&&he[r]?he[r]:Ae[c][e]}const V=new Set(["x-mac-roman","x-mac-cyrillic","iso-8859-6","iso-8859-8"]),j={"x-mac-croatian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u03A9\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026 \xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uF8FF\xA9\u2044\u20AC\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7","x-mac-gaelic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u1E02\xB1\u2264\u2265\u1E03\u010A\u010B\u1E0A\u1E0B\u1E1E\u1E1F\u0120\u0121\u1E40\xE6\xF8\u1E41\u1E56\u1E57\u027C\u0192\u017F\u1E60\xAB\xBB\u2026 \xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\u1E61\u1E9B\xFF\u0178\u1E6A\u20AC\u2039\u203A\u0176\u0177\u1E6B\xB7\u1EF2\u1EF3\u204A\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u2663\xD2\xDA\xDB\xD9\u0131\xDD\xFD\u0174\u0175\u1E84\u1E85\u1E80\u1E81\u1E82\u1E83","x-mac-greek":"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\u20AC\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\xB7\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026 \u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\xAD","x-mac-icelandic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026 \xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-inuit":"\u1403\u1404\u1405\u1406\u140A\u140B\u1431\u1432\u1433\u1434\u1438\u1439\u1449\u144E\u144F\u1450\u1451\u1455\u1456\u1466\u146D\u146E\u146F\u1470\u1472\u1473\u1483\u148B\u148C\u148D\u148E\u1490\u1491\xB0\u14A1\u14A5\u14A6\u2022\xB6\u14A7\xAE\xA9\u2122\u14A8\u14AA\u14AB\u14BB\u14C2\u14C3\u14C4\u14C5\u14C7\u14C8\u14D0\u14EF\u14F0\u14F1\u14F2\u14F4\u14F5\u1505\u14D5\u14D6\u14D7\u14D8\u14DA\u14DB\u14EA\u1528\u1529\u152A\u152B\u152D\u2026 \u152E\u153E\u1555\u1556\u1557\u2013\u2014\u201C\u201D\u2018\u2019\u1558\u1559\u155A\u155D\u1546\u1547\u1548\u1549\u154B\u154C\u1550\u157F\u1580\u1581\u1582\u1583\u1584\u1585\u158F\u1590\u1591\u1592\u1593\u1594\u1595\u1671\u1672\u1673\u1674\u1675\u1676\u1596\u15A0\u15A1\u15A2\u15A3\u15A4\u15A5\u15A6\u157C\u0141\u0142","x-mac-ce":"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026 \u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7","x-mac-romanian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u0218\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\u0103\u0219\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026 \xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\u021A\u021B\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-turkish":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026 \xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\uF8A0\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},M=new Map;function fe(c){let e=M.get(c);if(e)return e;let r=j[c];if(r){let a=new Map;for(let n=0;n<r.length;n++)a.set(r.charCodeAt(n),128+n);return M.set(c,a),a}if(V.has(c)){let a=new TextDecoder(c),n=new Uint8Array(128);for(let u=0;u<128;u++)n[u]=128+u;let s=new Map,i=a.decode(n);for(let u=0;u<128;u++)s.set(i.charCodeAt(u),128+u);return M.set(c,s),s}}const Ae=[["utf16be","utf16be","utf16be","utf16be","utf16be","utf16be"],["x-mac-roman","shift-jis","big5","euc-kr","iso-8859-6","iso-8859-8","x-mac-greek","x-mac-cyrillic","x-mac-symbol","x-mac-devanagari","x-mac-gurmukhi","x-mac-gujarati","Oriya","Bengali","Tamil","Telugu","Kannada","Malayalam","Sinhalese","Burmese","Khmer","iso-8859-11","Laotian","Georgian","Armenian","hz-gb-2312","Tibetan","Mongolian","Geez","x-mac-ce","Vietnamese","Sindhi"],["ascii"],["symbol","utf16be","shift-jis","gb18030","big5","x-cp20949","johab",null,null,null,"utf16be"]],he={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"},ve=[[],{0:"en",30:"fo",60:"ks",90:"rw",1:"fr",31:"fa",61:"ku",91:"rn",2:"de",32:"ru",62:"sd",92:"ny",3:"it",33:"zh",63:"bo",93:"mg",4:"nl",34:"nl-BE",64:"ne",94:"eo",5:"sv",35:"ga",65:"sa",128:"cy",6:"es",36:"sq",66:"mr",129:"eu",7:"da",37:"ro",67:"bn",130:"ca",8:"pt",38:"cz",68:"as",131:"la",9:"no",39:"sk",69:"gu",132:"qu",10:"he",40:"si",70:"pa",133:"gn",11:"ja",41:"yi",71:"or",134:"ay",12:"ar",42:"sr",72:"ml",135:"tt",13:"fi",43:"mk",73:"kn",136:"ug",14:"el",44:"bg",74:"ta",137:"dz",15:"is",45:"uk",75:"te",138:"jv",16:"mt",46:"be",76:"si",139:"su",17:"tr",47:"uz",77:"my",140:"gl",18:"hr",48:"kk",78:"km",141:"af",19:"zh-Hant",49:"az-Cyrl",79:"lo",142:"br",20:"ur",50:"az-Arab",80:"vi",143:"iu",21:"hi",51:"hy",81:"id",144:"gd",22:"th",52:"ka",82:"tl",145:"gv",23:"ko",53:"mo",83:"ms",146:"ga",24:"lt",54:"ky",84:"ms-Arab",147:"to",25:"pl",55:"tg",85:"am",148:"el-polyton",26:"hu",56:"tk",86:"ti",149:"kl",27:"es",57:"mn-CN",87:"om",150:"az",28:"lv",58:"mn",88:"so",151:"nn",29:"se",59:"ps",89:"sw"},[],{1078:"af",16393:"en-IN",1159:"rw",1074:"tn",1052:"sq",6153:"en-IE",1089:"sw",1115:"si",1156:"gsw",8201:"en-JM",1111:"kok",1051:"sk",1118:"am",17417:"en-MY",1042:"ko",1060:"sl",5121:"ar-DZ",5129:"en-NZ",1088:"ky",11274:"es-AR",15361:"ar-BH",13321:"en-PH",1108:"lo",16394:"es-BO",3073:"ar",18441:"en-SG",1062:"lv",13322:"es-CL",2049:"ar-IQ",7177:"en-ZA",1063:"lt",9226:"es-CO",11265:"ar-JO",11273:"en-TT",2094:"dsb",5130:"es-CR",13313:"ar-KW",2057:"en-GB",1134:"lb",7178:"es-DO",12289:"ar-LB",1033:"en",1071:"mk",12298:"es-EC",4097:"ar-LY",12297:"en-ZW",2110:"ms-BN",17418:"es-SV",6145:"ary",1061:"et",1086:"ms",4106:"es-GT",8193:"ar-OM",1080:"fo",1100:"ml",18442:"es-HN",16385:"ar-QA",1124:"fil",1082:"mt",2058:"es-MX",1025:"ar-SA",1035:"fi",1153:"mi",19466:"es-NI",10241:"ar-SY",2060:"fr-BE",1146:"arn",6154:"es-PA",7169:"aeb",3084:"fr-CA",1102:"mr",15370:"es-PY",14337:"ar-AE",1036:"fr",1148:"moh",10250:"es-PE",9217:"ar-YE",5132:"fr-LU",1104:"mn",20490:"es-PR",1067:"hy",6156:"fr-MC",2128:"mn-CN",3082:"es",1101:"as",4108:"fr-CH",1121:"ne",1034:"es",2092:"az-Cyrl",1122:"fy",1044:"nb",21514:"es-US",1068:"az",1110:"gl",2068:"nn",14346:"es-UY",1133:"ba",1079:"ka",1154:"oc",8202:"es-VE",1069:"eu",3079:"de-AT",1096:"or",2077:"sv-FI",1059:"be",1031:"de",1123:"ps",1053:"sv",2117:"bn",5127:"de-LI",1045:"pl",1114:"syr",1093:"bn-IN",4103:"de-LU",1046:"pt",1064:"tg",8218:"bs-Cyrl",2055:"de-CH",2070:"pt-PT",2143:"tzm",5146:"bs",1032:"el",1094:"pa",1097:"ta",1150:"br",1135:"kl",1131:"qu-BO",1092:"tt",1026:"bg",1095:"gu",2155:"qu-EC",1098:"te",1027:"ca",1128:"ha",3179:"qu",1054:"th",3076:"zh-HK",1037:"he",1048:"ro",1105:"bo",5124:"zh-MO",1081:"hi",1047:"rm",1055:"tr",2052:"zh",1038:"hu",1049:"ru",1090:"tk",4100:"zh-SG",1039:"is",9275:"smn",1152:"ug",1028:"zh-TW",1136:"ig",4155:"smj-NO",1058:"uk",1155:"co",1057:"id",5179:"smj",1070:"hsb",1050:"hr",1117:"iu",3131:"se-FI",1056:"ur",4122:"hr-BA",2141:"iu-Latn",1083:"se",2115:"uz-Cyrl",1029:"cs",2108:"ga",2107:"se-SE",1091:"uz",1030:"da",1076:"xh",8251:"sms",1066:"vi",1164:"prs",1077:"zu",6203:"sma-NO",1106:"cy",1125:"dv",1040:"it",7227:"sms",1160:"wo",2067:"nl-BE",2064:"it-CH",1103:"sa",1157:"sah",1043:"nl",1041:"ja",7194:"sr-Cyrl-BA",1144:"ii",3081:"en-AU",1099:"kn",3098:"sr",1130:"yo",10249:"en-BZ",1087:"kk",6170:"sr-Latn-BA",4105:"en-CA",1107:"km",2074:"sr-Latn",9225:"en-029",1158:"quc",1132:"nso"}];let De=new x.Struct({platformID:t.uint16,encodingID:t.uint16,languageID:t.uint16,nameID:t.uint16,length:t.uint16,string:new f.Pointer(t.uint16,new P.String("length",c=>K(c.platformID,c.encodingID,c.languageID)),{type:"parent",relativeTo:c=>c.parent.stringOffset,allowNull:!1})}),we=new x.Struct({length:t.uint16,tag:new f.Pointer(t.uint16,new P.String("length","utf16be"),{type:"parent",relativeTo:c=>c.stringOffset})});var ie=new p.VersionedStruct(t.uint16,{0:{count:t.uint16,stringOffset:t.uint16,records:new h.Array(De,"count")},1:{count:t.uint16,stringOffset:t.uint16,records:new h.Array(De,"count"),langTagCount:t.uint16,langTags:new h.Array(we,"langTagCount")}}),Ge=ie;const je=["copyright","fontFamily","fontSubfamily","uniqueSubfamily","fullName","version","postscriptName","trademark","manufacturer","designer","description","vendorURL","designerURL","license","licenseURL",null,"preferredFamily","preferredSubfamily","compatibleFull","sampleText","postscriptCIDFontName","wwsFamilyName","wwsSubfamilyName"];ie.process=function(c){var e={};for(let r of this.records){let a=ve[r.platformID][r.languageID];a==null&&this.langTags!=null&&r.languageID>=32768&&(a=this.langTags[r.languageID-32768].tag),a==null&&(a=r.platformID+"-"+r.languageID);let n=r.nameID>=256?"fontFeatures":je[r.nameID]||r.nameID;e[n]==null&&(e[n]={});let s=e[n];r.nameID>=256&&(s=s[r.nameID]||(s[r.nameID]={})),(typeof r.string=="string"||typeof s[a]!="string")&&(s[a]=r.string)}this.records=e},ie.preEncode=function(){if(Array.isArray(this.records))return;this.version=0;let c=[];for(let e in this.records){let r=this.records[e];e!=="fontFeatures"&&(c.push({platformID:3,encodingID:1,languageID:1033,nameID:je.indexOf(e),length:r.en.length*2,string:r.en}),e==="postscriptName"&&c.push({platformID:1,encodingID:0,languageID:0,nameID:je.indexOf(e),length:r.en.length,string:r.en}))}this.records=c,this.count=c.length,this.stringOffset=ie.size(this,null,!1)};var pt=new p.VersionedStruct(t.uint16,{header:{xAvgCharWidth:t.int16,usWeightClass:t.uint16,usWidthClass:t.uint16,fsType:new S.Bitfield(t.uint16,[null,"noEmbedding","viewOnly","editable",null,null,null,null,"noSubsetting","bitmapOnly"]),ySubscriptXSize:t.int16,ySubscriptYSize:t.int16,ySubscriptXOffset:t.int16,ySubscriptYOffset:t.int16,ySuperscriptXSize:t.int16,ySuperscriptYSize:t.int16,ySuperscriptXOffset:t.int16,ySuperscriptYOffset:t.int16,yStrikeoutSize:t.int16,yStrikeoutPosition:t.int16,sFamilyClass:t.int16,panose:new h.Array(t.uint8,10),ulCharRange:new h.Array(t.uint32,4),vendorID:new P.String(4),fsSelection:new S.Bitfield(t.uint16,["italic","underscore","negative","outlined","strikeout","bold","regular","useTypoMetrics","wws","oblique"]),usFirstCharIndex:t.uint16,usLastCharIndex:t.uint16},0:{},1:{typoAscender:t.int16,typoDescender:t.int16,typoLineGap:t.int16,winAscent:t.uint16,winDescent:t.uint16,codePageRange:new h.Array(t.uint32,2)},2:{typoAscender:t.int16,typoDescender:t.int16,typoLineGap:t.int16,winAscent:t.uint16,winDescent:t.uint16,codePageRange:new h.Array(t.uint32,2),xHeight:t.int16,capHeight:t.int16,defaultChar:t.uint16,breakChar:t.uint16,maxContent:t.uint16},5:{typoAscender:t.int16,typoDescender:t.int16,typoLineGap:t.int16,winAscent:t.uint16,winDescent:t.uint16,codePageRange:new h.Array(t.uint32,2),xHeight:t.int16,capHeight:t.int16,defaultChar:t.uint16,breakChar:t.uint16,maxContent:t.uint16,usLowerOpticalPointSize:t.uint16,usUpperOpticalPointSize:t.uint16}});let dt=pt.versions;dt[3]=dt[4]=dt[2];var nt=pt,st=new p.VersionedStruct(t.fixed32,{header:{italicAngle:t.fixed32,underlinePosition:t.int16,underlineThickness:t.int16,isFixedPitch:t.uint32,minMemType42:t.uint32,maxMemType42:t.uint32,minMemType1:t.uint32,maxMemType1:t.uint32},1:{},2:{numberOfGlyphs:t.uint16,glyphNameIndex:new h.Array(t.uint16,"numberOfGlyphs"),names:new h.Array(new P.String(t.uint8))},2.5:{numberOfGlyphs:t.uint16,offsets:new h.Array(t.uint8,"numberOfGlyphs")},3:{},4:{map:new h.Array(t.uint32,c=>c.parent.maxp.numGlyphs)}}),d=new x.Struct({controlValues:new h.Array(t.int16)}),o=new x.Struct({instructions:new h.Array(t.uint8)});let l=new p.VersionedStruct("head.indexToLocFormat",{0:{offsets:new h.Array(t.uint16)},1:{offsets:new h.Array(t.uint32)}});l.process=function(){if(this.version===0&&!this._processed){for(let c=0;c<this.offsets.length;c++)this.offsets[c]<<=1;this._processed=!0}},l.preEncode=function(){if(this.version===0&&this._processed!==!1){for(let c=0;c<this.offsets.length;c++)this.offsets[c]>>>=1;this._processed=!1}};var g=l,E=new x.Struct({controlValueProgram:new h.Array(t.uint8)}),F=new h.Array(new w.Buffer);class N{getCFFVersion(e){for(;e&&!e.hdrSize;)e=e.parent;return e?e.version:-1}decode(e,r){let n=this.getCFFVersion(r)>=2?e.readUInt32BE():e.readUInt16BE();if(n===0)return[];let s=e.readUInt8(),i;if(s===1)i=t.uint8;else if(s===2)i=t.uint16;else if(s===3)i=t.uint24;else if(s===4)i=t.uint32;else throw new Error(`Bad offset size in CFFIndex: ${s} ${e.pos}`);let u=[],b=e.pos+(n+1)*s-1,y=i.decode(e);for(let C=0;C<n;C++){let m=i.decode(e);if(this.type!=null){let z=e.pos;e.pos=b+y,r.length=m-y,u.push(this.type.decode(e,r)),e.pos=z}else u.push({offset:b+y,length:m-y});y=m}return e.pos=b+y,u}size(e,r){let a=2;if(e.length===0)return a;let n=this.type||new w.Buffer,s=1;for(let u=0;u<e.length;u++){let b=e[u];s+=n.size(b,r)}let i;if(s<=255)i=t.uint8;else if(s<=65535)i=t.uint16;else if(s<=16777215)i=t.uint24;else if(s<=4294967295)i=t.uint32;else throw new Error("Bad offset in CFFIndex");return a+=1+i.size()*(e.length+1),a+=s-1,a}encode(e,r,a){if(e.writeUInt16BE(r.length),r.length===0)return;let n=this.type||new w.Buffer,s=[],i=1;for(let b of r){let y=n.size(b,a);s.push(y),i+=y}let u;if(i<=255)u=t.uint8;else if(i<=65535)u=t.uint16;else if(i<=16777215)u=t.uint24;else if(i<=4294967295)u=t.uint32;else throw new Error("Bad offset in CFFIndex");e.writeUInt8(u.size()),i=1,u.encode(e,i);for(let b of s)i+=b,u.encode(e,i);for(let b of r)n.encode(e,b,a)}constructor(e){this.type=e}}const pe=15,Ve=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"],Te={".":10,E:11,"E-":12,"-":14};class We{static decode(e,r){if(32<=r&&r<=246)return r-139;if(247<=r&&r<=250)return(r-247)*256+e.readUInt8()+108;if(251<=r&&r<=254)return-(r-251)*256-e.readUInt8()-108;if(r===28)return e.readInt16BE();if(r===29)return e.readInt32BE();if(r===30){let a="";for(;;){let n=e.readUInt8(),s=n>>4;if(s===pe)break;a+=Ve[s];let i=n&15;if(i===pe)break;a+=Ve[i]}return parseFloat(a)}return null}static size(e){if(e.forceLarge&&(e=32768),(e|0)!==e){let r=""+e;return 1+Math.ceil((r.length+1)/2)}else return-107<=e&&e<=107?1:108<=e&&e<=1131||-1131<=e&&e<=-108?2:-32768<=e&&e<=32767?3:5}static encode(e,r){let a=Number(r);if(r.forceLarge)return e.writeUInt8(29),e.writeInt32BE(a);if((a|0)!==a){e.writeUInt8(30);let s=""+a;for(let i=0;i<s.length;i+=2){let u=s[i],b=Te[u]||+u;if(i===s.length-1)var n=pe;else{let y=s[i+1];var n=Te[y]||+y}e.writeUInt8(b<<4|n&15)}if(n!==pe)return e.writeUInt8(pe<<4)}else return-107<=a&&a<=107?e.writeUInt8(a+139):108<=a&&a<=1131?(a-=108,e.writeUInt8((a>>8)+247),e.writeUInt8(a&255)):-1131<=a&&a<=-108?(a=-a-108,e.writeUInt8((a>>8)+251),e.writeUInt8(a&255)):-32768<=a&&a<=32767?(e.writeUInt8(28),e.writeInt16BE(a)):(e.writeUInt8(29),e.writeInt32BE(a))}}class Re{decodeOperands(e,r,a,n){if(Array.isArray(e))return n.map((s,i)=>this.decodeOperands(e[i],r,a,[s]));if(e.decode!=null)return e.decode(r,a,n);switch(e){case"number":case"offset":case"sid":return n[0];case"boolean":return!!n[0];default:return n}}encodeOperands(e,r,a,n){return Array.isArray(e)?n.map((s,i)=>this.encodeOperands(e[i],r,a,s)[0]):e.encode!=null?e.encode(r,n,a):typeof n=="number"?[n]:typeof n=="boolean"?[+n]:Array.isArray(n)?n:[n]}decode(e,r){let a=e.pos+r.length,n={},s=[];Object.defineProperties(n,{parent:{value:r},_startOffset:{value:e.pos}});for(let i in this.fields){let u=this.fields[i];n[u[1]]=u[3]}for(;e.pos<a;){let i=e.readUInt8();if(i<28){i===12&&(i=i<<8|e.readUInt8());let u=this.fields[i];if(!u)throw new Error(`Unknown operator ${i}`);let b=this.decodeOperands(u[2],e,n,s);b!=null&&(b instanceof te.PropertyDescriptor?Object.defineProperty(n,u[1],b):n[u[1]]=b),s=[]}else s.push(We.decode(e,i))}return n}size(e,r,a=!0){let n={parent:r,val:e,pointerSize:0,startOffset:r.startOffset||0},s=0;for(let i in this.fields){let u=this.fields[i],b=e[u[1]];if(b==null||A(Q)(b,u[3]))continue;let y=this.encodeOperands(u[2],null,n,b);for(let m of y)s+=We.size(m);let C=Array.isArray(u[0])?u[0]:[u[0]];s+=C.length}return a&&(s+=n.pointerSize),s}encode(e,r,a){let n={pointers:[],startOffset:e.pos,parent:a,val:r,pointerSize:0};n.pointerOffset=e.pos+this.size(r,n,!1);for(let i of this.ops){let u=r[i[1]];if(u==null||A(Q)(u,i[3]))continue;let b=this.encodeOperands(i[2],e,n,u);for(let C of b)We.encode(e,C);let y=Array.isArray(i[0])?i[0]:[i[0]];for(let C of y)e.writeUInt8(C)}let s=0;for(;s<n.pointers.length;){let i=n.pointers[s++];i.type.encode(e,i.val,i.parent)}}constructor(e=[]){this.ops=e,this.fields={};for(let r of e){let a=Array.isArray(r[0])?r[0][0]<<8|r[0][1]:r[0];this.fields[a]=r}}}class ht extends f.Pointer{decode(e,r,a){return this.offsetType={decode:()=>a[0]},super.decode(e,r,a)}encode(e,r,a){if(!e)return this.offsetType={size:()=>0},this.size(r,a),[new Gt(0)];let n=null;return this.offsetType={encode:(s,i)=>n=i},super.encode(e,r,a),[new Gt(n)]}constructor(e,r={}){r.type==null&&(r.type="global"),super(null,e,r)}}class Gt{valueOf(){return this.val}constructor(e){this.val=e,this.forceLarge=!0}}class Q0{static decode(e,r,a){let n=a.pop();for(;a.length>n;)a.pop()}}var u0=new Re([[6,"BlueValues","delta",null],[7,"OtherBlues","delta",null],[8,"FamilyBlues","delta",null],[9,"FamilyOtherBlues","delta",null],[[12,9],"BlueScale","number",.039625],[[12,10],"BlueShift","number",7],[[12,11],"BlueFuzz","number",1],[10,"StdHW","number",null],[11,"StdVW","number",null],[[12,12],"StemSnapH","delta",null],[[12,13],"StemSnapV","delta",null],[[12,14],"ForceBold","boolean",!1],[[12,17],"LanguageGroup","number",0],[[12,18],"ExpansionFactor","number",.06],[[12,19],"initialRandomSeed","number",0],[20,"defaultWidthX","number",0],[21,"nominalWidthX","number",0],[22,"vsindex","number",0],[23,"blend",Q0,null],[19,"Subrs",new ht(new N,{type:"local"}),null]]),r0=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"];let a0=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],er=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],E0=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron"],tr=[".notdef","space","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],rr=[".notdef","space","dollaroldstyle","dollarsuperior","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","hyphensuperior","colonmonetary","onefitted","rupiah","centoldstyle","figuredash","hypheninferior","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior"],d0=new x.Struct({reserved:new $.Reserved(t.uint16),reqFeatureIndex:t.uint16,featureCount:t.uint16,featureIndexes:new h.Array(t.uint16,"featureCount")}),ar=new x.Struct({tag:new P.String(4),langSys:new f.Pointer(t.uint16,d0,{type:"parent"})}),nr=new x.Struct({defaultLangSys:new f.Pointer(t.uint16,d0),count:t.uint16,langSysRecords:new h.Array(ar,"count")}),k0=new x.Struct({tag:new P.String(4),script:new f.Pointer(t.uint16,nr,{type:"parent"})}),O0=new h.Array(k0,t.uint16),T0=new x.Struct({version:t.uint16,nameID:t.uint16}),h0=new x.Struct({featureParams:new f.Pointer(t.uint16,T0),lookupCount:t.uint16,lookupListIndexes:new h.Array(t.uint16,"lookupCount")}),zt=new x.Struct({tag:new P.String(4),feature:new f.Pointer(t.uint16,h0,{type:"parent"})}),p0=new h.Array(zt,t.uint16),b0=new x.Struct({markAttachmentType:t.uint8,flags:new S.Bitfield(t.uint8,["rightToLeft","ignoreBaseGlyphs","ignoreLigatures","ignoreMarks","useMarkFilteringSet"])});function n0(c){let e=new x.Struct({lookupType:t.uint16,flags:b0,subTableCount:t.uint16,subTables:new h.Array(new f.Pointer(t.uint16,c),"subTableCount"),markFilteringSet:new re.Optional(t.uint16,r=>r.flags.flags.useMarkFilteringSet)});return new v.LazyArray(new f.Pointer(t.uint16,e),t.uint16)}let ir=new x.Struct({start:t.uint16,end:t.uint16,startCoverageIndex:t.uint16}),ze=new p.VersionedStruct(t.uint16,{1:{glyphCount:t.uint16,glyphs:new h.Array(t.uint16,"glyphCount")},2:{rangeCount:t.uint16,rangeRecords:new h.Array(ir,"rangeCount")}}),$0=new x.Struct({start:t.uint16,end:t.uint16,class:t.uint16}),yt=new p.VersionedStruct(t.uint16,{1:{startGlyph:t.uint16,glyphCount:t.uint16,classValueArray:new h.Array(t.uint16,"glyphCount")},2:{classRangeCount:t.uint16,classRangeRecord:new h.Array($0,"classRangeCount")}}),St=new x.Struct({a:t.uint16,b:t.uint16,deltaFormat:t.uint16}),Nt=new x.Struct({sequenceIndex:t.uint16,lookupListIndex:t.uint16}),F0=new x.Struct({glyphCount:t.uint16,lookupCount:t.uint16,input:new h.Array(t.uint16,c=>c.glyphCount-1),lookupRecords:new h.Array(Nt,"lookupCount")}),$t=new h.Array(new f.Pointer(t.uint16,F0),t.uint16),xt=new x.Struct({glyphCount:t.uint16,lookupCount:t.uint16,classes:new h.Array(t.uint16,c=>c.glyphCount-1),lookupRecords:new h.Array(Nt,"lookupCount")}),Pt=new h.Array(new f.Pointer(t.uint16,xt),t.uint16),Ht=new p.VersionedStruct(t.uint16,{1:{coverage:new f.Pointer(t.uint16,ze),ruleSetCount:t.uint16,ruleSets:new h.Array(new f.Pointer(t.uint16,$t),"ruleSetCount")},2:{coverage:new f.Pointer(t.uint16,ze),classDef:new f.Pointer(t.uint16,yt),classSetCnt:t.uint16,classSet:new h.Array(new f.Pointer(t.uint16,Pt),"classSetCnt")},3:{glyphCount:t.uint16,lookupCount:t.uint16,coverages:new h.Array(new f.Pointer(t.uint16,ze),"glyphCount"),lookupRecords:new h.Array(Nt,"lookupCount")}}),Wt=new x.Struct({backtrackGlyphCount:t.uint16,backtrack:new h.Array(t.uint16,"backtrackGlyphCount"),inputGlyphCount:t.uint16,input:new h.Array(t.uint16,c=>c.inputGlyphCount-1),lookaheadGlyphCount:t.uint16,lookahead:new h.Array(t.uint16,"lookaheadGlyphCount"),lookupCount:t.uint16,lookupRecords:new h.Array(Nt,"lookupCount")}),Xt=new h.Array(new f.Pointer(t.uint16,Wt),t.uint16),v0=new p.VersionedStruct(t.uint16,{1:{coverage:new f.Pointer(t.uint16,ze),chainCount:t.uint16,chainRuleSets:new h.Array(new f.Pointer(t.uint16,Xt),"chainCount")},2:{coverage:new f.Pointer(t.uint16,ze),backtrackClassDef:new f.Pointer(t.uint16,yt),inputClassDef:new f.Pointer(t.uint16,yt),lookaheadClassDef:new f.Pointer(t.uint16,yt),chainCount:t.uint16,chainClassSet:new h.Array(new f.Pointer(t.uint16,Xt),"chainCount")},3:{backtrackGlyphCount:t.uint16,backtrackCoverage:new h.Array(new f.Pointer(t.uint16,ze),"backtrackGlyphCount"),inputGlyphCount:t.uint16,inputCoverage:new h.Array(new f.Pointer(t.uint16,ze),"inputGlyphCount"),lookaheadGlyphCount:t.uint16,lookaheadCoverage:new h.Array(new f.Pointer(t.uint16,ze),"lookaheadGlyphCount"),lookupCount:t.uint16,lookupRecords:new h.Array(Nt,"lookupCount")}}),qt=new t.Fixed(16,"BE",14),i0=new x.Struct({startCoord:qt,peakCoord:qt,endCoord:qt}),sr=new x.Struct({axisCount:t.uint16,regionCount:t.uint16,variationRegions:new h.Array(new h.Array(i0,"axisCount"),"regionCount")}),or=new x.Struct({shortDeltas:new h.Array(t.int16,c=>c.parent.shortDeltaCount),regionDeltas:new h.Array(t.int8,c=>c.parent.regionIndexCount-c.parent.shortDeltaCount),deltas:c=>c.shortDeltas.concat(c.regionDeltas)}),Rr=new x.Struct({itemCount:t.uint16,shortDeltaCount:t.uint16,regionIndexCount:t.uint16,regionIndexes:new h.Array(t.uint16,"regionIndexCount"),deltaSets:new h.Array(or,"itemCount")}),x0=new x.Struct({format:t.uint16,variationRegionList:new f.Pointer(t.uint32,sr),variationDataCount:t.uint16,itemVariationData:new h.Array(new f.Pointer(t.uint32,Rr),"variationDataCount")}),lr=new p.VersionedStruct(t.uint16,{1:{axisIndex:t.uint16,axisIndex:t.uint16,filterRangeMinValue:qt,filterRangeMaxValue:qt}}),B0=new x.Struct({conditionCount:t.uint16,conditionTable:new h.Array(new f.Pointer(t.uint32,lr),"conditionCount")}),g0=new x.Struct({featureIndex:t.uint16,alternateFeatureTable:new f.Pointer(t.uint32,h0,{type:"parent"})}),gn=new x.Struct({version:t.fixed32,substitutionCount:t.uint16,substitutions:new h.Array(g0,"substitutionCount")}),yn=new x.Struct({conditionSet:new f.Pointer(t.uint32,B0,{type:"parent"}),featureTableSubstitution:new f.Pointer(t.uint32,gn,{type:"parent"})}),na=new x.Struct({majorVersion:t.uint16,minorVersion:t.uint16,featureVariationRecordCount:t.uint32,featureVariationRecords:new h.Array(yn,"featureVariationRecordCount")});class ia{decode(e,r,a){return this.predefinedOps[a[0]]?this.predefinedOps[a[0]]:this.type.decode(e,r,a)}size(e,r){return this.type.size(e,r)}encode(e,r,a){let n=this.predefinedOps.indexOf(r);return n!==-1?n:this.type.encode(e,r,a)}constructor(e,r){this.predefinedOps=e,this.type=r}}class wn extends t.Number{decode(e){return t.uint8.decode(e)&127}constructor(){super("UInt8")}}let sa=new x.Struct({first:t.uint16,nLeft:t.uint8}),mn=new x.Struct({first:t.uint16,nLeft:t.uint16}),Cn=new p.VersionedStruct(new wn,{0:{nCodes:t.uint8,codes:new h.Array(t.uint8,"nCodes")},1:{nRanges:t.uint8,ranges:new h.Array(sa,"nRanges")}}),Sn=new ia([a0,er],new ht(Cn,{lazy:!0}));class oa extends h.Array{decode(e,r){let a=(0,te.resolveLength)(this.length,e,r),n=0,s=[];for(;n<a;){let i=this.type.decode(e,r);i.offset=n,n+=i.nLeft+1,s.push(i)}return s}}let An=new p.VersionedStruct(t.uint8,{0:{glyphs:new h.Array(t.uint16,c=>c.parent.CharStrings.length-1)},1:{ranges:new oa(sa,c=>c.parent.CharStrings.length-1)},2:{ranges:new oa(mn,c=>c.parent.CharStrings.length-1)}}),Pn=new ia([E0,tr,rr],new ht(An,{lazy:!0})),In=new x.Struct({first:t.uint16,fd:t.uint8}),En=new x.Struct({first:t.uint32,fd:t.uint16}),la=new p.VersionedStruct(t.uint8,{0:{fds:new h.Array(t.uint8,c=>c.parent.CharStrings.length)},3:{nRanges:t.uint16,ranges:new h.Array(In,"nRanges"),sentinel:t.uint16},4:{nRanges:t.uint32,ranges:new h.Array(En,"nRanges"),sentinel:t.uint32}}),Nr=new ht(u0);class ca{decode(e,r,a){return r.length=a[0],Nr.decode(e,r,[a[1]])}size(e,r){return[u0.size(e,r,!1),Nr.size(e,r)[0]]}encode(e,r,a){return[u0.size(r,a,!1),Nr.encode(e,r,a)[0]]}}let fa=new Re([[18,"Private",new ca,null],[[12,38],"FontName","sid",null],[[12,7],"FontMatrix","array",[.001,0,0,.001,0,0]],[[12,5],"PaintType","number",0]]),kn=new Re([[[12,30],"ROS",["sid","sid","number"],null],[0,"version","sid",null],[1,"Notice","sid",null],[[12,0],"Copyright","sid",null],[2,"FullName","sid",null],[3,"FamilyName","sid",null],[4,"Weight","sid",null],[[12,1],"isFixedPitch","boolean",!1],[[12,2],"ItalicAngle","number",0],[[12,3],"UnderlinePosition","number",-100],[[12,4],"UnderlineThickness","number",50],[[12,5],"PaintType","number",0],[[12,6],"CharstringType","number",2],[[12,7],"FontMatrix","array",[.001,0,0,.001,0,0]],[13,"UniqueID","number",null],[5,"FontBBox","array",[0,0,0,0]],[[12,8],"StrokeWidth","number",0],[14,"XUID","array",null],[15,"charset",Pn,E0],[16,"Encoding",Sn,a0],[17,"CharStrings",new ht(new N),null],[18,"Private",new ca,null],[[12,20],"SyntheticBase","number",null],[[12,21],"PostScript","sid",null],[[12,22],"BaseFontName","sid",null],[[12,23],"BaseFontBlend","delta",null],[[12,31],"CIDFontVersion","number",0],[[12,32],"CIDFontRevision","number",0],[[12,33],"CIDFontType","number",0],[[12,34],"CIDCount","number",8720],[[12,35],"UIDBase","number",null],[[12,37],"FDSelect",new ht(la),null],[[12,36],"FDArray",new ht(new N(fa)),null],[[12,38],"FontName","sid",null]]),On=new x.Struct({length:t.uint16,itemVariationStore:x0}),Tn=new Re([[[12,7],"FontMatrix","array",[.001,0,0,.001,0,0]],[17,"CharStrings",new ht(new N),null],[[12,37],"FDSelect",new ht(la),null],[[12,36],"FDArray",new ht(new N(fa)),null],[24,"vstore",new ht(On),null],[25,"maxstack","number",193]]);var ua=new p.VersionedStruct(t.fixed16,{1:{hdrSize:t.uint8,offSize:t.uint8,nameIndex:new N(new P.String("length")),topDictIndex:new N(kn),stringIndex:new N(new P.String("length")),globalSubrIndex:new N},2:{hdrSize:t.uint8,length:t.uint16,topDict:Tn,globalSubrIndex:new N}});class Mr{static decode(e){return new Mr(e)}decode(){let e=this.stream.pos,r=ua.decode(this.stream);for(let a in r){let n=r[a];this[a]=n}if(this.version<2){if(this.topDictIndex.length!==1)throw new Error("Only a single font is allowed in CFF");this.topDict=this.topDictIndex[0]}return this.isCIDFont=this.topDict.ROS!=null,this}string(e){return this.version>=2?null:e<r0.length?r0[e]:this.stringIndex[e-r0.length]}get postscriptName(){return this.version<2?this.nameIndex[0]:null}get fullName(){return this.string(this.topDict.FullName)}get familyName(){return this.string(this.topDict.FamilyName)}getCharString(e){return this.stream.pos=this.topDict.CharStrings[e].offset,this.stream.readBuffer(this.topDict.CharStrings[e].length)}getGlyphName(e){if(this.version>=2||this.isCIDFont)return null;let{charset:r}=this.topDict;if(Array.isArray(r))return r[e];if(e===0)return".notdef";switch(e-=1,r.version){case 0:return this.string(r.glyphs[e]);case 1:case 2:for(let a=0;a<r.ranges.length;a++){let n=r.ranges[a];if(n.offset<=e&&e<=n.offset+n.nLeft)return this.string(n.first+(e-n.offset))}break}return null}fdForGlyph(e){if(!this.topDict.FDSelect)return null;switch(this.topDict.FDSelect.version){case 0:return this.topDict.FDSelect.fds[e];case 3:case 4:let{ranges:r}=this.topDict.FDSelect,a=0,n=r.length-1;for(;a<=n;){let s=a+n>>1;if(e<r[s].first)n=s-1;else if(s<n&&e>=r[s+1].first)a=s+1;else return r[s].fd}default:throw new Error(`Unknown FDSelect version: ${this.topDict.FDSelect.version}`)}}privateDictForGlyph(e){if(this.topDict.FDSelect){let r=this.fdForGlyph(e);return this.topDict.FDArray[r]?this.topDict.FDArray[r].Private:null}return this.version<2?this.topDict.Private:this.topDict.FDArray[0].Private}constructor(e){this.stream=e,this.decode()}}var da=Mr;let Fn=new x.Struct({glyphIndex:t.uint16,vertOriginY:t.int16});var Bn=new x.Struct({majorVersion:t.uint16,minorVersion:t.uint16,defaultVertOriginY:t.int16,numVertOriginYMetrics:t.uint16,metrics:new h.Array(Fn,"numVertOriginYMetrics")});let y0=new x.Struct({height:t.uint8,width:t.uint8,horiBearingX:t.int8,horiBearingY:t.int8,horiAdvance:t.uint8,vertBearingX:t.int8,vertBearingY:t.int8,vertAdvance:t.uint8}),cr=new x.Struct({height:t.uint8,width:t.uint8,bearingX:t.int8,bearingY:t.int8,advance:t.uint8}),ha=new x.Struct({glyph:t.uint16,xOffset:t.int8,yOffset:t.int8});class pa{}class Ur{}let cc=new p.VersionedStruct("version",{1:{metrics:cr,data:pa},2:{metrics:cr,data:Ur},5:{data:Ur},6:{metrics:y0,data:pa},7:{metrics:y0,data:Ur},8:{metrics:cr,pad:new $.Reserved(t.uint8),numComponents:t.uint16,components:new h.Array(ha,"numComponents")},9:{metrics:y0,pad:new $.Reserved(t.uint8),numComponents:t.uint16,components:new h.Array(ha,"numComponents")},17:{metrics:cr,dataLen:t.uint32,data:new w.Buffer("dataLen")},18:{metrics:y0,dataLen:t.uint32,data:new w.Buffer("dataLen")},19:{dataLen:t.uint32,data:new w.Buffer("dataLen")}}),ba=new x.Struct({ascender:t.int8,descender:t.int8,widthMax:t.uint8,caretSlopeNumerator:t.int8,caretSlopeDenominator:t.int8,caretOffset:t.int8,minOriginSB:t.int8,minAdvanceSB:t.int8,maxBeforeBL:t.int8,minAfterBL:t.int8,pad:new $.Reserved(t.int8,2)}),Ln=new x.Struct({glyphCode:t.uint16,offset:t.uint16}),Dn=new p.VersionedStruct(t.uint16,{header:{imageFormat:t.uint16,imageDataOffset:t.uint32},1:{offsetArray:new h.Array(t.uint32,c=>c.parent.lastGlyphIndex-c.parent.firstGlyphIndex+1)},2:{imageSize:t.uint32,bigMetrics:y0},3:{offsetArray:new h.Array(t.uint16,c=>c.parent.lastGlyphIndex-c.parent.firstGlyphIndex+1)},4:{numGlyphs:t.uint32,glyphArray:new h.Array(Ln,c=>c.numGlyphs+1)},5:{imageSize:t.uint32,bigMetrics:y0,numGlyphs:t.uint32,glyphCodeArray:new h.Array(t.uint16,"numGlyphs")}}),Rn=new x.Struct({firstGlyphIndex:t.uint16,lastGlyphIndex:t.uint16,subtable:new f.Pointer(t.uint32,Dn)}),Nn=new x.Struct({indexSubTableArray:new f.Pointer(t.uint32,new h.Array(Rn,1),{type:"parent"}),indexTablesSize:t.uint32,numberOfIndexSubTables:t.uint32,colorRef:t.uint32,hori:ba,vert:ba,startGlyphIndex:t.uint16,endGlyphIndex:t.uint16,ppemX:t.uint8,ppemY:t.uint8,bitDepth:t.uint8,flags:new S.Bitfield(t.uint8,["horizontal","vertical"])});var Mn=new x.Struct({version:t.uint32,numSizes:t.uint32,sizes:new h.Array(Nn,"numSizes")});let Un=new x.Struct({ppem:t.uint16,resolution:t.uint16,imageOffsets:new h.Array(new f.Pointer(t.uint32,"void"),c=>c.parent.parent.maxp.numGlyphs+1)});var Vn=new x.Struct({version:t.uint16,flags:new S.Bitfield(t.uint16,["renderOutlines"]),numImgTables:t.uint32,imageTables:new h.Array(new f.Pointer(t.uint32,Un),"numImgTables")});let Gn=new x.Struct({gid:t.uint16,paletteIndex:t.uint16}),zn=new x.Struct({gid:t.uint16,firstLayerIndex:t.uint16,numLayers:t.uint16});var Hn=new x.Struct({version:t.uint16,numBaseGlyphRecords:t.uint16,baseGlyphRecord:new f.Pointer(t.uint32,new h.Array(zn,"numBaseGlyphRecords")),layerRecords:new f.Pointer(t.uint32,new h.Array(Gn,"numLayerRecords"),{lazy:!0}),numLayerRecords:t.uint16});let Wn=new x.Struct({blue:t.uint8,green:t.uint8,red:t.uint8,alpha:t.uint8});var Xn=new p.VersionedStruct(t.uint16,{header:{numPaletteEntries:t.uint16,numPalettes:t.uint16,numColorRecords:t.uint16,colorRecords:new f.Pointer(t.uint32,new h.Array(Wn,"numColorRecords")),colorRecordIndices:new h.Array(t.uint16,"numPalettes")},0:{},1:{offsetPaletteTypeArray:new f.Pointer(t.uint32,new h.Array(t.uint32,"numPalettes")),offsetPaletteLabelArray:new f.Pointer(t.uint32,new h.Array(t.uint16,"numPalettes")),offsetPaletteEntryLabelArray:new f.Pointer(t.uint32,new h.Array(t.uint16,"numPaletteEntries"))}});let L0=new p.VersionedStruct(t.uint16,{1:{coordinate:t.int16},2:{coordinate:t.int16,referenceGlyph:t.uint16,baseCoordPoint:t.uint16},3:{coordinate:t.int16,deviceTable:new f.Pointer(t.uint16,St)}}),qn=new x.Struct({defaultIndex:t.uint16,baseCoordCount:t.uint16,baseCoords:new h.Array(new f.Pointer(t.uint16,L0),"baseCoordCount")}),jn=new x.Struct({tag:new P.String(4),minCoord:new f.Pointer(t.uint16,L0,{type:"parent"}),maxCoord:new f.Pointer(t.uint16,L0,{type:"parent"})}),$a=new x.Struct({minCoord:new f.Pointer(t.uint16,L0),maxCoord:new f.Pointer(t.uint16,L0),featMinMaxCount:t.uint16,featMinMaxRecords:new h.Array(jn,"featMinMaxCount")}),Yn=new x.Struct({tag:new P.String(4),minMax:new f.Pointer(t.uint16,$a,{type:"parent"})}),Kn=new x.Struct({baseValues:new f.Pointer(t.uint16,qn),defaultMinMax:new f.Pointer(t.uint16,$a),baseLangSysCount:t.uint16,baseLangSysRecords:new h.Array(Yn,"baseLangSysCount")}),Zn=new x.Struct({tag:new P.String(4),script:new f.Pointer(t.uint16,Kn,{type:"parent"})}),Jn=new h.Array(Zn,t.uint16),_n=new h.Array(new P.String(4),t.uint16),va=new x.Struct({baseTagList:new f.Pointer(t.uint16,_n),baseScriptList:new f.Pointer(t.uint16,Jn)});var Qn=new p.VersionedStruct(t.uint32,{header:{horizAxis:new f.Pointer(t.uint16,va),vertAxis:new f.Pointer(t.uint16,va)},65536:{},65537:{itemVariationStore:new f.Pointer(t.uint32,x0)}});let ei=new h.Array(t.uint16,t.uint16),ti=new x.Struct({coverage:new f.Pointer(t.uint16,ze),glyphCount:t.uint16,attachPoints:new h.Array(new f.Pointer(t.uint16,ei),"glyphCount")}),ri=new p.VersionedStruct(t.uint16,{1:{coordinate:t.int16},2:{caretValuePoint:t.uint16},3:{coordinate:t.int16,deviceTable:new f.Pointer(t.uint16,St)}}),ai=new h.Array(new f.Pointer(t.uint16,ri),t.uint16),ni=new x.Struct({coverage:new f.Pointer(t.uint16,ze),ligGlyphCount:t.uint16,ligGlyphs:new h.Array(new f.Pointer(t.uint16,ai),"ligGlyphCount")}),xa=new x.Struct({markSetTableFormat:t.uint16,markSetCount:t.uint16,coverage:new h.Array(new f.Pointer(t.uint32,ze),"markSetCount")});var ii=new p.VersionedStruct(t.uint32,{header:{glyphClassDef:new f.Pointer(t.uint16,yt),attachList:new f.Pointer(t.uint16,ti),ligCaretList:new f.Pointer(t.uint16,ni),markAttachClassDef:new f.Pointer(t.uint16,yt)},65536:{},65538:{markGlyphSetsDef:new f.Pointer(t.uint16,xa)},65539:{markGlyphSetsDef:new f.Pointer(t.uint16,xa),itemVariationStore:new f.Pointer(t.uint32,x0)}});let w0=new S.Bitfield(t.uint16,["xPlacement","yPlacement","xAdvance","yAdvance","xPlaDevice","yPlaDevice","xAdvDevice","yAdvDevice"]),si={xPlacement:t.int16,yPlacement:t.int16,xAdvance:t.int16,yAdvance:t.int16,xPlaDevice:new f.Pointer(t.uint16,St,{type:"global",relativeTo:c=>c.rel}),yPlaDevice:new f.Pointer(t.uint16,St,{type:"global",relativeTo:c=>c.rel}),xAdvDevice:new f.Pointer(t.uint16,St,{type:"global",relativeTo:c=>c.rel}),yAdvDevice:new f.Pointer(t.uint16,St,{type:"global",relativeTo:c=>c.rel})};class m0{buildStruct(e){let r=e;for(;!r[this.key]&&r.parent;)r=r.parent;if(!r[this.key])return;let a={};a.rel=()=>r._startOffset;let n=r[this.key];for(let s in n)n[s]&&(a[s]=si[s]);return new x.Struct(a)}size(e,r){return this.buildStruct(r).size(e,r)}decode(e,r){let a=this.buildStruct(r).decode(e,r);return delete a.rel,a}constructor(e="valueFormat"){this.key=e}}let oi=new x.Struct({secondGlyph:t.uint16,value1:new m0("valueFormat1"),value2:new m0("valueFormat2")}),li=new h.Array(oi,t.uint16),ci=new x.Struct({value1:new m0("valueFormat1"),value2:new m0("valueFormat2")}),D0=new p.VersionedStruct(t.uint16,{1:{xCoordinate:t.int16,yCoordinate:t.int16},2:{xCoordinate:t.int16,yCoordinate:t.int16,anchorPoint:t.uint16},3:{xCoordinate:t.int16,yCoordinate:t.int16,xDeviceTable:new f.Pointer(t.uint16,St),yDeviceTable:new f.Pointer(t.uint16,St)}}),fi=new x.Struct({entryAnchor:new f.Pointer(t.uint16,D0,{type:"parent"}),exitAnchor:new f.Pointer(t.uint16,D0,{type:"parent"})}),ui=new x.Struct({class:t.uint16,markAnchor:new f.Pointer(t.uint16,D0,{type:"parent"})}),Vr=new h.Array(ui,t.uint16),di=new h.Array(new f.Pointer(t.uint16,D0),c=>c.parent.classCount),ga=new h.Array(di,t.uint16),hi=new h.Array(new f.Pointer(t.uint16,D0),c=>c.parent.parent.classCount),pi=new h.Array(hi,t.uint16),bi=new h.Array(new f.Pointer(t.uint16,pi),t.uint16),R0=new p.VersionedStruct("lookupType",{1:new p.VersionedStruct(t.uint16,{1:{coverage:new f.Pointer(t.uint16,ze),valueFormat:w0,value:new m0},2:{coverage:new f.Pointer(t.uint16,ze),valueFormat:w0,valueCount:t.uint16,values:new v.LazyArray(new m0,"valueCount")}}),2:new p.VersionedStruct(t.uint16,{1:{coverage:new f.Pointer(t.uint16,ze),valueFormat1:w0,valueFormat2:w0,pairSetCount:t.uint16,pairSets:new v.LazyArray(new f.Pointer(t.uint16,li),"pairSetCount")},2:{coverage:new f.Pointer(t.uint16,ze),valueFormat1:w0,valueFormat2:w0,classDef1:new f.Pointer(t.uint16,yt),classDef2:new f.Pointer(t.uint16,yt),class1Count:t.uint16,class2Count:t.uint16,classRecords:new v.LazyArray(new v.LazyArray(ci,"class2Count"),"class1Count")}}),3:{format:t.uint16,coverage:new f.Pointer(t.uint16,ze),entryExitCount:t.uint16,entryExitRecords:new h.Array(fi,"entryExitCount")},4:{format:t.uint16,markCoverage:new f.Pointer(t.uint16,ze),baseCoverage:new f.Pointer(t.uint16,ze),classCount:t.uint16,markArray:new f.Pointer(t.uint16,Vr),baseArray:new f.Pointer(t.uint16,ga)},5:{format:t.uint16,markCoverage:new f.Pointer(t.uint16,ze),ligatureCoverage:new f.Pointer(t.uint16,ze),classCount:t.uint16,markArray:new f.Pointer(t.uint16,Vr),ligatureArray:new f.Pointer(t.uint16,bi)},6:{format:t.uint16,mark1Coverage:new f.Pointer(t.uint16,ze),mark2Coverage:new f.Pointer(t.uint16,ze),classCount:t.uint16,mark1Array:new f.Pointer(t.uint16,Vr),mark2Array:new f.Pointer(t.uint16,ga)},7:Ht,8:v0,9:{posFormat:t.uint16,lookupType:t.uint16,extension:new f.Pointer(t.uint32,null)}});R0.versions[9].extension.type=R0;var $i=new p.VersionedStruct(t.uint32,{header:{scriptList:new f.Pointer(t.uint16,O0),featureList:new f.Pointer(t.uint16,p0),lookupList:new f.Pointer(t.uint16,new n0(R0))},65536:{},65537:{featureVariations:new f.Pointer(t.uint32,na)}});let ya=new h.Array(t.uint16,t.uint16),vi=ya,xi=new x.Struct({glyph:t.uint16,compCount:t.uint16,components:new h.Array(t.uint16,c=>c.compCount-1)}),gi=new h.Array(new f.Pointer(t.uint16,xi),t.uint16),Gr=new p.VersionedStruct("lookupType",{1:new p.VersionedStruct(t.uint16,{1:{coverage:new f.Pointer(t.uint16,ze),deltaGlyphID:t.int16},2:{coverage:new f.Pointer(t.uint16,ze),glyphCount:t.uint16,substitute:new v.LazyArray(t.uint16,"glyphCount")}}),2:{substFormat:t.uint16,coverage:new f.Pointer(t.uint16,ze),count:t.uint16,sequences:new v.LazyArray(new f.Pointer(t.uint16,ya),"count")},3:{substFormat:t.uint16,coverage:new f.Pointer(t.uint16,ze),count:t.uint16,alternateSet:new v.LazyArray(new f.Pointer(t.uint16,vi),"count")},4:{substFormat:t.uint16,coverage:new f.Pointer(t.uint16,ze),count:t.uint16,ligatureSets:new v.LazyArray(new f.Pointer(t.uint16,gi),"count")},5:Ht,6:v0,7:{substFormat:t.uint16,lookupType:t.uint16,extension:new f.Pointer(t.uint32,null)},8:{substFormat:t.uint16,coverage:new f.Pointer(t.uint16,ze),backtrackCoverage:new h.Array(new f.Pointer(t.uint16,ze),"backtrackGlyphCount"),lookaheadGlyphCount:t.uint16,lookaheadCoverage:new h.Array(new f.Pointer(t.uint16,ze),"lookaheadGlyphCount"),glyphCount:t.uint16,substitutes:new h.Array(t.uint16,"glyphCount")}});Gr.versions[7].extension.type=Gr;var yi=new p.VersionedStruct(t.uint32,{header:{scriptList:new f.Pointer(t.uint16,O0),featureList:new f.Pointer(t.uint16,p0),lookupList:new f.Pointer(t.uint16,new n0(Gr))},65536:{},65537:{featureVariations:new f.Pointer(t.uint32,na)}});let jt=new h.Array(t.uint16,t.uint16),wi=new x.Struct({shrinkageEnableGSUB:new f.Pointer(t.uint16,jt),shrinkageDisableGSUB:new f.Pointer(t.uint16,jt),shrinkageEnableGPOS:new f.Pointer(t.uint16,jt),shrinkageDisableGPOS:new f.Pointer(t.uint16,jt),shrinkageJstfMax:new f.Pointer(t.uint16,new n0(R0)),extensionEnableGSUB:new f.Pointer(t.uint16,jt),extensionDisableGSUB:new f.Pointer(t.uint16,jt),extensionEnableGPOS:new f.Pointer(t.uint16,jt),extensionDisableGPOS:new f.Pointer(t.uint16,jt),extensionJstfMax:new f.Pointer(t.uint16,new n0(R0))}),wa=new h.Array(new f.Pointer(t.uint16,wi),t.uint16),mi=new x.Struct({tag:new P.String(4),jstfLangSys:new f.Pointer(t.uint16,wa)}),Ci=new x.Struct({extenderGlyphs:new f.Pointer(t.uint16,new h.Array(t.uint16,t.uint16)),defaultLangSys:new f.Pointer(t.uint16,wa),langSysCount:t.uint16,langSysRecords:new h.Array(mi,"langSysCount")}),Si=new x.Struct({tag:new P.String(4),script:new f.Pointer(t.uint16,Ci,{type:"parent"})});var Ai=new x.Struct({version:t.uint32,scriptCount:t.uint16,scriptList:new h.Array(Si,"scriptCount")});class Pi{decode(e,r){switch(this.size(0,r)){case 1:return e.readUInt8();case 2:return e.readUInt16BE();case 3:return e.readUInt24BE();case 4:return e.readUInt32BE()}}size(e,r){return(0,te.resolveLength)(this._size,null,r)}constructor(e){this._size=e}}let Ii=new x.Struct({entry:new Pi(c=>((c.parent.entryFormat&48)>>4)+1),outerIndex:c=>c.entry>>(c.parent.entryFormat&15)+1,innerIndex:c=>c.entry&(1<<(c.parent.entryFormat&15)+1)-1}),zr=new x.Struct({entryFormat:t.uint16,mapCount:t.uint16,mapData:new h.Array(Ii,"mapCount")});var Ei=new x.Struct({majorVersion:t.uint16,minorVersion:t.uint16,itemVariationStore:new f.Pointer(t.uint32,x0),advanceWidthMapping:new f.Pointer(t.uint32,zr),LSBMapping:new f.Pointer(t.uint32,zr),RSBMapping:new f.Pointer(t.uint32,zr)});let ki=new x.Struct({format:t.uint32,length:t.uint32,offset:t.uint32}),Oi=new x.Struct({reserved:new $.Reserved(t.uint16,2),cbSignature:t.uint32,signature:new w.Buffer("cbSignature")});var Ti=new x.Struct({ulVersion:t.uint32,usNumSigs:t.uint16,usFlag:t.uint16,signatures:new h.Array(ki,"usNumSigs"),signatureBlocks:new h.Array(Oi,"usNumSigs")});let Fi=new x.Struct({rangeMaxPPEM:t.uint16,rangeGaspBehavior:new S.Bitfield(t.uint16,["grayscale","gridfit","symmetricSmoothing","symmetricGridfit"])});var Bi=new x.Struct({version:t.uint16,numRanges:t.uint16,gaspRanges:new h.Array(Fi,"numRanges")});let Li=new x.Struct({pixelSize:t.uint8,maximumWidth:t.uint8,widths:new h.Array(t.uint8,c=>c.parent.parent.maxp.numGlyphs)});var Di=new x.Struct({version:t.uint16,numRecords:t.int16,sizeDeviceRecord:t.int32,records:new h.Array(Li,"numRecords")});let Ri=new x.Struct({left:t.uint16,right:t.uint16,value:t.int16}),ma=new x.Struct({firstGlyph:t.uint16,nGlyphs:t.uint16,offsets:new h.Array(t.uint16,"nGlyphs"),max:c=>c.offsets.length&&Math.max.apply(Math,c.offsets)}),Ni=new x.Struct({off:c=>c._startOffset-c.parent.parent._startOffset,len:c=>((c.parent.leftTable.max-c.off)/c.parent.rowWidth+1)*(c.parent.rowWidth/2),values:new v.LazyArray(t.int16,"len")}),Ca=new p.VersionedStruct("format",{0:{nPairs:t.uint16,searchRange:t.uint16,entrySelector:t.uint16,rangeShift:t.uint16,pairs:new h.Array(Ri,"nPairs")},2:{rowWidth:t.uint16,leftTable:new f.Pointer(t.uint16,ma,{type:"parent"}),rightTable:new f.Pointer(t.uint16,ma,{type:"parent"}),array:new f.Pointer(t.uint16,Ni,{type:"parent"})},3:{glyphCount:t.uint16,kernValueCount:t.uint8,leftClassCount:t.uint8,rightClassCount:t.uint8,flags:t.uint8,kernValue:new h.Array(t.int16,"kernValueCount"),leftClass:new h.Array(t.uint8,"glyphCount"),rightClass:new h.Array(t.uint8,"glyphCount"),kernIndex:new h.Array(t.uint8,c=>c.leftClassCount*c.rightClassCount)}}),Sa=new p.VersionedStruct("version",{0:{subVersion:t.uint16,length:t.uint16,format:t.uint8,coverage:new S.Bitfield(t.uint8,["horizontal","minimum","crossStream","override"]),subtable:Ca,padding:new $.Reserved(t.uint8,c=>c.length-c._currentOffset)},1:{length:t.uint32,coverage:new S.Bitfield(t.uint8,[null,null,null,null,null,"variation","crossStream","vertical"]),format:t.uint8,tupleIndex:t.uint16,subtable:Ca,padding:new $.Reserved(t.uint8,c=>c.length-c._currentOffset)}});var Mi=new p.VersionedStruct(t.uint16,{0:{nTables:t.uint16,tables:new h.Array(Sa,"nTables")},1:{reserved:new $.Reserved(t.uint16),nTables:t.uint32,tables:new h.Array(Sa,"nTables")}}),Ui=new x.Struct({version:t.uint16,numGlyphs:t.uint16,yPels:new h.Array(t.uint8,"numGlyphs")}),Vi=new x.Struct({version:t.uint16,fontNumber:t.uint32,pitch:t.uint16,xHeight:t.uint16,style:t.uint16,typeFamily:t.uint16,capHeight:t.uint16,symbolSet:t.uint16,typeface:new P.String(16),characterComplement:new P.String(8),fileName:new P.String(6),strokeWeight:new P.String(1),widthType:new P.String(1),serifStyle:t.uint8,reserved:new $.Reserved(t.uint8)});let Gi=new x.Struct({bCharSet:t.uint8,xRatio:t.uint8,yStartRatio:t.uint8,yEndRatio:t.uint8}),zi=new x.Struct({yPelHeight:t.uint16,yMax:t.int16,yMin:t.int16}),Hi=new x.Struct({recs:t.uint16,startsz:t.uint8,endsz:t.uint8,entries:new h.Array(zi,"recs")});var Wi=new x.Struct({version:t.uint16,numRecs:t.uint16,numRatios:t.uint16,ratioRanges:new h.Array(Gi,"numRatios"),offsets:new h.Array(t.uint16,"numRatios"),groups:new h.Array(Hi,"numRecs")}),Xi=new x.Struct({version:t.uint16,ascent:t.int16,descent:t.int16,lineGap:t.int16,advanceHeightMax:t.int16,minTopSideBearing:t.int16,minBottomSideBearing:t.int16,yMaxExtent:t.int16,caretSlopeRise:t.int16,caretSlopeRun:t.int16,caretOffset:t.int16,reserved:new $.Reserved(t.int16,4),metricDataFormat:t.int16,numberOfMetrics:t.uint16});let qi=new x.Struct({advance:t.uint16,bearing:t.int16});var ji=new x.Struct({metrics:new v.LazyArray(qi,c=>c.parent.vhea.numberOfMetrics),bearings:new v.LazyArray(t.int16,c=>c.parent.maxp.numGlyphs-c.parent.vhea.numberOfMetrics)});let Aa=new t.Fixed(16,"BE",14),Yi=new x.Struct({fromCoord:Aa,toCoord:Aa}),Ki=new x.Struct({pairCount:t.uint16,correspondence:new h.Array(Yi,"pairCount")});var Zi=new x.Struct({version:t.fixed32,axisCount:t.uint32,segment:new h.Array(Ki,"axisCount")});class Ji{getItem(e){if(this._items[e]==null){let r=this.stream.pos;this.stream.pos=this.base+this.type.size(null,this.parent)*e,this._items[e]=this.type.decode(this.stream,this.parent),this.stream.pos=r}return this._items[e]}inspect(){return`[UnboundedArray ${this.type.constructor.name}]`}constructor(e,r,a){this.type=e,this.stream=r,this.parent=a,this.base=this.stream.pos,this._items=[]}}class Ot extends h.Array{decode(e,r){return new Ji(this.type,e,r)}constructor(e){super(e,0)}}let Yt=function(c=t.uint16){class e{decode(u,b){return b=b.parent.parent,this.type.decode(u,b)}size(u,b){return b=b.parent.parent,this.type.size(u,b)}encode(u,b,y){return y=y.parent.parent,this.type.encode(u,b,y)}constructor(u){this.type=u}}c=new e(c);let r=new x.Struct({unitSize:t.uint16,nUnits:t.uint16,searchRange:t.uint16,entrySelector:t.uint16,rangeShift:t.uint16}),a=new x.Struct({lastGlyph:t.uint16,firstGlyph:t.uint16,value:c}),n=new x.Struct({lastGlyph:t.uint16,firstGlyph:t.uint16,values:new f.Pointer(t.uint16,new h.Array(c,i=>i.lastGlyph-i.firstGlyph+1),{type:"parent"})}),s=new x.Struct({glyph:t.uint16,value:c});return new p.VersionedStruct(t.uint16,{0:{values:new Ot(c)},2:{binarySearchHeader:r,segments:new h.Array(a,i=>i.binarySearchHeader.nUnits)},4:{binarySearchHeader:r,segments:new h.Array(n,i=>i.binarySearchHeader.nUnits)},6:{binarySearchHeader:r,segments:new h.Array(s,i=>i.binarySearchHeader.nUnits)},8:{firstGlyph:t.uint16,count:t.uint16,values:new h.Array(c,"count")}})};function fr(c={},e=t.uint16){let r=Object.assign({newState:t.uint16,flags:t.uint16},c),a=new x.Struct(r),n=new Ot(new h.Array(t.uint16,i=>i.nClasses));return new x.Struct({nClasses:t.uint32,classTable:new f.Pointer(t.uint32,new Yt(e)),stateArray:new f.Pointer(t.uint32,n),entryTable:new f.Pointer(t.uint32,new Ot(a))})}function _i(c={},e=t.uint16){let r=new x.Struct({version(){return 8},firstGlyph:t.uint16,values:new h.Array(t.uint8,t.uint16)}),a=Object.assign({newStateOffset:t.uint16,newState:u=>(u.newStateOffset-(u.parent.stateArray.base-u.parent._startOffset))/u.parent.nClasses,flags:t.uint16},c),n=new x.Struct(a),s=new Ot(new h.Array(t.uint8,u=>u.nClasses));return new x.Struct({nClasses:t.uint16,classTable:new f.Pointer(t.uint16,r),stateArray:new f.Pointer(t.uint16,s),entryTable:new f.Pointer(t.uint16,new Ot(n))})}let Qi=new p.VersionedStruct("format",{0:{deltas:new h.Array(t.int16,32)},1:{deltas:new h.Array(t.int16,32),mappingData:new Yt(t.uint16)},2:{standardGlyph:t.uint16,controlPoints:new h.Array(t.uint16,32)},3:{standardGlyph:t.uint16,controlPoints:new h.Array(t.uint16,32),mappingData:new Yt(t.uint16)}});var es=new x.Struct({version:t.fixed32,format:t.uint16,defaultBaseline:t.uint16,subtable:Qi});let ts=new x.Struct({setting:t.uint16,nameIndex:t.int16,name:c=>c.parent.parent.parent.name.records.fontFeatures[c.nameIndex]}),rs=new x.Struct({feature:t.uint16,nSettings:t.uint16,settingTable:new f.Pointer(t.uint32,new h.Array(ts,"nSettings"),{type:"parent"}),featureFlags:new S.Bitfield(t.uint8,[null,null,null,null,null,null,"hasDefault","exclusive"]),defaultSetting:t.uint8,nameIndex:t.int16,name:c=>c.parent.parent.name.records.fontFeatures[c.nameIndex]});var as=new x.Struct({version:t.fixed32,featureNameCount:t.uint16,reserved1:new $.Reserved(t.uint16),reserved2:new $.Reserved(t.uint32),featureNames:new h.Array(rs,"featureNameCount")});let ns=new x.Struct({axisTag:new P.String(4),minValue:t.fixed32,defaultValue:t.fixed32,maxValue:t.fixed32,flags:t.uint16,nameID:t.uint16,name:c=>c.parent.parent.name.records.fontFeatures[c.nameID]}),is=new x.Struct({nameID:t.uint16,name:c=>c.parent.parent.name.records.fontFeatures[c.nameID],flags:t.uint16,coord:new h.Array(t.fixed32,c=>c.parent.axisCount),postscriptNameID:new re.Optional(t.uint16,c=>c.parent.instanceSize-c._currentOffset>0)});var ss=new x.Struct({version:t.fixed32,offsetToData:t.uint16,countSizePairs:t.uint16,axisCount:t.uint16,axisSize:t.uint16,instanceCount:t.uint16,instanceSize:t.uint16,axis:new h.Array(ns,"axisCount"),instance:new h.Array(is,"instanceCount")});let os=new t.Fixed(16,"BE",14);class ls{static decode(e,r){return r.flags?e.readUInt32BE():e.readUInt16BE()*2}}var cs=new x.Struct({version:t.uint16,reserved:new $.Reserved(t.uint16),axisCount:t.uint16,globalCoordCount:t.uint16,globalCoords:new f.Pointer(t.uint32,new h.Array(new h.Array(os,"axisCount"),"globalCoordCount")),glyphCount:t.uint16,flags:t.uint16,offsetToData:t.uint32,offsets:new h.Array(new f.Pointer(ls,"void",{relativeTo:c=>c.offsetToData,allowNull:!1}),c=>c.glyphCount+1)});let fs=new x.Struct({length:t.uint16,coverage:t.uint16,subFeatureFlags:t.uint32,stateTable:new _i}),us=new x.Struct({justClass:t.uint32,beforeGrowLimit:t.fixed32,beforeShrinkLimit:t.fixed32,afterGrowLimit:t.fixed32,afterShrinkLimit:t.fixed32,growFlags:t.uint16,shrinkFlags:t.uint16}),ds=new h.Array(us,t.uint32),hs=new p.VersionedStruct("actionType",{0:{lowerLimit:t.fixed32,upperLimit:t.fixed32,order:t.uint16,glyphs:new h.Array(t.uint16,t.uint16)},1:{addGlyph:t.uint16},2:{substThreshold:t.fixed32,addGlyph:t.uint16,substGlyph:t.uint16},3:{},4:{variationAxis:t.uint32,minimumLimit:t.fixed32,noStretchValue:t.fixed32,maximumLimit:t.fixed32},5:{flags:t.uint16,glyph:t.uint16}}),ps=new x.Struct({actionClass:t.uint16,actionType:t.uint16,actionLength:t.uint32,actionData:hs,padding:new $.Reserved(t.uint8,c=>c.actionLength-c._currentOffset)}),bs=new h.Array(ps,t.uint32),$s=new x.Struct({lookupTable:new Yt(new f.Pointer(t.uint16,bs))}),Pa=new x.Struct({classTable:new f.Pointer(t.uint16,fs,{type:"parent"}),wdcOffset:t.uint16,postCompensationTable:new f.Pointer(t.uint16,$s,{type:"parent"}),widthDeltaClusters:new Yt(new f.Pointer(t.uint16,ds,{type:"parent",relativeTo:c=>c.wdcOffset}))});var vs=new x.Struct({version:t.uint32,format:t.uint16,horizontal:new f.Pointer(t.uint16,Pa),vertical:new f.Pointer(t.uint16,Pa)});let xs={action:t.uint16},gs={markIndex:t.uint16,currentIndex:t.uint16},ys={currentInsertIndex:t.uint16,markedInsertIndex:t.uint16},ws=new x.Struct({items:new Ot(new f.Pointer(t.uint32,new Yt))}),ms=new p.VersionedStruct("type",{0:{stateTable:new fr},1:{stateTable:new fr(gs),substitutionTable:new f.Pointer(t.uint32,ws)},2:{stateTable:new fr(xs),ligatureActions:new f.Pointer(t.uint32,new Ot(t.uint32)),components:new f.Pointer(t.uint32,new Ot(t.uint16)),ligatureList:new f.Pointer(t.uint32,new Ot(t.uint16))},4:{lookupTable:new Yt},5:{stateTable:new fr(ys),insertionActions:new f.Pointer(t.uint32,new Ot(t.uint16))}}),Cs=new x.Struct({length:t.uint32,coverage:t.uint24,type:t.uint8,subFeatureFlags:t.uint32,table:ms,padding:new $.Reserved(t.uint8,c=>c.length-c._currentOffset)}),Ss=new x.Struct({featureType:t.uint16,featureSetting:t.uint16,enableFlags:t.uint32,disableFlags:t.uint32}),As=new x.Struct({defaultFlags:t.uint32,chainLength:t.uint32,nFeatureEntries:t.uint32,nSubtables:t.uint32,features:new h.Array(Ss,"nFeatureEntries"),subtables:new h.Array(Cs,"nSubtables")});var Ps=new x.Struct({version:t.uint16,unused:new $.Reserved(t.uint16),nChains:t.uint32,chains:new h.Array(As,"nChains")});let Is=new x.Struct({left:t.int16,top:t.int16,right:t.int16,bottom:t.int16});var Es=new x.Struct({version:t.fixed32,format:t.uint16,lookupTable:new Yt(Is)});let Ce={};var ur=Ce;Ce.cmap=ot,Ce.head=ye,Ce.hhea=Ke,Ce.hmtx=He,Ce.maxp=ft,Ce.name=Ge,Ce["OS/2"]=nt,Ce.post=st,Ce.fpgm=o,Ce.loca=g,Ce.prep=E,Ce["cvt "]=d,Ce.glyf=F,Ce["CFF "]=da,Ce.CFF2=da,Ce.VORG=Bn,Ce.EBLC=Mn,Ce.CBLC=Ce.EBLC,Ce.sbix=Vn,Ce.COLR=Hn,Ce.CPAL=Xn,Ce.BASE=Qn,Ce.GDEF=ii,Ce.GPOS=$i,Ce.GSUB=yi,Ce.JSTF=Ai,Ce.HVAR=Ei,Ce.DSIG=Ti,Ce.gasp=Bi,Ce.hdmx=Di,Ce.kern=Mi,Ce.LTSH=Ui,Ce.PCLT=Vi,Ce.VDMX=Wi,Ce.vhea=Xi,Ce.vmtx=ji,Ce.avar=Zi,Ce.bsln=es,Ce.feat=as,Ce.fvar=ss,Ce.gvar=cs,Ce.just=vs,Ce.morx=Ps,Ce.opbd=Es;let ks=new x.Struct({tag:new P.String(4),checkSum:t.uint32,offset:new f.Pointer(t.uint32,"void",{type:"global"}),length:t.uint32}),Hr=new x.Struct({tag:new P.String(4),numTables:t.uint16,searchRange:t.uint16,entrySelector:t.uint16,rangeShift:t.uint16,tables:new h.Array(ks,"numTables")});Hr.process=function(){let c={};for(let e of this.tables)c[e.tag]=e;this.tables=c},Hr.preEncode=function(){if(!Array.isArray(this.tables)){let r=[];for(let a in this.tables){let n=this.tables[a];n&&r.push({tag:a,checkSum:0,offset:new f.VoidPointer(ur[a],n),length:ur[a].size(n)})}this.tables=r}this.tag="true",this.numTables=this.tables.length;let c=Math.floor(Math.log(this.numTables)/Math.LN2),e=Math.pow(2,c);this.searchRange=e*16,this.entrySelector=Math.log(e)/Math.LN2,this.rangeShift=this.numTables*16-this.searchRange};var Ia=Hr;function dr(c,e){let r=0,a=c.length-1;for(;r<=a;){let n=r+a>>1,s=e(c[n]);if(s<0)a=n-1;else if(s>0)r=n+1;else return n}return-1}function C0(c,e){let r=[];for(;c<e;)r.push(c++);return r}const hr=new TextDecoder("ascii"),Ea="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",N0=new Uint8Array(256);for(let c=0;c<Ea.length;c++)N0[Ea.charCodeAt(c)]=c;function Wr(c){let e=c.length*.75;c[c.length-1]==="="&&(e--,c[c.length-2]==="="&&e--);let r=new Uint8Array(e),a=0;for(let n=0,s=c.length;n<s;n+=4){let i=N0[c.charCodeAt(n)],u=N0[c.charCodeAt(n+1)],b=N0[c.charCodeAt(n+2)],y=N0[c.charCodeAt(n+3)];r[a++]=i<<2|u>>4,r[a++]=(u&15)<<4|b>>2,r[a++]=(b&3)<<6|y&63}return r}class Xr{findSubtable(e,r){for(let[a,n]of r)for(let s of e.tables)if(s.platformID===a&&s.encodingID===n)return s.table;return null}lookup(e,r){if(this.encoding)e=this.encoding.get(e)||e;else if(r){let n=this.getVariationSelector(e,r);if(n)return n}let a=this.cmap;switch(a.version){case 0:return a.codeMap.get(e)||0;case 4:{let n=0,s=a.segCount-1;for(;n<=s;){let i=n+s>>1;if(e<a.startCode.get(i))s=i-1;else if(e>a.endCode.get(i))n=i+1;else{let u=a.idRangeOffset.get(i),b;if(u===0)b=e+a.idDelta.get(i);else{let y=u/2+(e-a.startCode.get(i))-(a.segCount-i);b=a.glyphIndexArray.get(y)||0,b!==0&&(b+=a.idDelta.get(i))}return b&65535}}return 0}case 8:throw new Error("TODO: cmap format 8");case 6:case 10:return a.glyphIndices.get(e-a.firstCode)||0;case 12:case 13:{let n=0,s=a.nGroups-1;for(;n<=s;){let i=n+s>>1,u=a.groups.get(i);if(e<u.startCharCode)s=i-1;else if(e>u.endCharCode)n=i+1;else return a.version===12?u.glyphID+(e-u.startCharCode):u.glyphID}return 0}case 14:throw new Error("TODO: cmap format 14");default:throw new Error(`Unknown cmap format ${a.version}`)}}getVariationSelector(e,r){if(!this.uvs)return 0;let a=this.uvs.varSelectors.toArray(),n=dr(a,i=>r-i.varSelector),s=a[n];return n!==-1&&s.defaultUVS&&(n=dr(s.defaultUVS,i=>e<i.startUnicodeValue?-1:e>i.startUnicodeValue+i.additionalCount?1:0)),n!==-1&&s.nonDefaultUVS&&(n=dr(s.nonDefaultUVS,i=>e-i.unicodeValue),n!==-1)?s.nonDefaultUVS[n].glyphID:0}getCharacterSet(){let e=this.cmap;switch(e.version){case 0:return C0(0,e.codeMap.length);case 4:{let r=[],a=e.endCode.toArray();for(let n=0;n<a.length;n++){let s=a[n]+1,i=e.startCode.get(n);r.push(...C0(i,s))}return r}case 8:throw new Error("TODO: cmap format 8");case 6:case 10:return C0(e.firstCode,e.firstCode+e.glyphIndices.length);case 12:case 13:{let r=[];for(let a of e.groups.toArray())r.push(...C0(a.startCharCode,a.endCharCode+1));return r}case 14:throw new Error("TODO: cmap format 14");default:throw new Error(`Unknown cmap format ${e.version}`)}}codePointsForGlyph(e){let r=this.cmap;switch(r.version){case 0:{let n=[];for(let s=0;s<256;s++)r.codeMap.get(s)===e&&n.push(s);return n}case 4:{let n=[];for(let s=0;s<r.segCount;s++){let i=r.endCode.get(s),u=r.startCode.get(s),b=r.idRangeOffset.get(s),y=r.idDelta.get(s);for(var a=u;a<=i;a++){let C=0;if(b===0)C=a+y;else{let m=b/2+(a-u)-(r.segCount-s);C=r.glyphIndexArray.get(m)||0,C!==0&&(C+=y)}C===e&&n.push(a)}}return n}case 12:{let n=[];for(let s of r.groups.toArray())e>=s.glyphID&&e<=s.glyphID+(s.endCharCode-s.startCharCode)&&n.push(s.startCharCode+(e-s.glyphID));return n}case 13:{let n=[];for(let s of r.groups.toArray())e===s.glyphID&&n.push(...C0(s.startCharCode,s.endCharCode+1));return n}default:throw new Error(`Unknown cmap format ${r.version}`)}}constructor(e){if(this.encoding=null,this.cmap=this.findSubtable(e,[[3,10],[0,6],[0,4],[3,1],[0,3],[0,2],[0,1],[0,0]]),!this.cmap)for(let r of e.tables){let a=K(r.platformID,r.encodingID,r.table.language-1),n=fe(a);n&&(this.cmap=r.table,this.encoding=n)}if(!this.cmap)throw new Error("Could not find a supported cmap table");this.uvs=this.findSubtable(e,[[0,5]]),this.uvs&&this.uvs.version!==14&&(this.uvs=null)}}A(Y)([Be],Xr.prototype,"getCharacterSet",null),A(Y)([Be],Xr.prototype,"codePointsForGlyph",null);class Os{process(e,r){for(let a=0;a<e.length-1;a++){let n=e[a].id,s=e[a+1].id;r[a].xAdvance+=this.getKerning(n,s)}}getKerning(e,r){let a=0;for(let n of this.kern.tables){if(n.coverage.crossStream)continue;switch(n.version){case 0:if(!n.coverage.horizontal)continue;break;case 1:if(n.coverage.vertical||n.coverage.variation)continue;break;default:throw new Error(`Unsupported kerning table version ${n.version}`)}let s=0,i=n.subtable;switch(n.format){case 0:let u=dr(i.pairs,function(m){return e-m.left||r-m.right});u>=0&&(s=i.pairs[u].value);break;case 2:let b=0,y=0;e>=i.leftTable.firstGlyph&&e<i.leftTable.firstGlyph+i.leftTable.nGlyphs?b=i.leftTable.offsets[e-i.leftTable.firstGlyph]:b=i.array.off,r>=i.rightTable.firstGlyph&&r<i.rightTable.firstGlyph+i.rightTable.nGlyphs&&(y=i.rightTable.offsets[r-i.rightTable.firstGlyph]);let C=(b+y-i.array.off)/2;s=i.array.values.get(C);break;case 3:if(e>=i.glyphCount||r>=i.glyphCount)return 0;s=i.kernValue[i.kernIndex[i.leftClass[e]*i.rightClassCount+i.rightClass[r]]];break;default:throw new Error(`Unsupported kerning sub-table format ${n.format}`)}n.coverage.override?a=s:a+=s}return a}constructor(e){this.kern=e.kern}}class Ts{positionGlyphs(e,r){let a=0,n=0;for(let s=0;s<e.length;s++)e[s].isMark?n=s:(a!==n&&this.positionCluster(e,r,a,n),a=n=s);return a!==n&&this.positionCluster(e,r,a,n),r}positionCluster(e,r,a,n){let s=e[a],i=s.cbox.copy();s.codePoints.length>1&&(i.minX+=(s.codePoints.length-1)*i.width/s.codePoints.length);let u=-r[a].xAdvance,b=0,y=this.font.unitsPerEm/16;for(let C=a+1;C<=n;C++){let m=e[C],z=m.cbox,ne=r[C],oe=this.getCombiningClass(m.codePoints[0]);if(oe!=="Not_Reordered"){switch(ne.xOffset=ne.yOffset=0,oe){case"Double_Above":case"Double_Below":ne.xOffset+=i.minX-z.width/2-z.minX;break;case"Attached_Below_Left":case"Below_Left":case"Above_Left":ne.xOffset+=i.minX-z.minX;break;case"Attached_Above_Right":case"Below_Right":case"Above_Right":ne.xOffset+=i.maxX-z.width-z.minX;break;default:ne.xOffset+=i.minX+(i.width-z.width)/2-z.minX}switch(oe){case"Double_Below":case"Below_Left":case"Below":case"Below_Right":case"Attached_Below_Left":case"Attached_Below":(oe==="Attached_Below_Left"||oe==="Attached_Below")&&(i.minY+=y),ne.yOffset=-i.minY-z.maxY,i.minY+=z.height;break;case"Double_Above":case"Above_Left":case"Above":case"Above_Right":case"Attached_Above":case"Attached_Above_Right":(oe==="Attached_Above"||oe==="Attached_Above_Right")&&(i.maxY+=y),ne.yOffset=i.maxY-z.minY,i.maxY+=z.height;break}ne.xAdvance=ne.yAdvance=0,ne.xOffset+=u,ne.yOffset+=b}else u-=ne.xAdvance,b-=ne.yAdvance}}getCombiningClass(e){let r=(0,le.getCombiningClass)(e);if((e&-256)===3584){if(r==="Not_Reordered")switch(e){case 3633:case 3636:case 3637:case 3638:case 3639:case 3655:case 3660:case 3645:case 3662:return"Above_Right";case 3761:case 3764:case 3765:case 3766:case 3767:case 3771:case 3788:case 3789:return"Above";case 3772:return"Below"}else if(e===3642)return"Below_Right"}switch(r){case"CCC10":case"CCC11":case"CCC12":case"CCC13":case"CCC14":case"CCC15":case"CCC16":case"CCC17":case"CCC18":case"CCC20":case"CCC22":return"Below";case"CCC23":return"Attached_Above";case"CCC24":return"Above_Right";case"CCC25":case"CCC19":return"Above_Left";case"CCC26":return"Above";case"CCC21":break;case"CCC27":case"CCC28":case"CCC30":case"CCC31":case"CCC33":case"CCC34":case"CCC35":case"CCC36":return"Above";case"CCC29":case"CCC32":return"Below";case"CCC103":return"Below_Right";case"CCC107":return"Above_Right";case"CCC118":return"Below";case"CCC122":return"Above";case"CCC129":case"CCC132":return"Below";case"CCC130":return"Above"}return r}constructor(e){this.font=e}}class Kt{get width(){return this.maxX-this.minX}get height(){return this.maxY-this.minY}addPoint(e,r){Math.abs(e)!==1/0&&(e<this.minX&&(this.minX=e),e>this.maxX&&(this.maxX=e)),Math.abs(r)!==1/0&&(r<this.minY&&(this.minY=r),r>this.maxY&&(this.maxY=r))}copy(){return new Kt(this.minX,this.minY,this.maxX,this.maxY)}constructor(e=1/0,r=1/0,a=-1/0,n=-1/0){this.minX=e,this.minY=r,this.maxX=a,this.maxY=n}}const s0={Caucasian_Albanian:"aghb",Arabic:"arab",Imperial_Aramaic:"armi",Armenian:"armn",Avestan:"avst",Balinese:"bali",Bamum:"bamu",Bassa_Vah:"bass",Batak:"batk",Bengali:["bng2","beng"],Bopomofo:"bopo",Brahmi:"brah",Braille:"brai",Buginese:"bugi",Buhid:"buhd",Chakma:"cakm",Canadian_Aboriginal:"cans",Carian:"cari",Cham:"cham",Cherokee:"cher",Coptic:"copt",Cypriot:"cprt",Cyrillic:"cyrl",Devanagari:["dev2","deva"],Deseret:"dsrt",Duployan:"dupl",Egyptian_Hieroglyphs:"egyp",Elbasan:"elba",Ethiopic:"ethi",Georgian:"geor",Glagolitic:"glag",Gothic:"goth",Grantha:"gran",Greek:"grek",Gujarati:["gjr2","gujr"],Gurmukhi:["gur2","guru"],Hangul:"hang",Han:"hani",Hanunoo:"hano",Hebrew:"hebr",Hiragana:"hira",Pahawh_Hmong:"hmng",Katakana_Or_Hiragana:"hrkt",Old_Italic:"ital",Javanese:"java",Kayah_Li:"kali",Katakana:"kana",Kharoshthi:"khar",Khmer:"khmr",Khojki:"khoj",Kannada:["knd2","knda"],Kaithi:"kthi",Tai_Tham:"lana",Lao:"lao ",Latin:"latn",Lepcha:"lepc",Limbu:"limb",Linear_A:"lina",Linear_B:"linb",Lisu:"lisu",Lycian:"lyci",Lydian:"lydi",Mahajani:"mahj",Mandaic:"mand",Manichaean:"mani",Mende_Kikakui:"mend",Meroitic_Cursive:"merc",Meroitic_Hieroglyphs:"mero",Malayalam:["mlm2","mlym"],Modi:"modi",Mongolian:"mong",Mro:"mroo",Meetei_Mayek:"mtei",Myanmar:["mym2","mymr"],Old_North_Arabian:"narb",Nabataean:"nbat",Nko:"nko ",Ogham:"ogam",Ol_Chiki:"olck",Old_Turkic:"orkh",Oriya:["ory2","orya"],Osmanya:"osma",Palmyrene:"palm",Pau_Cin_Hau:"pauc",Old_Permic:"perm",Phags_Pa:"phag",Inscriptional_Pahlavi:"phli",Psalter_Pahlavi:"phlp",Phoenician:"phnx",Miao:"plrd",Inscriptional_Parthian:"prti",Rejang:"rjng",Runic:"runr",Samaritan:"samr",Old_South_Arabian:"sarb",Saurashtra:"saur",Shavian:"shaw",Sharada:"shrd",Siddham:"sidd",Khudawadi:"sind",Sinhala:"sinh",Sora_Sompeng:"sora",Sundanese:"sund",Syloti_Nagri:"sylo",Syriac:"syrc",Tagbanwa:"tagb",Takri:"takr",Tai_Le:"tale",New_Tai_Lue:"talu",Tamil:["tml2","taml"],Tai_Viet:"tavt",Telugu:["tel2","telu"],Tifinagh:"tfng",Tagalog:"tglg",Thaana:"thaa",Thai:"thai",Tibetan:"tibt",Tirhuta:"tirh",Ugaritic:"ugar",Vai:"vai ",Warang_Citi:"wara",Old_Persian:"xpeo",Cuneiform:"xsux",Yi:"yi ",Inherited:"zinh",Common:"zyyy",Unknown:"zzzz"},qr={};for(let c in s0){let e=s0[c];if(Array.isArray(e))for(let r of e)qr[r]=c;else qr[e]=c}function uc(c){return s0[c]}function Fs(c){return qr[c]}function Bs(c){let e=c.length,r=0;for(;r<e;){let a=c.charCodeAt(r++);if(55296<=a&&a<=56319&&r<e){let s=c.charCodeAt(r);56320<=s&&s<=57343&&(r++,a=((a&1023)<<10)+(s&1023)+65536)}let n=(0,le.getScript)(a);if(n!=="Common"&&n!=="Inherited"&&n!=="Unknown")return s0[n]}return s0.Unknown}function Ls(c){for(let e=0;e<c.length;e++){let r=c[e],a=(0,le.getScript)(r);if(a!=="Common"&&a!=="Inherited"&&a!=="Unknown")return s0[a]}return s0.Unknown}const Ds={arab:!0,hebr:!0,syrc:!0,thaa:!0,cprt:!0,khar:!0,phnx:!0,"nko ":!0,lydi:!0,avst:!0,armi:!0,phli:!0,prti:!0,sarb:!0,orkh:!0,samr:!0,mand:!0,merc:!0,mero:!0,mani:!0,mend:!0,nbat:!0,narb:!0,palm:!0,phlp:!0};function ka(c){return Ds[c]?"rtl":"ltr"}class Rs{get advanceWidth(){let e=0;for(let r of this.positions)e+=r.xAdvance;return e}get advanceHeight(){let e=0;for(let r of this.positions)e+=r.yAdvance;return e}get bbox(){let e=new Kt,r=0,a=0;for(let n=0;n<this.glyphs.length;n++){let s=this.glyphs[n],i=this.positions[n],u=s.bbox;e.addPoint(u.minX+r+i.xOffset,u.minY+a+i.yOffset),e.addPoint(u.maxX+r+i.xOffset,u.maxY+a+i.yOffset),r+=i.xAdvance,a+=i.yAdvance}return e}constructor(e,r,a,n,s){if(this.glyphs=e,this.positions=null,this.script=a,this.language=n||null,this.direction=s||ka(a),this.features={},Array.isArray(r))for(let i of r)this.features[i]=!0;else typeof r=="object"&&(this.features=r)}}class Ns{constructor(e=0,r=0,a=0,n=0){this.xAdvance=e,this.yAdvance=r,this.xOffset=a,this.yOffset=n}}const o0={allTypographicFeatures:{code:0,exclusive:!1,allTypeFeatures:0},ligatures:{code:1,exclusive:!1,requiredLigatures:0,commonLigatures:2,rareLigatures:4,rebusPictures:8,diphthongLigatures:10,squaredLigatures:12,abbrevSquaredLigatures:14,symbolLigatures:16,contextualLigatures:18,historicalLigatures:20},cursiveConnection:{code:2,exclusive:!0,unconnected:0,partiallyConnected:1,cursive:2},letterCase:{code:3,exclusive:!0},verticalSubstitution:{code:4,exclusive:!1,substituteVerticalForms:0},linguisticRearrangement:{code:5,exclusive:!1,linguisticRearrangement:0},numberSpacing:{code:6,exclusive:!0,monospacedNumbers:0,proportionalNumbers:1,thirdWidthNumbers:2,quarterWidthNumbers:3},smartSwash:{code:8,exclusive:!1,wordInitialSwashes:0,wordFinalSwashes:2,nonFinalSwashes:8},diacritics:{code:9,exclusive:!0,showDiacritics:0,hideDiacritics:1,decomposeDiacritics:2},verticalPosition:{code:10,exclusive:!0,normalPosition:0,superiors:1,inferiors:2,ordinals:3,scientificInferiors:4},fractions:{code:11,exclusive:!0,noFractions:0,verticalFractions:1,diagonalFractions:2},overlappingCharacters:{code:13,exclusive:!1,preventOverlap:0},typographicExtras:{code:14,exclusive:!1,slashedZero:4},mathematicalExtras:{code:15,exclusive:!1,mathematicalGreek:10},ornamentSets:{code:16,exclusive:!0,noOrnaments:0,dingbats:1,piCharacters:2,fleurons:3,decorativeBorders:4,internationalSymbols:5,mathSymbols:6},characterAlternatives:{code:17,exclusive:!0,noAlternates:0},designComplexity:{code:18,exclusive:!0,designLevel1:0,designLevel2:1,designLevel3:2,designLevel4:3,designLevel5:4},styleOptions:{code:19,exclusive:!0,noStyleOptions:0,displayText:1,engravedText:2,illuminatedCaps:3,titlingCaps:4,tallCaps:5},characterShape:{code:20,exclusive:!0,traditionalCharacters:0,simplifiedCharacters:1,JIS1978Characters:2,JIS1983Characters:3,JIS1990Characters:4,traditionalAltOne:5,traditionalAltTwo:6,traditionalAltThree:7,traditionalAltFour:8,traditionalAltFive:9,expertCharacters:10,JIS2004Characters:11,hojoCharacters:12,NLCCharacters:13,traditionalNamesCharacters:14},numberCase:{code:21,exclusive:!0,lowerCaseNumbers:0,upperCaseNumbers:1},textSpacing:{code:22,exclusive:!0,proportionalText:0,monospacedText:1,halfWidthText:2,thirdWidthText:3,quarterWidthText:4,altProportionalText:5,altHalfWidthText:6},transliteration:{code:23,exclusive:!0,noTransliteration:0},annotation:{code:24,exclusive:!0,noAnnotation:0,boxAnnotation:1,roundedBoxAnnotation:2,circleAnnotation:3,invertedCircleAnnotation:4,parenthesisAnnotation:5,periodAnnotation:6,romanNumeralAnnotation:7,diamondAnnotation:8,invertedBoxAnnotation:9,invertedRoundedBoxAnnotation:10},kanaSpacing:{code:25,exclusive:!0,fullWidthKana:0,proportionalKana:1},ideographicSpacing:{code:26,exclusive:!0,fullWidthIdeographs:0,proportionalIdeographs:1,halfWidthIdeographs:2},unicodeDecomposition:{code:27,exclusive:!1,canonicalComposition:0,compatibilityComposition:2,transcodingComposition:4},rubyKana:{code:28,exclusive:!1,rubyKana:2},CJKSymbolAlternatives:{code:29,exclusive:!0,noCJKSymbolAlternatives:0,CJKSymbolAltOne:1,CJKSymbolAltTwo:2,CJKSymbolAltThree:3,CJKSymbolAltFour:4,CJKSymbolAltFive:5},ideographicAlternatives:{code:30,exclusive:!0,noIdeographicAlternatives:0,ideographicAltOne:1,ideographicAltTwo:2,ideographicAltThree:3,ideographicAltFour:4,ideographicAltFive:5},CJKVerticalRomanPlacement:{code:31,exclusive:!0,CJKVerticalRomanCentered:0,CJKVerticalRomanHBaseline:1},italicCJKRoman:{code:32,exclusive:!1,CJKItalicRoman:2},caseSensitiveLayout:{code:33,exclusive:!1,caseSensitiveLayout:0,caseSensitiveSpacing:2},alternateKana:{code:34,exclusive:!1,alternateHorizKana:0,alternateVertKana:2},stylisticAlternatives:{code:35,exclusive:!1,noStylisticAlternates:0,stylisticAltOne:2,stylisticAltTwo:4,stylisticAltThree:6,stylisticAltFour:8,stylisticAltFive:10,stylisticAltSix:12,stylisticAltSeven:14,stylisticAltEight:16,stylisticAltNine:18,stylisticAltTen:20,stylisticAltEleven:22,stylisticAltTwelve:24,stylisticAltThirteen:26,stylisticAltFourteen:28,stylisticAltFifteen:30,stylisticAltSixteen:32,stylisticAltSeventeen:34,stylisticAltEighteen:36,stylisticAltNineteen:38,stylisticAltTwenty:40},contextualAlternates:{code:36,exclusive:!1,contextualAlternates:0,swashAlternates:2,contextualSwashAlternates:4},lowerCase:{code:37,exclusive:!0,defaultLowerCase:0,lowerCaseSmallCaps:1,lowerCasePetiteCaps:2},upperCase:{code:38,exclusive:!0,defaultUpperCase:0,upperCaseSmallCaps:1,upperCasePetiteCaps:2},languageTag:{code:39,exclusive:!0},CJKRomanSpacing:{code:103,exclusive:!0,halfWidthCJKRoman:0,proportionalCJKRoman:1,defaultCJKRoman:2,fullWidthCJKRoman:3}},ee=(c,e)=>[o0[c].code,o0[c][e]],pr={rlig:ee("ligatures","requiredLigatures"),clig:ee("ligatures","contextualLigatures"),dlig:ee("ligatures","rareLigatures"),hlig:ee("ligatures","historicalLigatures"),liga:ee("ligatures","commonLigatures"),hist:ee("ligatures","historicalLigatures"),smcp:ee("lowerCase","lowerCaseSmallCaps"),pcap:ee("lowerCase","lowerCasePetiteCaps"),frac:ee("fractions","diagonalFractions"),dnom:ee("fractions","diagonalFractions"),numr:ee("fractions","diagonalFractions"),afrc:ee("fractions","verticalFractions"),case:ee("caseSensitiveLayout","caseSensitiveLayout"),ccmp:ee("unicodeDecomposition","canonicalComposition"),cpct:ee("CJKVerticalRomanPlacement","CJKVerticalRomanCentered"),valt:ee("CJKVerticalRomanPlacement","CJKVerticalRomanCentered"),swsh:ee("contextualAlternates","swashAlternates"),cswh:ee("contextualAlternates","contextualSwashAlternates"),curs:ee("cursiveConnection","cursive"),c2pc:ee("upperCase","upperCasePetiteCaps"),c2sc:ee("upperCase","upperCaseSmallCaps"),init:ee("smartSwash","wordInitialSwashes"),fin2:ee("smartSwash","wordFinalSwashes"),medi:ee("smartSwash","nonFinalSwashes"),med2:ee("smartSwash","nonFinalSwashes"),fin3:ee("smartSwash","wordFinalSwashes"),fina:ee("smartSwash","wordFinalSwashes"),pkna:ee("kanaSpacing","proportionalKana"),half:ee("textSpacing","halfWidthText"),halt:ee("textSpacing","altHalfWidthText"),hkna:ee("alternateKana","alternateHorizKana"),vkna:ee("alternateKana","alternateVertKana"),ital:ee("italicCJKRoman","CJKItalicRoman"),lnum:ee("numberCase","upperCaseNumbers"),onum:ee("numberCase","lowerCaseNumbers"),mgrk:ee("mathematicalExtras","mathematicalGreek"),calt:ee("contextualAlternates","contextualAlternates"),vrt2:ee("verticalSubstitution","substituteVerticalForms"),vert:ee("verticalSubstitution","substituteVerticalForms"),tnum:ee("numberSpacing","monospacedNumbers"),pnum:ee("numberSpacing","proportionalNumbers"),sups:ee("verticalPosition","superiors"),subs:ee("verticalPosition","inferiors"),ordn:ee("verticalPosition","ordinals"),pwid:ee("textSpacing","proportionalText"),hwid:ee("textSpacing","halfWidthText"),qwid:ee("textSpacing","quarterWidthText"),twid:ee("textSpacing","thirdWidthText"),fwid:ee("textSpacing","proportionalText"),palt:ee("textSpacing","altProportionalText"),trad:ee("characterShape","traditionalCharacters"),smpl:ee("characterShape","simplifiedCharacters"),jp78:ee("characterShape","JIS1978Characters"),jp83:ee("characterShape","JIS1983Characters"),jp90:ee("characterShape","JIS1990Characters"),jp04:ee("characterShape","JIS2004Characters"),expt:ee("characterShape","expertCharacters"),hojo:ee("characterShape","hojoCharacters"),nlck:ee("characterShape","NLCCharacters"),tnam:ee("characterShape","traditionalNamesCharacters"),ruby:ee("rubyKana","rubyKana"),titl:ee("styleOptions","titlingCaps"),zero:ee("typographicExtras","slashedZero"),ss01:ee("stylisticAlternatives","stylisticAltOne"),ss02:ee("stylisticAlternatives","stylisticAltTwo"),ss03:ee("stylisticAlternatives","stylisticAltThree"),ss04:ee("stylisticAlternatives","stylisticAltFour"),ss05:ee("stylisticAlternatives","stylisticAltFive"),ss06:ee("stylisticAlternatives","stylisticAltSix"),ss07:ee("stylisticAlternatives","stylisticAltSeven"),ss08:ee("stylisticAlternatives","stylisticAltEight"),ss09:ee("stylisticAlternatives","stylisticAltNine"),ss10:ee("stylisticAlternatives","stylisticAltTen"),ss11:ee("stylisticAlternatives","stylisticAltEleven"),ss12:ee("stylisticAlternatives","stylisticAltTwelve"),ss13:ee("stylisticAlternatives","stylisticAltThirteen"),ss14:ee("stylisticAlternatives","stylisticAltFourteen"),ss15:ee("stylisticAlternatives","stylisticAltFifteen"),ss16:ee("stylisticAlternatives","stylisticAltSixteen"),ss17:ee("stylisticAlternatives","stylisticAltSeventeen"),ss18:ee("stylisticAlternatives","stylisticAltEighteen"),ss19:ee("stylisticAlternatives","stylisticAltNineteen"),ss20:ee("stylisticAlternatives","stylisticAltTwenty")};for(let c=1;c<=99;c++)pr[`cv${`00${c}`.slice(-2)}`]=[o0.characterAlternatives.code,c];let l0={};for(let c in pr){let e=pr[c];l0[e[0]]==null&&(l0[e[0]]={}),l0[e[0]][e[1]]=c}function Ms(c){let e={};for(let r in c){let a;(a=pr[r])&&(e[a[0]]==null&&(e[a[0]]={}),e[a[0]][a[1]]=c[r])}return e}function Oa(c){let[e,r]=c;if(isNaN(e))var a=o0[e]&&o0[e].code;else var a=e;if(isNaN(r))var n=o0[e]&&o0[e][r];else var n=r;return[a,n]}function Us(c){let e={};if(Array.isArray(c))for(let r=0;r<c.length;r++){let a,n=Oa(c[r]);(a=l0[n[0]]&&l0[n[0]][n[1]])&&(e[a]=!0)}else if(typeof c=="object")for(let r in c){let a=c[r];for(let n in a){let s,i=Oa([r,n]);a[n]&&(s=l0[i[0]]&&l0[i[0]][i[1]])&&(e[s]=!0)}}return Object.keys(e)}class M0{lookup(e){switch(this.table.version){case 0:return this.table.values.getItem(e);case 2:case 4:{let n=0,s=this.table.binarySearchHeader.nUnits-1;for(;n<=s;){var r=n+s>>1,a=this.table.segments[r];if(a.firstGlyph===65535)return null;if(e<a.firstGlyph)s=r-1;else if(e>a.lastGlyph)n=r+1;else return this.table.version===2?a.value:a.values[e-a.firstGlyph]}return null}case 6:{let n=0,s=this.table.binarySearchHeader.nUnits-1;for(;n<=s;){var r=n+s>>1,a=this.table.segments[r];if(a.glyph===65535)return null;if(e<a.glyph)s=r-1;else if(e>a.glyph)n=r+1;else return a.value}return null}case 8:return this.table.values[e-this.table.firstGlyph];default:throw new Error(`Unknown lookup table format: ${this.table.version}`)}}glyphsForValue(e){let r=[];switch(this.table.version){case 2:case 4:for(let a of this.table.segments)if(this.table.version===2&&a.value===e)r.push(...C0(a.firstGlyph,a.lastGlyph+1));else for(let n=0;n<a.values.length;n++)a.values[n]===e&&r.push(a.firstGlyph+n);break;case 6:for(let a of this.table.segments)a.value===e&&r.push(a.glyph);break;case 8:for(let a=0;a<this.table.values.length;a++)this.table.values[a]===e&&r.push(this.table.firstGlyph+a);break;default:throw new Error(`Unknown lookup table format: ${this.table.version}`)}return r}constructor(e){this.table=e}}A(Y)([Be],M0.prototype,"glyphsForValue",null);const Vs=0,dc=1,Ta=0,Fa=1,Ba=2,hc=3,Gs=16384;class zs{process(e,r,a){let n=Vs,s=r?e.length-1:0,i=r?-1:1;for(;i===1&&s<=e.length||i===-1&&s>=-1;){let u=null,b=Fa,y=!0;s===e.length||s===-1?b=Ta:(u=e[s],u.id===65535?b=Ba:(b=this.lookupTable.lookup(u.id),b==null&&(b=Fa)));let m=this.stateTable.stateArray.getItem(n)[b],z=this.stateTable.entryTable.getItem(m);b!==Ta&&b!==Ba&&(a(u,z,s),y=!(z.flags&Gs)),n=z.newState,y&&(s+=i)}return e}traverse(e,r=0,a=new Set){if(a.has(r))return;a.add(r);let{nClasses:n,stateArray:s,entryTable:i}=this.stateTable,u=s.getItem(r);for(let b=4;b<n;b++){let y=u[b],C=i.getItem(y);for(let m of this.lookupTable.glyphsForValue(b))e.enter&&e.enter(m,C),C.newState!==0&&this.traverse(e,C.newState,a),e.exit&&e.exit(m,C)}}constructor(e){this.stateTable=e,this.lookupTable=new M0(e.classTable)}}const Hs=32768,Ws=8192,Xs=15,La=32768,qs=32768,js=8192,Ys=2147483648,Ks=1073741824,Zs=1073741823,pc=8388608,Da=4194304,bc=2097152,$c=8192,vc=4096,Js=2048,_s=1024,Qs=992,eo=31;class Ra{process(e,r={}){for(let n of this.morx.chains){let s=n.defaultFlags;for(let i of n.features){let u;(u=r[i.featureType])&&(u[i.featureSetting]?(s&=i.disableFlags,s|=i.enableFlags):u[i.featureSetting]===!1&&(s|=~i.disableFlags,s&=~i.enableFlags))}for(let i of n.subtables)i.subFeatureFlags&s&&this.processSubtable(i,e)}let a=e.length-1;for(;a>=0;)e[a].id===65535&&e.splice(a,1),a--;return e}processSubtable(e,r){if(this.subtable=e,this.glyphs=r,this.subtable.type===4){this.processNoncontextualSubstitutions(this.subtable,this.glyphs);return}this.ligatureStack=[],this.markedGlyph=null,this.firstGlyph=null,this.lastGlyph=null,this.markedIndex=null;let a=this.getStateMachine(e),n=this.getProcessor(),s=!!(this.subtable.coverage&Da);return a.process(this.glyphs,s,n)}getStateMachine(e){return new zs(e.table.stateTable)}getProcessor(){switch(this.subtable.type){case 0:return this.processIndicRearragement;case 1:return this.processContextualSubstitution;case 2:return this.processLigature;case 4:return this.processNoncontextualSubstitutions;case 5:return this.processGlyphInsertion;default:throw new Error(`Invalid morx subtable type: ${this.subtable.type}`)}}processIndicRearragement(e,r,a){r.flags&Hs&&(this.firstGlyph=a),r.flags&Ws&&(this.lastGlyph=a),to(this.glyphs,r.flags&Xs,this.firstGlyph,this.lastGlyph)}processContextualSubstitution(e,r,a){let n=this.subtable.table.substitutionTable.items;if(r.markIndex!==65535){let i=n.getItem(r.markIndex),u=new M0(i);e=this.glyphs[this.markedGlyph];var s=u.lookup(e.id);s&&(this.glyphs[this.markedGlyph]=this.font.getGlyph(s,e.codePoints))}if(r.currentIndex!==65535){let i=n.getItem(r.currentIndex),u=new M0(i);e=this.glyphs[a];var s=u.lookup(e.id);s&&(this.glyphs[a]=this.font.getGlyph(s,e.codePoints))}r.flags&La&&(this.markedGlyph=a)}processLigature(e,r,a){if(r.flags&qs&&this.ligatureStack.push(a),r.flags&js){let n=this.subtable.table.ligatureActions,s=this.subtable.table.components,i=this.subtable.table.ligatureList,u=r.action,b=!1,y=0,C=[],m=[];for(;!b;){let z=this.ligatureStack.pop();C.unshift(...this.glyphs[z].codePoints);let ne=n.getItem(u++);b=!!(ne&Ys);let oe=!!(ne&Ks),Ee=(ne&Zs)<<2>>2;Ee+=this.glyphs[z].id;let it=s.getItem(Ee);if(y+=it,b||oe){let Pe=i.getItem(y);this.glyphs[z]=this.font.getGlyph(Pe,C),m.push(z),y=0,C=[]}else this.glyphs[z]=this.font.getGlyph(65535)}this.ligatureStack.push(...m)}}processNoncontextualSubstitutions(e,r,a){let n=new M0(e.table.lookupTable);for(a=0;a<r.length;a++){let s=r[a];if(s.id!==65535){let i=n.lookup(s.id);i&&(r[a]=this.font.getGlyph(i,s.codePoints))}}}_insertGlyphs(e,r,a,n){let s=[];for(;a--;){let i=this.subtable.table.insertionActions.getItem(r++);s.push(this.font.getGlyph(i))}n||e++,this.glyphs.splice(e,0,...s)}processGlyphInsertion(e,r,a){if(r.flags&La&&(this.markedIndex=a),r.markedInsertIndex!==65535){let n=(r.flags&eo)>>>5,s=!!(r.flags&_s);this._insertGlyphs(this.markedIndex,r.markedInsertIndex,n,s)}if(r.currentInsertIndex!==65535){let n=(r.flags&Qs)>>>5,s=!!(r.flags&Js);this._insertGlyphs(a,r.currentInsertIndex,n,s)}}getSupportedFeatures(){let e=[];for(let r of this.morx.chains)for(let a of r.features)e.push([a.featureType,a.featureSetting]);return e}generateInputs(e){return this.inputCache||this.generateInputCache(),this.inputCache[e]||[]}generateInputCache(){this.inputCache={};for(let e of this.morx.chains){let r=e.defaultFlags;for(let a of e.subtables)a.subFeatureFlags&r&&this.generateInputsForSubtable(a)}}generateInputsForSubtable(e){if(e.type!==2)return;if(!!(e.coverage&Da))throw new Error("Reverse subtable, not supported.");this.subtable=e,this.ligatureStack=[];let a=this.getStateMachine(e),n=this.getProcessor(),s=[],i=[];this.glyphs=[],a.traverse({enter:(u,b)=>{let y=this.glyphs;i.push({glyphs:y.slice(),ligatureStack:this.ligatureStack.slice()});let C=this.font.getGlyph(u);s.push(C),y.push(s[s.length-1]),n(y[y.length-1],b,y.length-1);let m=0,z=0;for(let ne=0;ne<y.length&&m<=1;ne++)y[ne].id!==65535&&(m++,z=y[ne].id);if(m===1){let ne=s.map(Ee=>Ee.id),oe=this.inputCache[z];oe?oe.push(ne):this.inputCache[z]=[ne]}},exit:()=>{({glyphs:this.glyphs,ligatureStack:this.ligatureStack}=i.pop()),s.pop()}})}constructor(e){this.processIndicRearragement=this.processIndicRearragement.bind(this),this.processContextualSubstitution=this.processContextualSubstitution.bind(this),this.processLigature=this.processLigature.bind(this),this.processNoncontextualSubstitutions=this.processNoncontextualSubstitutions.bind(this),this.processGlyphInsertion=this.processGlyphInsertion.bind(this),this.font=e,this.morx=e.morx,this.inputCache=null}}A(Y)([Be],Ra.prototype,"getStateMachine",null);function gt(c,e,r,a=!1,n=!1){let s=c.splice(r[0]-(r[1]-1),r[1]);n&&s.reverse();let i=c.splice(e[0],e[1],...s);return a&&i.reverse(),c.splice(r[0]-(e[1]-1),0,...i),c}function to(c,e,r,a){let n=a-r+1;switch(e){case 0:return c;case 1:return gt(c,[r,1],[a,0]);case 2:return gt(c,[r,0],[a,1]);case 3:return gt(c,[r,1],[a,1]);case 4:return gt(c,[r,2],[a,0]);case 5:return gt(c,[r,2],[a,0],!0,!1);case 6:return gt(c,[r,0],[a,2]);case 7:return gt(c,[r,0],[a,2],!1,!0);case 8:return gt(c,[r,1],[a,2]);case 9:return gt(c,[r,1],[a,2],!1,!0);case 10:return gt(c,[r,2],[a,1]);case 11:return gt(c,[r,2],[a,1],!0,!1);case 12:return gt(c,[r,2],[a,2]);case 13:return gt(c,[r,2],[a,2],!0,!1);case 14:return gt(c,[r,2],[a,2],!1,!0);case 15:return gt(c,[r,2],[a,2],!0,!0);default:throw new Error(`Unknown verb: ${e}`)}}class ro{substitute(e){e.direction==="rtl"&&e.glyphs.reverse(),this.morxProcessor.process(e.glyphs,Ms(e.features))}getAvailableFeatures(e,r){return Us(this.morxProcessor.getSupportedFeatures())}stringsForGlyph(e){let r=this.morxProcessor.generateInputs(e),a=new Set;for(let n of r)this._addStrings(n,0,a,"");return a}_addStrings(e,r,a,n){let s=this.font._cmapProcessor.codePointsForGlyph(e[r]);for(let i of s){let u=n+String.fromCodePoint(i);r<e.length-1?this._addStrings(e,r+1,a,u):a.add(u)}}constructor(e){this.font=e,this.morxProcessor=new Ra(e),this.fallbackPosition=!1}}class ao{_addFeatures(e,r){let a=this.stages.length-1,n=this.stages[a];for(let s of e)this.allFeatures[s]==null&&(n.push(s),this.allFeatures[s]=a,r&&(this.globalFeatures[s]=!0))}add(e,r=!0){if(this.stages.length===0&&this.stages.push([]),typeof e=="string"&&(e=[e]),Array.isArray(e))this._addFeatures(e,r);else if(typeof e=="object")this._addFeatures(e.global||[],!0),this._addFeatures(e.local||[],!1);else throw new Error("Unsupported argument to ShapingPlan#add")}addStage(e,r){typeof e=="function"?this.stages.push(e,[]):(this.stages.push([]),this.add(e,r))}setFeatureOverrides(e){if(Array.isArray(e))this.add(e);else if(typeof e=="object"){for(let r in e)if(e[r])this.add(r);else if(this.allFeatures[r]!=null){let a=this.stages[this.allFeatures[r]];a.splice(a.indexOf(r),1),delete this.allFeatures[r],delete this.globalFeatures[r]}}}assignGlobalFeatures(e){for(let r of e)for(let a in this.globalFeatures)r.features[a]=!0}process(e,r,a){for(let n of this.stages)typeof n=="function"?a||n(this.font,r,this):n.length>0&&e.applyFeatures(n,r,a)}constructor(e,r,a){this.font=e,this.script=r,this.direction=a,this.stages=[],this.globalFeatures={},this.allFeatures={}}}const no=["rvrn"],io=["ccmp","locl","rlig","mark","mkmk"],so=["frac","numr","dnom"],oo=["calt","clig","liga","rclt","curs","kern"],xc=["vert"],lo={ltr:["ltra","ltrm"],rtl:["rtla","rtlm"]};class Zt{static plan(e,r,a){this.planPreprocessing(e),this.planFeatures(e),this.planPostprocessing(e,a),e.assignGlobalFeatures(r),this.assignFeatures(e,r)}static planPreprocessing(e){e.add({global:[...no,...lo[e.direction]],local:so})}static planFeatures(e){}static planPostprocessing(e,r){e.add([...io,...oo]),e.setFeatureOverrides(r)}static assignFeatures(e,r){for(let a=0;a<r.length;a++){let n=r[a];if(n.codePoints[0]===8260){let s=a,i=a+1;for(;s>0&&(0,le.isDigit)(r[s-1].codePoints[0]);)r[s-1].features.numr=!0,r[s-1].features.frac=!0,s--;for(;i<r.length&&(0,le.isDigit)(r[i].codePoints[0]);)r[i].features.dnom=!0,r[i].features.frac=!0,i++;n.features.frac=!0,a=i-1}}}}A(W)(Zt,"zeroMarkWidths","AFTER_GPOS");const co=new(A(ue))(Wr("ABABAAAAAACgMQAAAZUBav7t2CtPA0EUBeDZB00pin9AJZIEgyUEj0QhweDAgQOJxCBRBElQSBwSicLgkOAwnNKZ5GaY2c7uzj4o5yZfZrrbefbuIx2nSq3CGmzAWH/+K+UO7MIe7MMhHMMpnMMFXMIVXIt2t3CnP088iPqjqNN8e4Ij7Rle4LUH82rLm6i/92A+RERERERERERNmfz/89GDeRARERERzbN8ceps2Iwt9H0C9/AJ6yOlDkbTczcot5VSm8Pm1vcFWfb7+BKOLTuOd2UlTX4wGP85Eg953lWPFbnuN7PkjtLmalOWbNenkHOSa7T3KmR9MVTZ2zZkVj1kHa68MueVKH0R4zqQ44WEXLM8VjcWHP0PtKLfPzQnMtGn3W4QYf6qxFxceVI394r2xnV+1rih0fV1Vzf3fO1n3evL5J78ruvZ5ptX2Rwy92Tfb1wlEqut3U+sZ3HXOeJ7/zDrbyuP6+Zz0fqa6Nv3vhY7Yu1xWnGevmsvsUpTT/RYIe8waUH/rvHMWKFzLfN8L+rTfp645mfX7ftlnfDtYxN59w0=")),Na=["isol","fina","fin2","fin3","medi","med2","init"],jr={Non_Joining:0,Left_Joining:1,Right_Joining:2,Dual_Joining:3,Join_Causing:3,ALAPH:4,"DALATH RISH":5,Transparent:6},Je="isol",Jt="fina",Yr="fin2",fo="fin3",br="medi",$r="med2",vr="init",Ue=null,uo=[[[Ue,Ue,0],[Ue,Je,2],[Ue,Je,1],[Ue,Je,2],[Ue,Je,1],[Ue,Je,6]],[[Ue,Ue,0],[Ue,Je,2],[Ue,Je,1],[Ue,Je,2],[Ue,Yr,5],[Ue,Je,6]],[[Ue,Ue,0],[Ue,Je,2],[vr,Jt,1],[vr,Jt,3],[vr,Jt,4],[vr,Jt,6]],[[Ue,Ue,0],[Ue,Je,2],[br,Jt,1],[br,Jt,3],[br,Jt,4],[br,Jt,6]],[[Ue,Ue,0],[Ue,Je,2],[$r,Je,1],[$r,Je,2],[$r,Yr,5],[$r,Je,6]],[[Ue,Ue,0],[Ue,Je,2],[Je,Je,1],[Je,Je,2],[Je,Yr,5],[Je,Je,6]],[[Ue,Ue,0],[Ue,Je,2],[Ue,Je,1],[Ue,Je,2],[Ue,fo,5],[Ue,Je,6]]];class _t extends Zt{static planFeatures(e){e.add(["ccmp","locl"]);for(let r=0;r<Na.length;r++){let a=Na[r];e.addStage(a,!1)}e.addStage("mset")}static assignFeatures(e,r){super.assignFeatures(e,r);let a=-1,n=0,s=[];for(let u=0;u<r.length;u++){let b,y;var i=r[u];let C=ho(i.codePoints[0]);if(C===jr.Transparent){s[u]=Ue;continue}[y,b,n]=uo[n][C],y!==Ue&&a!==-1&&(s[a]=y),s[u]=b,a=u}for(let u=0;u<r.length;u++){let b;var i=r[u];(b=s[u])&&(i.features[b]=!0)}}}function ho(c){let e=co.get(c);if(e)return e-1;let r=(0,le.getCategory)(c);return r==="Mn"||r==="Me"||r==="Cf"?jr.Transparent:jr.Non_Joining}class po{reset(e={},r=0){this.options=e,this.flags=e.flags||{},this.markAttachmentType=e.markAttachmentType||0,this.index=r}get cur(){return this.glyphs[this.index]||null}shouldIgnore(e){return this.flags.ignoreMarks&&e.isMark||this.flags.ignoreBaseGlyphs&&e.isBase||this.flags.ignoreLigatures&&e.isLigature||this.markAttachmentType&&e.isMark&&e.markAttachmentType!==this.markAttachmentType}move(e){for(this.index+=e;0<=this.index&&this.index<this.glyphs.length&&this.shouldIgnore(this.glyphs[this.index]);)this.index+=e;return 0>this.index||this.index>=this.glyphs.length?null:this.glyphs[this.index]}next(){return this.move(1)}prev(){return this.move(-1)}peek(e=1){let r=this.index,a=this.increment(e);return this.index=r,a}peekIndex(e=1){let r=this.index;this.increment(e);let a=this.index;return this.index=r,a}increment(e=1){let r=e<0?-1:1;for(e=Math.abs(e);e--;)this.move(r);return this.glyphs[this.index]}constructor(e,r){this.glyphs=e,this.reset(r)}}const bo=["DFLT","dflt","latn"];class xr{findScript(e){if(this.table.scriptList==null)return null;Array.isArray(e)||(e=[e]);for(let r of e)for(let a of this.table.scriptList)if(a.tag===r)return a;return null}selectScript(e,r,a){let n=!1,s;if(!this.script||e!==this.scriptTag){if(s=this.findScript(e),s||(s=this.findScript(bo)),!s)return this.scriptTag;this.scriptTag=s.tag,this.script=s.script,this.language=null,this.languageTag=null,n=!0}if((!a||a!==this.direction)&&(this.direction=a||ka(e)),r&&r.length<4&&(r+=" ".repeat(4-r.length)),!r||r!==this.languageTag){this.language=null;for(let i of this.script.langSysRecords)if(i.tag===r){this.language=i.langSys,this.languageTag=i.tag;break}this.language||(this.language=this.script.defaultLangSys,this.languageTag=null),n=!0}if(n&&(this.features={},this.language))for(let i of this.language.featureIndexes){let u=this.table.featureList[i],b=this.substituteFeatureForVariations(i);this.features[u.tag]=b||u.feature}return this.scriptTag}lookupsForFeatures(e=[],r){let a=[];for(let n of e){let s=this.features[n];if(s)for(let i of s.lookupListIndexes)r&&r.indexOf(i)!==-1||a.push({feature:n,index:i,lookup:this.table.lookupList.get(i)})}return a.sort((n,s)=>n.index-s.index),a}substituteFeatureForVariations(e){if(this.variationsIndex===-1)return null;let a=this.table.featureVariations.featureVariationRecords[this.variationsIndex].featureTableSubstitution.substitutions;for(let n of a)if(n.featureIndex===e)return n.alternateFeatureTable;return null}findVariationsIndex(e){let r=this.table.featureVariations;if(!r)return-1;let a=r.featureVariationRecords;for(let n=0;n<a.length;n++){let s=a[n].conditionSet.conditionTable;if(this.variationConditionsMatch(s,e))return n}return-1}variationConditionsMatch(e,r){return e.every(a=>{let n=a.axisIndex<r.length?r[a.axisIndex]:0;return a.filterRangeMinValue<=n&&n<=a.filterRangeMaxValue})}applyFeatures(e,r,a){let n=this.lookupsForFeatures(e);this.applyLookups(n,r,a)}applyLookups(e,r,a){this.glyphs=r,this.positions=a,this.glyphIterator=new po(r);for(let{feature:n,lookup:s}of e)for(this.currentFeature=n,this.glyphIterator.reset(s.flags);this.glyphIterator.index<r.length;){if(!(n in this.glyphIterator.cur.features)){this.glyphIterator.next();continue}for(let i of s.subTables)if(this.applyLookup(s.lookupType,i))break;this.glyphIterator.next()}}applyLookup(e,r){throw new Error("applyLookup must be implemented by subclasses")}applyLookupList(e){let r=this.glyphIterator.options,a=this.glyphIterator.index;for(let n of e){this.glyphIterator.reset(r,a),this.glyphIterator.increment(n.sequenceIndex);let s=this.table.lookupList.get(n.lookupListIndex);this.glyphIterator.reset(s.flags,this.glyphIterator.index);for(let i of s.subTables)if(this.applyLookup(s.lookupType,i))break}return this.glyphIterator.reset(r,a),!0}coverageIndex(e,r){switch(r==null&&(r=this.glyphIterator.cur.id),e.version){case 1:return e.glyphs.indexOf(r);case 2:for(let a of e.rangeRecords)if(a.start<=r&&r<=a.end)return a.startCoverageIndex+r-a.start;break}return-1}match(e,r,a,n){let s=this.glyphIterator.index,i=this.glyphIterator.increment(e),u=0;for(;u<r.length&&i&&a(r[u],i);)n&&n.push(this.glyphIterator.index),u++,i=this.glyphIterator.next();return this.glyphIterator.index=s,u<r.length?!1:n||!0}sequenceMatches(e,r){return this.match(e,r,(a,n)=>a===n.id)}sequenceMatchIndices(e,r){return this.match(e,r,(a,n)=>this.currentFeature in n.features?a===n.id:!1,[])}coverageSequenceMatches(e,r){return this.match(e,r,(a,n)=>this.coverageIndex(a,n.id)>=0)}getClassID(e,r){switch(r.version){case 1:let a=e-r.startGlyph;if(a>=0&&a<r.classValueArray.length)return r.classValueArray[a];break;case 2:for(let n of r.classRangeRecord)if(n.start<=e&&e<=n.end)return n.class;break}return 0}classSequenceMatches(e,r,a){return this.match(e,r,(n,s)=>n===this.getClassID(s.id,a))}applyContext(e){let r,a;switch(e.version){case 1:if(r=this.coverageIndex(e.coverage),r===-1)return!1;a=e.ruleSets[r];for(let n of a)if(this.sequenceMatches(1,n.input))return this.applyLookupList(n.lookupRecords);break;case 2:if(this.coverageIndex(e.coverage)===-1||(r=this.getClassID(this.glyphIterator.cur.id,e.classDef),r===-1))return!1;a=e.classSet[r];for(let n of a)if(this.classSequenceMatches(1,n.classes,e.classDef))return this.applyLookupList(n.lookupRecords);break;case 3:if(this.coverageSequenceMatches(0,e.coverages))return this.applyLookupList(e.lookupRecords);break}return!1}applyChainingContext(e){let r;switch(e.version){case 1:if(r=this.coverageIndex(e.coverage),r===-1)return!1;let a=e.chainRuleSets[r];for(let s of a)if(this.sequenceMatches(-s.backtrack.length,s.backtrack)&&this.sequenceMatches(1,s.input)&&this.sequenceMatches(1+s.input.length,s.lookahead))return this.applyLookupList(s.lookupRecords);break;case 2:if(this.coverageIndex(e.coverage)===-1)return!1;r=this.getClassID(this.glyphIterator.cur.id,e.inputClassDef);let n=e.chainClassSet[r];if(!n)return!1;for(let s of n)if(this.classSequenceMatches(-s.backtrack.length,s.backtrack,e.backtrackClassDef)&&this.classSequenceMatches(1,s.input,e.inputClassDef)&&this.classSequenceMatches(1+s.input.length,s.lookahead,e.lookaheadClassDef))return this.applyLookupList(s.lookupRecords);break;case 3:if(this.coverageSequenceMatches(-e.backtrackGlyphCount,e.backtrackCoverage)&&this.coverageSequenceMatches(0,e.inputCoverage)&&this.coverageSequenceMatches(e.inputGlyphCount,e.lookaheadCoverage))return this.applyLookupList(e.lookupRecords);break}return!1}constructor(e,r){this.font=e,this.table=r,this.script=null,this.scriptTag=null,this.language=null,this.languageTag=null,this.features={},this.lookups={},this.variationsIndex=e._variationProcessor?this.findVariationsIndex(e._variationProcessor.normalizedCoords):-1,this.selectScript(),this.glyphs=[],this.positions=[],this.ligatureID=1,this.currentFeature=null}}class It{get id(){return this._id}set id(e){this._id=e,this.substituted=!0;let r=this._font.GDEF;if(r&&r.glyphClassDef){let a=xr.prototype.getClassID(e,r.glyphClassDef);this.isBase=a===1,this.isLigature=a===2,this.isMark=a===3,this.markAttachmentType=r.markAttachClassDef?xr.prototype.getClassID(e,r.markAttachClassDef):0}else this.isMark=this.codePoints.length>0&&this.codePoints.every(le.isMark),this.isBase=!this.isMark,this.isLigature=this.codePoints.length>1,this.markAttachmentType=0}copy(){return new It(this._font,this.id,this.codePoints,this.features)}constructor(e,r,a=[],n){if(this._font=e,this.codePoints=a,this.id=r,this.features={},Array.isArray(n))for(let s=0;s<n.length;s++){let i=n[s];this.features[i]=!0}else typeof n=="object"&&Object.assign(this.features,n);this.ligatureID=null,this.ligatureComponent=null,this.isLigated=!1,this.cursiveAttachment=null,this.markAttachment=null,this.shaperInfo=null,this.substituted=!1,this.isMultiplied=!1}}class Ma extends Zt{static planFeatures(e){e.add(["ljmo","vjmo","tjmo"],!1)}static assignFeatures(e,r){let a=0,n=0;for(;n<r.length;){let s,u=r[n].codePoints[0],b=Sr(u);switch([s,a]=Bo[a][b],s){case Mt:e.font.hasGlyphForCodePoint(u)||(n=za(r,n,e.font));break;case Zr:n=Lo(r,n,e.font);break;case Jr:Ro(r,n,e.font);break;case _r:n=No(r,n,e.font);break}n++}}}A(W)(Ma,"zeroMarkWidths","NONE");const S0=44032,Ua=55204,$o=Ua-S0+1,gr=4352,yr=4449,Qt=4519,vo=19,wr=21,U0=28,xo=gr+vo-1,go=yr+wr-1,yo=Qt+U0-1,Va=9676,wo=c=>4352<=c&&c<=4447||43360<=c&&c<=43388,mo=c=>4448<=c&&c<=4519||55216<=c&&c<=55238,Co=c=>4520<=c&&c<=4607||55243<=c&&c<=55291,So=c=>12334<=c&&c<=12335,Ao=c=>S0<=c&&c<=Ua,Po=c=>c-S0<$o&&(c-S0)%U0===0,Io=c=>gr<=c&&c<=xo,Eo=c=>yr<=c&&c<=go,ko=c=>Qt+1&&1<=c&&c<=yo,Oo=0,To=1,mr=2,Kr=3,Cr=4,Ga=5,Fo=6;function Sr(c){return wo(c)?To:mo(c)?mr:Co(c)?Kr:Po(c)?Cr:Ao(c)?Ga:So(c)?Fo:Oo}const wt=0,Mt=1,Zr=2,Jr=4,_r=5,Bo=[[[wt,0],[wt,1],[wt,0],[wt,0],[Mt,2],[Mt,3],[_r,0]],[[wt,0],[wt,1],[Zr,2],[wt,0],[Mt,2],[Mt,3],[_r,0]],[[wt,0],[wt,1],[wt,0],[Zr,3],[Mt,2],[Mt,3],[Jr,0]],[[wt,0],[wt,1],[wt,0],[wt,0],[Mt,2],[Mt,3],[Jr,0]]];function V0(c,e,r){return new It(c,c.glyphForCodePoint(e).id,[e],r)}function za(c,e,r){let a=c[e],s=a.codePoints[0]-S0,i=Qt+s%U0;s=s/U0|0;let u=gr+s/wr|0,b=yr+s%wr;if(!r.hasGlyphForCodePoint(u)||!r.hasGlyphForCodePoint(b)||i!==Qt&&!r.hasGlyphForCodePoint(i))return e;let y=V0(r,u,a.features);y.features.ljmo=!0;let C=V0(r,b,a.features);C.features.vjmo=!0;let m=[y,C];if(i>Qt){let z=V0(r,i,a.features);z.features.tjmo=!0,m.push(z)}return c.splice(e,1,...m),e+m.length-1}function Lo(c,e,r){let a=c[e],n=c[e].codePoints[0],s=Sr(n),i=c[e-1].codePoints[0],u=Sr(i),b,y,C,m;if(u===Cr&&s===Kr)b=i,m=a;else{s===mr?(y=c[e-1],C=a):(y=c[e-2],C=c[e-1],m=a);let ne=y.codePoints[0],oe=C.codePoints[0];Io(ne)&&Eo(oe)&&(b=S0+((ne-gr)*wr+(oe-yr))*U0)}let z=m&&m.codePoints[0]||Qt;if(b!=null&&(z===Qt||ko(z))){let ne=b+(z-Qt);if(r.hasGlyphForCodePoint(ne)){let oe=u===mr?3:2;return c.splice(e-oe+1,oe,V0(r,ne,a.features)),e-oe+1}}return y&&(y.features.ljmo=!0),C&&(C.features.vjmo=!0),m&&(m.features.tjmo=!0),u===Cr?(za(c,e-1,r),e+1):e}function Do(c){switch(Sr(c)){case Cr:case Ga:return 1;case mr:return 2;case Kr:return 3}}function Ro(c,e,r){let a=c[e],n=c[e].codePoints[0];if(r.glyphForCodePoint(n).advanceWidth===0)return;let s=c[e-1].codePoints[0],i=Do(s);return c.splice(e,1),c.splice(e-i,0,a)}function No(c,e,r){let a=c[e],n=c[e].codePoints[0];if(r.hasGlyphForCodePoint(Va)){let s=V0(r,Va,a.features),i=r.glyphForCodePoint(n).advanceWidth===0?e:e+1;c.splice(i,0,s),e++}return e}var Ha={};Ha=JSON.parse('{"stateTable":[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,2,3,4,5,6,7,8,9,0,10,11,11,12,13,14,15,16,17],[0,0,0,18,19,20,21,22,23,0,24,0,0,25,26,0,0,27,0],[0,0,0,28,29,30,31,32,33,0,34,0,0,35,36,0,0,37,0],[0,0,0,38,5,7,7,8,9,0,10,0,0,0,13,0,0,16,0],[0,39,0,0,0,40,41,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,43,44,44,8,9,0,0,0,0,12,43,0,0,0,0],[0,0,0,0,43,44,44,8,9,0,0,0,0,0,43,0,0,0,0],[0,0,0,45,46,47,48,49,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,50,0,0,51,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0],[0,0,0,53,54,55,56,57,58,0,59,0,0,60,61,0,0,62,0],[0,0,0,4,5,7,7,8,9,0,10,0,0,0,13,0,0,16,0],[0,63,64,0,0,40,41,0,9,0,10,0,0,0,42,0,63,0,0],[0,2,3,4,5,6,7,8,9,0,10,11,11,12,13,0,2,16,0],[0,0,0,18,65,20,21,22,23,0,24,0,0,25,26,0,0,27,0],[0,0,0,0,66,67,67,8,9,0,10,0,0,0,68,0,0,0,0],[0,0,0,69,0,70,70,0,71,0,72,0,0,0,0,0,0,0,0],[0,0,0,73,19,74,74,22,23,0,24,0,0,0,26,0,0,27,0],[0,75,0,0,0,76,77,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,79,80,80,22,23,0,0,0,0,25,79,0,0,0,0],[0,0,0,18,19,20,74,22,23,0,24,0,0,25,26,0,0,27,0],[0,0,0,81,82,83,84,85,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,86,0,0,87,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,88,0,0,0,0,0,0,0,0],[0,0,0,18,19,74,74,22,23,0,24,0,0,0,26,0,0,27,0],[0,89,90,0,0,76,77,0,23,0,24,0,0,0,78,0,89,0,0],[0,0,0,0,91,92,92,22,23,0,24,0,0,0,93,0,0,0,0],[0,0,0,94,29,95,31,32,33,0,34,0,0,0,36,0,0,37,0],[0,96,0,0,0,97,98,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,100,101,101,32,33,0,0,0,0,35,100,0,0,0,0],[0,0,0,0,100,101,101,32,33,0,0,0,0,0,100,0,0,0,0],[0,0,0,102,103,104,105,106,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,107,0,0,108,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,109,0,0,0,0,0,0,0,0],[0,0,0,28,29,95,31,32,33,0,34,0,0,0,36,0,0,37,0],[0,110,111,0,0,97,98,0,33,0,34,0,0,0,99,0,110,0,0],[0,0,0,0,112,113,113,32,33,0,34,0,0,0,114,0,0,0,0],[0,0,0,0,5,7,7,8,9,0,10,0,0,0,13,0,0,16,0],[0,0,0,115,116,117,118,8,9,0,10,0,0,119,120,0,0,16,0],[0,0,0,0,0,121,121,0,9,0,10,0,0,0,42,0,0,0,0],[0,39,0,122,0,123,123,8,9,0,10,0,0,0,42,0,39,0,0],[0,124,64,0,0,0,0,0,0,0,0,0,0,0,0,0,124,0,0],[0,39,0,0,0,121,125,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,0,126,126,8,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,46,47,48,49,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,47,47,49,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,127,127,49,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,128,127,127,49,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,129,130,131,132,133,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,50,0,0,0,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,134,0,0,0,0,0,0,0,0],[0,0,0,135,54,56,56,57,58,0,59,0,0,0,61,0,0,62,0],[0,136,0,0,0,137,138,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,140,141,141,57,58,0,0,0,0,60,140,0,0,0,0],[0,0,0,0,140,141,141,57,58,0,0,0,0,0,140,0,0,0,0],[0,0,0,142,143,144,145,146,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,147,0,0,148,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,149,0,0,0,0,0,0,0,0],[0,0,0,53,54,56,56,57,58,0,59,0,0,0,61,0,0,62,0],[0,150,151,0,0,137,138,0,58,0,59,0,0,0,139,0,150,0,0],[0,0,0,0,152,153,153,57,58,0,59,0,0,0,154,0,0,0,0],[0,0,0,155,116,156,157,8,9,0,10,0,0,158,120,0,0,16,0],[0,0,0,0,0,121,121,0,9,0,10,0,0,0,0,0,0,0,0],[0,75,3,4,5,159,160,8,161,0,162,0,11,12,163,0,75,16,0],[0,0,0,0,0,40,164,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,165,44,44,8,9,0,0,0,0,0,165,0,0,0,0],[0,124,64,0,0,40,164,0,9,0,10,0,0,0,42,0,124,0,0],[0,0,0,0,0,70,70,0,71,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,71,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,166,0,0,167,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,168,0,0,0,0,0,0,0,0],[0,0,0,0,19,74,74,22,23,0,24,0,0,0,26,0,0,27,0],[0,0,0,0,79,80,80,22,23,0,0,0,0,0,79,0,0,0,0],[0,0,0,169,170,171,172,22,23,0,24,0,0,173,174,0,0,27,0],[0,0,0,0,0,175,175,0,23,0,24,0,0,0,78,0,0,0,0],[0,75,0,176,0,177,177,22,23,0,24,0,0,0,78,0,75,0,0],[0,178,90,0,0,0,0,0,0,0,0,0,0,0,0,0,178,0,0],[0,75,0,0,0,175,179,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,0,180,180,22,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,82,83,84,85,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,83,83,85,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,181,181,85,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,182,181,181,85,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,183,184,185,186,187,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,86,0,0,0,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,188,0,0,0,0,0,0,0,0],[0,0,0,189,170,190,191,22,23,0,24,0,0,192,174,0,0,27,0],[0,0,0,0,0,175,175,0,23,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,76,193,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,194,80,80,22,23,0,0,0,0,0,194,0,0,0,0],[0,178,90,0,0,76,193,0,23,0,24,0,0,0,78,0,178,0,0],[0,0,0,0,29,95,31,32,33,0,34,0,0,0,36,0,0,37,0],[0,0,0,0,100,101,101,32,33,0,0,0,0,0,100,0,0,0,0],[0,0,0,195,196,197,198,32,33,0,34,0,0,199,200,0,0,37,0],[0,0,0,0,0,201,201,0,33,0,34,0,0,0,99,0,0,0,0],[0,96,0,202,0,203,203,32,33,0,34,0,0,0,99,0,96,0,0],[0,204,111,0,0,0,0,0,0,0,0,0,0,0,0,0,204,0,0],[0,96,0,0,0,201,205,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,0,206,206,32,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,103,104,105,106,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,104,104,106,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,207,207,106,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,208,207,207,106,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,209,210,211,212,213,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,107,0,0,0,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,214,0,0,0,0,0,0,0,0],[0,0,0,215,196,216,217,32,33,0,34,0,0,218,200,0,0,37,0],[0,0,0,0,0,201,201,0,33,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,97,219,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,220,101,101,32,33,0,0,0,0,0,220,0,0,0,0],[0,204,111,0,0,97,219,0,33,0,34,0,0,0,99,0,204,0,0],[0,0,0,221,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,223,0,0,0,40,224,0,9,0,10,0,0,0,42,0,223,0,0],[0,0,0,0,225,44,44,8,9,0,0,0,0,119,225,0,0,0,0],[0,0,0,115,116,117,222,8,9,0,10,0,0,119,120,0,0,16,0],[0,0,0,115,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,226,64,0,0,40,224,0,9,0,10,0,0,0,42,0,226,0,0],[0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0],[0,39,0,0,0,121,121,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,0,44,44,8,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,227,0,228,229,0,9,0,10,0,0,230,0,0,0,0,0],[0,39,0,122,0,121,121,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,231,231,49,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,232,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,130,131,132,133,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,131,131,133,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,233,233,133,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,234,233,233,133,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,235,236,237,238,239,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,54,56,56,57,58,0,59,0,0,0,61,0,0,62,0],[0,0,0,240,241,242,243,57,58,0,59,0,0,244,245,0,0,62,0],[0,0,0,0,0,246,246,0,58,0,59,0,0,0,139,0,0,0,0],[0,136,0,247,0,248,248,57,58,0,59,0,0,0,139,0,136,0,0],[0,249,151,0,0,0,0,0,0,0,0,0,0,0,0,0,249,0,0],[0,136,0,0,0,246,250,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,0,251,251,57,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,143,144,145,146,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,144,144,146,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,252,252,146,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,253,252,252,146,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,254,255,256,257,258,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,147,0,0,0,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,259,0,0,0,0,0,0,0,0],[0,0,0,260,241,261,262,57,58,0,59,0,0,263,245,0,0,62,0],[0,0,0,0,0,246,246,0,58,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,137,264,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,265,141,141,57,58,0,0,0,0,0,265,0,0,0,0],[0,249,151,0,0,137,264,0,58,0,59,0,0,0,139,0,249,0,0],[0,0,0,221,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,9,0,0,0,0,158,225,0,0,0,0],[0,0,0,155,116,156,222,8,9,0,10,0,0,158,120,0,0,16,0],[0,0,0,155,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,0,0,0,43,266,266,8,161,0,24,0,0,12,267,0,0,0,0],[0,75,0,176,43,268,268,269,161,0,24,0,0,0,267,0,75,0,0],[0,0,0,0,0,270,0,0,271,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,272,0,0,0,0,0,0,0,0],[0,273,274,0,0,40,41,0,9,0,10,0,0,0,42,0,273,0,0],[0,0,0,40,0,123,123,8,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,121,275,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,166,0,0,0,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,276,0,0,0,0,0,0,0,0],[0,0,0,277,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,279,0,0,0,76,280,0,23,0,24,0,0,0,78,0,279,0,0],[0,0,0,0,281,80,80,22,23,0,0,0,0,173,281,0,0,0,0],[0,0,0,169,170,171,278,22,23,0,24,0,0,173,174,0,0,27,0],[0,0,0,169,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,282,90,0,0,76,280,0,23,0,24,0,0,0,78,0,282,0,0],[0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0],[0,75,0,0,0,175,175,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,0,80,80,22,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,283,0,284,285,0,23,0,24,0,0,286,0,0,0,0,0],[0,75,0,176,0,175,175,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,287,287,85,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,288,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,184,185,186,187,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,185,185,187,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,289,289,187,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,290,289,289,187,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,291,292,293,294,295,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,277,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,0,0,0,281,80,80,22,23,0,0,0,0,192,281,0,0,0,0],[0,0,0,189,170,190,278,22,23,0,24,0,0,192,174,0,0,27,0],[0,0,0,189,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,0,0,76,0,177,177,22,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,175,296,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,297,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,299,0,0,0,97,300,0,33,0,34,0,0,0,99,0,299,0,0],[0,0,0,0,301,101,101,32,33,0,0,0,0,199,301,0,0,0,0],[0,0,0,195,196,197,298,32,33,0,34,0,0,199,200,0,0,37,0],[0,0,0,195,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,302,111,0,0,97,300,0,33,0,34,0,0,0,99,0,302,0,0],[0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0],[0,96,0,0,0,201,201,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,0,101,101,32,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,303,0,304,305,0,33,0,34,0,0,306,0,0,0,0,0],[0,96,0,202,0,201,201,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,307,307,106,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,308,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,210,211,212,213,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,211,211,213,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,309,309,213,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,310,309,309,213,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,311,312,313,314,315,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,297,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,0,0,0,301,101,101,32,33,0,0,0,0,218,301,0,0,0,0],[0,0,0,215,196,216,298,32,33,0,34,0,0,218,200,0,0,37,0],[0,0,0,215,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,0,0,97,0,203,203,32,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,201,316,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,9,0,0,0,0,0,225,0,0,0,0],[0,0,0,317,318,319,320,8,9,0,10,0,0,321,322,0,0,16,0],[0,223,0,323,0,123,123,8,9,0,10,0,0,0,42,0,223,0,0],[0,223,0,0,0,121,324,0,9,0,10,0,0,0,42,0,223,0,0],[0,0,0,325,318,326,327,8,9,0,10,0,0,328,322,0,0,16,0],[0,0,0,64,0,121,121,0,9,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,9,0,0,0,0,230,0,0,0,0,0],[0,0,0,227,0,228,121,0,9,0,10,0,0,230,0,0,0,0,0],[0,0,0,227,0,121,121,0,9,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,46,0,0],[0,0,0,0,0,329,329,133,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,330,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,236,237,238,239,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,237,237,239,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,331,331,239,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,332,331,331,239,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,333,40,121,334,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,335,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,337,0,0,0,137,338,0,58,0,59,0,0,0,139,0,337,0,0],[0,0,0,0,339,141,141,57,58,0,0,0,0,244,339,0,0,0,0],[0,0,0,240,241,242,336,57,58,0,59,0,0,244,245,0,0,62,0],[0,0,0,240,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,340,151,0,0,137,338,0,58,0,59,0,0,0,139,0,340,0,0],[0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0],[0,136,0,0,0,246,246,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,0,141,141,57,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,341,0,342,343,0,58,0,59,0,0,344,0,0,0,0,0],[0,136,0,247,0,246,246,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,0,0,0,57,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,345,345,146,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,346,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,255,256,257,258,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,256,256,258,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,347,347,258,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,348,347,347,258,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,349,350,351,352,353,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,335,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,0,0,0,339,141,141,57,58,0,0,0,0,263,339,0,0,0,0],[0,0,0,260,241,261,336,57,58,0,59,0,0,263,245,0,0,62,0],[0,0,0,260,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,0,0,137,0,248,248,57,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,246,354,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,126,126,8,23,0,0,0,0,0,0,0,0,0,0],[0,355,90,0,0,121,125,0,9,0,10,0,0,0,42,0,355,0,0],[0,0,0,0,0,356,356,269,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,357,358,359,360,361,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,270,0,0,0,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,363,0,0,0,0,0,0,0,0],[0,0,0,364,116,365,366,8,161,0,162,0,0,367,120,0,0,16,0],[0,0,0,0,0,368,368,0,161,0,162,0,0,0,0,0,0,0,0],[0,0,0,40,0,121,121,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,0,0,0,281,80,80,22,23,0,0,0,0,0,281,0,0,0,0],[0,0,0,369,370,371,372,22,23,0,24,0,0,373,374,0,0,27,0],[0,279,0,375,0,177,177,22,23,0,24,0,0,0,78,0,279,0,0],[0,279,0,0,0,175,376,0,23,0,24,0,0,0,78,0,279,0,0],[0,0,0,377,370,378,379,22,23,0,24,0,0,380,374,0,0,27,0],[0,0,0,90,0,175,175,0,23,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,23,0,0,0,0,286,0,0,0,0,0],[0,0,0,283,0,284,175,0,23,0,24,0,0,286,0,0,0,0,0],[0,0,0,283,0,175,175,0,23,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,0,0],[0,0,0,0,0,381,381,187,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,382,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,292,293,294,295,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,293,293,295,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,383,383,295,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,384,383,383,295,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,385,76,175,386,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,76,0,175,175,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,0,0,0,301,101,101,32,33,0,0,0,0,0,301,0,0,0,0],[0,0,0,387,388,389,390,32,33,0,34,0,0,391,392,0,0,37,0],[0,299,0,393,0,203,203,32,33,0,34,0,0,0,99,0,299,0,0],[0,299,0,0,0,201,394,0,33,0,34,0,0,0,99,0,299,0,0],[0,0,0,395,388,396,397,32,33,0,34,0,0,398,392,0,0,37,0],[0,0,0,111,0,201,201,0,33,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,33,0,0,0,0,306,0,0,0,0,0],[0,0,0,303,0,304,201,0,33,0,34,0,0,306,0,0,0,0,0],[0,0,0,303,0,201,201,0,33,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,106,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0],[0,0,0,0,0,399,399,213,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,400,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,312,313,314,315,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,313,313,315,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,401,401,315,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,402,401,401,315,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,403,97,201,404,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,97,0,201,201,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,405,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,407,0,0,0,40,408,0,9,0,10,0,0,0,42,0,407,0,0],[0,0,0,0,409,44,44,8,9,0,0,0,0,321,409,0,0,0,0],[0,0,0,317,318,319,406,8,9,0,10,0,0,321,322,0,0,16,0],[0,0,0,317,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,410,64,0,0,40,408,0,9,0,10,0,0,0,42,0,410,0,0],[0,223,0,0,0,121,121,0,9,0,10,0,0,0,42,0,223,0,0],[0,223,0,323,0,121,121,0,9,0,10,0,0,0,42,0,223,0,0],[0,0,0,405,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,0,0,0,409,44,44,8,9,0,0,0,0,328,409,0,0,0,0],[0,0,0,325,318,326,406,8,9,0,10,0,0,328,322,0,0,16,0],[0,0,0,325,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,0,0,0,0,0,0,133,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130,0,0],[0,0,0,0,0,411,411,239,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,412,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,40,121,334,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,413,0,0,0,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,0,0,0,339,141,141,57,58,0,0,0,0,0,339,0,0,0,0],[0,0,0,414,415,416,417,57,58,0,59,0,0,418,419,0,0,62,0],[0,337,0,420,0,248,248,57,58,0,59,0,0,0,139,0,337,0,0],[0,337,0,0,0,246,421,0,58,0,59,0,0,0,139,0,337,0,0],[0,0,0,422,415,423,424,57,58,0,59,0,0,425,419,0,0,62,0],[0,0,0,151,0,246,246,0,58,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,58,0,0,0,0,344,0,0,0,0,0],[0,0,0,341,0,342,246,0,58,0,59,0,0,344,0,0,0,0,0],[0,0,0,341,0,246,246,0,58,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,146,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,143,0,0],[0,0,0,0,0,426,426,258,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,427,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,350,351,352,353,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,351,351,353,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,428,428,353,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,429,428,428,353,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,430,137,246,431,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,137,0,246,246,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,432,116,433,434,8,161,0,162,0,0,435,120,0,0,16,0],[0,0,0,0,0,180,180,269,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,358,359,360,361,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,359,359,361,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,436,436,361,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,437,436,436,361,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,438,439,440,441,442,161,0,162,0,0,0,362,0,0,0,0],[0,443,274,0,0,0,0,0,0,0,0,0,0,0,0,0,443,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,444,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,161,0,0,0,0,367,225,0,0,0,0],[0,0,0,364,116,365,445,8,161,0,162,0,0,367,120,0,0,16,0],[0,0,0,364,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,0,0,0,0,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,446,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,448,0,0,0,76,449,0,23,0,24,0,0,0,78,0,448,0,0],[0,0,0,0,450,80,80,22,23,0,0,0,0,373,450,0,0,0,0],[0,0,0,369,370,371,447,22,23,0,24,0,0,373,374,0,0,27,0],[0,0,0,369,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,451,90,0,0,76,449,0,23,0,24,0,0,0,78,0,451,0,0],[0,279,0,0,0,175,175,0,23,0,24,0,0,0,78,0,279,0,0],[0,279,0,375,0,175,175,0,23,0,24,0,0,0,78,0,279,0,0],[0,0,0,446,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,0,0,0,450,80,80,22,23,0,0,0,0,380,450,0,0,0,0],[0,0,0,377,370,378,447,22,23,0,24,0,0,380,374,0,0,27,0],[0,0,0,377,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,0,0,0,0,0,0,187,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,0,0],[0,0,0,0,0,452,452,295,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,453,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,76,175,386,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,454,0,0,0,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,455,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,457,0,0,0,97,458,0,33,0,34,0,0,0,99,0,457,0,0],[0,0,0,0,459,101,101,32,33,0,0,0,0,391,459,0,0,0,0],[0,0,0,387,388,389,456,32,33,0,34,0,0,391,392,0,0,37,0],[0,0,0,387,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,460,111,0,0,97,458,0,33,0,34,0,0,0,99,0,460,0,0],[0,299,0,0,0,201,201,0,33,0,34,0,0,0,99,0,299,0,0],[0,299,0,393,0,201,201,0,33,0,34,0,0,0,99,0,299,0,0],[0,0,0,455,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,0,0,0,459,101,101,32,33,0,0,0,0,398,459,0,0,0,0],[0,0,0,395,388,396,456,32,33,0,34,0,0,398,392,0,0,37,0],[0,0,0,395,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,0,0,0,0,0,0,213,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,0,0],[0,0,0,0,0,461,461,315,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,462,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,97,201,404,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,463,0,0,0,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,0,0,0,409,44,44,8,9,0,0,0,0,0,409,0,0,0,0],[0,0,0,464,465,466,467,8,9,0,10,0,0,468,469,0,0,16,0],[0,407,0,470,0,123,123,8,9,0,10,0,0,0,42,0,407,0,0],[0,407,0,0,0,121,471,0,9,0,10,0,0,0,42,0,407,0,0],[0,0,0,472,465,473,474,8,9,0,10,0,0,475,469,0,0,16,0],[0,0,0,0,0,0,0,239,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,0,0],[0,0,0,0,0,0,476,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,477,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,479,0,0,0,137,480,0,58,0,59,0,0,0,139,0,479,0,0],[0,0,0,0,481,141,141,57,58,0,0,0,0,418,481,0,0,0,0],[0,0,0,414,415,416,478,57,58,0,59,0,0,418,419,0,0,62,0],[0,0,0,414,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,482,151,0,0,137,480,0,58,0,59,0,0,0,139,0,482,0,0],[0,337,0,0,0,246,246,0,58,0,59,0,0,0,139,0,337,0,0],[0,337,0,420,0,246,246,0,58,0,59,0,0,0,139,0,337,0,0],[0,0,0,477,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,0,0,0,481,141,141,57,58,0,0,0,0,425,481,0,0,0,0],[0,0,0,422,415,423,478,57,58,0,59,0,0,425,419,0,0,62,0],[0,0,0,422,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,0,0,0,0,0,0,258,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0],[0,0,0,0,0,483,483,353,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,484,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,137,246,431,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,485,0,0,0,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,444,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,161,0,0,0,0,435,225,0,0,0,0],[0,0,0,432,116,433,445,8,161,0,162,0,0,435,120,0,0,16,0],[0,0,0,432,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,0,486,486,361,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,487,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,439,440,441,442,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,440,440,442,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,488,488,442,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,489,488,488,442,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,490,491,492,493,494,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,495,0,496,497,0,161,0,162,0,0,498,0,0,0,0,0],[0,0,0,0,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,161,0,0,0,0,0,225,0,0,0,0],[0,0,0,0,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,0,0,0,450,80,80,22,23,0,0,0,0,0,450,0,0,0,0],[0,0,0,499,500,501,502,22,23,0,24,0,0,503,504,0,0,27,0],[0,448,0,505,0,177,177,22,23,0,24,0,0,0,78,0,448,0,0],[0,448,0,0,0,175,506,0,23,0,24,0,0,0,78,0,448,0,0],[0,0,0,507,500,508,509,22,23,0,24,0,0,510,504,0,0,27,0],[0,0,0,0,0,0,0,295,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,292,0,0],[0,0,0,0,0,0,511,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,0,0,0,459,101,101,32,33,0,0,0,0,0,459,0,0,0,0],[0,0,0,512,513,514,515,32,33,0,34,0,0,516,517,0,0,37,0],[0,457,0,518,0,203,203,32,33,0,34,0,0,0,99,0,457,0,0],[0,457,0,0,0,201,519,0,33,0,34,0,0,0,99,0,457,0,0],[0,0,0,520,513,521,522,32,33,0,34,0,0,523,517,0,0,37,0],[0,0,0,0,0,0,0,315,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,312,0,0],[0,0,0,0,0,0,524,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,525,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,527,0,0,0,40,528,0,9,0,10,0,0,0,42,0,527,0,0],[0,0,0,0,529,44,44,8,9,0,0,0,0,468,529,0,0,0,0],[0,0,0,464,465,466,526,8,9,0,10,0,0,468,469,0,0,16,0],[0,0,0,464,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,530,64,0,0,40,528,0,9,0,10,0,0,0,42,0,530,0,0],[0,407,0,0,0,121,121,0,9,0,10,0,0,0,42,0,407,0,0],[0,407,0,470,0,121,121,0,9,0,10,0,0,0,42,0,407,0,0],[0,0,0,525,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,0,0,0,529,44,44,8,9,0,0,0,0,475,529,0,0,0,0],[0,0,0,472,465,473,526,8,9,0,10,0,0,475,469,0,0,16,0],[0,0,0,472,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,0,0],[0,0,0,0,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,0,0,0,481,141,141,57,58,0,0,0,0,0,481,0,0,0,0],[0,0,0,531,532,533,534,57,58,0,59,0,0,535,536,0,0,62,0],[0,479,0,537,0,248,248,57,58,0,59,0,0,0,139,0,479,0,0],[0,479,0,0,0,246,538,0,58,0,59,0,0,0,139,0,479,0,0],[0,0,0,539,532,540,541,57,58,0,59,0,0,542,536,0,0,62,0],[0,0,0,0,0,0,0,353,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,350,0,0],[0,0,0,0,0,0,543,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,361,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,358,0,0],[0,0,0,0,0,544,544,442,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,545,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,491,492,493,494,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,492,492,494,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,546,546,494,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,547,546,546,494,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,548,549,368,550,0,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,274,0,368,368,0,161,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,161,0,0,0,0,498,0,0,0,0,0],[0,0,0,495,0,496,368,0,161,0,162,0,0,498,0,0,0,0,0],[0,0,0,495,0,368,368,0,161,0,162,0,0,0,0,0,0,0,0],[0,0,0,551,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,553,0,0,0,76,554,0,23,0,24,0,0,0,78,0,553,0,0],[0,0,0,0,555,80,80,22,23,0,0,0,0,503,555,0,0,0,0],[0,0,0,499,500,501,552,22,23,0,24,0,0,503,504,0,0,27,0],[0,0,0,499,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,556,90,0,0,76,554,0,23,0,24,0,0,0,78,0,556,0,0],[0,448,0,0,0,175,175,0,23,0,24,0,0,0,78,0,448,0,0],[0,448,0,505,0,175,175,0,23,0,24,0,0,0,78,0,448,0,0],[0,0,0,551,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,0,0,0,555,80,80,22,23,0,0,0,0,510,555,0,0,0,0],[0,0,0,507,500,508,552,22,23,0,24,0,0,510,504,0,0,27,0],[0,0,0,507,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,76,0,0],[0,0,0,557,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,559,0,0,0,97,560,0,33,0,34,0,0,0,99,0,559,0,0],[0,0,0,0,561,101,101,32,33,0,0,0,0,516,561,0,0,0,0],[0,0,0,512,513,514,558,32,33,0,34,0,0,516,517,0,0,37,0],[0,0,0,512,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,562,111,0,0,97,560,0,33,0,34,0,0,0,99,0,562,0,0],[0,457,0,0,0,201,201,0,33,0,34,0,0,0,99,0,457,0,0],[0,457,0,518,0,201,201,0,33,0,34,0,0,0,99,0,457,0,0],[0,0,0,557,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,0,0,0,561,101,101,32,33,0,0,0,0,523,561,0,0,0,0],[0,0,0,520,513,521,558,32,33,0,34,0,0,523,517,0,0,37,0],[0,0,0,520,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,0,0],[0,0,0,0,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,0,0,0,529,44,44,8,9,0,0,0,0,0,529,0,0,0,0],[0,0,0,563,66,564,565,8,9,0,10,0,0,566,68,0,0,16,0],[0,527,0,567,0,123,123,8,9,0,10,0,0,0,42,0,527,0,0],[0,527,0,0,0,121,568,0,9,0,10,0,0,0,42,0,527,0,0],[0,0,0,569,66,570,571,8,9,0,10,0,0,572,68,0,0,16,0],[0,0,0,573,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,575,0,0,0,137,576,0,58,0,59,0,0,0,139,0,575,0,0],[0,0,0,0,577,141,141,57,58,0,0,0,0,535,577,0,0,0,0],[0,0,0,531,532,533,574,57,58,0,59,0,0,535,536,0,0,62,0],[0,0,0,531,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,578,151,0,0,137,576,0,58,0,59,0,0,0,139,0,578,0,0],[0,479,0,0,0,246,246,0,58,0,59,0,0,0,139,0,479,0,0],[0,479,0,537,0,246,246,0,58,0,59,0,0,0,139,0,479,0,0],[0,0,0,573,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,0,0,0,577,141,141,57,58,0,0,0,0,542,577,0,0,0,0],[0,0,0,539,532,540,574,57,58,0,59,0,0,542,536,0,0,62,0],[0,0,0,539,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,0,0],[0,0,0,0,0,0,0,442,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,439,0,0],[0,0,0,0,0,579,579,494,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,580,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,549,368,550,0,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,368,368,0,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,581,0,0,0,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,0,0,0,555,80,80,22,23,0,0,0,0,0,555,0,0,0,0],[0,0,0,582,91,583,584,22,23,0,24,0,0,585,93,0,0,27,0],[0,553,0,586,0,177,177,22,23,0,24,0,0,0,78,0,553,0,0],[0,553,0,0,0,175,587,0,23,0,24,0,0,0,78,0,553,0,0],[0,0,0,588,91,589,590,22,23,0,24,0,0,591,93,0,0,27,0],[0,0,0,0,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,0,0,0,561,101,101,32,33,0,0,0,0,0,561,0,0,0,0],[0,0,0,592,112,593,594,32,33,0,34,0,0,595,114,0,0,37,0],[0,559,0,596,0,203,203,32,33,0,34,0,0,0,99,0,559,0,0],[0,559,0,0,0,201,597,0,33,0,34,0,0,0,99,0,559,0,0],[0,0,0,598,112,599,600,32,33,0,34,0,0,601,114,0,0,37,0],[0,0,0,602,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,0,165,44,44,8,9,0,0,0,0,566,165,0,0,0,0],[0,0,0,563,66,564,67,8,9,0,10,0,0,566,68,0,0,16,0],[0,0,0,563,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,527,0,0,0,121,121,0,9,0,10,0,0,0,42,0,527,0,0],[0,527,0,567,0,121,121,0,9,0,10,0,0,0,42,0,527,0,0],[0,0,0,602,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,0,165,44,44,8,9,0,0,0,0,572,165,0,0,0,0],[0,0,0,569,66,570,67,8,9,0,10,0,0,572,68,0,0,16,0],[0,0,0,569,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,0,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,0,0,0,577,141,141,57,58,0,0,0,0,0,577,0,0,0,0],[0,0,0,603,152,604,605,57,58,0,59,0,0,606,154,0,0,62,0],[0,575,0,607,0,248,248,57,58,0,59,0,0,0,139,0,575,0,0],[0,575,0,0,0,246,608,0,58,0,59,0,0,0,139,0,575,0,0],[0,0,0,609,152,610,611,57,58,0,59,0,0,612,154,0,0,62,0],[0,0,0,0,0,0,0,494,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,491,0,0],[0,0,0,0,0,0,613,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,614,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,0,194,80,80,22,23,0,0,0,0,585,194,0,0,0,0],[0,0,0,582,91,583,92,22,23,0,24,0,0,585,93,0,0,27,0],[0,0,0,582,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,553,0,0,0,175,175,0,23,0,24,0,0,0,78,0,553,0,0],[0,553,0,586,0,175,175,0,23,0,24,0,0,0,78,0,553,0,0],[0,0,0,614,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,0,194,80,80,22,23,0,0,0,0,591,194,0,0,0,0],[0,0,0,588,91,589,92,22,23,0,24,0,0,591,93,0,0,27,0],[0,0,0,588,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,615,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,220,101,101,32,33,0,0,0,0,595,220,0,0,0,0],[0,0,0,592,112,593,113,32,33,0,34,0,0,595,114,0,0,37,0],[0,0,0,592,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,559,0,0,0,201,201,0,33,0,34,0,0,0,99,0,559,0,0],[0,559,0,596,0,201,201,0,33,0,34,0,0,0,99,0,559,0,0],[0,0,0,615,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,220,101,101,32,33,0,0,0,0,601,220,0,0,0,0],[0,0,0,598,112,599,113,32,33,0,34,0,0,601,114,0,0,37,0],[0,0,0,598,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,616,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,0,0,0,265,141,141,57,58,0,0,0,0,606,265,0,0,0,0],[0,0,0,603,152,604,153,57,58,0,59,0,0,606,154,0,0,62,0],[0,0,0,603,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,575,0,0,0,246,246,0,58,0,59,0,0,0,139,0,575,0,0],[0,575,0,607,0,246,246,0,58,0,59,0,0,0,139,0,575,0,0],[0,0,0,616,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,0,0,0,265,141,141,57,58,0,0,0,0,612,265,0,0,0,0],[0,0,0,609,152,610,153,57,58,0,59,0,0,612,154,0,0,62,0],[0,0,0,609,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,549,0,0],[0,0,0,0,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,0,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0]],"accepting":[false,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,true,true,false,true,true,false,true,true,true,false,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,true,false,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,false,true,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,false,true,true,false,false,true,false,true,true,false,true,true,false,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,false,true,true,true,true,false,false,false,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,false,true,true,false,false,true,true,false,false,true,true,true,false,true,false,true,true,true,true,false,false,false,true,false,true,true,true,true,false,false,false,true,true,false,true,true,true,true,true,true,false,true,true,false,true,false,true,true,true,true,false,false,false,false,false,false,false,true,true,false,false,true,true,false,true,true,true,true,false,true,true,true,true,true,true,false,true,true,false,true,true,false,true,true,true,true,true,true,false,true,true,false,true,false,true,true,true,true,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,false,true,true,false,true,false,true,true,true,true,true,false,true,true,true,true,true,false,true,true,true,true,true,false,true,true,true,false,true,true,true,true,false,false,false,true,false,true,true,true,true,true,false,true,true,true,false,true,true,true,true,true,false,true,true,true,true,false,true,true,true,true,true,false,true,true,false,true,true,true],"tags":[[],["broken_cluster"],["consonant_syllable"],["vowel_syllable"],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["consonant_syllable"],["broken_cluster"],["symbol_cluster"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["broken_cluster"],["broken_cluster"],["consonant_syllable","broken_cluster"],["broken_cluster"],[],["broken_cluster"],["symbol_cluster"],[],["symbol_cluster"],["symbol_cluster"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],[],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["symbol_cluster"],["symbol_cluster"],["symbol_cluster"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],[],["consonant_syllable"],["consonant_syllable"],[],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],[],["vowel_syllable"],["vowel_syllable"],[],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],[],[],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["broken_cluster"],["symbol_cluster"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],[],[],["consonant_syllable"],["consonant_syllable"],[],[],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],[],[],["vowel_syllable"],["vowel_syllable"],[],[],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],[],[],["broken_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],[],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],[],[],["consonant_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],[],[],["vowel_syllable"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],[],[],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],[],["standalone_cluster"],[],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],[],[],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],[],[],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],[],[],[],[],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],[],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],["consonant_syllable"],["vowel_syllable"],["standalone_cluster"]]}');var Ar={};Ar=JSON.parse('{"categories":["O","IND","S","GB","B","FM","CGJ","VMAbv","VMPst","VAbv","VPst","CMBlw","VPre","VBlw","H","VMBlw","CMAbv","MBlw","CS","R","SUB","MPst","MPre","FAbv","FPst","FBlw","SMAbv","SMBlw","VMPre","ZWNJ","ZWJ","WJ","VS","N","HN","MAbv"],"decompositions":{"2507":[2503,2494],"2508":[2503,2519],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3270,3266,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415],"3546":[3545,3530],"3548":[3545,3535],"3549":[3545,3535,3530],"3550":[3545,3551],"3635":[3661,3634],"3763":[3789,3762],"3955":[3953,3954],"3957":[3953,3956],"3958":[4018,3968],"3959":[4018,3953,3968],"3960":[4019,3968],"3961":[4019,3953,3968],"3969":[3953,3968],"6971":[6970,6965],"6973":[6972,6965],"6976":[6974,6965],"6977":[6975,6965],"6979":[6978,6965],"69934":[69937,69927],"69935":[69938,69927],"70475":[70471,70462],"70476":[70471,70487],"70843":[70841,70842],"70844":[70841,70832],"70846":[70841,70845],"71098":[71096,71087],"71099":[71097,71087]},"stateTable":[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,2,3,4,4,5,0,6,7,8,9,10,11,12,13,14,15,16,0,17,18,11,19,20,21,22,0,0,23,0,0,2,0,24,0,25],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,28,0,0,0,0,27,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,34,35,36,37,38,39,40,0,0,41,35,42,43,44,45,0,0,46,0,0,0,39,0,0,47],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,0,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,0,0,12,0,14,0,0,0,0,0,0,0,20,21,22,0,0,23,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,9,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,23,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,10,11,12,13,14,0,16,0,0,18,11,19,20,21,22,0,0,23,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,0,0,0,0,0,0,20,21,22,0,0,23,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,9,0,0,12,0,14,0,0,0,0,0,0,0,20,21,22,0,0,23,0,0,0,0,0,0,0],[0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,7,0,0,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,10,11,12,13,14,15,16,0,0,18,11,19,20,21,22,0,0,23,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,0,0,0,0,11,0,20,21,22,0,0,23,0,0,0,0,0,0,0],[0,0,0,4,4,5,0,6,7,8,9,10,11,12,13,14,15,16,0,0,18,11,19,20,21,22,0,0,23,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,48,11,12,13,14,48,16,0,0,18,11,19,20,21,22,0,0,23,0,0,0,49,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,16,0,0,0,11,0,20,21,22,0,0,23,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,22,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,0,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,23,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,51,0],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,16,0,0,0,11,0,20,21,22,0,0,23,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,28,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,0,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,0,0,36,0,38,0,0,0,0,0,0,0,43,44,45,0,0,46,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,33,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,46,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,34,35,36,37,38,0,40,0,0,41,35,42,43,44,45,0,0,46,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,0,0,0,0,0,0,43,44,45,0,0,46,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,33,0,0,36,0,38,0,0,0,0,0,0,0,43,44,45,0,0,46,0,0,0,0,0,0,0],[0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,31,0,0,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,34,35,36,37,38,39,40,0,0,41,35,42,43,44,45,0,0,46,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,0,0,0,0,35,0,43,44,45,0,0,46,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,52,35,36,37,38,52,40,0,0,41,35,42,43,44,45,0,0,46,0,0,0,53,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,40,0,0,0,35,0,43,44,45,0,0,46,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,45,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,0,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,46,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,40,0,0,0,35,0,43,44,45,0,0,46,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,48,11,12,13,14,0,16,0,0,18,11,19,20,21,22,0,0,23,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,48,11,12,13,14,48,16,0,0,18,11,19,20,21,22,0,0,23,0,0,0,0,0,0,25],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,0,0],[0,0,0,0,0,29,0,30,31,32,33,52,35,36,37,38,0,40,0,0,41,35,42,43,44,45,0,0,46,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,52,35,36,37,38,52,40,0,0,41,35,42,43,44,45,0,0,46,0,0,0,0,0,0,47],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,51,0]],"accepting":[false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true],"tags":[[],["broken_cluster"],["independent_cluster"],["symbol_cluster"],["standard_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["numeral_cluster"],["broken_cluster"],["independent_cluster"],["symbol_cluster"],["symbol_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["virama_terminated_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["broken_cluster"],["broken_cluster"],["numeral_cluster"],["number_joiner_terminated_cluster"],["standard_cluster"],["standard_cluster"],["numeral_cluster"]]}');const Le={X:1,C:2,V:4,N:8,H:16,ZWNJ:32,ZWJ:64,M:128,SM:256,VD:512,A:1024,Placeholder:2048,Dotted_Circle:4096,RS:8192,Coeng:16384,Repha:32768,Ra:65536,CM:131072,Symbol:262144},xe={Start:1,Ra_To_Become_Reph:2,Pre_M:4,Pre_C:8,Base_C:16,After_Main:32,Above_C:64,Before_Sub:128,Below_C:256,After_Sub:512,Before_Post:1024,Post_C:2048,After_Post:4096,Final_C:8192,SMVD:16384,End:32768},Mo=Le.C|Le.Ra|Le.CM|Le.V|Le.Placeholder|Le.Dotted_Circle,Wa=Le.ZWJ|Le.ZWNJ,G0=Le.H|Le.Coeng,Xa={Default:{hasOldSpec:!1,virama:0,basePos:"Last",rephPos:xe.Before_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Devanagari:{hasOldSpec:!0,virama:2381,basePos:"Last",rephPos:xe.Before_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Bengali:{hasOldSpec:!0,virama:2509,basePos:"Last",rephPos:xe.After_Sub,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Gurmukhi:{hasOldSpec:!0,virama:2637,basePos:"Last",rephPos:xe.Before_Sub,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Gujarati:{hasOldSpec:!0,virama:2765,basePos:"Last",rephPos:xe.Before_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Oriya:{hasOldSpec:!0,virama:2893,basePos:"Last",rephPos:xe.After_Main,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Tamil:{hasOldSpec:!0,virama:3021,basePos:"Last",rephPos:xe.After_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Telugu:{hasOldSpec:!0,virama:3149,basePos:"Last",rephPos:xe.After_Post,rephMode:"Explicit",blwfMode:"Post_Only"},Kannada:{hasOldSpec:!0,virama:3277,basePos:"Last",rephPos:xe.After_Post,rephMode:"Implicit",blwfMode:"Post_Only"},Malayalam:{hasOldSpec:!0,virama:3405,basePos:"Last",rephPos:xe.After_Main,rephMode:"Log_Repha",blwfMode:"Pre_And_Post"},Khmer:{hasOldSpec:!1,virama:6098,basePos:"First",rephPos:xe.Ra_To_Become_Reph,rephMode:"Vis_Repha",blwfMode:"Pre_And_Post"}},Uo={6078:[6081,6078],6079:[6081,6079],6080:[6081,6080],6084:[6081,6084],6085:[6081,6085]},{decompositions:Vo}=A(Ar),qa=new(A(ue))(Wr("AAARAAAAAACgwgAAAbENTvLtnX+sHUUVx/f13nd/vHf7bl+FRGL7R0OJMcWYphBrimkVCSJR2xiEaLEGQ7AkBGowbYRSgj8K2B/GkpRYE6wlQSyJKCagrSlGkmqsqUZMY7S2CWkgqQViQSkt4Hfuzrx77tyZ2fm1u+/RPcknuzs7O3PmnDOzs7N73zteS5KXwKvgDTCnniTvBfPBJeAVpP2vFr69GGUtAkvAModyr0DeT4BrwCpwPVgDbga3ga+DjYbyluLcCvBN8F2wGWwHO8Ej4DjyPIbtz0DCeZpvD4CD4E/gb+AoOAFOgtPgLKiNJkkbTIKLwALwfvAh8GGwHFwFPg2uAzeCm8Ft4E5wN7gPPAi+D34AfgR+Ap7kx8+AZ8HvwZ/BEXAMvAheAa+Bc6OpzvVGknTABY30eB62C8GlYDFYCpaDq/n5z2J7PVgDbgG3N1KbrOdbWzby/N/G9i6wlR8/wLebUNcOll7vX7PLsQ4bdpAy92B/L3gK7AO/A38EfwX/AC+AkyT/m3x7mqdtYz7Gfq2ZJOPgPc3UXu/D9uJmmmcRT1uC7TJwZTONJxFL1+J4JbgBrAG3gNv5Nev5dhO2m3l54rqtON7RNLd1V8Z5auMfI+8Wbvv12P4Ux78AvyZl/Bb7fwD34HwH/EVR/t8t6rRlrYgFlHnMsdyXIupRFP+Gzv8Bb4CklSSjrTR9bz21uZx/Nj8v+uIFOJ4HFnJo3kWtNG6WkPSzBl1YbC8jeVfx+q+R9Pg48lxN8jFdhd8+01LrLTCdq6io8GNb1a8qKioqKioqKioc2cbXGcrWQ2Ynf9a9rmV/zVua9Dc16V/gz8pfxvar4A6wAdwL7gdbwUPgh+BR8AR4qpWuLe3D9gA4CA6DI+AoOAFOtdL1nNexfYs937fxDA8ubKf1zmv3dViI/Uvb9m2sqKioqAiHrVtehrH3TK2/3l4WZduioqIiDq+Rd1Jbef9ehnHmSnCtNNf7nOPcr8PHilO8jrfBF9v996lfwf6tUpl3tPvvdSjsvcwGnLt3Gsw/kzkpK8CdYH83my3Id0iT91WkL5xMktXgIfD85OD54zjfmYu5OFgN7h1LkmdBMg5fgbvAChzv49ujfEuZ3xlOk7kReTaSfL/B/jl+fMXsJLkb7AcPj8TlHC/zsgnYcyLd3zSh1vGAJr2ioqKiIn/eKXkMjn3/cWF5t/z6y37+K5urwP2YB36vPfw8yr7zeRjpu8g8cTf2H2+n89EtivLE93fs27Ez/Br2vM2+qWPl/ZyX9StFfQxW5v724PPxzXz7XHu4Pps5Jvtmiq13szmzfP0hlHkYHGn358bHeD0vYvsy+K+kz9vt/jy8gT40G1w4Rua0PN98nnaGf/e1G+mXIO2DY8P6Xz7WPz7Ky/7omJ0PBff4+B91fAqsAp8HXwI3gR04txbbdWDDWDpP/g7Yxs6BXWAP2AueJHo+M5bOpw+Cw+AIOApOgFMW7Xkdec6AkXH1+QfgyzbOTY73jy/C/gJ+/CCOP4D9xfz4I9h+TFMWtf9SRWzZwq7f0yi/L9voWSRbDfV/clx/3TuKfjoT26/iX813URx4tiVG3ay/sfFuJenb7J50A4mr1di/CZzLKZ6y2reunup4qzT+fM0wHp0PUD9+A7bYNJ5fn3eNP/Ft5bc0+S4n9/l1Gj+K82zesd1wfj3fZ79h2YyyVvLj7djfCR4xjJEyuy1+S/FyDt/MPwodn5hB8axrxy9nSBtYjOyHrs+BQ+B58E+u+wsWbWBtpb/hYL8RuA/pJ8fT2GffX+wl+daSa08jz9nxNG2k4963XBG/ZVhpUS573mh3BtPo7x/Eb7pE2yd5XvZssY/M/RZLc9SLeDsfD5gfTidi9//pwrzWu7t9lKcN7dxynthAh8vcKrQu1frHTGKBNF662KfoOXU1FsaFxe6x2kjClkBnGvXxwX0bytZ5unK+S9n2jxabTc5M0HUaIyTrfFa+Ljmflc9Xz7JtNdPa4eKz6WAPlb5l6xfLBzopWxcfncvSf7rHRJk2KSN2bKRsvcu2UZmxVIb9qd551e8rZcTERGuQ+qwIjERkjl2+djOlhWfpibnp/qxmP92FVr1/bc9GYxxuI5o3UzdukzYpj+H6nOxra9nHiaksjhDdsasPe9ca/CvOU1GVwUT4t8P921H4T8gsnkdIh+dn/pXrU0mnOZw21CbJv1P5LP0r4jtkbLH171BbCvavnFfeZ8L8K2wv/CuQRU6n/qWSNSbr2mO8xtK/U+Mq6Y/1yQyFJHHtv8Kn2uOC/Gvbf2VEPxJ9SvhY5d+Q+y21iRxLruOzsY6MWGrOkPHZ1b+jFuPzqEX/VcmoZkyIPT53k36/DZnrMd+K/Dbjs6kv6+6VYl9OU+WT07TplvMvWWhfVo3f4t48S+rbjIZl/1b5Xyd5vJdQiTyf7tUdMlbn0J9d/cn6c7M5DO1TNF0+bmT0Z3qdKaaoXeg1Lv7NEhufzyT/6vIKEeO1jX/psdi38a889qpkStcI/u12U3zE1Re+/Yv6QNwvdTDJGi9t2ps1XtKYDJ0PmcZKcU812sRxvms7J47mZ5c+SWJD5LPRg4qqj+nWL8Q5sRVrGar1EG0sOI6ndH3DVWL7wpeuwaY6O1Nh19N+Oqs5uI7Eto3aICxNrCn5rAuZ7Cn2bdJtfZPlL/k8Ld+ki6v9E56XPUvT52mV/YVvmMj2Zz8TEuNMTxfHuFfFUJ60OLrz1utODnFG47fLbSjXy0xSy4gN63EywlhMxWcNmK71svszi5OGTvdJe3rtd8ifB6I/mKBr1ap7uU/sqqTsMb+H5fxBFyuq+yqLnd7cmj33TwyOVVOwuj3nVXRtQtUGWR9jzI6kecZrKSKPuFakU2hZmXXZMDlsS1W9jBavv6eHpf3EtfJ7mKwYV0lX2g9FVY5N+Ung9aH1590+n3KLgEredfiez6u9svisY/Suk9Jsnkli1a+C1m/T7rzqd5UY9mfiXX9R92ibdZUIawTC96b1GBn6rDG1JsPv/b392SkiXVUGmyN0LO5LYi46Zf/Adc/QMaCo8TtG/bH1Z/TsW1QfUPRjm2cZee5PRaT33lEbnhlMax4qe1o/Y8a0icdaoOv9bsh+Hj6jonueoGtHumcMlX9lxLxXq7/D84fSzznGt6rtUerXxYU47/IcPeG3vqBbJ1StETZqg9fS2Akd/0Ovp+/CxD3P+/6bQwzJtsvyh5w+XjeXH9KfXGH3/VbSX4tS4XoftPZbnvcyxX1G5QvW1wbWTkbs7c3mTco6NWODbdxk3R9lGZo/aGxhiknTmETXLVs1c90u9+mBGCf6hs6fsmTq29sxPv8d82CuhCpNjGNjg31blGHrz1i41hd6nuYzbU3XhLQzj7Jt67Otw0uXUdDoH8e4F/joMdVui2dMJc3E+Tetvr6jEtPnPhJaVwz9Y7TDVlx1qnfitlEbtzlTVD0qX/pcm1esxI65PO3mU4eNrr5SZMz46FDE+aIlb5tntb1o/WOUETsW847pvNpaZH225eUpNnrS9yDy9wTysyr9XVOe63+qd3M6e4X6Ptd1Dpc1SdV53ZqFag1hpP+bE5f4ivY74BzXilzWWW1+S0TjJng91Gd9wmbNgpMVz6W8d7GJZwWtWp8p++c8fpjW0Vzff3dJfzGuoersEtnmpjVLupY48H6o7n8/C+kvJn+Lcd6q3QHx3usvZax3W8apvP6rev+UJSHfiCYe/h2aTwTaRi5DO28ZSd9zNhTfJ8b2je7drOo9HtNNbPMW03zOpq2qNqnKFN+0huhlMye2Pe9TdzfCedfxMlRfG7xjncaJ7fiXMYZk3X+ZvuKbXCGh8y8XH8TybajPTfq4tjG2/qb0RJO3SB19ba2SMuoNbW8R/g653qa9sdsRYsssu+ZxPss+tnayFd94yjofEi+hZdvo73q9jd3yisUYbfEpQ9XmMqUIm2fFZh4xkZeE1BNDL5v+ZcqXh/90bSwjflz8U0QcFWHzPOpy0amM+stqf1ad7LltVPqWmG3p3+GiIvLJf8duYA3NcBwbWRpkDXmo7RP+z5E6+8Xswz512dbrW2aMNrpKaBt9y45VR2j9efhAQL/PF38Xadq907NYC5dpZLy3kMX6PUHgeGGS3nfoPn9rObJ9s/4uMntnSt/J5TX+2ZRhtFcB8ZgVmyZbit8GCd/7/C7EOcYK7LdyjNhIlL81nqN/Xf9mOHt/anovP4X0tyem/OUZF9TmscY2nzEulq96ZeVwv2Bxxnwk3s9njT8m/YWOKl199fe53tTXyu5DLojfKWXej6R3RAPtDf1ex/PvtdJ8Q7aP7Ht6XpdXSJf8/wMdQuS/j0/HtKny9KbT+oT2K2ETuW7Tt09Uss5nCdWhjPuMTXzrztO4FHMy+V6TJaH9I6+2C5HPq9oc8xlKRva5rF8M/7tC26/6BsNFivQ//e1pVsyP19VrNrH1D5Wi7oUDdVp8Q5HVr1ztlzXPtH2Gc30+lMX3edH3ecm3fp0+Ps/IPvWH6OpiV7meEMlbzyIkpi1jtDU0Pmm6nMd0jU8bXK7N0jWkb/joHyNebfWgtrJpc0h7QiQP24aKqcwYPnTRIUmG63fRQ5VXLsekgy5NtVXVadLfpjzV9S6xYnuNri159ZmsmLCpJ8/6XSRGOaH659H+GLYtwhd51xvq31B9Qm0UavM84qhoKaNOnfwf")),Go=new(A(Ie))(A(Ha));class lt extends Zt{static planFeatures(e){e.addStage(zo),e.addStage(["locl","ccmp"]),e.addStage(Wo),e.addStage("nukt"),e.addStage("akhn"),e.addStage("rphf",!1),e.addStage("rkrf"),e.addStage("pref",!1),e.addStage("blwf",!1),e.addStage("abvf",!1),e.addStage("half",!1),e.addStage("pstf",!1),e.addStage("vatu"),e.addStage("cjct"),e.addStage("cfar",!1),e.addStage(Xo),e.addStage({local:["init"],global:["pres","abvs","blws","psts","haln","dist","abvm","blwm","calt","clig"]}),e.unicodeScript=Fs(e.script),e.indicConfig=Xa[e.unicodeScript]||Xa.Default,e.isOldSpec=e.indicConfig.hasOldSpec&&e.script[e.script.length-1]!=="2"}static assignFeatures(e,r){for(let a=r.length-1;a>=0;a--){let n=r[a].codePoints[0],s=Uo[n]||Vo[n];if(s){let i=s.map(u=>{let b=e.font.glyphForCodePoint(u);return new It(e.font,b.id,[u],r[a].features)});r.splice(a,1,...i)}}}}A(W)(lt,"zeroMarkWidths","NONE");function Qr(c){return qa.get(c.codePoints[0])>>8}function ja(c){return 1<<(qa.get(c.codePoints[0])&255)}class Pr{constructor(e,r,a,n){this.category=e,this.position=r,this.syllableType=a,this.syllable=n}}function zo(c,e){let r=0,a=0;for(let[n,s,i]of Go.match(e.map(Qr))){if(n>a){++r;for(let u=a;u<n;u++)e[u].shaperInfo=new Pr(Le.X,xe.End,"non_indic_cluster",r)}++r;for(let u=n;u<=s;u++)e[u].shaperInfo=new Pr(1<<Qr(e[u]),ja(e[u]),i[0],r);a=s+1}if(a<e.length){++r;for(let n=a;n<e.length;n++)e[n].shaperInfo=new Pr(Le.X,xe.End,"non_indic_cluster",r)}}function c0(c){return c.shaperInfo.category&Mo}function Tt(c){return c.shaperInfo.category&Wa}function Ut(c){return c.shaperInfo.category&G0}function Vt(c,e){for(let a of c)a.features={[e]:!0};return c[0]._font._layoutEngine.engine.GSUBProcessor.applyFeatures([e],c),c.length===1}function Ho(c,e,r){let a=[r,e,r];return Vt(a.slice(0,2),"blwf")||Vt(a.slice(1,3),"blwf")?xe.Below_C:Vt(a.slice(0,2),"pstf")||Vt(a.slice(1,3),"pstf")||Vt(a.slice(0,2),"pref")||Vt(a.slice(1,3),"pref")?xe.Post_C:xe.Base_C}function Wo(c,e,r){let a=r.indicConfig,n=c._layoutEngine.engine.GSUBProcessor.features,s=c.glyphForCodePoint(9676).id,i=c.glyphForCodePoint(a.virama).id;if(i){let u=new It(c,i,[a.virama]);for(let b=0;b<e.length;b++)e[b].shaperInfo.position===xe.Base_C&&(e[b].shaperInfo.position=Ho(c,e[b].copy(),u))}for(let u=0,b=Ir(e,0);u<e.length;u=b,b=Ir(e,u)){let{category:y,syllableType:C}=e[u].shaperInfo;if(C==="symbol_cluster"||C==="non_indic_cluster")continue;if(C==="broken_cluster"&&s){let G=new It(c,s,[9676]);G.shaperInfo=new Pr(1<<Qr(G),ja(G),e[u].shaperInfo.syllableType,e[u].shaperInfo.syllable);let $e=u;for(;$e<b&&e[$e].shaperInfo.category===Le.Repha;)$e++;e.splice($e++,0,G),b++}let m=b,z=u,ne=!1;if(a.rephPos!==xe.Ra_To_Become_Reph&&n.rphf&&u+3<=b&&(a.rephMode==="Implicit"&&!Tt(e[u+2])||a.rephMode==="Explicit"&&e[u+2].shaperInfo.category===Le.ZWJ)){let G=[e[u].copy(),e[u+1].copy(),e[u+2].copy()];if(Vt(G.slice(0,2),"rphf")||a.rephMode==="Explicit"&&Vt(G,"rphf")){for(z+=2;z<b&&Tt(e[z]);)z++;m=u,ne=!0}}else if(a.rephMode==="Log_Repha"&&e[u].shaperInfo.category===Le.Repha){for(z++;z<b&&Tt(e[z]);)z++;m=u,ne=!0}switch(a.basePos){case"Last":{let G=b,$e=!1;do{let ke=e[--G].shaperInfo;if(c0(e[G])){if(ke.position!==xe.Below_C&&(ke.position!==xe.Post_C||$e)){m=G;break}ke.position===xe.Below_C&&($e=!0),m=G}else if(u<G&&ke.category===Le.ZWJ&&e[G-1].shaperInfo.category===Le.H)break}while(G>z);break}case"First":m=u;for(let G=m+1;G<b;G++)c0(e[G])&&(e[G].shaperInfo.position=xe.Below_C)}ne&&m===u&&z-m<=2&&(ne=!1);for(let G=u;G<m;G++){let $e=e[G].shaperInfo;$e.position=Math.min(xe.Pre_C,$e.position)}m<b&&(e[m].shaperInfo.position=xe.Base_C);for(let G=m+1;G<b;G++)if(e[G].shaperInfo.category===Le.M){for(let $e=G+1;$e<b;$e++)if(c0(e[$e])){e[$e].shaperInfo.position=xe.Final_C;break}break}if(ne&&(e[u].shaperInfo.position=xe.Ra_To_Become_Reph),r.isOldSpec){let G=r.unicodeScript!=="Malayalam";for(let $e=m+1;$e<b;$e++)if(e[$e].shaperInfo.category===Le.H){let ke;for(ke=b-1;ke>$e&&!(c0(e[ke])||G&&e[ke].shaperInfo.category===Le.H);ke--);if(e[ke].shaperInfo.category!==Le.H&&ke>$e){let ct=e[$e];e.splice($e,0,...e.splice($e+1,ke-$e)),e[ke]=ct}break}}let oe=xe.Start;for(let G=u;G<b;G++){let $e=e[G].shaperInfo;if($e.category&(Wa|Le.N|Le.RS|Le.CM|G0&$e.category)){if($e.position=oe,$e.category===Le.H&&$e.position===xe.Pre_M){for(let ke=G;ke>u;ke--)if(e[ke-1].shaperInfo.position!==xe.Pre_M){$e.position=e[ke-1].shaperInfo.position;break}}}else $e.position!==xe.SMVD&&(oe=$e.position)}let Ee=m;for(let G=m+1;G<b;G++)if(c0(e[G])){for(let $e=Ee+1;$e<G;$e++)e[$e].shaperInfo.position<xe.SMVD&&(e[$e].shaperInfo.position=e[G].shaperInfo.position);Ee=G}else e[G].shaperInfo.category===Le.M&&(Ee=G);let it=e.slice(u,b);it.sort((G,$e)=>G.shaperInfo.position-$e.shaperInfo.position),e.splice(u,it.length,...it);for(let G=u;G<b;G++)if(e[G].shaperInfo.position===xe.Base_C){m=G;break}for(let G=u;G<b&&e[G].shaperInfo.position===xe.Ra_To_Become_Reph;G++)e[G].features.rphf=!0;let Pe=!r.isOldSpec&&a.blwfMode==="Pre_And_Post";for(let G=u;G<m;G++)e[G].features.half=!0,Pe&&(e[G].features.blwf=!0);for(let G=m+1;G<b;G++)e[G].features.abvf=!0,e[G].features.pstf=!0,e[G].features.blwf=!0;if(r.isOldSpec&&r.unicodeScript==="Devanagari")for(let G=u;G+1<m;G++)e[G].shaperInfo.category===Le.Ra&&e[G+1].shaperInfo.category===Le.H&&(G+1===m||e[G+2].shaperInfo.category===Le.ZWJ)&&(e[G].features.blwf=!0,e[G+1].features.blwf=!0);let Me=2;if(n.pref&&m+Me<b)for(let G=m+1;G+Me-1<b;G++){let $e=[e[G].copy(),e[G+1].copy()];if(Vt($e,"pref")){for(let ke=0;ke<Me;ke++)e[G++].features.pref=!0;if(n.cfar)for(;G<b;G++)e[G].features.cfar=!0;break}}for(let G=u+1;G<b;G++)if(Tt(e[G])){let $e=e[G].shaperInfo.category===Le.ZWNJ,ke=G;do ke--,$e&&delete e[ke].features.half;while(ke>u&&!c0(e[ke]))}}}function Xo(c,e,r){let a=r.indicConfig,n=c._layoutEngine.engine.GSUBProcessor.features;for(let s=0,i=Ir(e,0);s<e.length;s=i,i=Ir(e,s)){let u=!!n.pref,b=s;for(;b<i;b++)if(e[b].shaperInfo.position>=xe.Base_C){if(u&&b+1<i){for(let y=b+1;y<i;y++)if(e[y].features.pref){if(!(e[y].substituted&&e[y].isLigated&&!e[y].isMultiplied)){for(b=y;b<i&&Ut(e[b]);)b++;e[b].shaperInfo.position=xe.BASE_C,u=!1}break}}if(r.unicodeScript==="Malayalam")for(let y=b+1;y<i;y++){for(;y<i&&Tt(e[y]);)y++;if(y===i||!Ut(e[y]))break;for(y++;y<i&&Tt(e[y]);)y++;y<i&&c0(e[y])&&e[y].shaperInfo.position===xe.Below_C&&(b=y,e[b].shaperInfo.position=xe.Base_C)}s<b&&e[b].shaperInfo.position>xe.Base_C&&b--;break}if(b===i&&s<b&&e[b-1].shaperInfo.category===Le.ZWJ&&b--,b<i)for(;s<b&&e[b].shaperInfo.category&(Le.N|G0);)b--;if(s+1<i&&s<b){let y=b===i?b-2:b-1;if(r.unicodeScript!=="Malayalam"&&r.unicodeScript!=="Tamil"){for(;y>s&&!(e[y].shaperInfo.category&(Le.M|G0));)y--;Ut(e[y])&&e[y].shaperInfo.position!==xe.Pre_M?y+1<i&&Tt(e[y+1])&&y++:y=s}if(s<y&&e[y].shaperInfo.position!==xe.Pre_M){for(let C=y;C>s;C--)if(e[C-1].shaperInfo.position===xe.Pre_M){let m=C-1;m<b&&b<=y&&b--;let z=e[m];e.splice(m,0,...e.splice(m+1,y-m)),e[y]=z,y--}}}if(s+1<i&&e[s].shaperInfo.position===xe.Ra_To_Become_Reph&&e[s].shaperInfo.category===Le.Repha!==(e[s].isLigated&&!e[s].isMultiplied)){let y,C=a.rephPos,m=!1;if(C!==xe.After_Post){for(y=s+1;y<b&&!Ut(e[y]);)y++;if(y<b&&Ut(e[y])&&(y+1<b&&Tt(e[y+1])&&y++,m=!0),!m&&C===xe.After_Main){for(y=b;y+1<i&&e[y+1].shaperInfo.position<=xe.After_Main;)y++;m=y<i}if(!m&&C===xe.After_Sub){for(y=b;y+1<i&&!(e[y+1].shaperInfo.position&(xe.Post_C|xe.After_Post|xe.SMVD));)y++;m=y<i}}if(!m){for(y=s+1;y<b&&!Ut(e[y]);)y++;y<b&&Ut(e[y])&&(y+1<b&&Tt(e[y+1])&&y++,m=!0)}if(!m){for(y=i-1;y>s&&e[y].shaperInfo.position===xe.SMVD;)y--;if(Ut(e[y]))for(let ne=b+1;ne<y;ne++)e[ne].shaperInfo.category===Le.M&&y--}let z=e[s];e.splice(s,0,...e.splice(s+1,y-s)),e[y]=z,s<b&&b<=y&&b--}if(u&&b+1<i){for(let y=b+1;y<i;y++)if(e[y].features.pref){if(e[y].isLigated&&!e[y].isMultiplied){let C=b;if(r.unicodeScript!=="Malayalam"&&r.unicodeScript!=="Tamil"){for(;C>s&&!(e[C-1].shaperInfo.category&(Le.M|G0));)C--;if(C>s&&e[C-1].shaperInfo.category===Le.M){let ne=y;for(let oe=b+1;oe<ne;oe++)if(e[oe].shaperInfo.category===Le.M){C--;break}}}C>s&&Ut(e[C-1])&&C<i&&Tt(e[C])&&C++;let m=y,z=e[m];e.splice(C+1,0,...e.splice(C,m-C)),e[C]=z,C<=b&&b<m&&b++}break}}e[s].shaperInfo.position===xe.Pre_M&&(!s||!/Cf|Mn/.test((0,le.getCategory)(e[s-1].codePoints[0])))&&(e[s].features.init=!0)}}function Ir(c,e){if(e>=c.length)return e;let r=c[e].shaperInfo.syllable;for(;++e<c.length&&c[e].shaperInfo.syllable===r;);return e}const{categories:qo,decompositions:Ya}=A(Ar),jo=new(A(ue))(Wr("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")),Yo=new(A(Ie))(A(Ar));class Fe extends Zt{static planFeatures(e){e.addStage(Zo),e.addStage(["locl","ccmp","nukt","akhn"]),e.addStage(Za),e.addStage(["rphf"],!1),e.addStage(Jo),e.addStage(Za),e.addStage(["pref"]),e.addStage(_o),e.addStage(["rkrf","abvf","blwf","half","pstf","vatu","cjct"]),e.addStage(Qo),e.addStage(["abvs","blws","pres","psts","dist","abvm","blwm"])}static assignFeatures(e,r){for(let a=r.length-1;a>=0;a--){let n=r[a].codePoints[0];if(Ya[n]){let s=Ya[n].map(i=>{let u=e.font.glyphForCodePoint(i);return new It(e.font,u.id,[i],r[a].features)});r.splice(a,1,...s)}}}}A(W)(Fe,"zeroMarkWidths","BEFORE_GPOS");function Ka(c){return jo.get(c.codePoints[0])}class Ko{constructor(e,r,a){this.category=e,this.syllableType=r,this.syllable=a}}function Zo(c,e){let r=0;for(let[a,n,s]of Yo.match(e.map(Ka))){++r;for(let u=a;u<=n;u++)e[u].shaperInfo=new Ko(qo[Ka(e[u])],s[0],r);let i=e[a].shaperInfo.category==="R"?1:Math.min(3,n-a);for(let u=a;u<a+i;u++)e[u].features.rphf=!0}}function Za(c,e){for(let r of e)r.substituted=!1}function Jo(c,e){for(let r of e)r.substituted&&r.features.rphf&&(r.shaperInfo.category="R")}function _o(c,e){for(let r of e)r.substituted&&(r.shaperInfo.category="VPre")}function Qo(c,e){let r=c.glyphForCodePoint(9676).id;for(let a=0,n=Ja(e,0);a<e.length;a=n,n=Ja(e,a)){let s,i,u=e[a].shaperInfo,b=u.syllableType;if(!(b!=="virama_terminated_cluster"&&b!=="standard_cluster"&&b!=="broken_cluster")){if(b==="broken_cluster"&&r){let y=new It(c,r,[9676]);for(y.shaperInfo=u,s=a;s<n&&e[s].shaperInfo.category==="R";s++);e.splice(++s,0,y),n++}if(u.category==="R"&&n-a>1){for(s=a+1;s<n;s++)if(u=e[s].shaperInfo,_a(u)||Er(e[s])){Er(e[s])&&s--,e.splice(a,0,...e.splice(a+1,s-a),e[s]);break}}for(s=a,i=n;s<n;s++)u=e[s].shaperInfo,_a(u)||Er(e[s])?i=Er(e[s])?s+1:s:(u.category==="VPre"||u.category==="VMPre")&&i<s&&e.splice(i,1,e[s],...e.splice(i,s-i))}}}function Ja(c,e){if(e>=c.length)return e;let r=c[e].shaperInfo.syllable;for(;++e<c.length&&c[e].shaperInfo.syllable===r;);return e}function Er(c){return c.shaperInfo.category==="H"&&!c.isLigated}function _a(c){return c.category==="B"||c.category==="GB"}const el={arab:_t,mong:_t,syrc:_t,"nko ":_t,phag:_t,mand:_t,mani:_t,phlp:_t,hang:Ma,bng2:lt,beng:lt,dev2:lt,deva:lt,gjr2:lt,gujr:lt,guru:lt,gur2:lt,knda:lt,knd2:lt,mlm2:lt,mlym:lt,ory2:lt,orya:lt,taml:lt,tml2:lt,telu:lt,tel2:lt,khmr:lt,bali:Fe,batk:Fe,brah:Fe,bugi:Fe,buhd:Fe,cakm:Fe,cham:Fe,dupl:Fe,egyp:Fe,gran:Fe,hano:Fe,java:Fe,kthi:Fe,kali:Fe,khar:Fe,khoj:Fe,sind:Fe,lepc:Fe,limb:Fe,mahj:Fe,mtei:Fe,modi:Fe,hmng:Fe,rjng:Fe,saur:Fe,shrd:Fe,sidd:Fe,sinh:lt,sund:Fe,sylo:Fe,tglg:Fe,tagb:Fe,tale:Fe,lana:Fe,tavt:Fe,takr:Fe,tibt:Fe,tfng:Fe,tirh:Fe,latn:Zt,DFLT:Zt};function tl(c){Array.isArray(c)||(c=[c]);for(let e of c){let r=el[e];if(r)return r}return Zt}class rl extends xr{applyLookup(e,r){switch(e){case 1:{let n=this.coverageIndex(r.coverage);if(n===-1)return!1;let s=this.glyphIterator.cur;switch(r.version){case 1:s.id=s.id+r.deltaGlyphID&65535;break;case 2:s.id=r.substitute.get(n);break}return!0}case 2:{let n=this.coverageIndex(r.coverage);if(n!==-1){let s=r.sequences.get(n);if(s.length===0)return this.glyphs.splice(this.glyphIterator.index,1),!0;this.glyphIterator.cur.id=s[0],this.glyphIterator.cur.ligatureComponent=0;let i=this.glyphIterator.cur.features,u=this.glyphIterator.cur,b=s.slice(1).map((y,C)=>{let m=new It(this.font,y,void 0,i);return m.shaperInfo=u.shaperInfo,m.isLigated=u.isLigated,m.ligatureComponent=C+1,m.substituted=!0,m.isMultiplied=!0,m});return this.glyphs.splice(this.glyphIterator.index+1,0,...b),!0}return!1}case 3:{let n=this.coverageIndex(r.coverage);if(n!==-1){let s=0;return this.glyphIterator.cur.id=r.alternateSet.get(n)[s],!0}return!1}case 4:{let n=this.coverageIndex(r.coverage);if(n===-1)return!1;for(let s of r.ligatureSets.get(n)){let i=this.sequenceMatchIndices(1,s.components);if(!i)continue;let u=this.glyphIterator.cur,b=u.codePoints.slice();for(let Ee of i)b.push(...this.glyphs[Ee].codePoints);let y=new It(this.font,s.glyph,b,u.features);y.shaperInfo=u.shaperInfo,y.isLigated=!0,y.substituted=!0;let C=u.isMark;for(let Ee=0;Ee<i.length&&C;Ee++)C=this.glyphs[i[Ee]].isMark;y.ligatureID=C?null:this.ligatureID++;let m=u.ligatureID,z=u.codePoints.length,ne=z,oe=this.glyphIterator.index+1;for(let Ee of i){if(C)oe=Ee;else for(;oe<Ee;){var a=ne-z+Math.min(this.glyphs[oe].ligatureComponent||1,z);this.glyphs[oe].ligatureID=y.ligatureID,this.glyphs[oe].ligatureComponent=a,oe++}m=this.glyphs[oe].ligatureID,z=this.glyphs[oe].codePoints.length,ne+=z,oe++}if(m&&!C)for(let Ee=oe;Ee<this.glyphs.length&&this.glyphs[Ee].ligatureID===m;Ee++){var a=ne-z+Math.min(this.glyphs[Ee].ligatureComponent||1,z);this.glyphs[Ee].ligatureComponent=a}for(let Ee=i.length-1;Ee>=0;Ee--)this.glyphs.splice(i[Ee],1);return this.glyphs[this.glyphIterator.index]=y,!0}return!1}case 5:return this.applyContext(r);case 6:return this.applyChainingContext(r);case 7:return this.applyLookup(r.lookupType,r.extension);default:throw new Error(`GSUB lookupType ${e} is not supported`)}}}class al extends xr{applyPositionValue(e,r){let a=this.positions[this.glyphIterator.peekIndex(e)];r.xAdvance!=null&&(a.xAdvance+=r.xAdvance),r.yAdvance!=null&&(a.yAdvance+=r.yAdvance),r.xPlacement!=null&&(a.xOffset+=r.xPlacement),r.yPlacement!=null&&(a.yOffset+=r.yPlacement);let n=this.font._variationProcessor,s=this.font.GDEF&&this.font.GDEF.itemVariationStore;n&&s&&(r.xPlaDevice&&(a.xOffset+=n.getDelta(s,r.xPlaDevice.a,r.xPlaDevice.b)),r.yPlaDevice&&(a.yOffset+=n.getDelta(s,r.yPlaDevice.a,r.yPlaDevice.b)),r.xAdvDevice&&(a.xAdvance+=n.getDelta(s,r.xAdvDevice.a,r.xAdvDevice.b)),r.yAdvDevice&&(a.yAdvance+=n.getDelta(s,r.yAdvDevice.a,r.yAdvDevice.b)))}applyLookup(e,r){switch(e){case 1:{let n=this.coverageIndex(r.coverage);if(n===-1)return!1;switch(r.version){case 1:this.applyPositionValue(0,r.value);break;case 2:this.applyPositionValue(0,r.values.get(n));break}return!0}case 2:{let n=this.glyphIterator.peek();if(!n)return!1;let s=this.coverageIndex(r.coverage);if(s===-1)return!1;switch(r.version){case 1:let i=r.pairSets.get(s);for(let y of i)if(y.secondGlyph===n.id)return this.applyPositionValue(0,y.value1),this.applyPositionValue(1,y.value2),!0;return!1;case 2:let u=this.getClassID(this.glyphIterator.cur.id,r.classDef1),b=this.getClassID(n.id,r.classDef2);if(u===-1||b===-1)return!1;var a=r.classRecords.get(u).get(b);return this.applyPositionValue(0,a.value1),this.applyPositionValue(1,a.value2),!0}}case 3:{let n=this.glyphIterator.peekIndex(),s=this.glyphs[n];if(!s)return!1;let i=r.entryExitRecords[this.coverageIndex(r.coverage)];if(!i||!i.exitAnchor)return!1;let u=r.entryExitRecords[this.coverageIndex(r.coverage,s.id)];if(!u||!u.entryAnchor)return!1;let b=this.getAnchor(u.entryAnchor),y=this.getAnchor(i.exitAnchor),C=this.positions[this.glyphIterator.index],m=this.positions[n],z;switch(this.direction){case"ltr":C.xAdvance=y.x+C.xOffset,z=b.x+m.xOffset,m.xAdvance-=z,m.xOffset-=z;break;case"rtl":z=y.x+C.xOffset,C.xAdvance-=z,C.xOffset-=z,m.xAdvance=b.x+m.xOffset;break}return this.glyphIterator.flags.rightToLeft?(this.glyphIterator.cur.cursiveAttachment=n,C.yOffset=b.y-y.y):(s.cursiveAttachment=this.glyphIterator.index,C.yOffset=y.y-b.y),!0}case 4:{let n=this.coverageIndex(r.markCoverage);if(n===-1)return!1;let s=this.glyphIterator.index;for(;--s>=0&&(this.glyphs[s].isMark||this.glyphs[s].ligatureComponent>0););if(s<0)return!1;let i=this.coverageIndex(r.baseCoverage,this.glyphs[s].id);if(i===-1)return!1;let u=r.markArray[n],b=r.baseArray[i][u.class];return this.applyAnchor(u,b,s),!0}case 5:{let n=this.coverageIndex(r.markCoverage);if(n===-1)return!1;let s=this.glyphIterator.index;for(;--s>=0&&this.glyphs[s].isMark;);if(s<0)return!1;let i=this.coverageIndex(r.ligatureCoverage,this.glyphs[s].id);if(i===-1)return!1;let u=r.ligatureArray[i],b=this.glyphIterator.cur,y=this.glyphs[s],C=y.ligatureID&&y.ligatureID===b.ligatureID&&b.ligatureComponent>0?Math.min(b.ligatureComponent,y.codePoints.length)-1:y.codePoints.length-1,m=r.markArray[n],z=u[C][m.class];return this.applyAnchor(m,z,s),!0}case 6:{let n=this.coverageIndex(r.mark1Coverage);if(n===-1)return!1;let s=this.glyphIterator.peekIndex(-1),i=this.glyphs[s];if(!i||!i.isMark)return!1;let u=this.glyphIterator.cur,b=!1;if(u.ligatureID===i.ligatureID?u.ligatureID?u.ligatureComponent===i.ligatureComponent&&(b=!0):b=!0:(u.ligatureID&&!u.ligatureComponent||i.ligatureID&&!i.ligatureComponent)&&(b=!0),!b)return!1;let y=this.coverageIndex(r.mark2Coverage,i.id);if(y===-1)return!1;let C=r.mark1Array[n],m=r.mark2Array[y][C.class];return this.applyAnchor(C,m,s),!0}case 7:return this.applyContext(r);case 8:return this.applyChainingContext(r);case 9:return this.applyLookup(r.lookupType,r.extension);default:throw new Error(`Unsupported GPOS table: ${e}`)}}applyAnchor(e,r,a){let n=this.getAnchor(r),s=this.getAnchor(e.markAnchor),i=this.positions[a],u=this.positions[this.glyphIterator.index];u.xOffset=n.x-s.x,u.yOffset=n.y-s.y,this.glyphIterator.cur.markAttachment=a}getAnchor(e){let r=e.xCoordinate,a=e.yCoordinate,n=this.font._variationProcessor,s=this.font.GDEF&&this.font.GDEF.itemVariationStore;return n&&s&&(e.xDeviceTable&&(r+=n.getDelta(s,e.xDeviceTable.a,e.xDeviceTable.b)),e.yDeviceTable&&(a+=n.getDelta(s,e.yDeviceTable.a,e.yDeviceTable.b))),{x:r,y:a}}applyFeatures(e,r,a){super.applyFeatures(e,r,a);for(var n=0;n<this.glyphs.length;n++)this.fixCursiveAttachment(n);this.fixMarkAttachment()}fixCursiveAttachment(e){let r=this.glyphs[e];if(r.cursiveAttachment!=null){let a=r.cursiveAttachment;r.cursiveAttachment=null,this.fixCursiveAttachment(a),this.positions[e].yOffset+=this.positions[a].yOffset}}fixMarkAttachment(){for(let e=0;e<this.glyphs.length;e++){let r=this.glyphs[e];if(r.markAttachment!=null){let a=r.markAttachment;if(this.positions[e].xOffset+=this.positions[a].xOffset,this.positions[e].yOffset+=this.positions[a].yOffset,this.direction==="ltr")for(let n=a;n<e;n++)this.positions[e].xOffset-=this.positions[n].xAdvance,this.positions[e].yOffset-=this.positions[n].yAdvance;else for(let n=a+1;n<e+1;n++)this.positions[e].xOffset+=this.positions[n].xAdvance,this.positions[e].yOffset+=this.positions[n].yAdvance}}}}class nl{setup(e){this.glyphInfos=e.glyphs.map(a=>new It(this.font,a.id,[...a.codePoints]));let r=null;this.GPOSProcessor&&(r=this.GPOSProcessor.selectScript(e.script,e.language,e.direction)),this.GSUBProcessor&&(r=this.GSUBProcessor.selectScript(e.script,e.language,e.direction)),this.shaper=tl(r),this.plan=new ao(this.font,r,e.direction),this.shaper.plan(this.plan,this.glyphInfos,e.features);for(let a in this.plan.allFeatures)e.features[a]=!0}substitute(e){this.GSUBProcessor&&(this.plan.process(this.GSUBProcessor,this.glyphInfos),e.glyphs=this.glyphInfos.map(r=>this.font.getGlyph(r.id,r.codePoints)))}position(e){return this.shaper.zeroMarkWidths==="BEFORE_GPOS"&&this.zeroMarkAdvances(e.positions),this.GPOSProcessor&&this.plan.process(this.GPOSProcessor,this.glyphInfos,e.positions),this.shaper.zeroMarkWidths==="AFTER_GPOS"&&this.zeroMarkAdvances(e.positions),e.direction==="rtl"&&(e.glyphs.reverse(),e.positions.reverse()),this.GPOSProcessor&&this.GPOSProcessor.features}zeroMarkAdvances(e){for(let r=0;r<this.glyphInfos.length;r++)this.glyphInfos[r].isMark&&(e[r].xAdvance=0,e[r].yAdvance=0)}cleanup(){this.glyphInfos=null,this.plan=null,this.shaper=null}getAvailableFeatures(e,r){let a=[];return this.GSUBProcessor&&(this.GSUBProcessor.selectScript(e,r),a.push(...Object.keys(this.GSUBProcessor.features))),this.GPOSProcessor&&(this.GPOSProcessor.selectScript(e,r),a.push(...Object.keys(this.GPOSProcessor.features))),a}constructor(e){this.font=e,this.glyphInfos=null,this.plan=null,this.GSUBProcessor=null,this.GPOSProcessor=null,this.fallbackPosition=!0,e.GSUB&&(this.GSUBProcessor=new rl(e,e.GSUB)),e.GPOS&&(this.GPOSProcessor=new al(e,e.GPOS))}}class il{layout(e,r,a,n,s){if(typeof r=="string"&&(s=n,n=a,a=r,r=[]),typeof e=="string"){a==null&&(a=Bs(e));var i=this.font.glyphsForString(e)}else{if(a==null){let y=[];for(let C of e)y.push(...C.codePoints);a=Ls(y)}var i=e}let u=new Rs(i,r,a,n,s);return i.length===0?(u.positions=[],u):(this.engine&&this.engine.setup&&this.engine.setup(u),this.substitute(u),this.position(u),this.hideDefaultIgnorables(u.glyphs,u.positions),this.engine&&this.engine.cleanup&&this.engine.cleanup(),u)}substitute(e){this.engine&&this.engine.substitute&&this.engine.substitute(e)}position(e){e.positions=e.glyphs.map(a=>new Ns(a.advanceWidth));let r=null;this.engine&&this.engine.position&&(r=this.engine.position(e)),!r&&(!this.engine||this.engine.fallbackPosition)&&(this.unicodeLayoutEngine||(this.unicodeLayoutEngine=new Ts(this.font)),this.unicodeLayoutEngine.positionGlyphs(e.glyphs,e.positions)),(!r||!r.kern)&&e.features.kern!==!1&&this.font.kern&&(this.kernProcessor||(this.kernProcessor=new Os(this.font)),this.kernProcessor.process(e.glyphs,e.positions),e.features.kern=!0)}hideDefaultIgnorables(e,r){let a=this.font.glyphForCodePoint(32);for(let n=0;n<e.length;n++)this.isDefaultIgnorable(e[n].codePoints[0])&&(e[n]=a,r[n].xAdvance=0,r[n].yAdvance=0)}isDefaultIgnorable(e){let r=e>>16;if(r===0)switch(e>>8){case 0:return e===173;case 3:return e===847;case 6:return e===1564;case 23:return 6068<=e&&e<=6069;case 24:return 6155<=e&&e<=6158;case 32:return 8203<=e&&e<=8207||8234<=e&&e<=8238||8288<=e&&e<=8303;case 254:return 65024<=e&&e<=65039||e===65279;case 255:return 65520<=e&&e<=65528;default:return!1}else switch(r){case 1:return 113824<=e&&e<=113827||119155<=e&&e<=119162;case 14:return 917504<=e&&e<=921599;default:return!1}}getAvailableFeatures(e,r){let a=[];return this.engine&&a.push(...this.engine.getAvailableFeatures(e,r)),this.font.kern&&a.indexOf("kern")===-1&&a.push("kern"),a}stringsForGlyph(e){let r=new Set,a=this.font._cmapProcessor.codePointsForGlyph(e);for(let n of a)r.add(String.fromCodePoint(n));if(this.engine&&this.engine.stringsForGlyph)for(let n of this.engine.stringsForGlyph(e))r.add(n);return Array.from(r)}constructor(e){this.font=e,this.unicodeLayoutEngine=null,this.kernProcessor=null,this.font.morx?this.engine=new ro(this.font):(this.font.GSUB||this.font.GPOS)&&(this.engine=new nl(this.font))}}const sl={moveTo:"M",lineTo:"L",quadraticCurveTo:"Q",bezierCurveTo:"C",closePath:"Z"};class A0{toFunction(){return e=>{this.commands.forEach(r=>e[r.command].apply(e,r.args))}}toSVG(){return this.commands.map(r=>{let a=r.args.map(n=>Math.round(n*100)/100);return`${sl[r.command]}${a.join(" ")}`}).join("")}get cbox(){if(!this._cbox){let e=new Kt;for(let r of this.commands)for(let a=0;a<r.args.length;a+=2)e.addPoint(r.args[a],r.args[a+1]);this._cbox=Object.freeze(e)}return this._cbox}get bbox(){if(this._bbox)return this._bbox;let e=new Kt,r=0,a=0,n=Me=>Math.pow(1-Me,3)*ne[Pe]+3*Math.pow(1-Me,2)*Me*oe[Pe]+3*(1-Me)*Math.pow(Me,2)*Ee[Pe]+Math.pow(Me,3)*it[Pe];for(let Me of this.commands)switch(Me.command){case"moveTo":case"lineTo":let[G,$e]=Me.args;e.addPoint(G,$e),r=G,a=$e;break;case"quadraticCurveTo":case"bezierCurveTo":if(Me.command==="quadraticCurveTo")var[s,i,m,z]=Me.args,u=r+2/3*(s-r),b=a+2/3*(i-a),y=m+2/3*(s-m),C=z+2/3*(i-z);else var[u,b,y,C,m,z]=Me.args;e.addPoint(m,z);for(var ne=[r,a],oe=[u,b],Ee=[y,C],it=[m,z],Pe=0;Pe<=1;Pe++){let ke=6*ne[Pe]-12*oe[Pe]+6*Ee[Pe],ct=-3*ne[Pe]+9*oe[Pe]-9*Ee[Pe]+3*it[Pe];if(Me=3*oe[Pe]-3*ne[Pe],ct===0){if(ke===0)continue;let _e=-Me/ke;0<_e&&_e<1&&(Pe===0?e.addPoint(n(_e),e.maxY):Pe===1&&e.addPoint(e.maxX,n(_e)));continue}let bt=Math.pow(ke,2)-4*Me*ct;if(bt<0)continue;let Ye=(-ke+Math.sqrt(bt))/(2*ct);0<Ye&&Ye<1&&(Pe===0?e.addPoint(n(Ye),e.maxY):Pe===1&&e.addPoint(e.maxX,n(Ye)));let Ct=(-ke-Math.sqrt(bt))/(2*ct);0<Ct&&Ct<1&&(Pe===0?e.addPoint(n(Ct),e.maxY):Pe===1&&e.addPoint(e.maxX,n(Ct)))}r=m,a=z;break}return this._bbox=Object.freeze(e)}mapPoints(e){let r=new A0;for(let a of this.commands){let n=[];for(let s=0;s<a.args.length;s+=2){let[i,u]=e(a.args[s],a.args[s+1]);n.push(i,u)}r[a.command](...n)}return r}transform(e,r,a,n,s,i){return this.mapPoints((u,b)=>{const y=e*u+a*b+s,C=r*u+n*b+i;return[y,C]})}translate(e,r){return this.transform(1,0,0,1,e,r)}rotate(e){let r=Math.cos(e),a=Math.sin(e);return this.transform(r,a,-a,r,0,0)}scale(e,r=e){return this.transform(e,0,0,r,0,0)}constructor(){this.commands=[],this._bbox=null,this._cbox=null}}for(let c of["moveTo","lineTo","quadraticCurveTo","bezierCurveTo","closePath"])A0.prototype[c]=function(...e){return this._bbox=this._cbox=null,this.commands.push({command:c,args:e}),this};var z0=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];class Ft{_getPath(){return new A0}_getCBox(){return this.path.cbox}_getBBox(){return this.path.bbox}_getTableMetrics(e){if(this.id<e.metrics.length)return e.metrics.get(this.id);let r=e.metrics.get(e.metrics.length-1);return{advance:r?r.advance:0,bearing:e.bearings.get(this.id-e.metrics.length)||0}}_getMetrics(e){if(this._metrics)return this._metrics;let{advance:r,bearing:a}=this._getTableMetrics(this._font.hmtx);if(this._font.vmtx)var{advance:n,bearing:s}=this._getTableMetrics(this._font.vmtx);else{let i;if((typeof e>"u"||e===null)&&({cbox:e}=this),(i=this._font["OS/2"])&&i.version>0)var n=Math.abs(i.typoAscender-i.typoDescender),s=i.typoAscender-e.maxY;else{let{hhea:u}=this._font;var n=Math.abs(u.ascent-u.descent),s=u.ascent-e.maxY}}return this._font._variationProcessor&&this._font.HVAR&&(r+=this._font._variationProcessor.getAdvanceAdjustment(this.id,this._font.HVAR)),this._metrics={advanceWidth:r,advanceHeight:n,leftBearing:a,topBearing:s}}get cbox(){return this._getCBox()}get bbox(){return this._getBBox()}get path(){return this._getPath()}getScaledPath(e){let r=1/this._font.unitsPerEm*e;return this.path.scale(r)}get advanceWidth(){return this._getMetrics().advanceWidth}get advanceHeight(){return this._getMetrics().advanceHeight}get ligatureCaretPositions(){}_getName(){let{post:e}=this._font;if(!e)return null;switch(e.version){case 1:return z0[this.id];case 2:let r=e.glyphNameIndex[this.id];return r<z0.length?z0[r]:e.names[r-z0.length];case 2.5:return z0[this.id+e.offsets[this.id]];case 4:return String.fromCharCode(e.map[this.id])}}get name(){return this._getName()}render(e,r){e.save();let a=1/this._font.head.unitsPerEm*r;e.scale(a,a),this.path.toFunction()(e),e.fill(),e.restore()}constructor(e,r,a){this.id=e,this.codePoints=r,this._font=a,this.isMark=this.codePoints.length>0&&this.codePoints.every(le.isMark),this.isLigature=this.codePoints.length>1}}A(Y)([Be],Ft.prototype,"cbox",null),A(Y)([Be],Ft.prototype,"bbox",null),A(Y)([Be],Ft.prototype,"path",null),A(Y)([Be],Ft.prototype,"advanceWidth",null),A(Y)([Be],Ft.prototype,"advanceHeight",null),A(Y)([Be],Ft.prototype,"name",null);let Qa=new x.Struct({numberOfContours:t.int16,xMin:t.int16,yMin:t.int16,xMax:t.int16,yMax:t.int16});const ol=1,ll=2,cl=4,fl=8,ul=16,dl=32,hl=1,gc=2,yc=4,pl=8,en=32,bl=64,$l=128,vl=256,wc=512,mc=1024,Cc=2048,Sc=4096;class Et{copy(){return new Et(this.onCurve,this.endContour,this.x,this.y)}constructor(e,r,a=0,n=0){this.onCurve=e,this.endContour=r,this.x=a,this.y=n}}class xl{constructor(e,r,a){this.glyphID=e,this.dx=r,this.dy=a,this.pos=0,this.scaleX=this.scaleY=1,this.scale01=this.scale10=0}}class kr extends Ft{_getCBox(e){if(this._font._variationProcessor&&!e)return this.path.cbox;let r=this._font._getTableStream("glyf");r.pos+=this._font.loca.offsets[this.id];let a=Qa.decode(r),n=new Kt(a.xMin,a.yMin,a.xMax,a.yMax);return Object.freeze(n)}_parseGlyphCoord(e,r,a,n){if(a){var s=e.readUInt8();n||(s=-s),s+=r}else if(n)var s=r;else var s=r+e.readInt16BE();return s}_decode(){let e=this._font.loca.offsets[this.id],r=this._font.loca.offsets[this.id+1];if(e===r)return null;let a=this._font._getTableStream("glyf");a.pos+=e;let n=a.pos,s=Qa.decode(a);return s.numberOfContours>0?this._decodeSimple(s,a):s.numberOfContours<0&&this._decodeComposite(s,a,n),s}_decodeSimple(e,r){e.points=[];let a=new h.Array(t.uint16,e.numberOfContours).decode(r);e.instructions=new h.Array(t.uint8,t.uint16).decode(r);let n=[],s=a[a.length-1]+1;for(;n.length<s;){var i=r.readUInt8();if(n.push(i),i&fl){let C=r.readUInt8();for(let m=0;m<C;m++)n.push(i)}}for(var u=0;u<n.length;u++){var i=n[u];let m=new Et(!!(i&ol),a.indexOf(u)>=0,0,0);e.points.push(m)}let b=0;for(var u=0;u<n.length;u++){var i=n[u];e.points[u].x=b=this._parseGlyphCoord(r,b,i&ll,i&ul)}let y=0;for(var u=0;u<n.length;u++){var i=n[u];e.points[u].y=y=this._parseGlyphCoord(r,y,i&cl,i&dl)}if(this._font._variationProcessor){let C=e.points.slice();C.push(...this._getPhantomPoints(e)),this._font._variationProcessor.transformPoints(this.id,C),e.phantomPoints=C.slice(-4)}}_decodeComposite(e,r,a=0){e.components=[];let n=!1,s=en;for(;s&en;){s=r.readUInt16BE();let y=r.pos-a,C=r.readUInt16BE();if(n||(n=(s&vl)!==0),s&hl)var i=r.readInt16BE(),u=r.readInt16BE();else var i=r.readInt8(),u=r.readInt8();var b=new xl(C,i,u);b.pos=y,s&pl?b.scaleX=b.scaleY=(r.readUInt8()<<24|r.readUInt8()<<16)/1073741824:s&bl?(b.scaleX=(r.readUInt8()<<24|r.readUInt8()<<16)/1073741824,b.scaleY=(r.readUInt8()<<24|r.readUInt8()<<16)/1073741824):s&$l&&(b.scaleX=(r.readUInt8()<<24|r.readUInt8()<<16)/1073741824,b.scale01=(r.readUInt8()<<24|r.readUInt8()<<16)/1073741824,b.scale10=(r.readUInt8()<<24|r.readUInt8()<<16)/1073741824,b.scaleY=(r.readUInt8()<<24|r.readUInt8()<<16)/1073741824),e.components.push(b)}if(this._font._variationProcessor){let y=[];for(let C=0;C<e.components.length;C++){var b=e.components[C];y.push(new Et(!0,!0,b.dx,b.dy))}y.push(...this._getPhantomPoints(e)),this._font._variationProcessor.transformPoints(this.id,y),e.phantomPoints=y.splice(-4,4);for(let C=0;C<y.length;C++){let m=y[C];e.components[C].dx=m.x,e.components[C].dy=m.y}}return n}_getPhantomPoints(e){let r=this._getCBox(!0);this._metrics==null&&(this._metrics=Ft.prototype._getMetrics.call(this,r));let{advanceWidth:a,advanceHeight:n,leftBearing:s,topBearing:i}=this._metrics;return[new Et(!1,!0,e.xMin-s,0),new Et(!1,!0,e.xMin-s+a,0),new Et(!1,!0,0,e.yMax+i),new Et(!1,!0,0,e.yMax+i+n)]}_getContours(){let e=this._decode();if(!e)return[];let r=[];if(e.numberOfContours<0)for(let i of e.components){let u=this._font.getGlyph(i.glyphID)._getContours();for(let b=0;b<u.length;b++){let y=u[b];for(let C=0;C<y.length;C++){let m=y[C],z=m.x*i.scaleX+m.y*i.scale01+i.dx,ne=m.y*i.scaleY+m.x*i.scale10+i.dy;r.push(new Et(m.onCurve,m.endContour,z,ne))}}}else r=e.points||[];e.phantomPoints&&!this._font.directory.tables.HVAR&&(this._metrics.advanceWidth=e.phantomPoints[1].x-e.phantomPoints[0].x,this._metrics.advanceHeight=e.phantomPoints[3].y-e.phantomPoints[2].y,this._metrics.leftBearing=e.xMin-e.phantomPoints[0].x,this._metrics.topBearing=e.phantomPoints[2].y-e.yMax);let a=[],n=[];for(let i=0;i<r.length;i++){var s=r[i];n.push(s),s.endContour&&(a.push(n),n=[])}return a}_getMetrics(){if(this._metrics)return this._metrics;let e=this._getCBox(!0);return super._getMetrics(e),this._font._variationProcessor&&!this._font.HVAR&&this.path,this._metrics}_getPath(){let e=this._getContours(),r=new A0;for(let n=0;n<e.length;n++){let s=e[n],i=s[0],u=s[s.length-1],b=0;if(i.onCurve){var a=null;b=1}else{u.onCurve?i=u:i=new Et(!1,!1,(i.x+u.x)/2,(i.y+u.y)/2);var a=i}r.moveTo(i.x,i.y);for(let y=b;y<s.length;y++){let C=s[y],m=y===0?i:s[y-1];if(m.onCurve&&C.onCurve)r.lineTo(C.x,C.y);else if(m.onCurve&&!C.onCurve)var a=C;else if(!m.onCurve&&!C.onCurve){let ne=(m.x+C.x)/2,oe=(m.y+C.y)/2;r.quadraticCurveTo(m.x,m.y,ne,oe);var a=C}else if(!m.onCurve&&C.onCurve){r.quadraticCurveTo(a.x,a.y,C.x,C.y);var a=null}else throw new Error("Unknown TTF path state")}a&&r.quadraticCurveTo(a.x,a.y,i.x,i.y),r.closePath()}return r}constructor(...e){super(...e),A(W)(this,"type","TTF")}}class gl extends Ft{_getName(){return this._font.CFF2?super._getName():this._font["CFF "].getGlyphName(this.id)}bias(e){return e.length<1240?107:e.length<33900?1131:32768}_getPath(){let e=this._font.CFF2||this._font["CFF "],{stream:r}=e,a=e.topDict.CharStrings[this.id],n=a.offset+a.length;r.pos=a.offset;let s=new A0,i=[],u=[],b=null,y=0,C=0,m=0,z,ne,oe=!1;this._usedGsubrs=z={},this._usedSubrs=ne={};let Ee=e.globalSubrIndex||[],it=this.bias(Ee),Pe=e.privateDictForGlyph(this.id)||{},Me=Pe.Subrs||[],G=this.bias(Me),$e=e.topDict.vstore&&e.topDict.vstore.itemVariationStore,ke=Pe.vsindex,ct=this._font._variationProcessor;function bt(){b==null&&(b=i.shift()+Pe.nominalWidthX)}function Ye(){return i.length%2!==0&&bt(),y+=i.length>>1,i.length=0}function Ct(kt,Lt){oe&&s.closePath(),s.moveTo(kt,Lt),oe=!0}let _e=function(){for(;r.pos<n;){let mt=r.readUInt8();if(mt<32){let P0,Dt,e0;switch(mt){case 1:case 3:case 18:case 23:Ye();break;case 4:i.length>1&&bt(),m+=i.shift(),Ct(C,m);break;case 5:for(;i.length>=2;)C+=i.shift(),m+=i.shift(),s.lineTo(C,m);break;case 6:case 7:for(e0=mt===6;i.length>=1;)e0?C+=i.shift():m+=i.shift(),s.lineTo(C,m),e0=!e0;break;case 8:for(;i.length>0;){var Qe=C+i.shift(),et=m+i.shift(),tt=Qe+i.shift(),rt=et+i.shift();C=tt+i.shift(),m=rt+i.shift(),s.bezierCurveTo(Qe,et,tt,rt,C,m)}break;case 10:if(P0=i.pop()+G,Dt=Me[P0],Dt){ne[P0]=!0;var kt=r.pos,Lt=n;r.pos=Dt.offset,n=Dt.offset+Dt.length,_e(),r.pos=kt,n=Lt}break;case 11:if(e.version>=2)break;return;case 14:if(e.version>=2)break;i.length>0&&bt(),oe&&(s.closePath(),oe=!1);break;case 15:if(e.version<2)throw new Error("vsindex operator not supported in CFF v1");ke=i.pop();break;case 16:{if(e.version<2)throw new Error("blend operator not supported in CFF v1");if(!ct)throw new Error("blend operator in non-variation font");let Xe=ct.getBlendVector($e,ke),ut=i.pop(),Or=ut*Xe.length,At=i.length-Or,Tr=At-ut;for(let I0=0;I0<ut;I0++){let Fr=i[Tr+I0];for(let H0=0;H0<Xe.length;H0++)Fr+=Xe[H0]*i[At++];i[Tr+I0]=Fr}for(;Or--;)i.pop();break}case 19:case 20:Ye(),r.pos+=y+7>>3;break;case 21:i.length>2&&bt(),C+=i.shift(),m+=i.shift(),Ct(C,m);break;case 22:i.length>1&&bt(),C+=i.shift(),Ct(C,m);break;case 24:for(;i.length>=8;){var Qe=C+i.shift(),et=m+i.shift(),tt=Qe+i.shift(),rt=et+i.shift();C=tt+i.shift(),m=rt+i.shift(),s.bezierCurveTo(Qe,et,tt,rt,C,m)}C+=i.shift(),m+=i.shift(),s.lineTo(C,m);break;case 25:for(;i.length>=8;)C+=i.shift(),m+=i.shift(),s.lineTo(C,m);var Qe=C+i.shift(),et=m+i.shift(),tt=Qe+i.shift(),rt=et+i.shift();C=tt+i.shift(),m=rt+i.shift(),s.bezierCurveTo(Qe,et,tt,rt,C,m);break;case 26:for(i.length%2&&(C+=i.shift());i.length>=4;)Qe=C,et=m+i.shift(),tt=Qe+i.shift(),rt=et+i.shift(),C=tt,m=rt+i.shift(),s.bezierCurveTo(Qe,et,tt,rt,C,m);break;case 27:for(i.length%2&&(m+=i.shift());i.length>=4;)Qe=C+i.shift(),et=m,tt=Qe+i.shift(),rt=et+i.shift(),C=tt+i.shift(),m=rt,s.bezierCurveTo(Qe,et,tt,rt,C,m);break;case 28:i.push(r.readInt16BE());break;case 29:if(P0=i.pop()+it,Dt=Ee[P0],Dt){z[P0]=!0;var kt=r.pos,Lt=n;r.pos=Dt.offset,n=Dt.offset+Dt.length,_e(),r.pos=kt,n=Lt}break;case 30:case 31:for(e0=mt===31;i.length>=4;)e0?(Qe=C+i.shift(),et=m,tt=Qe+i.shift(),rt=et+i.shift(),m=rt+i.shift(),C=tt+(i.length===1?i.shift():0)):(Qe=C,et=m+i.shift(),tt=Qe+i.shift(),rt=et+i.shift(),C=tt+i.shift(),m=rt+(i.length===1?i.shift():0)),s.bezierCurveTo(Qe,et,tt,rt,C,m),e0=!e0;break;case 12:switch(mt=r.readUInt8(),mt){case 3:let Xe=i.pop(),ut=i.pop();i.push(Xe&&ut?1:0);break;case 4:Xe=i.pop(),ut=i.pop(),i.push(Xe||ut?1:0);break;case 5:Xe=i.pop(),i.push(Xe?0:1);break;case 9:Xe=i.pop(),i.push(Math.abs(Xe));break;case 10:Xe=i.pop(),ut=i.pop(),i.push(Xe+ut);break;case 11:Xe=i.pop(),ut=i.pop(),i.push(Xe-ut);break;case 12:Xe=i.pop(),ut=i.pop(),i.push(Xe/ut);break;case 14:Xe=i.pop(),i.push(-Xe);break;case 15:Xe=i.pop(),ut=i.pop(),i.push(Xe===ut?1:0);break;case 18:i.pop();break;case 20:let Or=i.pop(),At=i.pop();u[At]=Or;break;case 21:At=i.pop(),i.push(u[At]||0);break;case 22:let Tr=i.pop(),I0=i.pop(),Fr=i.pop(),H0=i.pop();i.push(Fr<=H0?Tr:I0);break;case 23:i.push(Math.random());break;case 24:Xe=i.pop(),ut=i.pop(),i.push(Xe*ut);break;case 26:Xe=i.pop(),i.push(Math.sqrt(Xe));break;case 27:Xe=i.pop(),i.push(Xe,Xe);break;case 28:Xe=i.pop(),ut=i.pop(),i.push(ut,Xe);break;case 29:At=i.pop(),At<0?At=0:At>i.length-1&&(At=i.length-1),i.push(i[At]);break;case 30:let Br=i.pop(),W0=i.pop();if(W0>=0)for(;W0>0;){var ta=i[Br-1];for(let Rt=Br-2;Rt>=0;Rt--)i[Rt+1]=i[Rt];i[0]=ta,W0--}else for(;W0<0;){var ta=i[0];for(let Lr=0;Lr<=Br;Lr++)i[Lr]=i[Lr+1];i[Br-1]=ta,W0++}break;case 34:Qe=C+i.shift(),et=m,tt=Qe+i.shift(),rt=et+i.shift();let X0=tt+i.shift(),q0=rt,j0=X0+i.shift(),Y0=q0,K0=j0+i.shift(),Z0=Y0,J0=K0+i.shift(),_0=Z0;C=J0,m=_0,s.bezierCurveTo(Qe,et,tt,rt,X0,q0),s.bezierCurveTo(j0,Y0,K0,Z0,J0,_0);break;case 35:let t0=[];for(let Rt=0;Rt<=5;Rt++)C+=i.shift(),m+=i.shift(),t0.push(C,m);s.bezierCurveTo(...t0.slice(0,6)),s.bezierCurveTo(...t0.slice(6)),i.shift();break;case 36:Qe=C+i.shift(),et=m+i.shift(),tt=Qe+i.shift(),rt=et+i.shift(),X0=tt+i.shift(),q0=rt,j0=X0+i.shift(),Y0=q0,K0=j0+i.shift(),Z0=Y0+i.shift(),J0=K0+i.shift(),_0=Z0,C=J0,m=_0,s.bezierCurveTo(Qe,et,tt,rt,X0,q0),s.bezierCurveTo(j0,Y0,K0,Z0,J0,_0);break;case 37:let bn=C,$n=m;t0=[];for(let Rt=0;Rt<=4;Rt++)C+=i.shift(),m+=i.shift(),t0.push(C,m);Math.abs(C-bn)>Math.abs(m-$n)?(C+=i.shift(),m=$n):(C=bn,m+=i.shift()),t0.push(C,m),s.bezierCurveTo(...t0.slice(0,6)),s.bezierCurveTo(...t0.slice(6));break;default:throw new Error(`Unknown op: 12 ${mt}`)}break;default:throw new Error(`Unknown op: ${mt}`)}}else if(mt<247)i.push(mt-139);else if(mt<251){var ra=r.readUInt8();i.push((mt-247)*256+ra+108)}else if(mt<255){var ra=r.readUInt8();i.push(-(mt-251)*256-ra-108)}else i.push(r.readInt32BE()/65536)}};return _e(),oe&&s.closePath(),s}constructor(...e){super(...e),A(W)(this,"type","CFF")}}let yl=new x.Struct({originX:t.uint16,originY:t.uint16,type:new P.String(4),data:new w.Buffer(c=>c.parent.buflen-c._currentOffset)});class wl extends kr{getImageForSize(e){for(let i=0;i<this._font.sbix.imageTables.length;i++){var r=this._font.sbix.imageTables[i];if(r.ppem>=e)break}let a=r.imageOffsets,n=a[this.id],s=a[this.id+1];return n===s?null:(this._font.stream.pos=n,yl.decode(this._font.stream,{buflen:s-n}))}render(e,r){let a=this.getImageForSize(r);if(a!=null){let n=r/this._font.unitsPerEm;e.image(a.data,{height:r,x:a.originX,y:(this.bbox.minY-a.originY)*n})}this._font.sbix.flags.renderOutlines&&super.render(e,r)}constructor(...e){super(...e),A(W)(this,"type","SBIX")}}class tn{constructor(e,r){this.glyph=e,this.color=r}}class ml extends Ft{_getBBox(){let e=new Kt;for(let r=0;r<this.layers.length;r++){let n=this.layers[r].glyph.bbox;e.addPoint(n.minX,n.minY),e.addPoint(n.maxX,n.maxY)}return e}get layers(){let e=this._font.CPAL,r=this._font.COLR,a=0,n=r.baseGlyphRecord.length-1;for(;a<=n;){let C=a+n>>1;var s=r.baseGlyphRecord[C];if(this.id<s.gid)n=C-1;else if(this.id>s.gid)a=C+1;else{var i=s;break}}if(i==null){var u=this._font._getBaseGlyph(this.id),b={red:0,green:0,blue:0,alpha:255};return[new tn(u,b)]}let y=[];for(let C=i.firstLayerIndex;C<i.firstLayerIndex+i.numLayers;C++){var s=r.layerRecords[C],b=e.colorRecords[s.paletteIndex],u=this._font._getBaseGlyph(s.gid);y.push(new tn(u,b))}return y}render(e,r){for(let{glyph:a,color:n}of this.layers)e.fillColor([n.red,n.green,n.blue],n.alpha/255*100),a.render(e,r)}constructor(...e){super(...e),A(W)(this,"type","COLR")}}const Cl=32768,Sl=4095,Al=32768,rn=16384,Pl=8192,an=4095,nn=128,sn=127,Il=128,El=64,kl=63;class Ol{normalizeCoords(e){let r=[];for(var a=0;a<this.font.fvar.axis.length;a++){let n=this.font.fvar.axis[a];e[a]<n.defaultValue?r.push((e[a]-n.defaultValue+Number.EPSILON)/(n.defaultValue-n.minValue+Number.EPSILON)):r.push((e[a]-n.defaultValue+Number.EPSILON)/(n.maxValue-n.defaultValue+Number.EPSILON))}if(this.font.avar)for(var a=0;a<this.font.avar.segment.length;a++){let s=this.font.avar.segment[a];for(let i=0;i<s.correspondence.length;i++){let u=s.correspondence[i];if(i>=1&&r[a]<u.fromCoord){let b=s.correspondence[i-1];r[a]=((r[a]-b.fromCoord)*(u.toCoord-b.toCoord)+Number.EPSILON)/(u.fromCoord-b.fromCoord+Number.EPSILON)+b.toCoord;break}}}return r}transformPoints(e,r){if(!this.font.fvar||!this.font.gvar)return;let{gvar:a}=this.font;if(e>=a.glyphCount)return;let n=a.offsets[e];if(n===a.offsets[e+1])return;let{stream:s}=this.font;if(s.pos=n,s.pos>=s.length)return;let i=s.readUInt16BE(),u=n+s.readUInt16BE();if(i&Cl){var b=s.pos;s.pos=u;var y=this.decodePoints();u=s.pos,s.pos=b}let C=r.map(it=>it.copy());i&=Sl;for(let it=0;it<i;it++){let Pe=s.readUInt16BE(),Me=s.readUInt16BE();if(Me&Al){var m=[];for(let Ye=0;Ye<a.axisCount;Ye++)m.push(s.readInt16BE()/16384)}else{if((Me&an)>=a.globalCoordCount)throw new Error("Invalid gvar table");var m=a.globalCoords[Me&an]}if(Me&rn){var z=[];for(let Ye=0;Ye<a.axisCount;Ye++)z.push(s.readInt16BE()/16384);var ne=[];for(let Ye=0;Ye<a.axisCount;Ye++)ne.push(s.readInt16BE()/16384)}let G=this.tupleFactor(Me,m,z,ne);if(G===0){u+=Pe;continue}var b=s.pos;if(s.pos=u,Me&Pl)var oe=this.decodePoints();else var oe=y;let ke=oe.length===0?r.length:oe.length,ct=this.decodeDeltas(ke),bt=this.decodeDeltas(ke);if(oe.length===0)for(let Ye=0;Ye<r.length;Ye++){var Ee=r[Ye];Ee.x+=Math.round(ct[Ye]*G),Ee.y+=Math.round(bt[Ye]*G)}else{let Ye=C.map(_e=>_e.copy()),Ct=r.map(()=>!1);for(let _e=0;_e<oe.length;_e++){let kt=oe[_e];if(kt<r.length){let Lt=Ye[kt];Ct[kt]=!0,Lt.x+=Math.round(ct[_e]*G),Lt.y+=Math.round(bt[_e]*G)}}this.interpolateMissingDeltas(Ye,C,Ct);for(let _e=0;_e<r.length;_e++){let kt=Ye[_e].x-C[_e].x,Lt=Ye[_e].y-C[_e].y;r[_e].x+=kt,r[_e].y+=Lt}}u+=Pe,s.pos=b}}decodePoints(){let e=this.font.stream,r=e.readUInt8();r&nn&&(r=(r&sn)<<8|e.readUInt8());let a=new Uint16Array(r),n=0,s=0;for(;n<r;){let i=e.readUInt8(),u=(i&sn)+1,b=i&nn?e.readUInt16:e.readUInt8;for(let y=0;y<u&&n<r;y++)s+=b.call(e),a[n++]=s}return a}decodeDeltas(e){let r=this.font.stream,a=0,n=new Int16Array(e);for(;a<e;){let s=r.readUInt8(),i=(s&kl)+1;if(s&Il)a+=i;else{let u=s&El?r.readInt16BE:r.readInt8;for(let b=0;b<i&&a<e;b++)n[a++]=u.call(r)}}return n}tupleFactor(e,r,a,n){let s=this.normalizedCoords,{gvar:i}=this.font,u=1;for(let b=0;b<i.axisCount;b++)if(r[b]!==0){if(s[b]===0)return 0;if(e&rn){if(s[b]<a[b]||s[b]>n[b])return 0;s[b]<r[b]?u=u*(s[b]-a[b]+Number.EPSILON)/(r[b]-a[b]+Number.EPSILON):u=u*(n[b]-s[b]+Number.EPSILON)/(n[b]-r[b]+Number.EPSILON)}else{if(s[b]<Math.min(0,r[b])||s[b]>Math.max(0,r[b]))return 0;u=(u*s[b]+Number.EPSILON)/(r[b]+Number.EPSILON)}}return u}interpolateMissingDeltas(e,r,a){if(e.length===0)return;let n=0;for(;n<e.length;){let s=n,i=n,u=e[i];for(;!u.endContour;)u=e[++i];for(;n<=i&&!a[n];)n++;if(n>i)continue;let b=n,y=n;for(n++;n<=i;)a[n]&&(this.deltaInterpolate(y+1,n-1,y,n,r,e),y=n),n++;y===b?this.deltaShift(s,i,y,r,e):(this.deltaInterpolate(y+1,i,y,b,r,e),b>0&&this.deltaInterpolate(s,b-1,y,b,r,e)),n=i+1}}deltaInterpolate(e,r,a,n,s,i){if(e>r)return;let u=["x","y"];for(let y=0;y<u.length;y++){let C=u[y];if(s[a][C]>s[n][C]){var b=a;a=n,n=b}let m=s[a][C],z=s[n][C],ne=i[a][C],oe=i[n][C];if(m!==z||ne===oe){let Ee=m===z?0:(oe-ne)/(z-m);for(let it=e;it<=r;it++){let Pe=s[it][C];Pe<=m?Pe+=ne-m:Pe>=z?Pe+=oe-z:Pe=ne+(Pe-m)*Ee,i[it][C]=Pe}}}}deltaShift(e,r,a,n,s){let i=s[a].x-n[a].x,u=s[a].y-n[a].y;if(!(i===0&&u===0))for(let b=e;b<=r;b++)b!==a&&(s[b].x+=i,s[b].y+=u)}getAdvanceAdjustment(e,r){let a,n;if(r.advanceWidthMapping){let s=e;s>=r.advanceWidthMapping.mapCount&&(s=r.advanceWidthMapping.mapCount-1);let i=r.advanceWidthMapping.entryFormat;({outerIndex:a,innerIndex:n}=r.advanceWidthMapping.mapData[s])}else a=0,n=e;return this.getDelta(r.itemVariationStore,a,n)}getDelta(e,r,a){if(r>=e.itemVariationData.length)return 0;let n=e.itemVariationData[r];if(a>=n.deltaSets.length)return 0;let s=n.deltaSets[a],i=this.getBlendVector(e,r),u=0;for(let b=0;b<n.regionIndexCount;b++)u+=s.deltas[b]*i[b];return u}getBlendVector(e,r){let a=e.itemVariationData[r];if(this.blendVectors.has(a))return this.blendVectors.get(a);let n=this.normalizedCoords,s=[];for(let i=0;i<a.regionIndexCount;i++){let u=1,b=a.regionIndexes[i],y=e.variationRegionList.variationRegions[b];for(let C=0;C<y.length;C++){let m=y[C],z;m.startCoord>m.peakCoord||m.peakCoord>m.endCoord||m.startCoord<0&&m.endCoord>0&&m.peakCoord!==0||m.peakCoord===0?z=1:n[C]<m.startCoord||n[C]>m.endCoord?z=0:n[C]===m.peakCoord?z=1:n[C]<m.peakCoord?z=(n[C]-m.startCoord+Number.EPSILON)/(m.peakCoord-m.startCoord+Number.EPSILON):z=(m.endCoord-n[C]+Number.EPSILON)/(m.endCoord-m.peakCoord+Number.EPSILON),u*=z}s[i]=u}return this.blendVectors.set(a,s),s}constructor(e,r){this.font=e,this.normalizedCoords=this.normalizeCoords(r),this.blendVectors=new Map}}const Ac=Promise.resolve();class on{includeGlyph(e){return typeof e=="object"&&(e=e.id),this.mapping[e]==null&&(this.glyphs.push(e),this.mapping[e]=this.glyphs.length-1),this.mapping[e]}constructor(e){this.font=e,this.glyphs=[],this.mapping={},this.includeGlyph(0)}}const Tl=1,Fl=2,Bl=4,Ll=8,Dl=16,Rl=32;class ln{static size(e){return e>=0&&e<=255?1:2}static encode(e,r){r>=0&&r<=255?e.writeUInt8(r):e.writeInt16BE(r)}}let cn=new x.Struct({numberOfContours:t.int16,xMin:t.int16,yMin:t.int16,xMax:t.int16,yMax:t.int16,endPtsOfContours:new h.Array(t.uint16,"numberOfContours"),instructions:new h.Array(t.uint8,t.uint16),flags:new h.Array(t.uint8,0),xPoints:new h.Array(ln,0),yPoints:new h.Array(ln,0)});class Nl{encodeSimple(e,r=[]){let a=[],n=[],s=[],i=[],u=0,b=0,y=0,C=0,m=0;for(let Pe=0;Pe<e.commands.length;Pe++){let Me=e.commands[Pe];for(let G=0;G<Me.args.length;G+=2){let $e=Me.args[G],ke=Me.args[G+1],ct=0;if(Me.command==="quadraticCurveTo"&&G===2){let bt=e.commands[Pe+1];if(bt&&bt.command==="quadraticCurveTo"){let Ye=(b+bt.args[0])/2,Ct=(y+bt.args[1])/2;if($e===Ye&&ke===Ct)continue}}Me.command==="quadraticCurveTo"&&G===0||(ct|=Tl),ct=this._encodePoint($e,b,n,ct,Fl,Dl),ct=this._encodePoint(ke,y,s,ct,Bl,Rl),ct===C&&u<255?(i[i.length-1]|=Ll,u++):(u>0&&(i.push(u),u=0),i.push(ct),C=ct),b=$e,y=ke,m++}Me.command==="closePath"&&a.push(m-1)}e.commands.length>1&&e.commands[e.commands.length-1].command!=="closePath"&&a.push(m-1);let z=e.bbox,ne={numberOfContours:a.length,xMin:z.minX,yMin:z.minY,xMax:z.maxX,yMax:z.maxY,endPtsOfContours:a,instructions:r,flags:i,xPoints:n,yPoints:s},oe=cn.size(ne),Ee=4-oe%4,it=new se.EncodeStream(oe+Ee);return cn.encode(it,ne),Ee!==0&&it.fill(0,Ee),it.buffer}_encodePoint(e,r,a,n,s,i){let u=e-r;return e===r?n|=i:(-255<=u&&u<=255&&(n|=s,u<0?u=-u:n|=i),a.push(u)),n}}class Ml extends on{_addGlyph(e){let r=this.font.getGlyph(e),a=r._decode(),n=this.font.loca.offsets[e],s=this.font.loca.offsets[e+1],i=this.font._getTableStream("glyf");i.pos+=n;let u=i.readBuffer(s-n);if(a&&a.numberOfContours<0){u=new Uint8Array(u);let b=new DataView(u.buffer);for(let y of a.components)e=this.includeGlyph(y.glyphID),b.setUint16(y.pos,e)}else a&&this.font._variationProcessor&&(u=this.glyphEncoder.encodeSimple(r.path,a.instructions));return this.glyf.push(u),this.loca.offsets.push(this.offset),this.hmtx.metrics.push({advance:r.advanceWidth,bearing:r._getMetrics().leftBearing}),this.offset+=u.length,this.glyf.length-1}encode(){this.glyf=[],this.offset=0,this.loca={offsets:[],version:this.font.loca.version},this.hmtx={metrics:[],bearings:[]};let e=0;for(;e<this.glyphs.length;)this._addGlyph(this.glyphs[e++]);let r=A(Se)(this.font.maxp);r.numGlyphs=this.glyf.length,this.loca.offsets.push(this.offset);let a=A(Se)(this.font.head);a.indexToLocFormat=this.loca.version;let n=A(Se)(this.font.hhea);return n.numberOfMetrics=this.hmtx.metrics.length,Ia.toBuffer({tables:{head:a,hhea:n,loca:this.loca,maxp:r,"cvt ":this.font["cvt "],prep:this.font.prep,glyf:this.glyf,hmtx:this.hmtx,fpgm:this.font.fpgm}})}constructor(e){super(e),this.glyphEncoder=new Nl}}class Ul extends on{subsetCharstrings(){this.charstrings=[];let e={};for(let r of this.glyphs){this.charstrings.push(this.cff.getCharString(r));let a=this.font.getGlyph(r),n=a.path;for(let s in a._usedGsubrs)e[s]=!0}this.gsubrs=this.subsetSubrs(this.cff.globalSubrIndex,e)}subsetSubrs(e,r){let a=[];for(let n=0;n<e.length;n++){let s=e[n];r[n]?(this.cff.stream.pos=s.offset,a.push(this.cff.stream.readBuffer(s.length))):a.push(new Uint8Array([11]))}return a}subsetFontdict(e){e.FDArray=[],e.FDSelect={version:0,fds:[]};let r={},a=[],n={};for(let s of this.glyphs){let i=this.cff.fdForGlyph(s);if(i==null)continue;r[i]||(e.FDArray.push(Object.assign({},this.cff.topDict.FDArray[i])),a.push({}),n[i]=e.FDArray.length-1),r[i]=!0,e.FDSelect.fds.push(n[i]);let u=this.font.getGlyph(s),b=u.path;for(let y in u._usedSubrs)a[n[i]][y]=!0}for(let s=0;s<e.FDArray.length;s++){let i=e.FDArray[s];delete i.FontName,i.Private&&i.Private.Subrs&&(i.Private=Object.assign({},i.Private),i.Private.Subrs=this.subsetSubrs(i.Private.Subrs,a[s]))}}createCIDFontdict(e){let r={};for(let n of this.glyphs){let s=this.font.getGlyph(n),i=s.path;for(let u in s._usedSubrs)r[u]=!0}let a=Object.assign({},this.cff.topDict.Private);return this.cff.topDict.Private&&this.cff.topDict.Private.Subrs&&(a.Subrs=this.subsetSubrs(this.cff.topDict.Private.Subrs,r)),e.FDArray=[{Private:a}],e.FDSelect={version:3,nRanges:1,ranges:[{first:0,fd:0}],sentinel:this.charstrings.length}}addString(e){return e?(this.strings||(this.strings=[]),this.strings.push(e),r0.length+this.strings.length-1):null}encode(){this.subsetCharstrings();let e={version:this.charstrings.length>255?2:1,ranges:[{first:1,nLeft:this.charstrings.length-2}]},r=Object.assign({},this.cff.topDict);r.Private=null,r.charset=e,r.Encoding=null,r.CharStrings=this.charstrings;for(let n of["version","Notice","Copyright","FullName","FamilyName","Weight","PostScript","BaseFontName","FontName"])r[n]=this.addString(this.cff.string(r[n]));r.ROS=[this.addString("Adobe"),this.addString("Identity"),0],r.CIDCount=this.charstrings.length,this.cff.isCIDFont?this.subsetFontdict(r):this.createCIDFontdict(r);let a={version:1,hdrSize:this.cff.hdrSize,offSize:4,header:this.cff.header,nameIndex:[this.cff.postscriptName],topDictIndex:[r],stringIndex:this.strings,globalSubrIndex:this.gsubrs};return ua.toBuffer(a)}constructor(e){if(super(e),this.cff=this.font["CFF "],!this.cff)throw new Error("Not a CFF Font")}}class vt{static probe(e){let r=hr.decode(e.slice(0,4));return r==="true"||r==="OTTO"||r===String.fromCharCode(0,1,0,0)}setDefaultLanguage(e=null){this.defaultLanguage=e}_getTable(e){if(!(e.tag in this._tables))try{this._tables[e.tag]=this._decodeTable(e)}catch(r){de&&(console.error(`Error decoding table ${e.tag}`),console.error(r.stack))}return this._tables[e.tag]}_getTableStream(e){let r=this.directory.tables[e];return r?(this.stream.pos=r.offset,this.stream):null}_decodeDirectory(){return this.directory=Ia.decode(this.stream,{_startOffset:0})}_decodeTable(e){let r=this.stream.pos,a=this._getTableStream(e.tag),n=ur[e.tag].decode(a,this,e.length);return this.stream.pos=r,n}getName(e,r=this.defaultLanguage||be){let a=this.name&&this.name.records[e];return a&&(a[r]||a[this.defaultLanguage]||a[be]||a.en||a[Object.keys(a)[0]])||null}get postscriptName(){return this.getName("postscriptName")}get fullName(){return this.getName("fullName")}get familyName(){return this.getName("fontFamily")}get subfamilyName(){return this.getName("fontSubfamily")}get copyright(){return this.getName("copyright")}get version(){return this.getName("version")}get ascent(){return this.hhea.ascent}get descent(){return this.hhea.descent}get lineGap(){return this.hhea.lineGap}get underlinePosition(){return this.post.underlinePosition}get underlineThickness(){return this.post.underlineThickness}get italicAngle(){return this.post.italicAngle}get capHeight(){let e=this["OS/2"];return e?e.capHeight:this.ascent}get xHeight(){let e=this["OS/2"];return e?e.xHeight:0}get numGlyphs(){return this.maxp.numGlyphs}get unitsPerEm(){return this.head.unitsPerEm}get bbox(){return Object.freeze(new Kt(this.head.xMin,this.head.yMin,this.head.xMax,this.head.yMax))}get _cmapProcessor(){return new Xr(this.cmap)}get characterSet(){return this._cmapProcessor.getCharacterSet()}hasGlyphForCodePoint(e){return!!this._cmapProcessor.lookup(e)}glyphForCodePoint(e){return this.getGlyph(this._cmapProcessor.lookup(e),[e])}glyphsForString(e){let r=[],a=e.length,n=0,s=-1,i=-1;for(;n<=a;){let u=0,b=0;if(n<a){if(u=e.charCodeAt(n++),55296<=u&&u<=56319&&n<a){let y=e.charCodeAt(n);56320<=y&&y<=57343&&(n++,u=((u&1023)<<10)+(y&1023)+65536)}b=65024<=u&&u<=65039||917760<=u&&u<=917999?1:0}else n++;i===0&&b===1?r.push(this.getGlyph(this._cmapProcessor.lookup(s,u),[s,u])):i===0&&b===0&&r.push(this.glyphForCodePoint(s)),s=u,i=b}return r}get _layoutEngine(){return new il(this)}layout(e,r,a,n,s){return this._layoutEngine.layout(e,r,a,n,s)}stringsForGlyph(e){return this._layoutEngine.stringsForGlyph(e)}get availableFeatures(){return this._layoutEngine.getAvailableFeatures()}getAvailableFeatures(e,r){return this._layoutEngine.getAvailableFeatures(e,r)}_getBaseGlyph(e,r=[]){return this._glyphs[e]||(this.directory.tables.glyf?this._glyphs[e]=new kr(e,r,this):(this.directory.tables["CFF "]||this.directory.tables.CFF2)&&(this._glyphs[e]=new gl(e,r,this))),this._glyphs[e]||null}getGlyph(e,r=[]){return this._glyphs[e]||(this.directory.tables.sbix?this._glyphs[e]=new wl(e,r,this):this.directory.tables.COLR&&this.directory.tables.CPAL?this._glyphs[e]=new ml(e,r,this):this._getBaseGlyph(e,r)),this._glyphs[e]||null}createSubset(){return this.directory.tables["CFF "]?new Ul(this):new Ml(this)}get variationAxes(){let e={};if(!this.fvar)return e;for(let r of this.fvar.axis)e[r.axisTag.trim()]={name:r.name.en,min:r.minValue,default:r.defaultValue,max:r.maxValue};return e}get namedVariations(){let e={};if(!this.fvar)return e;for(let r of this.fvar.instance){let a={};for(let n=0;n<this.fvar.axis.length;n++){let s=this.fvar.axis[n];a[s.axisTag.trim()]=r.coord[n]}e[r.name.en]=a}return e}getVariation(e){if(!(this.directory.tables.fvar&&(this.directory.tables.gvar&&this.directory.tables.glyf||this.directory.tables.CFF2)))throw new Error("Variations require a font with the fvar, gvar and glyf, or CFF2 tables.");if(typeof e=="string"&&(e=this.namedVariations[e]),typeof e!="object")throw new Error("Variation settings must be either a variation name or settings object.");let r=this.fvar.axis.map((s,i)=>{let u=s.axisTag.trim();return u in e?Math.max(s.minValue,Math.min(s.maxValue,e[u])):s.defaultValue}),a=new R.DecodeStream(this.stream.buffer);a.pos=this._directoryPos;let n=new vt(a,r);return n._tables=this._tables,n}get _variationProcessor(){if(!this.fvar)return null;let e=this.variationCoords;return!e&&!this.CFF2?null:(e||(e=this.fvar.axis.map(r=>r.defaultValue)),new Ol(this,e))}getFont(e){return this.getVariation(e)}constructor(e,r=null){A(W)(this,"type","TTF"),this.defaultLanguage=null,this.stream=e,this.variationCoords=r,this._directoryPos=this.stream.pos,this._tables={},this._glyphs={},this._decodeDirectory();for(let a in this.directory.tables){let n=this.directory.tables[a];ur[a]&&n.length>0&&Object.defineProperty(this,a,{get:this._getTable.bind(this,n)})}}}A(Y)([Be],vt.prototype,"bbox",null),A(Y)([Be],vt.prototype,"_cmapProcessor",null),A(Y)([Be],vt.prototype,"characterSet",null),A(Y)([Be],vt.prototype,"_layoutEngine",null),A(Y)([Be],vt.prototype,"variationAxes",null),A(Y)([Be],vt.prototype,"namedVariations",null),A(Y)([Be],vt.prototype,"_variationProcessor",null);let Vl=new x.Struct({tag:new P.String(4),offset:new f.Pointer(t.uint32,"void",{type:"global"}),compLength:t.uint32,length:t.uint32,origChecksum:t.uint32}),fn=new x.Struct({tag:new P.String(4),flavor:t.uint32,length:t.uint32,numTables:t.uint16,reserved:new $.Reserved(t.uint16),totalSfntSize:t.uint32,majorVersion:t.uint16,minorVersion:t.uint16,metaOffset:t.uint32,metaLength:t.uint32,metaOrigLength:t.uint32,privOffset:t.uint32,privLength:t.uint32,tables:new h.Array(Vl,"numTables")});fn.process=function(){let c={};for(let e of this.tables)c[e.tag]=e;this.tables=c};var Gl=fn;class zl extends vt{static probe(e){return hr.decode(e.slice(0,4))==="wOFF"}_decodeDirectory(){this.directory=Gl.decode(this.stream,{_startOffset:0})}_getTableStream(e){let r=this.directory.tables[e];if(r)if(this.stream.pos=r.offset,r.compLength<r.length){this.stream.pos+=2;let a=new Uint8Array(r.length),n=A(X)(this.stream.readBuffer(r.compLength-2),a);return new R.DecodeStream(n)}else return this.stream;return null}constructor(...e){super(...e),A(W)(this,"type","WOFF")}}class Hl extends kr{_decode(){return this._font._transformedGlyphs[this.id]}_getCBox(){return this.path.bbox}constructor(...e){super(...e),A(W)(this,"type","WOFF2")}}const un={decode(c){let e=0,r=[0,1,2,3,4];for(let a=0;a<r.length;a++){let n=r[a],s=c.readUInt8();if(e&3758096384)throw new Error("Overflow");if(e=e<<7|s&127,!(s&128))return e}throw new Error("Bad base 128 number")}};let Wl=["cmap","head","hhea","hmtx","maxp","name","OS/2","post","cvt ","fpgm","glyf","loca","prep","CFF ","VORG","EBDT","EBLC","gasp","hdmx","kern","LTSH","PCLT","VDMX","vhea","vmtx","BASE","GDEF","GPOS","GSUB","EBSC","JSTF","MATH","CBDT","CBLC","COLR","CPAL","SVG ","sbix","acnt","avar","bdat","bloc","bsln","cvar","fdsc","feat","fmtx","fvar","gvar","hsty","just","lcar","mort","morx","opbd","prop","trak","Zapf","Silf","Glat","Gloc","Feat","Sill"],Xl=new x.Struct({flags:t.uint8,customTag:new re.Optional(new P.String(4),c=>(c.flags&63)===63),tag:c=>c.customTag||Wl[c.flags&63],length:un,transformVersion:c=>c.flags>>>6&3,transformed:c=>c.tag==="glyf"||c.tag==="loca"?c.transformVersion===0:c.transformVersion!==0,transformLength:new re.Optional(un,c=>c.transformed)}),dn=new x.Struct({tag:new P.String(4),flavor:t.uint32,length:t.uint32,numTables:t.uint16,reserved:new $.Reserved(t.uint16),totalSfntSize:t.uint32,totalCompressedSize:t.uint32,majorVersion:t.uint16,minorVersion:t.uint16,metaOffset:t.uint32,metaLength:t.uint32,metaOrigLength:t.uint32,privOffset:t.uint32,privLength:t.uint32,tables:new h.Array(Xl,"numTables")});dn.process=function(){let c={};for(let e=0;e<this.tables.length;e++){let r=this.tables[e];c[r.tag]=r}return this.tables=c};var ql=dn;class jl extends vt{static probe(e){return hr.decode(e.slice(0,4))==="wOF2"}_decodeDirectory(){this.directory=ql.decode(this.stream),this._dataPos=this.stream.pos}_decompress(){if(!this._decompressed){this.stream.pos=this._dataPos;let e=this.stream.readBuffer(this.directory.totalCompressedSize),r=0;for(let n in this.directory.tables){let s=this.directory.tables[n];s.offset=r,r+=s.transformLength!=null?s.transformLength:s.length}let a=A(Z)(e,r);if(!a)throw new Error("Error decoding compressed data in WOFF2");this.stream=new R.DecodeStream(a),this._decompressed=!0}}_decodeTable(e){return this._decompress(),super._decodeTable(e)}_getBaseGlyph(e,r=[]){if(!this._glyphs[e])return this.directory.tables.glyf&&this.directory.tables.glyf.transformed?(this._transformedGlyphs||this._transformGlyfTable(),this._glyphs[e]=new Hl(e,r,this)):super._getBaseGlyph(e,r)}_transformGlyfTable(){this._decompress(),this.stream.pos=this.directory.tables.glyf.offset;let e=Yl.decode(this.stream),r=[];for(let n=0;n<e.numGlyphs;n++){let s={},i=e.nContours.readInt16BE();if(s.numberOfContours=i,i>0){let u=[],b=0;for(let y=0;y<i;y++){let C=ea(e.nPoints);b+=C,u.push(b)}s.points=_l(e.flags,e.glyphs,b);for(let y=0;y<i;y++)s.points[u[y]-1].endContour=!0;var a=ea(e.glyphs)}else if(i<0&&kr.prototype._decodeComposite.call({_font:this},s,e.composites))var a=ea(e.glyphs);r.push(s)}this._transformedGlyphs=r}constructor(...e){super(...e),A(W)(this,"type","WOFF2")}}class f0{decode(e,r){return new R.DecodeStream(this._buf.decode(e,r))}constructor(e){this.length=e,this._buf=new w.Buffer(e)}}let Yl=new x.Struct({version:t.uint32,numGlyphs:t.uint16,indexFormat:t.uint16,nContourStreamSize:t.uint32,nPointsStreamSize:t.uint32,flagStreamSize:t.uint32,glyphStreamSize:t.uint32,compositeStreamSize:t.uint32,bboxStreamSize:t.uint32,instructionStreamSize:t.uint32,nContours:new f0("nContourStreamSize"),nPoints:new f0("nPointsStreamSize"),flags:new f0("flagStreamSize"),glyphs:new f0("glyphStreamSize"),composites:new f0("compositeStreamSize"),bboxes:new f0("bboxStreamSize"),instructions:new f0("instructionStreamSize")});const Kl=253,Zl=254,Jl=255,hn=253;function ea(c){let e=c.readUInt8();return e===Kl?c.readUInt16BE():e===Jl?c.readUInt8()+hn:e===Zl?c.readUInt8()+hn*2:e}function Bt(c,e){return c&1?e:-e}function _l(c,e,r){let a,n=a=0,s=[];for(let b=0;b<r;b++){let y=0,C=0,m=c.readUInt8(),z=!(m>>7);if(m&=127,m<10)y=0,C=Bt(m,((m&14)<<7)+e.readUInt8());else if(m<20)y=Bt(m,((m-10&14)<<7)+e.readUInt8()),C=0;else if(m<84){var i=m-20,u=e.readUInt8();y=Bt(m,1+(i&48)+(u>>4)),C=Bt(m>>1,1+((i&12)<<2)+(u&15))}else if(m<120){var i=m-84;y=Bt(m,1+(i/12<<8)+e.readUInt8()),C=Bt(m>>1,1+(i%12>>2<<8)+e.readUInt8())}else if(m<124){var u=e.readUInt8();let oe=e.readUInt8();y=Bt(m,(u<<4)+(oe>>4)),C=Bt(m>>1,((oe&15)<<8)+e.readUInt8())}else y=Bt(m,e.readUInt16BE()),C=Bt(m>>1,e.readUInt16BE());n+=y,a+=C,s.push(new Et(z,!1,n,a))}return s}let Ql=new p.VersionedStruct(t.uint32,{65536:{numFonts:t.uint32,offsets:new h.Array(t.uint32,"numFonts")},131072:{numFonts:t.uint32,offsets:new h.Array(t.uint32,"numFonts"),dsigTag:t.uint32,dsigLength:t.uint32,dsigOffset:t.uint32}});class ec{static probe(e){return hr.decode(e.slice(0,4))==="ttcf"}getFont(e){for(let r of this.header.offsets){let a=new R.DecodeStream(this.stream.buffer);a.pos=r;let n=new vt(a);if(n.postscriptName===e||n.postscriptName instanceof Uint8Array&&e instanceof Uint8Array&&n.postscriptName.every((s,i)=>e[i]===s))return n}return null}get fonts(){let e=[];for(let r of this.header.offsets){let a=new R.DecodeStream(this.stream.buffer);a.pos=r,e.push(new vt(a))}return e}constructor(e){if(A(W)(this,"type","TTC"),this.stream=e,e.readString(4)!=="ttcf")throw new Error("Not a TrueType collection");this.header=Ql.decode(e)}}let tc=new P.String(t.uint8),Pc=new x.Struct({len:t.uint32,buf:new w.Buffer("len")}),rc=new x.Struct({id:t.uint16,nameOffset:t.int16,attr:t.uint8,dataOffset:t.uint24,handle:t.uint32}),ac=new x.Struct({name:new P.String(4),maxTypeIndex:t.uint16,refList:new f.Pointer(t.uint16,new h.Array(rc,c=>c.maxTypeIndex+1),{type:"parent"})}),nc=new x.Struct({length:t.uint16,types:new h.Array(ac,c=>c.length+1)}),ic=new x.Struct({reserved:new $.Reserved(t.uint8,24),typeList:new f.Pointer(t.uint16,nc),nameListOffset:new f.Pointer(t.uint16,"void")}),pn=new x.Struct({dataOffset:t.uint32,map:new f.Pointer(t.uint32,ic),dataLength:t.uint32,mapLength:t.uint32});class sc{static probe(e){let r=new R.DecodeStream(e);try{var a=pn.decode(r)}catch{return!1}for(let n of a.map.typeList.types)if(n.name==="sfnt")return!0;return!1}getFont(e){if(!this.sfnt)return null;for(let r of this.sfnt.refList){let a=this.header.dataOffset+r.dataOffset+4,n=new R.DecodeStream(this.stream.buffer.slice(a)),s=new vt(n);if(s.postscriptName===e||s.postscriptName instanceof Uint8Array&&e instanceof Uint8Array&&s.postscriptName.every((i,u)=>e[u]===i))return s}return null}get fonts(){let e=[];for(let r of this.sfnt.refList){let a=this.header.dataOffset+r.dataOffset+4,n=new R.DecodeStream(this.stream.buffer.slice(a));e.push(new vt(n))}return e}constructor(e){A(W)(this,"type","DFont"),this.stream=e,this.header=pn.decode(this.stream);for(let r of this.header.map.typeList.types){for(let a of r.refList)a.nameOffset>=0?(this.stream.pos=a.nameOffset+this.header.map.nameListOffset,a.name=tc.decode(this.stream)):a.name=null;r.name==="sfnt"&&(this.sfnt=r)}}}ce(vt),ce(zl),ce(jl),ce(ec),ce(sc),me(T.exports,H)}),O.register("fjkYL",function(T,ge){_(T.exports,"PropertyDescriptor",()=>O("67NHT").PropertyDescriptor),_(T.exports,"resolveLength",()=>O("67NHT").resolveLength),_(T.exports,"Fixed",()=>O("QPUOh").Fixed),_(T.exports,"fixed16",()=>O("QPUOh").fixed16),_(T.exports,"fixed32",()=>O("QPUOh").fixed32),_(T.exports,"int16",()=>O("QPUOh").int16),_(T.exports,"int32",()=>O("QPUOh").int32),_(T.exports,"int8",()=>O("QPUOh").int8),_(T.exports,"Number",()=>O("QPUOh").Number),_(T.exports,"uint16",()=>O("QPUOh").uint16),_(T.exports,"uint24",()=>O("QPUOh").uint24),_(T.exports,"uint32",()=>O("QPUOh").uint32),_(T.exports,"uint8",()=>O("QPUOh").uint8),_(T.exports,"Pointer",()=>O("8ILoy").Pointer),_(T.exports,"VoidPointer",()=>O("8ILoy").VoidPointer),_(T.exports,"EncodeStream",()=>O("3pehy").EncodeStream),_(T.exports,"DecodeStream",()=>O("oF6Qu").DecodeStream),_(T.exports,"Array",()=>O("j1YaI").Array),_(T.exports,"LazyArray",()=>O("ccNhw").LazyArray),_(T.exports,"Bitfield",()=>O("fQmG6").Bitfield),_(T.exports,"Buffer",()=>O("4GGKE").Buffer),_(T.exports,"Optional",()=>O("WOuwO").Optional),_(T.exports,"Reserved",()=>O("fSFW4").Reserved),_(T.exports,"String",()=>O("cXHtO").String),_(T.exports,"Struct",()=>O("3RdzP").Struct),_(T.exports,"VersionedStruct",()=>O("58FrE").VersionedStruct);var R=O("3pehy"),x=O("oF6Qu"),t=O("j1YaI"),h=O("ccNhw"),f=O("fQmG6"),p=O("ccz0R"),v=O("4GGKE"),$=O("4vrzH"),S=O("WOuwO"),P=O("fSFW4"),w=O("cXHtO"),te=O("3RdzP"),re=O("58FrE");O("67NHT"),O("QPUOh"),O("8ILoy")}),O.register("3pehy",function(T,ge){_(T.exports,"EncodeStream",()=>h);var R=O("oF6Qu");const x=new TextEncoder,t=new Uint8Array(new Uint16Array([4660]).buffer)[0]==18;class h{constructor($){this.buffer=$,this.view=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),this.pos=0}writeBuffer($){this.buffer.set($,this.pos),this.pos+=$.length}writeString($,S="ascii"){let P;switch(S){case"utf16le":case"utf16-le":case"ucs2":P=f($,t);break;case"utf16be":case"utf16-be":P=f($,!t);break;case"utf8":P=x.encode($);break;case"ascii":P=p($);break;default:throw new Error(`Unsupported encoding: ${S}`)}this.writeBuffer(P)}writeUInt24BE($){this.buffer[this.pos++]=$>>>16&255,this.buffer[this.pos++]=$>>>8&255,this.buffer[this.pos++]=$&255}writeUInt24LE($){this.buffer[this.pos++]=$&255,this.buffer[this.pos++]=$>>>8&255,this.buffer[this.pos++]=$>>>16&255}writeInt24BE($){$>=0?this.writeUInt24BE($):this.writeUInt24BE($+16777215+1)}writeInt24LE($){$>=0?this.writeUInt24LE($):this.writeUInt24LE($+16777215+1)}fill($,S){if(S<this.buffer.length)this.buffer.fill($,this.pos,this.pos+S),this.pos+=S;else{const P=new Uint8Array(S);P.fill($),this.writeBuffer(P)}}}function f(v,$){let S=new Uint16Array(v.length);for(let P=0;P<v.length;P++){let w=v.charCodeAt(P);$&&(w=w>>8|(w&255)<<8),S[P]=w}return new Uint8Array(S.buffer)}function p(v){let $=new Uint8Array(v.length);for(let S=0;S<v.length;S++)$[S]=v.charCodeAt(S);return $}for(let v of Object.getOwnPropertyNames(DataView.prototype))if(v.slice(0,3)==="set"){let $=v.slice(3).replace("Ui","UI");$==="Float32"?$="Float":$==="Float64"&&($="Double");let S=R.DecodeStream.TYPES[$];h.prototype["write"+$+(S===1?"":"BE")]=function(P){this.view[v](this.pos,P,!1),this.pos+=S},S!==1&&(h.prototype["write"+$+"LE"]=function(P){this.view[v](this.pos,P,!0),this.pos+=S})}}),O.register("oF6Qu",function(T,ge){_(T.exports,"DecodeStream",()=>x);const R={utf16le:"utf-16le",ucs2:"utf-16le",utf16be:"utf-16be"};class x{constructor(h){this.buffer=h,this.view=new DataView(h.buffer,h.byteOffset,h.byteLength),this.pos=0,this.length=this.buffer.length}readString(h,f="ascii"){f=R[f]||f;let p=this.readBuffer(h);try{return new TextDecoder(f).decode(p)}catch{return p}}readBuffer(h){return this.buffer.slice(this.pos,this.pos+=h)}readUInt24BE(){return(this.readUInt16BE()<<8)+this.readUInt8()}readUInt24LE(){return this.readUInt16LE()+(this.readUInt8()<<16)}readInt24BE(){return(this.readInt16BE()<<8)+this.readUInt8()}readInt24LE(){return this.readUInt16LE()+(this.readInt8()<<16)}}x.TYPES={UInt8:1,UInt16:2,UInt24:3,UInt32:4,Int8:1,Int16:2,Int24:3,Int32:4,Float:4,Double:8};for(let t of Object.getOwnPropertyNames(DataView.prototype))if(t.slice(0,3)==="get"){let h=t.slice(3).replace("Ui","UI");h==="Float32"?h="Float":h==="Float64"&&(h="Double");let f=x.TYPES[h];x.prototype["read"+h+(f===1?"":"BE")]=function(){const p=this.view[t](this.pos,!1);return this.pos+=f,p},f!==1&&(x.prototype["read"+h+"LE"]=function(){const p=this.view[t](this.pos,!0);return this.pos+=f,p})}}),O.register("j1YaI",function(T,ge){_(T.exports,"Array",()=>h);var R=O("1GNcZ"),x=O("QPUOh"),t=O("67NHT");class h extends R.Base{constructor(p,v,$="count"){super(),this.type=p,this.length=v,this.lengthType=$}decode(p,v){let $;const{pos:S}=p,P=[];let w=v;if(this.length!=null&&($=t.resolveLength(this.length,p,v)),this.length instanceof x.Number&&(Object.defineProperties(P,{parent:{value:v},_startOffset:{value:S},_currentOffset:{value:0,writable:!0},_length:{value:$}}),w=P),$==null||this.lengthType==="bytes"){const te=$!=null?p.pos+$:v?._length?v._startOffset+v._length:p.length;for(;p.pos<te;)P.push(this.type.decode(p,w))}else for(let te=0,re=$;te<re;te++)P.push(this.type.decode(p,w));return P}size(p,v,$=!0){if(!p)return this.type.size(null,v)*t.resolveLength(this.length,null,v);let S=0;this.length instanceof x.Number&&(S+=this.length.size(),v={parent:v,pointerSize:0});for(let P of p)S+=this.type.size(P,v);return v&&$&&this.length instanceof x.Number&&(S+=v.pointerSize),S}encode(p,v,$){let S=$;this.length instanceof x.Number&&(S={pointers:[],startOffset:p.pos,parent:$},S.pointerOffset=p.pos+this.size(v,S,!1),this.length.encode(p,v.length));for(let P of v)this.type.encode(p,P,S);if(this.length instanceof x.Number){let P=0;for(;P<S.pointers.length;){const w=S.pointers[P++];w.type.encode(p,w.val,w.parent)}}}}}),O.register("1GNcZ",function(T,ge){_(T.exports,"Base",()=>t);var R=O("oF6Qu"),x=O("3pehy");class t{fromBuffer(f){let p=new R.DecodeStream(f);return this.decode(p)}toBuffer(f){let p=this.size(f),v=new Uint8Array(p),$=new x.EncodeStream(v);return this.encode($,f),v}}}),O.register("QPUOh",function(T,ge){_(T.exports,"Number",()=>t),_(T.exports,"uint8",()=>h),_(T.exports,"uint16",()=>p),_(T.exports,"uint24",()=>S),_(T.exports,"uint32",()=>te),_(T.exports,"int8",()=>se),_(T.exports,"int16",()=>Y),_(T.exports,"int32",()=>X),_(T.exports,"Fixed",()=>ce),_(T.exports,"fixed16",()=>be),_(T.exports,"fixed32",()=>qe);var R=O("oF6Qu"),x=O("1GNcZ");class t extends x.Base{constructor(I,D="BE"){super(),this.type=I,this.endian=D,this.fn=this.type,this.type[this.type.length-1]!=="8"&&(this.fn+=this.endian)}size(){return R.DecodeStream.TYPES[this.type]}decode(I){return I[`read${this.fn}`]()}encode(I,D){return I[`write${this.fn}`](D)}}const h=new t("UInt8"),p=new t("UInt16","BE"),v=new t("UInt16","LE"),S=new t("UInt24","BE"),P=new t("UInt24","LE"),te=new t("UInt32","BE"),re=new t("UInt32","LE"),se=new t("Int8"),Y=new t("Int16","BE"),Q=new t("Int16","LE"),ue=new t("Int24","BE"),Ie=new t("Int24","LE"),X=new t("Int32","BE"),Z=new t("Int32","LE"),B=new t("Float","BE"),A=new t("Float","LE"),de=new t("Double","BE"),J=new t("Double","LE");class ce extends t{constructor(I,D,q=I>>1){super(`Int${I}`,D),this._point=1<<q}decode(I){return super.decode(I)/this._point}encode(I,D){return super.encode(I,D*this._point|0)}}const be=new ce(16,"BE"),Ze=new ce(16,"LE"),qe=new ce(32,"BE"),L=new ce(32,"LE")}),O.register("67NHT",function(T,ge){_(T.exports,"resolveLength",()=>x),_(T.exports,"PropertyDescriptor",()=>t);var R=O("QPUOh");function x(h,f,p){let v;if(typeof h=="number"?v=h:typeof h=="function"?v=h.call(p,p):p&&typeof h=="string"?v=p[h]:f&&h instanceof R.Number&&(v=h.decode(f)),isNaN(v))throw new Error("Not a fixed size");return v}class t{constructor(f={}){this.enumerable=!0,this.configurable=!0;for(let p in f){const v=f[p];this[p]=v}}}}),O.register("ccNhw",function(T,ge){_(T.exports,"LazyArray",()=>h);var R=O("j1YaI"),x=O("QPUOh"),t=O("67NHT");class h extends R.Array{decode(v,$){const{pos:S}=v,P=t.resolveLength(this.length,v,$);this.length instanceof x.Number&&($={parent:$,_startOffset:S,_currentOffset:0,_length:P});const w=new f(this.type,P,v,$);return v.pos+=P*this.type.size(null,$),w}size(v,$){return v instanceof f&&(v=v.toArray()),super.size(v,$)}encode(v,$,S){return $ instanceof f&&($=$.toArray()),super.encode(v,$,S)}}class f{constructor(v,$,S,P){this.type=v,this.length=$,this.stream=S,this.ctx=P,this.base=this.stream.pos,this.items=[]}get(v){if(!(v<0||v>=this.length)){if(this.items[v]==null){const{pos:$}=this.stream;this.stream.pos=this.base+this.type.size(null,this.ctx)*v,this.items[v]=this.type.decode(this.stream,this.ctx),this.stream.pos=$}return this.items[v]}}toArray(){const v=[];for(let $=0,S=this.length;$<S;$++)v.push(this.get($));return v}}}),O.register("fQmG6",function(T,ge){_(T.exports,"Bitfield",()=>x);var R=O("1GNcZ");class x extends R.Base{constructor(h,f=[]){super(),this.type=h,this.flags=f}decode(h){const f=this.type.decode(h),p={};for(let v=0;v<this.flags.length;v++){const $=this.flags[v];$!=null&&(p[$]=!!(f&1<<v))}return p}size(){return this.type.size()}encode(h,f){let p=0;for(let v=0;v<this.flags.length;v++){const $=this.flags[v];$!=null&&f[$]&&(p|=1<<v)}return this.type.encode(h,p)}}}),O.register("ccz0R",function(T,ge){var R=O("1GNcZ");class x extends R.Base{constructor(h){super(),this.type=h}decode(h,f){return!!this.type.decode(h,f)}size(h,f){return this.type.size(h,f)}encode(h,f,p){return this.type.encode(h,+f,p)}}}),O.register("4GGKE",function(T,ge){_(T.exports,"Buffer",()=>h);var R=O("1GNcZ"),x=O("QPUOh"),t=O("67NHT");class h extends R.Base{constructor(p){super(),this.length=p}decode(p,v){const $=t.resolveLength(this.length,p,v);return p.readBuffer($)}size(p,v){if(!p)return t.resolveLength(this.length,null,v);let $=p.length;return this.length instanceof x.Number&&($+=this.length.size()),$}encode(p,v,$){return this.length instanceof x.Number&&this.length.encode(p,v.length),p.writeBuffer(v)}}}),O.register("4vrzH",function(T,ge){var R=O("1GNcZ");class x extends R.Base{constructor(h,f=[]){super(),this.type=h,this.options=f}decode(h){const f=this.type.decode(h);return this.options[f]||f}size(){return this.type.size()}encode(h,f){const p=this.options.indexOf(f);if(p===-1)throw new Error(`Unknown option in enum: ${f}`);return this.type.encode(h,p)}}}),O.register("WOuwO",function(T,ge){_(T.exports,"Optional",()=>x);var R=O("1GNcZ");class x extends R.Base{constructor(h,f=!0){super(),this.type=h,this.condition=f}decode(h,f){let{condition:p}=this;if(typeof p=="function"&&(p=p.call(f,f)),p)return this.type.decode(h,f)}size(h,f){let{condition:p}=this;return typeof p=="function"&&(p=p.call(f,f)),p?this.type.size(h,f):0}encode(h,f,p){let{condition:v}=this;if(typeof v=="function"&&(v=v.call(p,p)),v)return this.type.encode(h,f,p)}}}),O.register("fSFW4",function(T,ge){_(T.exports,"Reserved",()=>t);var R=O("1GNcZ"),x=O("67NHT");class t extends R.Base{constructor(f,p=1){super(),this.type=f,this.count=p}decode(f,p){f.pos+=this.size(null,p)}size(f,p){const v=x.resolveLength(this.count,null,p);return this.type.size()*v}encode(f,p,v){return f.fill(0,this.size(p,v))}}}),O.register("cXHtO",function(T,ge){_(T.exports,"String",()=>h);var R=O("1GNcZ"),x=O("QPUOh"),t=O("67NHT");class h extends R.Base{constructor(v,$="ascii"){super(),this.length=v,this.encoding=$}decode(v,$){let S,P;if(this.length!=null)S=t.resolveLength(this.length,v,$);else{let re;for({buffer:re,length:S,pos:P}=v;P<S&&re[P]!==0;)++P;S=P-v.pos}let{encoding:w}=this;typeof w=="function"&&(w=w.call($,$)||"ascii");const te=v.readString(S,w);return this.length==null&&v.pos<v.length&&v.pos++,te}size(v,$){if(!v)return t.resolveLength(this.length,null,$);let{encoding:S}=this;typeof S=="function"&&(S=S.call($?.val,$?.val)||"ascii"),S==="utf16be"&&(S="utf16le");let P=f(v,S);return this.length instanceof x.Number&&(P+=this.length.size()),this.length==null&&P++,P}encode(v,$,S){let{encoding:P}=this;if(typeof P=="function"&&(P=P.call(S?.val,S?.val)||"ascii"),this.length instanceof x.Number&&this.length.encode(v,f($,P)),v.writeString($,P),this.length==null)return v.writeUInt8(0)}}function f(p,v){switch(v){case"ascii":return p.length;case"utf8":let $=0;for(let S=0;S<p.length;S++){let P=p.charCodeAt(S);if(P>=55296&&P<=56319&&S<p.length-1){let w=p.charCodeAt(++S);(w&64512)===56320?P=((P&1023)<<10)+(w&1023)+65536:S--}P&4294967168?P&4294965248?P&4294901760?P&4292870144||($+=4):$+=3:$+=2:$++}return $;case"utf16le":case"utf16-le":case"utf16be":case"utf16-be":case"ucs2":return p.length*2;default:throw new Error("Unknown encoding "+v)}}}),O.register("3RdzP",function(T,ge){_(T.exports,"Struct",()=>t);var R=O("1GNcZ"),x=O("67NHT");class t extends R.Base{constructor(f={}){super(),this.fields=f}decode(f,p,v=0){const $=this._setup(f,p,v);return this._parseFields(f,$,this.fields),this.process!=null&&this.process.call($,f),$}_setup(f,p,v){const $={};return Object.defineProperties($,{parent:{value:p},_startOffset:{value:f.pos},_currentOffset:{value:0,writable:!0},_length:{value:v}}),$}_parseFields(f,p,v){for(let S in v){var $;const P=v[S];typeof P=="function"?$=P.call(p,p):$=P.decode(f,p),$!==void 0&&($ instanceof x.PropertyDescriptor?Object.defineProperty(p,S,$):p[S]=$),p._currentOffset=f.pos-p._startOffset}}size(f,p,v=!0){f==null&&(f={});const $={parent:p,val:f,pointerSize:0};this.preEncode!=null&&this.preEncode.call(f);let S=0;for(let P in this.fields){const w=this.fields[P];w.size!=null&&(S+=w.size(f[P],$))}return v&&(S+=$.pointerSize),S}encode(f,p,v){let $;this.preEncode!=null&&this.preEncode.call(p,f);const S={pointers:[],startOffset:f.pos,parent:v,val:p,pointerSize:0};S.pointerOffset=f.pos+this.size(p,S,!1);for(let w in this.fields)$=this.fields[w],$.encode!=null&&$.encode(f,p[w],S);let P=0;for(;P<S.pointers.length;){const w=S.pointers[P++];w.type.encode(f,w.val,w.parent)}}}}),O.register("58FrE",function(T,ge){_(T.exports,"VersionedStruct",()=>t);var R=O("3RdzP");const x=(h,f)=>f.reduce((p,v)=>p&&p[v],h);class t extends R.Struct{constructor(f,p={}){super(),this.type=f,this.versions=p,typeof f=="string"&&(this.versionPath=f.split("."))}decode(f,p,v=0){const $=this._setup(f,p,v);typeof this.type=="string"?$.version=x(p,this.versionPath):$.version=this.type.decode(f),this.versions.header&&this._parseFields(f,$,this.versions.header);const S=this.versions[$.version];if(S==null)throw new Error(`Unknown version ${$.version}`);return S instanceof t?S.decode(f,p):(this._parseFields(f,$,S),this.process!=null&&this.process.call($,f),$)}size(f,p,v=!0){let $,S;if(!f)throw new Error("Not a fixed size");this.preEncode!=null&&this.preEncode.call(f);const P={parent:p,val:f,pointerSize:0};let w=0;if(typeof this.type!="string"&&(w+=this.type.size(f.version,P)),this.versions.header)for($ in this.versions.header)S=this.versions.header[$],S.size!=null&&(w+=S.size(f[$],P));const te=this.versions[f.version];if(te==null)throw new Error(`Unknown version ${f.version}`);for($ in te)S=te[$],S.size!=null&&(w+=S.size(f[$],P));return v&&(w+=P.pointerSize),w}encode(f,p,v){let $,S;this.preEncode!=null&&this.preEncode.call(p,f);const P={pointers:[],startOffset:f.pos,parent:v,val:p,pointerSize:0};if(P.pointerOffset=f.pos+this.size(p,P,!1),typeof this.type!="string"&&this.type.encode(f,p.version),this.versions.header)for($ in this.versions.header)S=this.versions.header[$],S.encode!=null&&S.encode(f,p[$],P);const w=this.versions[p.version];for($ in w)S=w[$],S.encode!=null&&S.encode(f,p[$],P);let te=0;for(;te<P.pointers.length;){const re=P.pointers[te++];re.type.encode(f,re.val,re.parent)}}}}),O.register("8ILoy",function(T,ge){_(T.exports,"Pointer",()=>t),_(T.exports,"VoidPointer",()=>h);var R=O("67NHT"),x=O("1GNcZ");class t extends x.Base{constructor(p,v,$={}){if(super(),this.offsetType=p,this.type=v,this.options=$,this.type==="void"&&(this.type=null),this.options.type==null&&(this.options.type="local"),this.options.allowNull==null&&(this.options.allowNull=!0),this.options.nullValue==null&&(this.options.nullValue=0),this.options.lazy==null&&(this.options.lazy=!1),this.options.relativeTo){if(typeof this.options.relativeTo!="function")throw new Error("relativeTo option must be a function");this.relativeToGetter=$.relativeTo}}decode(p,v){const $=this.offsetType.decode(p,v);if($===this.options.nullValue&&this.options.allowNull)return null;let S;switch(this.options.type){case"local":S=v._startOffset;break;case"immediate":S=p.pos-this.offsetType.size();break;case"parent":S=v.parent._startOffset;break;default:for(var P=v;P.parent;)P=P.parent;S=P._startOffset||0}this.options.relativeTo&&(S+=this.relativeToGetter(v));const w=$+S;if(this.type!=null){let te=null;const re=()=>{if(te!=null)return te;const{pos:se}=p;return p.pos=w,te=this.type.decode(p,v),p.pos=se,te};return this.options.lazy?new R.PropertyDescriptor({get:re}):re()}else return w}size(p,v){const $=v;switch(this.options.type){case"local":case"immediate":break;case"parent":v=v.parent;break;default:for(;v.parent;)v=v.parent}let{type:S}=this;if(S==null){if(!(p instanceof h))throw new Error("Must be a VoidPointer");({type:S}=p),p=p.value}if(p&&v){let P=S.size(p,$);v.pointerSize+=P}return this.offsetType.size()}encode(p,v,$){let S;const P=$;if(v==null){this.offsetType.encode(p,this.options.nullValue);return}switch(this.options.type){case"local":S=$.startOffset;break;case"immediate":S=p.pos+this.offsetType.size(v,P);break;case"parent":$=$.parent,S=$.startOffset;break;default:for(S=0;$.parent;)$=$.parent}this.options.relativeTo&&(S+=this.relativeToGetter(P.val)),this.offsetType.encode(p,$.pointerOffset-S);let{type:w}=this;if(w==null){if(!(v instanceof h))throw new Error("Must be a VoidPointer");({type:w}=v),v=v.value}return $.pointers.push({type:w,val:v,parent:P}),$.pointerOffset+=w.size(v,P)}}class h{constructor(p,v){this.type=p,this.value=v}}}),O.register("XgJeM",function(T,ge){T.exports=O("17Xrp")}),O.register("17Xrp",function(T,ge){"use strict";Object.defineProperty(T.exports,"__esModule",{value:!0}),Object.defineProperty(T.exports,"default",{enumerable:!0,get:function(){return R}});function R(x,t,h){return t in x?Object.defineProperty(x,t,{value:h,enumerable:!0,configurable:!0,writable:!0}):x[t]=h,x}}),O.register("dmCi8",function(T,ge){T.exports=O("6GDMq")}),O.register("6GDMq",function(T,ge){"use strict";Object.defineProperty(T.exports,"__esModule",{value:!0}),Object.defineProperty(T.exports,"default",{enumerable:!0,get:function(){return R.__decorate}});var R=O("frFmb")}),O.register("frFmb",function(T,ge){_(T.exports,"__decorate",()=>f);var R=function(L,k){return R=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(I,D){I.__proto__=D}||function(I,D){for(var q in D)Object.prototype.hasOwnProperty.call(D,q)&&(I[q]=D[q])},R(L,k)};function x(L,k){if(typeof k!="function"&&k!==null)throw new TypeError("Class extends value "+String(k)+" is not a constructor or null");R(L,k);function I(){this.constructor=L}L.prototype=k===null?Object.create(k):(I.prototype=k.prototype,new I)}var t=function(){return t=Object.assign||function(k){for(var I,D=1,q=arguments.length;D<q;D++){I=arguments[D];for(var U in I)Object.prototype.hasOwnProperty.call(I,U)&&(k[U]=I[U])}return k},t.apply(this,arguments)};function h(L,k){var I={};for(var D in L)Object.prototype.hasOwnProperty.call(L,D)&&k.indexOf(D)<0&&(I[D]=L[D]);if(L!=null&&typeof Object.getOwnPropertySymbols=="function")for(var q=0,D=Object.getOwnPropertySymbols(L);q<D.length;q++)k.indexOf(D[q])<0&&Object.prototype.propertyIsEnumerable.call(L,D[q])&&(I[D[q]]=L[D[q]]);return I}function f(L,k,I,D){var q=arguments.length,U=q<3?k:D===null?D=Object.getOwnPropertyDescriptor(k,I):D,ae;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")U=Reflect.decorate(L,k,I,D);else for(var Oe=L.length-1;Oe>=0;Oe--)(ae=L[Oe])&&(U=(q<3?ae(U):q>3?ae(k,I,U):ae(k,I))||U);return q>3&&U&&Object.defineProperty(k,I,U),U}function p(L,k){return function(I,D){k(I,D,L)}}function v(L,k,I,D,q,U){function ae(M){if(M!==void 0&&typeof M!="function")throw new TypeError("Function expected");return M}for(var Oe=D.kind,ot=Oe==="getter"?"get":Oe==="setter"?"set":"value",ye=!k&&L?D.static?L:L.prototype:null,Ke=k||(ye?Object.getOwnPropertyDescriptor(ye,D.name):{}),at,He=!1,ft=I.length-1;ft>=0;ft--){var K={};for(var V in D)K[V]=V==="access"?{}:D[V];for(var V in D.access)K.access[V]=D.access[V];K.addInitializer=function(M){if(He)throw new TypeError("Cannot add initializers after decoration has completed");U.push(ae(M||null))};var j=(0,I[ft])(Oe==="accessor"?{get:Ke.get,set:Ke.set}:Ke[ot],K);if(Oe==="accessor"){if(j===void 0)continue;if(j===null||typeof j!="object")throw new TypeError("Object expected");(at=ae(j.get))&&(Ke.get=at),(at=ae(j.set))&&(Ke.set=at),(at=ae(j.init))&&q.unshift(at)}else(at=ae(j))&&(Oe==="field"?q.unshift(at):Ke[ot]=at)}ye&&Object.defineProperty(ye,D.name,Ke),He=!0}function $(L,k,I){for(var D=arguments.length>2,q=0;q<k.length;q++)I=D?k[q].call(L,I):k[q].call(L);return D?I:void 0}function S(L){return typeof L=="symbol"?L:"".concat(L)}function P(L,k,I){return typeof k=="symbol"&&(k=k.description?"[".concat(k.description,"]"):""),Object.defineProperty(L,"name",{configurable:!0,value:I?"".concat(I," ",k):k})}function w(L,k){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(L,k)}function te(L,k,I,D){function q(U){return U instanceof I?U:new I(function(ae){ae(U)})}return new(I||(I=Promise))(function(U,ae){function Oe(Ke){try{ye(D.next(Ke))}catch(at){ae(at)}}function ot(Ke){try{ye(D.throw(Ke))}catch(at){ae(at)}}function ye(Ke){Ke.done?U(Ke.value):q(Ke.value).then(Oe,ot)}ye((D=D.apply(L,k||[])).next())})}function re(L,k){var I={label:0,sent:function(){if(U[0]&1)throw U[1];return U[1]},trys:[],ops:[]},D,q,U,ae;return ae={next:Oe(0),throw:Oe(1),return:Oe(2)},typeof Symbol=="function"&&(ae[Symbol.iterator]=function(){return this}),ae;function Oe(ye){return function(Ke){return ot([ye,Ke])}}function ot(ye){if(D)throw new TypeError("Generator is already executing.");for(;ae&&(ae=0,ye[0]&&(I=0)),I;)try{if(D=1,q&&(U=ye[0]&2?q.return:ye[0]?q.throw||((U=q.return)&&U.call(q),0):q.next)&&!(U=U.call(q,ye[1])).done)return U;switch(q=0,U&&(ye=[ye[0]&2,U.value]),ye[0]){case 0:case 1:U=ye;break;case 4:return I.label++,{value:ye[1],done:!1};case 5:I.label++,q=ye[1],ye=[0];continue;case 7:ye=I.ops.pop(),I.trys.pop();continue;default:if(U=I.trys,!(U=U.length>0&&U[U.length-1])&&(ye[0]===6||ye[0]===2)){I=0;continue}if(ye[0]===3&&(!U||ye[1]>U[0]&&ye[1]<U[3])){I.label=ye[1];break}if(ye[0]===6&&I.label<U[1]){I.label=U[1],U=ye;break}if(U&&I.label<U[2]){I.label=U[2],I.ops.push(ye);break}U[2]&&I.ops.pop(),I.trys.pop();continue}ye=k.call(L,I)}catch(Ke){ye=[6,Ke],q=0}finally{D=U=0}if(ye[0]&5)throw ye[1];return{value:ye[0]?ye[1]:void 0,done:!0}}}var se=Object.create?function(L,k,I,D){D===void 0&&(D=I);var q=Object.getOwnPropertyDescriptor(k,I);(!q||("get"in q?!k.__esModule:q.writable||q.configurable))&&(q={enumerable:!0,get:function(){return k[I]}}),Object.defineProperty(L,D,q)}:function(L,k,I,D){D===void 0&&(D=I),L[D]=k[I]};function W(L,k){for(var I in L)I!=="default"&&!Object.prototype.hasOwnProperty.call(k,I)&&se(k,L,I)}function Y(L){var k=typeof Symbol=="function"&&Symbol.iterator,I=k&&L[k],D=0;if(I)return I.call(L);if(L&&typeof L.length=="number")return{next:function(){return L&&D>=L.length&&(L=void 0),{value:L&&L[D++],done:!L}}};throw new TypeError(k?"Object is not iterable.":"Symbol.iterator is not defined.")}function Q(L,k){var I=typeof Symbol=="function"&&L[Symbol.iterator];if(!I)return L;var D=I.call(L),q,U=[],ae;try{for(;(k===void 0||k-- >0)&&!(q=D.next()).done;)U.push(q.value)}catch(Oe){ae={error:Oe}}finally{try{q&&!q.done&&(I=D.return)&&I.call(D)}finally{if(ae)throw ae.error}}return U}function le(){for(var L=[],k=0;k<arguments.length;k++)L=L.concat(Q(arguments[k]));return L}function ue(){for(var L=0,k=0,I=arguments.length;k<I;k++)L+=arguments[k].length;for(var D=Array(L),q=0,k=0;k<I;k++)for(var U=arguments[k],ae=0,Oe=U.length;ae<Oe;ae++,q++)D[q]=U[ae];return D}function Ie(L,k,I){if(I||arguments.length===2)for(var D=0,q=k.length,U;D<q;D++)(U||!(D in k))&&(U||(U=Array.prototype.slice.call(k,0,D)),U[D]=k[D]);return L.concat(U||Array.prototype.slice.call(k))}function Se(L){return this instanceof Se?(this.v=L,this):new Se(L)}function X(L,k,I){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var D=I.apply(L,k||[]),q,U=[];return q={},ae("next"),ae("throw"),ae("return"),q[Symbol.asyncIterator]=function(){return this},q;function ae(He){D[He]&&(q[He]=function(ft){return new Promise(function(K,V){U.push([He,ft,K,V])>1||Oe(He,ft)})})}function Oe(He,ft){try{ot(D[He](ft))}catch(K){at(U[0][3],K)}}function ot(He){He.value instanceof Se?Promise.resolve(He.value.v).then(ye,Ke):at(U[0][2],He)}function ye(He){Oe("next",He)}function Ke(He){Oe("throw",He)}function at(He,ft){He(ft),U.shift(),U.length&&Oe(U[0][0],U[0][1])}}function Z(L){var k,I;return k={},D("next"),D("throw",function(q){throw q}),D("return"),k[Symbol.iterator]=function(){return this},k;function D(q,U){k[q]=L[q]?function(ae){return(I=!I)?{value:Se(L[q](ae)),done:!1}:U?U(ae):ae}:U}}function me(L){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var k=L[Symbol.asyncIterator],I;return k?k.call(L):(L=typeof Y=="function"?Y(L):L[Symbol.iterator](),I={},D("next"),D("throw"),D("return"),I[Symbol.asyncIterator]=function(){return this},I);function D(U){I[U]=L[U]&&function(ae){return new Promise(function(Oe,ot){ae=L[U](ae),q(Oe,ot,ae.done,ae.value)})}}function q(U,ae,Oe,ot){Promise.resolve(ot).then(function(ye){U({value:ye,done:Oe})},ae)}}function B(L,k){return Object.defineProperty?Object.defineProperty(L,"raw",{value:k}):L.raw=k,L}var A=Object.create?function(L,k){Object.defineProperty(L,"default",{enumerable:!0,value:k})}:function(L,k){L.default=k};function H(L){if(L&&L.__esModule)return L;var k={};if(L!=null)for(var I in L)I!=="default"&&Object.prototype.hasOwnProperty.call(L,I)&&se(k,L,I);return A(k,L),k}function de(L){return L&&L.__esModule?L:{default:L}}function J(L,k,I,D){if(I==="a"&&!D)throw new TypeError("Private accessor was defined without a getter");if(typeof k=="function"?L!==k||!D:!k.has(L))throw new TypeError("Cannot read private member from an object whose class did not declare it");return I==="m"?D:I==="a"?D.call(L):D?D.value:k.get(L)}function ce(L,k,I,D,q){if(D==="m")throw new TypeError("Private method is not writable");if(D==="a"&&!q)throw new TypeError("Private accessor was defined without a setter");if(typeof k=="function"?L!==k||!q:!k.has(L))throw new TypeError("Cannot write private member to an object whose class did not declare it");return D==="a"?q.call(L,I):q?q.value=I:k.set(L,I),I}function Ne(L,k){if(k===null||typeof k!="object"&&typeof k!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof L=="function"?k===L:L.has(k)}function be(L,k,I){if(k!=null){if(typeof k!="object"&&typeof k!="function")throw new TypeError("Object expected.");var D;if(I){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");D=k[Symbol.asyncDispose]}if(D===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");D=k[Symbol.dispose]}if(typeof D!="function")throw new TypeError("Object not disposable.");L.stack.push({value:k,dispose:D,async:I})}else I&&L.stack.push({async:!0});return k}var Ze=typeof SuppressedError=="function"?SuppressedError:function(L,k,I){var D=new Error(I);return D.name="SuppressedError",D.error=L,D.suppressed=k,D};function Be(L){function k(D){L.error=L.hasError?new Ze(D,L.error,"An error was suppressed during disposal."):D,L.hasError=!0}function I(){for(;L.stack.length;){var D=L.stack.pop();try{var q=D.dispose&&D.dispose.call(D.value);if(D.async)return Promise.resolve(q).then(I,function(U){return k(U),I()})}catch(U){k(U)}}if(L.hasError)throw L.error}return I()}var qe={__extends:x,__assign:t,__rest:h,__decorate:f,__param:p,__metadata:w,__awaiter:te,__generator:re,__createBinding:se,__exportStar:W,__values:Y,__read:Q,__spread:le,__spreadArrays:ue,__spreadArray:Ie,__await:Se,__asyncGenerator:X,__asyncDelegator:Z,__asyncValues:me,__makeTemplateObject:B,__importStar:H,__importDefault:de,__classPrivateFieldGet:J,__classPrivateFieldSet:ce,__classPrivateFieldIn:Ne,__addDisposableResource:be,__disposeResources:Be}}),O.register("hHJih",function(T,ge){"use strict";T.exports=function R(x,t){if(x===t)return!0;if(x&&t&&typeof x=="object"&&typeof t=="object"){if(x.constructor!==t.constructor)return!1;var h,f,p;if(Array.isArray(x)){if(h=x.length,h!=t.length)return!1;for(f=h;f--!==0;)if(!R(x[f],t[f]))return!1;return!0}if(x.constructor===RegExp)return x.source===t.source&&x.flags===t.flags;if(x.valueOf!==Object.prototype.valueOf)return x.valueOf()===t.valueOf();if(x.toString!==Object.prototype.toString)return x.toString()===t.toString();if(p=Object.keys(x),h=p.length,h!==Object.keys(t).length)return!1;for(f=h;f--!==0;)if(!Object.prototype.hasOwnProperty.call(t,p[f]))return!1;for(f=h;f--!==0;){var v=p[f];if(!R(x[v],t[v]))return!1}return!0}return x!==x&&t!==t}}),O.register("8vZwG",function(T,ge){_(T.exports,"getCategory",()=>X),_(T.exports,"getCombiningClass",()=>Z),_(T.exports,"getScript",()=>me),_(T.exports,"isDigit",()=>de),_(T.exports,"isMark",()=>qe);var R=O("bVXCQ"),x=O("hWMJL");function t(k){return k&&k.__esModule?k.default:k}var h={};h=JSON.parse('{"categories":["Cc","Zs","Po","Sc","Ps","Pe","Sm","Pd","Nd","Lu","Sk","Pc","Ll","So","Lo","Pi","Cf","No","Pf","Lt","Lm","Mn","Me","Mc","Nl","Zl","Zp","Cs","Co"],"combiningClasses":["Not_Reordered","Above","Above_Right","Below","Attached_Above_Right","Attached_Below","Overlay","Iota_Subscript","Double_Below","Double_Above","Below_Right","Above_Left","CCC10","CCC11","CCC12","CCC13","CCC14","CCC15","CCC16","CCC17","CCC18","CCC19","CCC20","CCC21","CCC22","CCC23","CCC24","CCC25","CCC30","CCC31","CCC32","CCC27","CCC28","CCC29","CCC33","CCC34","CCC35","CCC36","Nukta","Virama","CCC84","CCC91","CCC103","CCC107","CCC118","CCC122","CCC129","CCC130","CCC132","Attached_Above","Below_Left","Left","Kana_Voicing","CCC26","Right"],"scripts":["Common","Latin","Bopomofo","Inherited","Greek","Coptic","Cyrillic","Armenian","Hebrew","Arabic","Syriac","Thaana","Nko","Samaritan","Mandaic","Devanagari","Bengali","Gurmukhi","Gujarati","Oriya","Tamil","Telugu","Kannada","Malayalam","Sinhala","Thai","Lao","Tibetan","Myanmar","Georgian","Hangul","Ethiopic","Cherokee","Canadian_Aboriginal","Ogham","Runic","Tagalog","Hanunoo","Buhid","Tagbanwa","Khmer","Mongolian","Limbu","Tai_Le","New_Tai_Lue","Buginese","Tai_Tham","Balinese","Sundanese","Batak","Lepcha","Ol_Chiki","Braille","Glagolitic","Tifinagh","Han","Hiragana","Katakana","Yi","Lisu","Vai","Bamum","Syloti_Nagri","Phags_Pa","Saurashtra","Kayah_Li","Rejang","Javanese","Cham","Tai_Viet","Meetei_Mayek","null","Linear_B","Lycian","Carian","Old_Italic","Gothic","Old_Permic","Ugaritic","Old_Persian","Deseret","Shavian","Osmanya","Osage","Elbasan","Caucasian_Albanian","Linear_A","Cypriot","Imperial_Aramaic","Palmyrene","Nabataean","Hatran","Phoenician","Lydian","Meroitic_Hieroglyphs","Meroitic_Cursive","Kharoshthi","Old_South_Arabian","Old_North_Arabian","Manichaean","Avestan","Inscriptional_Parthian","Inscriptional_Pahlavi","Psalter_Pahlavi","Old_Turkic","Old_Hungarian","Hanifi_Rohingya","Old_Sogdian","Sogdian","Elymaic","Brahmi","Kaithi","Sora_Sompeng","Chakma","Mahajani","Sharada","Khojki","Multani","Khudawadi","Grantha","Newa","Tirhuta","Siddham","Modi","Takri","Ahom","Dogra","Warang_Citi","Nandinagari","Zanabazar_Square","Soyombo","Pau_Cin_Hau","Bhaiksuki","Marchen","Masaram_Gondi","Gunjala_Gondi","Makasar","Cuneiform","Egyptian_Hieroglyphs","Anatolian_Hieroglyphs","Mro","Bassa_Vah","Pahawh_Hmong","Medefaidrin","Miao","Tangut","Nushu","Duployan","SignWriting","Nyiakeng_Puachue_Hmong","Wancho","Mende_Kikakui","Adlam"],"eaw":["N","Na","A","W","H","F"]}');const f=new(vn(x))(vn(R).toByteArray("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")),p=Math.log2||(k=>Math.log(k)/Math.LN2),v=k=>p(k)+1|0,$=v(t(h).categories.length-1),S=v(t(h).combiningClasses.length-1),P=v(t(h).scripts.length-1),w=v(t(h).eaw.length-1),te=10,re=S+P+w+te,se=P+w+te,W=w+te,Y=te,Q=(1<<$)-1,le=(1<<S)-1,ue=(1<<P)-1,Ie=(1<<w)-1,Se=(1<<te)-1;function X(k){const I=f.get(k);return t(h).categories[I>>re&Q]}function Z(k){const I=f.get(k);return t(h).combiningClasses[I>>se&le]}function me(k){const I=f.get(k);return t(h).scripts[I>>W&ue]}function B(k){const I=f.get(k);return t(h).eaw[I>>Y&Ie]}function A(k){let I=f.get(k),D=I&Se;if(D===0)return null;if(D<=50)return D-1;if(D<480){const q=(D>>4)-12,U=(D&15)+1;return q/U}else if(D<768){I=(D>>5)-14;let q=(D&31)+2;for(;q>0;)I*=10,q--;return I}else{I=(D>>2)-191;let q=(D&3)+1;for(;q>0;)I*=60,q--;return I}}function H(k){const I=X(k);return I==="Lu"||I==="Ll"||I==="Lt"||I==="Lm"||I==="Lo"||I==="Nl"}function de(k){return X(k)==="Nd"}function J(k){const I=X(k);return I==="Pc"||I==="Pd"||I==="Pe"||I==="Pf"||I==="Pi"||I==="Po"||I==="Ps"}function ce(k){return X(k)==="Ll"}function Ne(k){return X(k)==="Lu"}function be(k){return X(k)==="Lt"}function Ze(k){const I=X(k);return I==="Zs"||I==="Zl"||I==="Zp"}function Be(k){const I=X(k);return I==="Nd"||I==="No"||I==="Nl"||I==="Lu"||I==="Ll"||I==="Lt"||I==="Lm"||I==="Lo"||I==="Me"||I==="Mc"}function qe(k){const I=X(k);return I==="Mn"||I==="Me"||I==="Mc"}var L={getCategory:X,getCombiningClass:Z,getScript:me,getEastAsianWidth:B,getNumericValue:A,isAlphabetic:H,isDigit:de,isPunctuation:J,isLowerCase:ce,isUpperCase:Ne,isTitleCase:be,isWhiteSpace:Ze,isBaseForm:Be,isMark:qe}}),O.register("bVXCQ",function(T,ge){_(T.exports,"byteLength",()=>R,Q=>R=Q),_(T.exports,"toByteArray",()=>x,Q=>x=Q),_(T.exports,"fromByteArray",()=>t,Q=>t=Q);var R,x,t;R=w,x=re,t=Y;for(var h=[],f=[],p=typeof Uint8Array<"u"?Uint8Array:Array,v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",$=0,S=v.length;$<S;++$)h[$]=v[$],f[v.charCodeAt($)]=$;f["-".charCodeAt(0)]=62,f["_".charCodeAt(0)]=63;function P(Q){var le=Q.length;if(le%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var ue=Q.indexOf("=");ue===-1&&(ue=le);var Ie=ue===le?0:4-ue%4;return[ue,Ie]}function w(Q){var le=P(Q),ue=le[0],Ie=le[1];return(ue+Ie)*3/4-Ie}function te(Q,le,ue){return(le+ue)*3/4-ue}function re(Q){var le,ue=P(Q),Ie=ue[0],Se=ue[1],X=new p(te(Q,Ie,Se)),Z=0,me=Se>0?Ie-4:Ie,B;for(B=0;B<me;B+=4)le=f[Q.charCodeAt(B)]<<18|f[Q.charCodeAt(B+1)]<<12|f[Q.charCodeAt(B+2)]<<6|f[Q.charCodeAt(B+3)],X[Z++]=le>>16&255,X[Z++]=le>>8&255,X[Z++]=le&255;return Se===2&&(le=f[Q.charCodeAt(B)]<<2|f[Q.charCodeAt(B+1)]>>4,X[Z++]=le&255),Se===1&&(le=f[Q.charCodeAt(B)]<<10|f[Q.charCodeAt(B+1)]<<4|f[Q.charCodeAt(B+2)]>>2,X[Z++]=le>>8&255,X[Z++]=le&255),X}function se(Q){return h[Q>>18&63]+h[Q>>12&63]+h[Q>>6&63]+h[Q&63]}function W(Q,le,ue){for(var Ie,Se=[],X=le;X<ue;X+=3)Ie=(Q[X]<<16&16711680)+(Q[X+1]<<8&65280)+(Q[X+2]&255),Se.push(se(Ie));return Se.join("")}function Y(Q){for(var le,ue=Q.length,Ie=ue%3,Se=[],X=16383,Z=0,me=ue-Ie;Z<me;Z+=X)Se.push(W(Q,Z,Z+X>me?me:Z+X));return Ie===1?(le=Q[ue-1],Se.push(h[le>>2]+h[le<<4&63]+"==")):Ie===2&&(le=(Q[ue-2]<<8)+Q[ue-1],Se.push(h[le>>10]+h[le>>4&63]+h[le<<2&63]+"=")),Se.join("")}}),O.register("hWMJL",function(T,ge){var R=O("iZEkP"),x=O("bT7XF"),t=x.swap32LE;const h=11,f=5,p=h-f,v=65536>>h,S=(1<<p)-1,P=2,te=(1<<f)-1,re=65536>>f,se=1024>>f,le=re+se+32,ue=1<<P;class Ie{constructor(X){const Z=typeof X.readUInt32BE=="function"&&typeof X.slice=="function";if(Z||X instanceof Uint8Array){let me;if(Z)this.highStart=X.readUInt32LE(0),this.errorValue=X.readUInt32LE(4),me=X.readUInt32LE(8),X=X.slice(12);else{const B=new DataView(X.buffer);this.highStart=B.getUint32(0,!0),this.errorValue=B.getUint32(4,!0),me=B.getUint32(8,!0),X=X.subarray(12)}X=R(X,new Uint8Array(me)),X=R(X,new Uint8Array(me)),t(X),this.data=new Uint32Array(X.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=X)}get(X){let Z;return X<0||X>1114111?this.errorValue:X<55296||X>56319&&X<=65535?(Z=(this.data[X>>f]<<P)+(X&te),this.data[Z]):X<=65535?(Z=(this.data[re+(X-55296>>f)]<<P)+(X&te),this.data[Z]):X<this.highStart?(Z=this.data[le-v+(X>>h)],Z=this.data[Z+(X>>f&S)],Z=(Z<<P)+(X&te),this.data[Z]):this.data[this.data.length-ue]}}T.exports=Ie}),O.register("iZEkP",function(T,ge){var R=0,x=-3;function t(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function h(B,A){this.source=B,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=A,this.destLen=0,this.ltree=new t,this.dtree=new t}var f=new t,p=new t,v=new Uint8Array(30),$=new Uint16Array(30),S=new Uint8Array(30),P=new Uint16Array(30),w=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),te=new t,re=new Uint8Array(320);function se(B,A,H,de){var J,ce;for(J=0;J<H;++J)B[J]=0;for(J=0;J<30-H;++J)B[J+H]=J/H|0;for(ce=de,J=0;J<30;++J)A[J]=ce,ce+=1<<B[J]}function W(B,A){var H;for(H=0;H<7;++H)B.table[H]=0;for(B.table[7]=24,B.table[8]=152,B.table[9]=112,H=0;H<24;++H)B.trans[H]=256+H;for(H=0;H<144;++H)B.trans[24+H]=H;for(H=0;H<8;++H)B.trans[168+H]=280+H;for(H=0;H<112;++H)B.trans[176+H]=144+H;for(H=0;H<5;++H)A.table[H]=0;for(A.table[5]=32,H=0;H<32;++H)A.trans[H]=H}var Y=new Uint16Array(16);function Q(B,A,H,de){var J,ce;for(J=0;J<16;++J)B.table[J]=0;for(J=0;J<de;++J)B.table[A[H+J]]++;for(B.table[0]=0,ce=0,J=0;J<16;++J)Y[J]=ce,ce+=B.table[J];for(J=0;J<de;++J)A[H+J]&&(B.trans[Y[A[H+J]]++]=J)}function le(B){B.bitcount--||(B.tag=B.source[B.sourceIndex++],B.bitcount=7);var A=B.tag&1;return B.tag>>>=1,A}function ue(B,A,H){if(!A)return H;for(;B.bitcount<24;)B.tag|=B.source[B.sourceIndex++]<<B.bitcount,B.bitcount+=8;var de=B.tag&65535>>>16-A;return B.tag>>>=A,B.bitcount-=A,de+H}function Ie(B,A){for(;B.bitcount<24;)B.tag|=B.source[B.sourceIndex++]<<B.bitcount,B.bitcount+=8;var H=0,de=0,J=0,ce=B.tag;do de=2*de+(ce&1),ce>>>=1,++J,H+=A.table[J],de-=A.table[J];while(de>=0);return B.tag=ce,B.bitcount-=J,A.trans[H+de]}function Se(B,A,H){var de,J,ce,Ne,be,Ze;for(de=ue(B,5,257),J=ue(B,5,1),ce=ue(B,4,4),Ne=0;Ne<19;++Ne)re[Ne]=0;for(Ne=0;Ne<ce;++Ne){var Be=ue(B,3,0);re[w[Ne]]=Be}for(Q(te,re,0,19),be=0;be<de+J;){var qe=Ie(B,te);switch(qe){case 16:var L=re[be-1];for(Ze=ue(B,2,3);Ze;--Ze)re[be++]=L;break;case 17:for(Ze=ue(B,3,3);Ze;--Ze)re[be++]=0;break;case 18:for(Ze=ue(B,7,11);Ze;--Ze)re[be++]=0;break;default:re[be++]=qe;break}}Q(A,re,0,de),Q(H,re,de,J)}function X(B,A,H){for(;;){var de=Ie(B,A);if(de===256)return R;if(de<256)B.dest[B.destLen++]=de;else{var J,ce,Ne,be;for(de-=257,J=ue(B,v[de],$[de]),ce=Ie(B,H),Ne=B.destLen-ue(B,S[ce],P[ce]),be=Ne;be<Ne+J;++be)B.dest[B.destLen++]=B.dest[be]}}}function Z(B){for(var A,H,de;B.bitcount>8;)B.sourceIndex--,B.bitcount-=8;if(A=B.source[B.sourceIndex+1],A=256*A+B.source[B.sourceIndex],H=B.source[B.sourceIndex+3],H=256*H+B.source[B.sourceIndex+2],A!==(~H&65535))return x;for(B.sourceIndex+=4,de=A;de;--de)B.dest[B.destLen++]=B.source[B.sourceIndex++];return B.bitcount=0,R}function me(B,A){var H=new h(B,A),de,J,ce;do{switch(de=le(H),J=ue(H,2,0),J){case 0:ce=Z(H);break;case 1:ce=X(H,f,p);break;case 2:Se(H,H.ltree,H.dtree),ce=X(H,H.ltree,H.dtree);break;default:ce=x}if(ce!==R)throw new Error("Data error")}while(!de);return H.destLen<H.dest.length?typeof H.dest.slice=="function"?H.dest.slice(0,H.destLen):H.dest.subarray(0,H.destLen):H.dest}W(f,p),se(v,$,4,3),se(S,P,2,1),v[28]=0,$[28]=258,T.exports=me}),O.register("bT7XF",function(T,ge){const R=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,x=(f,p,v)=>{let $=f[p];f[p]=f[v],f[v]=$},t=f=>{const p=f.length;for(let v=0;v<p;v+=4)x(f,v,v+3),x(f,v+1,v+2)},h=f=>{R&&t(f)};T.exports={swap32LE:h}}),O.register("4Cb2U",function(T,ge){"use strict";var R=1,x=0;class t{constructor(f){this.stateTable=f.stateTable,this.accepting=f.accepting,this.tags=f.tags}match(f){var p=this;return{*[Symbol.iterator](){for(var v=R,$=null,S=null,P=null,w=0;w<f.length;w++){var te=f[w];P=v,v=p.stateTable[v][te],v===x&&($!=null&&S!=null&&S>=$&&(yield[$,S,p.tags[P]]),v=p.stateTable[R][te],$=null),v!==x&&$==null&&($=w),p.accepting[v]&&(S=w),v===x&&(v=R)}$!=null&&S!=null&&S>=$&&(yield[$,S,p.tags[v]])}}}apply(f,p){for(var[v,$,S]of this.match(f))for(var P of S)typeof p[P]=="function"&&p[P](v,$,f.slice(v,$+1))}}T.exports=t}),O.register("5QsL7",function(T,ge){var R=O("ax3hF"),x=R.Buffer,t=function(){"use strict";function h(se,W){return W!=null&&se instanceof W}var f;try{f=Map}catch{f=function(){}}var p;try{p=Set}catch{p=function(){}}var v;try{v=Promise}catch{v=function(){}}function $(se,W,Y,Q,le){typeof W=="object"&&(Y=W.depth,Q=W.prototype,le=W.includeNonEnumerable,W=W.circular);var ue=[],Ie=[],Se=typeof x<"u";typeof W>"u"&&(W=!0),typeof Y>"u"&&(Y=1/0);function X(Z,me){if(Z===null)return null;if(me===0)return Z;var B,A;if(typeof Z!="object")return Z;if(h(Z,f))B=new f;else if(h(Z,p))B=new p;else if(h(Z,v))B=new v(function(qe,L){Z.then(function(k){qe(X(k,me-1))},function(k){L(X(k,me-1))})});else if($.__isArray(Z))B=[];else if($.__isRegExp(Z))B=new RegExp(Z.source,re(Z)),Z.lastIndex&&(B.lastIndex=Z.lastIndex);else if($.__isDate(Z))B=new Date(Z.getTime());else{if(Se&&x.isBuffer(Z))return x.allocUnsafe?B=x.allocUnsafe(Z.length):B=new x(Z.length),Z.copy(B),B;h(Z,Error)?B=Object.create(Z):typeof Q>"u"?(A=Object.getPrototypeOf(Z),B=Object.create(A)):(B=Object.create(Q),A=Q)}if(W){var H=ue.indexOf(Z);if(H!=-1)return Ie[H];ue.push(Z),Ie.push(B)}h(Z,f)&&Z.forEach(function(qe,L){var k=X(L,me-1),I=X(qe,me-1);B.set(k,I)}),h(Z,p)&&Z.forEach(function(qe){var L=X(qe,me-1);B.add(L)});for(var de in Z){var J;A&&(J=Object.getOwnPropertyDescriptor(A,de)),!(J&&J.set==null)&&(B[de]=X(Z[de],me-1))}if(Object.getOwnPropertySymbols)for(var ce=Object.getOwnPropertySymbols(Z),de=0;de<ce.length;de++){var Ne=ce[de],be=Object.getOwnPropertyDescriptor(Z,Ne);be&&!be.enumerable&&!le||(B[Ne]=X(Z[Ne],me-1),be.enumerable||Object.defineProperty(B,Ne,{enumerable:!1}))}if(le)for(var Ze=Object.getOwnPropertyNames(Z),de=0;de<Ze.length;de++){var Be=Ze[de],be=Object.getOwnPropertyDescriptor(Z,Be);be&&be.enumerable||(B[Be]=X(Z[Be],me-1),Object.defineProperty(B,Be,{enumerable:!1}))}return B}return X(se,Y)}$.clonePrototype=function(W){if(W===null)return null;var Y=function(){};return Y.prototype=W,new Y};function S(se){return Object.prototype.toString.call(se)}$.__objToStr=S;function P(se){return typeof se=="object"&&S(se)==="[object Date]"}$.__isDate=P;function w(se){return typeof se=="object"&&S(se)==="[object Array]"}$.__isArray=w;function te(se){return typeof se=="object"&&S(se)==="[object RegExp]"}$.__isRegExp=te;function re(se){var W="";return se.global&&(W+="g"),se.ignoreCase&&(W+="i"),se.multiline&&(W+="m"),W}return $.__getRegExpFlags=re,$}();T.exports&&(T.exports=t)}),O.register("ax3hF",function(T,ge){_(T.exports,"Buffer",()=>R,d=>R=d),_(T.exports,"INSPECT_MAX_BYTES",()=>t,d=>t=d);/*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ */var R,x,t,h,f=O("bVXCQ"),p=O("fpMiC");const v=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;R=w,x=X,t=50;const $=2147483647;h=$,w.TYPED_ARRAY_SUPPORT=S(),!w.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function S(){try{const d=new Uint8Array(1),o={foo:function(){return 42}};return Object.setPrototypeOf(o,Uint8Array.prototype),Object.setPrototypeOf(d,o),d.foo()===42}catch{return!1}}Object.defineProperty(w.prototype,"parent",{enumerable:!0,get:function(){if(w.isBuffer(this))return this.buffer}}),Object.defineProperty(w.prototype,"offset",{enumerable:!0,get:function(){if(w.isBuffer(this))return this.byteOffset}});function P(d){if(d>$)throw new RangeError('The value "'+d+'" is invalid for option "size"');const o=new Uint8Array(d);return Object.setPrototypeOf(o,w.prototype),o}function w(d,o,l){if(typeof d=="number"){if(typeof o=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return W(d)}return te(d,o,l)}w.poolSize=8192;function te(d,o,l){if(typeof d=="string")return Y(d,o);if(ArrayBuffer.isView(d))return le(d);if(d==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof d);if(je(d,ArrayBuffer)||d&&je(d.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(je(d,SharedArrayBuffer)||d&&je(d.buffer,SharedArrayBuffer)))return ue(d,o,l);if(typeof d=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const g=d.valueOf&&d.valueOf();if(g!=null&&g!==d)return w.from(g,o,l);const E=Ie(d);if(E)return E;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof d[Symbol.toPrimitive]=="function")return w.from(d[Symbol.toPrimitive]("string"),o,l);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof d)}w.from=function(d,o,l){return te(d,o,l)},Object.setPrototypeOf(w.prototype,Uint8Array.prototype),Object.setPrototypeOf(w,Uint8Array);function re(d){if(typeof d!="number")throw new TypeError('"size" argument must be of type number');if(d<0)throw new RangeError('The value "'+d+'" is invalid for option "size"')}function se(d,o,l){return re(d),d<=0?P(d):o!==void 0?typeof l=="string"?P(d).fill(o,l):P(d).fill(o):P(d)}w.alloc=function(d,o,l){return se(d,o,l)};function W(d){return re(d),P(d<0?0:Se(d)|0)}w.allocUnsafe=function(d){return W(d)},w.allocUnsafeSlow=function(d){return W(d)};function Y(d,o){if((typeof o!="string"||o==="")&&(o="utf8"),!w.isEncoding(o))throw new TypeError("Unknown encoding: "+o);const l=Z(d,o)|0;let g=P(l);const E=g.write(d,o);return E!==l&&(g=g.slice(0,E)),g}function Q(d){const o=d.length<0?0:Se(d.length)|0,l=P(o);for(let g=0;g<o;g+=1)l[g]=d[g]&255;return l}function le(d){if(je(d,Uint8Array)){const o=new Uint8Array(d);return ue(o.buffer,o.byteOffset,o.byteLength)}return Q(d)}function ue(d,o,l){if(o<0||d.byteLength<o)throw new RangeError('"offset" is outside of buffer bounds');if(d.byteLength<o+(l||0))throw new RangeError('"length" is outside of buffer bounds');let g;return o===void 0&&l===void 0?g=new Uint8Array(d):l===void 0?g=new Uint8Array(d,o):g=new Uint8Array(d,o,l),Object.setPrototypeOf(g,w.prototype),g}function Ie(d){if(w.isBuffer(d)){const o=Se(d.length)|0,l=P(o);return l.length===0||d.copy(l,0,0,o),l}if(d.length!==void 0)return typeof d.length!="number"||pt(d.length)?P(0):Q(d);if(d.type==="Buffer"&&Array.isArray(d.data))return Q(d.data)}function Se(d){if(d>=$)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+$.toString(16)+" bytes");return d|0}function X(d){return+d!=d&&(d=0),w.alloc(+d)}w.isBuffer=function(o){return o!=null&&o._isBuffer===!0&&o!==w.prototype},w.compare=function(o,l){if(je(o,Uint8Array)&&(o=w.from(o,o.offset,o.byteLength)),je(l,Uint8Array)&&(l=w.from(l,l.offset,l.byteLength)),!w.isBuffer(o)||!w.isBuffer(l))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(o===l)return 0;let g=o.length,E=l.length;for(let F=0,N=Math.min(g,E);F<N;++F)if(o[F]!==l[F]){g=o[F],E=l[F];break}return g<E?-1:E<g?1:0},w.isEncoding=function(o){switch(String(o).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},w.concat=function(o,l){if(!Array.isArray(o))throw new TypeError('"list" argument must be an Array of Buffers');if(o.length===0)return w.alloc(0);let g;if(l===void 0)for(l=0,g=0;g<o.length;++g)l+=o[g].length;const E=w.allocUnsafe(l);let F=0;for(g=0;g<o.length;++g){let N=o[g];if(je(N,Uint8Array))F+N.length>E.length?(w.isBuffer(N)||(N=w.from(N)),N.copy(E,F)):Uint8Array.prototype.set.call(E,N,F);else if(w.isBuffer(N))N.copy(E,F);else throw new TypeError('"list" argument must be an Array of Buffers');F+=N.length}return E};function Z(d,o){if(w.isBuffer(d))return d.length;if(ArrayBuffer.isView(d)||je(d,ArrayBuffer))return d.byteLength;if(typeof d!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof d);const l=d.length,g=arguments.length>2&&arguments[2]===!0;if(!g&&l===0)return 0;let E=!1;for(;;)switch(o){case"ascii":case"latin1":case"binary":return l;case"utf8":case"utf-8":return ve(d).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return l*2;case"hex":return l>>>1;case"base64":return ie(d).length;default:if(E)return g?-1:ve(d).length;o=(""+o).toLowerCase(),E=!0}}w.byteLength=Z;function me(d,o,l){let g=!1;if((o===void 0||o<0)&&(o=0),o>this.length||((l===void 0||l>this.length)&&(l=this.length),l<=0)||(l>>>=0,o>>>=0,l<=o))return"";for(d||(d="utf8");;)switch(d){case"hex":return D(this,o,l);case"utf8":case"utf-8":return Be(this,o,l);case"ascii":return k(this,o,l);case"latin1":case"binary":return I(this,o,l);case"base64":return Ze(this,o,l);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return q(this,o,l);default:if(g)throw new TypeError("Unknown encoding: "+d);d=(d+"").toLowerCase(),g=!0}}w.prototype._isBuffer=!0;function B(d,o,l){const g=d[o];d[o]=d[l],d[l]=g}w.prototype.swap16=function(){const o=this.length;if(o%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let l=0;l<o;l+=2)B(this,l,l+1);return this},w.prototype.swap32=function(){const o=this.length;if(o%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let l=0;l<o;l+=4)B(this,l,l+3),B(this,l+1,l+2);return this},w.prototype.swap64=function(){const o=this.length;if(o%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let l=0;l<o;l+=8)B(this,l,l+7),B(this,l+1,l+6),B(this,l+2,l+5),B(this,l+3,l+4);return this},w.prototype.toString=function(){const o=this.length;return o===0?"":arguments.length===0?Be(this,0,o):me.apply(this,arguments)},w.prototype.toLocaleString=w.prototype.toString,w.prototype.equals=function(o){if(!w.isBuffer(o))throw new TypeError("Argument must be a Buffer");return this===o?!0:w.compare(this,o)===0},w.prototype.inspect=function(){let o="";const l=t;return o=this.toString("hex",0,l).replace(/(.{2})/g,"$1 ").trim(),this.length>l&&(o+=" ... "),"<Buffer "+o+">"},v&&(w.prototype[v]=w.prototype.inspect),w.prototype.compare=function(o,l,g,E,F){if(je(o,Uint8Array)&&(o=w.from(o,o.offset,o.byteLength)),!w.isBuffer(o))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof o);if(l===void 0&&(l=0),g===void 0&&(g=o?o.length:0),E===void 0&&(E=0),F===void 0&&(F=this.length),l<0||g>o.length||E<0||F>this.length)throw new RangeError("out of range index");if(E>=F&&l>=g)return 0;if(E>=F)return-1;if(l>=g)return 1;if(l>>>=0,g>>>=0,E>>>=0,F>>>=0,this===o)return 0;let N=F-E,pe=g-l;const Ve=Math.min(N,pe),Te=this.slice(E,F),We=o.slice(l,g);for(let Re=0;Re<Ve;++Re)if(Te[Re]!==We[Re]){N=Te[Re],pe=We[Re];break}return N<pe?-1:pe<N?1:0};function A(d,o,l,g,E){if(d.length===0)return-1;if(typeof l=="string"?(g=l,l=0):l>2147483647?l=2147483647:l<-2147483648&&(l=-2147483648),l=+l,pt(l)&&(l=E?0:d.length-1),l<0&&(l=d.length+l),l>=d.length){if(E)return-1;l=d.length-1}else if(l<0)if(E)l=0;else return-1;if(typeof o=="string"&&(o=w.from(o,g)),w.isBuffer(o))return o.length===0?-1:H(d,o,l,g,E);if(typeof o=="number")return o=o&255,typeof Uint8Array.prototype.indexOf=="function"?E?Uint8Array.prototype.indexOf.call(d,o,l):Uint8Array.prototype.lastIndexOf.call(d,o,l):H(d,[o],l,g,E);throw new TypeError("val must be string, number or Buffer")}function H(d,o,l,g,E){let F=1,N=d.length,pe=o.length;if(g!==void 0&&(g=String(g).toLowerCase(),g==="ucs2"||g==="ucs-2"||g==="utf16le"||g==="utf-16le")){if(d.length<2||o.length<2)return-1;F=2,N/=2,pe/=2,l/=2}function Ve(We,Re){return F===1?We[Re]:We.readUInt16BE(Re*F)}let Te;if(E){let We=-1;for(Te=l;Te<N;Te++)if(Ve(d,Te)===Ve(o,We===-1?0:Te-We)){if(We===-1&&(We=Te),Te-We+1===pe)return We*F}else We!==-1&&(Te-=Te-We),We=-1}else for(l+pe>N&&(l=N-pe),Te=l;Te>=0;Te--){let We=!0;for(let Re=0;Re<pe;Re++)if(Ve(d,Te+Re)!==Ve(o,Re)){We=!1;break}if(We)return Te}return-1}w.prototype.includes=function(o,l,g){return this.indexOf(o,l,g)!==-1},w.prototype.indexOf=function(o,l,g){return A(this,o,l,g,!0)},w.prototype.lastIndexOf=function(o,l,g){return A(this,o,l,g,!1)};function de(d,o,l,g){l=Number(l)||0;const E=d.length-l;g?(g=Number(g),g>E&&(g=E)):g=E;const F=o.length;g>F/2&&(g=F/2);let N;for(N=0;N<g;++N){const pe=parseInt(o.substr(N*2,2),16);if(pt(pe))return N;d[l+N]=pe}return N}function J(d,o,l,g){return Ge(ve(o,d.length-l),d,l,g)}function ce(d,o,l,g){return Ge(De(o),d,l,g)}function Ne(d,o,l,g){return Ge(ie(o),d,l,g)}function be(d,o,l,g){return Ge(we(o,d.length-l),d,l,g)}w.prototype.write=function(o,l,g,E){if(l===void 0)E="utf8",g=this.length,l=0;else if(g===void 0&&typeof l=="string")E=l,g=this.length,l=0;else if(isFinite(l))l=l>>>0,isFinite(g)?(g=g>>>0,E===void 0&&(E="utf8")):(E=g,g=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const F=this.length-l;if((g===void 0||g>F)&&(g=F),o.length>0&&(g<0||l<0)||l>this.length)throw new RangeError("Attempt to write outside buffer bounds");E||(E="utf8");let N=!1;for(;;)switch(E){case"hex":return de(this,o,l,g);case"utf8":case"utf-8":return J(this,o,l,g);case"ascii":case"latin1":case"binary":return ce(this,o,l,g);case"base64":return Ne(this,o,l,g);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return be(this,o,l,g);default:if(N)throw new TypeError("Unknown encoding: "+E);E=(""+E).toLowerCase(),N=!0}},w.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Ze(d,o,l){return o===0&&l===d.length?f.fromByteArray(d):f.fromByteArray(d.slice(o,l))}function Be(d,o,l){l=Math.min(d.length,l);const g=[];let E=o;for(;E<l;){const F=d[E];let N=null,pe=F>239?4:F>223?3:F>191?2:1;if(E+pe<=l){let Ve,Te,We,Re;switch(pe){case 1:F<128&&(N=F);break;case 2:Ve=d[E+1],(Ve&192)===128&&(Re=(F&31)<<6|Ve&63,Re>127&&(N=Re));break;case 3:Ve=d[E+1],Te=d[E+2],(Ve&192)===128&&(Te&192)===128&&(Re=(F&15)<<12|(Ve&63)<<6|Te&63,Re>2047&&(Re<55296||Re>57343)&&(N=Re));break;case 4:Ve=d[E+1],Te=d[E+2],We=d[E+3],(Ve&192)===128&&(Te&192)===128&&(We&192)===128&&(Re=(F&15)<<18|(Ve&63)<<12|(Te&63)<<6|We&63,Re>65535&&Re<1114112&&(N=Re))}}N===null?(N=65533,pe=1):N>65535&&(N-=65536,g.push(N>>>10&1023|55296),N=56320|N&1023),g.push(N),E+=pe}return L(g)}const qe=4096;function L(d){const o=d.length;if(o<=qe)return String.fromCharCode.apply(String,d);let l="",g=0;for(;g<o;)l+=String.fromCharCode.apply(String,d.slice(g,g+=qe));return l}function k(d,o,l){let g="";l=Math.min(d.length,l);for(let E=o;E<l;++E)g+=String.fromCharCode(d[E]&127);return g}function I(d,o,l){let g="";l=Math.min(d.length,l);for(let E=o;E<l;++E)g+=String.fromCharCode(d[E]);return g}function D(d,o,l){const g=d.length;(!o||o<0)&&(o=0),(!l||l<0||l>g)&&(l=g);let E="";for(let F=o;F<l;++F)E+=dt[d[F]];return E}function q(d,o,l){const g=d.slice(o,l);let E="";for(let F=0;F<g.length-1;F+=2)E+=String.fromCharCode(g[F]+g[F+1]*256);return E}w.prototype.slice=function(o,l){const g=this.length;o=~~o,l=l===void 0?g:~~l,o<0?(o+=g,o<0&&(o=0)):o>g&&(o=g),l<0?(l+=g,l<0&&(l=0)):l>g&&(l=g),l<o&&(l=o);const E=this.subarray(o,l);return Object.setPrototypeOf(E,w.prototype),E};function U(d,o,l){if(d%1!==0||d<0)throw new RangeError("offset is not uint");if(d+o>l)throw new RangeError("Trying to access beyond buffer length")}w.prototype.readUintLE=w.prototype.readUIntLE=function(o,l,g){o=o>>>0,l=l>>>0,g||U(o,l,this.length);let E=this[o],F=1,N=0;for(;++N<l&&(F*=256);)E+=this[o+N]*F;return E},w.prototype.readUintBE=w.prototype.readUIntBE=function(o,l,g){o=o>>>0,l=l>>>0,g||U(o,l,this.length);let E=this[o+--l],F=1;for(;l>0&&(F*=256);)E+=this[o+--l]*F;return E},w.prototype.readUint8=w.prototype.readUInt8=function(o,l){return o=o>>>0,l||U(o,1,this.length),this[o]},w.prototype.readUint16LE=w.prototype.readUInt16LE=function(o,l){return o=o>>>0,l||U(o,2,this.length),this[o]|this[o+1]<<8},w.prototype.readUint16BE=w.prototype.readUInt16BE=function(o,l){return o=o>>>0,l||U(o,2,this.length),this[o]<<8|this[o+1]},w.prototype.readUint32LE=w.prototype.readUInt32LE=function(o,l){return o=o>>>0,l||U(o,4,this.length),(this[o]|this[o+1]<<8|this[o+2]<<16)+this[o+3]*16777216},w.prototype.readUint32BE=w.prototype.readUInt32BE=function(o,l){return o=o>>>0,l||U(o,4,this.length),this[o]*16777216+(this[o+1]<<16|this[o+2]<<8|this[o+3])},w.prototype.readBigUInt64LE=nt(function(o){o=o>>>0,M(o,"offset");const l=this[o],g=this[o+7];(l===void 0||g===void 0)&&fe(o,this.length-8);const E=l+this[++o]*256+this[++o]*2**16+this[++o]*2**24,F=this[++o]+this[++o]*256+this[++o]*2**16+g*2**24;return BigInt(E)+(BigInt(F)<<BigInt(32))}),w.prototype.readBigUInt64BE=nt(function(o){o=o>>>0,M(o,"offset");const l=this[o],g=this[o+7];(l===void 0||g===void 0)&&fe(o,this.length-8);const E=l*2**24+this[++o]*2**16+this[++o]*256+this[++o],F=this[++o]*2**24+this[++o]*2**16+this[++o]*256+g;return(BigInt(E)<<BigInt(32))+BigInt(F)}),w.prototype.readIntLE=function(o,l,g){o=o>>>0,l=l>>>0,g||U(o,l,this.length);let E=this[o],F=1,N=0;for(;++N<l&&(F*=256);)E+=this[o+N]*F;return F*=128,E>=F&&(E-=Math.pow(2,8*l)),E},w.prototype.readIntBE=function(o,l,g){o=o>>>0,l=l>>>0,g||U(o,l,this.length);let E=l,F=1,N=this[o+--E];for(;E>0&&(F*=256);)N+=this[o+--E]*F;return F*=128,N>=F&&(N-=Math.pow(2,8*l)),N},w.prototype.readInt8=function(o,l){return o=o>>>0,l||U(o,1,this.length),this[o]&128?(255-this[o]+1)*-1:this[o]},w.prototype.readInt16LE=function(o,l){o=o>>>0,l||U(o,2,this.length);const g=this[o]|this[o+1]<<8;return g&32768?g|4294901760:g},w.prototype.readInt16BE=function(o,l){o=o>>>0,l||U(o,2,this.length);const g=this[o+1]|this[o]<<8;return g&32768?g|4294901760:g},w.prototype.readInt32LE=function(o,l){return o=o>>>0,l||U(o,4,this.length),this[o]|this[o+1]<<8|this[o+2]<<16|this[o+3]<<24},w.prototype.readInt32BE=function(o,l){return o=o>>>0,l||U(o,4,this.length),this[o]<<24|this[o+1]<<16|this[o+2]<<8|this[o+3]},w.prototype.readBigInt64LE=nt(function(o){o=o>>>0,M(o,"offset");const l=this[o],g=this[o+7];(l===void 0||g===void 0)&&fe(o,this.length-8);const E=this[o+4]+this[o+5]*256+this[o+6]*2**16+(g<<24);return(BigInt(E)<<BigInt(32))+BigInt(l+this[++o]*256+this[++o]*2**16+this[++o]*2**24)}),w.prototype.readBigInt64BE=nt(function(o){o=o>>>0,M(o,"offset");const l=this[o],g=this[o+7];(l===void 0||g===void 0)&&fe(o,this.length-8);const E=(l<<24)+this[++o]*2**16+this[++o]*256+this[++o];return(BigInt(E)<<BigInt(32))+BigInt(this[++o]*2**24+this[++o]*2**16+this[++o]*256+g)}),w.prototype.readFloatLE=function(o,l){return o=o>>>0,l||U(o,4,this.length),p.read(this,o,!0,23,4)},w.prototype.readFloatBE=function(o,l){return o=o>>>0,l||U(o,4,this.length),p.read(this,o,!1,23,4)},w.prototype.readDoubleLE=function(o,l){return o=o>>>0,l||U(o,8,this.length),p.read(this,o,!0,52,8)},w.prototype.readDoubleBE=function(o,l){return o=o>>>0,l||U(o,8,this.length),p.read(this,o,!1,52,8)};function ae(d,o,l,g,E,F){if(!w.isBuffer(d))throw new TypeError('"buffer" argument must be a Buffer instance');if(o>E||o<F)throw new RangeError('"value" argument is out of bounds');if(l+g>d.length)throw new RangeError("Index out of range")}w.prototype.writeUintLE=w.prototype.writeUIntLE=function(o,l,g,E){if(o=+o,l=l>>>0,g=g>>>0,!E){const pe=Math.pow(2,8*g)-1;ae(this,o,l,g,pe,0)}let F=1,N=0;for(this[l]=o&255;++N<g&&(F*=256);)this[l+N]=o/F&255;return l+g},w.prototype.writeUintBE=w.prototype.writeUIntBE=function(o,l,g,E){if(o=+o,l=l>>>0,g=g>>>0,!E){const pe=Math.pow(2,8*g)-1;ae(this,o,l,g,pe,0)}let F=g-1,N=1;for(this[l+F]=o&255;--F>=0&&(N*=256);)this[l+F]=o/N&255;return l+g},w.prototype.writeUint8=w.prototype.writeUInt8=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,1,255,0),this[l]=o&255,l+1},w.prototype.writeUint16LE=w.prototype.writeUInt16LE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,2,65535,0),this[l]=o&255,this[l+1]=o>>>8,l+2},w.prototype.writeUint16BE=w.prototype.writeUInt16BE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,2,65535,0),this[l]=o>>>8,this[l+1]=o&255,l+2},w.prototype.writeUint32LE=w.prototype.writeUInt32LE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,4,4294967295,0),this[l+3]=o>>>24,this[l+2]=o>>>16,this[l+1]=o>>>8,this[l]=o&255,l+4},w.prototype.writeUint32BE=w.prototype.writeUInt32BE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,4,4294967295,0),this[l]=o>>>24,this[l+1]=o>>>16,this[l+2]=o>>>8,this[l+3]=o&255,l+4};function Oe(d,o,l,g,E){j(o,g,E,d,l,7);let F=Number(o&BigInt(4294967295));d[l++]=F,F=F>>8,d[l++]=F,F=F>>8,d[l++]=F,F=F>>8,d[l++]=F;let N=Number(o>>BigInt(32)&BigInt(4294967295));return d[l++]=N,N=N>>8,d[l++]=N,N=N>>8,d[l++]=N,N=N>>8,d[l++]=N,l}function ot(d,o,l,g,E){j(o,g,E,d,l,7);let F=Number(o&BigInt(4294967295));d[l+7]=F,F=F>>8,d[l+6]=F,F=F>>8,d[l+5]=F,F=F>>8,d[l+4]=F;let N=Number(o>>BigInt(32)&BigInt(4294967295));return d[l+3]=N,N=N>>8,d[l+2]=N,N=N>>8,d[l+1]=N,N=N>>8,d[l]=N,l+8}w.prototype.writeBigUInt64LE=nt(function(o,l=0){return Oe(this,o,l,BigInt(0),BigInt("0xffffffffffffffff"))}),w.prototype.writeBigUInt64BE=nt(function(o,l=0){return ot(this,o,l,BigInt(0),BigInt("0xffffffffffffffff"))}),w.prototype.writeIntLE=function(o,l,g,E){if(o=+o,l=l>>>0,!E){const Ve=Math.pow(2,8*g-1);ae(this,o,l,g,Ve-1,-Ve)}let F=0,N=1,pe=0;for(this[l]=o&255;++F<g&&(N*=256);)o<0&&pe===0&&this[l+F-1]!==0&&(pe=1),this[l+F]=(o/N>>0)-pe&255;return l+g},w.prototype.writeIntBE=function(o,l,g,E){if(o=+o,l=l>>>0,!E){const Ve=Math.pow(2,8*g-1);ae(this,o,l,g,Ve-1,-Ve)}let F=g-1,N=1,pe=0;for(this[l+F]=o&255;--F>=0&&(N*=256);)o<0&&pe===0&&this[l+F+1]!==0&&(pe=1),this[l+F]=(o/N>>0)-pe&255;return l+g},w.prototype.writeInt8=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,1,127,-128),o<0&&(o=255+o+1),this[l]=o&255,l+1},w.prototype.writeInt16LE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,2,32767,-32768),this[l]=o&255,this[l+1]=o>>>8,l+2},w.prototype.writeInt16BE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,2,32767,-32768),this[l]=o>>>8,this[l+1]=o&255,l+2},w.prototype.writeInt32LE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,4,2147483647,-2147483648),this[l]=o&255,this[l+1]=o>>>8,this[l+2]=o>>>16,this[l+3]=o>>>24,l+4},w.prototype.writeInt32BE=function(o,l,g){return o=+o,l=l>>>0,g||ae(this,o,l,4,2147483647,-2147483648),o<0&&(o=4294967295+o+1),this[l]=o>>>24,this[l+1]=o>>>16,this[l+2]=o>>>8,this[l+3]=o&255,l+4},w.prototype.writeBigInt64LE=nt(function(o,l=0){return Oe(this,o,l,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),w.prototype.writeBigInt64BE=nt(function(o,l=0){return ot(this,o,l,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ye(d,o,l,g,E,F){if(l+g>d.length)throw new RangeError("Index out of range");if(l<0)throw new RangeError("Index out of range")}function Ke(d,o,l,g,E){return o=+o,l=l>>>0,E||ye(d,o,l,4,34028234663852886e22,-34028234663852886e22),p.write(d,o,l,g,23,4),l+4}w.prototype.writeFloatLE=function(o,l,g){return Ke(this,o,l,!0,g)},w.prototype.writeFloatBE=function(o,l,g){return Ke(this,o,l,!1,g)};function at(d,o,l,g,E){return o=+o,l=l>>>0,E||ye(d,o,l,8,17976931348623157e292,-17976931348623157e292),p.write(d,o,l,g,52,8),l+8}w.prototype.writeDoubleLE=function(o,l,g){return at(this,o,l,!0,g)},w.prototype.writeDoubleBE=function(o,l,g){return at(this,o,l,!1,g)},w.prototype.copy=function(o,l,g,E){if(!w.isBuffer(o))throw new TypeError("argument should be a Buffer");if(g||(g=0),!E&&E!==0&&(E=this.length),l>=o.length&&(l=o.length),l||(l=0),E>0&&E<g&&(E=g),E===g||o.length===0||this.length===0)return 0;if(l<0)throw new RangeError("targetStart out of bounds");if(g<0||g>=this.length)throw new RangeError("Index out of range");if(E<0)throw new RangeError("sourceEnd out of bounds");E>this.length&&(E=this.length),o.length-l<E-g&&(E=o.length-l+g);const F=E-g;return this===o&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(l,g,E):Uint8Array.prototype.set.call(o,this.subarray(g,E),l),F},w.prototype.fill=function(o,l,g,E){if(typeof o=="string"){if(typeof l=="string"?(E=l,l=0,g=this.length):typeof g=="string"&&(E=g,g=this.length),E!==void 0&&typeof E!="string")throw new TypeError("encoding must be a string");if(typeof E=="string"&&!w.isEncoding(E))throw new TypeError("Unknown encoding: "+E);if(o.length===1){const N=o.charCodeAt(0);(E==="utf8"&&N<128||E==="latin1")&&(o=N)}}else typeof o=="number"?o=o&255:typeof o=="boolean"&&(o=Number(o));if(l<0||this.length<l||this.length<g)throw new RangeError("Out of range index");if(g<=l)return this;l=l>>>0,g=g===void 0?this.length:g>>>0,o||(o=0);let F;if(typeof o=="number")for(F=l;F<g;++F)this[F]=o;else{const N=w.isBuffer(o)?o:w.from(o,E),pe=N.length;if(pe===0)throw new TypeError('The value "'+o+'" is invalid for argument "value"');for(F=0;F<g-l;++F)this[F+l]=N[F%pe]}return this};const He={};function ft(d,o,l){He[d]=class extends l{constructor(){super(),Object.defineProperty(this,"message",{value:o.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${d}]`,this.stack,delete this.name}get code(){return d}set code(E){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:E,writable:!0})}toString(){return`${this.name} [${d}]: ${this.message}`}}}ft("ERR_BUFFER_OUT_OF_BOUNDS",function(d){return d?`${d} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),ft("ERR_INVALID_ARG_TYPE",function(d,o){return`The "${d}" argument must be of type number. Received type ${typeof o}`},TypeError),ft("ERR_OUT_OF_RANGE",function(d,o,l){let g=`The value of "${d}" is out of range.`,E=l;return Number.isInteger(l)&&Math.abs(l)>2**32?E=K(String(l)):typeof l=="bigint"&&(E=String(l),(l>BigInt(2)**BigInt(32)||l<-(BigInt(2)**BigInt(32)))&&(E=K(E)),E+="n"),g+=` It must be ${o}. Received ${E}`,g},RangeError);function K(d){let o="",l=d.length;const g=d[0]==="-"?1:0;for(;l>=g+4;l-=3)o=`_${d.slice(l-3,l)}${o}`;return`${d.slice(0,l)}${o}`}function V(d,o,l){M(o,"offset"),(d[o]===void 0||d[o+l]===void 0)&&fe(o,d.length-(l+1))}function j(d,o,l,g,E,F){if(d>l||d<o){const N=typeof o=="bigint"?"n":"";let pe;throw F>3?o===0||o===BigInt(0)?pe=`>= 0${N} and < 2${N} ** ${(F+1)*8}${N}`:pe=`>= -(2${N} ** ${(F+1)*8-1}${N}) and < 2 ** ${(F+1)*8-1}${N}`:pe=`>= ${o}${N} and <= ${l}${N}`,new He.ERR_OUT_OF_RANGE("value",pe,d)}V(g,E,F)}function M(d,o){if(typeof d!="number")throw new He.ERR_INVALID_ARG_TYPE(o,"number",d)}function fe(d,o,l){throw Math.floor(d)!==d?(M(d,l),new He.ERR_OUT_OF_RANGE(l||"offset","an integer",d)):o<0?new He.ERR_BUFFER_OUT_OF_BOUNDS:new He.ERR_OUT_OF_RANGE(l||"offset",`>= ${l?1:0} and <= ${o}`,d)}const Ae=/[^+/0-9A-Za-z-_]/g;function he(d){if(d=d.split("=")[0],d=d.trim().replace(Ae,""),d.length<2)return"";for(;d.length%4!==0;)d=d+"=";return d}function ve(d,o){o=o||1/0;let l;const g=d.length;let E=null;const F=[];for(let N=0;N<g;++N){if(l=d.charCodeAt(N),l>55295&&l<57344){if(!E){if(l>56319){(o-=3)>-1&&F.push(239,191,189);continue}else if(N+1===g){(o-=3)>-1&&F.push(239,191,189);continue}E=l;continue}if(l<56320){(o-=3)>-1&&F.push(239,191,189),E=l;continue}l=(E-55296<<10|l-56320)+65536}else E&&(o-=3)>-1&&F.push(239,191,189);if(E=null,l<128){if((o-=1)<0)break;F.push(l)}else if(l<2048){if((o-=2)<0)break;F.push(l>>6|192,l&63|128)}else if(l<65536){if((o-=3)<0)break;F.push(l>>12|224,l>>6&63|128,l&63|128)}else if(l<1114112){if((o-=4)<0)break;F.push(l>>18|240,l>>12&63|128,l>>6&63|128,l&63|128)}else throw new Error("Invalid code point")}return F}function De(d){const o=[];for(let l=0;l<d.length;++l)o.push(d.charCodeAt(l)&255);return o}function we(d,o){let l,g,E;const F=[];for(let N=0;N<d.length&&!((o-=2)<0);++N)l=d.charCodeAt(N),g=l>>8,E=l%256,F.push(E),F.push(g);return F}function ie(d){return f.toByteArray(he(d))}function Ge(d,o,l,g){let E;for(E=0;E<g&&!(E+l>=o.length||E>=d.length);++E)o[E+l]=d[E];return E}function je(d,o){return d instanceof o||d!=null&&d.constructor!=null&&d.constructor.name!=null&&d.constructor.name===o.name}function pt(d){return d!==d}const dt=function(){const d="0123456789abcdef",o=new Array(256);for(let l=0;l<16;++l){const g=l*16;for(let E=0;E<16;++E)o[g+E]=d[l]+d[E]}return o}();function nt(d){return typeof BigInt>"u"?st:d}function st(){throw new Error("BigInt not supported")}}),O.register("fpMiC",function(T,ge){_(T.exports,"read",()=>R,t=>R=t),_(T.exports,"write",()=>x,t=>x=t);/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */var R,x;R=function(t,h,f,p,v){var $,S,P=v*8-p-1,w=(1<<P)-1,te=w>>1,re=-7,se=f?v-1:0,W=f?-1:1,Y=t[h+se];for(se+=W,$=Y&(1<<-re)-1,Y>>=-re,re+=P;re>0;$=$*256+t[h+se],se+=W,re-=8);for(S=$&(1<<-re)-1,$>>=-re,re+=p;re>0;S=S*256+t[h+se],se+=W,re-=8);if($===0)$=1-te;else{if($===w)return S?NaN:(Y?-1:1)*(1/0);S=S+Math.pow(2,p),$=$-te}return(Y?-1:1)*S*Math.pow(2,$-p)},x=function(t,h,f,p,v,$){var S,P,w,te=$*8-v-1,re=(1<<te)-1,se=re>>1,W=v===23?Math.pow(2,-24)-Math.pow(2,-77):0,Y=p?0:$-1,Q=p?1:-1,le=h<0||h===0&&1/h<0?1:0;for(h=Math.abs(h),isNaN(h)||h===1/0?(P=isNaN(h)?1:0,S=re):(S=Math.floor(Math.log(h)/Math.LN2),h*(w=Math.pow(2,-S))<1&&(S--,w*=2),S+se>=1?h+=W/w:h+=W*Math.pow(2,1-se),h*w>=2&&(S++,w/=2),S+se>=re?(P=0,S=re):S+se>=1?(P=(h*w-1)*Math.pow(2,v),S=S+se):(P=h*Math.pow(2,se-1)*Math.pow(2,v),S=0));v>=8;t[f+Y]=P&255,Y+=Q,P/=256,v-=8);for(S=S<<v|P,te+=v;te>0;t[f+Y]=S&255,Y+=Q,S/=256,te-=8);t[f+Y-Q]|=le*128}}),O.register("jDtEd",function(T,ge){T.exports=O("ctKdH").BrotliDecompressBuffer}),O.register("ctKdH",function(T,ge){_(T.exports,"BrotliDecompressBuffer",()=>x,K=>x=K);var R,x,t,f=O("f5xzS"),h=f.BrotliInput,f=O("f5xzS"),p=f.BrotliOutput,v=O("cIKkM"),$=O("fi1SF"),P=O("hFVYV"),S=P.HuffmanCode,P=O("hFVYV"),w=P.BrotliBuildHuffmanTable,te=O("2bnHY"),re=O("aLgJS"),se=O("9TKg3"),W=8,Y=16,Q=256,le=704,ue=26,Ie=6,Se=2,X=8,Z=255,me=1080,B=18,A=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),H=16,de=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),J=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),ce=new Uint16Array([256,402,436,468,500,534,566,598,630,662,694,726,758,790,822,854,886,920,952,984,1016,1048,1080]);function Ne(K){var V;return K.readBits(1)===0?16:(V=K.readBits(3),V>0?17+V:(V=K.readBits(3),V>0?8+V:17))}function be(K){if(K.readBits(1)){var V=K.readBits(3);return V===0?1:K.readBits(V)+(1<<V)}return 0}function Ze(){this.meta_block_length=0,this.input_end=0,this.is_uncompressed=0,this.is_metadata=!1}function Be(K){var V=new Ze,j,M,fe;if(V.input_end=K.readBits(1),V.input_end&&K.readBits(1))return V;if(j=K.readBits(2)+4,j===7){if(V.is_metadata=!0,K.readBits(1)!==0)throw new Error("Invalid reserved bit");if(M=K.readBits(2),M===0)return V;for(fe=0;fe<M;fe++){var Ae=K.readBits(8);if(fe+1===M&&M>1&&Ae===0)throw new Error("Invalid size byte");V.meta_block_length|=Ae<<fe*8}}else for(fe=0;fe<j;++fe){var he=K.readBits(4);if(fe+1===j&&j>4&&he===0)throw new Error("Invalid size nibble");V.meta_block_length|=he<<fe*4}return++V.meta_block_length,!V.input_end&&!V.is_metadata&&(V.is_uncompressed=K.readBits(1)),V}function qe(K,V,j){var M=V,fe;return j.fillBitWindow(),V+=j.val_>>>j.bit_pos_&Z,fe=K[V].bits-X,fe>0&&(j.bit_pos_+=X,V+=K[V].value,V+=j.val_>>>j.bit_pos_&(1<<fe)-1),j.bit_pos_+=K[V].bits,K[V].value}function L(K,V,j,M){for(var fe=0,Ae=W,he=0,ve=0,De=32768,we=[],ie=0;ie<32;ie++)we.push(new S(0,0));for(w(we,0,5,K,B);fe<V&&De>0;){var Ge=0,je;if(M.readMoreInput(),M.fillBitWindow(),Ge+=M.val_>>>M.bit_pos_&31,M.bit_pos_+=we[Ge].bits,je=we[Ge].value&255,je<Y)he=0,j[fe++]=je,je!==0&&(Ae=je,De-=32768>>je);else{var pt=je-14,dt,nt,st=0;if(je===Y&&(st=Ae),ve!==st&&(he=0,ve=st),dt=he,he>0&&(he-=2,he<<=pt),he+=M.readBits(pt)+3,nt=he-dt,fe+nt>V)throw new Error("[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols");for(var d=0;d<nt;d++)j[fe+d]=ve;fe+=nt,ve!==0&&(De-=nt<<15-ve)}}if(De!==0)throw new Error("[ReadHuffmanCodeLengths] space = "+De);for(;fe<V;fe++)j[fe]=0}function k(K,V,j,M){var fe=0,Ae,he=new Uint8Array(K);if(M.readMoreInput(),Ae=M.readBits(2),Ae===1){for(var ve,De=K-1,we=0,ie=new Int32Array(4),Ge=M.readBits(2)+1;De;)De>>=1,++we;for(ve=0;ve<Ge;++ve)ie[ve]=M.readBits(we)%K,he[ie[ve]]=2;switch(he[ie[0]]=1,Ge){case 1:break;case 3:if(ie[0]===ie[1]||ie[0]===ie[2]||ie[1]===ie[2])throw new Error("[ReadHuffmanCode] invalid symbols");break;case 2:if(ie[0]===ie[1])throw new Error("[ReadHuffmanCode] invalid symbols");he[ie[1]]=1;break;case 4:if(ie[0]===ie[1]||ie[0]===ie[2]||ie[0]===ie[3]||ie[1]===ie[2]||ie[1]===ie[3]||ie[2]===ie[3])throw new Error("[ReadHuffmanCode] invalid symbols");M.readBits(1)?(he[ie[2]]=3,he[ie[3]]=3):he[ie[0]]=2;break}}else{var ve,je=new Uint8Array(B),pt=32,dt=0,nt=[new S(2,0),new S(2,4),new S(2,3),new S(3,2),new S(2,0),new S(2,4),new S(2,3),new S(4,1),new S(2,0),new S(2,4),new S(2,3),new S(3,2),new S(2,0),new S(2,4),new S(2,3),new S(4,5)];for(ve=Ae;ve<B&&pt>0;++ve){var st=A[ve],d=0,o;M.fillBitWindow(),d+=M.val_>>>M.bit_pos_&15,M.bit_pos_+=nt[d].bits,o=nt[d].value,je[st]=o,o!==0&&(pt-=32>>o,++dt)}if(!(dt===1||pt===0))throw new Error("[ReadHuffmanCode] invalid num_codes or space");L(je,K,he,M)}if(fe=w(V,j,X,he,K),fe===0)throw new Error("[ReadHuffmanCode] BuildHuffmanTable failed: ");return fe}function I(K,V,j){var M,fe;return M=qe(K,V,j),fe=re.kBlockLengthPrefixCode[M].nbits,re.kBlockLengthPrefixCode[M].offset+j.readBits(fe)}function D(K,V,j){var M;return K<H?(j+=de[K],j&=3,M=V[j]+J[K]):M=K-H+1,M}function q(K,V){for(var j=K[V],M=V;M;--M)K[M]=K[M-1];K[0]=j}function U(K,V){var j=new Uint8Array(256),M;for(M=0;M<256;++M)j[M]=M;for(M=0;M<V;++M){var fe=K[M];K[M]=j[fe],fe&&q(j,fe)}}function ae(K,V){this.alphabet_size=K,this.num_htrees=V,this.codes=new Array(V+V*ce[K+31>>>5]),this.htrees=new Uint32Array(V)}ae.prototype.decode=function(K){var V,j,M=0;for(V=0;V<this.num_htrees;++V)this.htrees[V]=M,j=k(this.alphabet_size,this.codes,M,K),M+=j};function Oe(K,V){var j={num_htrees:null,context_map:null},M,fe=0,Ae,he;V.readMoreInput();var ve=j.num_htrees=be(V)+1,De=j.context_map=new Uint8Array(K);if(ve<=1)return j;for(M=V.readBits(1),M&&(fe=V.readBits(4)+1),Ae=[],he=0;he<me;he++)Ae[he]=new S(0,0);for(k(ve+fe,Ae,0,V),he=0;he<K;){var we;if(V.readMoreInput(),we=qe(Ae,0,V),we===0)De[he]=0,++he;else if(we<=fe)for(var ie=1+(1<<we)+V.readBits(we);--ie;){if(he>=K)throw new Error("[DecodeContextMap] i >= context_map_size");De[he]=0,++he}else De[he]=we-fe,++he}return V.readBits(1)&&U(De,K),j}function ot(K,V,j,M,fe,Ae,he){var ve=j*2,De=j,we=qe(V,j*me,he),ie;we===0?ie=fe[ve+(Ae[De]&1)]:we===1?ie=fe[ve+(Ae[De]-1&1)]+1:ie=we-2,ie>=K&&(ie-=K),M[j]=ie,fe[ve+(Ae[De]&1)]=ie,++Ae[De]}function ye(K,V,j,M,fe,Ae){var he=fe+1,ve=j&fe,De=Ae.pos_&v.IBUF_MASK,we;if(V<8||Ae.bit_pos_+(V<<3)<Ae.bit_end_pos_){for(;V-- >0;)Ae.readMoreInput(),M[ve++]=Ae.readBits(8),ve===he&&(K.write(M,he),ve=0);return}if(Ae.bit_end_pos_<32)throw new Error("[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32");for(;Ae.bit_pos_<32;)M[ve]=Ae.val_>>>Ae.bit_pos_,Ae.bit_pos_+=8,++ve,--V;if(we=Ae.bit_end_pos_-Ae.bit_pos_>>3,De+we>v.IBUF_MASK){for(var ie=v.IBUF_MASK+1-De,Ge=0;Ge<ie;Ge++)M[ve+Ge]=Ae.buf_[De+Ge];we-=ie,ve+=ie,V-=ie,De=0}for(var Ge=0;Ge<we;Ge++)M[ve+Ge]=Ae.buf_[De+Ge];if(ve+=we,V-=we,ve>=he){K.write(M,he),ve-=he;for(var Ge=0;Ge<ve;Ge++)M[Ge]=M[he+Ge]}for(;ve+V>=he;){if(we=he-ve,Ae.input_.read(M,ve,we)<we)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");K.write(M,he),V-=we,ve=0}if(Ae.input_.read(M,ve,V)<V)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");Ae.reset()}function Ke(K){var V=K.bit_pos_+7&-8,j=K.readBits(V-K.bit_pos_);return j==0}function at(K){var V=new h(K),j=new v(V);Ne(j);var M=Be(j);return M.meta_block_length}R=at;function He(K,V){var j=new h(K);V==null&&(V=at(K));var M=new Uint8Array(V),fe=new p(M);return ft(j,fe),fe.pos<fe.buffer.length&&(fe.buffer=fe.buffer.subarray(0,fe.pos)),fe.buffer}x=He;function ft(K,V){var j,M=0,fe=0,Ae=0,he,ve=0,De,we,ie,Ge,je=[16,15,11,4],pt=0,dt=0,nt=0,st=[new ae(0,0),new ae(0,0),new ae(0,0)],d,o,l,g=128+v.READ_SIZE;l=new v(K),Ae=Ne(l),he=(1<<Ae)-16,De=1<<Ae,we=De-1,ie=new Uint8Array(De+g+$.maxDictionaryWordLength),Ge=De,d=[],o=[];for(var E=0;E<3*me;E++)d[E]=new S(0,0),o[E]=new S(0,0);for(;!fe;){var F=0,N,pe=[268435456,268435456,268435456],Ve=[0],Te=[1,1,1],We=[0,1,0,1,0,1],Re=[0],ht,Gt,Q0,u0,r0=null,a0=null,er,E0=null,tr,rr=0,d0=null,ar=0,nr=0,k0=null,O0=0,T0=0,h0=0,zt,p0;for(j=0;j<3;++j)st[j].codes=null,st[j].htrees=null;l.readMoreInput();var b0=Be(l);if(F=b0.meta_block_length,M+F>V.buffer.length){var n0=new Uint8Array(M+F);n0.set(V.buffer),V.buffer=n0}if(fe=b0.input_end,N=b0.is_uncompressed,b0.is_metadata){for(Ke(l);F>0;--F)l.readMoreInput(),l.readBits(8);continue}if(F!==0){if(N){l.bit_pos_=l.bit_pos_+7&-8,ye(V,F,M,ie,we,l),M+=F;continue}for(j=0;j<3;++j)Te[j]=be(l)+1,Te[j]>=2&&(k(Te[j]+2,d,j*me,l),k(ue,o,j*me,l),pe[j]=I(o,j*me,l),Re[j]=1);for(l.readMoreInput(),ht=l.readBits(2),Gt=H+(l.readBits(4)<<ht),Q0=(1<<ht)-1,u0=Gt+(48<<ht),a0=new Uint8Array(Te[0]),j=0;j<Te[0];++j)l.readMoreInput(),a0[j]=l.readBits(2)<<1;var ir=Oe(Te[0]<<Ie,l);er=ir.num_htrees,r0=ir.context_map;var ze=Oe(Te[2]<<Se,l);for(tr=ze.num_htrees,E0=ze.context_map,st[0]=new ae(Q,er),st[1]=new ae(le,Te[1]),st[2]=new ae(u0,tr),j=0;j<3;++j)st[j].decode(l);for(d0=0,k0=0,zt=a0[Ve[0]],T0=te.lookupOffsets[zt],h0=te.lookupOffsets[zt+1],p0=st[1].htrees[0];F>0;){var $0,yt,St,Nt,F0,$t,xt,Pt,Ht,Wt,Xt;for(l.readMoreInput(),pe[1]===0&&(ot(Te[1],d,1,Ve,We,Re,l),pe[1]=I(o,me,l),p0=st[1].htrees[Ve[1]]),--pe[1],$0=qe(st[1].codes,p0,l),yt=$0>>6,yt>=2?(yt-=2,xt=-1):xt=0,St=re.kInsertRangeLut[yt]+($0>>3&7),Nt=re.kCopyRangeLut[yt]+($0&7),F0=re.kInsertLengthPrefixCode[St].offset+l.readBits(re.kInsertLengthPrefixCode[St].nbits),$t=re.kCopyLengthPrefixCode[Nt].offset+l.readBits(re.kCopyLengthPrefixCode[Nt].nbits),dt=ie[M-1&we],nt=ie[M-2&we],Wt=0;Wt<F0;++Wt)l.readMoreInput(),pe[0]===0&&(ot(Te[0],d,0,Ve,We,Re,l),pe[0]=I(o,0,l),rr=Ve[0]<<Ie,d0=rr,zt=a0[Ve[0]],T0=te.lookupOffsets[zt],h0=te.lookupOffsets[zt+1]),Ht=te.lookup[T0+dt]|te.lookup[h0+nt],ar=r0[d0+Ht],--pe[0],nt=dt,dt=qe(st[0].codes,st[0].htrees[ar],l),ie[M&we]=dt,(M&we)===we&&V.write(ie,De),++M;if(F-=F0,F<=0)break;if(xt<0){var Ht;if(l.readMoreInput(),pe[2]===0&&(ot(Te[2],d,2,Ve,We,Re,l),pe[2]=I(o,2*me,l),nr=Ve[2]<<Se,k0=nr),--pe[2],Ht=($t>4?3:$t-2)&255,O0=E0[k0+Ht],xt=qe(st[2].codes,st[2].htrees[O0],l),xt>=Gt){var v0,qt,i0;xt-=Gt,qt=xt&Q0,xt>>=ht,v0=(xt>>1)+1,i0=(2+(xt&1)<<v0)-4,xt=Gt+(i0+l.readBits(v0)<<ht)+qt}}if(Pt=D(xt,je,pt),Pt<0)throw new Error("[BrotliDecompress] invalid distance");if(M<he&&ve!==he?ve=M:ve=he,Xt=M&we,Pt>ve)if($t>=$.minDictionaryWordLength&&$t<=$.maxDictionaryWordLength){var i0=$.offsetsByLength[$t],sr=Pt-ve-1,or=$.sizeBitsByLength[$t],Rr=(1<<or)-1,x0=sr&Rr,lr=sr>>or;if(i0+=x0*$t,lr<se.kNumTransforms){var B0=se.transformDictionaryWord(ie,Xt,i0,$t,lr);if(Xt+=B0,M+=B0,F-=B0,Xt>=Ge){V.write(ie,De);for(var g0=0;g0<Xt-Ge;g0++)ie[g0]=ie[Ge+g0]}}else throw new Error("Invalid backward reference. pos: "+M+" distance: "+Pt+" len: "+$t+" bytes left: "+F)}else throw new Error("Invalid backward reference. pos: "+M+" distance: "+Pt+" len: "+$t+" bytes left: "+F);else{if(xt>0&&(je[pt&3]=Pt,++pt),$t>F)throw new Error("Invalid backward reference. pos: "+M+" distance: "+Pt+" len: "+$t+" bytes left: "+F);for(Wt=0;Wt<$t;++Wt)ie[M&we]=ie[M-Pt&we],(M&we)===we&&V.write(ie,De),++M,--F}dt=ie[M-1&we],nt=ie[M-2&we]}M&=1073741823}}V.write(ie,M&we)}t=ft,$.init()}),O.register("f5xzS",function(T,ge){_(T.exports,"BrotliInput",()=>R,f=>R=f),_(T.exports,"BrotliOutput",()=>x,f=>x=f);var R,x;function t(f){this.buffer=f,this.pos=0}t.prototype.read=function(f,p,v){this.pos+v>this.buffer.length&&(v=this.buffer.length-this.pos);for(var $=0;$<v;$++)f[p+$]=this.buffer[this.pos+$];return this.pos+=v,v},R=t;function h(f){this.buffer=f,this.pos=0}h.prototype.write=function(f,p){if(this.pos+p>this.buffer.length)throw new Error("Output buffer is not large enough");return this.buffer.set(f.subarray(0,p),this.pos),this.pos+=p,p},x=h}),O.register("cIKkM",function(T,ge){var R=4096,x=2*R+32,t=2*R-1,h=new Uint32Array([0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535,131071,262143,524287,1048575,2097151,4194303,8388607,16777215]);function f(p){this.buf_=new Uint8Array(x),this.input_=p,this.reset()}f.READ_SIZE=R,f.IBUF_MASK=t,f.prototype.reset=function(){this.buf_ptr_=0,this.val_=0,this.pos_=0,this.bit_pos_=0,this.bit_end_pos_=0,this.eos_=0,this.readMoreInput();for(var p=0;p<4;p++)this.val_|=this.buf_[this.pos_]<<8*p,++this.pos_;return this.bit_end_pos_>0},f.prototype.readMoreInput=function(){if(!(this.bit_end_pos_>256))if(this.eos_){if(this.bit_pos_>this.bit_end_pos_)throw new Error("Unexpected end of input "+this.bit_pos_+" "+this.bit_end_pos_)}else{var p=this.buf_ptr_,v=this.input_.read(this.buf_,p,R);if(v<0)throw new Error("Unexpected end of input");if(v<R){this.eos_=1;for(var $=0;$<32;$++)this.buf_[p+v+$]=0}if(p===0){for(var $=0;$<32;$++)this.buf_[(R<<1)+$]=this.buf_[$];this.buf_ptr_=R}else this.buf_ptr_=0;this.bit_end_pos_+=v<<3}},f.prototype.fillBitWindow=function(){for(;this.bit_pos_>=8;)this.val_>>>=8,this.val_|=this.buf_[this.pos_&t]<<24,++this.pos_,this.bit_pos_=this.bit_pos_-8>>>0,this.bit_end_pos_=this.bit_end_pos_-8>>>0},f.prototype.readBits=function(p){32-this.bit_pos_<p&&this.fillBitWindow();var v=this.val_>>>this.bit_pos_&h[p];return this.bit_pos_+=p,v},T.exports=f}),O.register("fi1SF",function(T,ge){_(T.exports,"init",()=>R,$=>R=$),_(T.exports,"dictionary",()=>x,$=>x=$),_(T.exports,"offsetsByLength",()=>t,$=>t=$),_(T.exports,"sizeBitsByLength",()=>h,$=>h=$),_(T.exports,"minDictionaryWordLength",()=>f,$=>f=$),_(T.exports,"maxDictionaryWordLength",()=>p,$=>p=$);var R,x,t,h,f,p,v=O("hFNv9");R=function(){x=v.init()},t=new Uint32Array([0,0,0,0,0,4096,9216,21504,35840,44032,53248,63488,74752,87040,93696,100864,104704,106752,108928,113536,115968,118528,119872,121280,122016]),h=new Uint8Array([0,0,0,0,10,10,11,11,10,10,10,10,10,9,9,8,7,7,8,7,7,6,6,5,5]),f=4,p=24}),O.register("hFNv9",function(T,ge){_(T.exports,"init",()=>R,t=>R=t);var R,x=O("bVXCQ");R=function(){var t=O("ctKdH").BrotliDecompressBuffer,h=x.toByteArray(O("3pEpU"));return t(h)}}),O.register("3pEpU",function(T,ge){T.exports="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"}),O.register("hFVYV",function(T,ge){_(T.exports,"HuffmanCode",()=>R,$=>R=$),_(T.exports,"BrotliBuildHuffmanTable",()=>x,$=>x=$);var R,x;function t($,S){this.bits=$,this.value=S}R=t;var h=15;function f($,S){for(var P=1<<S-1;$&P;)P>>=1;return($&P-1)+P}function p($,S,P,w,te){do w-=P,$[S+w]=new t(te.bits,te.value);while(w>0)}function v($,S,P){for(var w=1<<S-P;S<h&&(w-=$[S],!(w<=0));)++S,w<<=1;return S-P}x=function($,S,P,w,te){var re=S,se,W,Y,Q,le,ue,Ie,Se,X,Z,me,B=new Int32Array(h+1),A=new Int32Array(h+1);for(me=new Int32Array(te),Y=0;Y<te;Y++)B[w[Y]]++;for(A[1]=0,W=1;W<h;W++)A[W+1]=A[W]+B[W];for(Y=0;Y<te;Y++)w[Y]!==0&&(me[A[w[Y]]++]=Y);if(Se=P,X=1<<Se,Z=X,A[h]===1){for(Q=0;Q<Z;++Q)$[S+Q]=new t(0,me[0]&65535);return Z}for(Q=0,Y=0,W=1,le=2;W<=P;++W,le<<=1)for(;B[W]>0;--B[W])se=new t(W&255,me[Y++]&65535),p($,S+Q,le,X,se),Q=f(Q,W);for(Ie=Z-1,ue=-1,W=P+1,le=2;W<=h;++W,le<<=1)for(;B[W]>0;--B[W])(Q&Ie)!==ue&&(S+=X,Se=v(B,W,P),X=1<<Se,Z+=X,ue=Q&Ie,$[re+ue]=new t(Se+P&255,S-re-ue&65535)),se=new t(W-P&255,me[Y++]&65535),p($,S+(Q>>P),le,X,se),Q=f(Q,W);return Z}}),O.register("2bnHY",function(T,ge){_(T.exports,"lookup",()=>R,v=>R=v),_(T.exports,"lookupOffsets",()=>x,v=>x=v);var R,x,t=0,h=1,f=2,p=3;R=new Uint8Array([0,0,0,0,0,0,0,0,0,4,4,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,12,16,12,12,20,12,16,24,28,12,12,32,12,36,12,44,44,44,44,44,44,44,44,44,44,32,32,24,40,28,12,12,48,52,52,52,48,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,24,12,28,12,12,12,56,60,60,60,56,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,24,12,28,12,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,22,22,22,22,23,23,23,23,24,24,24,24,25,25,25,25,26,26,26,26,27,27,27,27,28,28,28,28,29,29,29,29,30,30,30,30,31,31,31,31,32,32,32,32,33,33,33,33,34,34,34,34,35,35,35,35,36,36,36,36,37,37,37,37,38,38,38,38,39,39,39,39,40,40,40,40,41,41,41,41,42,42,42,42,43,43,43,43,44,44,44,44,45,45,45,45,46,46,46,46,47,47,47,47,48,48,48,48,49,49,49,49,50,50,50,50,51,51,51,51,52,52,52,52,53,53,53,53,54,54,54,54,55,55,55,55,56,56,56,56,57,57,57,57,58,58,58,58,59,59,59,59,60,60,60,60,61,61,61,61,62,62,62,62,63,63,63,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),x=new Uint16Array([1024,1536,1280,1536,0,256,768,512])}),O.register("aLgJS",function(T,ge){_(T.exports,"kBlockLengthPrefixCode",()=>R,v=>R=v),_(T.exports,"kInsertLengthPrefixCode",()=>x,v=>x=v),_(T.exports,"kCopyLengthPrefixCode",()=>t,v=>t=v),_(T.exports,"kInsertRangeLut",()=>h,v=>h=v),_(T.exports,"kCopyRangeLut",()=>f,v=>f=v);var R,x,t,h,f;function p(v,$){this.offset=v,this.nbits=$}R=[new p(1,2),new p(5,2),new p(9,2),new p(13,2),new p(17,3),new p(25,3),new p(33,3),new p(41,3),new p(49,4),new p(65,4),new p(81,4),new p(97,4),new p(113,5),new p(145,5),new p(177,5),new p(209,5),new p(241,6),new p(305,6),new p(369,7),new p(497,8),new p(753,9),new p(1265,10),new p(2289,11),new p(4337,12),new p(8433,13),new p(16625,24)],x=[new p(0,0),new p(1,0),new p(2,0),new p(3,0),new p(4,0),new p(5,0),new p(6,1),new p(8,1),new p(10,2),new p(14,2),new p(18,3),new p(26,3),new p(34,4),new p(50,4),new p(66,5),new p(98,5),new p(130,6),new p(194,7),new p(322,8),new p(578,9),new p(1090,10),new p(2114,12),new p(6210,14),new p(22594,24)],t=[new p(2,0),new p(3,0),new p(4,0),new p(5,0),new p(6,0),new p(7,0),new p(8,0),new p(9,0),new p(10,1),new p(12,1),new p(14,2),new p(18,2),new p(22,3),new p(30,3),new p(38,4),new p(54,4),new p(70,5),new p(102,5),new p(134,6),new p(198,7),new p(326,8),new p(582,9),new p(1094,10),new p(2118,24)],h=[0,0,8,8,0,16,8,16,16],f=[0,8,0,8,16,0,16,8,16]}),O.register("9TKg3",function(T,ge){_(T.exports,"kNumTransforms",()=>x,J=>x=J),_(T.exports,"transformDictionaryWord",()=>t,J=>t=J);var R,x,t,h=O("fi1SF"),f=0,p=1,v=2,$=3,S=4,P=5,w=6,te=7,re=8,se=9,W=10,Y=11,Q=12,le=13,ue=14,Ie=15,Se=16,X=17,Z=18,me=19,B=20;function A(J,ce,Ne){this.prefix=new Uint8Array(J.length),this.transform=ce,this.suffix=new Uint8Array(Ne.length);for(var be=0;be<J.length;be++)this.prefix[be]=J.charCodeAt(be);for(var be=0;be<Ne.length;be++)this.suffix[be]=Ne.charCodeAt(be)}var H=[new A("",f,""),new A("",f," "),new A(" ",f," "),new A("",Q,""),new A("",W," "),new A("",f," the "),new A(" ",f,""),new A("s ",f," "),new A("",f," of "),new A("",W,""),new A("",f," and "),new A("",le,""),new A("",p,""),new A(", ",f," "),new A("",f,", "),new A(" ",W," "),new A("",f," in "),new A("",f," to "),new A("e ",f," "),new A("",f,'"'),new A("",f,"."),new A("",f,'">'),new A("",f,`
+`),new A("",$,""),new A("",f,"]"),new A("",f," for "),new A("",ue,""),new A("",v,""),new A("",f," a "),new A("",f," that "),new A(" ",W,""),new A("",f,". "),new A(".",f,""),new A(" ",f,", "),new A("",Ie,""),new A("",f," with "),new A("",f,"'"),new A("",f," from "),new A("",f," by "),new A("",Se,""),new A("",X,""),new A(" the ",f,""),new A("",S,""),new A("",f,". The "),new A("",Y,""),new A("",f," on "),new A("",f," as "),new A("",f," is "),new A("",te,""),new A("",p,"ing "),new A("",f,`
+ `),new A("",f,":"),new A(" ",f,". "),new A("",f,"ed "),new A("",B,""),new A("",Z,""),new A("",w,""),new A("",f,"("),new A("",W,", "),new A("",re,""),new A("",f," at "),new A("",f,"ly "),new A(" the ",f," of "),new A("",P,""),new A("",se,""),new A(" ",W,", "),new A("",W,'"'),new A(".",f,"("),new A("",Y," "),new A("",W,'">'),new A("",f,'="'),new A(" ",f,"."),new A(".com/",f,""),new A(" the ",f," of the "),new A("",W,"'"),new A("",f,". This "),new A("",f,","),new A(".",f," "),new A("",W,"("),new A("",W,"."),new A("",f," not "),new A(" ",f,'="'),new A("",f,"er "),new A(" ",Y," "),new A("",f,"al "),new A(" ",Y,""),new A("",f,"='"),new A("",Y,'"'),new A("",W,". "),new A(" ",f,"("),new A("",f,"ful "),new A(" ",W,". "),new A("",f,"ive "),new A("",f,"less "),new A("",Y,"'"),new A("",f,"est "),new A(" ",W,"."),new A("",Y,'">'),new A(" ",f,"='"),new A("",W,","),new A("",f,"ize "),new A("",Y,"."),new A("\xC2\xA0",f,""),new A(" ",f,","),new A("",W,'="'),new A("",Y,'="'),new A("",f,"ous "),new A("",Y,", "),new A("",W,"='"),new A(" ",W,","),new A(" ",Y,'="'),new A(" ",Y,", "),new A("",Y,","),new A("",Y,"("),new A("",Y,". "),new A(" ",Y,"."),new A("",Y,"='"),new A(" ",Y,". "),new A(" ",W,'="'),new A(" ",Y,"='"),new A(" ",W,"='")];R=H,x=H.length;function de(J,ce){return J[ce]<192?(J[ce]>=97&&J[ce]<=122&&(J[ce]^=32),1):J[ce]<224?(J[ce+1]^=32,2):(J[ce+2]^=5,3)}t=function(J,ce,Ne,be,Ze){var Be=H[Ze].prefix,qe=H[Ze].suffix,L=H[Ze].transform,k=L<Q?0:L-(Q-1),I=0,D=ce,q;k>be&&(k=be);for(var U=0;U<Be.length;)J[ce++]=Be[U++];for(Ne+=k,be-=k,L<=se&&(be-=L),I=0;I<be;I++)J[ce++]=h.dictionary[Ne+I];if(q=ce-be,L===W)de(J,q);else if(L===Y)for(;be>0;){var ae=de(J,q);q+=ae,be-=ae}for(var Oe=0;Oe<qe.length;)J[ce++]=qe[Oe++];return ce-D}});const oc=O("gucAK");var Ec=oc;export{Ec as default};
diff --git a/docs/res/glyph-inspector.js b/docs/res/glyph-inspector.js
new file mode 100644
index 000000000..f620d23e0
--- /dev/null
+++ b/docs/res/glyph-inspector.js
@@ -0,0 +1,965 @@
+import fontkit from "./fontkit-2.0.2.js"
+
+const { min, max, ceil, floor } = Math
+const $ = (q, el) => (el || document).querySelector(q)
+const $$ = (q, el) => [].slice.call((el || document).querySelectorAll(q))
+
+const rootElement = document.getElementById("glyphs")
+const inspectorElement = rootElement.querySelector(".inspector")
+
+const LABEL_X_OFFS = 16
+const HMETRICS_LABEL_Y_OFFS = 5
+
+// console.log("rootElement", rootElement)
+// console.log("inspectorElement", inspectorElement)
+// console.log("fontkit", fontkit)
+
+// for (let el of $$(".popup-menu", rootElement)) {
+// let select = $('select', el)
+// let label = $('.label', el)
+// label.innerText = select.selectedOptions[0].label
+// select.onchange = () => label.innerText = select.selectedOptions[0].label
+// }
+
+let pixelRatio = window.devicePixelRatio || 1
+function pxround(px) {
+ return ((px * pixelRatio) >>> 0) / pixelRatio
+}
+
+const monotime = performance.now.bind(performance)
+
+class GlyphInspector {
+ constructor() {
+ this.font = null
+ this.glyph = null
+ this.glyphUnicode = 0
+ this.defaultGlyphUnicode = 0x0041
+ this.selectedGlyphGridCell = null
+ this.defaultAxisValues = {wght: 400, opsz: 28}
+ this.axisValues = {wght: 0, opsz: 0}
+ this.idNameElement = $(".identification .name", rootElement)
+ this.idUnicodeElement = $(".identification .unicode", rootElement)
+ this.previewElement = $(".preview", rootElement)
+ this.bgcolor = getComputedStyle(rootElement).getPropertyValue('--background-color')
+ this.drawScheduled = false
+ this.fontInstanceCache = new Map()
+ this.draggedWghtStartTime = 0
+ this.hasDraggedWght = false
+ this.drawTime = monotime()
+
+ this.tmpcanvas = document.createElement("CANVAS")
+ this.tmpcanvas.width = 32
+ this.tmpcanvas.height = 32
+ this.canvas = document.createElement("CANVAS")
+ let canvasWrapper = $(".canvas", inspectorElement)
+ const onresize = (ev) => {
+ let w = canvasWrapper.clientWidth
+ let h = canvasWrapper.clientHeight
+ pixelRatio = window.devicePixelRatio || 1 // update global var
+ this.resize(w, h)
+ }
+ canvasWrapper.innerText = ''
+ canvasWrapper.appendChild(this.canvas)
+ onresize()
+ window.addEventListener('resize', onresize, {passive: true})
+ this.canvas.ondblclick = () => this.setFontInstance(this.defaultAxisValues)
+
+ this.initCursor()
+
+ const urlAnchor = document.location.hash
+ const urlAnchorPrefix = '#glyphs/'
+ let urlAnchorGlyphName = ''
+ if (urlAnchor.startsWith(urlAnchorPrefix) &&
+ urlAnchor.length > urlAnchorPrefix.length)
+ {
+ urlAnchorGlyphName = urlAnchor.substr(urlAnchorPrefix.length)
+ }
+
+ this.opszSlider = $('input[name="opsz"]')
+ this.defaultAxisValues.opsz = this.opszSlider.valueAsNumber
+ this.opszSlider.oninput = (ev) => {
+ this.setFontInstance({opsz: this.opszSlider.valueAsNumber})
+ }
+ // enable clicking on label to toggle
+ this.opszSlider.onclick = (ev) => ev.stopPropagation()
+ this.opszSlider.parentElement.onclick = (ev) => {
+ this.setFontInstance({opsz: this.axisValues.opsz > 14 ? 14 : 28})
+ }
+
+ this.opszCheckbox = $('input[name="opsz-switch"]')
+ this.defaultAxisValues.opsz = this.opszCheckbox.checked ? 14 : 28
+ this.opszCheckbox.onchange = (ev) => {
+ this.setFontInstance({opsz: this.opszCheckbox.checked ? 14 : 28})
+ }
+
+ let showDetailsCheckbox = $('input[name="show-details"]')
+ this.showDetails = showDetailsCheckbox.checked
+ showDetailsCheckbox.onchange = (ev) => {
+ this.showDetails = showDetailsCheckbox.checked
+ this.scheduleDraw()
+ if (this.showDetails)
+ console.log(`details of glyph "/${this.glyph.name}"`, this.glyph)
+ if (!this.hasDraggedWght) {
+ const autoHideHelpTimeout = 2000
+ clearTimeout(this.autoHideHelpTimer)
+ if (this.showDetails) {
+ this.draggedWghtStartTime = 0
+ this.autoHideHelpTimer = setTimeout(() => {
+ this.draggedWghtStartTime = monotime()
+ this.scheduleDraw()
+ }, autoHideHelpTimeout)
+ }
+ }
+ }
+
+ this.glyphGridCells = {} // uc => Element
+ let glyphsGrid = $(".glyph-list .content", rootElement)
+ let removeAnchors = document.body.clientWidth <= 500
+ for (let i = 0; i < glyphsGrid.children.length; i++) {
+ let el = glyphsGrid.children[i]
+ if (removeAnchors)
+ el.removeAttribute("name")
+ if (!el.dataset.cp) {
+ console.warn('no data-cp for glyphsGrid', el)
+ continue
+ }
+ let unicode = parseInt(el.dataset.cp, 16)
+ el.onclick = ev => {
+ this.setGlyphByUnicode(unicode)
+ history.replaceState({}, null, '#glyphs/' + el.dataset.name)
+ ev.stopPropagation()
+ ev.preventDefault()
+ }
+ this.glyphGridCells[unicode] = el
+ if (urlAnchorGlyphName === el.dataset.name) {
+ if (this.selectedGlyphGridCell)
+ this.selectedGlyphGridCell.classList.toggle('selected', false)
+ el.classList.toggle('selected', true)
+ this.selectedGlyphGridCell = el
+ this.defaultGlyphUnicode = unicode
+ rootElement.scrollIntoView(/*alignToTop*/true)
+ el.scrollIntoViewIfNeeded()
+ }
+ }
+ // if (removeAnchors && urlAnchorGlyphName)
+ // rootElement.focus()
+ }
+
+ loadImage(filename) { // -> Promise<Image>
+ let selfDirname = (new URL(import.meta.url)).pathname
+ selfDirname = selfDirname.substr(0, selfDirname.lastIndexOf('/'))
+ let img = new Image()
+ img.src = filename[0] == '/' ? filename : selfDirname + '/' + filename
+ return new Promise((res, rej) => {
+ img.onload = () => { res(img) }
+ img.onerror = err => { rej(err) }
+ })
+ }
+
+ initCursor() {
+ this.cursor = {
+ x: 0,
+ y: 0,
+ dragOriginAxisValues: {...this.axisValues},
+ dragOriginX: 0,
+ dragOriginY: 0,
+ dtime: 0,
+ active: false,
+ dragging: false,
+ }
+ // this.cursorImage = null
+ // this.loadImage('cursor-glyph-inspector.svg').then(im => {
+ // this.cursorImage = im
+ // this.scheduleDraw()
+ // })
+
+ this.canvas.addEventListener('pointerover', ev => {
+ // Fired when a pointer is moved into an element's hit test boundaries
+ //console.log(ev.type, ev.pointerType, ev)
+ this.cursorActivate(ev)
+ })
+ // this.canvas.addEventListener('pointerenter', ev => {
+ // // Fired when a pointer is moved into the hit test boundaries of an element
+ // // or one of its descendants, including as a result of a pointerdown event
+ // // from a device that does not support hover
+ // console.log(ev.type, ev.pointerType, ev)
+ // })
+ this.canvas.addEventListener('pointerdown', ev => {
+ // Fired when a pointer becomes "active buttons state"
+ //console.log(ev.type, ev.pointerType, ev)
+ this.cursorDragBegin(ev)
+ })
+ // this.canvas.addEventListener('gotpointercapture', ev => {
+ // console.log(ev.type, ev.pointerType, ev)
+ // })
+ this.canvas.addEventListener('pointermove', ev => {
+ // Fired when a pointer changes coordinates.
+ // This event is also used if the change in pointer state cannot be reported
+ // by other events
+ //console.log(ev.type, ev.pointerType, ev)
+ this.cursorMoved(ev)
+ })
+ this.canvas.addEventListener('pointerup', ev => {
+ // Fired when a pointer is no longer "active buttons state"
+ //console.log(ev.type, ev.pointerType, ev)
+ this.cursorDragEnd(ev)
+ })
+ this.canvas.addEventListener('pointercancel', ev => {
+ // A browser fires this event if it concludes the pointer will no longer be
+ // able to generate events (for example the related device is deactivated)
+ //console.log(ev.type, ev.pointerType, ev)
+ if (this.cursor.dragging)
+ this.cursorDragEnd(ev)
+ if (this.cursor.active)
+ this.cursorDeactivate(ev)
+ })
+ this.canvas.addEventListener('pointerout', ev => {
+ // Fired for several reasons, including:
+ // - pointer is moved out of the hit test boundaries of an element
+ // - firing the pointerup event for a device that does not support hover
+ // - after firing the pointercancel event
+ // - when a pen stylus leaves the hover range detectable by the digitizer
+ //console.log(ev.type, ev.pointerType, ev)
+ if (this.cursor.active)
+ this.cursorDeactivate(ev)
+ })
+ // this.canvas.addEventListener('pointerleave', ev => {
+ // // Fired when a pointer is moved out of the hit test boundaries of an element.
+ // // For pen devices, this event is fired when the stylus leaves the hover range
+ // // detectable by the digitizer
+ // console.log(ev.type, ev.pointerType, ev)
+ // })
+ }
+
+ cursorActivate(ev) {
+ this.cursor.active = true
+ this.scheduleDraw()
+ }
+
+ cursorDeactivate(ev) {
+ this.cursor.active = false
+ this.scheduleDraw()
+ }
+
+ cursorMoved(ev) {
+ this.cursor.x = ev.offsetX
+ this.cursor.y = ev.offsetY
+
+ // // if we draw our own cursor:
+ // if (!this.cursor.active)
+ // return
+ // this.scheduleDraw()
+ if (!this.cursor.dragging)
+ return
+
+ let w = this.canvas.width / pixelRatio
+ //let h = this.canvas.height / pixelRatio
+
+ let dx_dp = this.cursor.x - this.cursor.dragOriginX
+ //let dy_dp = this.cursor.y - this.cursor.dragOriginY
+
+ // ratio of half canvas
+ // movement from center to edge = 1.0
+ // movement from edge to edge = 2.0
+ let dx = dx_dp / (w/2)
+ //let dy = dy_dp / (h/2)
+ //let d = Math.sqrt(dx*dx + dy*dy)
+ //let d = (dx + dy) / 2
+ let d = dx
+
+ let {wght, opsz} = this.cursor.dragOriginAxisValues
+ wght = wght + d*800
+ if (ev.shiftKey)
+ wght = Math.round(wght / 100) * 100
+ wght = max(100, min(900, wght))
+ // opsz = max(14, min(28, opsz))
+ this.hasDraggedWght = true
+ if (this.draggedWghtStartTime == 0)
+ this.draggedWghtStartTime = monotime()
+ clearTimeout(this.autoHideHelpTimer)
+ this.setFontInstance({wght, opsz})
+ }
+
+ cursorDragBegin(ev) {
+ if (!this.cursor.active)
+ console.warn("pointerdown without a prior pointerover")
+ this.canvas.setPointerCapture(ev.pointerId)
+ this.cursor.dragOriginX = ev.offsetX
+ this.cursor.dragOriginY = ev.offsetY
+ this.cursor.dragOriginAxisValues = {...this.axisValues}
+ this.cursor.dragging = true
+ this.scheduleDraw()
+
+ this.cancelEvent = ev => {
+ ev.preventDefault()
+ ev.stopPropagation()
+ return false
+ }
+
+ //document.addEventListener('touchstart', this.cancelEvent, {passive:false,capture:true})
+ //document.addEventListener('touchbegin', this.cancelEvent, {passive:false,capture:true})
+ //document.addEventListener('scroll', this.cancelEvent, {passive:false,capture:true})
+ //document.style.overflow = 'hidden'
+ }
+
+ cursorDragEnd(ev) {
+ //document.removeEventListener('touchstart', this.cancelEvent, {passive:false,capture:true})
+ //document.removeEventListener('touchbegin', this.cancelEvent, {passive:false,capture:true})
+ //document.removeEventListener('scroll', this.cancelEvent, {passive:false,capture:true})
+ //document.style.overflow = null
+ this.cursor.dragging = false
+ this.scheduleDraw()
+ }
+
+ drawCursor(g, w, h) {
+ if (!this.cursor.active)
+ return
+ let {x, y} = this.cursor
+
+ // if (this.cursorImage) {
+ // let im = this.cursorImage
+ // g.drawImage(im, x - im.width/2, y - im.width/2)
+ // }
+
+ // g.beginPath()
+ // g.moveTo(x, y-8)
+ // g.lineTo(x, y+8)
+ // g.moveTo(x-8, y)
+ // g.lineTo(x+8, y)
+ // g.strokeStyle = 'red'
+ // g.lineWidth = 1.0
+ // g.stroke()
+
+ if (this.cursor.dragging) {
+ g.fillStyle = 'white'
+ g.strokeStyle = 'rgba(0,0,0,0.4)'
+ g.lineWidth = 1.5
+
+ // let label = `${this.axisValues.opsz}`
+ // g.textAlign = 'left'
+ // g.strokeText(label, x+10, y+4)
+ // g.fillText(label, x+10, y+4)
+
+ let label = `${this.axisValues.wght.toFixed(1)}`
+ g.textAlign = 'center'
+ g.strokeText(label, x, y+22)
+ g.lineWidth = 2.0
+ g.strokeStyle = 'rgba(0,0,0,0.1)'
+ g.strokeText(label, x, y+23)
+ g.fillText(label, x, y+22)
+ }
+ }
+
+ snapToGrid(value) {
+ const gridSize = 16
+ return value - (value % gridSize)
+ }
+
+ drawHMetricLine(g, w, h, y, label) {
+ g.beginPath()
+ g.moveTo(0, y)
+ g.lineTo(w, y)
+ g.strokeStyle = 'white'
+ g.lineWidth = 1.0
+ g.stroke()
+
+ g.fillStyle = 'white'
+ g.strokeStyle = this.bgcolor
+ g.lineWidth = 3.0
+
+ g.textAlign = 'left'
+ if (this.showDetails)
+ g.strokeText(label, LABEL_X_OFFS, y - HMETRICS_LABEL_Y_OFFS)
+ g.fillText(label, LABEL_X_OFFS, y - HMETRICS_LABEL_Y_OFFS)
+ }
+
+ drawPathDetails(glyph, g, w, h, scale) {
+ let anchors = []
+ let handles = []
+ let x1, y1, startX, startY
+ let commands = glyph.path.commands
+ let cmd2
+
+ // g.fillStyle = 'blue'
+
+ // TODO: consider converting quadratic to cubic bezier paths to display
+ // actual design-time paths
+
+ g.save()
+ g.beginPath()
+
+ for (let i = 0; i < commands.length; i++) {
+ let { command, args } = commands[i]
+ //console.log(command, ...args)
+ //g.fillText(`${i}`, args[0] * scale, -args[1] * scale)
+ switch (command) {
+ case "closePath":
+ if (anchors.length > 0)
+ anchors[anchors.length-1].push(/*isStartingPoint*/true)
+ //g.closePath()
+ break
+ case "moveTo":
+ x1 = args[0] * scale
+ y1 = args[1] * -scale
+ anchors.push([x1, y1])
+ startX = x1
+ startY = y1
+ g.moveTo(x1, y1)
+ break
+ case "lineTo":
+ x1 = args[0] * scale
+ y1 = args[1] * -scale
+ anchors.push([x1, y1])
+ g.moveTo(x1, y1)
+ break
+ case "quadraticCurveTo":
+ x1 = args[2] * scale
+ y1 = args[3] * -scale
+ anchors.push([x1, y1])
+ handles.push([args[0] * scale, args[1] * -scale])
+ g.lineTo(args[0] * scale, args[1] * -scale)
+ g.lineTo(x1, y1)
+ break
+ case "bezierCurveTo":
+ x1 = args[4] * scale
+ y1 = -args[5] * scale
+ anchors.push([x1, y1])
+ handles.push([args[0] * scale, -args[1] * scale])
+ handles.push([args[2] * scale, -args[3] * scale])
+ break
+ default:
+ console.warning("unhandled draw command:", command)
+ }
+ }
+
+ g.lineWidth = 1
+ g.strokeStyle = 'rgba(0,0,0,0.3)'
+ //g.strokeStyle = 'red'
+ g.stroke()
+
+ let radius = 3
+
+ g.strokeStyle = 'black'
+ g.fillStyle = 'white'
+ for (let [x, y, isStartingPoint] of anchors) {
+ g.beginPath()
+ g.ellipse(x, y, radius, radius, 0, 0, 360)
+ if (isStartingPoint) {
+ g.fillStyle = 'black'
+ g.fill()
+ g.fillStyle = 'white'
+ } else {
+ g.fill()
+ g.stroke()
+ }
+ }
+
+ g.strokeStyle = 'black'
+ g.fillStyle = 'black'
+ for (let [x, y] of handles) {
+ g.beginPath()
+ g.ellipse(x, y, 2, 2, 0, 0, 360)
+ g.fill()
+ }
+
+ g.restore()
+ }
+
+ makePixelDrawing(w, h, f) { // -> Promise<ImageBitmap>
+ let canvas = this.tmpcanvas
+ canvas.width = w
+ canvas.height = h
+ let g = canvas.getContext('2d')
+ g.clearRect(0,0,w,h)
+ let imageData = g.getImageData(0, 0, w, h)
+ f(g, w, h, imageData)
+ g.putImageData(imageData, 0, 0)
+ if (navigator.userAgent.indexOf('Safari') != -1) {
+ // TODO FIXME: g.createPattern errors in Safari when we pass ImageBitmap
+ return Promise.resolve(this.tmpcanvas)
+ }
+ return createImageBitmap(this.tmpcanvas, 0, 0, w, h)
+ }
+
+ getPattern() { // -> ImageBitmap|null
+ if (this.pattern1)
+ return this.pattern1
+ if (this.pattern1Promise)
+ return null
+ this.pattern1Promise = this.makePixelDrawing(8, 8, (g, w, h, imageData) => {
+ const setpx = (x,y) => {
+ let n = (y*w + x) * 4
+ imageData.data[n] = 255 // r
+ imageData.data[n+1] = 255 // g
+ imageData.data[n+2] = 255 // b
+ imageData.data[n+3] = 160 // a
+ }
+ setpx(0, 0) // patch line intersecting at corner (when 2px wide, only)
+ for (let x = w-1, y = 0; y < h; x--, y++) {
+ setpx(x, y)
+ setpx(x, y+1) // 2px wide
+ }
+ }).then(image => {
+ this.pattern1 = image
+ this.scheduleDraw()
+ })
+ return null
+ }
+
+ drawGlyphBounds(glyph, g, w, h, x, xmax, ascender, descender, scale) {
+ // g.beginPath()
+ // g.moveTo(x, ascender)
+ // g.lineTo(x, descender)
+ // g.moveTo(xmax, ascender)
+ // g.lineTo(xmax, descender)
+ // g.strokeStyle = 'white'
+ // g.lineWidth = 1
+ // g.stroke()
+
+ //let pattern = g.createPattern(image, "repeat")
+
+ let patternImage = this.getPattern()
+ if (patternImage) {
+ const px = pixelRatio
+ g.save()
+ let pattern = g.createPattern(patternImage, "repeat")
+ g.scale(1/px, 1/px)
+ g.fillStyle = pattern
+ g.fillRect(0, ascender*px, x*px, (descender - ascender)*px)
+ g.fillRect(xmax*px, ascender*px, (w - xmax)*px, (descender - ascender)*px)
+ g.restore()
+ }
+
+ let { maxX, minX } = glyph.bbox
+ maxX = maxX >> 0 // should always be integer, but floor just in case
+ minX = minX >> 0 // should always be integer, but floor just in case
+ let advanceWidth = glyph.advanceWidth >>> 0
+ let lsb = minX
+ let rsb = advanceWidth - (maxX - minX) - minX
+ let y = descender + 4
+
+ g.fillStyle = 'black'
+ g.strokeStyle = 'black'
+ g.lineWidth = 1
+
+ // advance width
+ g.textAlign = 'center'
+ g.fillText(`${advanceWidth}`, pxround(w/2), y + 24)
+
+ if (advanceWidth == 0) {
+ x = w/2
+ g.beginPath()
+ g.moveTo(x, y)
+ g.lineTo(x, y+8)
+ g.stroke()
+ } else {
+ // LSB
+ let x2 = lsb * scale
+ g.beginPath()
+ g.moveTo(x, y)
+ g.lineTo(x, y+8)
+ g.moveTo(pxround(x + x2), y)
+ g.lineTo(pxround(x + x2), y+8)
+ g.stroke()
+ g.textAlign = 'center'
+ g.fillText(`${lsb}`, pxround(x + x2/2), y + 24)
+
+ // RSB
+ x2 = rsb * scale
+ g.beginPath()
+ g.moveTo(xmax, y)
+ g.lineTo(xmax, y+8)
+ g.moveTo(pxround(xmax - x2), y)
+ g.lineTo(pxround(xmax - x2), y+8)
+ g.stroke()
+ g.textAlign = 'center'
+ g.fillText(`${rsb}`, pxround(xmax - x2/2), y + 24)
+ }
+ }
+
+ drawAxisValues(g, w, h, ascender) {
+ let {wght, opsz} = this.axisValues
+ g.save()
+
+ let x = w - LABEL_X_OFFS
+ let y = ascender/2 + 4
+
+ g.font = '400 14px InterVariable, sans-serif'
+ g.fillStyle = 'black'
+ g.textAlign = 'right'
+ g.fillText(`wght ${wght.toFixed(1)}`, x, y)
+ x -= w/4
+ g.fillText(`opsz ${opsz.toFixed(1)}`, x, y)
+
+ let helpOpacity = 1
+ if (this.draggedWghtStartTime > 0) {
+ let age = this.drawTime - this.draggedWghtStartTime
+ helpOpacity = 1.0 - age/200
+ if (helpOpacity > 0)
+ this.scheduleDraw()
+ }
+ if (helpOpacity > 0) {
+ let label = `⟷ drag to adjust weight`
+ g.font = '500 18px InterVariable, sans-serif'
+ g.textAlign = 'center'
+ let textMetrics = g.measureText(label)
+ g.fillStyle = `rgba(255,255,255,${helpOpacity})`
+ const bgpadding_x = 8, bgpadding_y = 6
+ const cornerRadius = 4
+ g.beginPath()
+ g.roundRect(
+ w/2 - textMetrics.actualBoundingBoxLeft - bgpadding_x,
+ h/2 - textMetrics.actualBoundingBoxAscent - bgpadding_y - 1,
+ textMetrics.width + bgpadding_x*2,
+ textMetrics.actualBoundingBoxAscent
+ + textMetrics.actualBoundingBoxDescent + bgpadding_y*2,
+ cornerRadius)
+ g.fill()
+ g.fillStyle = `rgba(0,0,0,${helpOpacity})`
+ g.fillText(label, w/2, h/2)
+ }
+
+ g.restore()
+ }
+
+ drawDebugXLine(g, w, h, x, name) {
+ g.save()
+
+ g.beginPath()
+ g.moveTo(x, 0)
+ g.lineTo(x, h)
+
+ g.strokeStyle = 'red'
+ g.lineWidth = 1
+ g.stroke()
+
+ g.textAlign = 'center'
+ g.fillStyle = 'red'
+ g.strokeStyle = this.bgcolor
+ g.lineWidth = 3.0
+ g.strokeText(`${name}=${x}`, x, h/2)
+ g.fillText(`${name}=${x}`, x, h/2)
+
+ g.restore()
+ }
+
+ drawDebugYLine(g, w, h, y, name) {
+ g.save()
+
+ g.beginPath()
+ g.moveTo(0, y)
+ g.lineTo(w, y)
+
+ g.strokeStyle = 'red'
+ g.lineWidth = 1
+ g.stroke()
+
+ g.textAlign = 'center'
+ g.fillStyle = 'red'
+ g.strokeStyle = this.bgcolor
+ g.lineWidth = 3.0
+ g.strokeText(`${name}=${y}`, w/2, y+4)
+ g.fillText(`${name}=${y}`, w/2, y+4)
+
+ g.restore()
+ }
+
+ drawGlyph(glyph, g, w, h) {
+ const margin = 16
+ // for debugging margin:
+ //const margin = performance.now()/30 % 32; requestAnimationFrame(() => this.draw())
+
+ // for debugging scalable layout:
+ //h -= performance.now()/30 % 100; requestAnimationFrame(() => this.draw())
+
+ const fontInstance = glyph._font
+ const upm = fontInstance.unitsPerEm
+
+ const { maxX, maxY, minX, minY } = fontInstance.bbox
+
+ let maxGlyphHeight = maxY - minY
+ let maxGlyphWidth = max(upm, glyph.advanceWidth * 1.1) // maxX-minX is very large
+
+ let boundsW = w - margin*2
+ let boundsH = h - margin*2
+
+ let scale = min(boundsW/maxGlyphWidth, boundsH/maxGlyphHeight)
+
+ let glyphWidth = glyph.advanceWidth * scale
+ let x = pxround((boundsW - glyphWidth) / 2 + margin)
+ let xmax = pxround((boundsW + glyphWidth) / 2 + margin)
+
+ let baseline = pxround(upm * scale)
+ let capHeight = pxround((upm - fontInstance.capHeight) * scale)
+ let xHeight = pxround((upm - fontInstance.xHeight) * scale)
+ let ascender = pxround((upm - fontInstance.ascent) * scale)
+ let descender = pxround((upm - fontInstance.descent) * scale)
+
+ g.save()
+
+ let verticalOffset = pxround( (h - margin)*maxY/maxGlyphHeight - baseline - margin)
+ g.translate(0, verticalOffset)
+
+ // this.drawDebugXLine(g, w, h, x, 'x')
+ // this.drawDebugXLine(g, w, h, xmax, 'xmax')
+
+ // draw bounds (side bearings)
+ if (this.showDetails) {
+ this.drawGlyphBounds(
+ glyph, g, w, h, x, xmax, ascender, descender, scale)
+ }
+
+ // draw horizontal metrics
+ if (this.showDetails) {
+ this.drawHMetricLine(g, w, h, baseline, "Baseline")
+ this.drawHMetricLine(g, w, h, capHeight, "Cap height")
+ this.drawHMetricLine(g, w, h, xHeight, "x-height")
+ this.drawHMetricLine(g, w, h, ascender, "Ascender")
+ this.drawHMetricLine(g, w, h, descender, "Descender")
+ } else {
+ const yoffs = 1.0 - (1.0 / pixelRatio)
+ this.drawHMetricLine(g, w, h, baseline - yoffs, "Baseline")
+ this.drawHMetricLine(g, w, h, capHeight + yoffs, "Cap height")
+ this.drawHMetricLine(g, w, h, xHeight + yoffs, "x-height")
+ }
+
+ // draw glyph
+ g.translate(x, baseline)
+ if (glyph.advanceWidth >>> 0 == 0) {
+ // center zero-width glyphs, regardless of LSB
+ let maxX = glyph.bbox.maxX >> 0
+ let minX = glyph.bbox.minX >> 0
+ g.translate((-minX - (maxX-minX)/2) * scale, 0)
+ }
+ g.beginPath()
+ for (let i = 0, len = glyph.path.commands.length; i < len; i++) {
+ let cmd = glyph.path.commands[i]
+ let x1 = cmd.args[0] * scale
+ let y1 = -cmd.args[1] * scale
+ let x2, y2, x3, y3
+ if (cmd.args.length > 2) {
+ x2 = cmd.args[2] * scale
+ y2 = -cmd.args[3] * scale
+ if (cmd.args.length > 4) {
+ x3 = cmd.args[4] * scale
+ y3 = -cmd.args[5] * scale
+ }
+ }
+ g[cmd.command](x1, y1, x2, y2, x3, y3)
+ }
+
+ if (this.showDetails) {
+ g.fillStyle = 'rgba(0,0,0,0.1)'
+ g.fill()
+ g.strokeStyle = 'black'
+ g.lineWidth = 1
+ g.stroke()
+ } else {
+ g.fillStyle = 'black'
+ g.fill()
+ }
+
+ if (this.showDetails)
+ this.drawPathDetails(glyph, g, w, h, scale)
+
+ g.restore()
+
+ if (this.showDetails)
+ this.drawAxisValues(g, w, h, ascender + verticalOffset)
+ }
+
+ drawGrid(g, w, h, size) {
+ const upm = this.fontInstance.unitsPerEm
+
+ let rows = ceil(h / size)
+ let cols = ceil(w / size)
+
+ g.beginPath()
+ for (let row = 0; row < rows; row++) {
+ g.moveTo(0, row*size)
+ g.lineTo(w, row*size)
+ }
+ for (let col = 0; col < cols; col++) {
+ g.moveTo(col*size, 0)
+ g.lineTo(col*size, h)
+ }
+ g.strokeStyle = 'rgba(0,0,0,0.3)'
+ g.lineWidth = 1.0
+ g.stroke()
+ }
+
+ draw(time) {
+ const g = this.canvas.getContext('2d')
+ const w = this.canvas.width / pixelRatio
+ const h = this.canvas.height / pixelRatio
+ this.drawTime = monotime() // in case monotime() != time
+ this.drawScheduled = false
+ g.resetTransform()
+ g.font = '500 12px InterVariable'
+ g.textRendering = "geometricPrecision"
+ g.scale(pixelRatio, pixelRatio)
+ g.clearRect(0, 0, w, h)
+ if (!this.glyph)
+ return
+
+ // g.fillStyle = '#ccc'; g.fillRect(0, 0, w, h) // debug
+ // this.drawGrid(g, w, h, 8)
+ this.drawGlyph(this.glyph, g, w, h)
+ // this.drawCursor(g, w, h)
+ }
+
+ scheduleDraw() {
+ if (this.drawScheduled)
+ return
+ this.drawScheduled = true
+ requestAnimationFrame(time => this.draw(time))
+ }
+
+ resize(w, h) {
+ this.canvas.width = w * pixelRatio
+ this.canvas.height = h * pixelRatio
+ this.canvas.style.width = `${w}px`
+ this.canvas.style.height = `${h}px`
+
+ // w = this.tmpcanvas.width
+ // h = this.tmpcanvas.height
+ // this.tmpcanvas.width = w * pixelRatio
+ // this.tmpcanvas.height = h * pixelRatio
+ // this.tmpcanvas.style.width = `${w}px`
+ // this.tmpcanvas.style.height = `${h}px`
+ // this.tmpcanvas.getContext('2d').scale(1/pixelRatio, 1/pixelRatio)
+
+ this.scheduleDraw()
+ }
+
+ glyphByUnicode(unicode) {
+ return this.fontInstance.glyphForCodePoint(unicode)
+ }
+
+ setGlyphByUnicode(unicode) {
+ this.glyph = this.glyphByUnicode(unicode)
+ this.scheduleDraw()
+ if (this.glyphUnicode == unicode) {
+ // same logical glyph, just for a different instance
+ return
+ }
+ this.glyphUnicode = unicode
+ //console.log("this.glyph", this.glyph)
+
+ if (this.selectedGlyphGridCell)
+ this.selectedGlyphGridCell.classList.toggle('selected', false)
+ this.selectedGlyphGridCell = this.glyphGridCells[unicode]
+ if (this.selectedGlyphGridCell)
+ this.selectedGlyphGridCell.classList.toggle('selected', true)
+
+ // update info
+ this.idNameElement.innerHTML = (
+ this.selectedGlyphGridCell ? this.selectedGlyphGridCell.dataset.name :
+ this.glyph.name
+ ) //+ '&nbsp;' + String.fromCodePoint(unicode)
+ this.idUnicodeElement.innerText = 'U+' + '0'.repeat(
+ unicode < 0x10 ? 3 :
+ unicode < 0x100 ? 2 :
+ unicode < 0x1000 ? 1 :
+ 0
+ ) + unicode.toString(16).toUpperCase()
+ this.previewElement.innerText = String.fromCodePoint(unicode)
+ }
+
+ updateIdentificationInfo() {
+ let wght = this.axisValues.wght >>> 0
+ let opsz = this.axisValues.opsz >>> 0
+ if (!this.previewAxisValues ||
+ this.previewAxisValues.wght != wght ||
+ this.previewAxisValues.opsz != opsz)
+ {
+ this.previewAxisValues = {wght, opsz}
+ clearTimeout(this.previewUpdateTimer)
+ this.previewUpdateTimer = setTimeout(() => {
+ rootElement.style.setProperty('--inspector-wght', wght)
+ rootElement.style.setProperty('--inspector-opsz', opsz)
+ },10)
+ }
+ }
+
+ getFontInstance(axisValues) {
+ // note: there's no perf/memory benefit to caching instances here
+ try {
+ let fontInstance = this.font.getVariation(axisValues)
+ // [BUG] workaround for bug in fontkit 2.0.2 where xHeight is
+ // not correctly loaded for the instance
+ const xHeightOpszMax = 1056 // "display"
+ const xHeightOpszMin = 1118 // "text"
+ // get opsz as range [0-1]
+ const opszMin = this.font.variationAxes.opsz.min
+ const opszMax = this.font.variationAxes.opsz.max
+ let opsz = max(opszMin, min(opszMax, axisValues.opsz))
+ opsz = (opsz - opszMin) / (opszMax - opszMin) // 0.0=min, 1.0=max
+ // set correct xHeight
+ Object.defineProperty(fontInstance, 'xHeight', {
+ value: xHeightOpszMin + opsz*(xHeightOpszMax - xHeightOpszMin),
+ })
+ //console.log("fontInstance:", fontInstance)
+ return fontInstance
+ } catch (err) {
+ console.warn('font.getVariation failed:', err)
+ return this.font
+ }
+ }
+
+ setFontInstance(axisValues) {
+ axisValues = {...this.axisValues, ...axisValues}
+ if (this.axisValues.wght == axisValues.wght &&
+ this.axisValues.opsz == axisValues.opsz)
+ {
+ //console.debug("this.axisValues unchanged", axisValues, this.axisValues)
+ return
+ }
+
+ this.axisValues = axisValues
+ this.fontInstance = this.getFontInstance(this.axisValues)
+ this.setGlyphByUnicode(this.glyphUnicode ? this.glyphUnicode : this.defaultGlyphUnicode)
+
+ const opszMin = this.font.variationAxes.opsz.min
+ const opszMax = this.font.variationAxes.opsz.max
+ this.opszCheckbox.checked = this.axisValues.opsz < opszMin+(opszMax-opszMin)/2
+ this.opszSlider.valueAsNumber = this.axisValues.opsz
+
+ this.updateIdentificationInfo()
+ }
+
+ setFont(font) {
+ this.font = font
+ this.setFontInstance(this.defaultAxisValues)
+ }
+
+ async loadFont(url) {
+ let data = await fetch(url).then(r => r.arrayBuffer())
+ let font = fontkit.create(new Uint8Array(data))
+ //console.log(`loadFont(${url}) =>`, font)
+ this.setFont(font)
+
+ // let wght = 100
+ // let inc = true
+ // setInterval(x => {
+ // this.setFontInstance({wght, opsz: 28})
+ // if (inc) {
+ // wght += 10
+ // if (wght > 900) {
+ // wght = 900
+ // inc = false
+ // }
+ // } else {
+ // wght -= 10
+ // if (wght < 100) {
+ // wght = 100
+ // inc = true
+ // }
+ // }
+ // }, 20)
+ }
+}
+
+let inspector = new GlyphInspector()
+await inspector.loadFont('font-files/Inter-Variable.ttf')
+// await inspector.loadFont('font-files/InterDisplay-Regular.otf')
diff --git a/docs/res/graphplot.js b/docs/res/graphplot.js
deleted file mode 100644
index b06f67f16..000000000
--- a/docs/res/graphplot.js
+++ /dev/null
@@ -1,239 +0,0 @@
-
-function GraphPlot(canvas) {
- this.canvas = canvas
- const g = canvas.getContext('2d')
- if (g == null) {
- throw new Error('failed to acquire 2d context')
- }
-
- this.width = 0 // dp
- this.height = 0 // dp
- this.widthPx = 0 // px
- this.heightPx = 0 // px
- this.pixelRatio = 1
- this.g = g
- this.dataSegments = []
- this.axes = {
- x0: .5, // % from left to x=0
- y0: .5, // % from top to y=0
- scalex: 40, // pixels from x=0 to x=1
- scaley: 40, // pixels from y=0 to y=1
- negativeX: true,
- }
-
- if (!this.autosize()) {
- this.setSize(256, 256)
- }
-}
-
-GraphPlot.prototype.autosize = function() {
- try {
- this.canvas.width = null
- this.canvas.height = null
- this.canvas.style.width = null
- this.canvas.style.height = null
- var cs = window.getComputedStyle(this.canvas)
- var width = parseFloat(cs.width)
- var height = parseFloat(cs.height)
- this.setSize(width, height)
- return true
- } catch (err) {
- if (typeof console != 'undefined' && console.warn) {
- console.warn('GraphPlot.autosize failed: ' + err)
- }
- }
- return false
-}
-
-// setOrigin sets the origin of axis x and y
-// The values should be in the range [0-1] and maps to the extremes
-// of the canvas.
-//
-GraphPlot.prototype.setOrigin = function(x, y) {
- var p = this
- p.axes.x0 = x
- p.axes.y0 = y
-}
-
-// setScale sets the value scale for x and y axis.
-// The values should be provided as display points.
-//
-GraphPlot.prototype.setScale = function(x, y) {
- var p = this
- if (y === undefined) {
- y = x
- }
- p.axes.scalex = x
- p.axes.scaley = y
-}
-
-// setSize sets the size of canvas in display points
-//
-GraphPlot.prototype.setSize = function(width, height) {
- var p = this
- p.width = width
- p.height = height
- const el = p.canvas, g = p.g
- p.pixelRatio = window.devicePixelRatio || 1
- if (p.pixelRatio != 1) {
- el.width = p.widthPx = width * p.pixelRatio
- el.height = p.heightPx = height * p.pixelRatio
- g.scale(p.pixelRatio, p.pixelRatio)
- } else {
- el.width = p.widthPx = width
- el.height = p.heightPx = height
- g.scale(1, 1)
- }
- el.style.width = `${width}px`
- el.style.height = `${height}px`
-}
-
-
-GraphPlot.prototype.renderAxes = function() {
- var p = this
- , g = p.g
- , x0 = Math.round(p.axes.x0 * p.widthPx) / p.pixelRatio
- , y0 = Math.round(p.axes.y0 * p.heightPx) / p.pixelRatio
-
- g.beginPath()
- g.strokeStyle = "rgb(0, 0, 0, 0.2)"
- if (y0 > 0 && y0 < p.width) {
- g.moveTo(0, y0); g.lineTo(p.width, y0) // X axis
- }
- if (x0 > 0 && x0 < p.height) {
- g.moveTo(x0, 0); g.lineTo(x0, p.height) // Y axis
- }
- g.stroke()
-}
-
-
-// plotf plots an arbitrary function on the graph
-//
-GraphPlot.prototype.plotf = function(f, color) {
- var p = this
- , g = p.g
- , w = p.width
- , h = p.height
- , x0 = p.axes.x0 * p.width
- , y0 = p.axes.y0 * p.height
- , x = 0
- , y = 0
- , dx = 4 / p.pixelRatio // smaller means finer curves and more CPU
- , scalex = p.axes.scalex * w
- , scaley = p.axes.scaley * h
- , iMax = Math.round((w - x0) / dx)
- , iMin = p.axes.negativeX ? Math.round(-x0 / dx) : 0
-
- g.beginPath()
- g.lineWidth = 1
- g.strokeStyle = color || "rgb(0, 0, 0, 0.8)"
-
- for (var i = iMin; i <= iMax; i++) {
- x = dx * i
- y = f(x / scalex) * scaley
- if (i == iMin) {
- g.moveTo(x0 + x, y0 - y)
- } else {
- g.lineTo(x0 + x, y0 - y)
- }
- }
-
- g.stroke()
-}
-
-
-// plotLines draws straight lines between a collection of points
-//
-GraphPlot.prototype.plotLine = function(points, color) {
- var p = this
- , g = p.g
- , x0 = p.axes.x0 * p.width
- , y0 = p.axes.y0 * p.height
- , x = 0
- , y = 0
- , scalex = p.axes.scalex * p.width
- , scaley = p.axes.scaley * p.height
- , pt
-
- g.beginPath()
- g.lineWidth = 1
- g.strokeStyle = color || "rgb(0, 0, 0, 0.8)"
-
- var i = 0
- for (; i < points.length; i++) {
- pt = points[i]
- x = pt[0] * scalex
- y = pt[1] * scaley
- if (i == 0) {
- g.moveTo(x0 + x, y0 - y)
- } else {
- g.lineTo(x0 + x, y0 - y)
- }
- }
-
- g.stroke()
-}
-
-
-// plotPoints draws points
-//
-GraphPlot.prototype.plotPoints = function(points, color) {
- var p = this
- , g = p.g
- , x0 = p.axes.x0 * p.width
- , y0 = p.axes.y0 * p.height
- , x = 0
- , y = 0
- , scalex = p.axes.scalex * p.width
- , scaley = p.axes.scaley * p.height
- , pt
- , i = 0
-
- g.fillStyle = color || "rgb(0, 0, 0, 0.8)"
-
- for (; i < points.length; i++) {
- pt = points[i]
- x = x0 + pt[0] * scalex
- y = y0 - pt[1] * scaley
- g.beginPath()
- g.arc(x, y, 3, 0, Math.PI + (Math.PI * 2) / 2, false)
- g.fill()
- }
-}
-
-
-GraphPlot.prototype.clear = function() {
- var p = this
- p.g.clearRect(0, 0, p.width, p.height)
- p.renderAxes()
-}
-
-
-GraphPlot.prototype.renderDemo = function() {
- var p = this
- , g = p.g
- , dpscale = p.pixelRatio
- , w = p.widthPx
- , h = p.heightPx
-
- p.clear()
-
- p.plotf(
- function(x) { return Math.sin(x) },
- 'blue'
- )
-
- p.plotf(
- function(x) { return Math.cos(3*x) },
- 'hotpink'
- )
-
- // var scale = p.height / 4
- // g.moveTo(0, scale)
- // var i, sine, lines = 200, frag = p.width / lines
- // for (i = 0; i < lines; i++) {
- // sine = Math.sin(i / scale * 2) * scale
- // g.lineTo(i * frag, -sine + scale)
- // }
- // g.stroke()
-}
diff --git a/docs/res/grid.css b/docs/res/grid.css
deleted file mode 100644
index 3d5a70bdc..000000000
--- a/docs/res/grid.css
+++ /dev/null
@@ -1,341 +0,0 @@
-/* Raster Simple CSS Grid System, version 3 */
-grid {
- display: grid;
- grid-template-columns: repeat(4, 1fr);
- --grid-cs: 1; /* start */
- --grid-ce: -1 /* end */
-}
-
-/* c -- cell or column */
-grid > c { display: block; appearance: none; -webkit-appearance: none }
-
-grid[columns="1"] { grid-template-columns: repeat(1, 1fr) }
-grid[columns="2"] { grid-template-columns: repeat(2, 1fr) }
-grid[columns="3"] { grid-template-columns: repeat(3, 1fr) }
-grid[columns="4"] { grid-template-columns: repeat(4, 1fr) }
-grid[columns="5"] { grid-template-columns: repeat(5, 1fr) }
-grid[columns="6"] { grid-template-columns: repeat(6, 1fr) }
-grid[columns="7"] { grid-template-columns: repeat(7, 1fr) }
-grid[columns="8"] { grid-template-columns: repeat(8, 1fr) }
-grid[columns="9"] { grid-template-columns: repeat(9, 1fr) }
-grid[columns="10"] { grid-template-columns: repeat(10, 1fr) }
-grid[columns="11"] { grid-template-columns: repeat(11, 1fr) }
-grid[columns="12"] { grid-template-columns: repeat(12, 1fr) }
-grid[columns="13"] { grid-template-columns: repeat(13, 1fr) }
-grid[columns="14"] { grid-template-columns: repeat(14, 1fr) }
-grid[columns="15"] { grid-template-columns: repeat(15, 1fr) }
-grid[columns="16"] { grid-template-columns: repeat(16, 1fr) }
-grid[columns="17"] { grid-template-columns: repeat(17, 1fr) }
-grid[columns="18"] { grid-template-columns: repeat(18, 1fr) }
-grid[columns="19"] { grid-template-columns: repeat(19, 1fr) }
-grid[columns="20"] { grid-template-columns: repeat(20, 1fr) }
-grid[columns="21"] { grid-template-columns: repeat(21, 1fr) }
-grid[columns="22"] { grid-template-columns: repeat(22, 1fr) }
-grid[columns="23"] { grid-template-columns: repeat(23, 1fr) }
-grid[columns="24"] { grid-template-columns: repeat(24, 1fr) }
-grid[columns="25"] { grid-template-columns: repeat(25, 1fr) }
-grid[columns="26"] { grid-template-columns: repeat(26, 1fr) }
-grid[columns="27"] { grid-template-columns: repeat(27, 1fr) }
-grid[columns="28"] { grid-template-columns: repeat(28, 1fr) }
-grid[columns="29"] { grid-template-columns: repeat(29, 1fr) }
-grid[columns="30"] { grid-template-columns: repeat(30, 1fr) }
-
-/* span=start... */
-grid > c[span^="1"] { --grid-cs: 1 }
-grid > c[span^="2"] { --grid-cs: 2 }
-grid > c[span^="3"] { --grid-cs: 3 }
-grid > c[span^="4"] { --grid-cs: 4 }
-grid > c[span^="5"] { --grid-cs: 5 }
-grid > c[span^="6"] { --grid-cs: 6 }
-grid > c[span^="7"] { --grid-cs: 7 }
-grid > c[span^="8"] { --grid-cs: 8 }
-grid > c[span^="9"] { --grid-cs: 9 }
-grid > c[span^="10"] { --grid-cs: 10 }
-grid > c[span^="11"] { --grid-cs: 11 }
-grid > c[span^="12"] { --grid-cs: 12 }
-grid > c[span^="13"] { --grid-cs: 13 }
-grid > c[span^="14"] { --grid-cs: 14 }
-grid > c[span^="15"] { --grid-cs: 15 }
-grid > c[span^="16"] { --grid-cs: 16 }
-grid > c[span^="17"] { --grid-cs: 17 }
-grid > c[span^="18"] { --grid-cs: 18 }
-grid > c[span^="19"] { --grid-cs: 19 }
-grid > c[span^="20"] { --grid-cs: 20 }
-grid > c[span^="21"] { --grid-cs: 21 }
-grid > c[span^="22"] { --grid-cs: 22 }
-grid > c[span^="23"] { --grid-cs: 23 }
-grid > c[span^="24"] { --grid-cs: 24 }
-grid > c[span^="25"] { --grid-cs: 25 }
-grid > c[span^="26"] { --grid-cs: 26 }
-grid > c[span^="27"] { --grid-cs: 27 }
-grid > c[span^="28"] { --grid-cs: 28 }
-grid > c[span^="29"] { --grid-cs: 29 }
-grid > c[span^="30"] { --grid-cs: 30 }
-
-/* span=...+width, span=...-end */
-grid > c[span$="+1"], grid > c[span="1"] { --grid-ce: 1 }
-grid > c[span$="+2"], grid > c[span$="-1"], grid > c[span="2"] { --grid-ce: 2 }
-grid > c[span$="+3"], grid > c[span$="-2"], grid > c[span="3"] { --grid-ce: 3 }
-grid > c[span$="+4"], grid > c[span$="-3"], grid > c[span="4"] { --grid-ce: 4 }
-grid > c[span$="+5"], grid > c[span$="-4"], grid > c[span="5"] { --grid-ce: 5 }
-grid > c[span$="+6"], grid > c[span$="-5"], grid > c[span="6"] { --grid-ce: 6 }
-grid > c[span$="+7"], grid > c[span$="-6"], grid > c[span="7"] { --grid-ce: 7 }
-grid > c[span$="+8"], grid > c[span$="-7"], grid > c[span="8"] { --grid-ce: 8 }
-grid > c[span$="+9"], grid > c[span$="-8"], grid > c[span="9"] { --grid-ce: 9 }
-grid > c[span$="+10"], grid > c[span$="-9"], grid > c[span="10"] { --grid-ce: 10 }
-grid > c[span$="+11"], grid > c[span$="-10"], grid > c[span="11"] { --grid-ce: 11 }
-grid > c[span$="+12"], grid > c[span$="-11"], grid > c[span="12"] { --grid-ce: 12 }
-grid > c[span$="+13"], grid > c[span$="-12"], grid > c[span="13"] { --grid-ce: 13 }
-grid > c[span$="+14"], grid > c[span$="-13"], grid > c[span="14"] { --grid-ce: 14 }
-grid > c[span$="+15"], grid > c[span$="-14"], grid > c[span="15"] { --grid-ce: 15 }
-grid > c[span$="+16"], grid > c[span$="-15"], grid > c[span="16"] { --grid-ce: 16 }
-grid > c[span$="+17"], grid > c[span$="-16"], grid > c[span="17"] { --grid-ce: 17 }
-grid > c[span$="+18"], grid > c[span$="-17"], grid > c[span="18"] { --grid-ce: 18 }
-grid > c[span$="+19"], grid > c[span$="-18"], grid > c[span="19"] { --grid-ce: 19 }
-grid > c[span$="+20"], grid > c[span$="-19"], grid > c[span="20"] { --grid-ce: 20 }
-grid > c[span$="+21"], grid > c[span$="-20"], grid > c[span="21"] { --grid-ce: 21 }
-grid > c[span$="+22"], grid > c[span$="-21"], grid > c[span="22"] { --grid-ce: 22 }
-grid > c[span$="+23"], grid > c[span$="-22"], grid > c[span="23"] { --grid-ce: 23 }
-grid > c[span$="+24"], grid > c[span$="-23"], grid > c[span="24"] { --grid-ce: 24 }
-grid > c[span$="+25"], grid > c[span$="-24"], grid > c[span="25"] { --grid-ce: 25 }
-grid > c[span$="+26"], grid > c[span$="-25"], grid > c[span="26"] { --grid-ce: 26 }
-grid > c[span$="+27"], grid > c[span$="-26"], grid > c[span="27"] { --grid-ce: 27 }
-grid > c[span$="+28"], grid > c[span$="-27"], grid > c[span="28"] { --grid-ce: 28 }
-grid > c[span$="+29"], grid > c[span$="-28"], grid > c[span="29"] { --grid-ce: 29 }
-grid > c[span$="+30"], grid > c[span$="-29"], grid > c[span="30"] { --grid-ce: 30 }
-grid > c[span$="-30"] { --grid-ce: 31 }
-
-/* connect vars */
-grid > c[span] { grid-column-end: span var(--grid-ce) }
-grid > c[span*="+"], grid > c[span*="-"], grid > c[span*=".."] {
- grid-column-start: var(--grid-cs) }
-grid > c[span*="-"], grid > c[span*=".."] {
- grid-column-end: var(--grid-ce) }
-grid > c[span="row"] { grid-column: 1 / -1 }
-
-/* for window width <= 600 */
-@media only screen and (max-width: 600px) {
- grid[columns-s="1"] { grid-template-columns: repeat(1, 1fr) }
- grid[columns-s="2"] { grid-template-columns: repeat(2, 1fr) }
- grid[columns-s="3"] { grid-template-columns: repeat(3, 1fr) }
- grid[columns-s="4"] { grid-template-columns: repeat(4, 1fr) }
- grid[columns-s="5"] { grid-template-columns: repeat(5, 1fr) }
- grid[columns-s="6"] { grid-template-columns: repeat(6, 1fr) }
- grid[columns-s="7"] { grid-template-columns: repeat(7, 1fr) }
- grid[columns-s="8"] { grid-template-columns: repeat(8, 1fr) }
- grid[columns-s="9"] { grid-template-columns: repeat(9, 1fr) }
- grid[columns-s="10"] { grid-template-columns: repeat(10, 1fr) }
- grid[columns-s="11"] { grid-template-columns: repeat(11, 1fr) }
- grid[columns-s="12"] { grid-template-columns: repeat(12, 1fr) }
- grid[columns-s="13"] { grid-template-columns: repeat(13, 1fr) }
- grid[columns-s="14"] { grid-template-columns: repeat(14, 1fr) }
- grid[columns-s="15"] { grid-template-columns: repeat(15, 1fr) }
- grid[columns-s="16"] { grid-template-columns: repeat(16, 1fr) }
- grid[columns-s="17"] { grid-template-columns: repeat(17, 1fr) }
- grid[columns-s="18"] { grid-template-columns: repeat(18, 1fr) }
- grid[columns-s="19"] { grid-template-columns: repeat(19, 1fr) }
- grid[columns-s="20"] { grid-template-columns: repeat(20, 1fr) }
- grid[columns-s="21"] { grid-template-columns: repeat(21, 1fr) }
- grid[columns-s="22"] { grid-template-columns: repeat(22, 1fr) }
- grid[columns-s="23"] { grid-template-columns: repeat(23, 1fr) }
- grid[columns-s="24"] { grid-template-columns: repeat(24, 1fr) }
- grid[columns-s="25"] { grid-template-columns: repeat(25, 1fr) }
- grid[columns-s="26"] { grid-template-columns: repeat(26, 1fr) }
- grid[columns-s="27"] { grid-template-columns: repeat(27, 1fr) }
- grid[columns-s="28"] { grid-template-columns: repeat(28, 1fr) }
- grid[columns-s="29"] { grid-template-columns: repeat(29, 1fr) }
- grid[columns-s="30"] { grid-template-columns: repeat(30, 1fr) }
-
- /* span-s=start... */
- grid > c[span-s^="1"] { --grid-cs: 1 }
- grid > c[span-s^="2"] { --grid-cs: 2 }
- grid > c[span-s^="3"] { --grid-cs: 3 }
- grid > c[span-s^="4"] { --grid-cs: 4 }
- grid > c[span-s^="5"] { --grid-cs: 5 }
- grid > c[span-s^="6"] { --grid-cs: 6 }
- grid > c[span-s^="7"] { --grid-cs: 7 }
- grid > c[span-s^="8"] { --grid-cs: 8 }
- grid > c[span-s^="9"] { --grid-cs: 9 }
- grid > c[span-s^="10"] { --grid-cs: 10 }
- grid > c[span-s^="11"] { --grid-cs: 11 }
- grid > c[span-s^="12"] { --grid-cs: 12 }
- grid > c[span-s^="13"] { --grid-cs: 13 }
- grid > c[span-s^="14"] { --grid-cs: 14 }
- grid > c[span-s^="15"] { --grid-cs: 15 }
- grid > c[span-s^="16"] { --grid-cs: 16 }
- grid > c[span-s^="17"] { --grid-cs: 17 }
- grid > c[span-s^="18"] { --grid-cs: 18 }
- grid > c[span-s^="19"] { --grid-cs: 19 }
- grid > c[span-s^="20"] { --grid-cs: 20 }
- grid > c[span-s^="21"] { --grid-cs: 21 }
- grid > c[span-s^="22"] { --grid-cs: 22 }
- grid > c[span-s^="23"] { --grid-cs: 23 }
- grid > c[span-s^="24"] { --grid-cs: 24 }
- grid > c[span-s^="25"] { --grid-cs: 25 }
- grid > c[span-s^="26"] { --grid-cs: 26 }
- grid > c[span-s^="27"] { --grid-cs: 27 }
- grid > c[span-s^="28"] { --grid-cs: 28 }
- grid > c[span-s^="29"] { --grid-cs: 29 }
- grid > c[span-s^="30"] { --grid-cs: 30 }
-
- /* span-s=...+width, span-s=...-end */
- grid > c[span-s$="+1"], grid > c[span-s="1"] { --grid-ce: 1 }
- grid > c[span-s$="+2"], grid > c[span-s$="-1"], grid > c[span-s="2"] { --grid-ce: 2 }
- grid > c[span-s$="+3"], grid > c[span-s$="-2"], grid > c[span-s="3"] { --grid-ce: 3 }
- grid > c[span-s$="+4"], grid > c[span-s$="-3"], grid > c[span-s="4"] { --grid-ce: 4 }
- grid > c[span-s$="+5"], grid > c[span-s$="-4"], grid > c[span-s="5"] { --grid-ce: 5 }
- grid > c[span-s$="+6"], grid > c[span-s$="-5"], grid > c[span-s="6"] { --grid-ce: 6 }
- grid > c[span-s$="+7"], grid > c[span-s$="-6"], grid > c[span-s="7"] { --grid-ce: 7 }
- grid > c[span-s$="+8"], grid > c[span-s$="-7"], grid > c[span-s="8"] { --grid-ce: 8 }
- grid > c[span-s$="+9"], grid > c[span-s$="-8"], grid > c[span-s="9"] { --grid-ce: 9 }
- grid > c[span-s$="+10"], grid > c[span-s$="-9"], grid > c[span-s="10"] { --grid-ce: 10 }
- grid > c[span-s$="+11"], grid > c[span-s$="-10"], grid > c[span-s="11"] { --grid-ce: 11 }
- grid > c[span-s$="+12"], grid > c[span-s$="-11"], grid > c[span-s="12"] { --grid-ce: 12 }
- grid > c[span-s$="+13"], grid > c[span-s$="-12"], grid > c[span-s="13"] { --grid-ce: 13 }
- grid > c[span-s$="+14"], grid > c[span-s$="-13"], grid > c[span-s="14"] { --grid-ce: 14 }
- grid > c[span-s$="+15"], grid > c[span-s$="-14"], grid > c[span-s="15"] { --grid-ce: 15 }
- grid > c[span-s$="+16"], grid > c[span-s$="-15"], grid > c[span-s="16"] { --grid-ce: 16 }
- grid > c[span-s$="+17"], grid > c[span-s$="-16"], grid > c[span-s="17"] { --grid-ce: 17 }
- grid > c[span-s$="+18"], grid > c[span-s$="-17"], grid > c[span-s="18"] { --grid-ce: 18 }
- grid > c[span-s$="+19"], grid > c[span-s$="-18"], grid > c[span-s="19"] { --grid-ce: 19 }
- grid > c[span-s$="+20"], grid > c[span-s$="-19"], grid > c[span-s="20"] { --grid-ce: 20 }
- grid > c[span-s$="+21"], grid > c[span-s$="-20"], grid > c[span-s="21"] { --grid-ce: 21 }
- grid > c[span-s$="+22"], grid > c[span-s$="-21"], grid > c[span-s="22"] { --grid-ce: 22 }
- grid > c[span-s$="+23"], grid > c[span-s$="-22"], grid > c[span-s="23"] { --grid-ce: 23 }
- grid > c[span-s$="+24"], grid > c[span-s$="-23"], grid > c[span-s="24"] { --grid-ce: 24 }
- grid > c[span-s$="+25"], grid > c[span-s$="-24"], grid > c[span-s="25"] { --grid-ce: 25 }
- grid > c[span-s$="+26"], grid > c[span-s$="-25"], grid > c[span-s="26"] { --grid-ce: 26 }
- grid > c[span-s$="+27"], grid > c[span-s$="-26"], grid > c[span-s="27"] { --grid-ce: 27 }
- grid > c[span-s$="+28"], grid > c[span-s$="-27"], grid > c[span-s="28"] { --grid-ce: 28 }
- grid > c[span-s$="+29"], grid > c[span-s$="-28"], grid > c[span-s="29"] { --grid-ce: 29 }
- grid > c[span-s$="+30"], grid > c[span-s$="-29"], grid > c[span-s="30"] { --grid-ce: 30 }
- grid > c[span-s$="-30"] { --grid-ce: 31 }
-
- /* connect vars */
- grid > c[span-s] { grid-column-end: span var(--grid-ce) }
- grid > c[span-s*="+"], grid > c[span-s*="-"], grid > c[span-s*=".."] {
- grid-column-start: var(--grid-cs) }
- grid > c[span-s*="-"], grid > c[span-s*=".."] {
- grid-column-end: var(--grid-ce) }
- grid > c[span-s="row"] { grid-column: 1 / -1 }
-}
-
-/* for window width >= 1600 */
-@media only screen and (min-width: 1599px) {
- grid[columns-l="1"] { grid-template-columns: repeat(1, 1fr) }
- grid[columns-l="2"] { grid-template-columns: repeat(2, 1fr) }
- grid[columns-l="3"] { grid-template-columns: repeat(3, 1fr) }
- grid[columns-l="4"] { grid-template-columns: repeat(4, 1fr) }
- grid[columns-l="5"] { grid-template-columns: repeat(5, 1fr) }
- grid[columns-l="6"] { grid-template-columns: repeat(6, 1fr) }
- grid[columns-l="7"] { grid-template-columns: repeat(7, 1fr) }
- grid[columns-l="8"] { grid-template-columns: repeat(8, 1fr) }
- grid[columns-l="9"] { grid-template-columns: repeat(9, 1fr) }
- grid[columns-l="10"] { grid-template-columns: repeat(10, 1fr) }
- grid[columns-l="11"] { grid-template-columns: repeat(11, 1fr) }
- grid[columns-l="12"] { grid-template-columns: repeat(12, 1fr) }
- grid[columns-l="13"] { grid-template-columns: repeat(13, 1fr) }
- grid[columns-l="14"] { grid-template-columns: repeat(14, 1fr) }
- grid[columns-l="15"] { grid-template-columns: repeat(15, 1fr) }
- grid[columns-l="16"] { grid-template-columns: repeat(16, 1fr) }
- grid[columns-l="17"] { grid-template-columns: repeat(17, 1fr) }
- grid[columns-l="18"] { grid-template-columns: repeat(18, 1fr) }
- grid[columns-l="19"] { grid-template-columns: repeat(19, 1fr) }
- grid[columns-l="20"] { grid-template-columns: repeat(20, 1fr) }
- grid[columns-l="21"] { grid-template-columns: repeat(21, 1fr) }
- grid[columns-l="22"] { grid-template-columns: repeat(22, 1fr) }
- grid[columns-l="23"] { grid-template-columns: repeat(23, 1fr) }
- grid[columns-l="24"] { grid-template-columns: repeat(24, 1fr) }
- grid[columns-l="25"] { grid-template-columns: repeat(25, 1fr) }
- grid[columns-l="26"] { grid-template-columns: repeat(26, 1fr) }
- grid[columns-l="27"] { grid-template-columns: repeat(27, 1fr) }
- grid[columns-l="28"] { grid-template-columns: repeat(28, 1fr) }
- grid[columns-l="29"] { grid-template-columns: repeat(29, 1fr) }
- grid[columns-l="30"] { grid-template-columns: repeat(30, 1fr) }
-
- /* span-l=start... */
- grid > c[span-l^="1"] { --grid-cs: 1 }
- grid > c[span-l^="2"] { --grid-cs: 2 }
- grid > c[span-l^="3"] { --grid-cs: 3 }
- grid > c[span-l^="4"] { --grid-cs: 4 }
- grid > c[span-l^="5"] { --grid-cs: 5 }
- grid > c[span-l^="6"] { --grid-cs: 6 }
- grid > c[span-l^="7"] { --grid-cs: 7 }
- grid > c[span-l^="8"] { --grid-cs: 8 }
- grid > c[span-l^="9"] { --grid-cs: 9 }
- grid > c[span-l^="10"] { --grid-cs: 10 }
- grid > c[span-l^="11"] { --grid-cs: 11 }
- grid > c[span-l^="12"] { --grid-cs: 12 }
- grid > c[span-l^="13"] { --grid-cs: 13 }
- grid > c[span-l^="14"] { --grid-cs: 14 }
- grid > c[span-l^="15"] { --grid-cs: 15 }
- grid > c[span-l^="16"] { --grid-cs: 16 }
- grid > c[span-l^="17"] { --grid-cs: 17 }
- grid > c[span-l^="18"] { --grid-cs: 18 }
- grid > c[span-l^="19"] { --grid-cs: 19 }
- grid > c[span-l^="20"] { --grid-cs: 20 }
- grid > c[span-l^="21"] { --grid-cs: 21 }
- grid > c[span-l^="22"] { --grid-cs: 22 }
- grid > c[span-l^="23"] { --grid-cs: 23 }
- grid > c[span-l^="24"] { --grid-cs: 24 }
- grid > c[span-l^="25"] { --grid-cs: 25 }
- grid > c[span-l^="26"] { --grid-cs: 26 }
- grid > c[span-l^="27"] { --grid-cs: 27 }
- grid > c[span-l^="28"] { --grid-cs: 28 }
- grid > c[span-l^="29"] { --grid-cs: 29 }
- grid > c[span-l^="30"] { --grid-cs: 30 }
-
- /* span-l=...+width, span-l=...-end */
- grid > c[span-l$="+1"], grid > c[span-l="1"] { --grid-ce: 1 }
- grid > c[span-l$="+2"], grid > c[span-l$="-1"], grid > c[span-l="2"] { --grid-ce: 2 }
- grid > c[span-l$="+3"], grid > c[span-l$="-2"], grid > c[span-l="3"] { --grid-ce: 3 }
- grid > c[span-l$="+4"], grid > c[span-l$="-3"], grid > c[span-l="4"] { --grid-ce: 4 }
- grid > c[span-l$="+5"], grid > c[span-l$="-4"], grid > c[span-l="5"] { --grid-ce: 5 }
- grid > c[span-l$="+6"], grid > c[span-l$="-5"], grid > c[span-l="6"] { --grid-ce: 6 }
- grid > c[span-l$="+7"], grid > c[span-l$="-6"], grid > c[span-l="7"] { --grid-ce: 7 }
- grid > c[span-l$="+8"], grid > c[span-l$="-7"], grid > c[span-l="8"] { --grid-ce: 8 }
- grid > c[span-l$="+9"], grid > c[span-l$="-8"], grid > c[span-l="9"] { --grid-ce: 9 }
- grid > c[span-l$="+10"], grid > c[span-l$="-9"], grid > c[span-l="10"] { --grid-ce: 10 }
- grid > c[span-l$="+11"], grid > c[span-l$="-10"], grid > c[span-l="11"] { --grid-ce: 11 }
- grid > c[span-l$="+12"], grid > c[span-l$="-11"], grid > c[span-l="12"] { --grid-ce: 12 }
- grid > c[span-l$="+13"], grid > c[span-l$="-12"], grid > c[span-l="13"] { --grid-ce: 13 }
- grid > c[span-l$="+14"], grid > c[span-l$="-13"], grid > c[span-l="14"] { --grid-ce: 14 }
- grid > c[span-l$="+15"], grid > c[span-l$="-14"], grid > c[span-l="15"] { --grid-ce: 15 }
- grid > c[span-l$="+16"], grid > c[span-l$="-15"], grid > c[span-l="16"] { --grid-ce: 16 }
- grid > c[span-l$="+17"], grid > c[span-l$="-16"], grid > c[span-l="17"] { --grid-ce: 17 }
- grid > c[span-l$="+18"], grid > c[span-l$="-17"], grid > c[span-l="18"] { --grid-ce: 18 }
- grid > c[span-l$="+19"], grid > c[span-l$="-18"], grid > c[span-l="19"] { --grid-ce: 19 }
- grid > c[span-l$="+20"], grid > c[span-l$="-19"], grid > c[span-l="20"] { --grid-ce: 20 }
- grid > c[span-l$="+21"], grid > c[span-l$="-20"], grid > c[span-l="21"] { --grid-ce: 21 }
- grid > c[span-l$="+22"], grid > c[span-l$="-21"], grid > c[span-l="22"] { --grid-ce: 22 }
- grid > c[span-l$="+23"], grid > c[span-l$="-22"], grid > c[span-l="23"] { --grid-ce: 23 }
- grid > c[span-l$="+24"], grid > c[span-l$="-23"], grid > c[span-l="24"] { --grid-ce: 24 }
- grid > c[span-l$="+25"], grid > c[span-l$="-24"], grid > c[span-l="25"] { --grid-ce: 25 }
- grid > c[span-l$="+26"], grid > c[span-l$="-25"], grid > c[span-l="26"] { --grid-ce: 26 }
- grid > c[span-l$="+27"], grid > c[span-l$="-26"], grid > c[span-l="27"] { --grid-ce: 27 }
- grid > c[span-l$="+28"], grid > c[span-l$="-27"], grid > c[span-l="28"] { --grid-ce: 28 }
- grid > c[span-l$="+29"], grid > c[span-l$="-28"], grid > c[span-l="29"] { --grid-ce: 29 }
- grid > c[span-l$="+30"], grid > c[span-l$="-29"], grid > c[span-l="30"] { --grid-ce: 30 }
- grid > c[span-l$="-30"] { --grid-ce: 31 }
-
- /* connect vars */
- grid > c[span-l] { grid-column-end: span var(--grid-ce) }
- grid > c[span-l*="+"], grid > c[span-l*="-"], grid > c[span-l*=".."] {
- grid-column-start: var(--grid-cs) }
- grid > c[span-l*="-"], grid > c[span-l*=".."] {
- grid-column-end: var(--grid-ce) }
- grid > c[span-l="row"] { grid-column: 1 / -1 }
-}
-
-/* .debug can be added to a grid to visualize its effective cells */
-grid.debug > * {
---color: rgba(248,110,91 ,0.3);
-background-image:
- linear-gradient(to bottom, var(--color) 0%, var(--color) 100%);
-}
-grid.debug > :nth-child(6n+2) { --color: rgba(103,126,208,0.3) }
-grid.debug > :nth-child(6n+3) { --color: rgba(224,174,72 ,0.3) }
-grid.debug > :nth-child(6n+4) { --color: rgba(77, 214,115,0.3) }
-grid.debug > :nth-child(6n+5) { --color: rgba(217,103,219,0.3) }
-grid.debug > :nth-child(6n+6) { --color: rgba(94, 204,211,0.3) }
-grid.debug > :nth-child(6n+7) { --color: rgba(248,110,91 ,0.3) }
diff --git a/docs/res/icons/close-black.svg b/docs/res/icons/close-black.svg
deleted file mode 100755
index a67a2e22b..000000000
--- a/docs/res/icons/close-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8 8.707l4.646 4.647.708-.708L8.707 8l4.647-4.646-.708-.708L8 7.293 3.354 2.646l-.708.708L7.293 8l-4.647 4.646.708.708L8 8.707z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/close.svg b/docs/res/icons/close.svg
deleted file mode 100755
index f6b7b196e..000000000
--- a/docs/res/icons/close.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8 8.707l4.646 4.647.708-.708L8.707 8l4.647-4.646-.708-.708L8 7.293 3.354 2.646l-.708.708L7.293 8l-4.647 4.646.708.708L8 8.707z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/dismiss-black.svg b/docs/res/icons/dismiss-black.svg
deleted file mode 100755
index d359e4123..000000000
--- a/docs/res/icons/dismiss-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 8.293L3.354 3.646l-.708.708L8 9.707l5.354-5.353-.708-.708L8 8.293zM14 13H2v-1h12v1z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/dismiss.svg b/docs/res/icons/dismiss.svg
deleted file mode 100755
index 427522b60..000000000
--- a/docs/res/icons/dismiss.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 8.293L3.354 3.646l-.708.708L8 9.707l5.354-5.353-.708-.708L8 8.293zM14 13H2v-1h12v1z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/font-size-black.svg b/docs/res/icons/font-size-black.svg
deleted file mode 100755
index fb0b9df50..000000000
--- a/docs/res/icons/font-size-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.245 12l.37-1.084h1.95L4.935 12h1.052L4.11 6.91H3.068L1.191 12h1.054zM3.56 8.147h.06l.671 1.964H2.89l.671-1.964zM8.415 12l.822-2.335h3.64L13.698 12h1.108l-3.205-8.727h-1.09L7.306 12h1.108zm2.59-7.347h.103l1.436 4.074H9.57l1.436-4.074z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/font-size.svg b/docs/res/icons/font-size.svg
deleted file mode 100755
index 0dd5cfd61..000000000
--- a/docs/res/icons/font-size.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.245 12l.37-1.084h1.95L4.935 12h1.052L4.11 6.91H3.068L1.191 12h1.054zM3.56 8.147h.06l.671 1.964H2.89l.671-1.964zM8.415 12l.822-2.335h3.64L13.698 12h1.108l-3.205-8.727h-1.09L7.306 12h1.108zm2.59-7.347h.103l1.436 4.074H9.57l1.436-4.074z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/letter-spacing-black.svg b/docs/res/icons/letter-spacing-black.svg
deleted file mode 100755
index 267c0ac62..000000000
--- a/docs/res/icons/letter-spacing-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.415 12l.822-2.335h3.64L10.698 12h1.108L8.602 3.273h-1.09L4.306 12h1.108zm2.59-7.347h.103l1.436 4.074H6.57l1.436-4.074z" fill="#000"/><path fill-rule="evenodd" clip-rule="evenodd" d="M0 14V2h1v12H0zm15 0V2h1v12h-1z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/letter-spacing.svg b/docs/res/icons/letter-spacing.svg
deleted file mode 100755
index 993435895..000000000
--- a/docs/res/icons/letter-spacing.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.415 12l.822-2.335h3.64L10.698 12h1.108L8.602 3.273h-1.09L4.306 12h1.108zm2.59-7.347h.103l1.436 4.074H6.57l1.436-4.074z" fill="#fff"/><path fill-rule="evenodd" clip-rule="evenodd" d="M0 14V2h1v12H0zm15 0V2h1v12h-1z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/line-height-black.svg b/docs/res/icons/line-height-black.svg
deleted file mode 100755
index 04c1e66a9..000000000
--- a/docs/res/icons/line-height-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.297 12l.762-2.14h3.32L10.14 12h1.015L8.22 4h-1l-2.94 8h1.016zm1.066-3l1.324-3.734h.063L9.074 9h-2.71z" fill="#000"/><path fill-rule="evenodd" clip-rule="evenodd" d="M15 2H1V1h14v1zm0 13H1v-1h14v1z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/line-height.svg b/docs/res/icons/line-height.svg
deleted file mode 100755
index 627f62faa..000000000
--- a/docs/res/icons/line-height.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.297 12l.762-2.14h3.32L10.14 12h1.015L8.22 4h-1l-2.94 8h1.016zm1.066-3l1.324-3.734h.063L9.074 9h-2.71z" fill="#fff"/><path fill-rule="evenodd" clip-rule="evenodd" d="M15 2H1V1h14v1zm0 13H1v-1h14v1z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/minimize-black.svg b/docs/res/icons/minimize-black.svg
deleted file mode 100644
index 074910d93..000000000
--- a/docs/res/icons/minimize-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="2" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/minimize.svg b/docs/res/icons/minimize.svg
deleted file mode 100644
index 140615292..000000000
--- a/docs/res/icons/minimize.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="2" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/popup-black.svg b/docs/res/icons/popup-black.svg
deleted file mode 100755
index 4046411f2..000000000
--- a/docs/res/icons/popup-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 3.293l3.354 3.353-.707.708L8 4.707 5.354 7.354l-.708-.708L8 3.293zm0 8L5.354 8.646l-.708.708L8 12.707l3.354-3.353-.707-.708L8 11.293z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/popup.svg b/docs/res/icons/popup.svg
deleted file mode 100755
index eba6b62fe..000000000
--- a/docs/res/icons/popup.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 3.293l3.354 3.353-.707.708L8 4.707 5.354 7.354l-.708-.708L8 3.293zm0 8L5.354 8.646l-.708.708L8 12.707l3.354-3.353-.707-.708L8 11.293z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/reset-black.svg b/docs/res/icons/reset-black.svg
deleted file mode 100755
index 6f20feaef..000000000
--- a/docs/res/icons/reset-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.993.893L6.95 2.817l1.272.187A6 6 0 112 9h1a5 5 0 105.928-4.914l-.005.032-.79-.116A5.078 5.078 0 008 4v-.018L6.684 3.79l2.214 2.908-.796.606-3.287-4.319L9.459.047l.534.846z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/reset.svg b/docs/res/icons/reset.svg
deleted file mode 100755
index 33b7ca175..000000000
--- a/docs/res/icons/reset.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.993.893L6.95 2.817l1.272.187A6 6 0 112 9h1a5 5 0 105.928-4.914l-.005.032-.79-.116A5.078 5.078 0 008 4v-.018L6.684 3.79l2.214 2.908-.796.606-3.287-4.319L9.459.047l.534.846z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/settings-black.svg b/docs/res/icons/settings-black.svg
deleted file mode 100755
index 81365ff40..000000000
--- a/docs/res/icons/settings-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M14 4H6V3h8v1zM4 4H2V3h2v1zm10 3H6V6h8v1zM4 7H2V6h2v1zm10 3H6V9h8v1zM4 10H2V9h2v1zm10 3H6v-1h8v1zM4 13H2v-1h2v1z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/settings.svg b/docs/res/icons/settings.svg
deleted file mode 100755
index 31ed727a1..000000000
--- a/docs/res/icons/settings.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M14 4H6V3h8v1zM4 4H2V3h2v1zm10 3H6V6h8v1zM4 7H2V6h2v1zm10 3H6V9h8v1zM4 10H2V9h2v1zm10 3H6v-1h8v1zM4 13H2v-1h2v1z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/style-black.svg b/docs/res/icons/style-black.svg
deleted file mode 100755
index 0dd668a3d..000000000
--- a/docs/res/icons/style-black.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M0 13V3h1v10H0zm3 0V3h2v10H3zm4 0V3h3v10H7zm5 0V3h4v10h-4z" fill="#000"/></svg> \ No newline at end of file
diff --git a/docs/res/icons/style.svg b/docs/res/icons/style.svg
deleted file mode 100755
index ab0589a56..000000000
--- a/docs/res/icons/style.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M0 13V3h1v10H0zm3 0V3h2v10H3zm4 0V3h3v10H7zm5 0V3h4v10h-4z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/metrics.png b/docs/res/metrics.png
deleted file mode 100644
index 5c8fcbbfc..000000000
--- a/docs/res/metrics.png
+++ /dev/null
Binary files differ
diff --git a/docs/res/metrics2.png b/docs/res/metrics2.png
deleted file mode 100644
index f18f3f1a5..000000000
--- a/docs/res/metrics2.png
+++ /dev/null
Binary files differ
diff --git a/docs/res/popup.svg b/docs/res/popup.svg
deleted file mode 100644
index a20c03fa8..000000000
--- a/docs/res/popup.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 3.293l3.354 3.353-.708.708L8 4.707 5.354 7.354l-.708-.708L8 3.293zm0 8L5.354 8.646l-.708.708L8 12.707l3.354-3.353-.708-.708L8 11.293z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/preview-app.png b/docs/res/preview-app.png
deleted file mode 100644
index 27dc6e288..000000000
--- a/docs/res/preview-app.png
+++ /dev/null
Binary files differ
diff --git a/docs/res/reset.svg b/docs/res/reset.svg
deleted file mode 100644
index 33b7ca175..000000000
--- a/docs/res/reset.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.993.893L6.95 2.817l1.272.187A6 6 0 112 9h1a5 5 0 105.928-4.914l-.005.032-.79-.116A5.078 5.078 0 008 4v-.018L6.684 3.79l2.214 2.908-.796.606-3.287-4.319L9.459.047l.534.846z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/sample.png b/docs/res/sample.png
deleted file mode 100644
index c10811ca3..000000000
--- a/docs/res/sample.png
+++ /dev/null
Binary files differ
diff --git a/docs/res/settings.svg b/docs/res/settings.svg
deleted file mode 100644
index 31ed727a1..000000000
--- a/docs/res/settings.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="16" height="16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M14 4H6V3h8v1zM4 4H2V3h2v1zm10 3H6V6h8v1zM4 7H2V6h2v1zm10 3H6V9h8v1zM4 10H2V9h2v1zm10 3H6v-1h8v1zM4 13H2v-1h2v1z" fill="#fff"/></svg> \ No newline at end of file
diff --git a/docs/res/share.png b/docs/res/share.png
index 70425394a..31cddc907 100644
--- a/docs/res/share.png
+++ b/docs/res/share.png
Binary files differ
diff --git a/docs/res/weights-and-styles.svg b/docs/res/weights-and-styles.svg
deleted file mode 100644
index 240d4f9a4..000000000
--- a/docs/res/weights-and-styles.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg width="888" height="510" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0)" fill="#000"><path d="M2.994 212H5.99v-9.659h5.409c.217 0 .422 0 .628-.012L17.24 212h3.478l-5.59-10.214c3.15-1.075 4.624-3.647 4.624-6.931 0-4.371-2.608-7.582-8.404-7.582H2.994V212zm2.995-12.364v-9.707h5.264c4.008 0 5.554 1.956 5.554 4.926s-1.546 4.781-5.506 4.781H5.99zm25.4 12.75c3.766 0 6.52-1.883 7.389-4.684l-2.753-.773c-.725 1.932-2.403 2.898-4.637 2.898-3.344 0-5.65-2.162-5.783-6.134h13.462v-1.207c0-6.906-4.105-9.273-7.968-9.273-5.023 0-8.355 3.96-8.355 9.659 0 5.699 3.284 9.514 8.644 9.514zm-5.784-11.156c.193-2.886 2.234-5.457 5.494-5.457 3.09 0 5.07 2.318 5.07 5.457H25.606zm24.739 18.111c4.443 0 8.017-2.029 8.017-6.81v-19.076h-2.753v2.946h-.29c-.628-.966-1.787-3.188-5.409-3.188-4.685 0-7.92 3.719-7.92 9.418 0 5.795 3.38 9.079 7.872 9.079 3.622 0 4.78-2.125 5.409-3.139h.241v3.767c0 3.091-2.173 4.492-5.167 4.492-3.369 0-4.552-1.775-5.313-2.802l-2.27 1.594c1.16 1.944 3.441 3.719 7.583 3.719zm-.097-10.19c-3.574 0-5.409-2.705-5.409-6.569 0-3.767 1.787-6.809 5.409-6.809 3.477 0 5.313 2.801 5.313 6.809 0 4.106-1.884 6.569-5.313 6.569zm24.473-4.733c0 3.477-2.656 5.071-4.781 5.071-2.367 0-4.057-1.739-4.057-4.444v-11.59h-2.85v11.784c0 4.733 2.512 7.002 5.99 7.002 2.8 0 4.636-1.497 5.505-3.38h.193V212h2.85v-18.545h-2.85v10.963zm10.374-17.145h-2.85V212h2.85v-24.727zm10.132 25.162c3.236 0 4.926-1.739 5.506-2.946h.145V212h2.849v-12.219c0-5.892-4.491-6.568-6.858-6.568-2.8 0-5.988.966-7.437 4.347l2.704.966c.628-1.353 2.113-2.802 4.83-2.802 2.62 0 3.912 1.389 3.912 3.767v.097c0 1.376-1.4 1.256-4.781 1.69-3.442.447-7.197 1.208-7.197 5.458 0 3.622 2.802 5.699 6.327 5.699zm.435-2.56c-2.27 0-3.912-1.014-3.912-2.994 0-2.174 1.98-2.85 4.202-3.14 1.207-.144 4.443-.482 4.926-1.062v2.608c0 2.318-1.835 4.588-5.216 4.588zM108.383 212h2.849v-11.736c0-2.511 1.981-4.346 4.685-4.346.761 0 1.546.144 1.739.193v-2.898a27.572 27.572 0 00-1.497-.048c-2.222 0-4.154 1.255-4.83 3.091h-.193v-2.801h-2.753V212zM2.122 247l1.317-3.707h5.293L10.048 247h1.662l-4.807-13.091H5.267L.46 247h1.662zm1.816-5.114l2.096-5.906h.102l2.097 5.906H3.937zm12.496 5.344c1.713 0 2.608-.92 2.915-1.56h.076V247h1.509v-6.469c0-3.119-2.378-3.477-3.63-3.477-1.484 0-3.171.511-3.938 2.301l1.432.511c.332-.715 1.118-1.482 2.556-1.482 1.387 0 2.071.735 2.071 1.994v.051c0 .729-.741.665-2.53.895-1.823.236-3.81.639-3.81 2.889 0 1.918 1.482 3.017 3.349 3.017zm.23-1.355c-1.202 0-2.071-.537-2.071-1.585 0-1.151 1.048-1.509 2.224-1.662.64-.077 2.353-.256 2.608-.563v1.381c0 1.227-.971 2.429-2.76 2.429zM23.892 247h4.73c3.094 0 4.372-1.509 4.372-3.477 0-2.071-1.432-3.196-2.633-3.273v-.128c1.125-.307 2.122-1.048 2.122-2.736 0-1.917-1.279-3.477-4.014-3.477h-4.577V247zm1.585-1.406v-4.551H28.7c1.713 0 2.787 1.15 2.787 2.48 0 1.15-.793 2.071-2.864 2.071h-3.145zm0-5.932v-4.347h2.992c1.738 0 2.505.921 2.505 2.071 0 1.381-1.125 2.276-2.557 2.276h-2.94zM35.6 247h1.457v-1.509h.18c.332.537.97 1.714 2.863 1.714 2.454 0 4.168-1.969 4.168-5.089 0-3.093-1.714-5.062-4.194-5.062-1.917 0-2.505 1.176-2.838 1.687h-.128v-4.832H35.6V247zm1.483-4.909c0-2.199.971-3.682 2.812-3.682 1.918 0 2.864 1.611 2.864 3.682 0 2.097-.972 3.758-2.864 3.758-1.815 0-2.812-1.534-2.812-3.758zM50.818 247c3.989 0 6.239-2.48 6.239-6.571 0-4.065-2.25-6.52-6.06-6.52H46.78V247h4.04zm-2.454-1.406v-10.279h2.531c3.068 0 4.628 1.944 4.628 5.114 0 3.196-1.56 5.165-4.807 5.165h-2.352zm14.855 1.611c1.892 0 2.531-1.177 2.864-1.714h.178V247h1.458v-13.091H66.21v4.832h-.127c-.333-.511-.92-1.687-2.838-1.687-2.48 0-4.194 1.969-4.194 5.062 0 3.12 1.713 5.089 4.168 5.089zm.204-1.356c-1.892 0-2.863-1.661-2.863-3.758 0-2.071.946-3.682 2.863-3.682 1.841 0 2.813 1.483 2.813 3.682 0 2.224-.997 3.758-2.813 3.758zM70.897 247H78.9v-1.406h-6.42v-4.449h5.906v-1.406H72.48v-4.424h6.315v-1.406h-7.9V247zm14.67.205c1.994 0 3.451-.998 3.912-2.481l-1.458-.409c-.383 1.023-1.272 1.534-2.454 1.534-1.771 0-2.992-1.144-3.062-3.247h7.127v-.639c0-3.656-2.173-4.909-4.219-4.909-2.659 0-4.423 2.097-4.423 5.114s1.739 5.037 4.576 5.037zm-3.062-5.907c.102-1.527 1.182-2.889 2.908-2.889 1.636 0 2.685 1.227 2.685 2.889h-5.593zM101.079 238h1.636c-.485-2.531-2.608-4.27-5.369-4.27-3.356 0-5.727 2.582-5.727 6.725 0 4.142 2.352 6.724 5.83 6.724 3.119 0 5.343-2.077 5.343-5.318v-1.406h-4.986v1.406h3.452c-.045 2.352-1.592 3.835-3.81 3.835-2.429 0-4.295-1.841-4.295-5.241 0-3.401 1.866-5.242 4.193-5.242 1.892 0 3.177 1.068 3.733 2.787zm8.187 12.886c2.352 0 4.244-1.074 4.244-3.605v-10.099h-1.457v1.559h-.154c-.332-.511-.946-1.687-2.863-1.687-2.481 0-4.194 1.969-4.194 4.986 0 3.068 1.79 4.807 4.168 4.807 1.918 0 2.531-1.125 2.864-1.662h.127v1.994c0 1.636-1.15 2.378-2.735 2.378-1.784 0-2.41-.94-2.813-1.483l-1.202.844c.614 1.029 1.822 1.968 4.015 1.968zm-.052-5.395c-1.892 0-2.863-1.431-2.863-3.477 0-1.994.946-3.605 2.863-3.605 1.841 0 2.813 1.483 2.813 3.605 0 2.174-.997 3.477-2.813 3.477zm7.262-11.582V247h1.483v-9.946h.128l4.091 9.946h1.431l4.091-9.946h.128V247h1.483v-13.091h-1.892l-4.449 10.867h-.153l-4.449-10.867h-1.892zM132.285 247h1.509v-6.136c0-1.439 1.048-2.455 2.224-2.455 1.144 0 1.943.748 1.943 1.867V247h1.534v-6.392c0-1.266.793-2.199 2.174-2.199 1.073 0 1.994.569 1.994 2.02V247h1.508v-6.571c0-2.308-1.24-3.375-2.991-3.375-1.406 0-2.436.646-2.94 1.662h-.103c-.486-1.048-1.342-1.662-2.633-1.662-1.279 0-2.225.614-2.634 1.662h-.128v-1.534h-1.457V247zm26.895-6.545c0-4.143-2.429-6.725-5.779-6.725-3.349 0-5.778 2.582-5.778 6.725 0 4.142 2.429 6.724 5.778 6.724 3.35 0 5.779-2.582 5.779-6.724zm-1.535 0c0 3.4-1.866 5.241-4.244 5.241-2.378 0-4.244-1.841-4.244-5.241 0-3.401 1.866-5.242 4.244-5.242 2.378 0 4.244 1.841 4.244 5.242zm7.984 6.75c2.659 0 4.449-2.02 4.449-5.063 0-3.068-1.79-5.088-4.449-5.088s-4.449 2.02-4.449 5.088c0 3.043 1.79 5.063 4.449 5.063zm0-1.356c-2.02 0-2.94-1.738-2.94-3.707 0-1.969.92-3.733 2.94-3.733s2.94 1.764 2.94 3.733-.92 3.707-2.94 3.707zm6.956 1.151h1.585v-5.114h2.864c.115 0 .224 0 .332-.006l2.762 5.12h1.841l-2.96-5.408c1.669-.569 2.448-1.93 2.448-3.669 0-2.314-1.38-4.014-4.448-4.014h-4.424V247zm1.585-6.545v-5.14h2.787c2.123 0 2.941 1.036 2.941 2.608 0 1.573-.818 2.532-2.915 2.532h-2.813zm9.724 6.545h1.509v-6.213c0-1.33 1.048-2.301 2.48-2.301.403 0 .818.076.92.102v-1.534a14.209 14.209 0 00-.792-.026c-1.176 0-2.199.665-2.557 1.637h-.102v-1.483h-1.458V247zm14.061-9.818h1.534c-.07-1.975-1.892-3.452-4.423-3.452-2.506 0-4.474 1.458-4.474 3.656 0 1.765 1.278 2.813 3.323 3.401l1.611.46c1.381.384 2.608.869 2.608 2.173 0 1.432-1.38 2.378-3.196 2.378-1.559 0-2.94-.69-3.068-2.173h-1.636c.153 2.148 1.892 3.605 4.704 3.605 3.017 0 4.73-1.662 4.73-3.784 0-2.455-2.326-3.247-3.681-3.605l-1.33-.358c-.972-.256-2.531-.767-2.531-2.173 0-1.253 1.15-2.174 2.889-2.174 1.585 0 2.787.755 2.94 2.046zm11.07 2.199c-.473-1.394-1.534-2.327-3.478-2.327-2.071 0-3.605 1.176-3.605 2.838 0 1.355.806 2.263 2.608 2.685l1.637.383c.99.23 1.457.703 1.457 1.381 0 .844-.895 1.534-2.301 1.534-1.234 0-2.007-.531-2.276-1.585l-1.432.358c.352 1.668 1.726 2.557 3.733 2.557 2.282 0 3.836-1.247 3.836-2.941 0-1.368-.857-2.231-2.608-2.659l-1.458-.358c-1.163-.287-1.687-.677-1.687-1.432 0-.843.895-1.457 2.096-1.457 1.317 0 1.86.729 2.123 1.406l1.355-.383zM5.957 255.909H4.372L1.1 258.082v1.611l3.196-2.122h.077V269h1.585v-13.091zM9.722 269h8.259v-1.406h-6.085v-.103l2.94-3.144c2.25-2.41 2.915-3.535 2.915-4.986 0-2.02-1.637-3.631-3.938-3.631-2.295 0-4.04 1.56-4.04 3.861h1.509c0-1.489.965-2.48 2.48-2.48 1.42 0 2.506.869 2.506 2.25 0 1.208-.71 2.103-2.225 3.758l-4.32 4.73V269zm15.322.179c2.538 0 4.423-1.592 4.423-3.733 0-1.662-.984-2.87-2.633-3.145v-.102c1.323-.403 2.148-1.489 2.148-2.966 0-1.854-1.464-3.503-3.887-3.503-2.263 0-4.142 1.394-4.219 3.452h1.534c.058-1.304 1.298-2.071 2.66-2.071 1.444 0 2.377.876 2.377 2.199 0 1.38-1.08 2.275-2.633 2.275h-1.048v1.406h1.048c1.988 0 3.094 1.01 3.094 2.455 0 1.387-1.208 2.327-2.89 2.327-1.514 0-2.716-.78-2.812-2.046h-1.61c.095 2.059 1.91 3.452 4.448 3.452zm6.73-2.864h6.163V269h1.508v-2.685h1.79v-1.406h-1.79v-9h-1.917l-5.753 9.102v1.304zm6.163-1.406h-4.45v-.102l4.347-6.878h.103v6.98zm9.784 4.27c2.493 0 4.321-1.841 4.321-4.347 0-2.537-1.764-4.397-4.167-4.397-.882 0-1.739.313-2.276.741h-.076l.46-3.861h5.471v-1.406h-6.8l-.793 6.443 1.483.179c.543-.39 1.47-.671 2.275-.665 1.669.013 2.89 1.279 2.89 2.992 0 1.681-1.177 2.915-2.788 2.915-1.342 0-2.41-.863-2.53-2.046h-1.535c.096 1.995 1.815 3.452 4.065 3.452zm11.207 0c2.647.032 4.372-1.962 4.372-4.398 0-2.531-1.872-4.346-4.116-4.346-1.349 0-2.506.658-3.222 1.738h-.102c.007-3.215 1.246-5.062 3.273-5.062 1.38 0 2.211.869 2.505 2.071h1.56c-.32-2.058-1.866-3.477-4.065-3.477-2.947 0-4.756 2.607-4.756 7.261 0 4.839 2.404 6.187 4.551 6.213zm0-1.406c-1.642 0-2.844-1.4-2.838-2.966.007-1.566 1.266-2.966 2.89-2.966 1.604 0 2.786 1.317 2.786 2.94 0 1.662-1.233 2.992-2.838 2.992zM66.223 269h1.662l5.83-11.608v-1.483h-8.387v1.406h6.75v.103L66.223 269zm13.804.179c2.614 0 4.436-1.528 4.449-3.656-.013-1.656-1.119-3.062-2.532-3.324v-.077c1.228-.319 2.033-1.521 2.046-2.915-.013-1.994-1.688-3.477-3.963-3.477-2.301 0-3.976 1.483-3.963 3.477-.013 1.394.792 2.596 2.045 2.915v.077c-1.438.262-2.544 1.668-2.531 3.324-.013 2.128 1.809 3.656 4.449 3.656zm0-1.406c-1.796 0-2.902-.921-2.89-2.327-.012-1.477 1.209-2.531 2.89-2.531 1.655 0 2.876 1.054 2.889 2.531-.013 1.406-1.119 2.327-2.89 2.327zm0-6.213c-1.432 0-2.442-.895-2.43-2.25-.012-1.33.96-2.199 2.43-2.199 1.444 0 2.416.869 2.429 2.199-.013 1.355-1.023 2.25-2.43 2.25zm11.066-5.855c-2.66-.026-4.372 1.968-4.372 4.397 0 2.532 1.866 4.347 4.116 4.347 1.355 0 2.506-.665 3.222-1.739h.102c0 3.222-1.253 5.063-3.273 5.063-1.38 0-2.224-.87-2.505-2.071h-1.56c.307 2.071 1.867 3.477 4.066 3.477 2.94 0 4.755-2.608 4.755-7.261 0-4.833-2.403-6.188-4.551-6.213zm0 1.406c1.636 0 2.838 1.406 2.838 2.966 0 1.559-1.278 2.966-2.89 2.966-1.61 0-2.786-1.304-2.786-2.941 0-1.662 1.227-2.991 2.838-2.991zm11.335 12.068c2.889 0 4.551-2.448 4.551-6.724 0-4.245-1.688-6.725-4.551-6.725-2.864 0-4.551 2.48-4.551 6.725 0 4.276 1.662 6.724 4.551 6.724zm0-1.406c-1.905 0-3.017-1.911-3.017-5.318 0-3.401 1.125-5.344 3.017-5.344s3.017 1.943 3.017 5.344c0 3.407-1.112 5.318-3.017 5.318zm14.062-11.864h-1.738l.127 9.409h1.483l.128-9.409zm-.869 13.193c.633 0 1.15-.517 1.15-1.15 0-.633-.517-1.151-1.15-1.151-.633 0-1.151.518-1.151 1.151s.518 1.15 1.151 1.15zm5.853-3.784h1.535v-.077c.025-1.585.434-2.275 1.559-2.978 1.125-.684 1.79-1.669 1.79-3.081 0-1.994-1.457-3.452-3.707-3.452-2.071 0-3.714 1.279-3.81 3.452h1.611c.096-1.509 1.15-2.122 2.199-2.122 1.201 0 2.173.792 2.173 2.045 0 1.016-.582 1.745-1.33 2.199-1.253.761-2 1.502-2.02 3.937v.077zm.819 3.784c.632 0 1.15-.517 1.15-1.15 0-.633-.518-1.151-1.15-1.151-.633 0-1.151.518-1.151 1.151s.518 1.15 1.151 1.15zm6.873-6.647c0 3.221.869 5.906 2.429 8.181h1.329c-1.227-1.687-2.199-5.139-2.199-8.181 0-3.043.972-6.495 2.199-8.182h-1.329c-1.56 2.275-2.429 4.96-2.429 8.182zm9.206 0c0-3.222-.87-5.907-2.429-8.182h-1.33c1.228 1.687 2.199 5.139 2.199 8.182 0 3.042-.971 6.494-2.199 8.181h1.33c1.559-2.275 2.429-4.96 2.429-8.181zm4.041 8.181h3.784v-1.252h-2.352v-13.858h2.352v-1.253h-3.784v16.363zm8.797-16.363h-3.784v1.253h2.352v13.858h-2.352v1.252h3.784v-16.363zm8.03 16.363v-1.252c-1.483 0-1.943-.678-1.943-2.174v-2.557c0-1.041-.326-1.815-1.79-2.103v-.191c1.464-.288 1.79-1.061 1.79-2.103v-2.557c0-1.496.46-2.173 1.943-2.173v-1.253c-2.505 0-3.324 1.074-3.324 3.426v2.045c0 1.4-.492 1.944-1.917 1.944v1.534c1.425 0 1.917.543 1.917 1.943v2.045c0 2.352.819 3.426 3.324 3.426zm1.229-16.363v1.253c1.483 0 1.943.677 1.943 2.173v2.557c0 1.042.326 1.815 1.79 2.103v.191c-1.464.288-1.79 1.062-1.79 2.103v2.557c0 1.496-.46 2.174-1.943 2.174v1.252c2.506 0 3.324-1.074 3.324-3.426v-2.045c0-1.4.492-1.943 1.918-1.943v-1.534c-1.426 0-1.918-.544-1.918-1.944v-2.045c0-2.352-.818-3.426-3.324-3.426zm14.831 16.261c1.304 0 2.966-.383 3.759-.716l-.358-1.176c-.46.153-1.943.665-3.35.665-4.372 0-6.698-2.455-6.698-6.801 0-4.27 2.377-6.827 6.392-6.827 4.065 0 5.983 2.864 5.983 5.727 0 2.915-.307 4.219-1.611 4.219-.767 0-1.176-.639-1.176-1.355v-5.779h-1.356v.716h-.076c-.179-.562-1.176-1.048-2.455-.92-1.917.204-3.375 1.79-3.375 4.091 0 2.429 1.151 4.295 3.375 4.372 1.458.051 2.225-.665 2.531-1.406h.077c.154 1.099 1.534 1.483 2.429 1.483 2.71 0 2.966-2.915 2.966-5.395 0-3.503-2.454-6.955-7.236-6.955-4.934 0-7.875 2.992-7.875 7.978 0 5.164 2.838 8.079 8.054 8.079zm-.741-5.088c-1.662 0-2.25-1.508-2.25-3.145 0-1.483.844-2.761 2.301-2.761 1.534 0 2.352.613 2.352 2.761 0 2.122-.69 3.145-2.403 3.145zm13.891 5.19h1.049v-1.425c2.684-.185 4.193-1.771 4.193-3.765 0-2.455-2.327-3.247-3.682-3.605l-.511-.141v-4.544c1.355.134 2.339.862 2.48 2.026h1.534c-.064-1.867-1.701-3.286-4.014-3.439v-1.47h-1.049v1.489c-2.192.224-3.835 1.617-3.835 3.624 0 1.765 1.278 2.813 3.324 3.401l.511.147v4.839c-1.342-.141-2.441-.831-2.557-2.148h-1.636c.147 2.013 1.681 3.42 4.193 3.586v1.425zm1.049-2.863v-4.539l.051.013c1.38.384 2.608.869 2.608 2.173 0 1.285-1.113 2.18-2.659 2.353zm-1.049-6.354c-.971-.275-2.301-.812-2.301-2.109 0-1.106.895-1.95 2.301-2.135v4.244zM200.977 269h1.279l.594-3.631h1.937l.204-1.278h-1.93l.537-3.273h1.956l.204-1.278h-1.949l.594-3.631h-1.278l-.595 3.631h-3.324l.595-3.631h-1.278l-.595 3.631h-1.937l-.204 1.278h1.93l-.537 3.273h-1.956l-.204 1.278h1.949l-.594 3.631h1.278l.595-3.631h3.324l-.595 3.631zm-2.518-4.909l.537-3.273h3.323l-.537 3.273h-3.323zm15.638 2.454c0 1.432.895 2.634 2.557 2.634 1.636 0 2.531-1.202 2.531-2.634v-.69c0-1.432-.869-2.633-2.531-2.633-1.637 0-2.557 1.201-2.557 2.633v.69zm-6.52-7.491c0 1.432.895 2.634 2.557 2.634 1.636 0 2.531-1.202 2.531-2.634v-.69c0-1.432-.869-2.634-2.531-2.634-1.637 0-2.557 1.202-2.557 2.634v.69zm.486 9.946h1.457l9-13.091h-1.457l-9 13.091zm7.338-3.145c0-.793.358-1.534 1.253-1.534.92 0 1.227.741 1.227 1.534v.69c0 .793-.333 1.535-1.227 1.535-.921 0-1.253-.742-1.253-1.535v-.69zm-6.52-7.491c0-.793.358-1.534 1.253-1.534.92 0 1.227.741 1.227 1.534v.69c0 .793-.332 1.534-1.227 1.534-.921 0-1.253-.741-1.253-1.534v-.69zM1.304 291l1.937-3.707h5.292L9.23 291h1.662l-2.633-13.091H6.622L-.358 291h1.662zm2.672-5.114l3.08-5.906h.103l1.112 5.906H3.976zm11.614 5.344c1.713 0 2.762-.92 3.17-1.56h.077l-.23 1.33h1.509l1.074-6.469c.511-3.119-1.79-3.477-3.043-3.477-1.483 0-3.273.511-4.321 2.301l1.33.511c.46-.715 1.431-1.482 2.863-1.482 1.38 0 1.892.741 1.688 1.994v.051c-.128.716-.87.665-2.685.895-1.866.23-3.912.639-4.295 2.889-.307 1.918.997 3.017 2.863 3.017zm.435-1.355c-1.202 0-1.969-.537-1.79-1.585.18-1.151 1.304-1.509 2.506-1.662.639-.077 2.378-.256 2.684-.563l-.23 1.381c-.204 1.227-1.38 2.429-3.17 2.429zM23.074 291h4.73c3.094 0 4.628-1.509 4.96-3.477.332-2.071-.92-3.196-2.097-3.273l.026-.128c1.15-.307 2.276-1.048 2.557-2.736.332-1.917-.69-3.477-3.426-3.477h-4.577L23.074 291zm1.815-1.406l.767-4.551h3.222c1.713 0 2.582 1.15 2.378 2.48-.205 1.15-1.151 2.071-3.222 2.071h-3.145zm.997-5.932l.716-4.347h2.992c1.738 0 2.352.921 2.147 2.071-.204 1.381-1.483 2.276-2.915 2.276h-2.94zM34.781 291h1.457l.256-1.509h.179c.255.537.69 1.714 2.582 1.714 2.455 0 4.5-1.969 5.011-5.089.512-3.093-.869-5.062-3.349-5.062-1.918 0-2.71 1.176-3.12 1.687h-.127l.792-4.832h-1.508L34.781 291zm2.3-4.909c.359-2.199 1.586-3.682 3.427-3.682 1.918 0 2.582 1.611 2.25 3.682-.358 2.097-1.585 3.758-3.477 3.758-1.816 0-2.557-1.534-2.2-3.758zM50.052 291c3.989 0 6.597-2.429 7.262-6.469.69-4.116-1.202-6.622-5.012-6.622h-4.167L45.96 291h4.091zm-2.269-1.406l1.7-10.279h2.59c3.067 0 4.27 1.892 3.732 5.012-.537 3.247-2.454 5.267-5.702 5.267h-2.32zm14.619 1.611c1.885 0 2.723-1.177 3.145-1.714h.179L65.469 291h1.457l2.174-13.091h-1.51l-.805 4.832h-.128c-.243-.511-.64-1.687-2.557-1.687-2.48 0-4.52 1.969-5.037 5.062-.511 3.12.876 5.089 3.337 5.089zm.37-1.356c-1.892 0-2.537-1.661-2.186-3.758.34-2.071 1.502-3.682 3.414-3.682 1.847 0 2.627 1.483 2.262 3.682-.37 2.224-1.674 3.758-3.49 3.758zM70.096 291h8.003l.23-1.406H71.91l.742-4.449h5.906l.23-1.406h-5.906l.742-4.424h6.315l.23-1.406h-7.9L70.094 291zm14.644.205c2.001 0 3.612-.998 4.321-2.481l-1.38-.409c-.556 1.023-1.502 1.534-2.71 1.534-1.893 0-2.903-.843-2.538-3.247h7.14l.102-.639c.62-3.656-1.349-4.909-3.4-4.909-2.653 0-4.775 2.097-5.268 5.114-.505 3.017.902 5.037 3.733 5.037zm-2.096-5.907c.3-1.393 1.751-2.889 3.4-2.889 1.643 0 2.487 1.227 2.2 2.889h-5.6zM101.797 282h1.636c-.051-2.531-1.892-4.27-4.654-4.27-3.349 0-6.161 2.582-6.826 6.725-.69 4.142 1.227 6.724 4.704 6.724 3.12 0 5.702-2.071 6.213-5.318l.256-1.406H98.14l-.255 1.406h3.458c-.422 2.346-2.34 3.835-4.558 3.835-2.429 0-3.86-1.841-3.298-5.241.562-3.401 2.864-5.242 5.19-5.242 1.892 0 2.864 1.074 3.12 2.787zm6.09 12.886c2.339 0 4.41-1.074 4.832-3.605l1.662-10.099h-1.458l-.255 1.559h-.154c-.243-.511-.664-1.687-2.582-1.687-2.48 0-4.519 1.969-5.011 4.986-.512 3.068.99 4.807 3.375 4.807 1.911 0 2.71-1.125 3.119-1.662h.128l-.307 1.994c-.281 1.636-1.598 2.378-3.17 2.378-1.803 0-2.225-.94-2.532-1.483l-1.355.844c.454 1.029 1.502 1.968 3.708 1.968zm.792-5.395c-1.905 0-2.589-1.431-2.25-3.477.333-1.994 1.47-3.605 3.401-3.605 1.828 0 2.627 1.483 2.275 3.605-.358 2.174-1.623 3.477-3.426 3.477zm9.205-11.582L115.71 291h1.483l1.662-9.946h.128l2.429 9.946h1.432l5.753-9.946h.128L127.063 291h1.483l2.173-13.091h-1.892l-6.239 10.867h-.153l-2.659-10.867h-1.892zM131.52 291h1.508l1.023-6.136c.23-1.432 1.457-2.455 2.633-2.455 1.151 0 1.816.742 1.637 1.867L137.196 291h1.534l1.074-6.392c.204-1.278 1.15-2.199 2.531-2.199 1.074 0 1.892.563 1.662 2.02l-1.1 6.571h1.509l1.099-6.571c.384-2.301-.69-3.375-2.429-3.375-1.406 0-2.556.639-3.221 1.662h-.103c-.306-1.048-1.073-1.662-2.352-1.662-1.278 0-2.326.614-2.915 1.662h-.127l.255-1.534h-1.457L131.52 291zm27.968-6.443c.69-4.193-1.355-6.827-4.73-6.827-3.324 0-6.111 2.531-6.801 6.622-.691 4.193 1.355 6.827 4.755 6.827 3.299 0 6.086-2.531 6.776-6.622zm-1.509-.205c-.562 3.452-2.787 5.344-5.216 5.344-2.326 0-3.86-1.79-3.298-5.139.563-3.452 2.787-5.344 5.216-5.344 2.327 0 3.861 1.79 3.298 5.139zm6.961 6.853c2.608 0 4.679-1.969 5.165-4.961.505-3.119-.971-5.19-3.682-5.19-2.608 0-4.679 1.969-5.164 4.986-.499 3.094.971 5.165 3.681 5.165zm.026-1.356c-1.969 0-2.557-1.687-2.25-3.605.326-2.02 1.611-3.835 3.682-3.835 1.968 0 2.557 1.713 2.25 3.631-.326 2.026-1.611 3.809-3.682 3.809zM171.82 291h1.585l.85-5.114h2.857c.115 0 .224 0 .333-.006l1.917 5.12h1.841l-2.071-5.408c1.771-.575 2.781-1.943 3.068-3.669.384-2.326-.715-4.014-3.784-4.014h-4.423L171.82 291zm2.672-6.545l.856-5.14h2.787c2.122 0 2.761 1.023 2.506 2.608-.256 1.56-1.227 2.532-3.324 2.532h-2.825zm8.637 6.545h1.508l1.023-6.213c.23-1.33 1.432-2.301 2.864-2.301.409 0 .818.076.92.102l.256-1.534c-.179-.026-.563-.026-.793-.026-1.176 0-2.326.665-2.838 1.637h-.102l.256-1.483h-1.458L183.129 291zm15.707-9.716h1.534c.23-2.071-1.304-3.554-3.835-3.554-2.506 0-4.705 1.458-5.088 3.656-.282 1.765.818 2.813 2.761 3.401l1.534.46c1.33.384 2.48.869 2.25 2.173-.23 1.432-1.764 2.378-3.58 2.378-1.559 0-2.838-.69-2.71-2.173h-1.636c-.205 2.148 1.304 3.605 4.116 3.605 3.017 0 4.986-1.662 5.344-3.784.409-2.455-1.79-3.247-3.068-3.605l-1.278-.358c-.921-.256-2.404-.767-2.174-2.173.205-1.253 1.509-2.174 3.247-2.174 1.586 0 2.583.742 2.583 2.148zm10.737 2.097c-.256-1.407-1.151-2.327-3.094-2.327-2.071 0-3.81 1.176-4.091 2.838-.23 1.355.435 2.25 2.173 2.685l1.56.383c.972.23 1.355.691 1.227 1.381-.127.844-1.15 1.534-2.556 1.534-1.228 0-1.918-.537-1.995-1.585l-1.508.358c.076 1.662 1.304 2.557 3.324 2.557 2.275 0 4.039-1.253 4.321-2.941.23-1.38-.486-2.224-2.174-2.659l-1.406-.358c-1.099-.281-1.56-.69-1.432-1.432.128-.843 1.125-1.457 2.327-1.457 1.329 0 1.739.716 1.892 1.406l1.432-.383zM7.313 299.909H5.726l-3.63 2.173-.282 1.611 3.554-2.122h.077L3.554 313h1.585l2.173-13.091zM8.903 313h8.259l.23-1.406h-6.086l.026-.103 3.452-3.144c2.659-2.404 3.503-3.529 3.758-4.986.333-2.02-.997-3.631-3.298-3.631s-4.347 1.56-4.73 3.861h1.508c.256-1.483 1.432-2.48 2.94-2.48 1.433 0 2.328.869 2.097 2.25-.204 1.201-1.073 2.096-2.863 3.758l-5.088 4.73L8.904 313zm15.373.179c2.576 0 4.57-1.4 4.935-3.631.274-1.655-.486-2.966-2.097-3.247v-.077c1.374-.415 2.404-1.451 2.634-2.889.306-1.892-.915-3.605-3.375-3.605-2.225 0-4.283 1.406-4.68 3.452h1.535c.243-1.304 1.68-2.071 3.068-2.071 1.438 0 2.154.837 1.943 2.096-.236 1.445-1.515 2.378-3.068 2.378h-.997l-.23 1.406h1.073c2.001 0 2.864.991 2.66 2.353-.23 1.527-1.726 2.429-3.375 2.429-1.547 0-2.493-.793-2.378-2.046H20.34c-.269 2.071 1.374 3.452 3.937 3.452zm7.14-2.864h6.143l-.44 2.685h1.508l.448-2.685h1.802l.23-1.406h-1.802l1.495-9h-1.917l-7.262 9.102-.204 1.304zm6.386-1.406H33.36v-.102l5.497-6.878h.102l-1.156 6.98zm9.075 4.27c2.505 0 4.627-1.841 5.037-4.347.434-2.531-1.023-4.397-3.426-4.397-.895 0-1.79.306-2.404.741h-.077l1.1-3.861h5.471l.23-1.406h-6.8l-1.867 6.443 1.457.179c.614-.383 1.586-.665 2.378-.665 1.688 0 2.685 1.279 2.404 2.992-.282 1.687-1.662 2.915-3.273 2.915-1.33 0-2.276-.87-2.2-2.046h-1.533c-.23 1.995 1.253 3.452 3.503 3.452zm11.309 0c2.601.026 4.577-1.918 4.986-4.295.434-2.583-1.177-4.449-3.478-4.449-1.323 0-2.53.613-3.426 1.687l-.102.102c.562-3.349 2.192-5.113 4.219-5.113 1.393 0 2.051.85 2.096 2.071h1.509c.025-2.071-1.387-3.477-3.554-3.477-2.915 0-5.088 2.556-5.855 7.159-.819 4.883 1.406 6.296 3.605 6.315zm.05-1.406c-1.61 0-2.53-1.355-2.275-2.864.256-1.611 1.816-3.068 3.478-3.068 1.56 0 2.48 1.278 2.224 2.838-.281 1.713-1.79 3.094-3.426 3.094zm7.17 1.227h1.662l7.747-11.608.256-1.483h-8.387l-.23 1.406h6.75l-.025.103L65.405 313zm13.88.179c2.55 0 4.583-1.464 4.935-3.554.288-1.694-.64-3.145-2.02-3.426v-.051c1.253-.307 2.333-1.381 2.582-2.838.346-2.046-1.15-3.58-3.477-3.58-2.25 0-4.046 1.4-4.423 3.375-.275 1.432.281 2.71 1.483 3.043v.051c-1.457.256-2.749 1.611-3.017 3.221-.358 2.135 1.246 3.759 3.937 3.759zm.052-1.406c-1.733 0-2.647-.85-2.43-2.225.243-1.534 1.688-2.633 3.401-2.633 1.61 0 2.634.971 2.403 2.429-.23 1.457-1.527 2.429-3.374 2.429zm1.022-6.213c-1.361 0-2.212-.806-1.994-2.148.224-1.381 1.368-2.301 2.915-2.301 1.425 0 2.23.767 1.994 2.096-.243 1.387-1.42 2.353-2.915 2.353zm12.038-5.855c-2.608-.026-4.577 1.917-4.986 4.295-.434 2.582 1.176 4.449 3.477 4.449 1.33 0 2.532-.614 3.427-1.688l.102-.102c-.563 3.35-2.199 5.114-4.219 5.114-1.406 0-2.045-.844-2.096-2.071h-1.509c-.026 2.071 1.38 3.477 3.554 3.477 2.915 0 5.088-2.557 5.855-7.159.818-4.884-1.406-6.29-3.605-6.315zm-.051 1.406c1.61 0 2.531 1.355 2.275 2.863-.255 1.611-1.815 3.069-3.477 3.069-1.56 0-2.48-1.279-2.224-2.838.281-1.714 1.79-3.094 3.426-3.094zm9.238 12.068c2.889 0 4.96-2.455 5.676-6.724.71-4.238-.588-6.725-3.452-6.725-2.863 0-4.96 2.48-5.65 6.725-.697 4.276.537 6.724 3.426 6.724zm.23-1.406c-1.892 0-2.685-1.918-2.122-5.318.562-3.401 1.994-5.344 3.886-5.344 1.892 0 2.711 1.943 2.148 5.344-.562 3.4-1.994 5.318-3.912 5.318zm16.031-11.864h-1.738l-1.432 9.409h1.483l1.687-9.409zm-2.863 13.193c.626 0 1.137-.511 1.15-1.15.013-.614-.524-1.125-1.15-1.125-.627 0-1.164.485-1.151 1.125.013.639.499 1.15 1.151 1.15zm6.288-3.784h1.534l.026-.153c.281-1.534.818-2.225 2.045-2.915 1.227-.665 2.071-1.662 2.301-3.068.333-1.994-.895-3.452-3.145-3.452-2.071 0-3.912 1.279-4.372 3.452h1.611c.332-1.509 1.508-2.122 2.557-2.122 1.201 0 2.02.792 1.815 2.045-.153 1.023-.869 1.739-1.687 2.199-1.349.748-2.238 1.477-2.66 3.861l-.025.153zm.383 3.784c.627 0 1.138-.511 1.151-1.15.013-.614-.524-1.125-1.151-1.125-.626 0-1.163.485-1.15 1.125.013.639.498 1.15 1.15 1.15zm7.794-6.647c-.537 3.221-.102 5.906 1.074 8.181h1.329c-.946-1.687-1.355-5.139-.843-8.181.511-3.043 2.045-6.495 3.554-8.182h-1.33c-1.943 2.275-3.247 4.96-3.784 8.182zm9.206 0c.537-3.222.102-5.907-1.074-8.182h-1.329c.946 1.687 1.355 5.139.843 8.182-.511 3.042-2.045 6.494-3.554 8.181h1.33c1.943-2.275 3.247-4.96 3.784-8.181zm2.686 8.181h3.784l.205-1.252h-2.352l2.301-13.858h2.352l.205-1.253h-3.784l-2.711 16.363zm11.508-16.363h-3.785l-.204 1.253h2.352l-2.301 13.858h-2.352l-.205 1.252h3.784l2.711-16.363zm5.319 16.363l.205-1.252c-1.483 0-1.841-.665-1.585-2.174l.434-2.557c.16-1.041-.038-1.821-1.47-2.103l.026-.185c1.54-.288 2-1.061 2.16-2.109l.435-2.557c.23-1.509.818-2.173 2.301-2.173l.205-1.253c-2.506 0-3.503 1.074-3.887 3.426l-.332 2.045c-.23 1.413-.818 1.944-2.25 1.944h-.026l-.255 1.534h.025c1.432 0 1.816.537 1.585 1.943l-.332 2.045c-.384 2.352.256 3.426 2.761 3.426zm3.939-16.363l-.204 1.253c1.483 0 1.841.664 1.585 2.173l-.435 2.557c-.159 1.042.039 1.821 1.471 2.103l-.026.185c-1.54.288-2.001 1.061-2.16 2.109l-.435 2.557c-.23 1.509-.818 2.174-2.301 2.174l-.205 1.252c2.506 0 3.503-1.074 3.887-3.426l.332-2.045c.23-1.413.818-1.943 2.25-1.943h.026l.255-1.534h-.025c-1.432 0-1.816-.537-1.586-1.944l.333-2.045c.383-2.352-.256-3.426-2.762-3.426zm12.121 16.261c1.304 0 3.017-.383 3.887-.716l-.179-1.176c-.486.153-2.046.665-3.452.665-4.372 0-6.29-2.455-5.574-6.801.691-4.27 3.503-6.827 7.517-6.827 4.066 0 5.523 2.864 5.037 5.727-.486 2.915-.997 4.219-2.301 4.219-.767 0-1.074-.639-.972-1.355l.972-5.779h-1.355l-.128.716h-.077c-.076-.562-.997-1.048-2.301-.92-1.943.204-3.656 1.79-4.04 4.091-.409 2.429.435 4.295 2.634 4.372 1.457.051 2.352-.665 2.761-1.406h.077c-.026 1.099 1.304 1.483 2.199 1.483 2.71 0 3.452-2.915 3.861-5.395.562-3.503-1.304-6.955-6.086-6.955-4.934 0-8.386 2.992-9.204 7.978-.844 5.164 1.508 8.079 6.724 8.079zm.103-5.088c-1.662 0-1.995-1.508-1.739-3.145.256-1.483 1.304-2.761 2.761-2.761 1.534 0 2.25.613 1.892 2.761-.358 2.122-1.201 3.145-2.914 3.145zm13.047 5.19h1.049l.236-1.425c2.71-.185 4.462-1.771 4.801-3.765.409-2.455-1.79-3.247-3.069-3.605l-.492-.134.755-4.545c1.31.134 2.115.863 2.115 2.122h1.534c.218-1.956-1.137-3.381-3.413-3.541l.243-1.47h-1.048l-.25 1.489c-2.23.224-4.103 1.611-4.455 3.624-.281 1.765.818 2.813 2.761 3.401l.505.153-.799 4.833c-1.323-.135-2.326-.825-2.211-2.148h-1.637c-.191 2.013 1.125 3.42 3.612 3.586l-.237 1.425zm1.522-2.87l.754-4.525.026.006c1.329.384 2.48.869 2.25 2.173-.205 1.285-1.464 2.18-3.03 2.346zm.006-6.347c-.92-.275-2.173-.805-1.962-2.109.179-1.106 1.221-1.956 2.665-2.135l-.703 4.244zM201.131 313h1.278l.658-3.631h1.937l.23-1.278h-1.93l.594-3.273h1.95l.23-1.278h-1.95l.659-3.631h-1.279l-.658 3.631h-3.324l.658-3.631h-1.278l-.658 3.631h-1.937l-.23 1.278h1.937l-.595 3.273h-1.956l-.23 1.278h1.95l-.659 3.631h1.279l.658-3.631h3.324l-.658 3.631zm-2.429-4.909l.594-3.273h3.324l-.595 3.273h-3.323zm9.719-5.037c-.256 1.432.46 2.634 2.122 2.634 1.636 0 2.71-1.202 2.966-2.634l.102-.69c.23-1.432-.435-2.634-2.097-2.634-1.636 0-2.761 1.202-2.991 2.634l-.102.69zm5.267 7.491c-.23 1.432.46 2.634 2.122 2.634 1.636 0 2.736-1.202 2.966-2.634l.128-.69c.23-1.432-.435-2.633-2.097-2.633-1.636 0-2.761 1.201-2.991 2.633l-.128.69zm-6.61 2.455h1.534l11.174-13.091h-1.534L207.078 313zm2.749-10.636c.128-.793.614-1.534 1.508-1.534.921 0 1.1.741.972 1.534l-.102.69c-.154.793-.588 1.534-1.483 1.534-.921 0-1.151-.741-.997-1.534l.102-.69zm5.292 7.491c.128-.793.614-1.534 1.509-1.534.92 0 1.099.741.972 1.534l-.128.69c-.128.793-.588 1.535-1.483 1.535-.921 0-1.125-.742-.997-1.535l.127-.69zM319.544 247l1.202-3.464h5.113l1.196 3.464h2.096l-4.711-13.091h-2.282L317.447 247h2.097zm1.777-5.126l1.93-5.587h.103l1.93 5.587h-3.963zm12.425 5.343c1.623 0 2.537-.824 2.902-1.559h.076V247h1.867v-6.52c0-2.857-2.25-3.426-3.81-3.426-1.777 0-3.413.716-4.052 2.506l1.796.409c.281-.697.997-1.368 2.282-1.368 1.233 0 1.866.645 1.866 1.758v.044c0 .697-.716.684-2.48.889-1.86.217-3.765.703-3.765 2.934 0 1.93 1.451 2.991 3.318 2.991zm.415-1.534c-1.08 0-1.86-.486-1.86-1.432 0-1.022.908-1.387 2.013-1.534.62-.083 2.091-.249 2.366-.524v1.266c0 1.163-.927 2.224-2.519 2.224zM341.29 247h5.018c3.042 0 4.416-1.515 4.416-3.522 0-2.026-1.419-3.17-2.716-3.241v-.128c1.202-.306 2.205-1.125 2.205-2.761 0-1.937-1.342-3.439-4.129-3.439h-4.794V247zm1.975-1.694v-4.193h2.921c1.585 0 2.576 1.023 2.576 2.269 0 1.1-.748 1.924-2.646 1.924h-2.851zm0-5.734v-3.982h2.697c1.566 0 2.314.825 2.314 1.911 0 1.266-1.035 2.071-2.365 2.071h-2.646zm9.802 7.428h1.867v-1.528h.159c.346.627 1.049 1.72 2.838 1.72 2.378 0 4.104-1.905 4.104-5.082 0-3.183-1.751-5.056-4.123-5.056-1.821 0-2.48 1.112-2.819 1.719h-.115v-4.864h-1.911V247zm1.873-4.909c0-2.052.895-3.413 2.563-3.413 1.732 0 2.602 1.463 2.602 3.413 0 1.969-.895 3.471-2.602 3.471-1.643 0-2.563-1.406-2.563-3.471zM368.573 247c3.988 0 6.296-2.474 6.296-6.565 0-4.071-2.308-6.526-6.162-6.526h-4.372V247h4.238zm-2.263-1.726v-9.639h2.275c2.864 0 4.341 1.713 4.341 4.8 0 3.101-1.477 4.839-4.462 4.839h-2.154zm14.537 1.918c1.79 0 2.493-1.093 2.838-1.72h.16V247h1.866v-13.091H383.8v4.864h-.115c-.345-.607-.997-1.719-2.825-1.719-2.372 0-4.117 1.873-4.117 5.056 0 3.177 1.72 5.082 4.104 5.082zm.422-1.63c-1.707 0-2.595-1.502-2.595-3.471 0-1.95.869-3.413 2.595-3.413 1.668 0 2.563 1.361 2.563 3.413 0 2.065-.914 3.471-2.563 3.471zm7.324 1.438h8.284v-1.7h-6.309v-4.008h5.804v-1.694h-5.804v-3.989h6.232v-1.7h-8.207V247zm14.923.198c2.142 0 3.657-1.055 4.091-2.653l-1.809-.326c-.345.927-1.176 1.4-2.262 1.4-1.637 0-2.736-1.061-2.787-2.953h6.98v-.677c0-3.548-2.122-4.935-4.347-4.935-2.736 0-4.538 2.084-4.538 5.101 0 3.049 1.777 5.043 4.672 5.043zm-2.761-5.964c.077-1.393 1.087-2.601 2.64-2.601 1.483 0 2.454 1.099 2.461 2.601h-5.101zm18.107-3.189h2.026c-.441-2.551-2.62-4.315-5.446-4.315-3.387 0-5.861 2.551-5.861 6.731 0 4.142 2.403 6.718 5.951 6.718 3.177 0 5.446-2.084 5.446-5.389v-1.489h-5.146v1.63h3.235c-.045 2.109-1.439 3.445-3.535 3.445-2.308 0-3.989-1.745-3.989-4.928 0-3.17 1.694-4.915 3.912-4.915 1.739 0 2.915.958 3.407 2.512zm8.586 12.822c2.499 0 4.43-1.144 4.43-3.65v-10.035h-1.873v1.591h-.141c-.338-.607-1.016-1.719-2.844-1.719-2.372 0-4.117 1.873-4.117 4.999 0 3.132 1.784 4.8 4.104 4.8 1.803 0 2.499-1.016 2.845-1.643h.121v1.931c0 1.515-1.055 2.186-2.506 2.186-1.591 0-2.211-.799-2.55-1.343l-1.643.678c.518 1.182 1.828 2.205 4.174 2.205zm-.019-5.599c-1.707 0-2.595-1.311-2.595-3.241 0-1.886.869-3.349 2.595-3.349 1.668 0 2.563 1.361 2.563 3.349 0 2.026-.914 3.241-2.563 3.241zm7.165-11.359V247h1.88v-9.479h.121l3.861 9.46h1.56l3.86-9.454h.122V247h1.879v-13.091h-2.397l-4.168 10.176h-.153l-4.168-10.176h-2.397zM450.595 247h1.912v-6.053c0-1.323.926-2.244 2.013-2.244 1.061 0 1.796.703 1.796 1.771V247h1.905v-6.258c0-1.182.722-2.039 1.969-2.039 1.01 0 1.841.563 1.841 1.892V247h1.911v-6.584c0-2.243-1.253-3.362-3.03-3.362-1.413 0-2.474.678-2.947 1.726h-.102c-.428-1.074-1.329-1.726-2.64-1.726-1.297 0-2.263.646-2.672 1.726h-.121v-1.598h-1.835V247zm27.433-6.545c0-4.187-2.505-6.725-5.893-6.725-3.401 0-5.9 2.538-5.9 6.725 0 4.18 2.499 6.724 5.9 6.724 3.388 0 5.893-2.538 5.893-6.724zm-1.956 0c0 3.189-1.687 4.921-3.937 4.921-2.256 0-3.938-1.732-3.938-4.921 0-3.19 1.682-4.922 3.938-4.922 2.25 0 3.937 1.732 3.937 4.922zm8.401 6.743c2.768 0 4.577-2.026 4.577-5.062 0-3.056-1.809-5.082-4.577-5.082s-4.577 2.026-4.577 5.082c0 3.036 1.809 5.062 4.577 5.062zm.007-1.604c-1.809 0-2.653-1.579-2.653-3.465 0-1.879.844-3.477 2.653-3.477 1.796 0 2.639 1.598 2.639 3.477 0 1.886-.843 3.465-2.639 3.465zm6.857 1.406h1.975v-4.954h2.812l2.659 4.954h2.25l-2.902-5.299c1.605-.594 2.404-1.93 2.404-3.688 0-2.41-1.496-4.104-4.532-4.104h-4.666V247zm1.975-6.654v-4.743h2.48c1.949 0 2.755.927 2.755 2.41 0 1.476-.806 2.333-2.73 2.333h-2.505zm9.473 6.654h1.911v-5.996c0-1.285.991-2.211 2.346-2.211.396 0 .844.07.997.115v-1.828a7.649 7.649 0 00-.812-.045c-1.15 0-2.135.652-2.493 1.706h-.102v-1.559h-1.847V247zm14.201-9.652h1.905c-.057-2.097-1.911-3.618-4.57-3.618-2.627 0-4.641 1.502-4.641 3.759 0 1.821 1.304 2.889 3.407 3.458l1.547.422c1.4.37 2.48.831 2.48 1.994 0 1.278-1.221 2.122-2.902 2.122-1.521 0-2.787-.677-2.902-2.103h-1.981c.127 2.372 1.962 3.835 4.896 3.835 3.075 0 4.845-1.617 4.845-3.835 0-2.359-2.103-3.273-3.765-3.682l-1.278-.332c-1.023-.262-2.384-.742-2.378-1.994 0-1.113 1.016-1.937 2.627-1.937 1.502 0 2.57.703 2.71 1.911zm11.648 2.231c-.396-1.528-1.591-2.525-3.714-2.525-2.218 0-3.79 1.17-3.79 2.908 0 1.394.844 2.321 2.685 2.73l1.662.364c.946.211 1.387.633 1.387 1.247 0 .76-.812 1.355-2.065 1.355-1.144 0-1.879-.493-2.109-1.458l-1.848.282c.32 1.738 1.765 2.716 3.97 2.716 2.371 0 4.014-1.259 4.014-3.036 0-1.387-.882-2.244-2.685-2.659l-1.559-.358c-1.081-.256-1.547-.62-1.541-1.285-.006-.754.812-1.291 1.899-1.291 1.189 0 1.738.658 1.962 1.317l1.732-.307zm-205.408 16.33h-1.924l-3.266 2.135v1.892l3.132-2.045h.076V269h1.982v-13.091zM326.767 269h8.617v-1.694h-5.894v-.096l2.602-2.723c2.397-2.422 3.081-3.579 3.081-5.043 0-2.103-1.713-3.714-4.181-3.714-2.448 0-4.238 1.585-4.238 3.976h1.886c-.006-1.406.901-2.327 2.314-2.327 1.329 0 2.339.818 2.339 2.122 0 1.157-.69 1.988-2.096 3.478l-4.43 4.589V269zm15.597.179c2.672 0 4.634-1.598 4.627-3.771.007-1.656-.997-2.845-2.735-3.113v-.103c1.368-.351 2.256-1.425 2.25-2.895.006-1.924-1.573-3.567-4.091-3.567-2.404 0-4.334 1.451-4.398 3.58h1.911c.045-1.202 1.176-1.931 2.461-1.931 1.336 0 2.212.812 2.205 2.02.007 1.266-1.009 2.097-2.46 2.097h-1.106v1.611h1.106c1.815 0 2.863.92 2.863 2.237 0 1.272-1.106 2.135-2.646 2.135-1.419 0-2.525-.729-2.602-1.892h-2.007c.083 2.135 1.975 3.592 4.622 3.592zm6.769-2.736h6.206V269h1.886v-2.557h1.732v-1.675h-1.732v-8.859h-2.435l-5.657 8.936v1.598zm6.219-1.675h-4.148v-.102l4.046-6.405h.102v6.507zm10.154 4.411c2.634 0 4.513-1.86 4.506-4.411.007-2.531-1.757-4.372-4.142-4.372-.971 0-1.872.371-2.384.87h-.077l.416-3.663h5.555v-1.694h-7.198l-.735 6.597 1.809.268c.492-.441 1.374-.741 2.167-.741 1.553.012 2.678 1.176 2.678 2.774 0 1.572-1.093 2.71-2.595 2.71-1.266 0-2.269-.805-2.371-1.93h-1.918c.077 2.083 1.886 3.592 4.289 3.592zm11.411 0c2.736.026 4.552-1.943 4.545-4.455.007-2.506-1.815-4.302-4.084-4.302-1.381 0-2.576.665-3.247 1.77h-.096c.006-3.004 1.131-4.762 3.049-4.762 1.259 0 2.051.761 2.32 1.88h1.95c-.301-2.103-1.931-3.612-4.27-3.612-3.043 0-4.941 2.614-4.941 7.198 0 4.819 2.448 6.264 4.774 6.283zm-.006-1.662c-1.521 0-2.633-1.278-2.633-2.749.006-1.463 1.169-2.742 2.678-2.742 1.496 0 2.595 1.208 2.589 2.723.006 1.547-1.138 2.768-2.634 2.768zm7.321 1.483h2.064l5.695-11.339v-1.752h-8.654v1.694h6.609v.096L384.232 269zm14.142.179c2.723 0 4.647-1.547 4.66-3.669-.013-1.649-1.17-3.036-2.634-3.298v-.077c1.272-.307 2.135-1.502 2.148-2.915-.013-2.001-1.777-3.49-4.174-3.49-2.423 0-4.187 1.489-4.174 3.49-.013 1.406.85 2.608 2.148 2.915v.077c-1.49.262-2.647 1.649-2.634 3.298-.013 2.122 1.911 3.669 4.66 3.669zm0-1.617c-1.636 0-2.672-.87-2.659-2.18-.013-1.361 1.112-2.333 2.659-2.333 1.521 0 2.646.972 2.659 2.333-.013 1.31-1.042 2.18-2.659 2.18zm0-6.092c-1.323 0-2.263-.837-2.25-2.084-.013-1.227.895-2.039 2.25-2.039 1.329 0 2.237.812 2.25 2.039-.013 1.247-.946 2.084-2.25 2.084zm11.303-5.772c-2.749-.019-4.545 1.95-4.545 4.455 0 2.506 1.815 4.309 4.084 4.309 1.388 0 2.576-.678 3.248-1.777h.102c-.007 3.01-1.138 4.768-3.056 4.768-1.252 0-2.058-.767-2.313-1.886h-1.95c.288 2.116 1.924 3.612 4.263 3.612 3.043 0 4.942-2.614 4.948-7.197-.006-4.814-2.448-6.265-4.781-6.284zm.006 1.662c1.515 0 2.634 1.285 2.634 2.749 0 1.463-1.177 2.742-2.672 2.742-1.502 0-2.595-1.202-2.595-2.723 0-1.547 1.131-2.768 2.633-2.768zm11.642 11.857c3.023 0 4.794-2.467 4.794-6.756 0-4.257-1.797-6.731-4.794-6.731-3.005 0-4.794 2.467-4.801 6.731 0 4.283 1.771 6.75 4.801 6.756zm0-1.706c-1.771 0-2.838-1.777-2.838-5.05.006-3.26 1.073-5.056 2.838-5.056 1.757 0 2.831 1.796 2.831 5.056 0 3.273-1.067 5.05-2.831 5.05zm14.26-11.602h-2.103l.166 9.326h1.771l.166-9.326zm-1.054 13.212c.696 0 1.278-.568 1.278-1.278 0-.697-.582-1.272-1.278-1.272a1.28 1.28 0 00-1.279 1.272c0 .71.575 1.278 1.279 1.278zm6.026-3.886h1.828v-.121c.025-1.471.447-2.129 1.534-2.8 1.144-.69 1.847-1.662 1.847-3.1 0-2.078-1.572-3.484-3.918-3.484-2.154 0-3.88 1.259-3.963 3.56h1.943c.077-1.355 1.042-1.949 2.02-1.949 1.086 0 1.969.722 1.969 1.854 0 .952-.595 1.623-1.356 2.096-1.188.729-1.892 1.451-1.904 3.823v.121zm.965 3.886c.697 0 1.278-.568 1.278-1.278 0-.697-.581-1.272-1.278-1.272-.703 0-1.279.575-1.279 1.272 0 .71.576 1.278 1.279 1.278zm6.958-6.666c0 3.208.856 5.88 2.48 8.156h1.751c-1.259-1.688-2.25-5.114-2.25-8.156 0-3.037.991-6.463 2.25-8.15h-1.751c-1.624 2.275-2.48 4.947-2.48 8.15zm9.922.006c0-3.209-.857-5.881-2.48-8.156h-1.752c1.259 1.687 2.25 5.113 2.25 8.156 0 3.036-.991 6.462-2.25 8.15h1.752c1.623-2.276 2.48-4.948 2.48-8.15zm3.894 8.15h4.2v-1.515h-2.372V255.82h2.372v-1.515h-4.2v16.306zm9.5-16.306h-4.199v1.515h2.371v13.276h-2.371v1.515h4.199v-16.306zm8.305 16.306v-1.515c-1.489 0-1.898-.646-1.898-2.058v-2.327c0-1.016-.358-1.828-1.956-2.141v-.224c1.598-.313 1.956-1.125 1.956-2.141v-2.327c0-1.413.409-2.058 1.898-2.058v-1.515c-2.531 0-3.688.863-3.688 3.477v1.834c0 1.375-.492 1.918-1.937 1.918v1.841c1.445 0 1.937.55 1.937 1.918v1.841c0 2.614 1.157 3.477 3.688 3.477zm1.101-16.306v1.515c1.489 0 1.898.645 1.898 2.058v2.327c0 1.016.358 1.828 1.956 2.141v.224c-1.598.313-1.956 1.125-1.956 2.141v2.327c0 1.412-.409 2.058-1.898 2.058v1.515c2.531 0 3.688-.863 3.688-3.477v-1.835c0-1.374.492-1.918 1.937-1.918v-1.841c-1.445 0-1.937-.549-1.937-1.917v-1.841c0-2.614-1.157-3.477-3.688-3.477zm15.362 16.37c1.476 0 3.183-.403 3.976-.774l-.448-1.4c-.537.192-2.013.659-3.445.659-4.302 0-6.61-2.372-6.61-6.616 0-4.065 2.282-6.692 6.373-6.692 3.74 0 5.971 2.403 5.964 5.65.007 2.774-.351 4.021-1.515 4.021-.658 0-1.023-.537-1.023-1.208v-5.932h-1.572v.716h-.083c-.192-.563-1.304-1.068-2.64-.908-1.847.217-3.433 1.745-3.433 4.264 0 2.627 1.343 4.384 3.497 4.468 1.457.064 2.403-.614 2.704-1.368h.076c.154 1.029 1.266 1.483 2.359 1.444 2.73-.051 3.247-2.736 3.247-5.433 0-3.848-2.633-7.197-7.517-7.197-5.12 0-8.13 3.125-8.137 8.162.007 5.184 2.941 8.144 8.227 8.144zm-.588-5.318c-1.669 0-2.244-1.432-2.25-2.979.006-1.47.831-2.64 2.275-2.64 1.566 0 2.269.69 2.276 2.633.006 1.995-.639 2.986-2.301 2.986zm14.102 5.279h1.202l.006-1.438c2.704-.198 4.251-1.745 4.251-3.816 0-2.359-2.103-3.273-3.765-3.682l-.467-.121.013-4.104c1.195.16 2.014.825 2.135 1.873h1.905c-.051-1.95-1.662-3.407-4.033-3.599l.006-1.476h-1.202l-.006 1.489c-2.295.23-3.976 1.662-3.976 3.727 0 1.821 1.304 2.889 3.407 3.458l.55.147-.013 4.353c-1.247-.154-2.212-.831-2.314-2.065h-1.982c.122 2.205 1.714 3.624 4.29 3.816l-.007 1.438zm1.215-3.189l.012-4.021c1.298.358 2.276.831 2.276 1.937 0 1.119-.933 1.905-2.288 2.084zm-1.183-6.188c-.952-.281-2.001-.786-1.994-1.885 0-.959.76-1.707 2-1.892l-.006 3.777zM522.653 269h1.534l.575-3.503h1.886l.249-1.534h-1.885l.498-3.017h1.899l.249-1.534h-1.899l.576-3.503h-1.534l-.576 3.503h-3.068l.575-3.503h-1.534l-.575 3.503h-1.886l-.249 1.534h1.886l-.499 3.017h-1.898l-.25 1.534h1.899l-.575 3.503h1.534l.575-3.503h3.068l-.575 3.503zm-2.244-5.037l.499-3.017h3.068l-.499 3.017h-3.068zm15.603 2.582c.007 1.477.933 2.723 2.666 2.723 1.713 0 2.652-1.246 2.652-2.723v-.69c0-1.483-.914-2.723-2.652-2.723-1.707 0-2.659 1.247-2.666 2.723v.69zm-6.584-7.491c0 1.477.934 2.723 2.666 2.723 1.707 0 2.653-1.24 2.646-2.723v-.69c.007-1.483-.914-2.723-2.646-2.723-1.7 0-2.666 1.24-2.666 2.723v.69zm.537 9.946h1.528l9-13.091h-1.528l-9 13.091zm7.537-3.145c.006-.735.326-1.444 1.176-1.444.882 0 1.157.709 1.157 1.444v.69c0 .736-.301 1.445-1.157 1.445-.87 0-1.17-.716-1.176-1.445v-.69zm-6.578-7.491c0-.729.32-1.445 1.17-1.445.882 0 1.157.71 1.157 1.445v.69c0 .735-.301 1.445-1.157 1.445-.869 0-1.17-.71-1.17-1.445v-.69zM318.726 291l1.777-3.464h5.113l.621 3.464h2.096l-2.538-13.091h-2.282L316.629 291h2.097zm2.633-5.126l2.864-5.587h.102l.997 5.587h-3.963zm11.543 5.343c1.623 0 2.672-.824 3.157-1.559h.077l-.23 1.342h1.867l1.08-6.52c.473-2.857-1.669-3.426-3.228-3.426-1.777 0-3.554.716-4.475 2.506l1.713.409c.41-.697 1.285-1.368 2.564-1.368 1.227 0 1.713.652 1.534 1.758v.044c-.122.684-.85.678-2.634.889-1.898.217-3.88.709-4.257 2.934-.313 1.924.965 2.991 2.832 2.991zm.652-1.534c-1.08 0-1.764-.486-1.611-1.432.16-1.022 1.151-1.387 2.276-1.534.626-.083 2.122-.249 2.441-.524l-.211 1.266c-.191 1.163-1.304 2.224-2.895 2.224zm6.918 1.317h5.017c3.043 0 4.673-1.521 5.012-3.522.326-2.026-.908-3.17-2.186-3.241l.025-.128c1.234-.306 2.372-1.125 2.647-2.761.332-1.937-.761-3.439-3.548-3.439h-4.794L340.472 291zm2.256-1.694l.703-4.193h2.921c1.592 0 2.397 1.023 2.206 2.269-.192 1.1-1.087 1.924-2.979 1.924h-2.851zm.965-5.734l.652-3.982h2.698c1.566 0 2.173.825 1.981 1.911-.185 1.26-1.361 2.071-2.691 2.071h-2.64zm8.556 7.428h1.866l.256-1.528h.16c.256.627.767 1.72 2.557 1.72 2.378 0 4.423-1.905 4.947-5.082.524-3.183-.908-5.056-3.279-5.056-1.822 0-2.672 1.112-3.106 1.719h-.116l.799-4.864h-1.911L352.249 291zm2.691-4.909c.332-2.052 1.464-3.413 3.132-3.413 1.726 0 2.34 1.463 2.033 3.413-.333 1.969-1.458 3.471-3.171 3.471-1.642 0-2.326-1.406-1.994-3.471zM367.812 291c3.989 0 6.641-2.416 7.306-6.45.69-4.122-1.259-6.641-5.114-6.641h-4.314L363.517 291h4.295zm-2.033-1.726l1.598-9.639h2.333c2.864 0 4.015 1.655 3.503 4.679-.524 3.164-2.326 4.96-5.318 4.96h-2.116zm14.25 1.918c1.783 0 2.665-1.093 3.119-1.72h.153l-.255 1.528h1.866l2.174-13.091h-1.912l-.811 4.864h-.115c-.237-.607-.71-1.719-2.532-1.719-2.378 0-4.436 1.873-4.966 5.056-.518 3.177.888 5.082 3.279 5.082zm.645-1.63c-1.713 0-2.307-1.502-1.981-3.471.319-1.95 1.393-3.413 3.113-3.413 1.674 0 2.384 1.361 2.045 3.413-.339 2.065-1.534 3.471-3.177 3.471zm7.118 1.438h8.284l.281-1.7h-6.309l.665-4.008h5.804l.281-1.694h-5.804l.665-3.989h6.232l.282-1.7h-8.208L387.792 291zm14.898.198c2.148 0 3.829-1.055 4.532-2.653l-1.751-.326c-.505.927-1.387 1.4-2.5 1.4-1.725 0-2.633-.818-2.301-2.953h6.993l.109-.677c.594-3.548-1.298-4.935-3.529-4.935-2.735 0-4.883 2.084-5.382 5.101-.511 3.049.934 5.043 3.829 5.043zm-1.777-5.964c.281-1.284 1.592-2.601 3.081-2.601 1.489 0 2.269 1.099 2.014 2.601h-5.095zm18.66-3.189h2.026c-.006-2.551-1.892-4.315-4.723-4.315-3.382 0-6.29 2.551-6.961 6.731-.691 4.142 1.278 6.718 4.826 6.718 3.177 0 5.804-2.077 6.334-5.389l.262-1.489h-5.152l-.281 1.63h3.234c-.377 2.103-2.109 3.445-4.205 3.445-2.308 0-3.586-1.745-3.056-4.928.524-3.17 2.64-4.915 4.858-4.915 1.732 0 2.621.965 2.838 2.512zm6.496 12.822c2.487 0 4.609-1.144 5.018-3.65l1.662-10.035h-1.873l-.262 1.591h-.141c-.236-.607-.729-1.719-2.557-1.719-2.371 0-4.429 1.873-4.941 4.999-.524 3.132.985 4.8 3.311 4.8 1.797 0 2.666-1.016 3.101-1.643h.121l-.3 1.931c-.256 1.515-1.458 2.186-2.902 2.186-1.605 0-2.046-.799-2.302-1.343l-1.764.678c.333 1.182 1.47 2.205 3.829 2.205zm.869-5.599c-1.719 0-2.345-1.311-2.032-3.241.313-1.886 1.368-3.349 3.106-3.349 1.656 0 2.384 1.361 2.052 3.349-.332 2.026-1.489 3.241-3.126 3.241zm9.064-11.359L433.829 291h1.879l1.586-9.479h.121l2.276 9.46h1.566l5.433-9.454h.121L445.232 291h1.88l2.173-13.091h-2.397l-5.842 10.176h-.154l-2.493-10.176h-2.397zM449.836 291h1.912l1.009-6.053c.211-1.317 1.298-2.244 2.385-2.244 1.067 0 1.674.703 1.508 1.771L455.557 291h1.899l1.054-6.258c.192-1.195 1.055-2.039 2.301-2.039 1.01 0 1.739.556 1.528 1.892L461.265 291h1.918l1.099-6.584c.371-2.243-.703-3.362-2.467-3.362-1.419 0-2.602.671-3.234 1.726h-.103c-.249-1.074-1.061-1.726-2.352-1.726-1.298 0-2.371.646-2.966 1.726h-.121l.268-1.598h-1.834L449.836 291zm28.494-6.418c.704-4.25-1.431-6.852-4.864-6.852-3.349 0-6.2 2.48-6.891 6.609-.703 4.245 1.432 6.84 4.89 6.84 3.331 0 6.169-2.467 6.865-6.597zm-1.924-.243c-.53 3.248-2.556 5.037-4.877 5.037-2.186 0-3.56-1.662-3.03-4.794.525-3.247 2.564-5.049 4.884-5.049 2.192 0 3.548 1.674 3.023 4.806zm7.359 6.859c2.723 0 4.826-1.981 5.318-4.979.499-3.1-.99-5.165-3.796-5.165-2.73 0-4.833 1.982-5.319 4.999-.498 3.081.991 5.145 3.797 5.145zm.109-1.604c-1.764 0-2.314-1.541-2.02-3.382.313-1.924 1.483-3.56 3.324-3.56 1.764 0 2.314 1.553 2.02 3.401-.313 1.924-1.49 3.541-3.324 3.541zm6.697 1.406h1.975l.825-4.954h2.8l1.847 4.954h2.25l-2.026-5.299c1.706-.601 2.729-1.937 3.023-3.688.396-2.423-.818-4.104-3.854-4.104h-4.667L490.571 291zm3.081-6.654l.793-4.743h2.48c1.943 0 2.589.914 2.346 2.41-.237 1.47-1.176 2.333-3.107 2.333h-2.512zm8.42 6.654h1.911l.985-5.996c.23-1.285 1.368-2.211 2.716-2.211.403 0 .844.07.991.115l.307-1.828c-.198-.039-.563-.045-.806-.045-1.15 0-2.256.652-2.78 1.706h-.102l.262-1.559h-1.848L502.072 291zm15.822-9.575h1.905c.268-2.174-1.298-3.695-3.957-3.695-2.627 0-4.877 1.496-5.267 3.759-.294 1.821.831 2.882 2.832 3.458l1.476.422c1.349.37 2.359.837 2.154 1.994-.204 1.272-1.566 2.122-3.247 2.122-1.521 0-2.684-.677-2.55-2.103h-1.988c-.269 2.372 1.336 3.835 4.27 3.835 3.074 0 5.094-1.617 5.471-3.835.39-2.359-1.559-3.273-3.144-3.682l-1.228-.332c-.971-.256-2.263-.742-2.045-1.994.179-1.119 1.329-1.937 2.94-1.937 1.502 0 2.391.697 2.378 1.988zm11.303 2.154c-.154-1.541-1.189-2.525-3.331-2.525-2.198 0-3.95 1.151-4.237 2.87-.243 1.413.473 2.346 2.25 2.761l1.585.365c.927.217 1.278.607 1.176 1.214-.122.774-1.068 1.4-2.34 1.394-1.118 0-1.757-.493-1.828-1.458l-1.892.282c.039 1.732 1.33 2.716 3.567 2.716 2.346 0 4.18-1.24 4.474-2.998.231-1.412-.524-2.275-2.262-2.691l-1.509-.358c-1.029-.255-1.412-.613-1.304-1.246.122-.78 1.048-1.336 2.148-1.336 1.189 0 1.604.645 1.719 1.317l1.784-.307zm-204.616 16.33h-1.924l-3.618 2.135-.32 1.892 3.471-2.045h.077L320.426 313h1.982l2.173-13.091zM325.949 313h8.616l.275-1.694h-5.887l.019-.096 3.043-2.723c2.806-2.416 3.675-3.579 3.931-5.043.352-2.103-1.061-3.714-3.535-3.714-2.448 0-4.538 1.585-4.934 3.976h1.879c.243-1.406 1.342-2.327 2.742-2.327 1.342 0 2.18.818 1.962 2.122-.198 1.151-1.029 1.988-2.684 3.478l-5.178 4.589-.249 1.432zm15.673.179c2.678 0 4.762-1.445 5.127-3.656.274-1.662-.563-2.96-2.218-3.228v-.083c1.438-.358 2.505-1.343 2.742-2.8.313-1.943-1.017-3.682-3.58-3.682-2.352 0-4.474 1.464-4.871 3.58h1.905c.218-1.202 1.56-1.931 2.864-1.931 1.336 0 1.981.761 1.79 1.905-.218 1.33-1.419 2.212-2.877 2.212h-1.048l-.268 1.611h1.144c1.815 0 2.652.869 2.461 2.122-.205 1.38-1.573 2.25-3.113 2.25-1.419 0-2.308-.742-2.186-1.892h-1.976c-.3 2.141 1.413 3.592 4.104 3.592zm7.127-2.736h6.194l-.422 2.557h1.886l.422-2.557h1.745l.275-1.675h-1.739l1.47-8.859h-2.435l-7.14 8.936-.256 1.598zm6.495-1.675h-4.142v-.102l5.113-6.405h.102l-1.073 6.507zm9.418 4.411c2.647 0 4.82-1.86 5.235-4.411.429-2.524-1.022-4.372-3.413-4.372-.978 0-1.93.365-2.531.87h-.077l1.029-3.663h5.555l.275-1.694h-7.198l-1.834 6.597 1.764.268c.575-.435 1.502-.741 2.288-.741 1.566 0 2.493 1.176 2.231 2.774-.268 1.579-1.547 2.71-3.055 2.71-1.253 0-2.142-.812-2.052-1.93h-1.918c-.262 2.077 1.298 3.592 3.701 3.592zm11.527 0c2.678.019 4.736-1.886 5.152-4.334.434-2.563-1.125-4.423-3.458-4.423-1.349 0-2.596.614-3.452 1.713l-.102.121c.53-3.113 2.032-4.826 3.963-4.826 1.253 0 1.898.735 1.937 1.873h1.892c.051-2.115-1.426-3.605-3.74-3.605-3.004 0-5.267 2.551-6.021 7.076-.812 4.877 1.438 6.392 3.829 6.405zm.064-1.662c-1.483 0-2.333-1.214-2.103-2.627.243-1.528 1.694-2.864 3.24-2.864 1.451 0 2.302 1.164 2.065 2.608-.256 1.605-1.668 2.883-3.202 2.883zm7.16 1.483h2.065l7.575-11.339.294-1.752h-8.655l-.275 1.694h6.609l-.025.096L383.413 313zm14.194.179c2.672 0 4.813-1.496 5.171-3.592.281-1.675-.684-3.094-2.122-3.375v-.058a3.54 3.54 0 002.678-2.851c.339-2.045-1.227-3.573-3.669-3.573-2.378 0-4.289 1.419-4.66 3.413-.262 1.432.358 2.692 1.605 3.011v.058c-1.515.255-2.864 1.604-3.132 3.215-.358 2.135 1.342 3.752 4.129 3.752zm.121-1.617c-1.585 0-2.441-.812-2.237-2.097.224-1.406 1.547-2.416 3.119-2.416 1.49 0 2.429.908 2.218 2.256-.217 1.343-1.419 2.257-3.1 2.257zm1.004-6.092c-1.272 0-2.058-.767-1.86-2.001.211-1.272 1.278-2.122 2.691-2.122 1.317 0 2.071.729 1.854 1.956-.224 1.272-1.311 2.167-2.685 2.167zm12.225-5.772c-2.685-.019-4.737 1.886-5.159 4.34-.428 2.557 1.132 4.424 3.458 4.424 1.356 0 2.596-.62 3.452-1.72l.102-.121c-.524 3.119-2.032 4.832-3.963 4.832-1.265 0-1.892-.735-1.93-1.879h-1.899c-.044 2.116 1.42 3.605 3.746 3.605 3.004 0 5.261-2.55 6.015-7.076.818-4.877-1.438-6.386-3.822-6.405zm-.071 1.662c1.49 0 2.34 1.221 2.103 2.627-.243 1.528-1.687 2.864-3.24 2.864-1.451 0-2.295-1.157-2.059-2.608.25-1.605 1.662-2.883 3.196-2.883zm9.571 11.857c3.023 0 5.203-2.48 5.919-6.756.709-4.257-.69-6.731-3.688-6.731-3.005 0-5.203 2.467-5.907 6.731-.703 4.283.646 6.756 3.676 6.756zm.281-1.706c-1.758 0-2.531-1.777-1.988-5.05.537-3.26 1.899-5.056 3.656-5.056 1.765 0 2.551 1.796 2.008 5.056-.544 3.273-1.899 5.05-3.676 5.05zm16.185-11.602h-2.103l-1.375 9.326h1.765l1.713-9.326zm-3.062 13.212c.684 0 1.285-.568 1.317-1.278.032-.684-.55-1.253-1.24-1.253-.697 0-1.311.55-1.317 1.253-.013.71.518 1.278 1.24 1.278zm6.486-3.886h1.835l.032-.185c.255-1.432.799-2.084 1.988-2.742 1.253-.678 2.128-1.656 2.358-3.094.346-2.078-.997-3.484-3.343-3.484-2.154 0-4.078 1.259-4.544 3.56h1.943c.287-1.355 1.368-1.949 2.339-1.949 1.093 0 1.835.722 1.649 1.854-.147.958-.856 1.617-1.693 2.096-1.285.722-2.123 1.432-2.532 3.759l-.032.185zm.492 3.886c.684 0 1.285-.568 1.317-1.278.032-.684-.549-1.253-1.24-1.253-.697 0-1.31.55-1.317 1.253-.012.71.518 1.278 1.24 1.278zm7.904-6.666c-.537 3.208-.108 5.88 1.125 8.156h1.758c-.984-1.688-1.413-5.114-.901-8.156.511-3.037 2.058-6.463 3.599-8.15h-1.752c-2.007 2.275-3.298 4.947-3.829 8.15zm9.916.006c.537-3.209.109-5.881-1.125-8.156h-1.758c.984 1.687 1.413 5.113.901 8.156-.511 3.036-2.058 6.462-3.598 8.15h1.751c2.007-2.276 3.298-4.948 3.829-8.15zm2.539 8.15h4.206l.249-1.515h-2.371l2.199-13.276h2.371l.25-1.515h-4.2l-2.704 16.306zm12.217-16.306h-4.206l-.249 1.515h2.371l-2.199 13.276h-2.371l-.249 1.515h4.199l2.704-16.306zm5.595 16.306l.249-1.515c-1.489 0-1.803-.633-1.566-2.058l.396-2.327c.16-1.016-.07-1.835-1.63-2.148l.039-.211c1.668-.313 2.166-1.125 2.326-2.147l.397-2.327c.217-1.426.747-2.058 2.237-2.058l.249-1.515c-2.531 0-3.842.856-4.263 3.477l-.294 1.834c-.224 1.381-.819 1.918-2.263 1.918h-.026l-.307 1.841h.026c1.451 0 1.828.543 1.604 1.918l-.294 1.841c-.422 2.614.588 3.477 3.12 3.477zm3.804-16.306l-.249 1.515c1.49 0 1.803.632 1.566 2.058l-.396 2.327c-.16 1.016.07 1.834 1.63 2.147l-.038.211c-1.669.313-2.167 1.125-2.327 2.148l-.396 2.327c-.218 1.425-.748 2.058-2.238 2.058l-.249 1.515c2.531 0 3.842-.857 4.264-3.477l.294-1.835c.223-1.381.818-1.918 2.262-1.918h.026l.307-1.841h-.026c-1.451 0-1.828-.543-1.604-1.917l.294-1.841c.422-2.614-.588-3.477-3.12-3.477zm12.633 16.37c1.476 0 3.234-.403 4.11-.774l-.23-1.4c-.569.192-2.11.659-3.541.659-4.302 0-6.214-2.372-5.517-6.616.659-4.065 3.382-6.692 7.472-6.692 3.74 0 5.587 2.403 5.037 5.65-.46 2.774-1.016 4.021-2.179 4.021-.659 0-.934-.537-.838-1.208l.991-5.932h-1.572l-.122.716h-.083c-.096-.563-1.125-1.068-2.486-.908-1.88.217-3.714 1.745-4.136 4.264-.435 2.627.62 4.384 2.749 4.468 1.451.064 2.518-.614 2.927-1.368h.077c-.019 1.029 1.029 1.483 2.128 1.444 2.736-.051 3.708-2.736 4.149-5.433.626-3.848-1.445-7.197-6.328-7.197-5.12 0-8.662 3.125-9.493 8.162-.843 5.184 1.599 8.144 6.885 8.144zm.294-5.318c-1.669 0-2.001-1.432-1.758-2.979.249-1.47 1.266-2.64 2.71-2.64 1.566 0 2.154.69 1.835 2.633-.333 1.995-1.125 2.986-2.787 2.986zm13.246 5.279h1.201l.243-1.438c2.736-.198 4.519-1.745 4.871-3.816.39-2.359-1.56-3.273-3.145-3.682l-.441-.121.69-4.104c1.151.166 1.809.837 1.797 1.95h1.904c.25-2.02-1.086-3.478-3.407-3.669l.25-1.483h-1.202l-.249 1.489c-2.34.224-4.257 1.656-4.615 3.727-.294 1.821.831 2.882 2.831 3.458l.544.153-.735 4.353c-1.228-.16-2.091-.831-1.976-2.071h-1.987c-.25 2.205 1.118 3.624 3.669 3.816l-.243 1.438zm1.738-3.189l.678-4.021c1.24.364 2.135.844 1.943 1.937-.179 1.112-1.234 1.898-2.621 2.084zm-.159-6.181c-.895-.282-1.873-.793-1.682-1.892.154-.972 1.042-1.713 2.321-1.892l-.639 3.784zM522.789 313h1.534l.639-3.503h1.879l.282-1.534h-1.886l.55-3.017h1.898l.275-1.534h-1.899l.64-3.503h-1.534l-.64 3.503h-3.068l.639-3.503h-1.534l-.639 3.503h-1.886l-.274 1.534h1.885l-.55 3.017h-1.898l-.281 1.534h1.905l-.64 3.503h1.535l.639-3.503h3.068l-.639 3.503zm-2.154-5.037l.549-3.017h3.068l-.549 3.017h-3.068zm14.951 2.582c-.237 1.477.485 2.723 2.218 2.723 1.706 0 2.857-1.246 3.1-2.723l.128-.69c.243-1.483-.467-2.723-2.199-2.723-1.707 0-2.877 1.247-3.12 2.723l-.127.69zm-5.331-7.491c-.256 1.477.485 2.723 2.211 2.723 1.713 0 2.845-1.24 3.1-2.723l.103-.69c.243-1.483-.461-2.723-2.199-2.723-1.7 0-2.87 1.24-3.113 2.723l-.102.69zM528.989 313h1.611l11.173-13.091h-1.611L528.989 313zm8.214-3.145c.121-.735.569-1.444 1.419-1.444.882 0 1.035.709.914 1.444l-.128.69c-.115.736-.537 1.445-1.393 1.445-.876 0-1.055-.716-.94-1.445l.128-.69zm-5.35-7.491c.115-.729.556-1.445 1.406-1.445.882 0 1.035.71.92 1.445l-.102.69c-.141.735-.543 1.445-1.4 1.445-.863 0-1.067-.71-.927-1.445l.103-.69zM319.717 187.273V212h3.549v-17.906h.23l7.292 17.87h2.946l7.293-17.857h.229V212h3.55v-24.727h-4.528l-7.872 19.221h-.29l-7.872-19.221h-4.527zm37.672 25.101c4.045 0 6.907-1.992 7.728-5.01l-3.417-.616c-.652 1.751-2.222 2.644-4.274 2.644-3.091 0-5.168-2.004-5.265-5.578h13.185v-1.28c0-6.701-4.008-9.321-8.21-9.321-5.168 0-8.573 3.936-8.573 9.635 0 5.759 3.357 9.526 8.826 9.526zm-5.215-11.265c.144-2.632 2.052-4.914 4.986-4.914 2.801 0 4.636 2.077 4.648 4.914h-9.634zm23.576 11.253c3.381 0 4.709-2.064 5.361-3.248h.302V212h3.525v-24.727h-3.61v9.188h-.217c-.652-1.147-1.884-3.248-5.337-3.248-4.479 0-7.775 3.538-7.775 9.55 0 6.001 3.248 9.599 7.751 9.599zm.797-3.079c-3.224 0-4.902-2.837-4.902-6.556 0-3.682 1.642-6.447 4.902-6.447 3.151 0 4.842 2.572 4.842 6.447 0 3.9-1.727 6.556-4.842 6.556zm13 2.717h3.61v-18.545h-3.61V212zm1.823-21.407c1.244 0 2.282-.966 2.282-2.149s-1.038-2.161-2.282-2.161c-1.256 0-2.282.978-2.282 2.161s1.026 2.149 2.282 2.149zm17.847 13.716c.013 3.151-2.33 4.648-4.358 4.648-2.234 0-3.779-1.618-3.779-4.141v-11.361h-3.61v11.796c0 4.6 2.523 6.99 6.085 6.99 2.789 0 4.684-1.473 5.542-3.453h.193V212h3.55v-18.545h-3.623v10.854zm7.929 7.691h3.61v-11.434c0-2.499 1.751-4.238 3.804-4.238 2.004 0 3.392 1.328 3.392 3.345V212h3.598v-11.82c0-2.234 1.365-3.852 3.719-3.852 1.908 0 3.477 1.063 3.477 3.574V212h3.611v-12.436c0-4.238-2.367-6.351-5.723-6.351-2.669 0-4.673 1.28-5.567 3.26h-.193c-.809-2.028-2.511-3.26-4.986-3.26-2.451 0-4.274 1.22-5.047 3.26h-.23v-3.018h-3.465V212zm217.826 35l1.081-3.228h4.921l1.087 3.228h2.531l-4.615-13.091h-2.927L632.441 247h2.531zm1.72-5.133l1.77-5.273h.103l1.77 5.273h-3.643zm12.348 5.331c1.54 0 2.461-.722 2.882-1.547h.077V247h2.225v-6.571c0-2.595-2.116-3.375-3.989-3.375-2.065 0-3.65.92-4.161 2.71l2.16.307c.23-.671.882-1.246 2.014-1.246 1.074 0 1.662.549 1.662 1.514v.039c0 .665-.697.697-2.429.882-1.905.204-3.727.773-3.727 2.985 0 1.93 1.413 2.953 3.286 2.953zm.6-1.7c-.965 0-1.655-.441-1.655-1.291 0-.889.773-1.26 1.809-1.407.607-.083 1.822-.236 2.122-.479v1.157c0 1.093-.882 2.02-2.276 2.02zm7.013 1.502h5.299c2.997 0 4.468-1.528 4.468-3.567 0-1.981-1.407-3.145-2.8-3.215v-.128c1.278-.3 2.288-1.195 2.288-2.787 0-1.949-1.406-3.394-4.244-3.394h-5.011V247zm2.371-1.982v-3.835h2.614c1.464 0 2.372.895 2.372 2.065 0 1.042-.716 1.77-2.436 1.77h-2.55zm0-5.541v-3.612h2.397c1.393 0 2.116.735 2.116 1.745 0 1.151-.933 1.867-2.167 1.867h-2.346zm9.459 7.523h2.275v-1.547h.134c.365.716 1.125 1.72 2.813 1.72 2.314 0 4.046-1.835 4.046-5.069 0-3.273-1.783-5.05-4.052-5.05-1.733 0-2.455 1.042-2.807 1.751h-.095v-4.896h-2.314V247zm2.269-4.909c0-1.905.818-3.139 2.307-3.139 1.541 0 2.333 1.311 2.333 3.139 0 1.841-.805 3.183-2.333 3.183-1.476 0-2.307-1.278-2.307-3.183zM684.257 247c3.988 0 6.353-2.467 6.353-6.558 0-4.078-2.365-6.533-6.264-6.533h-4.526V247h4.437zm-2.065-2.052v-8.987h2.02c2.659 0 4.046 1.483 4.046 4.481 0 3.01-1.387 4.506-4.116 4.506h-1.95zm14.213 2.225c1.687 0 2.448-1.004 2.812-1.72h.141V247h2.275v-13.091h-2.32v4.896h-.096c-.351-.709-1.074-1.751-2.806-1.751-2.269 0-4.053 1.777-4.053 5.05 0 3.234 1.733 5.069 4.047 5.069zm.645-1.899c-1.527 0-2.333-1.342-2.333-3.183 0-1.828.793-3.139 2.333-3.139 1.49 0 2.308 1.234 2.308 3.139 0 1.905-.831 3.183-2.308 3.183zm7.151 1.726h8.566v-1.988h-6.194v-3.573h5.702v-1.988h-5.702v-3.554h6.143v-1.988h-8.515V247zm15.178.192c2.289 0 3.861-1.119 4.27-2.826l-2.16-.242c-.314.831-1.081 1.265-2.078 1.265-1.496 0-2.486-.984-2.505-2.665h6.839v-.71c0-3.445-2.071-4.96-4.487-4.96-2.813 0-4.647 2.065-4.647 5.094 0 3.081 1.809 5.044 4.768 5.044zm-2.467-6.028c.07-1.253.997-2.307 2.378-2.307 1.329 0 2.224.971 2.237 2.307h-4.615zm17.663-3.075h2.416c-.403-2.569-2.627-4.359-5.523-4.359-3.426 0-5.996 2.519-5.996 6.737 0 4.142 2.455 6.712 6.067 6.712 3.24 0 5.561-2.084 5.561-5.459v-1.572h-5.312v1.853h3.017c-.038 1.867-1.285 3.049-3.254 3.049-2.192 0-3.694-1.642-3.694-4.608 0-2.947 1.527-4.583 3.643-4.583 1.579 0 2.653.843 3.075 2.23zm8.985 12.759c2.653 0 4.609-1.214 4.609-3.688v-9.978h-2.282v1.623h-.128c-.351-.709-1.086-1.751-2.819-1.751-2.269 0-4.052 1.777-4.052 5.005 0 3.202 1.783 4.8 4.046 4.8 1.681 0 2.467-.901 2.825-1.623h.115v1.86c0 1.406-.959 2.001-2.275 2.001-1.394 0-2.007-.659-2.289-1.196l-2.083.505c.421 1.336 1.834 2.442 4.333 2.442zm.02-5.804c-1.528 0-2.334-1.189-2.334-2.998 0-1.783.793-3.094 2.334-3.094 1.489 0 2.307 1.234 2.307 3.094 0 1.873-.831 2.998-2.307 2.998zm7.063-11.135V247h2.275v-9.013h.122l3.618 8.975h1.7l3.618-8.956h.121V247h2.276v-13.091h-2.902l-3.886 9.486h-.154l-3.886-9.486h-2.902zM766.853 247h2.314v-5.97c0-1.208.805-2.026 1.802-2.026.978 0 1.65.658 1.65 1.668V247h2.269v-6.124c0-1.105.658-1.872 1.777-1.872.933 0 1.674.549 1.674 1.764V247h2.321v-6.59c0-2.193-1.266-3.356-3.068-3.356-1.426 0-2.512.703-2.947 1.796h-.102c-.378-1.112-1.33-1.796-2.653-1.796-1.317 0-2.301.678-2.71 1.796h-.115v-1.668h-2.212V247zm27.954-6.545c0-4.232-2.582-6.725-6.015-6.725-3.439 0-6.015 2.493-6.015 6.725 0 4.225 2.576 6.724 6.015 6.724 3.433 0 6.015-2.493 6.015-6.724zm-2.384 0c0 2.978-1.496 4.595-3.631 4.595-2.128 0-3.631-1.617-3.631-4.595 0-2.979 1.503-4.596 3.631-4.596 2.135 0 3.631 1.617 3.631 4.596zm8.806 6.737c2.877 0 4.705-2.027 4.705-5.063 0-3.042-1.828-5.075-4.705-5.075-2.876 0-4.704 2.033-4.704 5.075 0 3.036 1.828 5.063 4.704 5.063zm.013-1.854c-1.591 0-2.371-1.419-2.371-3.215 0-1.796.78-3.235 2.371-3.235 1.566 0 2.346 1.439 2.346 3.235 0 1.796-.78 3.215-2.346 3.215zM808 247h2.372v-4.794h2.416l2.569 4.794h2.647l-2.832-5.19c1.541-.62 2.352-1.937 2.352-3.714 0-2.499-1.61-4.187-4.615-4.187H808V247zm2.372-6.763v-4.346h2.173c1.771 0 2.563.811 2.563 2.205 0 1.393-.792 2.141-2.55 2.141h-2.186zm9.233 6.763h2.314v-5.772c0-1.246.939-2.129 2.212-2.129.389 0 .875.071 1.073.135v-2.129a5.6 5.6 0 00-.831-.064c-1.125 0-2.064.639-2.422 1.777h-.102v-1.636h-2.244V247zm14.353-9.492h2.282c-.045-2.212-1.93-3.778-4.717-3.778-2.749 0-4.813 1.547-4.807 3.861 0 1.879 1.336 2.959 3.49 3.516l1.489.383c1.413.358 2.346.799 2.353 1.815-.007 1.119-1.068 1.867-2.615 1.867-1.483 0-2.633-.665-2.729-2.039h-2.333c.096 2.601 2.033 4.065 5.082 4.065 3.138 0 4.96-1.566 4.966-3.873-.006-2.27-1.879-3.305-3.848-3.772l-1.227-.307c-1.074-.255-2.237-.709-2.225-1.802.007-.984.889-1.707 2.372-1.707 1.413 0 2.346.659 2.467 1.771zm12.233 2.269c-.32-1.662-1.649-2.723-3.95-2.723-2.365 0-3.976 1.163-3.97 2.979-.006 1.431.876 2.378 2.762 2.767l1.674.352c.902.198 1.324.562 1.324 1.119 0 .671-.729 1.176-1.829 1.176-1.061 0-1.751-.46-1.949-1.343l-2.257.218c.288 1.802 1.803 2.87 4.213 2.87 2.454 0 4.187-1.272 4.193-3.132-.006-1.4-.908-2.257-2.761-2.659l-1.675-.358c-.997-.224-1.394-.569-1.387-1.138-.007-.665.729-1.125 1.694-1.125 1.067 0 1.63.582 1.809 1.227l2.109-.23zm-207.703 16.132h-2.256l-3.254 2.09v2.174l3.062-1.956h.076V269h2.372v-13.091zM641.812 269h8.974v-1.982h-5.701v-.089l2.256-2.295c2.544-2.442 3.247-3.63 3.247-5.107 0-2.192-1.783-3.797-4.417-3.797-2.595 0-4.436 1.611-4.436 4.097h2.256c0-1.336.844-2.173 2.148-2.173 1.247 0 2.173.761 2.173 1.994 0 1.093-.664 1.873-1.955 3.184l-4.545 4.455V269zm15.878.179c2.799 0 4.838-1.604 4.832-3.816.006-1.636-1.016-2.813-2.851-3.075v-.102c1.419-.307 2.372-1.361 2.365-2.832.007-1.994-1.694-3.624-4.308-3.624-2.544 0-4.513 1.515-4.564 3.708h2.282c.038-1.1 1.061-1.784 2.269-1.784 1.221 0 2.033.742 2.026 1.841.007 1.144-.939 1.905-2.294 1.905h-1.157v1.828h1.157c1.655 0 2.64.831 2.633 2.013.007 1.157-.997 1.95-2.397 1.95-1.317 0-2.333-.684-2.39-1.751h-2.404c.064 2.211 2.039 3.739 4.801 3.739zm6.79-2.608h6.245V269h2.262v-2.429h1.675v-1.95h-1.675v-8.712h-2.953l-5.554 8.776v1.886zm6.27-1.95h-3.841v-.102l3.739-5.925h.102v6.027zm10.506 4.558c2.767 0 4.698-1.879 4.698-4.481 0-2.518-1.752-4.334-4.13-4.334-1.061 0-2 .422-2.486.998h-.077l.377-3.471h5.632v-1.982h-7.594l-.684 6.75 2.141.352c.441-.486 1.272-.812 2.059-.806 1.438.007 2.473 1.068 2.467 2.551.006 1.463-1.004 2.505-2.403 2.505-1.183 0-2.135-.748-2.219-1.821h-2.301c.064 2.173 1.963 3.739 4.52 3.739zm11.633 0c2.825.019 4.724-1.924 4.717-4.513.007-2.474-1.757-4.263-4.052-4.263-1.406 0-2.647.684-3.273 1.809h-.089c.006-2.794 1.016-4.468 2.831-4.468 1.125 0 1.886.658 2.129 1.694h2.333c-.281-2.148-1.988-3.746-4.462-3.746-3.145 0-5.133 2.62-5.133 7.133 0 4.801 2.487 6.341 4.999 6.354zm-.013-1.918c-1.4 0-2.422-1.157-2.429-2.524.013-1.375 1.074-2.525 2.461-2.525 1.387 0 2.404 1.099 2.397 2.505.007 1.432-1.042 2.544-2.429 2.544zm7.37 1.739h2.461l5.561-11.065v-2.026h-8.917v1.982h6.463v.089L700.246 269zm14.475.179c2.832 0 4.858-1.56 4.864-3.688-.006-1.637-1.214-3.004-2.735-3.26v-.09c1.323-.294 2.243-1.483 2.25-2.902-.007-2.013-1.86-3.509-4.379-3.509-2.538 0-4.391 1.489-4.385 3.509-.006 1.419.901 2.608 2.25 2.902v.09a3.296 3.296 0 00-2.736 3.26c-.006 2.128 2.014 3.688 4.871 3.688zm0-1.828c-1.483 0-2.442-.818-2.429-2.026-.013-1.253 1.016-2.142 2.429-2.142 1.394 0 2.416.895 2.429 2.142-.013 1.208-.965 2.026-2.429 2.026zm0-5.964c-1.214 0-2.084-.786-2.071-1.924-.013-1.125.831-1.879 2.071-1.879 1.221 0 2.058.754 2.071 1.879-.013 1.144-.876 1.924-2.071 1.924zm11.511-5.695c-2.839-.013-4.724 1.93-4.724 4.513 0 2.48 1.764 4.263 4.059 4.263 1.412 0 2.64-.684 3.272-1.809h.09c-.006 2.8-1.023 4.468-2.832 4.468-1.131 0-1.892-.652-2.128-1.694h-2.333c.268 2.167 1.981 3.746 4.461 3.746 3.139 0 5.127-2.621 5.133-7.127-.006-4.801-2.486-6.341-4.998-6.36zm.006 1.917c1.4 0 2.429 1.164 2.429 2.532 0 1.361-1.074 2.524-2.455 2.524-1.393 0-2.403-1.099-2.403-2.512 0-1.425 1.042-2.544 2.429-2.544zm11.959 11.64c3.158.007 5.044-2.486 5.044-6.782 0-4.27-1.899-6.737-5.044-6.737-3.144 0-5.036 2.461-5.043 6.737 0 4.289 1.886 6.782 5.043 6.782zm0-2c-1.63 0-2.652-1.637-2.646-4.782.007-3.119 1.023-4.762 2.646-4.762 1.63 0 2.647 1.643 2.653 4.762 0 3.145-1.016 4.782-2.653 4.782zm14.49-11.34h-2.474l.204 9.243h2.059l.211-9.243zm-1.24 13.232c.754 0 1.399-.627 1.406-1.407a1.42 1.42 0 00-1.406-1.393c-.78 0-1.413.626-1.407 1.393a1.4 1.4 0 001.407 1.407zm6.174-3.989h2.129v-.166c.013-1.355.454-1.975 1.496-2.615 1.176-.703 1.911-1.661 1.911-3.125 0-2.161-1.681-3.516-4.123-3.516-2.237 0-4.053 1.24-4.117 3.669h2.276c.058-1.202.927-1.777 1.828-1.777.978 0 1.764.652 1.764 1.656 0 .895-.594 1.508-1.368 1.994-1.131.703-1.783 1.413-1.796 3.714v.166zm1.119 3.989c.754 0 1.4-.627 1.406-1.407a1.42 1.42 0 00-1.406-1.393c-.78 0-1.413.626-1.406 1.393a1.398 1.398 0 001.406 1.407zm7.036-6.686c0 3.189.85 5.842 2.531 8.117h2.18c-1.298-1.687-2.301-5.088-2.301-8.117 0-3.037 1.003-6.437 2.301-8.125h-2.18c-1.681 2.276-2.531 4.935-2.531 8.125zm10.638 0c0-3.19-.85-5.843-2.531-8.118h-2.18c1.298 1.687 2.301 5.088 2.301 8.118 0 3.036-1.003 6.436-2.301 8.124h2.18c1.681-2.276 2.531-4.935 2.531-8.124zm3.747 8.117h4.622v-1.77h-2.397v-12.695h2.397v-1.777h-4.622v16.242zm10.204-16.235h-4.622v1.77h2.397v12.695h-2.397v1.777h4.622v-16.242zm8.586 16.235v-1.77c-1.502 0-1.86-.614-1.86-1.943v-2.097c0-.997-.397-1.841-2.123-2.186v-.243c1.726-.345 2.123-1.195 2.123-2.192v-2.097c0-1.323.358-1.937 1.86-1.937v-1.777c-2.557 0-4.059.646-4.059 3.529v1.63c0 1.342-.499 1.892-1.95 1.892v2.147c1.451 0 1.95.55 1.95 1.892v1.624c0 2.883 1.502 3.528 4.059 3.528zm.96-16.235v1.77c1.502 0 1.86.614 1.86 1.943v2.097c0 .997.396 1.841 2.122 2.186v.243c-1.726.345-2.122 1.195-2.122 2.192v2.097c0 1.323-.358 1.937-1.86 1.937v1.777c2.557 0 4.059-.646 4.059-3.529v-1.63c0-1.342.499-1.892 1.95-1.892v-2.147c-1.451 0-1.95-.55-1.95-1.892v-1.624c0-2.883-1.502-3.528-4.059-3.528zm15.905 16.478c1.643 0 3.388-.415 4.187-.831l-.543-1.623c-.608.23-2.078.652-3.535.652-4.232 0-6.52-2.289-6.52-6.431 0-3.86 2.186-6.551 6.36-6.551 3.407 0 5.945 1.93 5.938 5.561.007 2.64-.403 3.828-1.425 3.828-.544 0-.863-.434-.87-1.067v-6.085h-1.783v.716h-.089c-.205-.563-1.432-1.081-2.819-.889-1.784.237-3.497 1.7-3.497 4.436 0 2.819 1.534 4.475 3.618 4.571 1.451.07 2.576-.576 2.876-1.336h.077c.154.958.997 1.483 2.289 1.412 2.748-.102 3.534-2.557 3.528-5.478.006-4.199-2.819-7.446-7.798-7.446-5.306 0-8.393 3.266-8.399 8.354.006 5.209 3.042 8.207 8.405 8.207zm-.447-5.548c-1.669 0-2.231-1.355-2.238-2.812.007-1.458.819-2.525 2.25-2.525 1.592 0 2.18.78 2.186 2.518.02 1.867-.581 2.819-2.198 2.819zm14.313 5.369h1.355l.007-1.463c2.742-.199 4.314-1.707 4.321-3.848-.007-2.27-1.88-3.305-3.848-3.772l-.422-.108.025-3.65c1.023.179 1.681.792 1.784 1.713h2.282c-.039-2.033-1.637-3.516-4.053-3.746l.006-1.489h-1.355l-.006 1.489c-2.397.243-4.123 1.713-4.117 3.829 0 1.879 1.336 2.959 3.49 3.516l.576.147-.026 3.867c-1.144-.179-1.969-.831-2.052-1.988h-2.333c.09 2.397 1.739 3.822 4.372 4.04l-.006 1.463zm1.374-3.515l.026-3.509c1.163.338 1.905.786 1.911 1.693-.006.946-.767 1.624-1.937 1.816zm-1.316-6.022c-.883-.281-1.688-.747-1.675-1.655.006-.825.626-1.464 1.7-1.649l-.025 3.304zM842.311 269h1.79l.556-3.375h1.828l.301-1.79h-1.835l.447-2.761h1.848l.294-1.79h-1.848l.557-3.375h-1.79l-.556 3.375h-2.813l.556-3.375h-1.789l-.557 3.375h-1.834l-.294 1.79h1.834l-.447 2.761h-1.847l-.301 1.79h1.854l-.556 3.375h1.79l.556-3.375h2.812l-.556 3.375zm-1.962-5.165l.447-2.761h2.813l-.448 2.761h-2.812zm15.585 2.71c.007 1.522.972 2.819 2.768 2.819 1.79 0 2.774-1.297 2.768-2.819v-.69c.006-1.534-.953-2.819-2.768-2.819-1.771 0-2.761 1.298-2.768 2.819v.69zm-6.654-7.491c.006 1.521.972 2.806 2.774 2.806 1.784 0 2.768-1.272 2.762-2.806v-.69c.006-1.534-.953-2.819-2.762-2.819-1.764 0-2.768 1.285-2.774 2.819v.69zm.575 9.946h1.605l9-13.091h-1.605l-9 13.091zm7.747-3.145c.007-.677.294-1.361 1.1-1.361.844 0 1.093.684 1.087 1.361v.69c.006.678-.269 1.349-1.087 1.349s-1.093-.677-1.1-1.349v-.69zm-6.641-7.491c.007-.672.281-1.362 1.093-1.362.844 0 1.087.684 1.08 1.362v.69c.007.678-.262 1.349-1.08 1.349-.818 0-1.086-.671-1.093-1.349v-.69zM634.154 291l1.624-3.228h4.922l.543 3.228h2.531l-2.442-13.091h-2.927L631.623 291h2.531zm2.576-5.133l2.653-5.273h.102l.889 5.273h-3.644zm11.466 5.331c1.54 0 2.589-.722 3.138-1.547h.077l-.23 1.349h2.224l1.093-6.571c.435-2.595-1.553-3.375-3.419-3.375-2.065 0-3.823.92-4.615 2.71l2.096.307c.345-.678 1.132-1.246 2.257-1.246 1.073 0 1.534.556 1.38 1.514v.039c-.115.652-.824.697-2.582.882-1.937.204-3.848.773-4.219 2.985-.319 1.924.933 2.953 2.8 2.953zm.876-1.7c-.966 0-1.573-.448-1.432-1.291.134-.895.984-1.26 2.045-1.407.607-.083 1.854-.236 2.193-.479l-.192 1.157c-.179 1.093-1.227 2.02-2.614 2.02zm6.762 1.502h5.299c2.992 0 4.724-1.528 5.063-3.567.326-1.981-.889-3.145-2.269-3.215l.025-.128c1.317-.307 2.468-1.202 2.742-2.787.333-1.949-.837-3.394-3.675-3.394h-5.011L655.834 291zm2.704-1.982l.633-3.835h2.621c1.464 0 2.211.895 2.026 2.065-.173 1.035-1.016 1.77-2.729 1.77h-2.551zm.927-5.541l.588-3.612h2.403c1.388 0 1.995.729 1.816 1.745-.173 1.144-1.234 1.867-2.461 1.867h-2.346zm8.199 7.523h2.276l.256-1.547h.147c.243.716.831 1.72 2.518 1.72 2.314 0 4.36-1.835 4.89-5.069.543-3.273-.94-5.05-3.209-5.05-1.732 0-2.633 1.042-3.093 1.751h-.103l.806-4.896h-2.314L667.664 291zm3.088-4.909c.307-1.905 1.336-3.139 2.831-3.139 1.541 0 2.103 1.311 1.809 3.139-.306 1.841-1.329 3.183-2.85 3.183-1.477 0-2.097-1.278-1.79-3.183zm12.75 4.909c3.989 0 6.686-2.397 7.351-6.43.691-4.136-1.317-6.661-5.216-6.661h-4.461L679.002 291h4.5zm-1.789-2.052l1.495-8.987h2.078c2.659 0 3.758 1.413 3.26 4.347-.505 3.074-2.199 4.64-4.922 4.64h-1.911zm13.867 2.225c1.681 0 2.614-1.004 3.094-1.72h.14l-.262 1.547h2.276l2.173-13.091h-2.314l-.818 4.896h-.096c-.236-.709-.786-1.751-2.518-1.751-2.263 0-4.34 1.777-4.89 5.05-.531 3.234.901 5.069 3.215 5.069zm.927-1.899c-1.528 0-2.084-1.342-1.777-3.183.3-1.828 1.285-3.139 2.819-3.139 1.496 0 2.141 1.234 1.828 3.139-.32 1.905-1.4 3.183-2.87 3.183zm6.911 1.726h8.566l.332-1.988h-6.194l.588-3.573h5.702l.332-1.988h-5.701l.588-3.554h6.142l.333-1.988h-8.514L703.418 291zm15.153.192c2.294 0 4.039-1.119 4.743-2.826l-2.116-.242c-.46.837-1.279 1.265-2.295 1.265-1.56 0-2.359-.792-2.071-2.633l.006-.032h6.846l.109-.71c.575-3.439-1.24-4.96-3.656-4.96-2.806 0-4.992 2.065-5.491 5.094-.518 3.075.972 5.044 3.925 5.044zm-1.458-6.028c.262-1.176 1.432-2.307 2.762-2.307 1.336 0 2.058.971 1.834 2.307h-4.596zm18.166-3.075h2.417c.038-2.569-1.899-4.359-4.788-4.359-3.426 0-6.418 2.519-7.102 6.737-.69 4.142 1.33 6.712 4.942 6.712 3.247 0 5.912-2.084 6.462-5.459l.268-1.572h-5.311l-.32 1.853h3.023c-.332 1.867-1.885 3.049-3.854 3.049-2.192 0-3.317-1.642-2.825-4.608.485-2.947 2.416-4.583 4.532-4.583 1.578 0 2.377.85 2.556 2.23zm6.902 12.759c2.64 0 4.801-1.208 5.21-3.688l1.649-9.978h-2.282l-.268 1.623h-.122c-.236-.709-.799-1.751-2.531-1.751-2.269 0-4.347 1.777-4.877 5.005-.537 3.202.978 4.8 3.247 4.8 1.681 0 2.621-.901 3.081-1.623h.115l-.294 1.86c-.23 1.4-1.317 2.001-2.627 2.001-1.413 0-1.88-.659-2.071-1.196l-2.174.505c.211 1.336 1.432 2.442 3.944 2.442zm.946-5.804c-1.534 0-2.109-1.189-1.815-2.998.294-1.783 1.266-3.094 2.812-3.094 1.483 0 2.135 1.234 1.835 3.094-.307 1.873-1.362 2.998-2.832 2.998zm8.924-11.135L749.877 291h2.276l1.508-9.013h.122l2.122 8.975h1.694l5.114-8.956h.115L761.332 291h2.275l2.174-13.091h-2.902l-5.453 9.486h-.153l-2.32-9.486h-2.902zM766.094 291h2.32l.997-5.97c.192-1.202 1.138-2.026 2.135-2.026.985 0 1.534.652 1.381 1.668L771.866 291h2.269l1.029-6.124c.173-1.112.959-1.872 2.071-1.872.94 0 1.585.543 1.4 1.764L777.587 291h2.314l1.099-6.59c.365-2.186-.709-3.356-2.499-3.356-1.432 0-2.646.703-3.254 1.796h-.102c-.185-1.112-1.035-1.796-2.352-1.796s-2.41.678-3.004 1.796h-.122l.281-1.668h-2.218L766.094 291zm29.009-6.392c.716-4.308-1.509-6.878-4.993-6.878-3.387 0-6.296 2.429-6.986 6.59-.71 4.296 1.508 6.859 5.024 6.859 3.356 0 6.258-2.41 6.955-6.571zm-2.333-.288c-.505 3.043-2.34 4.73-4.545 4.73-2.046 0-3.267-1.521-2.762-4.442.486-3.043 2.334-4.749 4.552-4.749 2.058 0 3.234 1.553 2.755 4.461zm7.732 6.872c2.838 0 4.973-1.995 5.472-4.999.498-3.081-1.01-5.139-3.912-5.139-2.844 0-4.979 2.001-5.472 5.018-.498 3.062 1.004 5.12 3.912 5.12zm.186-1.854c-1.554 0-2.065-1.387-1.777-3.158.294-1.828 1.355-3.292 2.966-3.292 1.546 0 2.064 1.407 1.777 3.171-.294 1.834-1.356 3.279-2.966 3.279zm6.547 1.662h2.371l.799-4.794h2.41l1.777 4.794h2.646l-1.975-5.19c1.649-.62 2.678-1.944 2.972-3.714.416-2.512-.907-4.187-3.918-4.187h-4.909L807.235 291zm3.496-6.763l.722-4.346h2.174c1.764 0 2.416.805 2.192 2.205-.223 1.387-1.138 2.141-2.895 2.141h-2.193zM818.91 291h2.314l.952-5.772c.217-1.246 1.298-2.129 2.563-2.129.403 0 .87.064 1.068.135l.358-2.129a4.779 4.779 0 00-.825-.064c-1.125 0-2.186.639-2.723 1.777h-.102l.275-1.636h-2.244L818.91 291zm15.93-9.428h2.282c.314-2.276-1.291-3.842-4.078-3.842-2.755 0-5.056 1.541-5.446 3.861-.307 1.879.844 2.953 2.902 3.516l1.419.383c1.362.358 2.237.799 2.058 1.815-.179 1.119-1.367 1.867-2.914 1.867-1.477 0-2.532-.665-2.391-2.039h-2.333c-.339 2.601 1.361 4.065 4.41 4.065 3.139 0 5.21-1.566 5.6-3.873.377-2.27-1.33-3.312-3.209-3.772l-1.176-.307c-1.036-.255-2.129-.715-1.93-1.802.166-.991 1.163-1.707 2.646-1.707 1.413 0 2.192.652 2.16 1.835zm11.869 2.205c-.045-1.668-1.221-2.723-3.561-2.723-2.326 0-4.09 1.119-4.391 2.902-.249 1.464.518 2.435 2.34 2.838l1.61.352c.882.198 1.202.517 1.113 1.042-.103.703-.972 1.265-2.116 1.259-1.01-.007-1.605-.454-1.656-1.343l-2.275.218c-.007 1.796 1.355 2.87 3.803 2.87 2.416 0 4.321-1.234 4.628-3.049.236-1.445-.556-2.327-2.346-2.73l-1.624-.358c-.946-.23-1.259-.543-1.163-1.067.102-.703.965-1.208 1.969-1.208 1.035 0 1.47.569 1.54 1.227l2.129-.23zm-206.866 16.132h-2.256l-3.605 2.09-.358 2.174 3.387-1.956h.077L635.298 313h2.372l2.173-13.091zM640.994 313h8.974l.326-1.982h-5.695l.019-.089 2.627-2.295c2.953-2.442 3.848-3.63 4.104-5.107.37-2.192-1.125-3.797-3.765-3.797-2.602 0-4.73 1.611-5.146 4.097h2.257c.223-1.329 1.24-2.173 2.537-2.173 1.253 0 2.027.761 1.822 1.994-.185 1.087-.978 1.867-2.493 3.184l-5.28 4.455-.287 1.713zm15.967.179c2.787 0 4.967-1.483 5.325-3.682.274-1.662-.633-2.953-2.34-3.209v-.083c1.502-.307 2.608-1.24 2.844-2.716.326-1.995-1.112-3.759-3.784-3.759-2.48 0-4.659 1.521-5.056 3.708h2.269c.192-1.1 1.445-1.784 2.672-1.784 1.221 0 1.809.678 1.637 1.707-.205 1.221-1.323 2.039-2.691 2.039h-1.1l-.3 1.828h1.208c1.63 0 2.442.741 2.269 1.879-.192 1.234-1.425 2.084-2.857 2.084-1.298 0-2.122-.697-1.995-1.751h-2.365c-.332 2.218 1.445 3.739 4.264 3.739zm7.109-2.608h6.239l-.403 2.429h2.263l.403-2.429h1.681l.326-1.95h-1.681l1.445-8.712h-2.954l-7.012 8.776-.307 1.886zm6.597-1.95h-3.848l.013-.102 4.73-5.925h.102l-.997 6.027zm9.745 4.558c2.78 0 5.018-1.879 5.433-4.481.428-2.512-1.023-4.334-3.394-4.334-1.068 0-2.078.416-2.659.998h-.077l.952-3.471h5.638l.32-1.982h-7.594l-1.809 6.75 2.084.352c.53-.486 1.413-.806 2.192-.806 1.445 0 2.302 1.061 2.059 2.551-.25 1.47-1.426 2.505-2.838 2.505-1.17 0-2.008-.754-1.912-1.821h-2.301c-.287 2.167 1.349 3.739 3.906 3.739zm11.755 0c2.761.013 4.902-1.854 5.324-4.379.429-2.537-1.08-4.397-3.439-4.397a4.27 4.27 0 00-3.477 1.751l-.102.134c.498-2.882 1.873-4.544 3.707-4.544 1.119 0 1.745.626 1.771 1.681h2.288c.07-2.161-1.47-3.733-3.931-3.733-3.094 0-5.446 2.55-6.187 6.999-.812 4.864 1.476 6.475 4.046 6.488zm.083-1.918c-1.355 0-2.135-1.073-1.931-2.39.231-1.445 1.566-2.659 3.011-2.659 1.336 0 2.109 1.042 1.899 2.377-.231 1.496-1.541 2.672-2.979 2.672zm7.178 1.739h2.461l7.396-11.065.338-2.026h-8.917l-.325 1.982h6.468l-.025.089-7.396 11.02zm14.5.179c2.8 0 5.05-1.528 5.402-3.624.287-1.669-.723-3.056-2.212-3.324v-.07c1.368-.288 2.519-1.4 2.768-2.864.332-2.039-1.304-3.567-3.861-3.567-2.506 0-4.532 1.438-4.89 3.445-.256 1.439.428 2.679 1.72 2.986v.07c-1.566.256-2.973 1.591-3.248 3.202-.358 2.129 1.439 3.746 4.321 3.746zm.192-1.828c-1.438 0-2.243-.774-2.052-1.969.211-1.278 1.407-2.199 2.838-2.199 1.375 0 2.238.838 2.039 2.078-.204 1.233-1.316 2.09-2.825 2.09zm.985-5.964c-1.177 0-1.905-.729-1.72-1.86.192-1.157 1.183-1.943 2.461-1.943 1.208 0 1.911.69 1.713 1.815-.204 1.157-1.202 1.988-2.454 1.988zm12.411-5.695c-2.767-.013-4.896 1.86-5.324 4.378-.429 2.544 1.08 4.398 3.432 4.398 1.381 0 2.666-.62 3.478-1.745l.102-.134c-.492 2.876-1.873 4.538-3.708 4.538-1.118 0-1.738-.62-1.764-1.681h-2.288c-.07 2.161 1.457 3.733 3.931 3.733 3.1 0 5.446-2.544 6.181-6.993.818-4.864-1.47-6.475-4.04-6.494zm-.083 1.917c1.362 0 2.142 1.081 1.924 2.397-.223 1.439-1.559 2.659-3.004 2.659-1.336 0-2.116-1.041-1.898-2.377.23-1.502 1.54-2.679 2.978-2.679zm9.914 11.64c3.152 0 5.446-2.493 6.162-6.782.716-4.276-.792-6.737-3.931-6.737-3.138 0-5.44 2.461-6.149 6.737-.716 4.289.748 6.782 3.918 6.782zm.333-2c-1.63 0-2.378-1.637-1.86-4.782.517-3.119 1.809-4.762 3.439-4.762 1.623 0 2.384 1.643 1.86 4.762-.525 3.139-1.803 4.782-3.439 4.782zm16.349-11.34h-2.461l-1.323 9.243h2.045l1.739-9.243zm-3.254 13.232c.748 0 1.432-.62 1.483-1.407.045-.754-.575-1.38-1.329-1.38-.774 0-1.451.613-1.483 1.38-.039.787.543 1.407 1.329 1.407zm6.674-3.989h2.128l.032-.211c.237-1.329.786-1.95 1.937-2.576 1.278-.69 2.18-1.655 2.423-3.119.358-2.161-1.113-3.516-3.548-3.516-2.244 0-4.244 1.24-4.717 3.669h2.275a2.146 2.146 0 012.129-1.777c.978 0 1.643.652 1.476 1.656-.14.901-.85 1.502-1.7 1.994-1.221.703-2.007 1.4-2.403 3.669l-.032.211zm.594 3.989c.748 0 1.432-.62 1.483-1.407.045-.754-.575-1.38-1.329-1.38-.774 0-1.451.613-1.483 1.38-.039.787.543 1.407 1.329 1.407zm8.014-6.686c-.524 3.189-.108 5.842 1.189 8.117h2.18c-1.023-1.687-1.47-5.088-.959-8.117.511-3.037 2.065-6.437 3.643-8.125h-2.173c-2.071 2.276-3.349 4.935-3.88 8.125zm10.638 0c.524-3.19.109-5.843-1.189-8.118h-2.179c1.022 1.687 1.47 5.088.958 8.118-.511 3.036-2.064 6.436-3.643 8.124h2.173c2.071-2.276 3.35-4.935 3.88-8.124zm2.38 8.117h4.621l.294-1.77h-2.391l2.097-12.695h2.391l.3-1.777h-4.621l-2.691 16.242zm12.926-16.235h-4.622l-.294 1.77h2.391l-2.097 12.695h-2.39l-.301 1.777h4.622l2.691-16.242zm5.876 16.235l.294-1.77c-1.502 0-1.764-.607-1.541-1.943l.352-2.097c.153-.997-.096-1.847-1.783-2.186l.038-.237c1.809-.345 2.339-1.195 2.499-2.198l.358-2.097c.205-1.336.671-1.937 2.173-1.937l.301-1.777c-2.557 0-4.187.646-4.647 3.529l-.256 1.63c-.217 1.348-.818 1.892-2.275 1.892h-.026l-.358 2.147h.026c1.463 0 1.841.544 1.63 1.892l-.262 1.624c-.461 2.889.92 3.528 3.477 3.528zm3.67-16.235l-.294 1.77c1.503 0 1.765.607 1.541 1.943l-.352 2.097c-.153.997.096 1.847 1.784 2.186l-.039.237c-1.809.345-2.339 1.195-2.499 2.198l-.358 2.097c-.204 1.336-.671 1.937-2.173 1.937l-.301 1.777c2.557 0 4.187-.646 4.647-3.529l.256-1.63c.217-1.348.818-1.892 2.276-1.892h.025l.358-2.147h-.025c-1.464 0-1.841-.544-1.63-1.892l.262-1.624c.46-2.889-.921-3.528-3.478-3.528zm13.144 16.478c1.649 0 3.452-.415 4.34-.831l-.281-1.623c-.658.23-2.186.652-3.637.652-4.232 0-6.143-2.289-5.459-6.431.633-3.86 3.26-6.551 7.434-6.551 3.407 0 5.638 1.93 5.024 5.561-.428 2.64-1.029 3.828-2.052 3.828-.549 0-.792-.434-.709-1.067l1.016-6.085h-1.79l-.115.716h-.089c-.109-.563-1.253-1.081-2.678-.889-1.816.237-3.765 1.7-4.226 4.436-.46 2.819.799 4.475 2.864 4.571 1.438.07 2.685-.576 3.094-1.336h.077c-.007.958.76 1.483 2.058 1.412 2.768-.102 3.956-2.557 4.436-5.478.69-4.199-1.585-7.446-6.571-7.446-5.306 0-8.93 3.266-9.774 8.354-.85 5.209 1.675 8.207 7.038 8.207zm.486-5.548c-1.668 0-2.014-1.355-1.784-2.812.25-1.458 1.241-2.525 2.672-2.525 1.592 0 2.052.78 1.771 2.518-.307 1.867-1.048 2.819-2.659 2.819zm13.431 5.369h1.355l.25-1.463c2.767-.205 4.576-1.707 4.941-3.848.377-2.27-1.33-3.312-3.209-3.772l-.403-.102.627-3.656c.977.185 1.502.805 1.476 1.777h2.282c.288-2.084-1.035-3.573-3.407-3.81l.256-1.489h-1.355l-.256 1.489c-2.442.23-4.404 1.707-4.762 3.829-.307 1.879.844 2.953 2.902 3.516l.569.153-.665 3.861c-1.119-.173-1.854-.825-1.732-1.988h-2.333c-.314 2.397 1.105 3.829 3.713 4.04l-.249 1.463zm1.962-3.515l.601-3.503c1.1.339 1.771.786 1.611 1.687-.153.94-1.016 1.624-2.212 1.816zm-.326-6.022c-.843-.281-1.572-.754-1.406-1.655.141-.831.87-1.47 1.975-1.656l-.569 3.311zm12.22 7.901h1.79l.614-3.375h1.828l.332-1.79h-1.834l.498-2.761h1.848l.326-1.79h-1.848l.614-3.375h-1.79l-.613 3.375h-2.813l.614-3.375h-1.79l-.614 3.375h-1.834l-.326 1.79h1.834l-.498 2.761h-1.847l-.333 1.79h1.854l-.614 3.375h1.79l.614-3.375h2.812l-.614 3.375zm-1.872-5.165l.498-2.761h2.813l-.499 2.761h-2.812zm14.933 2.71c-.249 1.522.505 2.819 2.308 2.819 1.783 0 2.985-1.297 3.228-2.819l.127-.69c.256-1.534-.492-2.819-2.301-2.819-1.77 0-2.991 1.298-3.234 2.819l-.128.69zm-5.401-7.491c-.262 1.521.505 2.806 2.307 2.806 1.784 0 2.973-1.272 3.228-2.806l.103-.69c.255-1.534-.486-2.819-2.302-2.819-1.764 0-2.978 1.285-3.234 2.819l-.102.69zM848.935 313h1.687l11.174-13.091h-1.688L848.935 313zm8.386-3.145c.115-.677.518-1.361 1.33-1.361.843 0 .971.684.856 1.361l-.128.69c-.102.678-.492 1.349-1.31 1.349-.825 0-.978-.677-.876-1.349l.128-.69zm-5.414-7.491c.115-.672.505-1.362 1.317-1.362.844 0 .971.684.856 1.362l-.102.69c-.128.678-.492 1.349-1.31 1.349-.812 0-.991-.671-.863-1.349l.102-.69zM647.877 194.07h4.311c-.085-4.177-3.647-7.135-8.911-7.135-5.192 0-9.092 2.922-9.08 7.292 0 3.55 2.524 5.59 6.593 6.641l2.813.724c2.668.676 4.431 1.51 4.443 3.429-.012 2.113-2.016 3.526-4.938 3.526-2.801 0-4.974-1.256-5.156-3.852h-4.407c.182 4.914 3.84 7.679 9.599 7.679 5.928 0 9.369-2.958 9.382-7.316-.013-4.287-3.55-6.243-7.269-7.124l-2.318-.58c-2.028-.483-4.226-1.34-4.202-3.404.012-1.86 1.678-3.224 4.48-3.224 2.668 0 4.431 1.243 4.66 3.344zm16.115 18.292c4.322 0 7.293-2.113 8.065-5.336l-4.081-.459c-.591 1.569-2.04 2.39-3.924 2.39-2.825 0-4.696-1.859-4.733-5.034h12.919v-1.341c0-6.507-3.911-9.369-8.475-9.369-5.313 0-8.778 3.9-8.778 9.623 0 5.82 3.417 9.526 9.007 9.526zm-4.66-11.385c.132-2.367 1.883-4.359 4.491-4.359 2.511 0 4.202 1.835 4.226 4.359h-8.717zM675.392 212h4.371v-11.277c0-2.282 1.521-3.827 3.405-3.827 1.847 0 3.115 1.243 3.115 3.151V212h4.286v-11.567c0-2.089 1.244-3.537 3.356-3.537 1.763 0 3.164 1.038 3.164 3.332V212h4.383v-12.448c0-4.141-2.391-6.339-5.796-6.339-2.692 0-4.745 1.328-5.566 3.393h-.193c-.712-2.101-2.511-3.393-5.011-3.393-2.487 0-4.346 1.28-5.119 3.393h-.217v-3.151h-4.178V212zm29.97 0h4.371v-18.545h-4.371V212zm2.197-21.178c1.389 0 2.524-1.062 2.524-2.366 0-1.316-1.135-2.379-2.524-2.379-1.4 0-2.535 1.063-2.535 2.379 0 1.304 1.135 2.366 2.535 2.366zM721.766 212h10.009c5.663 0 8.44-2.886 8.44-6.737 0-3.743-2.657-5.941-5.289-6.073v-.242c2.415-.567 4.323-2.258 4.323-5.264 0-3.683-2.657-6.411-8.017-6.411h-9.466V212zm4.479-3.743v-7.244h4.938c2.765 0 4.48 1.69 4.48 3.9 0 1.968-1.352 3.344-4.6 3.344h-4.818zm0-10.468v-6.822h4.528c2.632 0 3.996 1.389 3.996 3.296 0 2.174-1.762 3.526-4.093 3.526h-4.431zm25.219 14.573c5.433 0 8.886-3.827 8.886-9.562 0-5.747-3.453-9.587-8.886-9.587s-8.887 3.84-8.887 9.587c0 5.735 3.454 9.562 8.887 9.562zm.024-3.501c-3.006 0-4.479-2.681-4.479-6.073 0-3.393 1.473-6.11 4.479-6.11 2.958 0 4.431 2.717 4.431 6.11 0 3.392-1.473 6.073-4.431 6.073zm16.399-21.588h-4.371V212h4.371v-24.727zm10.832 25.053c3.188 0 4.624-1.896 5.313-3.248h.265V212h4.299v-24.727h-4.383v9.248h-.181c-.664-1.34-2.029-3.308-5.301-3.308-4.286 0-7.655 3.357-7.655 9.538 0 6.11 3.272 9.575 7.643 9.575zm1.22-3.586c-2.886 0-4.407-2.535-4.407-6.013 0-3.453 1.497-5.928 4.407-5.928 2.813 0 4.358 2.33 4.358 5.928s-1.569 6.013-4.358 6.013zM2.077 9.045h7.969V33h.772V9.045h7.969v-.772H2.077v.772zM24.364 20.54c0-3.236 2.367-5.554 5.65-5.554 3.285 0 5.555 2.27 5.555 5.554V33h.773V20.54c0-3.719-2.608-6.327-6.327-6.327-2.56 0-4.685 1.256-5.554 3.188h-.097V8.273h-.772V33h.772V20.54zM42.468 33h.773V14.454h-.773V33zm.387-21.926c.422 0 .773-.35.773-.773a.778.778 0 00-.773-.773.778.778 0 00-.773.773c0 .423.35.773.773.773zm7.283 9.466c0-3.236 2.366-5.554 5.65-5.554 3.284 0 5.554 2.27 5.554 5.554V33h.773V20.54c0-3.719-2.608-6.327-6.327-6.327-2.56 0-4.684 1.256-5.554 3.188h-.096v-2.947h-.773V33h.773V20.54zM1.023 68l1.585-4.423h5.88L10.075 68h.434L5.83 54.91h-.563L.588 68h.435zm1.726-4.832l2.774-7.748h.05l2.775 7.748h-5.6zm12.536 5.036c1.483 0 2.685-.869 3.298-2.198h.051V68h.41v-7.057c0-1.662-1.202-2.915-3.197-2.915-1.534 0-2.812.767-3.272 1.995l.383.153c.41-1.1 1.509-1.739 2.89-1.739 1.687 0 2.786.998 2.786 2.506v.588c0 .767-1.278.92-2.633 1.074-3.017.358-3.708 1.406-3.708 2.736 0 1.84 1.381 2.864 2.992 2.864zm0-.408c-1.457 0-2.582-.972-2.582-2.455 0-1.253.818-2.045 3.451-2.352 1.125-.128 1.995-.307 2.48-.665v1.483c0 2.378-1.483 3.989-3.349 3.989zm7.59.204h4.526c2.25 0 3.58-1.33 3.58-3.35 0-1.821-1.087-3.15-2.506-3.272v-.051c1.266-.32 1.994-1.554 1.994-3.094 0-2.065-1.304-3.324-3.503-3.324h-4.09V68zm.41-.41v-6.033H27.4c1.847 0 3.17 1.278 3.17 3.094 0 1.764-1.252 2.94-3.17 2.94h-4.116zm0-6.442v-5.83h3.681c1.905 0 3.094 1.055 3.094 2.915 0 1.56-.875 2.915-2.659 2.915h-4.116zM34.407 68h.409v-2.454h.051c.53 1.63 1.745 2.658 3.324 2.658 2.32 0 3.784-2.185 3.784-5.087 0-2.89-1.483-5.089-3.784-5.089-1.56 0-2.813 1.023-3.324 2.66h-.051v-5.779h-.41V68zm.409-4.883c0-2.66 1.304-4.68 3.375-4.68 2.07 0 3.375 2.02 3.375 4.68 0 2.659-1.291 4.679-3.375 4.679s-3.375-2.02-3.375-4.68zM48.59 68c3.841 0 6.072-2.416 6.085-6.597.006-4.071-2.141-6.494-5.753-6.494h-3.758V68h3.426zm-3.017-.41V55.319h3.35c3.393 0 5.33 2.27 5.343 6.085.013 3.88-2.046 6.188-5.676 6.188h-3.017zm15.347.614c1.572 0 2.787-1.035 3.324-2.658h.051V68h.41V54.91h-.41v5.778h-.051c-.512-1.637-1.764-2.66-3.324-2.66-2.301 0-3.784 2.2-3.784 5.089 0 2.902 1.457 5.087 3.784 5.087zm0-.408c-2.084 0-3.375-2.02-3.375-4.68 0-2.659 1.304-4.678 3.375-4.678 2.071 0 3.375 2.02 3.375 4.678 0 2.66-1.291 4.68-3.375 4.68zm7.87.204h7.159v-.41h-6.75v-5.93h6.187v-.41H69.2v-5.932h6.57v-.409h-6.98V68zm13.886.204c1.912 0 2.966-1.201 3.4-1.943l-.331-.23c-.359.588-1.26 1.764-3.069 1.764-2.467 0-3.854-2.14-3.86-4.704h7.67v-.41c0-2.537-1.732-4.653-4.014-4.653-2.32 0-4.066 2.2-4.066 5.089 0 2.889 1.694 5.087 4.27 5.087zm-3.848-5.522c.173-2.442 1.713-4.245 3.644-4.245 1.988 0 3.605 1.886 3.605 4.245h-7.249zM98.971 59h.41c-.308-1.867-1.95-4.27-5.012-4.27-3.247 0-5.42 2.698-5.42 6.725 0 4.007 2.147 6.724 5.471 6.724 2.94 0 5.063-2.122 5.063-5.702v-.409h-4.935v.41h4.525c-.006 3.33-1.955 5.292-4.653 5.292-3.094 0-5.062-2.576-5.062-6.315 0-3.785 2.007-6.316 5.011-6.316 2.691 0 4.289 2.078 4.602 3.861zm7.025 12.886c2.269 0 3.656-1.259 3.656-3.681V58.181h-.409v2.505h-.051c-.537-1.636-1.739-2.659-3.324-2.659-2.326 0-3.784 2.174-3.784 5.089 0 2.889 1.483 4.883 3.784 4.883 1.458 0 2.813-.818 3.324-2.454h.051v2.658c0 2.206-1.201 3.273-3.247 3.273-1.476 0-2.653-.556-3.094-1.713l-.383.154c.498 1.31 1.828 1.968 3.477 1.968zm-.128-4.295c-2.071 0-3.375-1.815-3.375-4.474 0-2.66 1.291-4.68 3.375-4.68s3.375 2.02 3.375 4.68c0 2.754-1.329 4.474-3.375 4.474zm7.623-12.682V68h.409V56.187h.051L119.013 68h.41l5.062-11.813h.051V68h.409V54.91h-.358l-5.343 12.476h-.052l-5.343-12.477h-.358zM128.723 68h.409v-6.597c0-1.713.946-2.94 2.685-2.94 1.738 0 2.48 1.202 2.48 2.94V68h.409v-6.597c0-1.713.946-2.94 2.685-2.94 1.738 0 2.48 1.202 2.48 2.94V68h.409v-6.597c0-1.968-.921-3.349-2.889-3.349-1.483 0-2.519.793-2.838 2.02h-.052c-.332-1.227-1.201-2.02-2.684-2.02-1.304 0-2.276.633-2.634 1.585h-.051v-1.457h-.409V68zm25.436-6.545c0-4.002-2.199-6.725-5.421-6.725-3.228 0-5.42 2.73-5.42 6.725 0 3.988 2.186 6.724 5.42 6.724 3.222 0 5.421-2.723 5.421-6.724zm-.41 0c.007 3.758-2.032 6.315-5.011 6.315-3.011 0-5.011-2.582-5.011-6.315 0-3.785 2.045-6.316 5.011-6.316 2.979 0 5.005 2.557 5.011 6.316zm6.928 6.75c2.314 0 4.065-2.193 4.065-5.088 0-2.89-1.758-5.089-4.065-5.089-2.314 0-4.065 2.193-4.065 5.089 0 2.895 1.751 5.087 4.065 5.087zm0-.41c-2.084 0-3.656-2.013-3.656-4.678 0-2.653 1.585-4.68 3.656-4.68 2.077 0 3.656 2.02 3.656 4.68 0 2.665-1.572 4.679-3.656 4.679zm7.253.205h.409v-5.65h3.426c.282 0 .557-.026.819-.07l3.093 5.72h.461l-3.145-5.817c1.527-.447 2.531-1.751 2.531-3.541 0-2.244-1.56-3.733-3.759-3.733h-3.835V68zm.409-6.06v-6.622h3.426c1.963 0 3.35 1.317 3.35 3.324 0 1.994-1.387 3.298-3.35 3.298h-3.426zM178.698 68h.409v-6.597c0-1.713 1.253-2.94 2.991-2.94h.205v-.409h-.205c-1.355 0-2.48.665-2.94 1.688h-.051v-1.56h-.409V68zm13.166-9.818h.409c-.128-2.02-1.643-3.477-3.887-3.477-2.237 0-3.886 1.444-3.886 3.375 0 1.514 1.01 2.576 3.068 3.221l1.483.46c2.116.659 2.992 1.509 2.992 2.915 0 1.854-1.509 3.12-3.759 3.12-2.16 0-3.554-1.17-3.682-2.864h-.409c.128 1.924 1.7 3.272 4.091 3.272 2.48 0 4.168-1.476 4.168-3.528 0-1.61-1.036-2.627-3.299-3.324l-1.483-.46c-1.879-.575-2.761-1.483-2.761-2.813 0-1.719 1.477-2.965 3.477-2.965 2.027 0 3.35 1.278 3.478 3.068zm9.589 2.07c-.479-1.47-1.502-2.224-3.017-2.224-1.79 0-3.042 1.042-3.042 2.583 0 1.227.792 2.103 2.301 2.48l1.534.383c1.259.314 1.892 1.03 1.892 2.046 0 1.368-1.157 2.276-2.864 2.276-1.559 0-2.525-.755-2.812-2.148l-.409.102c.332 1.566 1.476 2.454 3.221 2.454 1.924 0 3.273-1.08 3.273-2.684 0-1.208-.761-2.097-2.199-2.455l-1.534-.383c-1.336-.333-1.994-1.042-1.994-2.071 0-1.304 1.067-2.173 2.633-2.173 1.349 0 2.206.639 2.608 1.917l.409-.102zM4.577 76.91h-.563l-2.736 1.815v.486l2.813-1.866h.077V90h.409V76.91zM8.992 90h7.9v-.41h-7.26v-.05l3.86-4.577c2.013-2.384 2.633-3.407 2.633-4.858 0-1.943-1.457-3.375-3.426-3.375-2.045 0-3.477 1.553-3.477 3.452h.41c0-1.669 1.252-3.043 3.067-3.043 1.739 0 3.017 1.253 3.017 2.966 0 1.304-.562 2.276-2.53 4.602l-4.194 4.96V90zm15.092.179c2.288 0 3.886-1.566 3.886-3.58 0-1.662-1.1-2.914-2.813-3.349v-.051c1.483-.422 2.43-1.585 2.43-3.12 0-1.917-1.47-3.349-3.529-3.349-2.058 0-3.554 1.432-3.554 3.452h.41c0-1.79 1.316-3.043 3.144-3.043 1.847 0 3.12 1.26 3.12 2.94 0 1.816-1.515 2.967-3.478 2.967h-.204v.408h.204c2.237 0 3.86 1.266 3.86 3.145 0 1.745-1.399 3.17-3.476 3.17-1.963 0-3.478-1.278-3.478-3.042h-.409c0 1.995 1.675 3.452 3.887 3.452zm6.794-3.247h6.009V90h.409v-3.068h1.636v-.41h-1.636V76.91h-.41l-6.008 9.716v.307zm6.009-.41h-5.42v-.05l5.369-8.72h.05v8.77zm8.327 3.657c2.263 0 3.874-1.815 3.886-4.244.013-2.532-1.802-4.194-3.911-4.194a3.73 3.73 0 00-2.583.998h-.051l.665-5.42h5.446v-.41h-5.804l-.767 6.188.614.102a3.422 3.422 0 012.48-1.048c1.879 0 3.49 1.457 3.502 3.784.013 2.173-1.419 3.835-3.477 3.835-1.828 0-3.055-1.253-3.042-3.043h-.41c-.012 2.02 1.42 3.452 3.452 3.452zm10.667 0c2.199 0 3.682-1.918 3.682-4.09 0-2.328-1.7-4.092-3.759-4.092-1.515 0-2.934.946-3.35 2.25h-.05c0-4.59 1.214-7.108 3.605-7.108 1.72 0 2.787 1.247 2.914 3.043h.41c-.128-2.046-1.381-3.452-3.324-3.452-3.152 0-4.014 3.81-4.014 7.338 0 4.117 1.661 6.111 3.886 6.111zm0-.41c-1.617 0-2.838-1.2-3.273-3.502a3.235 3.235 0 013.17-3.86c1.893 0 3.376 1.61 3.376 3.681 0 2.02-1.381 3.682-3.273 3.682zm7.101.231h.46l6.214-12.682v-.409h-7.594v.41h7.108v.05L62.982 90zm13.032.179c2.25 0 4.066-1.585 4.066-3.554 0-1.56-1.151-3.023-2.762-3.375v-.051c1.38-.46 2.327-1.72 2.327-3.145 0-1.873-1.65-3.324-3.63-3.324-2.008 0-3.632 1.464-3.632 3.324 0 1.438.972 2.678 2.327 3.145v.051c-1.61.37-2.761 1.815-2.761 3.375 0 1.969 1.815 3.554 4.065 3.554zm0-.41c-2.039 0-3.656-1.43-3.656-3.17 0-1.738 1.61-3.17 3.656-3.17 2.046 0 3.657 1.432 3.657 3.17 0 1.74-1.611 3.17-3.657 3.17zm0-6.698c-1.77 0-3.221-1.387-3.221-3.017 0-1.636 1.45-2.915 3.221-2.915 1.77 0 3.222 1.279 3.222 2.915 0 1.63-1.451 3.017-3.222 3.017zm10.565-6.367c-2.2 0-3.682 1.918-3.682 4.092 0 2.326 1.687 4.09 3.758 4.09 1.509 0 2.94-.946 3.35-2.25h.05c0 4.603-1.226 7.134-3.604 7.134-1.713 0-2.787-1.278-2.915-3.068h-.409c.128 2.045 1.38 3.477 3.324 3.477 3.17 0 4.014-3.835 4.014-7.364 0-4.116-1.662-6.11-3.886-6.11zm0 .41c1.61 0 2.838 1.201 3.272 3.502.384 2.046-1.176 3.861-3.17 3.861-1.892 0-3.375-1.61-3.375-3.681 0-2.02 1.38-3.682 3.273-3.682zm10.655 13.065c2.493 0 4.014-2.557 4.014-6.725 0-4.167-1.52-6.724-4.014-6.724-2.493 0-4.014 2.557-4.014 6.724 0 4.168 1.521 6.725 4.014 6.725zm0-.41c-2.23 0-3.605-2.377-3.605-6.315 0-3.937 1.374-6.315 3.605-6.315s3.605 2.378 3.605 6.316c0 3.937-1.374 6.315-3.605 6.315zm12.936-12.86h-.409v9.205h.409v-9.205zm-.204 13.168c.255 0 .46-.205.46-.46a.459.459 0 00-.46-.46.459.459 0 00-.461.46c0 .255.205.46.461.46zm6.091-3.963h.409v-.895c0-1.036.339-1.573 1.56-2.455 1.393-1.003 1.892-1.758 1.892-2.838 0-1.847-1.451-3.196-3.324-3.196-1.962 0-3.426 1.483-3.426 3.452h.409c0-1.739 1.278-3.043 3.017-3.043 1.649 0 2.915 1.164 2.915 2.787 0 .927-.416 1.592-1.713 2.506-1.317.927-1.739 1.61-1.739 2.787v.895zm.205 3.963c.255 0 .46-.205.46-.46a.459.459 0 00-.46-.46.459.459 0 00-.461.46c0 .255.205.46.461.46zm6.772-6.623c0 2.736.665 5.549 1.892 8.182h.435c-1.259-2.633-1.918-5.42-1.918-8.181 0-2.743.646-5.536 1.918-8.182h-.435c-1.227 2.608-1.892 5.42-1.892 8.181zm7.161 0c0-2.735-.665-5.548-1.892-8.181h-.435c1.259 2.633 1.918 5.42 1.918 8.181 0 2.743-.646 5.536-1.918 8.182h.435c1.227-2.608 1.892-5.42 1.892-8.181zm4.348 8.182h2.25v-.409h-1.841V75.682h1.841v-.41h-2.25v16.364zm6.854-16.363h-2.25v.409h1.841v15.545h-1.841v.41h2.25V75.272zm3.428 8.386c1.476.006 1.892.428 1.892 1.892v3.35c0 1.853.747 2.742 2.326 2.735v-.409c-1.336.007-1.917-.69-1.917-2.326v-3.35c0-1.106-.256-1.745-.921-2.058v-.07c.665-.314.921-.953.921-2.065v-3.35c0-1.636.581-2.333 1.917-2.326v-.41c-1.579-.006-2.326.883-2.326 2.736v3.35c0 1.464-.416 1.886-1.892 1.892v.41zm9.001-.409c-1.476-.006-1.892-.428-1.892-1.892v-3.35c0-1.853-.748-2.742-2.327-2.735v.409c1.336-.007 1.918.69 1.918 2.326v3.35c0 1.106.256 1.745.92 2.058v.07c-.664.314-.92.953-.92 2.065v3.35c0 1.636-.582 2.333-1.918 2.326v.41c1.579.006 2.327-.883 2.327-2.736v-3.35c0-1.464.416-1.886 1.892-1.892v-.409zm9.615 8.233c1.483 0 2.915-.46 4.142-1.33l-.255-.332a6.646 6.646 0 01-3.887 1.253c-3.937 0-7.133-3.4-7.133-7.62 0-4.218 3.196-7.619 7.133-7.619 3.912 0 7.108 3.4 7.108 7.62 0 2.096-1.15 3.656-2.71 3.656-.767 0-.971-.307-.971-1.56v-6.213h-.41v2.046h-.051c-.613-1.305-1.789-2.174-3.145-2.174-2.019 0-3.63 1.892-3.63 4.245 0 2.352 1.611 4.244 3.63 4.244 1.356 0 2.532-.87 3.145-2.148h.051c0 1.457.358 1.969 1.381 1.969 1.815 0 3.119-1.739 3.119-4.066 0-4.448-3.375-8.028-7.517-8.028-4.167 0-7.542 3.58-7.542 8.028 0 4.424 3.375 8.029 7.542 8.029zm-.179-4.193c-1.764 0-3.221-1.713-3.221-3.836 0-2.122 1.457-3.835 3.221-3.835 1.765 0 3.196 1.713 3.196 3.835 0 2.136-1.425 3.836-3.196 3.836zm13.918 4.346h.409v-1.438c2.339-.096 3.912-1.54 3.912-3.522 0-1.61-1.036-2.627-3.299-3.324l-.613-.192v-6.046c1.936.064 3.202 1.323 3.323 3.068h.41c-.128-1.975-1.573-3.407-3.733-3.478v-1.431h-.409v1.438c-2.103.109-3.631 1.515-3.631 3.368 0 1.516 1.01 2.577 3.068 3.222l.563.173v6.322c-2.072-.058-3.401-1.209-3.529-2.864h-.409c.128 1.885 1.636 3.215 3.938 3.272v1.432zm.409-1.847v-6.187l.511.16c2.116.658 2.991 1.508 2.991 2.914 0 1.784-1.393 3.024-3.502 3.113zm-.409-6.756l-.461-.141c-1.879-.575-2.761-1.483-2.761-2.813 0-1.642 1.355-2.857 3.222-2.959v5.913zM189.607 90h.409l.665-4.065h2.378l.077-.41h-2.385l.678-4.142h2.371l.077-.409h-2.378l.665-4.065h-.409l-.665 4.065h-4.193l.665-4.065h-.409l-.665 4.065h-2.378l-.077.41h2.385l-.678 4.142h-2.371l-.077.409h2.378L185.005 90h.409l.665-4.065h4.193L189.607 90zm-3.458-4.474l.678-4.142h4.193l-.678 4.142h-4.193zm9.574-5.83c0 1.528.933 2.557 2.148 2.557 1.214 0 2.147-1.03 2.147-2.557v-.41c0-1.527-.933-2.556-2.147-2.556-1.215 0-2.148 1.03-2.148 2.557v.409zm6.75 7.926c0 1.528.933 2.557 2.148 2.557 1.214 0 2.147-1.03 2.147-2.557v-.409c0-1.528-.933-2.557-2.147-2.557-1.215 0-2.148 1.03-2.148 2.557v.41zm.409-.409c0-1.304.761-2.148 1.739-2.148.978 0 1.738.844 1.738 2.148v.41c0 1.303-.76 2.147-1.738 2.147s-1.739-.844-1.739-2.148v-.409zm-6.75-7.926c0-1.304.761-2.148 1.739-2.148.978 0 1.738.844 1.738 2.148v.409c0 1.304-.76 2.148-1.738 2.148s-1.739-.844-1.739-2.148v-.41zM196.515 90h.486l8.975-13.09h-.486L196.515 90zM.205 112l2.32-4.423h5.887L9.256 112h.434L7.185 98.91h-.563L-.23 112h.435zm2.53-4.832l4.066-7.748h.051l1.483 7.748h-5.6zm11.706 5.037c1.483 0 2.838-.87 3.656-2.199h.052L17.816 112h.41l1.175-7.057c.282-1.662-.715-2.915-2.71-2.915-1.534 0-2.94.767-3.605 1.995l.358.153c.588-1.074 1.866-1.738 3.247-1.738 1.688 0 2.557.997 2.301 2.505l-.102.588c-.128.767-1.432.921-2.812 1.074-3.069.358-3.938 1.406-4.168 2.736-.281 1.841.92 2.864 2.531 2.864zm0-.41c-1.457 0-2.352-.971-2.122-2.454.23-1.253 1.176-2.046 3.86-2.352 1.126-.128 2.046-.307 2.583-.665l-.255 1.483c-.384 2.378-2.2 3.988-4.066 3.988zm7.616.205h4.526c2.25 0 3.81-1.33 4.142-3.349.307-1.816-.563-3.145-1.969-3.273v-.051c1.33-.333 2.25-1.56 2.506-3.094.358-2.071-.742-3.324-2.94-3.324H24.23L22.057 112zm.486-.409l.997-6.034h4.117c1.84 0 2.966 1.278 2.659 3.094-.307 1.764-1.739 2.94-3.656 2.94h-4.117zm1.074-6.443l.946-5.83h3.682c1.918 0 2.915 1.048 2.608 2.915-.256 1.56-1.355 2.915-3.12 2.915h-4.116zM33.589 112h.409l.409-2.455h.05c.257 1.637 1.305 2.66 2.89 2.66 2.327 0 4.142-2.199 4.628-5.089.486-2.889-.64-5.088-2.94-5.088-1.56 0-2.992 1.023-3.759 2.66h-.051l.946-5.779h-.41L33.59 112zm1.227-4.884c.434-2.659 2.148-4.678 4.219-4.678 2.07 0 2.966 2.019 2.53 4.678-.434 2.66-2.147 4.679-4.218 4.679-2.096 0-2.966-2.019-2.531-4.679zM47.773 112c3.835 0 6.468-2.429 7.184-6.597.69-4.065-1.074-6.494-4.679-6.494H46.52L44.346 112h3.427zm-2.947-.409l2.032-12.273h3.344c3.47 0 4.973 2.199 4.346 6.085-.614 3.81-3.138 6.188-6.699 6.188h-3.023zm15.251.614c1.566 0 2.953-1.036 3.759-2.66h.05L63.479 112h.409l2.173-13.09h-.409l-.959 5.778h-.05c-.244-1.637-1.324-2.66-2.89-2.66-2.295 0-4.142 2.199-4.628 5.088-.473 2.902.62 5.089 2.953 5.089zm0-.41c-2.084 0-2.978-2.019-2.544-4.679.448-2.659 2.148-4.678 4.219-4.678s2.979 2.019 2.531 4.678c-.434 2.66-2.122 4.679-4.206 4.679zm7.894.205h7.16l.076-.409h-6.75l.972-5.932h6.187l.077-.409h-6.188l.972-5.932h6.571l.077-.409h-6.98L67.97 112zm13.862.205c1.917 0 3.17-1.202 3.707-1.944l-.281-.23c-.46.588-1.611 1.764-3.4 1.764-2.462 0-3.465-2.147-3.05-4.704h7.677l.077-.409c.409-2.531-.972-4.654-3.248-4.654-2.326 0-4.423 2.199-4.909 5.088-.485 2.89.844 5.089 3.427 5.089zm-2.922-5.523c.582-2.442 2.474-4.244 4.404-4.244 1.995 0 3.222 1.892 2.839 4.244H78.91zm20.7-3.682h.409c.012-1.866-1.196-4.27-4.296-4.27-3.215 0-5.868 2.71-6.52 6.725-.677 4.014 1.023 6.724 4.347 6.724 2.94 0 5.414-2.122 6.008-5.702l.077-.409h-4.935l-.076.409h4.525c-.556 3.292-2.87 5.293-5.523 5.293-3.164 0-4.653-2.506-4.014-6.315.684-4.047 3.375-6.316 6.034-6.316 2.8 0 3.957 2.02 3.963 3.861zm4.953 12.886c2.276 0 3.836-1.252 4.245-3.681l1.662-10.023h-.41l-.409 2.506h-.051c-.281-1.637-1.304-2.66-2.889-2.66-2.327 0-4.142 2.174-4.628 5.088-.486 2.89.665 4.884 2.966 4.884 1.457 0 2.966-.818 3.733-2.455h.051l-.434 2.66c-.358 2.198-1.79 3.272-3.836 3.272-1.483 0-2.531-.537-2.787-1.687l-.383.128c.281 1.304 1.534 1.968 3.17 1.968zm.486-4.295c-2.071 0-2.991-1.815-2.557-4.475.435-2.659 2.122-4.678 4.193-4.678 2.097 0 2.992 2.019 2.557 4.678-.46 2.762-2.147 4.475-4.193 4.475zm9.796-12.682L112.673 112h.409l1.968-11.812h.052L118.195 112h.409l7.032-11.812h.051L123.718 112h.409l2.173-13.09h-.358l-7.414 12.476h-.051l-3.273-12.477h-.358zM127.905 112h.409l1.099-6.597c.282-1.713 1.483-2.94 3.222-2.94 1.739 0 2.224 1.202 1.943 2.94L133.479 112h.409l1.099-6.597c.281-1.713 1.483-2.94 3.222-2.94 1.738 0 2.224 1.202 1.943 2.94L139.053 112h.409l1.099-6.597c.332-1.968-.358-3.349-2.327-3.349-1.483 0-2.659.793-3.17 2.02h-.051c-.154-1.227-.87-2.02-2.352-2.02-1.304 0-2.378.639-2.915 1.585h-.051l.255-1.457h-.409L127.905 112zm26.509-6.545c.684-4.021-1.086-6.725-4.295-6.725-3.222 0-5.868 2.723-6.546 6.725-.645 3.988 1.036 6.724 4.321 6.724 3.216 0 5.868-2.717 6.52-6.724zm-.409 0c-.594 3.745-3.1 6.315-6.136 6.315-2.998 0-4.519-2.519-3.887-6.315.659-3.772 3.152-6.316 6.162-6.316 2.953 0 4.494 2.506 3.861 6.316zm5.854 6.75c2.301 0 4.397-2.174 4.883-5.037.46-2.915-.92-5.14-3.273-5.14-2.275 0-4.372 2.174-4.857 5.037-.486 2.941.92 5.14 3.247 5.14zm0-.41c-2.046 0-3.299-1.994-2.838-4.627.434-2.685 2.377-4.73 4.474-4.73 2.045 0 3.273 1.994 2.838 4.627-.435 2.711-2.352 4.73-4.474 4.73zm7.253.205h.409l.933-5.651h3.439c.294 0 .576-.025.85-.076l2.142 5.727h.434l-2.173-5.823c1.598-.448 2.813-1.752 3.119-3.535.358-2.25-.946-3.733-3.144-3.733h-3.836L167.112 112zm1.413-6.06l1.093-6.622h3.426c1.969 0 3.145 1.304 2.812 3.324-.332 1.994-1.943 3.298-3.912 3.298h-3.419zm9.354 6.06h.41l1.099-6.597a3.495 3.495 0 013.477-2.94h.205l.076-.409h-.204c-1.355 0-2.608.665-3.222 1.687h-.051l.256-1.559h-.409L177.879 112zm14.803-9.818h.409c.198-2.02-1.074-3.478-3.324-3.478-2.269 0-4.123 1.394-4.449 3.376-.249 1.508.582 2.569 2.531 3.196l1.432.46c2.001.645 2.736 1.534 2.506 2.94-.307 1.841-2.014 3.119-4.27 3.119-2.167 0-3.375-1.169-3.222-2.863h-.409c-.191 1.924 1.17 3.273 3.554 3.273 2.583 0 4.404-1.413 4.756-3.529.268-1.617-.607-2.627-2.761-3.324l-1.407-.46c-1.777-.575-2.524-1.489-2.301-2.812.288-1.707 1.995-2.966 3.989-2.966 2.033 0 3.126 1.278 2.966 3.068zm9.232 2.071c-.231-1.458-1.145-2.225-2.685-2.225-1.784 0-3.171 1.01-3.426 2.532-.205 1.24.46 2.147 1.917 2.531l1.458.383c1.201.307 1.719.991 1.559 1.995-.223 1.374-1.559 2.326-3.298 2.326-1.534 0-2.378-.741-2.429-2.122l-.409.051c.077 1.586 1.08 2.481 2.838 2.481 1.924 0 3.42-1.036 3.682-2.634.198-1.214-.409-2.148-1.79-2.506l-1.483-.383c-1.278-.333-1.802-1.004-1.636-2.02.217-1.31 1.438-2.224 3.042-2.224 1.311 0 2.046.613 2.25 1.892l.41-.077zM5.932 120.909h-.563l-3.042 1.815-.077.486 3.12-1.866h.076L3.349 134h.41l2.173-13.091zM8.174 134h7.9l.077-.409H8.89v-.051l4.628-4.577c2.403-2.378 3.196-3.401 3.426-4.858.332-1.943-.895-3.375-2.864-3.375-2.045 0-3.733 1.56-4.04 3.452h.41c.28-1.662 1.815-3.043 3.63-3.043 1.739 0 2.736 1.253 2.455 2.966-.205 1.304-.92 2.276-3.299 4.602l-5.011 4.961-.051.332zm15.066.179c2.301 0 4.142-1.56 4.474-3.58.282-1.661-.613-2.914-2.25-3.349v-.051c1.56-.435 2.71-1.585 2.94-3.119.333-1.918-.894-3.35-2.965-3.35-2.046 0-3.784 1.432-4.117 3.452h.41c.28-1.79 1.917-3.043 3.732-3.043 1.867 0 2.813 1.253 2.532 2.941-.282 1.815-1.995 2.965-3.963 2.965h-.205l-.051.41h.204c2.225 0 3.631 1.252 3.324 3.144-.281 1.739-1.994 3.171-4.065 3.171-1.969 0-3.196-1.279-2.915-3.043h-.409c-.332 1.995 1.125 3.452 3.324 3.452zm7.332-3.247h6.015L36.069 134h.409l.511-3.068h1.637l.076-.409h-1.649l1.598-9.614h-.409l-7.62 9.716-.05.307zm6.085-.409h-5.42v-.051l6.826-8.719h.038l-1.444 8.77zm7.713 3.656c2.263 0 4.174-1.815 4.603-4.244.447-2.525-1.113-4.194-3.222-4.194a4.342 4.342 0 00-2.761.998h-.051l1.56-5.421h5.445l.077-.409h-5.804l-1.79 6.188.588.102c.703-.614 1.7-1.048 2.736-1.048 1.88 0 3.183 1.457 2.813 3.784-.346 2.16-2.155 3.835-4.194 3.835-1.828 0-2.774-1.253-2.48-3.043h-.409c-.345 2.02.857 3.452 2.89 3.452zm10.667 0c2.199 0 3.989-1.918 4.372-4.091.384-2.327-1.023-4.091-3.093-4.091-1.509 0-3.094.946-3.733 2.25h-.052c.767-4.602 2.48-7.108 4.884-7.108 1.713 0 2.48 1.253 2.327 3.043h.409c.204-2.046-.818-3.452-2.762-3.452-3.17 0-4.653 3.81-5.216 7.338-.69 4.117.64 6.111 2.864 6.111zm0-.409c-1.636 0-2.582-1.202-2.633-3.503-.026-2.045 1.892-3.861 3.886-3.861 1.892 0 3.043 1.611 2.71 3.682-.358 2.02-2.07 3.682-3.963 3.682zm7.127.23h.46l8.31-12.682.077-.409h-7.594l-.077.409h7.108v.051L62.164 134zm13.007.179c2.25 0 4.32-1.585 4.653-3.554.255-1.56-.64-3.017-2.199-3.375v-.051c1.457-.46 2.608-1.713 2.864-3.145.306-1.866-1.1-3.324-3.094-3.324-1.994 0-3.86 1.458-4.168 3.324-.255 1.432.512 2.685 1.79 3.145v.051c-1.662.358-3.068 1.815-3.324 3.375-.332 1.969 1.228 3.554 3.478 3.554zm-.026-.409c-2.046 0-3.324-1.432-3.043-3.171.281-1.738 2.276-3.17 4.321-3.17 2.046 0 3.273 1.432 2.992 3.17-.282 1.739-2.225 3.171-4.27 3.171zm1.1-6.699c-1.765 0-2.89-1.381-2.609-3.017.256-1.636 2.02-2.915 3.785-2.915 1.79 0 2.914 1.279 2.658 2.915-.28 1.636-2.07 3.017-3.835 3.017zm11.74-6.366c-2.199 0-3.989 1.917-4.372 4.09-.41 2.321 1.022 4.091 3.094 4.091 1.508 0 3.093-.946 3.733-2.25h.05c-.766 4.603-2.48 7.134-4.883 7.134-1.713 0-2.48-1.279-2.327-3.068h-.409c-.204 2.045.819 3.477 2.762 3.477 3.17 0 4.653-3.835 5.216-7.364.658-4.123-.64-6.11-2.864-6.11zm0 .409c1.636 0 2.582 1.201 2.633 3.502.045 2.046-1.892 3.861-3.886 3.861-1.892 0-3.043-1.611-2.71-3.682.326-2.026 2.07-3.681 3.963-3.681zm8.38 13.065c2.493 0 4.449-2.557 5.139-6.724.69-4.168-.422-6.725-2.915-6.725s-4.423 2.57-5.113 6.725c-.69 4.18.396 6.724 2.889 6.724zm.025-.409c-2.288 0-3.144-2.474-2.505-6.315.664-4.034 2.493-6.316 4.704-6.316 2.263 0 3.139 2.487 2.506 6.316-.671 4.046-2.519 6.315-4.705 6.315zm15.135-12.861h-.409l-1.534 9.205h.409l1.534-9.205zm-2.352 13.168a.523.523 0 00.511-.461.403.403 0 00-.409-.46.523.523 0 00-.511.46.404.404 0 00.409.461zm6.731-3.963h.409l.153-.895c.173-1.061.601-1.598 1.943-2.455 1.56-1.003 2.18-1.483 2.378-2.838.256-1.764-.882-3.196-2.787-3.196-1.968 0-3.688 1.477-4.014 3.452h.409c.281-1.637 1.809-3.043 3.605-3.043 1.624 0 2.608 1.138 2.378 2.787-.16 1.144-.78 1.592-2.173 2.48-1.413.895-1.95 1.598-2.148 2.813l-.153.895zm-.409 3.963a.524.524 0 00.511-.461.403.403 0 00-.409-.46.522.522 0 00-.511.46.404.404 0 00.409.461zm7.795-6.622a18.06 18.06 0 00.537 8.181h.434a17.7 17.7 0 01-.562-8.181c.46-2.736 1.56-5.549 3.273-8.182h-.435c-1.662 2.608-2.787 5.42-3.247 8.182zm7.16 0a18.064 18.064 0 00-.536-8.182h-.435a17.69 17.69 0 01.562 8.182c-.46 2.735-1.559 5.548-3.272 8.181h.434c1.662-2.608 2.787-5.42 3.247-8.181zm3.019 8.181h2.25l.077-.409h-1.841l2.557-15.545h1.841l.076-.409h-2.25l-2.71 16.363zm9.564-16.363h-2.25l-.077.409h1.841l-2.556 15.545h-1.841l-.077.409h2.25l2.71-16.363zm2.047 8.386c1.458 0 1.816.435 1.56 1.892l-.537 3.35c-.307 1.866.281 2.735 1.866 2.735l.077-.409c-1.355 0-1.815-.69-1.534-2.326l.537-3.35c.185-1.106.038-1.751-.569-2.064l.013-.058c.716-.313 1.087-.959 1.272-2.071l.537-3.349c.281-1.637.971-2.327 2.301-2.327l.077-.409c-1.586 0-2.48.869-2.787 2.736l-.537 3.349c-.256 1.457-.742 1.892-2.225 1.892h-.025l-.051.409h.025zm9.053-.409c-1.457 0-1.815-.435-1.56-1.892l.537-3.349c.307-1.867-.281-2.736-1.866-2.736l-.077.409c1.355 0 1.815.69 1.534 2.327l-.537 3.349c-.185 1.106-.038 1.751.569 2.065l-.013.057c-.716.313-1.086.959-1.272 2.071l-.537 3.35c-.281 1.636-.971 2.326-2.301 2.326l-.076.409c1.585 0 2.48-.869 2.786-2.735l.537-3.35c.256-1.457.742-1.892 2.225-1.892h.025l.052-.409h-.026zm8.26 8.233c1.483 0 2.992-.46 4.347-1.33l-.205-.332c-1.278.818-2.736 1.253-4.142 1.253-3.937 0-6.52-3.401-5.804-7.619.69-4.219 4.526-7.62 8.463-7.62 3.912 0 6.469 3.401 5.779 7.62-.358 2.096-1.79 3.656-3.35 3.656-.767 0-.895-.307-.69-1.56l1.048-6.264h-.409l-.358 2.097h-.051c-.384-1.304-1.432-2.174-2.787-2.174-2.02 0-3.937 1.892-4.321 4.245-.409 2.352.895 4.244 2.915 4.244 1.355 0 2.684-.869 3.503-2.148h.051c-.23 1.458.025 1.969 1.048 1.969 1.815 0 3.426-1.739 3.81-4.065.716-4.449-2.046-8.029-6.188-8.029-4.167 0-8.156 3.58-8.872 8.029-.741 4.423 2.045 8.028 6.213 8.028zm.435-4.193c-1.764 0-2.864-1.713-2.506-3.835.332-2.123 2.148-3.836 3.912-3.836 1.764 0 2.838 1.713 2.506 3.836-.358 2.122-2.148 3.835-3.912 3.835zm13.278 4.346h.409l.236-1.438c2.442-.089 4.155-1.476 4.494-3.522.268-1.617-.607-2.627-2.762-3.324l-.568-.185 1.003-6.053c1.937.064 2.966 1.323 2.813 3.068h.409c.191-1.969-1.01-3.401-3.152-3.477l.237-1.432h-.409l-.237 1.438c-2.16.089-3.899 1.457-4.212 3.369-.249 1.508.582 2.569 2.531 3.196l.563.179-1.049 6.34c-2.071-.057-3.215-1.208-3.068-2.863h-.409c-.185 1.885 1.112 3.215 3.407 3.273l-.236 1.431zm.716-1.847l1.029-6.207.479.154c2.001.645 2.736 1.534 2.506 2.94-.294 1.771-1.886 3.024-4.014 3.113zm.709-6.75l-.454-.147c-1.777-.575-2.525-1.489-2.301-2.812.275-1.637 1.854-2.858 3.733-2.96l-.978 5.919zm12.23 6.961h.409l.741-4.065h2.378l.077-.409h-2.384l.754-4.142h2.371l.09-.41h-2.391l.742-4.065h-.41l-.741 4.065h-4.193l.741-4.065h-.409l-.741 4.065h-2.365l-.09.41h2.384l-.754 4.142h-2.371l-.077.409h2.378l-.742 4.065h.409l.742-4.065h4.193l-.741 4.065zm-3.382-4.474l.755-4.142h4.193l-.755 4.142h-4.193zm15.685 2.096c-.256 1.534.511 2.557 1.713 2.557 1.227 0 2.327-1.023 2.582-2.557l.051-.409c.256-1.534-.511-2.557-1.713-2.557-1.227 0-2.326 1.023-2.582 2.557l-.051.409zm-5.446-7.926c-.256 1.534.511 2.557 1.713 2.557 1.227 0 2.326-1.023 2.582-2.557l.077-.409c.23-1.534-.511-2.557-1.739-2.557-1.201 0-2.326 1.023-2.557 2.557l-.076.409zm5.906 7.517c.23-1.304 1.125-2.148 2.097-2.148.971 0 1.61.844 1.38 2.148l-.051.409c-.23 1.304-1.125 2.148-2.096 2.148-.998 0-1.611-.844-1.381-2.148l.051-.409zm-5.42-7.926c.204-1.304 1.099-2.148 2.071-2.148.997 0 1.61.844 1.406 2.148l-.077.409c-.23 1.304-1.125 2.148-2.097 2.148-.971 0-1.61-.844-1.38-2.148l.077-.409zM196.26 134h.511l9.997-13.091h-.511L196.26 134zm122.127-66l1.496-4.187h5.689L327.067 68h.844l-4.723-13.09h-.921L317.543 68h.844zm1.758-4.928l2.55-7.134h.064l2.551 7.134h-5.165zm12.535 5.139c1.559 0 2.659-.882 3.17-1.982h.058V68h.78v-6.859c0-2.147-1.599-3.106-3.344-3.106-1.514 0-2.933.684-3.496 2.096l.735.275c.384-.971 1.381-1.655 2.781-1.655 1.585 0 2.544.914 2.544 2.34v.408c0 .755-1.1.831-2.596 1.01-2.62.32-3.745 1.15-3.745 2.787 0 1.867 1.419 2.915 3.113 2.915zm.076-.722c-1.374 0-2.409-.825-2.409-2.167 0-1.215.894-1.867 3.042-2.122.959-.11 2.11-.288 2.519-.627v1.445c0 1.994-1.311 3.47-3.152 3.47zm7.476.511h4.596c2.531 0 3.841-1.387 3.841-3.394 0-1.905-1.201-3.164-2.55-3.273v-.077c1.221-.313 2.039-1.38 2.039-2.972 0-2.013-1.298-3.375-3.675-3.375h-4.251V68zm.799-.742v-5.541h3.822c1.803 0 3.043 1.24 3.043 2.889 0 1.56-1.099 2.653-3.068 2.653h-3.797zm0-6.27V55.65h3.452c1.853 0 2.902 1.01 2.902 2.633 0 1.502-.959 2.704-2.628 2.704h-3.726zM351.816 68h.761v-2.141h.089c.467 1.265 1.489 2.346 3.17 2.346 2.366 0 3.912-2.116 3.912-5.088 0-2.96-1.559-5.082-3.918-5.082-1.681 0-2.71 1.074-3.164 2.34h-.077v-5.466h-.773V68zm.767-4.89c0-2.506 1.195-4.346 3.19-4.346 2.019 0 3.202 1.879 3.202 4.346s-1.183 4.372-3.202 4.372c-1.995 0-3.19-1.86-3.19-4.372zM366.345 68c3.893 0 6.13-2.435 6.136-6.59.007-4.066-2.179-6.5-5.855-6.5h-3.912V68h3.631zm-2.832-.742V55.651h3.081c3.286 0 5.095 2.16 5.101 5.759.013 3.656-1.879 5.849-5.382 5.849h-2.8zm15.18.947c1.681 0 2.704-1.08 3.17-2.346h.096V68h.754V54.91h-.773v5.464h-.077c-.454-1.265-1.483-2.34-3.164-2.34-2.358 0-3.918 2.123-3.918 5.083 0 2.972 1.54 5.087 3.912 5.087zm.07-.723c-2.02 0-3.209-1.905-3.209-4.372 0-2.467 1.189-4.346 3.209-4.346 1.994 0 3.183 1.84 3.183 4.346 0 2.512-1.189 4.372-3.183 4.372zm7.735.518h7.44v-.742h-6.641v-5.44h6.098v-.74h-6.098V55.65h6.487v-.742h-7.286V68zm14.153.204c1.937 0 3.126-1.13 3.573-2.122l-.709-.287c-.365.728-1.266 1.687-2.864 1.687-2.231 0-3.567-1.802-3.599-4.218h7.492v-.486c0-2.915-1.879-4.743-4.078-4.743-2.436 0-4.187 2.167-4.187 5.1 0 2.928 1.707 5.07 4.372 5.07zm-3.586-5.65c.154-2.141 1.541-3.79 3.401-3.79 1.866 0 3.298 1.661 3.298 3.79h-6.699zM416.676 59h.818c-.371-2.09-2.173-4.27-5.133-4.27-3.285 0-5.522 2.66-5.522 6.725 0 4.052 2.218 6.724 5.593 6.724 2.998 0 5.152-2.11 5.152-5.574v-.741h-4.948v.741h4.168c-.019 3.004-1.841 4.807-4.372 4.807-2.877 0-4.807-2.333-4.807-5.958 0-3.656 1.956-5.957 4.736-5.957 2.423 0 3.919 1.739 4.315 3.503zm7.418 12.886c2.295 0 3.848-1.195 3.848-3.656V58.182h-.754v2.192h-.09c-.466-1.265-1.47-2.34-3.17-2.34-2.378 0-3.919 2.11-3.919 5.057 0 2.947 1.586 4.858 3.912 4.858 1.611 0 2.717-.92 3.171-2.193h.077v2.442c0 2.014-1.183 2.973-3.075 2.973-1.579 0-2.576-.684-3.004-1.637l-.652.384c.537 1.214 1.821 1.968 3.656 1.968zm-.102-4.66c-2.014 0-3.209-1.687-3.209-4.142 0-2.441 1.176-4.32 3.209-4.32 2 0 3.183 1.84 3.183 4.32 0 2.557-1.215 4.143-3.183 4.143zm7.506-12.317V68h.767V56.807h.076L437.078 68h.754l4.737-11.193h.076V68h.767V54.91h-.869L437.5 66.85h-.09l-5.043-11.94h-.869zM446.92 68h.78v-6.443c0-1.624.978-2.78 2.531-2.78 1.54 0 2.301 1.054 2.301 2.582V68h.78v-6.526c0-1.566.895-2.698 2.518-2.698 1.515 0 2.314.991 2.314 2.634V68h.78v-6.59c0-2.078-1.029-3.356-2.927-3.356-1.458 0-2.487.741-2.87 1.898h-.071c-.383-1.163-1.246-1.898-2.665-1.898-1.298 0-2.257.626-2.634 1.61h-.076v-1.482h-.761V68zm25.928-6.545c0-4.047-2.276-6.725-5.536-6.725-3.273 0-5.542 2.678-5.542 6.725 0 4.04 2.269 6.724 5.542 6.724 3.26 0 5.536-2.678 5.536-6.724zm-.78 0c0 3.637-1.982 5.957-4.756 5.957-2.8 0-4.756-2.333-4.756-5.958 0-3.656 1.982-5.957 4.756-5.957s4.749 2.32 4.756 5.958zm7.277 6.75c2.429 0 4.193-2.135 4.193-5.082s-1.77-5.088-4.193-5.088c-2.429 0-4.193 2.135-4.193 5.088 0 2.947 1.764 5.081 4.193 5.081zm0-.723c-2.064 0-3.42-1.924-3.42-4.36 0-2.422 1.368-4.358 3.42-4.358 2.058 0 3.42 1.93 3.42 4.359 0 2.435-1.355 4.36-3.42 4.36zm7.154.518h.799v-5.472h3.241c.23 0 .448-.012.665-.038l2.972 5.51h.921l-3.088-5.682c1.592-.493 2.512-1.816 2.512-3.58 0-2.27-1.502-3.829-3.988-3.829h-4.034V68zm.799-6.22v-6.13h3.216c2.013 0 3.215 1.221 3.215 3.088 0 1.854-1.202 3.043-3.209 3.043h-3.222zM497.439 68h.78v-6.469c0-1.585 1.183-2.73 2.819-2.73.205 0 .339.026.441.04v-.787c-.121-.006-.255-.006-.396-.006-1.298 0-2.391.664-2.813 1.668h-.07v-1.534h-.761V68zm13.467-9.818h.786c-.109-2.007-1.726-3.471-4.065-3.471-2.327 0-4.085 1.45-4.085 3.47 0 1.599 1.1 2.654 3.152 3.28l1.527.46c1.873.57 2.864 1.298 2.864 2.672 0 1.713-1.464 2.87-3.573 2.87-1.956 0-3.35-1.01-3.478-2.633h-.818c.141 2 1.764 3.38 4.296 3.38 2.659 0 4.359-1.533 4.359-3.61 0-1.893-1.47-2.832-3.426-3.42l-1.432-.422c-1.579-.473-2.685-1.247-2.685-2.602 0-1.566 1.368-2.704 3.28-2.704 1.879 0 3.164 1.106 3.298 2.73zm10.087 2.116c-.473-1.445-1.509-2.263-3.171-2.263-1.879 0-3.228 1.086-3.228 2.672 0 1.265.799 2.154 2.404 2.544l1.566.383c1.169.288 1.751.92 1.751 1.828 0 1.19-1.074 2.027-2.678 2.027-1.451 0-2.353-.678-2.634-1.963l-.748.192c.339 1.598 1.56 2.486 3.388 2.486 2.046 0 3.465-1.137 3.465-2.767 0-1.266-.793-2.142-2.34-2.525l-1.508-.377c-1.279-.313-1.892-.92-1.892-1.854 0-1.15 1.009-1.937 2.454-1.937 1.342 0 2.09.672 2.448 1.745l.723-.191zM322.037 76.909h-.901l-2.915 1.937v.856l2.94-1.95h.077V90h.799V76.91zM326.241 90h8.022v-.742h-6.871v-.07l3.554-4.097c2.09-2.39 2.729-3.452 2.729-4.903 0-1.969-1.521-3.458-3.598-3.458-2.129 0-3.663 1.553-3.663 3.586h.773c0-1.604 1.157-2.85 2.87-2.85 1.637 0 2.851 1.124 2.851 2.722 0 1.272-.613 2.218-2.429 4.321l-4.238 4.884V90zm15.159.179c2.371 0 4.065-1.573 4.065-3.63 0-1.663-1.061-2.903-2.755-3.28v-.07c1.432-.416 2.334-1.553 2.334-3.068 0-1.899-1.464-3.4-3.644-3.4-2.129 0-3.752 1.418-3.778 3.45h.787c.019-1.63 1.31-2.716 2.978-2.716 1.713 0 2.877 1.132 2.877 2.691 0 1.669-1.375 2.736-3.196 2.736h-.486v.742h.486c2.154 0 3.605 1.182 3.605 2.914 0 1.624-1.336 2.89-3.286 2.89-1.809 0-3.221-1.113-3.253-2.71h-.812c.032 2.013 1.758 3.451 4.078 3.451zm6.769-3.12h6.06V90h.78v-2.94h1.687v-.742h-1.687V76.91h-.914l-5.926 9.511v.64zm6.06-.74h-5.095v-.071l5.031-8.105h.064v8.175zm8.813 3.86c2.339 0 4.027-1.822 4.033-4.276.007-2.538-1.789-4.264-3.995-4.264-.997 0-1.866.365-2.48.914h-.064l.601-4.902h5.452v-.742h-6.136l-.773 6.27.901.129a3.6 3.6 0 012.41-.92c1.809.005 3.292 1.399 3.298 3.521.013 2.007-1.336 3.528-3.247 3.528-1.662 0-2.838-1.124-2.87-2.71h-.786c.025 2.014 1.553 3.452 3.656 3.452zm10.839 0c2.346.013 3.912-1.93 3.912-4.193 0-2.397-1.758-4.174-3.88-4.174-1.457 0-2.793.85-3.305 2.077h-.07c0-4.13 1.227-6.424 3.497-6.424 1.604 0 2.595 1.119 2.774 2.717h.792c-.191-2.052-1.54-3.458-3.566-3.458-3.088 0-4.264 3.407-4.264 7.312 0 4.353 1.911 6.137 4.11 6.143zm0-.742c-1.63 0-2.844-1.265-3.132-3.323-.249-1.892 1.202-3.56 3.081-3.56 1.796 0 3.177 1.508 3.177 3.432 0 1.898-1.33 3.451-3.126 3.451zm7.174.563h.863l6.085-12.324v-.767h-7.856v.742h6.987v.07L381.055 90zm13.287.179c2.372 0 4.187-1.566 4.193-3.586-.006-1.592-1.144-3.036-2.684-3.362v-.058c1.329-.415 2.224-1.655 2.23-3.068-.006-1.911-1.661-3.375-3.739-3.375-2.109 0-3.746 1.47-3.746 3.375a3.2 3.2 0 002.238 3.068v.058c-1.554.339-2.691 1.77-2.685 3.362-.006 2.02 1.809 3.586 4.193 3.586zm0-.742c-1.962 0-3.407-1.259-3.4-2.889-.007-1.649 1.476-2.96 3.4-2.96 1.911 0 3.394 1.311 3.401 2.96-.007 1.63-1.451 2.89-3.401 2.89zm0-6.539c-1.662 0-2.966-1.22-2.959-2.76-.007-1.535 1.284-2.673 2.959-2.673 1.662 0 2.953 1.138 2.953 2.672 0 1.54-1.304 2.761-2.953 2.761zm10.718-6.194c-2.352-.006-3.912 1.937-3.912 4.194 0 2.397 1.745 4.174 3.88 4.174 1.457 0 2.793-.85 3.305-2.078h.07c0 4.142-1.24 6.444-3.496 6.444-1.605 0-2.602-1.145-2.781-2.736h-.793c.192 2.052 1.547 3.477 3.574 3.477 3.093 0 4.263-3.426 4.263-7.332 0-4.353-1.911-6.136-4.11-6.142zm0 .742c1.617 0 2.838 1.272 3.126 3.324.255 1.886-1.208 3.56-3.075 3.56-1.796 0-3.177-1.508-3.177-3.432 0-1.899 1.33-3.452 3.126-3.452zm10.894 12.733c2.627 0 4.193-2.519 4.193-6.725 0-4.193-1.579-6.724-4.193-6.724-2.615 0-4.194 2.531-4.194 6.724 0 4.207 1.567 6.725 4.194 6.725zm0-.742c-2.123 0-3.407-2.224-3.407-5.983 0-3.758 1.291-5.989 3.407-5.989 2.115 0 3.407 2.231 3.407 5.99 0 3.758-1.285 5.983-3.407 5.983zm13.319-12.528h-.856l.044 9.275h.767l.045-9.275zm-.428 13.174c.377 0 .69-.307.69-.69a.696.696 0 00-.69-.69.692.692 0 00-.691.69c0 .383.307.69.691.69zm6-3.9h.787v-.626c.006-1.214.37-1.802 1.559-2.627 1.304-.895 1.854-1.726 1.854-2.92 0-1.893-1.451-3.28-3.452-3.28-1.994 0-3.522 1.413-3.554 3.452h.812c.032-1.662 1.234-2.736 2.742-2.736 1.502 0 2.672 1.042 2.672 2.538 0 .959-.473 1.642-1.585 2.403-1.298.876-1.828 1.579-1.835 3.17v.627zm.409 3.9a.692.692 0 00.691-.69.696.696 0 00-.691-.69.692.692 0 000 1.38zm6.814-6.629c0 2.896.729 5.67 2.071 8.182h.729c-1.246-2.32-2.007-5.324-2.007-8.181 0-2.845.754-5.856 2.007-8.182h-.729a17.187 17.187 0 00-2.071 8.181zm7.839 0c0-2.895-.729-5.67-2.071-8.181h-.729c1.246 2.32 2.007 5.324 2.007 8.181 0 2.845-.754 5.856-2.007 8.182h.729a17.187 17.187 0 002.071-8.181zm4.246 8.182h2.761v-.69h-2.007V75.963h2.007v-.69h-2.761v16.363zm7.505-16.363h-2.761v.69h2.007v14.983h-2.007v.69h2.761V75.273zm7.775 16.363v-.69c-1.387.006-1.931-.684-1.931-2.275v-3.088c0-1.112-.294-1.79-1.208-2.09v-.07c.914-.3 1.208-.978 1.208-2.097v-3.087c0-1.592.544-2.282 1.931-2.276v-.69c-1.892-.007-2.659.946-2.659 2.966v2.914c0 1.445-.441 1.905-1.905 1.912v.78c1.464.006 1.905.466 1.905 1.91v2.916c0 2.02.767 2.972 2.659 2.965zm.781-16.363v.69c1.387-.006 1.931.684 1.931 2.276v3.087c0 1.112.294 1.79 1.208 2.09v.07c-.914.3-1.208.978-1.208 2.097v3.088c0 1.591-.544 2.281-1.931 2.275v.69c1.892.007 2.659-.946 2.659-2.965v-2.915c0-1.445.441-1.905 1.905-1.912v-.78c-1.464-.006-1.905-.466-1.905-1.91v-2.915c0-2.02-.767-2.973-2.659-2.966zm14.167 16.23c1.425 0 2.933-.436 4.014-1.126l-.288-.614c-.92.595-2.301 1.055-3.707 1.055-4.085 0-6.987-3.087-6.987-7.344 0-4.238 2.921-7.358 6.884-7.358 3.963 0 6.731 3.222 6.731 6.987 0 2.371-.869 3.848-2.339 3.848-.767 0-1.042-.422-1.042-1.496V79.39h-.722v1.605h-.064c-.467-1.061-1.586-1.803-2.915-1.758-1.982.07-3.541 1.86-3.541 4.193 0 2.378 1.457 4.263 3.541 4.289 1.393.013 2.429-.805 2.94-1.905h.064c.051 1.343.748 1.81 1.726 1.81 2.116 0 3.068-2.13 3.068-4.507 0-4.136-3.068-7.67-7.421-7.67-4.423 0-7.651 3.38-7.651 8.008 0 4.673 3.196 8.048 7.709 8.048zm-.365-4.495c-1.732 0-2.895-1.642-2.895-3.605 0-1.91 1.252-3.477 2.914-3.477 1.688 0 2.915 1.349 2.915 3.477 0 2.129-1.182 3.605-2.934 3.605zm13.911 4.628h.62v-1.431c2.454-.135 4.008-1.624 4.008-3.606 0-1.892-1.47-2.831-3.426-3.42l-.582-.172V77.46c1.739.096 2.915 1.176 3.042 2.723h.787c-.103-1.937-1.617-3.369-3.829-3.465v-1.444h-.62v1.45c-2.135.154-3.701 1.554-3.701 3.459 0 1.598 1.099 2.653 3.151 3.279l.55.166v5.83c-1.815-.09-3.088-1.08-3.209-2.627h-.818c.134 1.93 1.649 3.279 4.027 3.374v1.432zm.62-2.186v-5.638l.358.11c1.873.568 2.863 1.297 2.863 2.671 0 1.617-1.304 2.736-3.221 2.857zm-.62-6.622l-.23-.07c-1.579-.473-2.685-1.247-2.685-2.602 0-1.464 1.195-2.557 2.915-2.69v5.362zM510.391 90h.697l.646-3.918h2.23l.116-.703h-2.231l.626-3.849h2.237l.122-.703h-2.244l.646-3.918h-.697l-.646 3.918h-3.905l.646-3.918h-.697l-.646 3.918h-2.224l-.122.704h2.231l-.626 3.848h-2.238l-.115.703h2.238L505.789 90h.697l.645-3.918h3.906L510.391 90zm-3.145-4.621l.627-3.849h3.905l-.626 3.849h-3.906zm16.096 2.218c0 1.495.92 2.582 2.282 2.582 1.355 0 2.275-1.087 2.275-2.582v-.505c0-1.496-.908-2.583-2.275-2.583-1.356 0-2.282 1.087-2.282 2.583v.505zm-6.674-7.78c0 1.496.921 2.583 2.282 2.583 1.355 0 2.276-1.087 2.276-2.583v-.504c0-1.496-.908-2.583-2.276-2.583-1.355 0-2.282 1.087-2.282 2.582v.505zm7.383 7.275c0-1.132.627-1.944 1.573-1.944.958 0 1.572.812 1.572 1.944v.505c0 1.131-.62 1.943-1.572 1.943-.959 0-1.573-.812-1.573-1.943v-.505zm-6.673-7.78c0-1.13.626-1.943 1.572-1.943.959 0 1.573.812 1.573 1.944v.504c0 1.132-.62 1.944-1.573 1.944-.959 0-1.572-.812-1.572-1.944v-.504zM517.359 90h.805l8.987-13.09h-.812L517.359 90zm-199.79 22l2.192-4.187h5.689l.799 4.187h.844l-2.55-13.09h-.921L316.725 112h.844zm2.582-4.928l3.733-7.134h.071l1.355 7.134h-5.159zm11.685 5.139c1.56 0 2.812-.882 3.496-1.982h.058l-.301 1.771h.78l1.138-6.859c.358-2.147-1.074-3.106-2.819-3.106-1.515 0-3.049.684-3.841 2.096l.677.275c.55-.952 1.726-1.655 3.119-1.655 1.586 0 2.34.914 2.097 2.339l-.064.409c-.128.748-1.246.831-2.774 1.01-2.665.32-3.925 1.151-4.206 2.787-.294 1.867.946 2.915 2.64 2.915zm.147-.722c-1.374 0-2.224-.825-2.014-2.167.211-1.215 1.221-1.867 3.407-2.122.966-.109 2.161-.288 2.621-.627l-.249 1.445c-.326 1.994-1.924 3.471-3.765 3.471zm7.431.511h4.596c2.531 0 4.078-1.387 4.41-3.394.32-1.899-.677-3.158-2.007-3.273l.006-.077c1.272-.319 2.257-1.387 2.525-2.972.345-2.02-.728-3.375-3.106-3.375h-4.251L339.414 112zm.927-.741l.92-5.542h3.822c1.797 0 2.839 1.24 2.564 2.889-.275 1.559-1.541 2.653-3.51 2.653h-3.796zm1.048-6.271l.869-5.337h3.452c1.86 0 2.729 1.003 2.454 2.633-.236 1.502-1.393 2.704-3.049 2.704h-3.726zm9.609 7.012h.76l.358-2.141h.09c.255 1.272 1.099 2.346 2.787 2.346 2.371 0 4.263-2.123 4.755-5.089.499-2.959-.716-5.081-3.074-5.081-1.681 0-2.896 1.074-3.548 2.339h-.076l.894-5.465h-.773L350.998 112zm1.585-4.89c.409-2.506 1.962-4.347 3.957-4.347 2.019 0 2.838 1.88 2.435 4.347-.409 2.467-1.962 4.372-3.969 4.372-2.008 0-2.832-1.86-2.423-4.372zm12.963 4.89c3.886 0 6.507-2.429 7.21-6.552.691-4.084-1.118-6.539-4.794-6.539h-3.893L361.896 112h3.65zm-2.729-.741l1.93-11.608h3.087c3.337 0 4.743 2.096 4.142 5.727-.588 3.624-2.908 5.881-6.366 5.881h-2.793zm15.038.946c1.675 0 2.877-1.081 3.554-2.346h.096l-.358 2.141h.761l2.173-13.09h-.78l-.907 5.464h-.077c-.243-1.265-1.093-2.339-2.774-2.339-2.359 0-4.27 2.122-4.768 5.081-.486 2.973.709 5.089 3.08 5.089zm.128-.723c-2.02 0-2.831-1.905-2.429-4.372.416-2.467 1.937-4.347 3.951-4.347 2 0 2.863 1.841 2.441 4.347-.409 2.512-1.968 4.372-3.963 4.372zm7.714.518h7.44l.128-.741h-6.641l.895-5.44h6.098l.127-.742h-6.098l.895-5.426h6.488l.128-.742h-7.287L385.697 112zm14.128.205c1.943 0 3.317-1.132 3.912-2.123l-.646-.287c-.492.728-1.579 1.687-3.17 1.687-2.276 0-3.279-1.713-2.883-4.219h7.498l.089-.485c.48-2.909-1.099-4.743-3.298-4.743-2.435 0-4.545 2.167-5.03 5.101-.493 2.927.862 5.069 3.528 5.069zm-2.646-5.651c.492-2.09 2.23-3.791 4.071-3.791 1.873 0 2.973 1.669 2.621 3.791h-6.692zM417.357 103h.818c-.006-2.09-1.426-4.27-4.417-4.27-3.26 0-5.964 2.666-6.622 6.725-.678 4.058 1.093 6.724 4.468 6.724 2.998 0 5.51-2.103 6.079-5.574l.134-.741h-4.954l-.134.741h4.174c-.511 2.979-2.698 4.807-5.203 4.807-2.921 0-4.392-2.282-3.778-5.957.646-3.829 3.202-5.958 5.753-5.958 2.499 0 3.592 1.707 3.682 3.503zm5.34 12.886c2.295 0 4.027-1.195 4.436-3.656l1.662-10.048h-.754l-.358 2.192h-.089c-.269-1.265-1.087-2.339-2.787-2.339-2.378 0-4.264 2.109-4.756 5.056s.773 4.858 3.106 4.858c1.605 0 2.877-.921 3.529-2.193h.077l-.397 2.442c-.332 2.007-1.726 2.972-3.611 2.972-1.592 0-2.429-.671-2.704-1.617l-.703.365c.339 1.214 1.521 1.968 3.349 1.968zm.588-4.659c-2.02 0-2.857-1.688-2.454-4.142.396-2.442 1.905-4.322 3.925-4.322 2.007 0 2.87 1.841 2.467 4.322-.428 2.563-1.975 4.142-3.938 4.142zm9.603-12.318L430.714 112h.768l1.866-11.192h.077l2.87 11.192h.754l6.603-11.192h.077L441.862 112h.767l2.174-13.09h-.87l-7.025 11.939h-.083l-3.068-11.94h-.869zM446.137 112h.78l1.074-6.443c.262-1.617 1.47-2.781 3.023-2.781 1.541 0 2.09 1.049 1.841 2.583L451.749 112h.78l1.093-6.526c.256-1.573 1.374-2.698 2.991-2.698 1.515 0 2.116.991 1.848 2.634l-1.1 6.59h.78l1.1-6.59c.345-2.078-.473-3.356-2.365-3.356-1.458 0-2.621.741-3.184 1.898h-.07c-.205-1.163-.94-1.898-2.352-1.898-1.298 0-2.359.633-2.915 1.611h-.077l.256-1.483h-.761L446.137 112zm27.001-6.513c.691-4.079-1.176-6.757-4.436-6.757s-5.951 2.659-6.635 6.693c-.658 4.052 1.145 6.756 4.469 6.756 3.24 0 5.938-2.653 6.602-6.692zm-.773-.064c-.582 3.643-2.998 5.989-5.829 5.989-2.775 0-4.302-2.276-3.689-5.925.627-3.663 3.03-5.99 5.843-5.99 2.748 0 4.282 2.269 3.675 5.926zm6.223 6.782c2.403 0 4.493-2.103 4.979-5.012.473-2.985-.94-5.158-3.413-5.158-2.384 0-4.475 2.109-4.96 5.024-.486 2.991.939 5.146 3.394 5.146zm.006-.723c-2.02 0-3.049-1.892-2.64-4.289.396-2.461 2.122-4.43 4.213-4.43 2.019 0 3.029 1.899 2.639 4.296-.396 2.48-2.103 4.423-4.212 4.423zm7.122.518h.799l.908-5.472h3.247c.237 0 .461-.012.684-.038l2.058 5.51h.902l-2.135-5.683c1.668-.492 2.8-1.821 3.1-3.579.364-2.276-.869-3.829-3.356-3.829h-4.033L485.716 112zm1.829-6.219l1.016-6.13h3.215c2.02 0 3.017 1.208 2.71 3.087-.306 1.847-1.706 3.043-3.713 3.043h-3.228zm9.111 6.219h.78l1.074-6.469c.262-1.585 1.636-2.729 3.273-2.729.204 0 .339.025.441.038l.134-.786c-.128-.006-.256-.006-.396-.006-1.298 0-2.519.664-3.094 1.668h-.07l.255-1.534h-.76L496.656 112zm15.097-9.786h.78c.211-2.033-1.151-3.503-3.49-3.503-2.353 0-4.321 1.419-4.667 3.471-.255 1.591.665 2.653 2.608 3.266l1.471.46c1.777.556 2.646 1.311 2.416 2.685-.282 1.7-1.931 2.87-4.04 2.87-1.962 0-3.196-1.01-3.049-2.633h-.818c-.198 2 1.214 3.381 3.739 3.381 2.73 0 4.602-1.496 4.954-3.612.313-1.898-1.004-2.831-2.864-3.419l-1.361-.422c-1.496-.473-2.487-1.253-2.263-2.602.262-1.553 1.835-2.704 3.746-2.704 1.879 0 2.94 1.1 2.838 2.762zm9.735 2.084c-.237-1.445-1.144-2.263-2.819-2.263-1.879 0-3.381 1.067-3.65 2.633-.211 1.279.454 2.186 2.007 2.583l1.49.383c1.125.281 1.598.895 1.451 1.79-.192 1.202-1.426 2.065-3.056 2.065-1.432 0-2.224-.672-2.282-1.944l-.773.154c.077 1.611 1.15 2.506 2.998 2.506 2.039 0 3.624-1.106 3.892-2.736.211-1.272-.434-2.174-1.917-2.557l-1.458-.377c-1.214-.313-1.719-.895-1.566-1.822.186-1.157 1.336-1.969 2.807-1.969 1.316 0 1.943.646 2.128 1.733l.748-.179zm-198.096 16.611h-.901l-3.241 1.937-.147.856 3.266-1.949h.077L320.42 134h.799l2.173-13.091zM325.423 134h8.022l.128-.741h-6.871l.006-.071 4.238-4.097c2.486-2.384 3.298-3.445 3.535-4.903.332-1.969-.927-3.458-3.005-3.458-2.135 0-3.937 1.56-4.27 3.586h.774a3.457 3.457 0 013.401-2.851c1.636 0 2.601 1.125 2.333 2.723-.205 1.272-.972 2.218-3.152 4.321l-5.037 4.884-.102.607zm15.159.179c2.39 0 4.283-1.509 4.628-3.599.275-1.655-.576-2.927-2.199-3.311v-.064c1.496-.428 2.608-1.54 2.838-3.042.32-1.905-.901-3.433-3.107-3.433-2.103 0-3.95 1.426-4.301 3.452h.786c.268-1.63 1.834-2.717 3.509-2.717 1.726 0 2.595 1.112 2.333 2.659-.262 1.688-1.834 2.768-3.663 2.768h-.466l-.115.742h.498c2.148 0 3.375 1.163 3.1 2.882-.262 1.669-1.904 2.922-3.835 2.922-1.828 0-2.959-1.119-2.736-2.711h-.799c-.313 2.02 1.209 3.452 3.529 3.452zm7.268-3.119h6.053l-.492 2.94h.78l.485-2.94h1.694l.128-.742h-1.694l1.56-9.409h-.914l-7.498 9.511-.102.64zm6.181-.742h-5.095v-.07l6.386-8.105h.057l-1.348 8.175zm8.167 3.861c2.346 0 4.328-1.822 4.749-4.276.441-2.532-1.08-4.264-3.291-4.264a4.297 4.297 0 00-2.64.914h-.058l1.406-4.902h5.453l.128-.742h-6.137l-1.815 6.271.876.128c.677-.537 1.662-.921 2.62-.921 1.816 0 3.017 1.4 2.672 3.522-.319 2.001-1.988 3.529-3.886 3.529-1.662 0-2.608-1.126-2.384-2.711h-.787c-.306 2.014.991 3.452 3.094 3.452zm10.871 0c2.334.006 4.187-1.918 4.577-4.161.403-2.41-1.074-4.206-3.221-4.206-1.445 0-2.909.831-3.631 2.058l-.07.038c.703-4.186 2.384-6.443 4.666-6.443 1.604 0 2.333 1.119 2.25 2.717h.773c.147-2.052-1.01-3.458-3.023-3.458-3.088 0-4.801 3.388-5.434 7.274-.728 4.372.895 6.175 3.113 6.181zm.02-.741c-1.63 0-2.57-1.253-2.519-3.292.07-1.899 1.867-3.593 3.752-3.593 1.784 0 2.858 1.496 2.551 3.401-.333 1.917-1.982 3.484-3.784 3.484zm7.148.562h.862l8.125-12.324.134-.767h-7.856l-.128.742h6.987l-.007.07L380.237 134zm13.293.179c2.353 0 4.411-1.547 4.75-3.554.262-1.604-.64-3.062-2.142-3.394v-.051c1.387-.409 2.519-1.598 2.768-3.043.32-1.924-1.112-3.407-3.222-3.407-2.077 0-3.918 1.438-4.25 3.343-.262 1.432.434 2.691 1.687 3.107v.051c-1.591.326-2.959 1.751-3.221 3.324-.339 2.026 1.233 3.624 3.63 3.624zm0-.741c-1.943 0-3.1-1.241-2.838-2.858.269-1.668 2.078-2.991 4.014-2.991 1.899 0 3.062 1.278 2.794 2.927-.262 1.643-1.988 2.922-3.97 2.922zm1.074-6.54c-1.63 0-2.665-1.188-2.403-2.723.243-1.553 1.802-2.71 3.496-2.71 1.669 0 2.685 1.106 2.436 2.64-.269 1.553-1.854 2.793-3.529 2.793zm11.83-6.193c-2.339-.007-4.186 1.917-4.576 4.161-.422 2.403 1.073 4.206 3.221 4.206 1.445 0 2.902-.831 3.631-2.059l.064-.038c-.697 4.187-2.384 6.463-4.66 6.463-1.611 0-2.333-1.132-2.25-2.736h-.773c-.147 2.052 1.003 3.477 3.023 3.477 3.087 0 4.8-3.407 5.427-7.293.716-4.379-.895-6.175-3.107-6.181zm-.019.741c1.63 0 2.563 1.253 2.512 3.292-.051 1.898-1.866 3.592-3.746 3.592-1.783 0-2.857-1.495-2.55-3.4.313-1.918 1.975-3.484 3.784-3.484zm8.676 12.733c2.627 0 4.621-2.525 5.318-6.724.697-4.194-.473-6.725-3.094-6.725-2.614 0-4.602 2.538-5.292 6.725-.691 4.212.447 6.724 3.068 6.724zm.096-.741c-2.155 0-2.992-2.289-2.378-5.983.633-3.823 2.326-5.99 4.429-5.99 2.142 0 2.998 2.301 2.391 5.99-.639 3.828-2.346 5.983-4.442 5.983zm15.441-12.529h-.856l-1.496 9.275h.767l1.585-9.275zm-2.525 13.174a.734.734 0 00.723-.69.647.647 0 00-.659-.678.717.717 0 00-.722.678.65.65 0 00.658.69zm6.57-3.899h.786l.109-.652c.211-1.215.677-1.803 1.981-2.608 1.445-.888 2.142-1.54 2.352-2.915.282-1.841-.888-3.279-2.908-3.279a4.196 4.196 0 00-4.136 3.452h.812c.301-1.592 1.707-2.736 3.254-2.736 1.483 0 2.416 1.023 2.192 2.538-.16 1.105-.812 1.642-2.013 2.39-1.387.844-2.046 1.554-2.314 3.158l-.115.652zm-.141 3.899a.732.732 0 00.722-.69.645.645 0 00-.658-.678.717.717 0 00-.722.678.65.65 0 00.658.69zm7.798-6.628c-.485 2.895-.204 5.669.716 8.181h.729c-.856-2.32-1.131-5.324-.652-8.181.473-2.839 1.72-5.862 3.362-8.182h-.728c-1.758 2.499-2.941 5.267-3.427 8.182zm7.839 0c.485-2.896.204-5.67-.716-8.182h-.729c.857 2.32 1.131 5.324.652 8.182-.473 2.838-1.719 5.861-3.362 8.181h.729c1.757-2.499 2.94-5.267 3.426-8.181zm2.91 8.181h2.761l.121-.69h-2.013l2.474-14.983h2.013l.115-.69h-2.761l-2.71 16.363zm10.216-16.363h-2.762l-.121.69h2.013l-2.473 14.983h-2.014l-.115.69h2.762l2.71-16.363zm5.064 16.363l.115-.69c-1.394 0-1.822-.684-1.547-2.276l.499-3.087c.185-1.119.006-1.802-.863-2.096l.006-.058c.978-.294 1.387-.978 1.573-2.103l.504-3.087c.263-1.592.921-2.276 2.302-2.276l.121-.69c-1.892 0-2.825.939-3.158 2.966l-.466 2.914c-.25 1.445-.767 1.912-2.231 1.912h-.026l-.121.779h.026c1.451 0 1.815.473 1.566 1.912l-.467 2.914c-.332 2.027.275 2.966 2.167 2.966zm3.491-16.363l-.115.69c1.394 0 1.822.684 1.547 2.276l-.498 3.087c-.186 1.119-.007 1.803.863 2.097l-.007.057c-.978.294-1.387.978-1.572 2.103l-.505 3.087c-.262 1.592-.921 2.276-2.301 2.276l-.122.69c1.892 0 2.826-.939 3.158-2.966l.467-2.914c.249-1.445.767-1.912 2.23-1.912h.026l.121-.779h-.025c-1.451 0-1.816-.473-1.566-1.912l.466-2.914c.333-2.027-.274-2.966-2.167-2.966zm11.476 16.229c1.425 0 3.004-.435 4.193-1.125l-.192-.614c-1.016.595-2.505 1.055-3.912 1.055-4.084 0-6.443-3.087-5.727-7.344.69-4.238 4.18-7.358 8.143-7.358 3.964 0 6.156 3.222 5.536 6.987-.403 2.371-1.528 3.848-3.004 3.848-.767 0-.953-.422-.78-1.496l1.023-6.098h-.729l-.281 1.637h-.058c-.281-1.061-1.285-1.803-2.627-1.758-1.994.07-3.842 1.86-4.225 4.193-.409 2.378.741 4.263 2.819 4.289 1.393.013 2.576-.805 3.26-1.905h.057c-.16 1.343.454 1.809 1.432 1.809 2.116 0 3.433-2.128 3.829-4.506.665-4.136-1.803-7.671-6.156-7.671-4.423 0-8.233 3.382-8.98 8.01-.78 4.672 1.866 8.047 6.379 8.047zm.326-4.493c-1.732 0-2.576-1.643-2.25-3.606.307-1.911 1.866-3.477 3.528-3.477 1.688 0 2.64 1.349 2.301 3.477-.358 2.123-1.834 3.606-3.579 3.606zm13.201 4.627h.62l.237-1.431c2.537-.128 4.257-1.586 4.595-3.606.314-1.898-1.003-2.831-2.863-3.419l-.544-.167.921-5.554c1.719.096 2.678 1.17 2.582 2.755h.78c.205-1.956-1.055-3.394-3.234-3.497l.236-1.444h-.62l-.243 1.451c-2.186.14-3.969 1.515-4.295 3.458-.256 1.591.665 2.653 2.608 3.266l.55.173-.972 5.836c-1.803-.09-2.921-1.081-2.781-2.627h-.818c-.192 1.93 1.119 3.285 3.477 3.375l-.236 1.431zm.984-2.186l.934-5.644.332.102c1.777.556 2.646 1.311 2.416 2.685-.262 1.604-1.745 2.736-3.682 2.857zm.473-6.622l-.23-.07c-1.495-.473-2.486-1.253-2.263-2.602.243-1.451 1.637-2.557 3.382-2.691l-.889 5.363zM510.545 134h.696l.71-3.918h2.237l.128-.703h-2.237l.703-3.848h2.231l.14-.704h-2.243l.709-3.918h-.696l-.71 3.918h-3.905l.709-3.918h-.697l-.709 3.918h-2.225l-.14.704h2.237l-.703 3.848h-2.231l-.128.703h2.231l-.71 3.918h.697l.71-3.918h3.905l-.709 3.918zm-3.068-4.621l.703-3.848h3.905l-.703 3.848h-3.905zm10.067-5.562c-.256 1.496.499 2.583 1.854 2.583 1.361 0 2.454-1.087 2.71-2.583l.083-.505c.23-1.502-.486-2.582-1.86-2.582-1.342 0-2.467 1.08-2.697 2.582l-.09.505zm5.389 7.78c-.25 1.502.492 2.582 1.847 2.582 1.368 0 2.467-1.08 2.71-2.582l.077-.505c.249-1.496-.486-2.583-1.841-2.583-1.362 0-2.467 1.087-2.717 2.583l-.076.505zm.786-.505c.192-1.132.952-1.944 1.898-1.944.953 0 1.438.812 1.247 1.944l-.077.505c-.198 1.131-.946 1.943-1.892 1.943-.972 0-1.451-.812-1.253-1.943l.077-.505zm-5.382-7.78c.179-1.131.939-1.943 1.885-1.943.972 0 1.439.812 1.26 1.943l-.084.505c-.204 1.132-.946 1.944-1.892 1.944-.952 0-1.457-.812-1.252-1.944l.083-.505zM516.86 134h.857l10.387-13.091h-.85L516.86 134zM320.574 33h14.054v-1.4h-12.545V21.324h11.519v-1.401h-11.519V9.674h12.255V8.272h-13.764V33zm19.514-18.546h-1.715l5.916 9.273L338.373 33h1.715l5.119-8.114L350.326 33h1.703l-5.941-9.273 5.941-9.273h-1.703l-5.119 8.247-5.119-8.247zm22.888 0h-3.9v-4.443h-1.461v4.444h-2.741v1.316h2.741v13.112c0 2.813 2.185 4.419 4.504 4.419.748 0 1.255-.133 1.714-.302l-.362-1.34a3.68 3.68 0 01-1.256.217c-1.642 0-3.139-1.014-3.139-3.26V15.771h3.9v-1.317zM367.895 33h1.473V20.781c0-2.994 2.234-5.155 5.325-5.155.386 0 .64.048.833.072v-1.485c-.229-.012-.483-.012-.749-.012-2.451 0-4.515 1.256-5.312 3.151h-.133v-2.898h-1.437V33zm15.958.398c2.946 0 5.023-1.666 5.989-3.743h.109V33h1.473V20.045c0-4.057-3.019-5.868-6.315-5.868-2.862 0-5.542 1.292-6.604 3.96l1.388.52c.725-1.836 2.608-3.128 5.252-3.128 2.995 0 4.806 1.727 4.806 4.42v.772c0 1.425-2.077 1.57-4.902 1.908-4.951.603-7.076 2.173-7.076 5.264 0 3.525 2.681 5.505 5.88 5.505zm.145-1.364c-2.596 0-4.552-1.557-4.552-4.093 0-2.294 1.691-3.525 5.747-4.008 1.812-.206 3.985-.544 4.758-1.184v2.729c0 3.767-2.476 6.556-5.953 6.556zm22.595.966h13.583v-1.4h-12.074V8.272h-1.509V33zm18.134 0h1.461V14.454h-1.461V33zm.737-21.83c.652 0 1.183-.519 1.183-1.159s-.531-1.159-1.183-1.159-1.195.52-1.195 1.16c0 .64.543 1.159 1.195 1.159zm13.039 29.17c4.334 0 7.268-2.257 7.268-6.905v-18.98h-1.424v4.14h-.169c-.882-2.39-2.777-4.418-5.989-4.418-4.491 0-7.401 3.984-7.401 9.55 0 5.566 2.994 9.176 7.389 9.176 3.043 0 5.131-1.738 5.989-4.14h.144v4.611c0 3.804-2.233 5.615-5.807 5.615-2.982 0-4.866-1.292-5.675-3.091l-1.231.724c1.014 2.294 3.441 3.719 6.906 3.719zm-.193-8.8c-3.804 0-6.061-3.188-6.061-7.825 0-4.612 2.221-8.162 6.061-8.162 3.779 0 6.013 3.477 6.013 8.162 0 4.83-2.294 7.824-6.013 7.824zm14.587-10.566c0-3.235 2.258-5.397 5.385-5.397 3.091 0 5.144 2.077 5.144 5.252V33h1.461V20.77c0-4.07-2.584-6.557-6.327-6.557-2.68 0-4.648 1.244-5.518 3.176h-.145V8.273h-1.473V33h1.473V20.974zm24.096-6.52h-3.9v-4.443h-1.461v4.444h-2.741v1.316h2.741v13.112c0 2.813 2.186 4.419 4.504 4.419.748 0 1.255-.133 1.714-.302l-.362-1.34a3.68 3.68 0 01-1.256.217c-1.642 0-3.139-1.014-3.139-3.26V15.771h3.9v-1.317zM633.758 68l1.4-3.944h5.497l1.4 3.944h1.253l-4.763-13.09h-1.278L632.505 68h1.253zm1.783-5.018l2.321-6.52h.089l2.32 6.52h-4.73zm12.516 5.242c1.636 0 2.633-.908 3.042-1.777h.071V68h1.138v-6.667c0-2.633-1.982-3.285-3.484-3.285s-3.049.594-3.714 2.198l1.08.39c.358-.843 1.247-1.566 2.666-1.566 1.489 0 2.314.819 2.314 2.16v.23c0 .742-.921.755-2.57.96-2.218.275-3.771.895-3.771 2.838 0 1.892 1.444 2.966 3.228 2.966zm.153-1.042c-1.285 0-2.243-.684-2.243-1.873s.971-1.688 2.633-1.892c.806-.096 2.237-.275 2.57-.6v1.418c0 1.61-1.144 2.947-2.96 2.947zm7.361.818h4.659c2.813 0 4.111-1.451 4.111-3.433 0-1.987-1.317-3.183-2.589-3.272v-.102c1.17-.314 2.077-1.221 2.077-2.858 0-1.968-1.285-3.426-3.841-3.426h-4.417V68zm1.195-1.074v-5.043h3.516c1.757 0 2.914 1.189 2.914 2.684 0 1.356-.946 2.36-2.966 2.36h-3.464zm0-6.104v-4.839h3.222c1.789 0 2.697.965 2.697 2.352 0 1.438-1.042 2.487-2.589 2.487h-3.33zM667.225 68h1.106v-1.822h.14c.397.901 1.228 2.026 3.017 2.026 2.41 0 4.04-2.038 4.04-5.087 0-3.024-1.636-5.07-4.059-5.07-1.796 0-2.608 1.126-2.998 2.008h-.102v-5.146h-1.144V68zm1.125-4.903c0-2.352 1.08-4.014 2.998-4.014 1.969 0 3.036 1.752 3.036 4.014 0 2.289-1.08 4.066-3.036 4.066-1.905 0-2.998-1.694-2.998-4.066zM682.099 68c3.938 0 6.181-2.46 6.188-6.577 0-4.072-2.212-6.514-5.958-6.514h-4.065V68h3.835zm-2.64-1.074V55.983h2.8c3.177 0 4.864 2.052 4.871 5.44 0 3.42-1.726 5.503-5.101 5.503h-2.57zm15.023 1.278c1.784 0 2.615-1.13 3.017-2.026h.135V68h1.112V54.91h-1.144v5.145h-.103c-.39-.882-1.201-2.007-2.998-2.007-2.422 0-4.059 2.045-4.059 5.069 0 3.048 1.63 5.087 4.04 5.087zm.134-1.041c-1.955 0-3.029-1.777-3.029-4.066 0-2.263 1.061-4.014 3.029-4.014 1.918 0 3.005 1.662 3.005 4.014 0 2.372-1.1 4.066-3.005 4.066zm7.607.837h7.722v-1.074h-6.527v-4.94h5.996V60.91h-5.996v-4.928h6.399v-1.074h-7.594V68zm14.42.204c1.969 0 3.292-1.067 3.74-2.3l-1.08-.352c-.378.882-1.266 1.61-2.66 1.61-2.007 0-3.279-1.463-3.33-3.732h7.313v-.563c0-3.279-2.027-4.82-4.155-4.82-2.544 0-4.302 2.13-4.302 5.101 0 2.98 1.726 5.056 4.474 5.056zm-3.323-5.778c.121-1.828 1.355-3.343 3.151-3.343 1.758 0 2.991 1.451 2.991 3.343h-6.142zM732.427 59h1.227c-.422-2.307-2.384-4.27-5.248-4.27-3.317 0-5.625 2.62-5.625 6.725 0 4.097 2.282 6.724 5.709 6.724 3.061 0 5.254-2.09 5.254-5.446v-1.074h-4.973v1.074h3.809c-.032 2.678-1.713 4.321-4.09 4.321-2.647 0-4.552-2.084-4.552-5.6 0-3.528 1.918-5.599 4.468-5.599 2.161 0 3.548 1.406 4.021 3.145zm7.794 12.886c2.326 0 4.052-1.137 4.052-3.63V58.182h-1.112v1.873h-.115c-.403-.882-1.215-2.007-3.017-2.007-2.429 0-4.059 2.032-4.059 5.017 0 3.011 1.687 4.833 4.04 4.833 1.764 0 2.627-1.023 3.017-1.924h.102v2.211c0 1.828-1.17 2.679-2.908 2.679-1.682 0-2.487-.812-2.902-1.56l-.934.614c.576 1.125 1.828 1.968 3.836 1.968zm-.077-5.03c-1.95 0-3.03-1.56-3.03-3.81 0-2.212 1.061-3.963 3.03-3.963 1.924 0 3.004 1.662 3.004 3.963 0 2.372-1.112 3.81-3.004 3.81zm7.378-11.947V68h1.125V57.434h.102L753.166 68h1.087l4.417-10.566h.102V68h1.125V54.91h-1.381l-4.749 11.403h-.115l-4.749-11.404h-1.381zM763.141 68h1.138v-6.29c0-1.528 1.016-2.614 2.377-2.614 1.343 0 2.123.895 2.123 2.224V68h1.163v-6.462c0-1.413.844-2.442 2.339-2.442 1.298 0 2.161.78 2.161 2.327V68h1.138v-6.577c0-2.2-1.132-3.369-2.953-3.369-1.432 0-2.468.697-2.909 1.783h-.083c-.435-1.112-1.297-1.783-2.653-1.783-1.284 0-2.243.62-2.633 1.636h-.102v-1.508h-1.106V68zm26.42-6.545c0-4.098-2.353-6.725-5.664-6.725-3.304 0-5.657 2.634-5.657 6.725 0 4.09 2.346 6.724 5.657 6.724s5.664-2.627 5.664-6.724zm-1.164 0c.007 3.522-1.917 5.599-4.5 5.599-2.588 0-4.5-2.09-4.5-5.6 0-3.528 1.931-5.599 4.5-5.599 2.583 0 4.5 2.078 4.5 5.6zm7.634 6.75c2.544 0 4.321-2.078 4.321-5.07 0-3.01-1.777-5.087-4.321-5.087-2.544 0-4.321 2.077-4.321 5.088 0 2.991 1.777 5.068 4.321 5.068zm0-1.042c-2.039 0-3.177-1.828-3.177-4.027 0-2.2 1.138-4.053 3.177-4.053s3.177 1.854 3.177 4.053-1.138 4.027-3.177 4.027zm7.055.837h1.196v-5.293h3.049c.172 0 .338-.006.498-.019l2.87 5.312h1.381l-3.024-5.542c1.63-.537 2.474-1.88 2.474-3.63 0-2.289-1.438-3.919-4.219-3.919h-4.225V68zm1.196-6.386v-5.631h2.997c2.071 0 3.075 1.131 3.075 2.844 0 1.714-1.004 2.787-3.055 2.787h-3.017zM814.205 68h1.138v-6.34c0-1.458 1.119-2.513 2.653-2.513.3 0 .581.051.684.064v-1.157c-.154-.006-.416-.02-.601-.02-1.234 0-2.289.666-2.685 1.656h-.083v-1.508h-1.106V68zm13.761-9.818h1.157c-.09-1.988-1.809-3.458-4.245-3.458-2.416 0-4.276 1.45-4.276 3.56 0 1.681 1.189 2.736 3.241 3.343l1.566.46c1.623.473 2.736 1.08 2.736 2.417 0 1.572-1.426 2.627-3.382 2.627-1.764 0-3.145-.85-3.272-2.404h-1.228c.141 2.071 1.828 3.497 4.5 3.497 2.838 0 4.539-1.605 4.539-3.701 0-2.174-1.892-3.043-3.554-3.51l-1.381-.396c-1.272-.358-2.608-1.003-2.608-2.384 0-1.406 1.259-2.435 3.087-2.435 1.733 0 2.973.926 3.12 2.384zm10.572 2.154c-.479-1.42-1.528-2.288-3.324-2.288-1.981 0-3.419 1.131-3.419 2.748 0 1.317.799 2.212 2.505 2.62l1.605.384c1.08.256 1.598.812 1.598 1.598 0 1.023-.978 1.784-2.487 1.784-1.342 0-2.18-.607-2.454-1.77l-1.093.268c.345 1.636 1.642 2.524 3.566 2.524 2.161 0 3.644-1.188 3.644-2.857 0-1.31-.825-2.186-2.468-2.588l-1.482-.365c-1.221-.307-1.79-.799-1.79-1.649 0-.997.952-1.694 2.275-1.694s1.975.697 2.282 1.579l1.042-.294zM637.497 76.909h-1.246l-3.094 2.052v1.24l3.068-2.04h.077V90h1.195V76.91zM641.473 90h8.137v-1.074h-6.475v-.083l3.247-3.624c2.173-2.404 2.819-3.49 2.819-4.941 0-1.995-1.572-3.548-3.765-3.548-2.212 0-3.854 1.56-3.854 3.727h1.144c0-1.554 1.061-2.672 2.678-2.672 1.521 0 2.672.997 2.672 2.493 0 1.24-.658 2.16-2.327 4.04l-4.276 4.806V90zm15.237.179c2.455 0 4.244-1.585 4.244-3.682 0-1.662-1.022-2.883-2.691-3.215v-.083c1.375-.41 2.244-1.521 2.244-3.017 0-1.873-1.47-3.452-3.771-3.452-2.193 0-3.944 1.406-3.995 3.452h1.157c.038-1.464 1.304-2.397 2.825-2.397 1.579 0 2.621 1.003 2.621 2.448 0 1.528-1.221 2.506-2.915 2.506h-.767v1.073h.767c2.071 0 3.349 1.094 3.349 2.685 0 1.509-1.272 2.608-3.081 2.608-1.668 0-2.972-.946-3.036-2.378h-1.208c.064 2.04 1.828 3.452 4.257 3.452zm6.756-2.992h6.111V90h1.138v-2.813h1.739v-1.073h-1.739v-9.205h-1.413l-5.836 9.307v.972zm6.111-1.073h-4.775v-.084l4.686-7.49h.089v7.574zm9.299 4.065c2.416 0 4.168-1.835 4.174-4.315.006-2.53-1.777-4.327-4.084-4.327-.934 0-1.803.339-2.378.825h-.064l.524-4.379h5.465v-1.074h-6.469l-.786 6.36 1.195.154c.563-.467 1.464-.8 2.346-.793 1.739.006 3.088 1.336 3.094 3.254 0 1.847-1.259 3.221-3.017 3.221-1.508 0-2.627-.99-2.704-2.378h-1.157c.058 2.001 1.681 3.452 3.861 3.452zm11.017 0c2.499.02 4.142-1.95 4.142-4.296 0-2.46-1.816-4.263-3.995-4.263-1.406 0-2.647.754-3.267 1.911h-.083c.007-3.675 1.234-5.746 3.382-5.746 1.495 0 2.403.997 2.646 2.397h1.176c-.256-2.052-1.706-3.471-3.822-3.471-3.011 0-4.507 3.01-4.507 7.287 0 4.602 2.154 6.162 4.328 6.181zm0-1.074c-1.63 0-2.838-1.336-2.979-3.145-.128-1.726 1.234-3.266 2.979-3.266 1.7 0 2.985 1.419 2.985 3.19 0 1.783-1.285 3.221-2.985 3.221zm7.223.895h1.259l5.957-11.966V76.91h-8.124v1.074h6.872v.083L697.116 90zm13.548.179c2.493 0 4.314-1.547 4.321-3.624-.007-1.624-1.125-3.05-2.608-3.337v-.07c1.278-.365 2.135-1.585 2.141-2.992-.006-1.956-1.675-3.426-3.854-3.426-2.199 0-3.861 1.477-3.848 3.426-.013 1.406.85 2.621 2.135 2.992v.07c-1.496.294-2.615 1.713-2.608 3.337-.007 2.077 1.815 3.624 4.321 3.624zm0-1.074c-1.873 0-3.152-1.093-3.145-2.608-.007-1.566 1.342-2.742 3.145-2.742 1.789 0 3.138 1.176 3.145 2.742-.007 1.515-1.279 2.608-3.145 2.608zm0-6.373c-1.541 0-2.698-1.06-2.691-2.505-.007-1.432 1.125-2.442 2.691-2.442 1.553 0 2.684 1.01 2.697 2.442-.013 1.444-1.17 2.505-2.697 2.505zm10.913-6.028c-2.506-.019-4.143 1.95-4.143 4.296 0 2.46 1.809 4.263 3.996 4.263 1.406 0 2.652-.76 3.266-1.91h.083c0 3.681-1.24 5.752-3.381 5.752-1.49 0-2.41-1.003-2.64-2.403h-1.177c.243 2.064 1.701 3.477 3.817 3.477 3.017 0 4.506-3.017 4.506-7.293 0-4.596-2.154-6.162-4.327-6.181zm0 1.074c1.629 0 2.838 1.336 2.985 3.145.127 1.72-1.247 3.267-2.985 3.267-1.707 0-2.986-1.407-2.986-3.19s1.279-3.222 2.986-3.222zm11.096 12.401c2.755 0 4.372-2.487 4.372-6.725 0-4.218-1.63-6.724-4.372-6.724s-4.372 2.506-4.372 6.724c0 4.239 1.617 6.725 4.372 6.725zm0-1.074c-2.013 0-3.215-2.065-3.215-5.65 0-3.58 1.208-5.67 3.215-5.67 2.007 0 3.215 2.09 3.215 5.67 0 3.585-1.201 5.65-3.215 5.65zm13.679-12.196h-1.291l.083 9.339h1.125l.083-9.339zm-.646 13.187a.92.92 0 100-1.842.92.92 0 000 1.842zm5.928-3.848h1.156v-.345c.02-1.407.403-2.046 1.56-2.806 1.215-.793 1.828-1.7 1.828-2.998 0-1.95-1.457-3.369-3.579-3.369-2.039 0-3.618 1.349-3.682 3.452h1.208c.064-1.585 1.195-2.43 2.474-2.43 1.348 0 2.416.915 2.416 2.296 0 .984-.524 1.694-1.457 2.3-1.272.813-1.912 1.535-1.924 3.555v.345zm.613 3.848a.92.92 0 100-1.842.92.92 0 000 1.842zm6.832-6.642c0 3.062.805 5.785 2.25 8.182h1.035c-1.24-2-2.109-5.235-2.109-8.181 0-2.94.863-6.175 2.109-8.182h-1.035c-1.445 2.384-2.25 5.113-2.25 8.181zm8.528 0c0-3.061-.805-5.784-2.25-8.181h-1.035c1.24 2 2.109 5.235 2.109 8.181 0 2.94-.863 6.175-2.109 8.182h1.035c1.445-2.384 2.25-5.113 2.25-8.181zm4.144 8.182h3.273v-.971h-2.186v-14.42h2.186v-.972h-3.273v16.363zm8.145-16.363h-3.273v.971h2.186v14.42h-2.186v.972h3.273V75.273zm7.902 16.363v-.971c-1.432 0-1.93-.684-1.93-2.225v-2.819c0-1.093-.313-1.815-1.502-2.109v-.115c1.189-.294 1.502-1.016 1.502-2.11V78.47c0-1.54.498-2.225 1.93-2.225v-.971c-2.192 0-2.991 1.01-2.991 3.196v2.48c0 1.419-.467 1.924-1.905 1.924v1.163c1.438 0 1.905.505 1.905 1.924v2.48c0 2.186.799 3.196 2.991 3.196zm1.012-16.363v.971c1.431 0 1.93.684 1.93 2.225v2.819c0 1.093.313 1.815 1.502 2.109v.115c-1.189.294-1.502 1.016-1.502 2.11v2.818c0 1.54-.499 2.225-1.93 2.225v.971c2.192 0 2.991-1.01 2.991-3.196v-2.48c0-1.419.467-1.924 1.905-1.924v-1.163c-1.438 0-1.905-.505-1.905-1.924v-2.48c0-2.186-.799-3.196-2.991-3.196zm14.498 16.242c1.362 0 2.947-.41 3.887-.92l-.326-.895c-.691.377-2.122.862-3.529.862-4.225 0-6.846-2.767-6.846-7.075 0-4.251 2.653-7.09 6.642-7.09 4.014 0 6.36 3.043 6.36 6.36 0 2.64-.588 4.028-1.982 4.028-.767 0-1.105-.524-1.105-1.42V79.44h-1.042v1.157h-.064c-.326-.805-1.381-1.419-2.685-1.336-1.956.135-3.464 1.822-3.464 4.142 0 2.404 1.304 4.277 3.464 4.328 1.419.038 2.327-.729 2.736-1.65h.064c.102 1.215 1.144 1.643 2.084 1.643 2.409 0 3.017-2.524 3.017-4.953 0-3.817-2.762-7.313-7.332-7.313-4.679 0-7.766 3.19-7.766 7.996 0 4.916 3.017 8.06 7.887 8.06zm-.556-4.788c-1.694 0-2.576-1.579-2.576-3.375 0-1.694 1.049-3.119 2.608-3.119 1.611 0 2.634.978 2.634 3.12 0 2.128-.933 3.374-2.666 3.374zm13.898 4.91h.838V90.21c2.569-.16 4.097-1.7 4.097-3.688 0-2.174-1.892-3.043-3.554-3.51l-.543-.153v-5.05c1.54.122 2.627 1.017 2.761 2.372h1.157c-.083-1.899-1.656-3.324-3.918-3.452v-1.457h-.838v1.47c-2.16.192-3.765 1.585-3.765 3.541 0 1.681 1.189 2.736 3.241 3.343l.524.154v5.337c-1.572-.122-2.761-.959-2.876-2.39h-1.227c.134 1.968 1.661 3.349 4.103 3.483v1.425zm.838-2.525V84.03l.204.057c1.624.473 2.736 1.08 2.736 2.417 0 1.45-1.215 2.46-2.94 2.608zm-.838-6.495c-1.272-.358-2.608-1.003-2.608-2.384 0-1.279 1.042-2.25 2.608-2.41v4.794zM829.14 90h.991l.62-3.778h2.077l.167-.984h-2.084l.588-3.567h2.09l.16-.984h-2.09l.62-3.778h-.991l-.62 3.778h-3.612l.62-3.778h-.99l-.62 3.778h-2.084l-.16.984h2.084l-.588 3.567h-2.09l-.167.984h2.097l-.62 3.778h.991l.62-3.778h3.611L829.14 90zm-2.831-4.762l.588-3.567h3.611l-.588 3.567h-3.611zm15.866 2.333c0 1.464.908 2.608 2.423 2.608 1.496 0 2.403-1.144 2.403-2.608v-.594c0-1.464-.895-2.608-2.403-2.608-1.496 0-2.423 1.144-2.423 2.608v.594zm-6.596-7.638c0 1.463.907 2.607 2.422 2.607 1.496 0 2.404-1.144 2.404-2.608v-.594c0-1.464-.895-2.608-2.404-2.608-1.495 0-2.422 1.144-2.422 2.608v.595zM836.167 90h1.138l8.987-13.09h-1.132L836.167 90zm7.012-3.023c0-.966.492-1.74 1.419-1.74.939 0 1.393.774 1.393 1.74v.594c0 .965-.473 1.739-1.393 1.739-.94 0-1.419-.774-1.419-1.739v-.594zm-6.597-7.639c0-.965.492-1.739 1.419-1.739.94 0 1.394.774 1.394 1.74v.594c0 .965-.473 1.738-1.394 1.738-.939 0-1.419-.773-1.419-1.739v-.594zM632.94 112l2.064-3.944h5.485l.748 3.944h1.252l-2.588-13.09h-1.279L631.687 112h1.253zm2.627-5.018l3.407-6.52h.083l1.233 6.52h-4.723zm11.646 5.242c1.636 0 2.787-.908 3.33-1.777h.071l-.262 1.553h1.137l1.113-6.667c.434-2.633-1.432-3.285-2.934-3.285-1.503 0-3.164.594-4.085 2.198l1.01.39c.499-.837 1.572-1.566 2.992-1.566 1.482 0 2.109.825 1.892 2.161l-.039.23c-.128.735-1.054.754-2.723.959-2.269.268-3.925.895-4.257 2.838-.294 1.892.972 2.966 2.755 2.966zm.288-1.042c-1.285 0-2.097-.684-1.899-1.873.198-1.189 1.26-1.688 2.96-1.892.799-.096 2.263-.275 2.646-.601l-.236 1.419a3.512 3.512 0 01-3.471 2.947zm7.251.818h4.66c2.813 0 4.36-1.451 4.692-3.433.32-1.987-.805-3.183-2.058-3.272l.019-.103c1.208-.319 2.269-1.22 2.538-2.857.345-1.969-.703-3.426-3.26-3.426h-4.417L654.752 112zm1.375-1.074l.844-5.043h3.515c1.758 0 2.71 1.189 2.474 2.684-.237 1.356-1.349 2.359-3.369 2.359h-3.464zm1.023-6.104l.792-4.839h3.222c1.796 0 2.537.965 2.301 2.352-.224 1.438-1.445 2.487-2.985 2.487h-3.33zm9.257 7.178h1.106l.306-1.822h.141c.256.902.895 2.027 2.685 2.027 2.41 0 4.378-2.046 4.883-5.089.499-3.023-.792-5.068-3.215-5.068-1.796 0-2.806 1.125-3.33 2.007h-.102l.843-5.146h-1.144L666.407 112zm1.943-4.903c.383-2.352 1.771-4.014 3.688-4.014 1.969 0 2.71 1.752 2.346 4.014-.383 2.289-1.771 4.066-3.727 4.066-1.904 0-2.691-1.694-2.307-4.066zM681.313 112c3.938 0 6.558-2.429 7.236-6.513.69-4.098-1.157-6.578-4.896-6.578h-4.034L677.446 112h3.867zm-2.493-1.074l1.815-10.943h2.839c3.202 0 4.5 1.994 3.937 5.369-.562 3.433-2.685 5.574-6.034 5.574h-2.557zm14.838 1.279c1.777 0 2.799-1.132 3.349-2.027h.134l-.306 1.822h1.105l2.174-13.09h-1.138l-.857 5.145h-.102c-.243-.882-.869-2.007-2.672-2.007-2.416 0-4.391 2.045-4.896 5.068-.499 3.049.786 5.089 3.209 5.089zm.243-1.042c-1.956 0-2.685-1.777-2.302-4.066.371-2.262 1.713-4.014 3.682-4.014 1.918 0 2.742 1.662 2.353 4.014-.397 2.372-1.829 4.066-3.733 4.066zm7.521.837h7.722l.179-1.074h-6.526l.818-4.941h5.996l.179-1.074h-5.996l.818-4.928h6.398l.179-1.074h-7.593L701.422 112zm14.395.205c1.975 0 3.465-1.068 4.117-2.302l-1.017-.351c-.524.882-1.534 1.611-2.94 1.611-2.084 0-3.087-1.272-2.704-3.733h7.319l.09-.563c.549-3.279-1.221-4.819-3.35-4.819-2.544 0-4.653 2.128-5.145 5.1-.499 2.979.882 5.057 3.63 5.057zm-2.371-5.779c.403-1.745 1.994-3.343 3.733-3.343 1.764 0 2.736 1.451 2.416 3.343h-6.149zM733.103 103h1.227c-.032-2.308-1.662-4.27-4.532-4.27-3.304 0-6.066 2.627-6.724 6.725-.69 4.097 1.157 6.724 4.583 6.724 3.062 0 5.606-2.09 6.143-5.446l.198-1.074h-4.967l-.198 1.074h3.816c-.473 2.659-2.525 4.321-4.883 4.321-2.672 0-4.123-2.065-3.535-5.599.601-3.618 3.036-5.6 5.471-5.6 2.193 0 3.228 1.387 3.401 3.145zm5.703 12.886c2.321 0 4.219-1.131 4.641-3.63l1.662-10.074h-1.112l-.307 1.873h-.115c-.256-.882-.882-2.007-2.685-2.007-2.429 0-4.398 2.032-4.883 5.017-.505 3.011.882 4.833 3.234 4.833 1.764 0 2.8-1.023 3.324-1.924h.102l-.345 2.211c-.307 1.828-1.662 2.679-3.394 2.679-1.694 0-2.327-.806-2.615-1.554l-1.035.608c.396 1.118 1.515 1.968 3.528 1.968zm.691-5.03c-1.956 0-2.723-1.56-2.353-3.81.371-2.211 1.688-3.963 3.669-3.963 1.918 0 2.749 1.662 2.365 3.963-.389 2.372-1.796 3.81-3.681 3.81zm9.398-11.947L746.721 112h1.125l1.764-10.566h.103L752.365 112h1.087l6.181-10.566h.102L757.971 112h1.125l2.174-13.09h-1.381l-6.629 11.402h-.121l-2.864-11.403h-1.38zM762.34 112h1.138l1.048-6.29c.25-1.527 1.47-2.614 2.832-2.614 1.349 0 1.95.895 1.739 2.224l-1.119 6.68h1.163l1.081-6.462c.23-1.419 1.259-2.442 2.761-2.442 1.298 0 2.001.773 1.758 2.327l-1.1 6.577h1.138l1.1-6.577c.37-2.193-.576-3.369-2.391-3.369-1.432 0-2.595.69-3.209 1.783h-.083c-.256-1.112-1.004-1.783-2.352-1.783-1.285 0-2.346.62-2.915 1.636h-.102l.255-1.508h-1.105L762.34 112zm27.494-6.475c.684-4.136-1.266-6.795-4.59-6.795-3.285 0-6.027 2.595-6.711 6.654-.678 4.129 1.246 6.795 4.609 6.795 3.272 0 6.014-2.595 6.692-6.654zm-1.144-.141c-.575 3.554-2.889 5.67-5.523 5.67-2.55 0-4.078-2.033-3.496-5.529.594-3.561 2.908-5.67 5.535-5.67 2.531 0 4.072 2.026 3.484 5.529zm6.592 6.821c2.505 0 4.583-2.04 5.068-4.986.493-3.049-.952-5.171-3.541-5.171-2.499 0-4.576 2.032-5.062 4.998-.499 3.043.952 5.159 3.535 5.159zm.019-1.042c-1.995 0-2.806-1.79-2.448-3.944.364-2.244 1.866-4.136 3.944-4.136 1.994 0 2.799 1.809 2.448 3.963-.365 2.257-1.86 4.117-3.944 4.117zm6.985.837h1.195l.876-5.293h3.049c.179 0 .345-.006.517-.019l1.982 5.312h1.374l-2.109-5.548c1.726-.537 2.793-1.886 3.087-3.625.377-2.301-.792-3.918-3.573-3.918h-4.225L802.286 112zm2.256-6.386l.933-5.631h2.998c2.071 0 2.889 1.119 2.608 2.844-.281 1.707-1.464 2.787-3.522 2.787h-3.017zm8.863 6.386h1.137l1.049-6.341c.249-1.457 1.534-2.512 3.068-2.512.307 0 .582.051.684.064l.198-1.157c-.153-.019-.409-.019-.601-.019-1.234 0-2.416.665-2.966 1.655h-.083l.256-1.508h-1.106L813.405 112zm15.395-9.748h1.163c.218-2.058-1.227-3.528-3.669-3.528-2.422 0-4.506 1.432-4.871 3.56-.274 1.681.736 2.729 2.685 3.33l1.496.461c1.553.473 2.569 1.093 2.339 2.429-.255 1.572-1.847 2.627-3.809 2.627-1.765 0-3.017-.85-2.883-2.404h-1.227c-.199 2.071 1.259 3.497 3.931 3.497 2.87 0 4.787-1.579 5.145-3.701.365-2.174-1.393-3.043-2.966-3.51l-1.323-.396c-1.201-.358-2.442-1.003-2.211-2.384.23-1.406 1.668-2.435 3.49-2.435 1.738 0 2.767.92 2.71 2.454zm10.234 2.084c-.25-1.419-1.151-2.288-2.96-2.288-1.975 0-3.599 1.118-3.867 2.735-.224 1.317.441 2.212 2.084 2.634l1.527.383c1.049.256 1.477.787 1.336 1.586-.16 1.016-1.285 1.796-2.799 1.796-1.33 0-2.071-.607-2.142-1.764l-1.144.255c.077 1.637 1.234 2.532 3.164 2.532 2.161 0 3.835-1.183 4.11-2.839.218-1.323-.46-2.198-2.045-2.607l-1.432-.365c-1.163-.3-1.643-.799-1.502-1.63.16-.997 1.227-1.713 2.563-1.713 1.323 0 1.841.684 2.014 1.566l1.093-.281zm-200.182 16.573h-1.246l-3.433 2.052-.211 1.24 3.407-2.039h.077L635.484 134h1.195l2.173-13.091zM640.655 134h8.137l.179-1.074h-6.475l.019-.083 3.842-3.624c2.576-2.397 3.4-3.484 3.649-4.941.333-1.995-.965-3.548-3.157-3.548-2.212 0-4.142 1.56-4.5 3.727h1.144a3.177 3.177 0 013.17-2.672c1.534 0 2.461.997 2.218 2.493-.204 1.233-1.022 2.154-3.01 4.039l-5.063 4.807-.153.876zm15.262.179c2.487 0 4.43-1.451 4.782-3.612.281-1.661-.524-2.953-2.148-3.285v-.064c1.438-.422 2.506-1.496 2.736-2.966.319-1.905-.908-3.522-3.235-3.522-2.167 0-4.116 1.413-4.493 3.452h1.157c.255-1.464 1.764-2.397 3.292-2.397 1.578 0 2.371.978 2.141 2.378-.256 1.572-1.675 2.576-3.369 2.576h-.735l-.166 1.073h.78c2.077 0 3.119 1.081 2.883 2.615-.25 1.598-1.816 2.678-3.605 2.678-1.688 0-2.73-.952-2.557-2.378h-1.196c-.287 2.046 1.292 3.452 3.733 3.452zm7.204-2.991h6.105l-.467 2.812h1.138l.466-2.812h1.752l.179-1.074h-1.752l1.528-9.205h-1.413l-7.382 9.307-.154.972zm6.284-1.074h-4.762v-.083l5.938-7.492h.083l-1.259 7.575zm8.627 4.065c2.423 0 4.475-1.835 4.89-4.315.441-2.525-1.054-4.327-3.356-4.327-.952 0-1.866.332-2.524.825h-.071l1.253-4.379h5.465l.179-1.074H677.4l-1.841 6.36 1.169.154c.64-.461 1.624-.793 2.493-.793 1.752 0 2.851 1.336 2.544 3.254-.307 1.847-1.828 3.221-3.579 3.221-1.496 0-2.442-.997-2.295-2.378h-1.157c-.268 2.001 1.119 3.452 3.298 3.452zm11.087 0c2.468.019 4.379-1.918 4.782-4.225.415-2.499-1.125-4.334-3.35-4.334-1.387 0-2.716.729-3.528 1.879l-.083.064c.626-3.765 2.288-5.778 4.436-5.778 1.502 0 2.199.984 2.173 2.397h1.144c.083-2.065-1.195-3.471-3.292-3.471-2.998 0-4.941 2.979-5.638 7.223-.779 4.628 1.151 6.232 3.356 6.245zm.032-1.074c-1.617 0-2.544-1.304-2.39-3.074.159-1.758 1.841-3.337 3.611-3.337 1.668 0 2.666 1.393 2.384 3.119-.306 1.816-1.879 3.292-3.605 3.292zm7.147.895h1.259l7.932-11.966.199-1.125h-8.125l-.179 1.074h6.872l-.019.083L696.298 134zm13.575.179c2.448 0 4.493-1.502 4.838-3.554.282-1.649-.639-3.1-2.077-3.407v-.051a3.75 3.75 0 002.678-2.94c.333-1.988-1.137-3.497-3.349-3.497-2.167 0-3.989 1.419-4.34 3.356-.269 1.432.358 2.704 1.585 3.081v.051c-1.528.288-2.857 1.675-3.119 3.273-.352 2.077 1.24 3.688 3.784 3.688zm.025-1.074c-1.834 0-2.87-1.042-2.633-2.538.255-1.604 1.885-2.812 3.707-2.812 1.758 0 2.845 1.125 2.602 2.672-.25 1.553-1.765 2.678-3.676 2.678zm1.049-6.373c-1.496 0-2.436-.997-2.199-2.442.236-1.463 1.585-2.505 3.202-2.505 1.547 0 2.461.939 2.218 2.371-.256 1.47-1.636 2.576-3.221 2.576zm11.948-6.027c-2.467-.02-4.379 1.917-4.781 4.225-.422 2.499 1.125 4.333 3.349 4.333 1.394 0 2.723-.728 3.528-1.879l.09-.064c-.633 3.765-2.295 5.785-4.443 5.785-1.508 0-2.192-.991-2.173-2.403h-1.144c-.083 2.064 1.195 3.477 3.292 3.477 2.998 0 4.941-2.985 5.644-7.229.761-4.628-1.15-6.226-3.362-6.245zm-.032 1.073c1.617 0 2.55 1.304 2.397 3.075-.16 1.758-1.841 3.337-3.618 3.337-1.668 0-2.665-1.394-2.384-3.12.294-1.821 1.885-3.292 3.605-3.292zm8.942 12.401c2.755 0 4.788-2.487 5.498-6.724.703-4.213-.537-6.725-3.273-6.725-2.742 0-4.781 2.512-5.472 6.725-.696 4.244.486 6.724 3.247 6.724zm.16-1.074c-2.026 0-2.838-2.103-2.25-5.65.595-3.612 2.161-5.67 4.161-5.67 2.014 0 2.851 2.128 2.263 5.67-.594 3.617-2.167 5.65-4.174 5.65zm15.725-12.196h-1.292l-1.47 9.339h1.125l1.637-9.339zm-2.691 13.187a.95.95 0 00.939-.921c.019-.498-.402-.907-.901-.907-.505 0-.94.396-.94.907 0 .512.384.921.902.921zm6.432-3.848h1.157l.07-.396c.243-1.381.741-2.02 2.007-2.762 1.342-.78 2.109-1.604 2.327-2.991.306-1.918-.889-3.369-3.024-3.369-2.039 0-3.835 1.342-4.25 3.452h1.208c.313-1.553 1.61-2.429 2.908-2.429 1.342 0 2.212.908 2.001 2.295-.154 1.061-.838 1.687-1.848 2.288-1.374.799-2.141 1.521-2.493 3.516l-.063.396zm.115 3.848a.95.95 0 00.939-.921c.019-.498-.402-.907-.901-.907-.505 0-.94.396-.94.907 0 .512.384.921.902.921zm7.79-6.641c-.511 3.061-.153 5.784.895 8.181h1.035c-.907-2-1.246-5.235-.754-8.181.499-2.941 1.886-6.182 3.465-8.182h-1.036c-1.847 2.384-3.094 5.113-3.605 8.182zm8.529 0c.511-3.062.153-5.785-.895-8.182h-1.036c.908 2 1.247 5.235.754 8.182-.498 2.94-1.885 6.181-3.464 8.181h1.035c1.848-2.384 3.094-5.113 3.606-8.181zm2.794 8.181h3.273l.16-.971h-2.18l2.385-14.421h2.179l.166-.971h-3.272l-2.711 16.363zm10.856-16.363h-3.273l-.16.971h2.18l-2.384 14.421h-2.18l-.166.971h3.273l2.71-16.363zm5.192 16.363l.166-.971c-1.445 0-1.835-.671-1.573-2.225l.473-2.819c.173-1.093-.025-1.821-1.169-2.109l.019-.115c1.246-.288 1.694-1.01 1.866-2.109l.467-2.819c.249-1.554.869-2.225 2.301-2.225l.16-.971c-2.199 0-3.158 1.003-3.516 3.196l-.402 2.48c-.237 1.425-.793 1.924-2.244 1.924h-.026l-.185 1.163h.026c1.438 0 1.815.499 1.578 1.924l-.402 2.48c-.358 2.193.262 3.196 2.461 3.196zm3.721-16.363l-.166.971c1.445 0 1.835.671 1.573 2.225l-.473 2.819c-.173 1.093.025 1.821 1.169 2.109l-.019.115c-1.246.288-1.694 1.01-1.866 2.109l-.467 2.819c-.249 1.554-.869 2.225-2.301 2.225l-.16.971c2.199 0 3.158-1.003 3.516-3.196l.403-2.48c.236-1.425.792-1.924 2.243-1.924h.026l.185-1.163h-.025c-1.439 0-1.816-.499-1.579-1.924l.402-2.48c.358-2.193-.262-3.196-2.461-3.196zm11.795 16.242c1.362 0 3.005-.409 4.04-.921l-.192-.894c-.747.377-2.275.862-3.681.862-4.226 0-6.367-2.767-5.651-7.075.69-4.251 3.848-7.089 7.837-7.089 4.014 0 5.836 3.042 5.279 6.36-.441 2.64-1.259 4.027-2.646 4.027-.767 0-1.016-.524-.882-1.419l.997-5.945h-1.035l-.205 1.176h-.07c-.179-.805-1.144-1.419-2.461-1.336-1.969.135-3.752 1.822-4.136 4.142-.409 2.404.588 4.277 2.73 4.328a3.328 3.328 0 003.004-1.649h.07c-.096 1.214.876 1.642 1.816 1.642 2.409 0 3.445-2.524 3.841-4.953.614-3.816-1.547-7.313-6.117-7.313-4.679 0-8.31 3.19-9.096 7.997-.805 4.915 1.688 8.06 6.558 8.06zm.211-4.788c-1.694 0-2.282-1.579-1.994-3.375.281-1.694 1.585-3.119 3.145-3.119 1.611 0 2.448.978 2.096 3.119-.357 2.122-1.514 3.375-3.247 3.375zm13.125 4.909h.837l.237-1.425c2.62-.153 4.359-1.681 4.698-3.688.364-2.174-1.394-3.043-2.966-3.51l-.518-.153.837-5.05c1.515.122 2.397 1.017 2.346 2.442h1.164c.204-1.962-1.093-3.388-3.331-3.515l.243-1.464h-.837l-.243 1.47c-2.205.185-4.033 1.56-4.372 3.541-.275 1.681.735 2.729 2.685 3.33l.524.16-.889 5.344c-1.553-.122-2.614-.953-2.493-2.391h-1.227c-.185 1.969 1.119 3.356 3.541 3.484l-.236 1.425zm1.253-2.524l.843-5.095.179.058c1.554.473 2.57 1.093 2.34 2.429-.237 1.451-1.611 2.46-3.362 2.608zm.243-6.495h-.013c-1.202-.358-2.442-1.003-2.212-2.384.211-1.285 1.426-2.25 3.017-2.41l-.792 4.794zM829.276 134h.991l.684-3.778h2.084l.179-.984h-2.084l.652-3.567h2.09l.179-.984h-2.09l.684-3.778h-.991l-.684 3.778h-3.612l.684-3.778h-.99l-.684 3.778h-2.084l-.179.984h2.084l-.652 3.567h-2.09l-.179.984h2.09l-.684 3.778h.991l.684-3.778h3.611l-.684 3.778zm-2.748-4.762l.652-3.567h3.611l-.652 3.567h-3.611zm15.221 2.333c-.237 1.464.479 2.608 1.988 2.608 1.495 0 2.595-1.144 2.838-2.608l.102-.594c.236-1.471-.46-2.608-1.969-2.608-1.502 0-2.621 1.137-2.857 2.608l-.102.594zm-5.325-7.638c-.256 1.47.473 2.607 1.982 2.607 1.502 0 2.582-1.137 2.838-2.607l.095-.595c.231-1.464-.46-2.608-1.975-2.608-1.495 0-2.62 1.144-2.851 2.608l-.089.595zM835.408 134h1.189l10.783-13.091h-1.195L835.408 134zm2.115-10.662c.154-.965.774-1.739 1.694-1.739.946 0 1.272.774 1.119 1.739l-.096.595c-.179.965-.767 1.738-1.687 1.738-.94 0-1.304-.773-1.125-1.738l.095-.595zm5.331 7.639c.167-.966.787-1.739 1.707-1.739.94 0 1.272.773 1.106 1.739l-.102.594c-.16.965-.767 1.739-1.688 1.739-.946 0-1.285-.774-1.125-1.739l.102-.594zM635.284 33h14.042v-2.028h-11.784v-22.7h-2.258V33zm18.159 0h2.161V14.454h-2.161V33zm1.098-21.733c.882 0 1.618-.7 1.618-1.545 0-.846-.736-1.546-1.618-1.546-.881 0-1.606.7-1.606 1.546 0 .845.725 1.545 1.606 1.545zm13.278 29.074c4.395 0 7.655-2.15 7.655-6.858V14.455h-2.101v3.537h-.218c-.76-1.666-2.294-3.791-5.698-3.791-4.589 0-7.667 3.84-7.667 9.478 0 5.687 3.187 9.128 7.63 9.128 3.333 0 4.963-1.932 5.699-3.634h.193v4.177c0 3.453-2.209 5.06-5.493 5.06-3.176 0-4.697-1.534-5.482-2.947l-1.763 1.16c1.087 2.124 3.454 3.718 7.245 3.718zm-.145-9.502c-3.683 0-5.723-2.946-5.723-7.196 0-4.178 2.004-7.486 5.723-7.486 3.634 0 5.675 3.14 5.675 7.486 0 4.48-2.101 7.196-5.675 7.196zm15.095-9.43c0-3.236 2.173-5.228 5.143-5.228 2.874 0 4.709 1.884 4.709 4.938V33h2.161V20.986c0-4.419-2.56-6.773-6.327-6.773-2.801 0-4.624 1.232-5.493 3.151h-.193V8.273h-2.15V33h2.15V21.41zm24.433-6.954h-3.924V10.01h-2.161v4.444h-2.765v1.871h2.765v12.34c0 3.03 2.391 4.612 4.769 4.612.894 0 1.497-.17 1.908-.326l-.459-1.944a4.412 4.412 0 01-1.255.169c-1.461 0-2.802-.688-2.802-3.019V16.326h3.924v-1.872zM2.15 391h10.564c5.554 0 8.512-2.898 8.512-6.834 0-3.658-2.62-5.868-5.433-6.001v-.241c2.571-.58 4.467-2.403 4.467-5.312 0-3.707-2.753-6.339-8.21-6.339h-9.9V391zm5.227-4.274v-6.568h4.383c2.511 0 4.069 1.449 4.069 3.489 0 1.859-1.268 3.079-4.19 3.079H7.377zm0-10.106v-6.121h3.972c2.319 0 3.635 1.195 3.635 2.982 0 1.956-1.594 3.139-3.731 3.139H7.377zm24.99 14.742c5.626 0 9.127-3.851 9.127-9.562 0-5.747-3.501-9.587-9.128-9.587-5.626 0-9.128 3.84-9.128 9.587 0 5.711 3.502 9.562 9.128 9.562zm.024-3.984c-2.596 0-3.924-2.379-3.924-5.615 0-3.235 1.328-5.626 3.924-5.626 2.547 0 3.875 2.391 3.875 5.626 0 3.236-1.328 5.615-3.875 5.615zm17.047-21.105h-5.143V391h5.143v-24.727zm10.41 25.029c2.994 0 4.552-1.727 5.264-3.272h.218V391h5.07v-24.727h-5.13v9.297h-.158c-.688-1.51-2.173-3.357-5.276-3.357-4.069 0-7.51 3.163-7.51 9.538 0 6.206 3.296 9.551 7.522 9.551zm1.63-4.093c-2.523 0-3.9-2.246-3.9-5.482 0-3.211 1.352-5.421 3.9-5.421 2.5 0 3.9 2.113 3.9 5.421 0 3.309-1.425 5.482-3.9 5.482zM3.394 426l.972-2.985h4.723l.972 2.985h2.966l-4.513-13.091H4.947L.428 426h2.966zm1.675-5.146l1.61-4.953h.103l1.61 4.953H5.07zm12.282 5.331c1.451 0 2.39-.632 2.87-1.547h.077V426h2.582v-6.622c0-2.34-1.981-3.324-4.167-3.324-2.353 0-3.9 1.125-4.277 2.915l2.519.204c.185-.652.767-1.131 1.745-1.131.927 0 1.457.467 1.457 1.272v.038c0 .633-.67.716-2.378.882-1.943.179-3.688.831-3.688 3.024 0 1.943 1.387 2.927 3.26 2.927zm.78-1.879c-.837 0-1.438-.39-1.438-1.138 0-.767.633-1.144 1.591-1.278.595-.083 1.567-.224 1.893-.441v1.042c0 1.029-.85 1.815-2.046 1.815zM25.044 426h5.593c2.94 0 4.507-1.534 4.507-3.618 0-1.937-1.388-3.106-2.877-3.177v-.128c1.362-.306 2.365-1.272 2.365-2.812 0-1.962-1.457-3.356-4.346-3.356h-5.242V426zm2.768-2.263v-3.477h2.32c1.33 0 2.154.767 2.154 1.847 0 .985-.67 1.63-2.218 1.63h-2.256zm0-5.35v-3.241h2.103c1.227 0 1.924.633 1.924 1.579 0 1.036-.844 1.662-1.975 1.662h-2.052zM36.944 426h2.685v-1.572h.122c.377.818 1.201 1.732 2.787 1.732 2.237 0 3.982-1.771 3.982-5.056 0-3.375-1.822-5.05-3.976-5.05-1.643 0-2.43.978-2.793 1.777h-.084v-4.922h-2.723V426zm2.666-4.909c0-1.752.741-2.87 2.065-2.87 1.348 0 2.064 1.17 2.064 2.87 0 1.713-.728 2.902-2.064 2.902-1.31 0-2.065-1.151-2.065-2.902zM53.028 426c3.989 0 6.405-2.467 6.405-6.558 0-4.078-2.416-6.533-6.366-6.533h-4.68V426h4.641zm-1.872-2.371v-8.348h1.764c2.454 0 3.752 1.252 3.752 4.161 0 2.921-1.298 4.187-3.759 4.187h-1.757zm13.894 2.531c1.585 0 2.41-.914 2.787-1.732h.115V426h2.685v-13.091H67.92v4.922h-.083c-.364-.799-1.15-1.777-2.793-1.777-2.154 0-3.976 1.675-3.976 5.05 0 3.285 1.745 5.056 3.982 5.056zm.863-2.167c-1.336 0-2.064-1.189-2.064-2.902 0-1.7.715-2.87 2.064-2.87 1.323 0 2.065 1.118 2.065 2.87 0 1.751-.754 2.902-2.065 2.902zM72.927 426h8.846v-2.282h-6.078v-3.126h5.599v-2.282h-5.6v-3.119h6.054v-2.282h-8.821V426zm15.445.192c2.429 0 4.065-1.183 4.448-3.004l-2.518-.167c-.275.748-.978 1.138-1.886 1.138-1.361 0-2.224-.901-2.224-2.365v-.006h6.686v-.748c0-3.337-2.02-4.986-4.615-4.986-2.89 0-4.762 2.052-4.762 5.082 0 3.113 1.847 5.056 4.87 5.056zm-2.18-6.092c.058-1.118.908-2.013 2.116-2.013 1.182 0 2 .843 2.007 2.013h-4.123zm17.195-2.959h2.812c-.358-2.589-2.64-4.411-5.599-4.411-3.459 0-6.124 2.493-6.124 6.737 0 4.142 2.493 6.712 6.181 6.712 3.305 0 5.663-2.09 5.663-5.536v-1.649h-5.477v2.084h2.812c-.038 1.624-1.144 2.653-2.985 2.653-2.078 0-3.388-1.553-3.388-4.289 0-2.723 1.362-4.264 3.362-4.264 1.426 0 2.391.735 2.743 1.963zm9.385 12.681c2.806 0 4.8-1.278 4.8-3.726v-9.914h-2.704v1.649h-.102c-.364-.799-1.163-1.777-2.806-1.777-2.154 0-3.976 1.675-3.976 5.018 0 3.266 1.771 4.787 3.982 4.787 1.566 0 2.442-.786 2.8-1.598h.115v1.797c0 1.284-.863 1.808-2.045 1.808-1.202 0-1.809-.524-2.033-1.054l-2.519.339c.326 1.483 1.841 2.671 4.488 2.671zm.057-6.008c-1.336 0-2.064-1.061-2.064-2.755 0-1.668.715-2.838 2.064-2.838 1.323 0 2.065 1.118 2.065 2.838 0 1.732-.754 2.755-2.065 2.755zm6.961-10.905V426h2.685v-8.553h.108l3.388 8.489h1.828l3.388-8.457h.109V426h2.684v-13.091h-3.413l-3.605 8.796h-.153l-3.606-8.796h-3.413zM136.21 426h2.723v-5.893c0-1.087.69-1.809 1.598-1.809.895 0 1.495.613 1.495 1.578V426h2.64v-5.996c0-1.016.582-1.706 1.573-1.706.869 0 1.521.543 1.521 1.636V426h2.717v-6.603c0-2.129-1.266-3.343-3.094-3.343-1.438 0-2.557.735-2.96 1.86h-.102c-.313-1.138-1.317-1.86-2.665-1.86-1.323 0-2.327.703-2.736 1.86h-.115v-1.732h-2.595V426zm28.499-6.545c0-4.283-2.659-6.725-6.13-6.725-3.49 0-6.13 2.442-6.13 6.725 0 4.263 2.64 6.724 6.13 6.724 3.471 0 6.13-2.442 6.13-6.724zm-2.806 0c0 2.774-1.317 4.276-3.324 4.276-2.014 0-3.324-1.502-3.324-4.276 0-2.775 1.31-4.277 3.324-4.277 2.007 0 3.324 1.502 3.324 4.277zm9.241 6.737c2.979 0 4.832-2.039 4.832-5.063 0-3.042-1.853-5.075-4.832-5.075s-4.833 2.033-4.833 5.075c0 3.024 1.854 5.063 4.833 5.063zm.013-2.11c-1.375 0-2.078-1.259-2.078-2.972s.703-2.979 2.078-2.979c1.348 0 2.051 1.266 2.051 2.979s-.703 2.972-2.051 2.972zm6.641 1.918h2.768v-4.641h2.02l2.48 4.641h3.055l-2.78-5.088c1.489-.639 2.313-1.937 2.313-3.727 0-2.601-1.719-4.276-4.691-4.276h-5.165V426zm2.768-6.865v-3.963h1.866c1.598 0 2.372.709 2.372 2.013 0 1.298-.774 1.95-2.359 1.95h-1.879zm8.993 6.865h2.723v-5.555c0-1.208.882-2.039 2.084-2.039.377 0 .895.064 1.151.147v-2.416a4.126 4.126 0 00-.857-.096c-1.099 0-2.001.639-2.359 1.854h-.102v-1.713h-2.64V426zm14.518-9.326h2.653c-.038-2.333-1.956-3.944-4.871-3.944-2.87 0-4.973 1.585-4.96 3.963-.006 1.931 1.355 3.036 3.567 3.567l1.425.358c1.426.345 2.218.754 2.225 1.636-.007.959-.914 1.611-2.321 1.611-1.438 0-2.473-.665-2.563-1.975h-2.678c.07 2.832 2.096 4.295 5.273 4.295 3.196 0 5.076-1.527 5.082-3.924-.006-2.18-1.649-3.337-3.925-3.848l-1.176-.282c-1.138-.262-2.09-.684-2.071-1.623 0-.844.748-1.464 2.103-1.464 1.323 0 2.135.601 2.237 1.63zm12.811 2.308c-.242-1.809-1.7-2.928-4.18-2.928-2.512 0-4.168 1.163-4.161 3.055-.007 1.471.92 2.423 2.838 2.806l1.7.339c.857.173 1.247.486 1.259.978-.012.582-.645.997-1.598.997-.971 0-1.617-.415-1.783-1.214l-2.678.141c.255 1.879 1.853 3.036 4.455 3.036 2.544 0 4.366-1.298 4.372-3.235-.006-1.419-.933-2.269-2.838-2.659l-1.777-.358c-.914-.198-1.253-.511-1.246-.984-.007-.588.658-.972 1.502-.972.946 0 1.508.518 1.643 1.151l2.492-.153zM6.756 434.909H4.155l-3.24 2.052v2.454l2.997-1.879h.077V448h2.767v-13.091zM9.868 448H19.2v-2.263h-5.497v-.089l1.911-1.873c2.691-2.455 3.413-3.682 3.413-5.171 0-2.269-1.853-3.874-4.66-3.874-2.748 0-4.634 1.643-4.627 4.212h2.627c-.006-1.252.786-2.019 1.981-2.019 1.151 0 2.008.715 2.008 1.866 0 1.042-.64 1.758-1.829 2.902l-4.66 4.315V448zm16.176.179c2.94 0 5.044-1.617 5.037-3.854.007-1.63-1.029-2.794-2.953-3.037v-.102c1.464-.262 2.474-1.298 2.468-2.768.006-2.064-1.803-3.688-4.513-3.688-2.685 0-4.705 1.573-4.743 3.835h2.652c.032-.997.947-1.642 2.078-1.642 1.119 0 1.866.677 1.86 1.662.006 1.029-.87 1.725-2.128 1.725H24.58v2.033h1.22c1.483 0 2.41.742 2.404 1.796.006 1.042-.889 1.758-2.154 1.758-1.221 0-2.135-.639-2.186-1.598h-2.787c.044 2.288 2.09 3.88 4.966 3.88zm6.829-2.48h6.283V448h2.646v-2.301h1.624v-2.218h-1.624v-8.572h-3.464l-5.465 8.61v2.18zm6.334-2.218H35.66v-.102l3.445-5.453h.102v5.555zm10.844 4.698c2.915 0 4.897-1.898 4.89-4.545.007-2.505-1.745-4.308-4.104-4.308-1.15 0-2.14.479-2.601 1.125h-.077l.339-3.279h5.72v-2.263h-8.002l-.62 6.903 2.461.442c.403-.544 1.182-.883 1.956-.883 1.317.007 2.263.959 2.263 2.334 0 1.361-.927 2.301-2.225 2.301-1.1 0-1.988-.691-2.052-1.707h-2.684c.05 2.263 2.026 3.88 4.736 3.88zm11.845 0c2.915.013 4.903-1.898 4.896-4.564.007-2.454-1.707-4.225-4.027-4.225-1.438 0-2.71.69-3.298 1.847h-.09c.013-2.589.908-4.174 2.615-4.174 1.003 0 1.726.544 1.936 1.502h2.73c-.262-2.199-2.052-3.873-4.666-3.873-3.235 0-5.312 2.62-5.325 7.057.013 4.794 2.538 6.417 5.229 6.43zm-.013-2.173c-1.278 0-2.224-1.029-2.224-2.308.006-1.272.971-2.307 2.243-2.307 1.279 0 2.212 1.003 2.205 2.301.007 1.31-.946 2.314-2.224 2.314zm7.39 1.994h2.856l5.434-10.796v-2.295h-9.186v2.263H74.7v.089L69.272 448zm14.806.179c2.954 0 5.076-1.579 5.082-3.701-.006-1.636-1.266-2.972-2.838-3.234v-.09c1.368-.281 2.346-1.464 2.352-2.902-.006-2.026-1.95-3.522-4.596-3.522-2.652 0-4.595 1.496-4.59 3.522-.005 1.432.96 2.621 2.353 2.902v.09c-1.598.262-2.844 1.598-2.838 3.234-.006 2.122 2.122 3.701 5.075 3.701zm0-2.033c-1.316 0-2.198-.78-2.198-1.885 0-1.132.926-1.95 2.198-1.95 1.266 0 2.2.818 2.2 1.95 0 1.112-.89 1.885-2.2 1.885zm0-5.848c-1.105 0-1.892-.723-1.892-1.758 0-1.023.774-1.726 1.892-1.726 1.113 0 1.892.709 1.892 1.726 0 1.035-.792 1.758-1.892 1.758zm11.754-5.606c-2.928-.013-4.903 1.905-4.89 4.564-.013 2.454 1.7 4.225 4.02 4.225 1.439 0 2.717-.697 3.299-1.847h.09c-.007 2.595-.909 4.174-2.615 4.174-1.004 0-1.726-.55-1.937-1.503h-2.73c.256 2.206 2.046 3.874 4.667 3.874 3.24 0 5.318-2.621 5.324-7.063-.006-4.788-2.537-6.418-5.228-6.424zm.019 2.173c1.272 0 2.212 1.036 2.224 2.301-.012 1.272-.984 2.308-2.25 2.308-1.278 0-2.211-.997-2.198-2.295-.013-1.31.94-2.314 2.224-2.314zm12.26 11.423c3.292 0 5.28-2.506 5.286-6.821.006-4.282-2.007-6.737-5.286-6.737-3.286 0-5.28 2.448-5.286 6.737-.013 4.302 1.988 6.814 5.286 6.821zm0-2.295c-1.502 0-2.474-1.509-2.467-4.526.006-2.972.971-4.468 2.467-4.468 1.489 0 2.461 1.496 2.461 4.468.006 3.017-.965 4.526-2.461 4.526zm14.705-11.084h-2.845l.256 9.166h2.339l.25-9.166zm-1.419 13.257c.818 0 1.527-.684 1.534-1.534a1.553 1.553 0 00-1.534-1.521c-.844 0-1.541.684-1.534 1.521a1.53 1.53 0 001.534 1.534zm6.341-4.091h2.422v-.217c.013-1.246.46-1.828 1.47-2.435 1.196-.71 1.976-1.65 1.976-3.152 0-2.237-1.803-3.541-4.341-3.541-2.32 0-4.212 1.215-4.27 3.771h2.608c.039-1.041.812-1.598 1.65-1.598.862 0 1.559.576 1.559 1.464 0 .838-.607 1.394-1.393 1.892-1.074.678-1.675 1.362-1.681 3.599v.217zm1.259 4.091c.818 0 1.528-.684 1.534-1.534a1.553 1.553 0 00-1.534-1.521c-.844 0-1.541.684-1.534 1.521a1.53 1.53 0 001.534 1.534zm7.127-6.711c0 3.176.837 5.816 2.582 8.092h2.602c-1.336-1.688-2.352-5.063-2.352-8.092 0-3.024 1.016-6.399 2.352-8.086h-2.602c-1.745 2.275-2.582 4.909-2.582 8.086zm11.354 0c0-3.177-.837-5.817-2.583-8.093h-2.601c1.336 1.688 2.352 5.063 2.352 8.093 0 3.023-1.016 6.398-2.352 8.085h2.601c1.746-2.275 2.583-4.909 2.583-8.085zm3.594 8.092h5.043v-2.039h-2.41v-12.107h2.41v-2.032h-5.043v16.178zm10.919-16.185h-5.043v2.039h2.409v12.107h-2.409v2.032h5.043v-16.178zm8.855 16.185v-2.039c-1.515 0-1.822-.582-1.822-1.816v-1.866c0-.984-.422-1.866-2.276-2.244v-.255c1.854-.377 2.276-1.26 2.276-2.238v-1.866c0-1.24.307-1.822 1.822-1.822v-2.032c-2.583 0-4.43.428-4.43 3.579v1.413c0 1.31-.492 1.866-1.962 1.866v2.455c1.47 0 1.962.556 1.962 1.866v1.419c0 3.152 1.847 3.58 4.43 3.58zm.832-16.185v2.039c1.515 0 1.822.582 1.822 1.816v1.866c0 .984.422 1.867 2.275 2.244v.255c-1.853.378-2.275 1.26-2.275 2.238v1.866c0 1.24-.307 1.822-1.822 1.822v2.032c2.583 0 4.43-.428 4.43-3.579v-1.413c0-1.31.492-1.866 1.962-1.866v-2.455c-1.47 0-1.962-.556-1.962-1.866v-1.419c0-3.152-1.847-3.58-4.43-3.58zm16.442 16.581c1.822 0 3.605-.428 4.404-.882l-.633-1.854c-.684.282-2.154.652-3.624.652-4.168 0-6.43-2.211-6.443-6.251.013-3.656 2.097-6.411 6.347-6.411 3.075 0 5.932 1.47 5.926 5.484.006 2.499-.454 3.637-1.336 3.637-.441 0-.71-.332-.716-.927v-6.238h-2.001v.716h-.089c-.218-.563-1.573-1.093-3.011-.876-1.707.249-3.548 1.649-3.56 4.615.012 3.011 1.725 4.551 3.745 4.66 1.451.083 2.755-.524 3.056-1.298h.076c.141.882.729 1.483 2.212 1.374 2.761-.153 3.816-2.377 3.81-5.516.006-4.545-2.998-7.69-8.08-7.69-5.497 0-8.648 3.407-8.655 8.547.007 5.222 3.132 8.258 8.572 8.258zm-.294-5.778c-1.668 0-2.231-1.279-2.237-2.634.006-1.457.805-2.41 2.224-2.41 1.617 0 2.103.857 2.11 2.391.019 1.739-.531 2.653-2.097 2.653zm14.518 5.471h1.509l.012-1.476c2.768-.211 4.372-1.681 4.379-3.899-.007-2.18-1.649-3.337-3.925-3.848l-.377-.09.026-3.196c.85.198 1.367.742 1.444 1.547h2.653c-.032-2.116-1.611-3.631-4.072-3.899l.013-1.502h-1.509l-.012 1.489c-2.5.243-4.264 1.751-4.251 3.931-.006 1.931 1.355 3.036 3.567 3.567l.613.153-.032 3.382c-1.042-.198-1.745-.838-1.815-1.905h-2.678c.064 2.582 1.758 4.027 4.468 4.263l-.013 1.483zm1.547-3.841l.025-2.985c.991.313 1.528.716 1.535 1.444-.007.774-.595 1.349-1.56 1.541zm-1.458-5.862c-.799-.275-1.374-.69-1.361-1.425 0-.684.486-1.215 1.387-1.4l-.026 2.825zM215.016 448h2.045l.531-3.247h1.789l.339-2.046h-1.79l.409-2.505h1.79l.345-2.046h-1.796l.531-3.247h-2.046l-.53 3.247h-2.557l.531-3.247h-2.046l-.53 3.247h-1.784l-.345 2.046h1.79l-.409 2.505h-1.79l-.339 2.046h1.79l-.531 3.247h2.046l.53-3.247h2.557l-.53 3.247zm-1.688-5.293l.409-2.505h2.557l-.409 2.505h-2.557zm15.557 2.838c.006 1.573 1.01 2.909 2.883 2.909 1.853 0 2.889-1.336 2.882-2.909v-.69c.007-1.585-1.003-2.908-2.882-2.908-1.848 0-2.877 1.336-2.883 2.908v.69zm-6.718-7.491c.006 1.572 1.01 2.896 2.876 2.896 1.86 0 2.896-1.311 2.889-2.896v-.69c.007-1.586-1.003-2.909-2.889-2.909-1.828 0-2.87 1.323-2.876 2.909v.69zm.626 9.946h1.668l9-13.091h-1.668l-9 13.091zm7.952-3.145c.006-.626.256-1.272 1.023-1.272.805 0 1.016.646 1.01 1.272v.69c.006.627-.231 1.26-1.01 1.26-.78 0-1.017-.652-1.023-1.26v-.69zm-6.705-7.491c.006-.608.242-1.272 1.003-1.272.806 0 1.023.645 1.016 1.272v.69c.007.626-.236 1.259-1.016 1.259-.754 0-.997-.633-1.003-1.259v-.69zM2.576 470l1.47-2.985H8.77L9.243 470h2.966l-2.34-13.091H6.303L-.39 470h2.966zm2.531-5.146l2.442-4.953h.102l.78 4.953H5.107zm11.4 5.331c1.451 0 2.5-.632 3.126-1.547h.077L19.48 470h2.582l1.106-6.622c.384-2.34-1.438-3.324-3.611-3.324-2.36 0-4.104 1.125-4.769 2.915l2.48.204c.294-.652.99-1.131 1.962-1.131.92 0 1.356.467 1.228 1.272v.038c-.115.627-.812.71-2.531.882-1.976.179-3.823.838-4.194 3.024-.32 1.937.908 2.927 2.774 2.927zm1.093-1.879c-.85 0-1.367-.396-1.252-1.138.121-.767.83-1.144 1.815-1.278.595-.096 1.598-.224 1.95-.441l-.167 1.042c-.179 1.029-1.15 1.815-2.346 1.815zM24.227 470h5.593c2.94 0 4.762-1.54 5.113-3.618.314-1.93-.875-3.119-2.358-3.177l.025-.128c1.394-.306 2.57-1.278 2.832-2.812.333-1.962-.901-3.356-3.79-3.356H26.4L24.226 470zm3.151-2.263l.569-3.477h2.314c1.349 0 2.033.767 1.86 1.847-.16.985-.952 1.63-2.486 1.63h-2.257zm.889-5.35l.537-3.241H30.9c1.221 0 1.816.627 1.662 1.579-.16 1.029-1.119 1.662-2.244 1.662h-2.051zm7.86 7.613h2.685l.256-1.572h.134c.243.818.907 1.732 2.493 1.732 2.237 0 4.282-1.771 4.826-5.056.556-3.375-.978-5.05-3.132-5.05-1.643 0-2.608.978-3.094 1.777h-.077l.806-4.922H38.3L36.127 470zm3.484-4.909c.281-1.752 1.22-2.87 2.538-2.87 1.348 0 1.86 1.17 1.591 2.87-.281 1.713-1.201 2.902-2.544 2.902-1.31 0-1.866-1.151-1.585-2.902zM52.274 470c3.989 0 6.737-2.384 7.402-6.405.69-4.148-1.368-6.686-5.318-6.686h-4.615L47.57 470h4.704zm-1.54-2.371l1.38-8.348h1.829c2.454 0 3.502 1.169 3.03 4.014-.493 2.985-2.072 4.334-4.54 4.334h-1.7zm13.492 2.531c1.579 0 2.55-.914 3.068-1.732h.115L67.147 470h2.684l2.174-13.091h-2.723l-.818 4.922h-.084c-.223-.799-.85-1.777-2.492-1.777-2.16 0-4.258 1.675-4.814 5.05-.543 3.285.902 5.056 3.152 5.056zm1.195-2.167c-1.342 0-1.847-1.189-1.56-2.902.275-1.7 1.164-2.87 2.512-2.87 1.324 0 1.899 1.118 1.611 2.87-.287 1.751-1.253 2.902-2.563 2.902zM72.109 470h8.846l.384-2.282h-6.08l.512-3.126h5.6l.383-2.282h-5.6l.512-3.119h6.053l.384-2.282h-8.821L72.109 470zm15.419.192c2.442 0 4.25-1.183 4.947-3.004l-2.486-.167c-.403.748-1.17 1.138-2.078 1.138-1.393 0-2.09-.754-1.84-2.301l.012-.07h6.686l.122-.748c.556-3.337-1.183-4.986-3.784-4.986-2.89 0-5.101 2.052-5.606 5.082-.524 3.113 1.003 5.056 4.027 5.056zM86.39 464.1c.23-1.08 1.272-2.013 2.442-2.013 1.176 0 1.834.843 1.643 2.013H86.39zm17.666-2.959h2.813c.076-2.589-1.905-4.411-4.865-4.411-3.458 0-6.545 2.493-7.242 6.737-.684 4.142 1.387 6.712 5.069 6.712 3.305 0 6.021-2.084 6.577-5.536l.282-1.649h-5.478l-.346 2.084h2.807c-.301 1.624-1.662 2.653-3.51 2.653-2.07 0-3.036-1.553-2.582-4.289.447-2.723 2.192-4.264 4.2-4.264 1.419 0 2.134.735 2.275 1.963zm7.301 12.681c2.794 0 5.005-1.272 5.402-3.726l1.649-9.914h-2.704l-.268 1.649h-.109c-.237-.799-.863-1.777-2.506-1.777-2.154 0-4.263 1.675-4.813 5.018-.537 3.266.984 4.787 3.196 4.787 1.56 0 2.57-.786 3.055-1.598h.115l-.294 1.797c-.204 1.284-1.176 1.808-2.358 1.808-1.208 0-1.701-.511-1.841-1.054l-2.583.339c.09 1.483 1.4 2.671 4.059 2.671zm1.023-6.008c-1.342 0-1.86-1.061-1.585-2.755.268-1.668 1.15-2.838 2.506-2.838 1.316 0 1.898 1.118 1.617 2.838-.281 1.732-1.234 2.755-2.538 2.755zm8.783-10.905L118.99 470h2.684l1.432-8.553h.109l1.968 8.489h1.835l4.781-8.457h.115L130.495 470h2.685l2.173-13.091h-3.413l-5.056 8.796h-.154l-2.154-8.796h-3.413zM135.428 470h2.717l.997-5.893c.16-1.087.978-1.809 1.879-1.809.902 0 1.4.613 1.253 1.578L141.239 470h2.64l1.016-5.996c.153-1.022.85-1.706 1.841-1.706.869 0 1.425.543 1.259 1.636L146.972 470h2.723l1.1-6.603c.358-2.129-.723-3.343-2.538-3.343-1.445 0-2.685.729-3.266 1.86h-.103c-.134-1.138-1.022-1.86-2.352-1.86-1.336 0-2.454.703-3.055 1.86h-.109l.281-1.732h-2.588L135.428 470zm29.541-6.366c.716-4.36-1.585-6.904-5.133-6.904-3.413 0-6.385 2.378-7.076 6.578-.722 4.346 1.586 6.871 5.152 6.871 3.394 0 6.348-2.346 7.057-6.545zm-2.755-.326c-.466 2.838-2.109 4.423-4.199 4.423-1.918 0-2.973-1.394-2.506-4.097.46-2.839 2.116-4.456 4.219-4.456 1.93 0 2.927 1.438 2.486 4.13zm8.142 6.884c2.966 0 5.133-2.02 5.625-5.024.499-3.056-1.023-5.114-4.014-5.114-2.973 0-5.139 2.013-5.625 5.031-.505 3.049 1.016 5.107 4.014 5.107zm.275-2.11c-1.342 0-1.822-1.24-1.547-2.927.281-1.732 1.227-3.024 2.608-3.024 1.342 0 1.815 1.247 1.547 2.941-.288 1.732-1.234 3.01-2.608 3.01zm6.366 1.918h2.768l.774-4.641h2.013l1.713 4.641h3.055l-1.936-5.088c1.598-.639 2.64-1.937 2.934-3.727.428-2.601-1.01-4.276-3.983-4.276h-5.164L176.997 470zm3.912-6.865l.665-3.963h1.867c1.585 0 2.237.703 2.026 2.013-.211 1.298-1.087 1.95-2.678 1.95h-1.88zm7.955 6.865h2.723l.914-5.555a2.448 2.448 0 012.423-2.039c.39 0 .895.064 1.131.147l.409-2.422a3.828 3.828 0 00-.837-.09c-1.099 0-2.109.639-2.672 1.854h-.102l.287-1.713h-2.639L188.864 470zm16.052-9.288h2.653c.351-2.377-1.291-3.982-4.206-3.982-2.87 0-5.222 1.579-5.625 3.963-.307 1.931.869 3.03 2.979 3.567l1.368.358c1.374.332 2.109.761 1.955 1.636-.153.953-1.163 1.611-2.582 1.611-1.438 0-2.378-.665-2.237-1.975h-2.678c-.403 2.819 1.399 4.295 4.564 4.295 3.202 0 5.324-1.527 5.727-3.924.364-2.18-1.1-3.337-3.286-3.848l-1.125-.282c-1.086-.255-1.988-.69-1.802-1.623.14-.85.984-1.464 2.339-1.464 1.323 0 2.001.601 1.956 1.668zm12.434 2.27c.064-1.809-1.259-2.928-3.803-2.928-2.442 0-4.225 1.093-4.532 2.928-.256 1.527.556 2.537 2.416 2.914l1.637.339c.837.179 1.125.428 1.061.876-.096.639-.889 1.138-1.899 1.118-.907-.006-1.444-.415-1.489-1.214l-2.659.141c-.051 1.86 1.381 3.036 4.046 3.036 2.493 0 4.462-1.228 4.781-3.113.237-1.477-.594-2.378-2.435-2.768l-1.726-.358c-.876-.192-1.112-.46-1.035-.876.095-.639.888-1.093 1.789-1.093.895 0 1.336.505 1.375 1.151l2.473-.153zM8.112 478.909H5.51l-3.58 2.052-.409 2.454 3.311-1.879h.077L3.17 492h2.768l2.174-13.091zM9.05 492h9.332l.377-2.263h-5.504l.02-.089 2.218-1.873c3.106-2.455 4.027-3.682 4.282-5.171.378-2.269-1.201-3.874-4.007-3.874-2.743 0-4.922 1.636-5.35 4.212h2.627c.21-1.252 1.15-2.019 2.345-2.019 1.151 0 1.873.709 1.682 1.866-.173 1.036-.934 1.758-2.314 2.902l-5.37 4.315L9.05 492zm16.291.179c2.883 0 5.159-1.528 5.517-3.707.274-1.669-.71-2.941-2.468-3.184v-.096c1.573-.255 2.71-1.125 2.96-2.627.332-2.045-1.215-3.835-3.989-3.835-2.608 0-4.851 1.579-5.248 3.835h2.64c.166-.997 1.323-1.642 2.468-1.642 1.118 0 1.636.607 1.482 1.515-.178 1.105-1.227 1.872-2.499 1.872h-1.15l-.34 2.033h1.273c1.45 0 2.244.614 2.077 1.649-.166 1.087-1.272 1.905-2.588 1.905-1.177 0-1.95-.639-1.816-1.598h-2.748c-.358 2.295 1.483 3.88 4.43 3.88zm7.097-2.48h6.283L38.338 492h2.646l.384-2.301h1.623l.365-2.218h-1.624l1.425-8.572h-3.464l-6.897 8.61-.358 2.18zm6.705-2.218h-3.547l.013-.102 4.346-5.453h.109l-.92 5.555zm10.065 4.698c2.927 0 5.215-1.905 5.637-4.545.422-2.499-1.016-4.308-3.381-4.308-1.15 0-2.212.479-2.787 1.125H48.6l.889-3.279h5.714l.371-2.263h-8.003l-1.77 6.903 2.39.442c.499-.537 1.33-.883 2.103-.883 1.323 0 2.103.959 1.88 2.334-.23 1.367-1.304 2.301-2.608 2.301-1.1 0-1.873-.703-1.771-1.707H45.11c-.32 2.256 1.394 3.88 4.098 3.88zm11.978 0c2.845.013 5.056-1.828 5.491-4.417.428-2.525-1.03-4.372-3.413-4.372-1.4 0-2.723.626-3.503 1.777l-.102.147c.46-2.64 1.713-4.251 3.451-4.251.972 0 1.585.512 1.605 1.49h2.671c.096-2.212-1.502-3.861-4.122-3.861-3.184 0-5.613 2.537-6.341 6.91-.812 4.851 1.502 6.571 4.263 6.577zm.096-2.173c-1.233 0-1.943-.934-1.751-2.161.21-1.349 1.438-2.454 2.767-2.454 1.228 0 1.93.933 1.733 2.147-.205 1.394-1.413 2.468-2.749 2.468zM68.454 492h2.857l7.23-10.796.377-2.295h-9.186l-.364 2.263h6.315l-.025.089L68.454 492zm14.807.179c2.928 0 5.286-1.56 5.644-3.663.282-1.649-.773-3.004-2.314-3.272v-.083c1.432-.275 2.621-1.407 2.858-2.864.338-2.046-1.381-3.567-4.04-3.567-2.634 0-4.781 1.464-5.133 3.484-.25 1.444.505 2.665 1.835 2.947v.083c-1.618.255-3.081 1.585-3.35 3.189-.364 2.135 1.528 3.746 4.5 3.746zm.269-2.033c-1.285 0-2.04-.748-1.86-1.841.185-1.157 1.265-1.994 2.556-1.994 1.247 0 2.033.78 1.848 1.911-.18 1.125-1.202 1.924-2.544 1.924zm.959-5.848c-1.08 0-1.752-.691-1.58-1.72.173-1.042 1.094-1.764 2.244-1.764 1.1 0 1.739.658 1.56 1.687-.18 1.042-1.087 1.797-2.224 1.797zm12.598-5.606c-2.838-.013-5.056 1.821-5.49 4.417-.422 2.518 1.035 4.372 3.42 4.372 1.399 0 2.722-.633 3.502-1.784l.102-.147c-.46 2.647-1.713 4.258-3.451 4.258-.985 0-1.592-.505-1.611-1.49h-2.672c-.09 2.212 1.502 3.861 4.123 3.861 3.183 0 5.618-2.544 6.347-6.916.812-4.852-1.502-6.565-4.27-6.571zm-.096 2.173c1.24 0 1.944.94 1.758 2.154-.217 1.349-1.438 2.455-2.774 2.455-1.227 0-1.93-.927-1.732-2.148.198-1.387 1.419-2.461 2.748-2.461zm10.24 11.423c3.292 0 5.702-2.519 6.418-6.821.709-4.289-.895-6.737-4.174-6.737-3.279 0-5.683 2.448-6.405 6.737-.722 4.302.863 6.821 4.161 6.821zm.384-2.295c-1.489 0-2.225-1.509-1.72-4.526.493-2.966 1.72-4.468 3.209-4.468 1.496 0 2.218 1.502 1.72 4.468-.512 3.017-1.701 4.526-3.209 4.526zm16.527-11.084h-2.832l-1.259 9.166h2.326l1.765-9.166zm-3.446 13.257c.799 0 1.573-.684 1.637-1.534.07-.831-.589-1.508-1.407-1.508-.85 0-1.604.664-1.662 1.508-.051.85.569 1.534 1.432 1.534zm6.865-4.091h2.423l.045-.249c.217-1.227.773-1.809 1.872-2.41 1.317-.69 2.244-1.643 2.487-3.145.371-2.237-1.215-3.541-3.739-3.541-2.333 0-4.424 1.215-4.897 3.771h2.608c.192-1.048 1.081-1.598 1.911-1.598.863 0 1.451.576 1.311 1.464-.128.838-.838 1.387-1.7 1.892-1.17.671-1.899 1.355-2.276 3.567l-.045.249zm.71 4.091c.799 0 1.572-.684 1.636-1.534a1.393 1.393 0 00-1.406-1.508c-.85 0-1.605.664-1.662 1.508-.051.85.569 1.534 1.432 1.534zm8.118-6.711c-.524 3.176-.122 5.816 1.24 8.092h2.601c-1.048-1.688-1.521-5.063-1.01-8.092.512-3.024 2.078-6.399 3.695-8.086h-2.608c-2.122 2.275-3.401 4.909-3.918 8.086zm11.354 0c.524-3.177.121-5.817-1.241-8.093h-2.601c1.048 1.688 1.521 5.063 1.01 8.093-.511 3.023-2.078 6.398-3.695 8.085h2.608c2.122-2.275 3.401-4.909 3.919-8.085zm2.226 8.092h5.043l.345-2.039h-2.416l1.994-12.107h2.416l.339-2.032h-5.043l-2.678 16.178zm13.642-16.185h-5.044l-.345 2.039h2.416l-1.994 12.107h-2.416l-.339 2.032h5.044l2.678-16.178zm6.144 16.185l.345-2.039c-1.515 0-1.738-.569-1.527-1.816l.313-1.866c.16-.991-.122-1.873-1.937-2.244l.038-.255c1.944-.371 2.519-1.253 2.679-2.238l.306-1.866c.205-1.246.608-1.822 2.123-1.822l.338-2.032c-2.582 0-4.525.421-5.017 3.579l-.23 1.413c-.205 1.317-.819 1.866-2.276 1.866h-.026l-.409 2.455h.026c1.476 0 1.854.556 1.643 1.866l-.224 1.419c-.492 3.152 1.253 3.58 3.835 3.58zm3.543-16.185l-.345 2.039c1.515 0 1.738.569 1.527 1.816l-.313 1.866c-.16.991.122 1.873 1.937 2.244l-.038.255c-1.943.371-2.519 1.253-2.679 2.238l-.306 1.866c-.205 1.247-.608 1.822-2.123 1.822l-.338 2.032c2.582 0 4.525-.421 5.017-3.579l.231-1.413c.204-1.316.818-1.866 2.275-1.866h.026l.409-2.455h-.026c-1.476 0-1.853-.556-1.643-1.866l.224-1.419c.492-3.152-1.253-3.58-3.835-3.58zm13.655 16.581c1.815 0 3.669-.428 4.557-.882l-.332-1.854c-.735.282-2.25.652-3.726.652-4.168 0-6.067-2.211-5.408-6.251.607-3.656 3.145-6.411 7.395-6.411 3.075 0 5.702 1.47 5.025 5.484-.403 2.499-1.055 3.637-1.937 3.637-.435 0-.652-.332-.569-.927l1.029-6.238h-1.994l-.115.716h-.09c-.134-.563-1.393-1.093-2.87-.876-1.751.249-3.816 1.649-4.314 4.615-.499 3.011.977 4.551 2.965 4.66 1.439.083 2.851-.524 3.273-1.298h.077c-.007.882.479 1.483 1.981 1.374 2.794-.153 4.213-2.377 4.718-5.516.754-4.545-1.726-7.69-6.801-7.69-5.498 0-9.211 3.407-10.068 8.547-.85 5.222 1.764 8.258 7.204 8.258zm.665-5.778c-1.669 0-2.014-1.279-1.796-2.634.249-1.457 1.201-2.41 2.62-2.41 1.617 0 1.95.857 1.707 2.391-.268 1.739-.959 2.653-2.531 2.653zm13.636 5.471h1.508l.256-1.476c2.799-.218 4.64-1.688 5.011-3.899.364-2.18-1.099-3.337-3.285-3.848l-.352-.09.556-3.189c.799.204 1.195.754 1.164 1.578h2.652c.32-2.147-.991-3.669-3.4-3.937l.262-1.502h-1.509l-.262 1.489c-2.544.237-4.551 1.745-4.922 3.931-.307 1.931.87 3.03 2.979 3.567l.607.16-.594 3.381c-1.017-.198-1.624-.837-1.509-1.911h-2.678c-.371 2.576 1.106 4.033 3.778 4.263l-.262 1.483zm2.179-3.841l.524-2.985c.934.306 1.407.728 1.279 1.444-.122.767-.799 1.343-1.803 1.541zm-.479-5.855c-.761-.275-1.285-.697-1.138-1.432.115-.691.69-1.227 1.63-1.4l-.492 2.832zm12.197 8.06h2.046l.588-3.247h1.79l.383-2.046h-1.802l.46-2.505h1.79l.377-2.046h-1.796l.588-3.247h-2.046l-.588 3.247h-2.557l.588-3.247h-2.045l-.588 3.247h-1.783l-.378 2.046h1.79l-.46 2.505h-1.777l-.384 2.046h1.79l-.588 3.247h2.046l.588-3.247h2.557l-.589 3.247zm-1.598-5.293l.461-2.505h2.556l-.46 2.505h-2.557zm14.905 2.838c-.249 1.573.531 2.909 2.397 2.909 1.86 0 3.113-1.336 3.369-2.909l.128-.69c.268-1.585-.518-2.908-2.404-2.908-1.847 0-3.106 1.336-3.362 2.908l-.128.69zm-5.465-7.491c-.262 1.572.53 2.896 2.397 2.896 1.86 0 3.1-1.311 3.369-2.896l.102-.69c.268-1.586-.524-2.909-2.404-2.909-1.828 0-3.093 1.323-3.362 2.909l-.102.69zm-1.1 9.946h1.765l11.173-13.091h-1.764L221.893 492zm8.553-3.145c.102-.626.467-1.272 1.227-1.272.806 0 .908.646.806 1.272l-.128.69c-.09.627-.441 1.26-1.221 1.26-.773 0-.901-.652-.812-1.26l.128-.69zm-5.478-7.491c.102-.608.454-1.272 1.215-1.272.805 0 .907.645.805 1.272l-.102.69c-.115.626-.441 1.259-1.221 1.259-.761 0-.914-.633-.799-1.259l.102-.69zM320.822 426l.863-2.749h4.52l.862 2.749h3.401l-4.417-13.091h-4.212L317.422 426h3.4zm1.618-5.152l1.451-4.641h.102l1.457 4.641h-3.01zm12.205 5.318c1.368 0 2.314-.53 2.851-1.534h.077V426h2.94v-6.673c0-2.078-1.847-3.273-4.346-3.273-2.64 0-4.136 1.33-4.385 3.119l2.882.103c.135-.627.652-1.01 1.477-1.01.767 0 1.253.37 1.253 1.029v.032c0 .601-.652.728-2.327.875-1.988.167-3.65.902-3.65 3.075 0 1.943 1.349 2.889 3.228 2.889zm.965-2.045c-.722 0-1.233-.345-1.233-.997 0-.633.498-1.017 1.387-1.151.582-.083 1.297-.211 1.649-.396v.933c0 .959-.805 1.611-1.803 1.611zm6.814 1.879h5.875c2.895 0 4.557-1.547 4.557-3.663 0-1.892-1.374-3.081-2.959-3.151v-.128c1.438-.3 2.448-1.342 2.448-2.838 0-1.975-1.521-3.311-4.462-3.311h-5.459V426zm3.164-2.55v-3.12h2.014c1.208 0 1.949.639 1.949 1.643 0 .927-.639 1.477-2.007 1.477h-1.956zm0-5.159v-2.87h1.803c1.055 0 1.726.543 1.726 1.413 0 .92-.742 1.457-1.777 1.457h-1.752zm8.789 7.709h3.094v-1.592h.096c.396.908 1.279 1.733 2.761 1.733 2.174 0 3.925-1.701 3.925-5.044 0-3.464-1.853-5.043-3.905-5.043-1.554 0-2.404.908-2.781 1.809h-.064v-4.954h-3.126V426zm3.062-4.909c0-1.604.665-2.595 1.809-2.595 1.157 0 1.796 1.016 1.796 2.595 0 1.585-.639 2.614-1.796 2.614-1.144 0-1.809-1.022-1.809-2.614zM370.73 426c3.989 0 6.462-2.461 6.462-6.552 0-4.084-2.473-6.539-6.468-6.539h-4.833V426h4.839zm-1.675-2.697v-7.696h1.509c2.25 0 3.458 1.022 3.458 3.841 0 2.832-1.208 3.855-3.414 3.855h-1.553zm13.571 2.838c1.482 0 2.365-.825 2.761-1.733h.096V426h3.094v-13.091h-3.126v4.954h-.064c-.371-.901-1.227-1.809-2.774-1.809-2.052 0-3.912 1.579-3.912 5.043 0 3.343 1.758 5.044 3.925 5.044zm1.086-2.436c-1.157 0-1.802-1.029-1.802-2.614 0-1.579.639-2.595 1.802-2.595 1.144 0 1.809.991 1.809 2.595 0 1.592-.671 2.614-1.809 2.614zm6.841 2.295h9.128v-2.57h-5.964v-2.691h5.497v-2.576h-5.497v-2.684h5.964v-2.57h-9.128V426zm15.699.185c2.576 0 4.27-1.246 4.628-3.176l-2.87-.084c-.243.652-.882 1.004-1.7 1.004-1.202 0-1.944-.799-1.944-2.001v-.083h6.546v-.78c0-3.234-1.969-5.011-4.756-5.011-2.966 0-4.87 2.033-4.87 5.075 0 3.145 1.879 5.056 4.966 5.056zm-1.886-6.155c.045-.978.819-1.72 1.854-1.72 1.029 0 1.771.716 1.784 1.72h-3.638zm16.733-2.845h3.203c-.32-2.608-2.647-4.455-5.676-4.455-3.497 0-6.258 2.461-6.258 6.744 0 4.142 2.544 6.705 6.296 6.705 3.368 0 5.778-2.09 5.778-5.606v-1.732h-5.644v2.307h2.595c-.032 1.381-.99 2.257-2.704 2.257-1.962 0-3.093-1.451-3.093-3.97 0-2.499 1.195-3.931 3.093-3.931 1.266 0 2.129.62 2.41 1.681zm9.785 12.618c2.959 0 4.979-1.348 4.979-3.765v-9.856h-3.113v1.681h-.089c-.377-.901-1.234-1.809-2.781-1.809-2.052 0-3.912 1.579-3.912 5.024 0 3.337 1.771 4.788 3.925 4.788 1.445 0 2.41-.671 2.781-1.579h.108v1.726c0 1.176-.767 1.623-1.815 1.623-1.004 0-1.604-.383-1.771-.907l-2.959.166c.23 1.636 1.847 2.908 4.647 2.908zm.096-6.213c-1.157 0-1.803-.939-1.803-2.512 0-1.566.639-2.582 1.803-2.582 1.144 0 1.809.991 1.809 2.582 0 1.579-.671 2.512-1.809 2.512zm6.876-10.681V426h3.081v-8.086h.109l3.145 8.003h1.968l3.145-7.958h.109V426h3.081v-13.091h-3.919l-3.323 8.105h-.154l-3.324-8.105h-3.918zM454.467 426h3.126v-5.81c0-.972.569-1.592 1.387-1.592.812 0 1.349.569 1.349 1.477V426h3.004v-5.862c0-.939.518-1.54 1.381-1.54.792 0 1.355.531 1.355 1.509V426h3.126v-6.609c0-2.078-1.279-3.337-3.133-3.337-1.45 0-2.595.761-2.959 1.93h-.102c-.262-1.176-1.317-1.93-2.679-1.93-1.342 0-2.365.735-2.774 1.93h-.108v-1.802h-2.973V426zm29.02-6.545c0-4.328-2.736-6.725-6.251-6.725-3.529 0-6.245 2.397-6.245 6.725 0 4.308 2.716 6.724 6.245 6.724 3.515 0 6.251-2.397 6.251-6.724zm-3.234 0c0 2.563-1.125 3.95-3.017 3.95-1.886 0-3.017-1.387-3.017-3.95 0-2.564 1.131-3.951 3.017-3.951 1.892 0 3.017 1.387 3.017 3.951zm9.665 6.73c3.087 0 4.96-2.039 4.96-5.062 0-3.03-1.873-5.069-4.96-5.069-3.088 0-4.961 2.039-4.961 5.069 0 3.023 1.873 5.062 4.961 5.062zm.019-2.358c-1.157 0-1.796-1.1-1.796-2.723 0-1.63.639-2.736 1.796-2.736 1.118 0 1.758 1.106 1.758 2.736 0 1.623-.64 2.723-1.758 2.723zm6.542 2.173h3.164v-4.481h1.624l2.39 4.481h3.452l-2.717-4.986c1.439-.652 2.27-1.937 2.27-3.746 0-2.691-1.835-4.359-4.775-4.359h-5.408V426zm3.164-6.974v-3.566h1.56c1.419 0 2.179.594 2.179 1.808 0 1.215-.76 1.758-2.179 1.758h-1.56zm8.754 6.974h3.126v-5.331c0-1.17.831-1.956 1.949-1.956.371 0 .927.064 1.228.166v-2.716a3.54 3.54 0 00-.876-.115c-1.074 0-1.931.626-2.288 1.924h-.103v-1.79h-3.036V426zm14.652-9.166h3.03c-.026-2.448-1.975-4.104-5.018-4.104-2.991 0-5.145 1.63-5.126 4.065-.007 1.988 1.387 3.107 3.65 3.625l1.368.319c1.438.333 2.083.723 2.096 1.458-.013.799-.76 1.355-2.032 1.355-1.4 0-2.321-.652-2.391-1.911h-3.03c.038 3.061 2.167 4.525 5.459 4.525 3.26 0 5.19-1.476 5.203-3.963-.013-2.09-1.425-3.368-4.008-3.937l-1.125-.256c-1.189-.256-1.943-.652-1.917-1.432.006-.716.62-1.234 1.847-1.234 1.234 0 1.911.557 1.994 1.49zm13.379 2.346c-.166-1.943-1.758-3.126-4.417-3.126s-4.353 1.157-4.34 3.126c-.013 1.508.952 2.48 2.914 2.844l1.713.326c.812.16 1.183.416 1.196.85-.013.492-.563.818-1.362.818-.888 0-1.489-.383-1.623-1.099l-3.088.077c.224 1.943 1.892 3.189 4.698 3.189 2.628 0 4.539-1.31 4.552-3.33-.013-1.432-.959-2.282-2.915-2.659l-1.892-.358c-.831-.166-1.1-.46-1.093-.837-.007-.499.575-.806 1.297-.806.825 0 1.4.441 1.49 1.061l2.87-.076zm-212.41 15.729h-2.933l-3.228 2.007v2.736l2.927-1.79h.077V448h3.157v-13.091zM326.912 448h9.691v-2.55h-5.306v-.084l1.566-1.444c2.839-2.474 3.58-3.733 3.58-5.235 0-2.359-1.924-3.957-4.896-3.957-2.896 0-4.833 1.668-4.826 4.334h2.998c0-1.183.728-1.867 1.815-1.867 1.067 0 1.841.659 1.841 1.739 0 .978-.614 1.643-1.688 2.608l-4.775 4.18V448zm16.458.179c3.069 0 5.248-1.624 5.242-3.899.006-1.611-1.048-2.762-3.068-2.998v-.102c1.515-.218 2.588-1.234 2.582-2.704.006-2.135-1.924-3.746-4.73-3.746-2.825 0-4.884 1.636-4.909 3.963h3.023c.026-.895.831-1.496 1.886-1.496 1.004 0 1.687.608 1.681 1.483.006.908-.799 1.534-1.962 1.534h-1.272v2.25h1.272c1.323 0 2.186.652 2.173 1.573.013.927-.78 1.572-1.905 1.572-1.118 0-1.943-.594-1.975-1.457h-3.183c.025 2.365 2.154 4.027 5.145 4.027zm6.867-2.352h6.322V448h3.023v-2.173h1.566v-2.493h-1.566v-8.425H355.6l-5.363 8.45v2.468zm6.386-2.493h-3.241v-.102l3.138-4.973h.103v5.075zm11.195 4.845c3.049 0 5.082-1.918 5.082-4.615 0-2.493-1.739-4.27-4.091-4.27-1.24 0-2.269.531-2.704 1.253h-.076l.3-3.087h5.798v-2.551h-8.4l-.568 7.057 2.793.524c.351-.588 1.08-.952 1.847-.946 1.202 0 2.058.85 2.052 2.109.006 1.253-.837 2.097-2.033 2.097-1.016 0-1.853-.633-1.898-1.598h-3.068c.038 2.352 2.103 4.027 4.966 4.027zm12.067 0c3.004.006 5.075-1.879 5.069-4.621.006-2.423-1.649-4.187-3.995-4.187-1.464 0-2.781.709-3.324 1.885h-.083c.013-2.377.792-3.88 2.397-3.88.869 0 1.56.441 1.745 1.317h3.113c-.243-2.243-2.11-4.008-4.858-4.008-3.337 0-5.504 2.627-5.516 6.993.012 4.775 2.576 6.495 5.452 6.501zm-.019-2.429c-1.157 0-2.014-.908-2.02-2.084.013-1.182.876-2.09 2.026-2.09 1.17 0 2.02.895 2.014 2.084.006 1.195-.85 2.09-2.02 2.09zm7.439 2.25h3.253l5.299-10.521v-2.57h-9.447v2.551h6.174v.083L387.305 448zm15.139.179c3.062 0 5.286-1.592 5.286-3.72 0-1.624-1.31-2.941-2.94-3.196v-.102c1.419-.269 2.454-1.445 2.454-2.89 0-2.039-2.032-3.541-4.8-3.541s-4.8 1.496-4.8 3.541c0 1.445 1.01 2.621 2.454 2.89v.102c-1.655.255-2.94 1.572-2.94 3.196 0 2.128 2.224 3.72 5.286 3.72zm0-2.244c-1.163 0-1.969-.728-1.969-1.732 0-1.023.831-1.758 1.969-1.758 1.138 0 1.969.742 1.969 1.758 0 1.01-.812 1.732-1.969 1.732zm0-5.721c-.997 0-1.713-.671-1.713-1.598 0-.92.71-1.566 1.713-1.566 1.004 0 1.713.652 1.713 1.566 0 .934-.722 1.598-1.713 1.598zm11.979-5.529c-3.017-.006-5.082 1.886-5.069 4.622-.013 2.429 1.649 4.18 3.995 4.18 1.464 0 2.78-.703 3.324-1.879h.076c-.006 2.384-.792 3.874-2.39 3.874-.882 0-1.56-.435-1.752-1.311h-3.113c.237 2.257 2.103 4.008 4.865 4.008 3.336 0 5.503-2.627 5.51-6.993-.007-4.775-2.576-6.494-5.446-6.501zm.019 2.429c1.157 0 2.007.914 2.02 2.084-.013 1.17-.882 2.09-2.033 2.09-1.17 0-2.02-.895-2.007-2.083-.013-1.189.85-2.091 2.02-2.091zm12.578 11.206c3.426.006 5.529-2.525 5.535-6.846.007-4.296-2.109-6.744-5.535-6.744s-5.523 2.442-5.529 6.744c-.013 4.308 2.103 6.846 5.529 6.846zm0-2.589c-1.362 0-2.288-1.368-2.276-4.257.007-2.832.921-4.174 2.276-4.174 1.361 0 2.275 1.342 2.282 4.174.006 2.889-.914 4.257-2.282 4.257zm14.916-10.822h-3.215l.294 9.083h2.627l.294-9.083zm-1.605 13.276c.876 0 1.649-.741 1.662-1.662a1.688 1.688 0 00-1.662-1.642c-.92 0-1.674.735-1.662 1.642a1.651 1.651 0 001.662 1.662zm6.507-4.193h2.723v-.262c0-1.131.467-1.675 1.432-2.25 1.228-.722 2.039-1.649 2.039-3.177 0-2.32-1.911-3.573-4.544-3.573-2.404 0-4.385 1.195-4.424 3.88h2.941c.019-.888.696-1.425 1.457-1.425.754 0 1.355.505 1.355 1.265 0 .78-.607 1.279-1.406 1.79-1.016.652-1.566 1.323-1.573 3.49v.262zm1.413 4.193c.876 0 1.649-.741 1.662-1.662a1.688 1.688 0 00-1.662-1.642c-.92 0-1.675.735-1.662 1.642-.013.921.742 1.662 1.662 1.662zm7.205-6.73c0 3.157.831 5.778 2.634 8.054h3.03c-1.374-1.688-2.404-5.037-2.404-8.054 0-3.024 1.03-6.373 2.404-8.061h-3.03c-1.803 2.276-2.634 4.896-2.634 8.061zm12.07-.007c0-3.158-.831-5.778-2.633-8.054h-3.03c1.374 1.688 2.403 5.037 2.403 8.054 0 3.024-1.029 6.373-2.403 8.061h3.03c1.802-2.276 2.633-4.897 2.633-8.061zm3.447 8.061h5.465v-2.295h-2.435v-11.525h2.435v-2.295h-5.465v16.115zm11.623-16.115h-5.466v2.295h2.436v11.525h-2.436v2.295h5.466v-16.115zm9.135 16.115v-2.295c-1.527 0-1.783-.55-1.783-1.701v-1.636c0-.965-.454-1.886-2.442-2.282v-.287c1.988-.397 2.442-1.317 2.442-2.282v-1.637c0-1.15.256-1.7 1.783-1.7v-2.295c-2.608 0-4.8.211-4.8 3.631v1.208c0 1.278-.499 1.841-1.975 1.841v2.761c1.476 0 1.975.556 1.975 1.841v1.202c0 3.42 2.192 3.631 4.8 3.631zm.692-16.115v2.295c1.528 0 1.784.55 1.784 1.7v1.637c0 .965.454 1.885 2.441 2.282v.287c-1.987.396-2.441 1.317-2.441 2.282v1.636c0 1.151-.256 1.701-1.784 1.701v2.295c2.608 0 4.801-.211 4.801-3.631v-1.208c0-1.279.498-1.841 1.975-1.841v-2.762c-1.477 0-1.975-.556-1.975-1.84v-1.202c0-3.42-2.193-3.631-4.801-3.631zm16.986 16.69c1.987 0 3.809-.441 4.615-.94l-.729-2.077c-.754.319-2.218.645-3.714.645-4.097 0-6.341-2.128-6.354-6.066.013-3.451 2.001-6.27 6.335-6.27 2.742 0 5.906.997 5.9 5.395.006 2.365-.505 3.445-1.247 3.445-.326 0-.549-.23-.562-.786v-6.392h-2.212v.716h-.096c-.23-.563-1.7-1.106-3.189-.857-1.643.268-3.612 1.604-3.625 4.788.013 3.202 1.918 4.64 3.868 4.762 1.444.089 2.927-.486 3.228-1.266h.076c.141.812.461 1.483 2.142 1.342 2.78-.204 4.103-2.198 4.091-5.561.012-4.896-3.184-7.939-8.361-7.939-5.683 0-8.911 3.548-8.917 8.738.006 5.248 3.234 8.323 8.751 8.323zm-.154-6.009c-1.668 0-2.218-1.201-2.224-2.467.006-1.445.792-2.295 2.199-2.295 1.642 0 2.013.946 2.019 2.276.032 1.611-.473 2.486-1.994 2.486zm14.747 5.561h1.662l.019-1.495c2.799-.218 4.429-1.65 4.442-3.938-.013-2.09-1.425-3.368-4.008-3.937l-.338-.077.038-2.723c.665.217 1.042.69 1.099 1.368h3.03c-.025-2.193-1.585-3.746-4.097-4.053l.019-1.508h-1.662l-.019 1.489c-2.602.249-4.404 1.803-4.385 4.033-.006 1.988 1.387 3.107 3.65 3.625l.639.147-.038 2.895c-.927-.217-1.502-.831-1.56-1.821h-3.03c.032 2.774 1.784 4.231 4.558 4.487l-.019 1.508zm1.713-4.18l.032-2.455c.792.288 1.157.646 1.169 1.196-.012.607-.441 1.067-1.201 1.259zm-1.592-5.689c-.671-.256-1.067-.62-1.048-1.189.006-.55.364-.978 1.08-1.15l-.032 2.339zM536.709 448h2.301l.511-3.119h1.733l.39-2.301h-1.745l.37-2.25h1.733l.39-2.302h-1.746l.512-3.119h-2.301l-.512 3.119h-2.301l.512-3.119h-2.302l-.511 3.119h-1.732l-.39 2.302h1.745l-.371 2.25h-1.732l-.39 2.301h1.745l-.511 3.119h2.301l.511-3.119h2.301l-.511 3.119zm-1.413-5.42l.371-2.25h2.301l-.371 2.25h-2.301zm15.528 2.965c.007 1.618 1.049 3.005 2.985 3.005 1.931 0 3.011-1.387 2.998-3.005v-.69c.013-1.636-1.042-3.004-2.998-3.004-1.911 0-2.978 1.387-2.985 3.004v.69zm-6.788-7.491c.013 1.617 1.048 2.979 2.985 2.979 1.937 0 3.011-1.343 3.004-2.979v-.69c.007-1.637-1.042-3.005-3.004-3.005-1.892 0-2.972 1.368-2.985 3.005v.69zm.665 9.946h1.745l9-13.091h-1.745l-9 13.091zm8.162-3.145c.007-.569.224-1.189.946-1.189.767 0 .953.62.94 1.189v.69c.013.569-.198 1.164-.94 1.164-.728 0-.939-.614-.946-1.164v-.69zm-6.769-7.491c.013-.55.205-1.189.927-1.189.767 0 .952.62.94 1.189v.69c.012.569-.199 1.163-.94 1.163-.703 0-.914-.594-.927-1.163v-.69zM320.004 470l1.323-2.749h4.52l.402 2.749h3.401l-2.244-13.091h-4.212L316.604 470h3.4zm2.474-5.152l2.231-4.641h.102l.684 4.641h-3.017zm11.323 5.318c1.368 0 2.417-.53 3.107-1.534h.077l-.23 1.368h2.94l1.119-6.673c.345-2.078-1.324-3.273-3.804-3.273-2.646 0-4.372 1.33-4.909 3.119l2.864.103c.23-.633.837-1.01 1.655-1.01.767 0 1.177.37 1.074 1.029v.032c-.108.594-.786.728-2.48.875-2.013.167-3.79.902-4.155 3.075-.326 1.937.876 2.889 2.742 2.889zm1.317-2.045c-.735 0-1.176-.358-1.074-.997.096-.64.665-1.017 1.586-1.151.575-.096 1.329-.211 1.7-.396l-.147.933c-.166.959-1.074 1.611-2.065 1.611zm6.488 1.879h5.874c2.89 0 4.814-1.547 5.165-3.663.313-1.885-.856-3.093-2.442-3.151l.026-.128c1.477-.307 2.666-1.355 2.928-2.838.332-1.975-.978-3.311-3.919-3.311h-5.459L341.606 470zm3.599-2.55l.498-3.12h2.014c1.221 0 1.847.639 1.681 1.643-.141.92-.882 1.477-2.237 1.477h-1.956zm.85-5.159l.473-2.87h1.803c1.042 0 1.636.531 1.495 1.413-.147.914-.99 1.457-2.013 1.457h-1.758zm7.504 7.709h3.094l.256-1.592h.121c.23.908.972 1.733 2.455 1.733 2.173 0 4.218-1.701 4.768-5.044.575-3.464-1.01-5.043-3.062-5.043-1.553 0-2.569.908-3.081 1.809h-.063l.811-4.954h-3.125L353.559 470zm3.88-4.909c.256-1.604 1.093-2.595 2.237-2.595 1.164 0 1.624 1.016 1.368 2.595-.255 1.585-1.073 2.614-2.224 2.614-1.144 0-1.636-1.022-1.381-2.614zM369.982 470c3.989 0 6.782-2.365 7.447-6.386.69-4.161-1.426-6.705-5.421-6.705h-4.762L365.073 470h4.909zm-1.298-2.697l1.279-7.696h1.572c2.25 0 3.247.926 2.787 3.681-.473 2.896-1.943 4.015-4.142 4.015h-1.496zm13.111 2.838c1.476 0 2.499-.825 3.042-1.733h.102l-.268 1.592h3.094l2.173-13.091h-3.126l-.824 4.954h-.064c-.224-.901-.927-1.809-2.48-1.809-2.046 0-4.162 1.579-4.737 5.043-.556 3.343.914 5.044 3.088 5.044zm1.476-2.436c-1.157 0-1.623-1.029-1.355-2.614.256-1.579 1.055-2.595 2.218-2.595 1.144 0 1.656.991 1.394 2.595-.269 1.592-1.119 2.614-2.257 2.614zm6.482 2.295h9.128l.434-2.57h-5.964l.435-2.691h5.497l.435-2.576h-5.497l.434-2.684h5.964l.435-2.57h-9.128L389.753 470zm15.673.185c2.589 0 4.462-1.246 5.158-3.176l-2.851-.084c-.357.659-1.061 1.004-1.872 1.004-1.221 0-1.809-.722-1.611-1.969l.019-.115h6.539l.122-.78c.536-3.228-1.125-5.011-3.912-5.011-2.96 0-5.21 2.033-5.715 5.075-.53 3.139 1.042 5.056 4.123 5.056zm-.825-6.155c.224-.972 1.119-1.72 2.129-1.72 1.023 0 1.624.716 1.464 1.72h-3.593zm17.161-2.845h3.203c.121-2.608-1.911-4.455-4.928-4.455-3.503 0-6.674 2.461-7.383 6.744-.684 4.142 1.438 6.705 5.184 6.705 3.375 0 6.13-2.09 6.705-5.606l.288-1.732h-5.638l-.384 2.307h2.589c-.249 1.381-1.432 2.257-3.151 2.257-1.956 0-2.768-1.451-2.352-3.97.409-2.499 1.968-3.931 3.873-3.931 1.266 0 1.892.62 1.994 1.681zm7.708 12.618c2.946 0 5.196-1.336 5.593-3.765l1.636-9.856h-3.113l-.275 1.681h-.089c-.237-.901-.933-1.809-2.48-1.809-2.052 0-4.181 1.579-4.75 5.024-.549 3.337.978 4.788 3.132 4.788 1.445 0 2.525-.671 3.037-1.579h.108l-.287 1.726c-.179 1.17-1.036 1.623-2.084 1.623-1.016 0-1.534-.37-1.611-.907l-2.991.166c-.032 1.636 1.361 2.908 4.174 2.908zm1.099-6.213c-1.157 0-1.624-.939-1.368-2.512.249-1.566 1.048-2.582 2.212-2.582 1.144 0 1.649.991 1.4 2.582-.256 1.579-1.106 2.512-2.244 2.512zm8.66-10.681L437.055 470h3.081l1.355-8.086h.109l1.815 8.003h1.963l4.461-7.958h.109L448.612 470h3.081l2.173-13.091h-3.918l-4.666 8.105h-.153l-1.982-8.105h-3.918zM453.686 470h3.126l.984-5.81c.141-.972.818-1.592 1.63-1.592.818 0 1.259.563 1.125 1.477L459.547 470h3.011l.991-5.862c.134-.939.754-1.54 1.611-1.54.799 0 1.272.531 1.131 1.509l-.997 5.893h3.119l1.1-6.609c.351-2.071-.729-3.337-2.57-3.337-1.457 0-2.729.761-3.286 1.93h-.102c-.07-1.176-.997-1.93-2.352-1.93s-2.493.735-3.094 1.93h-.108l.294-1.802h-2.973L453.686 470zm30.055-6.341c.729-4.417-1.662-6.929-5.26-6.929-3.452 0-6.482 2.327-7.172 6.558-.729 4.398 1.662 6.891 5.286 6.891 3.42 0 6.437-2.288 7.146-6.52zm-3.164-.371c-.441 2.634-1.892 4.117-3.867 4.117-1.777 0-2.678-1.253-2.237-3.746.422-2.633 1.885-4.155 3.886-4.155 1.796 0 2.615 1.317 2.218 3.784zm8.534 6.897c3.081 0 5.279-2.032 5.778-5.043.499-3.036-1.042-5.088-4.129-5.088-3.088 0-5.286 2.033-5.779 5.05-.505 3.03 1.029 5.081 4.13 5.081zm.351-2.358c-1.131 0-1.572-1.087-1.304-2.704.262-1.636 1.1-2.755 2.25-2.755 1.125 0 1.566 1.099 1.304 2.71-.268 1.643-1.099 2.749-2.25 2.749zm6.216 2.173h3.165l.747-4.481h1.618l1.649 4.481h3.451l-1.892-4.986c1.554-.658 2.596-1.943 2.89-3.746.447-2.691-1.1-4.359-4.047-4.359h-5.407L495.678 470zm4.328-6.974l.594-3.566h1.56c1.406 0 2.065.594 1.873 1.808-.198 1.215-1.048 1.758-2.467 1.758h-1.56zm7.731 6.974h3.126l.882-5.331c.204-1.17 1.163-1.956 2.269-1.956.39 0 .92.058 1.208.166l.46-2.723a3.687 3.687 0 00-.856-.108c-1.074 0-2.039.626-2.615 1.924h-.102l.301-1.79h-3.037L507.737 470zm16.161-9.141h3.03c.396-2.48-1.285-4.129-4.328-4.129-2.998 0-5.401 1.624-5.804 4.065-.319 1.988.882 3.101 3.049 3.625l1.311.319c1.387.32 1.987.723 1.86 1.458-.128.799-.966 1.355-2.25 1.355-1.394 0-2.225-.652-2.078-1.911h-3.023c-.473 3.049 1.425 4.525 4.704 4.525 3.267 0 5.44-1.476 5.855-3.963.352-2.09-.869-3.375-3.349-3.937l-1.074-.256c-1.15-.256-1.854-.665-1.687-1.432.127-.722.818-1.234 2.045-1.234 1.234 0 1.803.557 1.739 1.515zm12.982 2.321c.173-1.937-1.291-3.126-4.033-3.126-2.57 0-4.366 1.061-4.686 2.959-.262 1.579.601 2.628 2.506 2.992l1.662.326c.792.16 1.048.339.997.703-.077.569-.793 1.004-1.675.984-.799-.012-1.291-.377-1.316-1.099l-3.043.077c-.096 1.924 1.406 3.189 4.283 3.189 2.563 0 4.602-1.221 4.934-3.164.243-1.508-.626-2.429-2.518-2.806l-1.841-.358c-.793-.166-.959-.39-.895-.696.077-.563.805-.966 1.611-.966.741 0 1.201.429 1.195 1.061l2.819-.076zm-211.506 15.729h-2.934l-3.567 2.007-.448 2.736 3.228-1.79h.077L320.043 492h3.157l2.174-13.091zm.72 13.091h9.691l.428-2.55h-5.312l.019-.084 1.803-1.444c3.253-2.48 4.199-3.733 4.455-5.235.396-2.359-1.266-3.957-4.238-3.957-2.895 0-5.113 1.662-5.561 4.334h3.004c.192-1.176 1.049-1.867 2.142-1.867 1.061 0 1.719.652 1.54 1.739-.16.972-.882 1.636-2.122 2.608l-5.472 4.18-.377 2.276zm16.586.179c2.992 0 5.363-1.566 5.715-3.733.274-1.668-.78-2.934-2.589-3.164v-.096c1.636-.204 2.812-1.023 3.062-2.544.345-2.097-1.311-3.912-4.194-3.912-2.735 0-5.037 1.636-5.433 3.963h3.004c.141-.895 1.208-1.496 2.276-1.496 1.004 0 1.464.525 1.329 1.317-.166.997-1.131 1.7-2.313 1.7h-1.202l-.371 2.25h1.336c1.266 0 2.033.486 1.886 1.407-.154.939-1.125 1.738-2.333 1.738-1.055 0-1.765-.594-1.624-1.457h-3.138c-.39 2.371 1.514 4.027 4.589 4.027zm7.097-2.352h6.328l-.364 2.173h3.023l.358-2.173h1.566l.416-2.493h-1.567l1.4-8.425h-3.982l-6.769 8.45-.409 2.468zm6.807-2.493h-3.253l.025-.102 3.963-4.973h.103l-.838 5.075zm10.391 4.845c3.061 0 5.414-1.924 5.836-4.615.421-2.487-1.017-4.27-3.363-4.27-1.24 0-2.358.531-2.914 1.253h-.077l.812-3.087h5.797l.416-2.551h-8.399l-1.745 7.057 2.71.524c.454-.588 1.24-.946 2.007-.946 1.202 0 1.911.844 1.707 2.109-.211 1.26-1.183 2.097-2.391 2.097-1.016 0-1.739-.646-1.63-1.598h-3.068c-.345 2.346 1.444 4.027 4.302 4.027zm12.207 0c2.927.006 5.222-1.796 5.663-4.462.422-2.499-.984-4.346-3.394-4.346-1.419 0-2.787.639-3.528 1.815l-.103.16c.429-2.41 1.554-3.97 3.196-3.97.838 0 1.432.403 1.439 1.298h3.068c.115-2.256-1.547-3.989-4.315-3.989-3.273 0-5.791 2.538-6.507 6.833-.812 4.839 1.54 6.655 4.481 6.661zm.115-2.429c-1.106 0-1.745-.793-1.579-1.924.198-1.266 1.31-2.25 2.538-2.25 1.112 0 1.738.812 1.566 1.918-.179 1.284-1.285 2.256-2.525 2.256zm7.189 2.25h3.254l7.05-10.521.422-2.57h-9.447l-.416 2.551h6.175l-.026.083L386.486 492zm15.114.179c3.056 0 5.523-1.592 5.875-3.695.287-1.642-.812-2.966-2.404-3.221v-.096c1.483-.262 2.71-1.413 2.947-2.877.332-2.039-1.457-3.56-4.232-3.56-2.761 0-5.024 1.483-5.363 3.516-.242 1.451.576 2.652 1.95 2.921v.096c-1.668.255-3.19 1.572-3.464 3.177-.365 2.128 1.623 3.739 4.691 3.739zm.339-2.244c-1.138 0-1.841-.709-1.675-1.713.173-1.029 1.125-1.777 2.276-1.777 1.131 0 1.841.71 1.668 1.733-.166 1.016-1.099 1.757-2.269 1.757zm.94-5.721c-.985 0-1.598-.652-1.438-1.578.153-.927.997-1.586 2.013-1.586.991 0 1.579.62 1.419 1.547-.16.927-.978 1.617-1.994 1.617zm12.785-5.529c-2.921-.006-5.215 1.797-5.657 4.456-.421 2.505.985 4.346 3.395 4.346 1.425 0 2.793-.633 3.528-1.809l.102-.16c-.428 2.404-1.553 3.964-3.196 3.964-.837 0-1.438-.39-1.444-1.292h-3.062c-.115 2.257 1.54 3.989 4.308 3.989 3.279 0 5.804-2.538 6.514-6.833.811-4.839-1.534-6.654-4.488-6.661zm-.108 2.429c1.112 0 1.745.799 1.579 1.924-.199 1.26-1.311 2.25-2.538 2.25-1.112 0-1.751-.811-1.572-1.917.178-1.285 1.297-2.257 2.531-2.257zm10.583 11.206c3.42 0 5.945-2.532 6.661-6.846.716-4.309-.997-6.744-4.417-6.744-3.413 0-5.919 2.442-6.648 6.744-.735 4.308.965 6.846 4.404 6.846zm.435-2.589c-1.361 0-2.071-1.368-1.592-4.257.473-2.826 1.63-4.174 2.992-4.174 1.355 0 2.052 1.348 1.572 4.174-.492 2.883-1.604 4.257-2.972 4.257zm16.674-10.822h-3.19l-1.208 9.083h2.608l1.79-9.083zm-3.637 13.276c.863 0 1.719-.735 1.802-1.662a1.488 1.488 0 00-1.496-1.636c-.926 0-1.745.729-1.828 1.636-.076.927.595 1.662 1.522 1.662zm7.069-4.193h2.717l.045-.275c.198-1.125.76-1.674 1.821-2.243 1.343-.703 2.295-1.643 2.551-3.171.383-2.32-1.33-3.573-3.944-3.573-2.423 0-4.59 1.195-5.069 3.88h2.94c.147-.895.934-1.425 1.701-1.425.747 0 1.259.505 1.137 1.265-.121.78-.831 1.272-1.706 1.79-1.106.652-1.784 1.323-2.148 3.477l-.045.275zm.812 4.193c.863 0 1.719-.735 1.803-1.662a1.488 1.488 0 00-1.496-1.636c-.927 0-1.745.729-1.828 1.636-.077.927.594 1.662 1.521 1.662zm8.228-6.73c-.511 3.157-.121 5.778 1.304 8.054h3.024c-1.087-1.688-1.579-5.037-1.068-8.054.511-3.024 2.084-6.373 3.739-8.061h-3.029c-2.186 2.276-3.452 4.896-3.97 8.061zm12.076-.007c.512-3.158.122-5.778-1.304-8.054h-3.023c1.087 1.688 1.579 5.037 1.067 8.054-.511 3.024-2.083 6.373-3.739 8.061h3.03c2.186-2.276 3.452-4.897 3.969-8.061zm2.067 8.061h5.458l.39-2.295h-2.435l1.892-11.525h2.435l.39-2.295h-5.465l-2.665 16.115zm14.351-16.115h-5.458l-.39 2.295h2.435l-1.892 11.525h-2.435l-.39 2.295h5.465l2.665-16.115zm6.426 16.115l.39-2.295c-1.528 0-1.7-.544-1.502-1.701l.268-1.636c.16-.971-.147-1.892-2.096-2.288l.051-.275c2.077-.396 2.684-1.317 2.844-2.288l.269-1.637c.191-1.157.53-1.7 2.058-1.7l.39-2.295c-2.608 0-4.871.211-5.401 3.631l-.192 1.208c-.198 1.285-.818 1.841-2.289 1.841h-.025l-.46 2.761h.025c1.49 0 1.867.556 1.668 1.841l-.191 1.202c-.531 3.426 1.585 3.631 4.193 3.631zm3.408-16.115l-.389 2.295c1.527 0 1.7.543 1.502 1.7l-.269 1.637c-.16.971.147 1.892 2.097 2.288l-.051.275c-2.078.396-2.685 1.317-2.845 2.288l-.268 1.636c-.192 1.157-.531 1.701-2.058 1.701l-.39 2.295c2.608 0 4.87-.211 5.401-3.631l.192-1.208c.198-1.285.818-1.841 2.288-1.841h.026l.46-2.762h-.026c-1.489 0-1.866-.556-1.668-1.84l.192-1.202c.53-3.426-1.586-3.631-4.194-3.631zm14.167 16.69c1.988 0 3.886-.441 4.787-.94l-.383-2.077c-.825.319-2.327.645-3.822.645-4.098 0-5.996-2.128-5.351-6.066.582-3.451 3.024-6.27 7.358-6.27 2.742 0 5.752.997 5.011 5.395-.371 2.365-1.067 3.445-1.809 3.445-.326 0-.511-.23-.441-.786l1.055-6.392h-2.212l-.109.716h-.096c-.147-.563-1.521-1.106-3.061-.857-1.688.268-3.867 1.604-4.404 4.788-.525 3.202 1.157 4.64 3.081 4.762 1.425.089 3.017-.486 3.438-1.266h.077c.007.812.211 1.483 1.911 1.342 2.826-.204 4.462-2.198 5.005-5.561.819-4.896-1.866-7.939-7.044-7.939-5.682 0-9.479 3.548-10.348 8.738-.857 5.248 1.841 8.323 7.357 8.323zm.856-6.009c-1.668 0-2.026-1.201-1.821-2.467.249-1.445 1.176-2.295 2.582-2.295 1.643 0 1.847.946 1.643 2.276-.243 1.611-.882 2.486-2.404 2.486zm13.839 5.561h1.662l.269-1.502c2.831-.217 4.691-1.649 5.075-3.931.351-2.09-.869-3.375-3.35-3.937l-.313-.077.486-2.717c.614.218.895.697.85 1.387h3.03c.352-2.218-.952-3.771-3.401-4.071l.269-1.515h-1.662l-.269 1.489c-2.646.243-4.698 1.796-5.068 4.033-.32 1.988.882 3.101 3.049 3.625l.632.153-.517 2.889c-.895-.211-1.387-.831-1.272-1.821h-3.024c-.428 2.761 1.093 4.238 3.823 4.487l-.269 1.508zm2.404-4.18l.441-2.455c.735.282 1.048.646.952 1.196-.096.601-.594 1.067-1.393 1.259zm-.646-5.689c-.639-.262-.984-.626-.863-1.189.096-.556.531-.984 1.278-1.157l-.415 2.346zM536.845 492h2.301l.569-3.119h1.732l.435-2.301h-1.752l.409-2.25h1.739l.428-2.302h-1.751l.569-3.119h-2.301l-.569 3.119h-2.301l.569-3.119h-2.302l-.569 3.119h-1.725l-.429 2.302h1.739l-.409 2.25h-1.726l-.435 2.301h1.745l-.568 3.119h2.301l.569-3.119h2.301l-.569 3.119zm-1.317-5.42l.409-2.25h2.301l-.409 2.25h-2.301zm14.87 2.965c-.263 1.618.549 3.005 2.486 3.005 1.937 0 3.241-1.387 3.497-3.005l.127-.69c.282-1.636-.543-3.004-2.505-3.004-1.912 0-3.222 1.387-3.478 3.004l-.127.69zm-5.536-7.491c-.268 1.617.55 2.979 2.493 2.979 1.93 0 3.228-1.343 3.496-2.979l.103-.69c.281-1.637-.55-3.005-2.506-3.005-1.892 0-3.202 1.368-3.484 3.005l-.102.69zM543.839 492h1.841l11.174-13.091h-1.841L543.839 492zm8.725-3.145c.096-.569.416-1.189 1.138-1.189.767 0 .844.62.748 1.189l-.128.69c-.076.569-.396 1.164-1.138 1.164-.722 0-.824-.614-.747-1.164l.127-.69zm-5.541-7.491c.102-.55.402-1.189 1.125-1.189.767 0 .843.62.741 1.189l-.102.69c-.103.569-.39 1.163-1.132 1.163-.709 0-.837-.594-.735-1.163l.103-.69zM318.871 391h17.242v-4.854h-11.265v-5.083h10.384v-4.866h-10.384v-5.071h11.265v-4.853h-17.242V391zm25.464-18.545h-5.989l5.119 9.272L338.08 391h5.989l3.32-6.158 3.405 6.158h5.904l-5.373-9.273 5.18-9.272h-5.952l-3.164 6.109-3.054-6.109zm24.79 0h-3.345v-4.444h-5.904v4.444h-2.451v4.346h2.451v9.019c-.036 3.755 2.403 5.639 6.568 5.446a12.398 12.398 0 003.019-.532l-.894-4.262c-.253.061-.845.181-1.292.181-.954 0-1.497-.386-1.497-1.485v-8.367h3.345v-4.346zM371.593 391h5.904v-10.07c0-2.209 1.57-3.694 3.683-3.694.7 0 1.75.121 2.318.314v-5.132a6.79 6.79 0 00-1.654-.217c-2.029 0-3.647 1.183-4.323 3.634h-.193v-3.38h-5.735V391zm18.297.314c2.584 0 4.371-1.002 5.385-2.898h.145V391h5.554v-12.605c0-3.924-3.489-6.182-8.21-6.182-4.987 0-7.812 2.511-8.283 5.892l5.445.193c.254-1.183 1.232-1.907 2.79-1.907 1.448 0 2.366.7 2.366 1.944v.06c0 1.135-1.232 1.376-4.395 1.654-3.755.314-6.894 1.702-6.894 5.808 0 3.67 2.548 5.457 6.097 5.457zm1.823-3.864c-1.364 0-2.33-.652-2.33-1.883 0-1.196.942-1.92 2.62-2.174 1.099-.156 2.451-.398 3.115-.748v1.763c0 1.811-1.521 3.042-3.405 3.042zm19.088 3.55h11.096c5.469 0 8.608-2.922 8.608-6.918 0-3.574-2.596-5.82-5.59-5.953v-.241c2.717-.568 4.624-2.536 4.624-5.361 0-3.731-2.873-6.254-8.427-6.254h-10.311V391zm5.976-4.817v-5.893h3.804c2.282 0 3.682 1.208 3.682 3.103 0 1.751-1.207 2.79-3.791 2.79h-3.695zm0-9.744v-5.421h3.405c1.992 0 3.26 1.026 3.26 2.668 0 1.739-1.4 2.753-3.356 2.753h-3.309zm24.715 14.911c5.832 0 9.369-3.851 9.369-9.562 0-5.723-3.537-9.575-9.369-9.575s-9.369 3.852-9.369 9.575c0 5.711 3.537 9.562 9.369 9.562zm.036-4.455c-2.185 0-3.393-2.077-3.393-5.144 0-3.078 1.208-5.167 3.393-5.167 2.113 0 3.32 2.089 3.32 5.167 0 3.067-1.207 5.144-3.32 5.144zm17.718-20.622h-5.904V391h5.904v-24.727zm9.987 24.993c2.801 0 4.468-1.558 5.216-3.272h.181V391h5.844v-24.727h-5.904v9.357h-.121c-.7-1.702-2.318-3.417-5.24-3.417-3.876 0-7.389 2.982-7.389 9.526 0 6.315 3.32 9.527 7.413 9.527zm2.053-4.601c-2.186 0-3.405-1.943-3.405-4.938 0-2.982 1.207-4.902 3.405-4.902 2.161 0 3.417 1.872 3.417 4.902 0 3.007-1.268 4.938-3.417 4.938zM636.244 426l.755-2.506h4.321l.754 2.506h3.835l-4.321-13.091h-4.858L632.409 426h3.835zm1.56-5.165l1.304-4.321h.102l1.304 4.321h-2.71zm12.153 5.318c1.278 0 2.243-.434 2.838-1.534h.077V426h3.298v-6.724c0-1.816-1.72-3.222-4.526-3.222-2.934 0-4.378 1.534-4.5 3.324h3.248c.083-.607.53-.895 1.201-.895.614 0 1.049.281 1.049.793v.025c0 .569-.627.748-2.276.869-2.026.147-3.605.966-3.605 3.12 0 1.956 1.317 2.863 3.196 2.863zm1.15-2.224c-.6 0-1.022-.294-1.022-.844 0-.505.358-.895 1.176-1.023.562-.089 1.035-.204 1.406-.357v.818c0 .895-.761 1.406-1.56 1.406zm6.698 2.071h6.162c2.844 0 4.602-1.553 4.602-3.707 0-1.848-1.362-3.056-3.043-3.12v-.128c1.515-.3 2.532-1.419 2.532-2.863 0-1.994-1.586-3.273-4.577-3.273h-5.676V426zm3.554-2.838v-2.761h1.713c1.08 0 1.738.511 1.738 1.431 0 .876-.594 1.33-1.789 1.33h-1.662zm0-4.96v-2.506h1.508c.882 0 1.534.447 1.534 1.253 0 .805-.652 1.253-1.585 1.253h-1.457zm8.469 7.798h3.503v-1.611h.077c.409.997 1.355 1.739 2.735 1.739 2.097 0 3.861-1.637 3.861-5.037 0-3.554-1.892-5.037-3.835-5.037-1.457 0-2.378.844-2.761 1.841h-.051v-4.986h-3.529V426zm3.452-4.909c0-1.457.588-2.327 1.559-2.327.972 0 1.535.87 1.535 2.327 0 1.457-.563 2.327-1.535 2.327-.971 0-1.559-.895-1.559-2.327zM686.467 426c3.988 0 6.52-2.455 6.52-6.545 0-4.091-2.532-6.546-6.572-6.546h-4.985V426h5.037zm-1.483-3.017v-7.057h1.253c2.045 0 3.17.793 3.17 3.529 0 2.735-1.125 3.528-3.068 3.528h-1.355zm13.252 3.145c1.381 0 2.327-.742 2.736-1.739h.076V426h3.503v-13.091h-3.528v4.986h-.051c-.384-.997-1.304-1.841-2.762-1.841-1.943 0-3.835 1.483-3.835 5.037 0 3.4 1.764 5.037 3.861 5.037zm1.304-2.71c-.972 0-1.534-.87-1.534-2.327 0-1.457.562-2.327 1.534-2.327s1.56.87 1.56 2.327c0 1.432-.588 2.327-1.56 2.327zm6.692 2.582h9.41v-2.864h-5.856v-2.25h5.395v-2.863h-5.395v-2.25h5.881v-2.864h-9.435V426zm15.953.179c2.723 0 4.475-1.304 4.807-3.349h-3.221c-.205.556-.787.869-1.509.869-1.048 0-1.662-.69-1.662-1.637v-.153h6.392v-.818c0-3.126-1.917-5.037-4.883-5.037-3.043 0-4.986 2.02-4.986 5.062 0 3.177 1.917 5.063 5.062 5.063zm-1.585-6.213c.019-.85.722-1.432 1.585-1.432.876 0 1.541.588 1.56 1.432H720.6zm16.282-2.736h3.593c-.275-2.627-2.659-4.5-5.753-4.5-3.529 0-6.392 2.429-6.392 6.75 0 4.142 2.595 6.699 6.417 6.699 3.426 0 5.881-2.097 5.881-5.676v-1.815h-5.804v2.531h2.378c-.032 1.138-.837 1.866-2.429 1.866-1.841 0-2.787-1.355-2.787-3.656 0-2.269 1.023-3.605 2.812-3.605 1.113 0 1.867.511 2.084 1.406zm10.184 12.554c3.107 0 5.165-1.419 5.165-3.81v-9.792h-3.528v1.713h-.077c-.383-.997-1.304-1.841-2.761-1.841-1.943 0-3.836 1.483-3.836 5.037 0 3.4 1.765 4.781 3.861 4.781 1.33 0 2.378-.562 2.762-1.56h.102v1.662c0 1.055-.671 1.432-1.585 1.432-.812 0-1.407-.243-1.509-.767h-3.4c.134 1.79 1.853 3.145 4.806 3.145zm.128-6.418c-.971 0-1.534-.818-1.534-2.275 0-1.457.563-2.327 1.534-2.327.972 0 1.56.87 1.56 2.327 0 1.432-.588 2.275-1.56 2.275zm6.781-10.457V426h3.477v-7.619h.102l2.915 7.517h2.097l2.914-7.466h.103V426h3.477v-13.091h-4.423l-3.043 7.415h-.153l-3.043-7.415h-4.423zM770.795 426h3.529v-5.727c0-.857.447-1.381 1.176-1.381.729 0 1.202.524 1.202 1.381V426h3.375v-5.727c0-.857.447-1.381 1.176-1.381.728 0 1.201.524 1.201 1.381V426h3.529v-6.622c0-2.014-1.291-3.324-3.171-3.324-1.457 0-2.633.793-2.966 1.994h-.102c-.204-1.201-1.304-1.994-2.685-1.994-1.361 0-2.403.767-2.812 1.994h-.102v-1.866h-3.35V426zm29.559-6.545c0-4.373-2.813-6.725-6.367-6.725-3.579 0-6.366 2.352-6.366 6.725 0 4.346 2.787 6.724 6.366 6.724 3.554 0 6.367-2.352 6.367-6.724zm-3.657 0c0 2.352-.946 3.63-2.71 3.63s-2.71-1.278-2.71-3.63c0-2.353.946-3.631 2.71-3.631s2.71 1.278 2.71 3.631zm10.082 6.724c3.196 0 5.088-2.045 5.088-5.063 0-3.017-1.892-5.062-5.088-5.062s-5.088 2.045-5.088 5.062c0 3.018 1.892 5.063 5.088 5.063zm.026-2.608c-.946 0-1.509-.94-1.509-2.48 0-1.541.563-2.48 1.509-2.48.895 0 1.457.939 1.457 2.48 0 1.54-.562 2.48-1.457 2.48zm6.443 2.429h3.554v-4.321h1.227L820.33 426h3.861l-2.659-4.884c1.394-.671 2.225-1.943 2.225-3.758 0-2.787-1.95-4.449-4.858-4.449h-5.651V426zm3.554-7.082v-3.171h1.253c1.246 0 1.994.486 1.994 1.611 0 1.119-.748 1.56-1.994 1.56h-1.253zm8.521 7.082h3.528v-5.114c0-1.125.773-1.866 1.815-1.866.365 0 .953.057 1.304.179v-3.011a3.192 3.192 0 00-.895-.134c-1.048 0-1.866.614-2.224 1.994h-.102v-1.866h-3.426V426zm14.81-9h3.401c-.013-2.57-1.995-4.27-5.165-4.27-3.113 0-5.312 1.675-5.293 4.168-.006 2.045 1.413 3.183 3.733 3.682l1.304.281c1.457.319 1.956.684 1.969 1.278-.013.646-.601 1.1-1.739 1.1-1.361 0-2.167-.64-2.224-1.841h-3.375c.013 3.285 2.237 4.755 5.65 4.755 3.318 0 5.306-1.431 5.319-4.014-.013-1.994-1.202-3.394-4.091-4.014l-1.074-.23c-1.24-.262-1.796-.627-1.764-1.253.006-.575.485-.997 1.585-.997 1.15 0 1.694.505 1.764 1.355zm13.957 2.378c-.089-2.078-1.815-3.324-4.653-3.324-2.806 0-4.539 1.151-4.526 3.196-.013 1.547.991 2.538 2.992 2.889l1.738.307c.767.141 1.112.345 1.125.716-.013.409-.479.639-1.125.639-.799 0-1.361-.345-1.457-.971h-3.503c.192 2.013 1.93 3.349 4.935 3.349 2.716 0 4.717-1.323 4.73-3.426-.013-1.451-.985-2.295-2.992-2.659l-1.994-.358c-.748-.134-.959-.403-.946-.691-.013-.409.492-.639 1.099-.639.697 0 1.279.371 1.33.972h3.247zm-214.803 15.531h-3.273l-3.221 1.969v3.017l2.863-1.713h.077V448h3.554v-13.091zM641.975 448h10.048v-2.838h-5.114v-.077l1.228-1.023c2.985-2.486 3.745-3.777 3.745-5.292 0-2.442-2-4.04-5.139-4.04-3.049 0-5.03 1.694-5.024 4.449h3.375c-.006-1.099.665-1.713 1.649-1.713.978 0 1.675.607 1.675 1.611 0 .927-.594 1.527-1.56 2.326l-4.883 4.04V448zm16.75.179c3.203 0 5.459-1.63 5.446-3.938.013-1.604-1.061-2.735-3.17-2.965v-.103c1.559-.166 2.697-1.169 2.684-2.633.013-2.205-2.032-3.81-4.934-3.81-2.966 0-5.076 1.694-5.088 4.091h3.4c.013-.793.71-1.355 1.688-1.355.895 0 1.521.543 1.508 1.304.013.792-.728 1.355-1.79 1.355h-1.329v2.455h1.329c1.151 0 1.956.562 1.944 1.355.012.811-.678 1.38-1.662 1.38-1.023 0-1.752-.543-1.764-1.304h-3.58c.013 2.442 2.218 4.168 5.318 4.168zm6.905-2.224h6.367V448h3.4v-2.045h1.509v-2.762h-1.509v-8.284h-4.5l-5.267 8.284v2.762zm6.443-2.762h-2.94v-.102l2.838-4.5h.102v4.602zm11.565 4.986c3.19 0 5.274-1.937 5.267-4.679.007-2.487-1.732-4.244-4.065-4.244-1.33 0-2.404.588-2.813 1.38h-.076l.255-2.889h5.881v-2.838h-8.795l-.512 7.21 3.12.614c.3-.639.984-1.023 1.738-1.023 1.087 0 1.847.748 1.841 1.892.006 1.144-.754 1.892-1.841 1.892-.939 0-1.713-.575-1.738-1.483h-3.452c.019 2.442 2.173 4.168 5.19 4.168zm12.271 0c3.094 0 5.255-1.86 5.242-4.679.013-2.397-1.592-4.142-3.963-4.142-1.496 0-2.851.716-3.35 1.918h-.076c.012-2.167.677-3.58 2.173-3.58.748 0 1.4.332 1.559 1.125h3.503c-.223-2.288-2.173-4.142-5.062-4.142-3.433 0-5.689 2.633-5.702 6.929.013 4.756 2.621 6.571 5.676 6.571zm-.025-2.685c-1.036 0-1.803-.786-1.816-1.866.013-1.08.78-1.867 1.816-1.867 1.061 0 1.828.787 1.815 1.867.013 1.08-.754 1.866-1.815 1.866zm7.464 2.506h3.656l5.165-10.253v-2.838h-9.716v2.838h6.034v.077L703.348 448zm15.478.179c3.171 0 5.498-1.611 5.498-3.733 0-1.617-1.362-2.915-3.043-3.17v-.103c1.464-.255 2.557-1.425 2.557-2.889 0-2.045-2.122-3.554-5.012-3.554-2.889 0-5.011 1.502-5.011 3.554 0 1.457 1.067 2.634 2.557 2.889v.103c-1.707.255-3.043 1.553-3.043 3.17 0 2.122 2.327 3.733 5.497 3.733zm0-2.455c-1.003 0-1.738-.677-1.738-1.585 0-.907.735-1.559 1.738-1.559 1.004 0 1.739.658 1.739 1.559 0 .914-.735 1.585-1.739 1.585zm0-5.599c-.888 0-1.534-.614-1.534-1.432s.646-1.406 1.534-1.406c.889 0 1.534.594 1.534 1.406 0 .825-.645 1.432-1.534 1.432zm12.198-5.446c-3.107 0-5.254 1.866-5.242 4.679-.012 2.403 1.599 4.142 3.964 4.142 1.495 0 2.85-.716 3.349-1.918h.077c-.013 2.174-.678 3.58-2.174 3.58-.754 0-1.393-.332-1.559-1.125h-3.503c.217 2.301 2.16 4.142 5.062 4.142 3.439 0 5.689-2.634 5.702-6.929-.013-4.756-2.621-6.571-5.676-6.571zm.026 2.685c1.035 0 1.802.792 1.815 1.866-.013 1.074-.78 1.867-1.815 1.867-1.062 0-1.829-.793-1.816-1.867-.013-1.074.754-1.866 1.816-1.866zm12.884 10.994c3.561.006 5.772-2.544 5.779-6.878.006-4.308-2.218-6.75-5.779-6.75-3.566 0-5.765 2.429-5.778 6.75-.013 4.315 2.212 6.872 5.778 6.878zm0-2.889c-1.227 0-2.109-1.234-2.096-3.989.012-2.691.869-3.886 2.096-3.886 1.228 0 2.091 1.195 2.097 3.886.006 2.755-.869 3.989-2.097 3.989zm15.149-10.56h-3.579l.332 9h2.915l.332-9zm-1.789 13.296c.939 0 1.777-.793 1.789-1.79-.012-.972-.85-1.764-1.789-1.764-.991 0-1.803.792-1.79 1.764a1.775 1.775 0 001.79 1.79zm6.679-4.296h3.017v-.307c0-1.016.48-1.527 1.407-2.071 1.246-.728 2.096-1.643 2.096-3.196 0-2.403-2.026-3.605-4.755-3.605-2.487 0-4.552 1.176-4.577 3.989h3.273c0-.735.588-1.253 1.278-1.253.639 0 1.151.435 1.151 1.074 0 .716-.62 1.157-1.432 1.687-.953.62-1.458 1.272-1.458 3.375v.307zm1.56 4.296c.94 0 1.777-.793 1.79-1.79-.013-.972-.85-1.764-1.79-1.764-.991 0-1.803.792-1.79 1.764a1.775 1.775 0 001.79 1.79zm7.29-6.75c0 3.144.818 5.752 2.685 8.028h3.452c-1.407-1.688-2.455-5.011-2.455-8.028 0-3.017 1.048-6.341 2.455-8.029h-3.452c-1.867 2.276-2.685 4.884-2.685 8.029zm12.786 0c0-3.145-.818-5.753-2.685-8.029h-3.452c1.407 1.688 2.455 5.012 2.455 8.029 0 3.017-1.048 6.34-2.455 8.028h3.452c1.867-2.276 2.685-4.884 2.685-8.028zm3.3 8.028h5.88v-2.557h-2.454v-10.943h2.454v-2.557h-5.88v16.057zm12.325-16.057h-5.88v2.557h2.454v10.943h-2.454v2.557h5.88v-16.057zm9.411 16.057v-2.557c-1.534 0-1.739-.518-1.739-1.585v-1.406c0-.953-.486-1.905-2.608-2.327v-.307c2.122-.422 2.608-1.374 2.608-2.327v-1.406c0-1.067.205-1.585 1.739-1.585v-2.557c-2.634 0-5.165 0-5.165 3.682v.997c0 1.253-.498 1.815-1.994 1.815v3.069c1.496 0 1.994.562 1.994 1.815v.997c0 3.682 2.531 3.682 5.165 3.682zm.564-16.057v2.557c1.534 0 1.739.518 1.739 1.585v1.406c0 .953.485 1.905 2.608 2.327v.307c-2.123.422-2.608 1.374-2.608 2.327v1.406c0 1.067-.205 1.585-1.739 1.585v2.557c2.634 0 5.165 0 5.165-3.682v-.997c0-1.253.498-1.815 1.994-1.815v-3.069c-1.496 0-1.994-.562-1.994-1.815v-.997c0-3.682-2.531-3.682-5.165-3.682zm17.516 16.798c2.16 0 4.027-.46 4.832-.997l-.818-2.301c-.831.358-2.288.639-3.81.639-4.027 0-6.251-2.045-6.264-5.88.013-3.247 1.905-6.137 6.315-6.137 2.417 0 5.894.537 5.881 5.318.013 2.225-.55 3.248-1.15 3.248-.218 0-.397-.128-.41-.64v-6.545h-2.428v.716h-.103c-.243-.563-1.828-1.125-3.375-.844-1.572.281-3.669 1.56-3.682 4.96.013 3.401 2.11 4.73 3.989 4.858 1.445.103 3.107-.434 3.401-1.227h.076l.02.096c.127.709.255 1.381 2.051 1.208 2.8-.256 4.385-2.02 4.373-5.599.012-5.242-3.363-8.182-8.643-8.182-5.867 0-9.166 3.682-9.179 8.923.013 5.267 3.337 8.386 8.924 8.386zm0-6.238c-1.675 0-2.212-1.125-2.225-2.301.013-1.432.78-2.174 2.174-2.174 1.674 0 1.93 1.023 1.943 2.148.038 1.483-.422 2.327-1.892 2.327zm14.957 5.65h1.816l.025-1.515c2.825-.217 4.487-1.617 4.5-3.982-.013-1.994-1.202-3.394-4.091-4.014l-.287-.064.038-2.231c.473.218.716.62.761 1.17h3.4c-.013-2.276-1.56-3.867-4.116-4.206l.025-1.521h-1.815l-.026 1.489c-2.697.256-4.544 1.854-4.525 4.136-.007 2.045 1.412 3.183 3.733 3.682l.671.147-.039 2.397c-.811-.237-1.278-.819-1.323-1.726h-3.375c.013 2.953 1.809 4.442 4.654 4.711l-.026 1.527zm1.886-4.525l.032-1.899c.562.243.786.537.792.927-.006.441-.287.793-.824.972zm-1.726-5.523c-.531-.23-.767-.53-.748-.946.006-.409.243-.735.774-.895l-.026 1.841zM856.438 448h2.556l.493-2.991h1.681l.434-2.557h-1.7l.332-1.995h1.675l.435-2.556h-1.694l.492-2.992h-2.557l-.492 2.992h-2.045l.492-2.992h-2.557l-.492 2.992h-1.681l-.435 2.556h1.7l-.332 1.995h-1.675l-.434 2.557h1.693l-.492 2.991h2.557l.492-2.991h2.046l-.492 2.991zm-1.138-5.548l.332-1.995h2.046l-.333 1.995H855.3zm15.51 3.093c.013 1.662 1.087 3.094 3.094 3.094 2.007 0 3.132-1.432 3.119-3.094v-.69c.013-1.687-1.087-3.094-3.119-3.094-1.982 0-3.081 1.432-3.094 3.094v.69zm-6.852-7.491c.013 1.662 1.086 3.068 3.093 3.068 2.008 0 3.133-1.381 3.12-3.068v-.69c.013-1.688-1.087-3.094-3.12-3.094-1.955 0-3.08 1.406-3.093 3.094v.69zm.716 9.946h1.815l9-13.091h-1.815l-9 13.091zm8.36-3.145c.013-.511.192-1.099.87-1.099.728 0 .882.588.869 1.099v.69c.013.512-.166 1.074-.869 1.074-.678 0-.857-.588-.87-1.074v-.69zm-6.826-7.491c.013-.486.166-1.1.843-1.1.729 0 .883.588.87 1.1v.69c.013.511-.166 1.074-.87 1.074-.651 0-.83-.563-.843-1.074v-.69zM635.426 470l1.176-2.506h4.315l.339 2.506h3.835l-2.148-13.091h-4.858L631.591 470h3.835zm2.423-5.165l2.026-4.321h.102l.582 4.321h-2.71zm11.264 5.318c1.279 0 2.327-.434 3.094-1.534h.077l-.231 1.381h3.299l1.125-6.724c.307-1.816-1.202-3.222-3.989-3.222-2.94 0-4.653 1.534-5.062 3.324h3.247c.179-.614.69-.895 1.355-.895.614 0 .997.281.92.793v.025c-.102.563-.767.742-2.429.869-2.045.154-3.758.972-4.116 3.12-.333 1.943.844 2.863 2.71 2.863zm1.534-2.224c-.613 0-.971-.307-.895-.844.077-.511.512-.895 1.355-1.023.563-.102 1.074-.204 1.458-.357l-.128.818c-.153.895-.997 1.406-1.79 1.406zm6.34 2.071h6.161c2.839 0 4.858-1.56 5.216-3.707.307-1.841-.843-3.069-2.531-3.12l.026-.128c1.559-.306 2.761-1.431 3.017-2.863.332-1.994-1.049-3.273-4.04-3.273h-5.676L656.987 470zm4.039-2.838l.435-2.761h1.713c1.099 0 1.662.511 1.509 1.431-.128.87-.819 1.33-1.995 1.33h-1.662zm.818-4.96l.41-2.506h1.508c.869 0 1.457.435 1.33 1.253-.128.792-.87 1.253-1.79 1.253h-1.458zM669.01 470h3.503l.255-1.611h.103c.23.997 1.048 1.739 2.429 1.739 2.096 0 4.142-1.637 4.704-5.037.588-3.554-1.048-5.037-2.991-5.037-1.458 0-2.531.844-3.068 1.841h-.052l.819-4.986h-3.529L669.01 470zm4.27-4.909c.23-1.457.971-2.327 1.943-2.327.972 0 1.381.87 1.151 2.327-.231 1.457-.946 2.327-1.918 2.327s-1.406-.895-1.176-2.327zM685.725 470c3.989 0 6.827-2.352 7.492-6.366.69-4.168-1.483-6.725-5.523-6.725h-4.909L680.612 470h5.113zm-1.061-3.017l1.176-7.057h1.317c2.045 0 2.991.69 2.557 3.35-.46 2.812-1.816 3.707-3.759 3.707h-1.291zm12.741 3.145a3.433 3.433 0 003.017-1.739h.077L700.23 470h3.503l2.173-13.091h-3.528l-.831 4.986h-.051c-.217-.997-.997-1.841-2.455-1.841-1.943 0-4.078 1.483-4.666 5.037-.562 3.4.927 5.037 3.03 5.037zm1.751-2.71c-.978 0-1.393-.87-1.15-2.327.236-1.457.946-2.327 1.917-2.327.972 0 1.413.87 1.177 2.327-.237 1.432-.978 2.327-1.944 2.327zm6.258 2.582h9.409l.486-2.864h-5.855l.358-2.25h5.395l.486-2.863h-5.395l.358-2.25h5.88l.486-2.864h-9.434L705.414 470zm15.928.179c2.735 0 4.679-1.304 5.369-3.349h-3.222c-.306.562-.946.869-1.662.869-1.048 0-1.534-.69-1.38-1.637l.032-.153h6.385l.128-.818c.512-3.119-1.074-5.037-4.04-5.037-3.042 0-5.318 2.02-5.829 5.062-.537 3.171 1.074 5.063 4.219 5.063zm-.499-6.213a1.836 1.836 0 011.803-1.432c.869 0 1.406.588 1.278 1.432h-3.081zm16.678-2.736h3.593c.166-2.627-1.911-4.5-4.999-4.5-3.535 0-6.801 2.429-7.517 6.75-.684 4.142 1.49 6.699 5.306 6.699 3.432 0 6.232-2.097 6.826-5.676l.294-1.815h-5.804l-.409 2.531h2.365c-.211 1.138-1.201 1.866-2.799 1.866-1.835 0-2.493-1.355-2.11-3.656.371-2.269 1.745-3.605 3.541-3.605 1.106 0 1.65.511 1.713 1.406zm8.114 12.554c3.093 0 5.394-1.406 5.778-3.81l1.636-9.792h-3.528l-.281 1.713h-.077c-.23-.997-.997-1.841-2.455-1.841-1.943 0-4.09 1.483-4.679 5.037-.562 3.4.972 4.781 3.069 4.781 1.329 0 2.48-.562 3.017-1.56h.102l-.281 1.662c-.154 1.049-.895 1.432-1.816 1.432-.818 0-1.355-.23-1.38-.767h-3.401c-.153 1.79 1.33 3.145 4.296 3.145zm1.176-6.418c-.972 0-1.381-.818-1.151-2.275.23-1.457.946-2.327 1.918-2.327.971 0 1.406.87 1.176 2.327-.23 1.432-.972 2.275-1.943 2.275zm8.519-10.457L753.156 470h3.478l1.278-7.619h.102l1.662 7.517h2.097l4.142-7.466h.102L764.764 470h3.478l2.173-13.091h-4.423l-4.27 7.415h-.154l-1.815-7.415h-4.423zM770.003 470h3.528l.972-5.727c.121-.857.658-1.381 1.38-1.381.735 0 1.119.524.998 1.381l-.972 5.727h3.375l.972-5.727c.121-.857.658-1.381 1.38-1.381.735 0 1.119.524.997 1.381l-.971 5.727h3.528l1.1-6.622c.338-2.014-.742-3.324-2.608-3.324-1.471 0-2.775.793-3.299 1.994h-.102c-.013-1.201-.984-1.994-2.352-1.994-1.374 0-2.538.767-3.145 1.994h-.102l.306-1.866h-3.349L770.003 470zm30.581-6.315c.741-4.475-1.739-6.955-5.395-6.955-3.477 0-6.571 2.276-7.261 6.546-.742 4.448 1.738 6.903 5.42 6.903 3.452 0 6.52-2.224 7.236-6.494zm-3.58-.409c-.409 2.429-1.662 3.809-3.528 3.809-1.637 0-2.378-1.125-1.969-3.4.384-2.429 1.662-3.861 3.554-3.861 1.662 0 2.301 1.202 1.943 3.452zm8.932 6.903c3.196 0 5.426-2.045 5.931-5.063.493-3.017-1.061-5.062-4.244-5.062-3.209 0-5.44 2.045-5.932 5.062-.505 3.018 1.049 5.063 4.245 5.063zm.434-2.608c-.927 0-1.329-.94-1.074-2.48.25-1.541.972-2.48 1.892-2.48.921 0 1.324.939 1.074 2.48-.255 1.54-.978 2.48-1.892 2.48zm6.06 2.429h3.554l.722-4.321h1.227l1.579 4.321h3.861l-1.847-4.884c1.502-.671 2.55-1.943 2.844-3.758.46-2.787-1.201-4.449-4.116-4.449h-5.651L812.43 470zm4.736-7.082l.531-3.171h1.253c1.227 0 1.892.486 1.713 1.611-.179 1.125-.997 1.56-2.25 1.56h-1.247zM824.68 470h3.529l.843-5.114c.205-1.125 1.1-1.866 2.123-1.866.383 0 .946.051 1.278.179l.511-3.017a3.23 3.23 0 00-.869-.128c-1.048 0-1.969.614-2.557 1.994h-.102l.307-1.866h-3.426L824.68 470zm16.294-9h3.4c.435-2.582-1.278-4.27-4.449-4.27-3.119 0-5.574 1.662-5.983 4.168-.332 2.045.895 3.17 3.12 3.682l1.252.281c1.407.307 1.867.69 1.765 1.278-.103.639-.767 1.1-1.918 1.1-1.355 0-2.071-.64-1.918-1.841h-3.375c-.537 3.272 1.458 4.755 4.858 4.755 3.324 0 5.549-1.431 5.983-4.014.333-1.994-.639-3.4-3.426-4.014l-1.023-.23c-1.201-.256-1.713-.639-1.559-1.253.102-.588.639-.997 1.738-.997 1.151 0 1.611.511 1.535 1.355zm13.547 2.378c.275-2.071-1.329-3.324-4.269-3.324-2.698 0-4.507 1.035-4.833 2.991-.275 1.637.639 2.723 2.583 3.069l1.687.306c.748.147.972.256.946.537-.07.499-.709.87-1.457.844-.691-.013-1.132-.332-1.151-.971h-3.426c-.134 1.994 1.432 3.349 4.526 3.349 2.633 0 4.742-1.208 5.088-3.222.243-1.54-.665-2.48-2.608-2.838l-1.943-.358c-.723-.14-.812-.313-.768-.511.071-.499.729-.844 1.432-.844.601 0 1.068.358 1.023.972h3.17zm-213.879 15.531h-3.273l-3.554 1.969-.485 3.017 3.144-1.713h.077L634.915 492h3.554l2.173-13.091zm.515 13.091h10.048l.473-2.838h-5.114l.013-.077 1.394-1.023c3.4-2.492 4.372-3.784 4.627-5.292.416-2.442-1.329-4.04-4.474-4.04-3.043 0-5.305 1.688-5.766 4.449h3.375c.179-1.099.959-1.713 1.943-1.713.972 0 1.573.601 1.407 1.611-.154.92-.838 1.527-1.943 2.326l-5.562 4.04-.421 2.557zm16.903.179c3.094 0 5.555-1.611 5.907-3.759.274-1.674-.857-2.927-2.711-3.144v-.103c1.701-.147 2.915-.914 3.171-2.454.351-2.148-1.413-3.989-4.398-3.989-2.864 0-5.229 1.694-5.625 4.091h3.375c.115-.793 1.087-1.355 2.071-1.355.901 0 1.291.447 1.176 1.125-.147.882-1.035 1.534-2.122 1.534h-1.253l-.409 2.455h1.406c1.081 0 1.822.364 1.688 1.176-.128.792-.972 1.559-2.071 1.559-.927 0-1.579-.543-1.432-1.304h-3.528c-.422 2.442 1.553 4.168 4.755 4.168zm7.084-2.224h6.38l-.346 2.045h3.401l.339-2.045h1.502l.46-2.762h-1.502l1.374-8.284h-4.5l-6.647 8.284-.461 2.762zm6.917-2.762h-2.954l.026-.102 3.58-4.5h.108l-.76 4.602zm10.733 4.986c3.203 0 5.606-1.943 6.034-4.679.416-2.48-1.016-4.244-3.349-4.244-1.323 0-2.499.588-3.043 1.38h-.076l.741-2.889h5.881l.46-2.838h-8.795l-1.713 7.21 3.017.614a2.303 2.303 0 011.917-1.023c1.081 0 1.72.742 1.534 1.892-.198 1.151-1.067 1.892-2.173 1.892-.94 0-1.604-.588-1.483-1.483h-3.452c-.377 2.429 1.49 4.168 4.5 4.168zm12.425 0c3.004 0 5.382-1.764 5.829-4.5.422-2.48-.933-4.321-3.375-4.321-1.444 0-2.85.639-3.554 1.841l-.102.179c.397-2.173 1.394-3.682 2.941-3.682.696 0 1.278.288 1.278 1.099h3.452c.14-2.301-1.586-4.116-4.5-4.116-3.363 0-5.97 2.531-6.674 6.75-.805 4.832 1.573 6.75 4.705 6.75zm.128-2.685c-.978 0-1.547-.652-1.406-1.687.185-1.183 1.188-2.046 2.301-2.046 1.003 0 1.559.697 1.406 1.688-.154 1.176-1.163 2.045-2.301 2.045zM702.53 492h3.656l6.878-10.253.46-2.838h-9.716l-.46 2.838h6.034l-.025.077L702.53 492zm15.427.179c3.177 0 5.753-1.624 6.111-3.733.281-1.624-.857-2.915-2.506-3.17v-.103c1.547-.255 2.806-1.425 3.043-2.889.326-2.039-1.534-3.554-4.424-3.554-2.889 0-5.267 1.502-5.599 3.554-.23 1.451.652 2.634 2.071 2.889v.103c-1.726.255-3.305 1.566-3.579 3.17-.365 2.129 1.719 3.733 4.883 3.733zm.409-2.455c-.991 0-1.636-.671-1.483-1.585.154-.901.985-1.559 1.994-1.559 1.01 0 1.637.645 1.483 1.559-.153.901-.99 1.585-1.994 1.585zm.921-5.599c-.895 0-1.445-.614-1.304-1.432.14-.818.907-1.406 1.789-1.406.882 0 1.419.582 1.279 1.406-.141.812-.87 1.432-1.764 1.432zm12.955-5.446c-2.998 0-5.376 1.764-5.83 4.5-.415 2.48.94 4.321 3.375 4.321 1.451 0 2.857-.639 3.554-1.841l.102-.179c-.39 2.173-1.387 3.682-2.94 3.682-.697 0-1.285-.281-1.278-1.1h-3.452c-.134 2.302 1.579 4.117 4.5 4.117 3.369 0 5.976-2.531 6.673-6.75.812-4.832-1.566-6.75-4.704-6.75zm-.128 2.685c.991 0 1.553.664 1.406 1.687-.185 1.176-1.182 2.046-2.301 2.046-1.004 0-1.566-.691-1.406-1.688a2.347 2.347 0 012.301-2.045zm10.916 10.994c3.554 0 6.187-2.557 6.903-6.878.716-4.327-1.099-6.75-4.653-6.75-3.554 0-6.162 2.429-6.904 6.75-.741 4.315 1.074 6.878 4.654 6.878zm.486-2.889c-1.228 0-1.918-1.228-1.458-3.989.448-2.685 1.534-3.886 2.762-3.886 1.227 0 1.892 1.201 1.431 3.886-.473 2.755-1.508 3.989-2.735 3.989zm16.862-10.56h-3.554l-1.151 9h2.889l1.816-9zm-3.835 13.296c.92 0 1.866-.793 1.968-1.79a1.58 1.58 0 00-1.585-1.764c-.997 0-1.892.792-1.994 1.764-.102.997.613 1.79 1.611 1.79zm7.267-4.296h3.017l.052-.307c.172-1.022.741-1.534 1.764-2.071 1.368-.716 2.352-1.636 2.608-3.196.396-2.403-1.432-3.605-4.142-3.605-2.506 0-4.756 1.176-5.242 3.989h3.273c.102-.742.793-1.253 1.483-1.253.639 0 1.074.435.971 1.074-.115.716-.818 1.15-1.713 1.687-1.042.627-1.668 1.279-2.019 3.375l-.052.307zm.921 4.296c.92 0 1.866-.793 1.969-1.79a1.58 1.58 0 00-1.586-1.764c-.997 0-1.892.792-1.994 1.764-.102.997.614 1.79 1.611 1.79zm8.338-6.75c-.511 3.144-.128 5.752 1.355 8.028h3.452c-1.125-1.688-1.636-5.011-1.125-8.028.511-3.017 2.097-6.341 3.784-8.029h-3.452c-2.25 2.276-3.502 4.884-4.014 8.029zm12.786 0c.511-3.145.128-5.753-1.355-8.029h-3.452c1.125 1.688 1.636 5.012 1.125 8.029-.511 3.017-2.096 6.34-3.784 8.028h3.452c2.25-2.276 3.503-4.884 4.014-8.028zm1.919 8.028h5.881l.434-2.557h-2.454l1.79-10.943h2.454l.435-2.557h-5.881l-2.659 16.057zm15.061-16.057h-5.88l-.435 2.557h2.455l-1.79 10.943h-2.455l-.434 2.557h5.88l2.659-16.057zm6.701 16.057l.435-2.557c-1.535 0-1.662-.511-1.483-1.585l.23-1.406c.159-.953-.179-1.912-2.25-2.333l.051-.294c2.211-.422 2.857-1.381 3.017-2.334l.23-1.406c.179-1.074.46-1.585 1.994-1.585l.435-2.557h-.013c-2.627 0-5.197 0-5.765 3.682l-.154.997c-.192 1.253-.818 1.815-2.301 1.815h-.026l-.511 3.069h.026c1.508 0 1.879.562 1.687 1.815l-.153.997c-.569 3.682 1.911 3.682 4.538 3.682h.013zm3.274-16.057l-.434 2.557c1.534 0 1.661.511 1.482 1.585l-.23 1.406c-.159.953.179 1.912 2.25 2.334l-.051.294c-2.211.421-2.857 1.38-3.017 2.333l-.23 1.406c-.179 1.074-.46 1.585-1.994 1.585l-.435 2.557h.013c2.627 0 5.197 0 5.766-3.682l.153-.997c.192-1.253.818-1.815 2.301-1.815h.026l.511-3.069h-.026c-1.508 0-1.879-.562-1.687-1.815l.153-.997c.569-3.682-1.911-3.682-4.538-3.682h-.013zm14.678 16.798c2.16 0 4.104-.46 5.011-.997l-.434-2.301c-.908.358-2.391.639-3.912.639-4.027 0-5.919-2.045-5.293-5.88.55-3.247 2.902-6.137 7.313-6.137 2.416 0 5.816.537 5.011 5.318-.345 2.225-1.087 3.248-1.688 3.248-.217 0-.37-.128-.306-.64l1.073-6.545h-2.428l-.103.716h-.102c-.166-.563-1.649-1.125-3.247-.844-1.624.281-3.925 1.56-4.5 4.96-.55 3.401 1.342 4.73 3.196 4.858 1.419.103 3.183-.434 3.605-1.227h.077v.096c.012.709.019 1.381 1.841 1.208 2.85-.256 4.717-2.02 5.292-5.599.882-5.242-2.007-8.182-7.287-8.182-5.868 0-9.754 3.682-10.636 8.923-.857 5.267 1.93 8.386 7.517 8.386zm1.048-6.238c-1.674 0-2.032-1.125-1.841-2.301.243-1.432 1.138-2.174 2.532-2.174 1.674 0 1.751 1.023 1.585 2.148-.218 1.483-.806 2.327-2.276 2.327zm14.037 5.65h1.815l.275-1.515c2.858-.223 4.75-1.623 5.146-3.982.332-1.994-.639-3.4-3.426-4.014l-.262-.058.409-2.23c.422.223.594.626.543 1.163h3.401c.383-2.282-.908-3.861-3.394-4.2l.274-1.527h-1.815l-.268 1.489c-2.755.249-4.852 1.835-5.229 4.136-.332 2.045.895 3.17 3.119 3.682l.665.147-.435 2.403c-.779-.237-1.163-.825-1.048-1.732h-3.375c-.486 2.946 1.087 4.442 3.88 4.711l-.275 1.527zm2.634-4.525l.345-1.899c.518.25.69.544.626.927-.07.435-.402.786-.971.972zm-.812-5.517c-.505-.236-.697-.543-.595-.952.071-.422.365-.748.927-.901l-.332 1.853zM856.556 492h2.557l.543-2.991h1.681l.486-2.557h-1.7l.357-1.995h1.688l.473-2.556h-1.694l.543-2.992h-2.556l-.544 2.992h-2.045l.543-2.992h-2.557l-.543 2.992h-1.681l-.473 2.556h1.687l-.358 1.995h-1.674l-.486 2.557h1.694l-.544 2.991h2.557l.544-2.991h2.045l-.543 2.991zm-1.036-5.548l.358-1.995h2.046l-.358 1.995h-2.046zm14.846 3.093c-.269 1.662.575 3.094 2.582 3.094 2.007 0 3.362-1.432 3.631-3.094l.128-.69c.294-1.687-.576-3.094-2.608-3.094-1.982 0-3.337 1.432-3.605 3.094l-.128.69zm-5.6-7.491c-.268 1.662.576 3.068 2.583 3.068s3.362-1.381 3.63-3.068l.103-.69c.294-1.688-.576-3.094-2.608-3.094-1.956 0-3.311 1.406-3.605 3.094l-.103.69zM863.82 492h1.918l11.173-13.091h-1.917L863.82 492zm8.898-3.145c.09-.511.371-1.099 1.048-1.099.729 0 .78.588.691 1.099l-.128.69c-.064.512-.345 1.074-1.048 1.074-.678 0-.755-.588-.691-1.074l.128-.69zm-5.599-7.491c.089-.486.345-1.1 1.022-1.1.729 0 .78.588.691 1.1l-.103.69c-.089.511-.345 1.074-1.048 1.074-.652 0-.754-.563-.665-1.074l.103-.69zM633.594 391h11.639c5.373 0 8.693-2.934 8.693-7.003 0-3.489-2.572-5.771-5.747-5.892v-.241c2.861-.568 4.781-2.681 4.781-5.409 0-3.767-2.994-6.182-8.645-6.182h-10.721V391zm6.713-5.361v-5.216h3.236c2.04 0 3.284.966 3.284 2.705 0 1.654-1.123 2.511-3.381 2.511h-3.139zm0-9.369v-4.733h2.849c1.666 0 2.898.845 2.898 2.366 0 1.522-1.232 2.367-2.994 2.367h-2.753zm22.215-9.997h-6.665V391h6.665v-24.727zm8.019 25.017c2.415 0 4.238-.821 5.361-2.898h.145V391h6.23v-12.702c0-3.429-3.248-6.085-8.548-6.085-5.542 0-8.271 2.898-8.5 6.278h6.133c.157-1.147 1.003-1.69 2.27-1.69 1.159 0 1.98.531 1.98 1.497v.049c0 1.074-1.183 1.412-4.298 1.642-3.827.277-6.809 1.823-6.809 5.892 0 3.694 2.487 5.409 6.036 5.409zm2.174-4.202c-1.135 0-1.932-.555-1.932-1.594 0-.954.676-1.69 2.222-1.932 1.062-.169 1.955-.386 2.656-.676v1.546c0 1.69-1.437 2.656-2.946 2.656zm21.137 4.25c5.494 0 8.863-3.151 8.935-8.065h-6.182c-.145 1.944-1.195 2.994-2.656 2.994-1.751 0-2.898-1.497-2.898-4.54 0-3.042 1.147-4.539 2.898-4.539 1.473 0 2.475 1.05 2.656 2.994h6.182c-.036-4.83-3.477-7.969-8.935-7.969-6.037 0-9.61 3.864-9.61 9.563 0 5.698 3.573 9.562 9.61 9.562zm11.141-.338h6.665v-5.264l1.002-1.268 3.779 6.532h7.631l-6.496-10.42 6.302-8.125h-7.485l-4.492 6.23h-.241v-12.412h-6.665V391z"/></g><defs><clipPath id="clip0"><path fill="#fff" d="M0 0h888v510H0z"/></clipPath></defs></svg> \ No newline at end of file