From d45f8fe12390b72b860e61b984eb8fa07bb7bf7c Mon Sep 17 00:00:00 2001 From: Anson Date: Wed, 4 Mar 2020 19:01:53 -0700 Subject: [PATCH] basically copy paste from kanye.rest --- 404.html | 155 ++++ CNAME | 1 + css/carbon.css | 59 ++ css/chota.css | 1097 +++++++++++++++++++++++++++++ css/index.css | 121 ++++ gitlab-ci.yml | 13 + index.html | 240 +++++++ js/index.js | 16 + static/android-icon-144x144.png | Bin 0 -> 28623 bytes static/android-icon-192x192.png | Bin 0 -> 43378 bytes static/android-icon-36x36.png | Bin 0 -> 3366 bytes static/android-icon-48x48.png | Bin 0 -> 5122 bytes static/android-icon-72x72.png | Bin 0 -> 9457 bytes static/android-icon-96x96.png | Bin 0 -> 15025 bytes static/apple-icon-114x114.png | Bin 0 -> 19899 bytes static/apple-icon-120x120.png | Bin 0 -> 21470 bytes static/apple-icon-144x144.png | Bin 0 -> 28623 bytes static/apple-icon-152x152.png | Bin 0 -> 30816 bytes static/apple-icon-180x180.png | Bin 0 -> 39787 bytes static/apple-icon-57x57.png | Bin 0 -> 6565 bytes static/apple-icon-60x60.png | Bin 0 -> 7123 bytes static/apple-icon-72x72.png | Bin 0 -> 9457 bytes static/apple-icon-76x76.png | Bin 0 -> 10401 bytes static/apple-icon-precomposed.png | Bin 0 -> 43952 bytes static/apple-icon.png | Bin 0 -> 43952 bytes static/browserconfig.xml | 2 + static/favicon-16x16.png | Bin 0 -> 1563 bytes static/favicon-32x32.png | Bin 0 -> 2864 bytes static/favicon-96x96.png | Bin 0 -> 15025 bytes static/favicon.ico | Bin 0 -> 1150 bytes static/manifest.json | 41 ++ static/ms-icon-144x144.png | Bin 0 -> 28623 bytes static/ms-icon-150x150.png | Bin 0 -> 30257 bytes static/ms-icon-310x310.png | Bin 0 -> 88776 bytes static/ms-icon-70x70.png | Bin 0 -> 9086 bytes 35 files changed, 1745 insertions(+) create mode 100644 404.html create mode 100644 CNAME create mode 100644 css/carbon.css create mode 100644 css/chota.css create mode 100644 css/index.css create mode 100644 gitlab-ci.yml create mode 100644 index.html create mode 100644 js/index.js create mode 100644 static/android-icon-144x144.png create mode 100644 static/android-icon-192x192.png create mode 100644 static/android-icon-36x36.png create mode 100644 static/android-icon-48x48.png create mode 100644 static/android-icon-72x72.png create mode 100644 static/android-icon-96x96.png create mode 100644 static/apple-icon-114x114.png create mode 100644 static/apple-icon-120x120.png create mode 100644 static/apple-icon-144x144.png create mode 100644 static/apple-icon-152x152.png create mode 100644 static/apple-icon-180x180.png create mode 100644 static/apple-icon-57x57.png create mode 100644 static/apple-icon-60x60.png create mode 100644 static/apple-icon-72x72.png create mode 100644 static/apple-icon-76x76.png create mode 100644 static/apple-icon-precomposed.png create mode 100644 static/apple-icon.png create mode 100644 static/browserconfig.xml create mode 100644 static/favicon-16x16.png create mode 100644 static/favicon-32x32.png create mode 100644 static/favicon-96x96.png create mode 100644 static/favicon.ico create mode 100644 static/manifest.json create mode 100644 static/ms-icon-144x144.png create mode 100644 static/ms-icon-150x150.png create mode 100644 static/ms-icon-310x310.png create mode 100644 static/ms-icon-70x70.png diff --git a/404.html b/404.html new file mode 100644 index 0000000..ec77ff3 --- /dev/null +++ b/404.html @@ -0,0 +1,155 @@ + + + + + + + + + + api.chainz.rest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+

I'm lost in the world

+ +

- 2 Chainz

+
+
+
+ + diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..85b9520 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +api.chainz.rest \ No newline at end of file diff --git a/css/carbon.css b/css/carbon.css new file mode 100644 index 0000000..59fa197 --- /dev/null +++ b/css/carbon.css @@ -0,0 +1,59 @@ +#carbonads { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, + Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +#carbonads { + display: flex; + max-width: 330px; + background-color: hsl(0, 0%, 98%); + box-shadow: 0 1px 4px 1px hsla(0, 0%, 0%, .1); +} + +#carbonads a { + color: inherit; + text-decoration: none; +} + +#carbonads a:hover { + color: inherit; +} + +#carbonads span { + position: relative; + display: block; + overflow: hidden; +} + +#carbonads .carbon-wrap { + display: flex; +} + +.carbon-img { + display: block; + margin: 0; + line-height: 1; +} + +.carbon-img img { + display: block; +} + +.carbon-text { + font-size: 13px; + padding: 10px; + line-height: 1.5; + text-align: left; +} + +.carbon-poweredby { + display: block; + padding: 8px 10px; + background: repeating-linear-gradient(-45deg, transparent, transparent 5px, hsla(0, 0%, 0%, .025) 5px, hsla(0, 0%, 0%, .025) 10px) hsla(203, 11%, 95%, .4); + text-align: center; + text-transform: uppercase; + letter-spacing: .5px; + font-weight: 600; + font-size: 9px; + line-height: 1; +} \ No newline at end of file diff --git a/css/chota.css b/css/chota.css new file mode 100644 index 0000000..0682d6e --- /dev/null +++ b/css/chota.css @@ -0,0 +1,1097 @@ +/* Modified */ + +/*! chota.css v0.6.2 | MIT License | github.com/jenil/chota */ + +:root { + --color-primary: #000; + --color-lightGrey: #d2d6dd; + --color-grey: #7e818b; + --color-darkGrey: #3f4144; + --color-bg: #fff; + --grid-maxWidth: 120rem; + --grid-gutter: 2rem; + --font-size: 1.6rem; + --font-family: "Courier New", Courier, "Lucida Sans Typewriter", "Lucida Typewriter", monospace; +} + +[data-theme="dark"] { + --color-primary: #fff; + --color-bg: #000; +} + +* { + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +html { + font-size: 62.5%; + line-height: 1.15; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} + +body { + letter-spacing: 0.01em; + line-height: 1.6; + font-size: var(--font-size); + font-weight: 400; + font-family: "Segoe UI", "Helvetica Neue", sans-serif; + /*fallback*/ + font-family: var(--font-family); + margin: 0; + padding: 0; + background-color: var(--color-bg); +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: 700; + margin: 0.35em 0 0.7em 0; +} + +h1 { + font-size: 2em; +} + +h2 { + font-size: 1.75em; +} + +h3 { + color: var(--color-primary); + font-size: 1.5em; +} + +h4 { + font-size: 1.25em; +} + +h5 { + font-size: 1em; +} + +h6 { + font-size: 0.85em; +} + +a { + color: var(--color-primary) !important; + text-decoration: underline; +} + +a:hover:not(.button) { + opacity: 0.75; +} + +p { + margin-top: 0; + color: var(--color-primary); +} + +blockquote { + background-color: #f3f3f6; + padding: 1.5rem 2rem; + border-left: 3px solid var(--color-lightGrey); +} + +dl dt { + font-weight: bold; +} + +hr { + border: none; + background-color: var(--color-lightGrey); + height: 1px; + margin: 1rem 0; +} + +table { + width: 100%; + border: none; + border-collapse: collapse; + border-spacing: 0; + text-align: left; +} + +table.striped tr:nth-of-type(2n) { + background-color: #f3f3f6; +} + +td, +th { + vertical-align: middle; + padding: 1.2rem 0.4rem; +} + +thead { + border-bottom: 2px solid var(--color-lightGrey); +} + +tfoot { + border-top: 2px solid var(--color-lightGrey); +} + +code, +kbd, +pre, +samp, +tt { + font-family: monaco, "Consolas", "Lucida Console", monospace; +} + +code, +kbd { + white-space: pre-wrap; + font-size: 1.1em; + color: var(--color-primary); +} + +pre { + background-color: #f3f3f6; + font-size: 1em; + padding: 1rem; + overflow-x: auto; +} + +pre code { + background: none; + padding: 0; +} + +abbr[title] { + border-bottom: none; + text-decoration: underline; + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; +} + +img { + max-width: 100%; +} + +fieldset { + border: 1px solid var(--color-lightGrey); +} + +iframe { + border: 0; +} + +.container { + max-width: var(--grid-maxWidth); + margin: 0 auto; + width: 96%; + padding: 0 calc(var(--grid-gutter) / 2); +} + +.row { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + margin-left: calc(var(--grid-gutter) / -2); + margin-right: calc(var(--grid-gutter) / -2); +} + +.row.reverse { + -webkit-box-orient: horizontal; + -webkit-box-direction: reverse; + -ms-flex-direction: row-reverse; + flex-direction: row-reverse; +} + +.col { + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.col, +[class*=" col-"], +[class^='col-'] { + margin: 0 calc(var(--grid-gutter) / 2) calc(var(--grid-gutter) / 2); +} + +.col-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + max-width: calc((100% / (12/1)) - var(--grid-gutter)); +} + +.col-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + max-width: calc((100% / (12/2)) - var(--grid-gutter)); +} + +.col-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + max-width: calc((100% / (12/3)) - var(--grid-gutter)); +} + +.col-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + max-width: calc((100% / (12/4)) - var(--grid-gutter)); +} + +.col-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + max-width: calc((100% / (12/5)) - var(--grid-gutter)); +} + +.col-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + max-width: calc((100% / (12/6)) - var(--grid-gutter)); +} + +.col-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + max-width: calc((100% / (12/7)) - var(--grid-gutter)); +} + +.col-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + max-width: calc((100% / (12/8)) - var(--grid-gutter)); +} + +.col-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + max-width: calc((100% / (12/9)) - var(--grid-gutter)); +} + +.col-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + max-width: calc((100% / (12/10)) - var(--grid-gutter)); +} + +.col-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + max-width: calc((100% / (12/11)) - var(--grid-gutter)); +} + +.col-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + max-width: calc((100% / (12/12)) - var(--grid-gutter)); +} + +@media screen and (max-width: 599px) { + .container { + width: 100%; + } + .col, + [class*="col-"], + [class^='col-'] { + -webkit-box-flex: 0; + -ms-flex: 0 1 100%; + flex: 0 1 100%; + max-width: 100%; + } +} + +@media screen and (min-width: 900px) { + .col-1-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + max-width: calc((100% / (12/1)) - var(--grid-gutter)); + } + .col-2-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + max-width: calc((100% / (12/2)) - var(--grid-gutter)); + } + .col-3-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + max-width: calc((100% / (12/3)) - var(--grid-gutter)); + } + .col-4-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + max-width: calc((100% / (12/4)) - var(--grid-gutter)); + } + .col-5-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + max-width: calc((100% / (12/5)) - var(--grid-gutter)); + } + .col-6-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + max-width: calc((100% / (12/6)) - var(--grid-gutter)); + } + .col-7-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + max-width: calc((100% / (12/7)) - var(--grid-gutter)); + } + .col-8-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + max-width: calc((100% / (12/8)) - var(--grid-gutter)); + } + .col-9-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + max-width: calc((100% / (12/9)) - var(--grid-gutter)); + } + .col-10-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + max-width: calc((100% / (12/10)) - var(--grid-gutter)); + } + .col-11-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + max-width: calc((100% / (12/11)) - var(--grid-gutter)); + } + .col-12-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + max-width: calc((100% / (12/12)) - var(--grid-gutter)); + } +} + +@media screen and (min-width: 1200px) { + .col-1-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + max-width: calc((100% / (12/1)) - var(--grid-gutter)); + } + .col-2-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + max-width: calc((100% / (12/2)) - var(--grid-gutter)); + } + .col-3-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + max-width: calc((100% / (12/3)) - var(--grid-gutter)); + } + .col-4-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + max-width: calc((100% / (12/4)) - var(--grid-gutter)); + } + .col-5-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + max-width: calc((100% / (12/5)) - var(--grid-gutter)); + } + .col-6-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + max-width: calc((100% / (12/6)) - var(--grid-gutter)); + } + .col-7-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + max-width: calc((100% / (12/7)) - var(--grid-gutter)); + } + .col-8-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + max-width: calc((100% / (12/8)) - var(--grid-gutter)); + } + .col-9-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + max-width: calc((100% / (12/9)) - var(--grid-gutter)); + } + .col-10-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + max-width: calc((100% / (12/10)) - var(--grid-gutter)); + } + .col-11-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + max-width: calc((100% / (12/11)) - var(--grid-gutter)); + } + .col-12-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + max-width: calc((100% / (12/12)) - var(--grid-gutter)); + } +} + +fieldset { + padding: 0.5rem 2rem; +} + +legend { + text-transform: uppercase; + font-size: 0.8em; + letter-spacing: 0.1rem; +} + +input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]), +select, +textarea, +textarea[type="text"] { + font-family: inherit; + padding: 0.8rem 1rem; + border-radius: 4px; + border: 1px solid var(--color-lightGrey); + font-size: 1em; + -webkit-transition: all 0.2s ease; + transition: all 0.2s ease; + display: block; + width: 100%; +} + +input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]):not(:disabled):hover, +select:hover, +textarea:hover, +textarea[type="text"]:hover { + border-color: var(--color-grey); +} + +input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]):focus, +select:focus, +textarea:focus, +textarea[type="text"]:focus { + outline: none; + border-color: var(--color-primary); + -webkit-box-shadow: 0 0 1px var(--color-primary); + box-shadow: 0 0 1px var(--color-primary); +} + +input.error:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]), +textarea.error { + border-color: var(--color-error); +} + +input.success:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]), +textarea.success { + border-color: var(--color-success); +} + +select { + -webkit-appearance: none; + background: #f3f3f6 no-repeat 100%; + background-size: 1ex; + background-origin: content-box; + background-image: url("data:image/svg+xml;utf8,"); +} + +[type="checkbox"], +[type="radio"] { + width: 1.6rem; + height: 1.6rem; +} + + +/* BUTTONS */ + +.button, +[type="button"], +[type="reset"], +[type="submit"], +button { + padding: 1rem 2.5rem; + color: var(--color-darkGrey); + background: var(--color-lightGrey); + border-radius: 4px; + border: 1px solid transparent; + font-size: var(--font-size); + line-height: 1; + text-align: center; + -webkit-transition: opacity 0.2s ease; + transition: opacity 0.2s ease; + text-decoration: none; + -webkit-transform: scale(1); + transform: scale(1); + display: inline-block; + cursor: pointer; +} + +.grouped { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.grouped>input:not(:last-child), +.grouped>select:not(:last-child), +.grouped>.button:not(:last-child) { + margin-right: 16px; +} + +.button+.button { + margin-left: 1rem; +} + +.buttons>.button+.button { + margin-left: 0; +} + +.button:hover, +[type="button"]:hover, +[type="reset"]:hover, +[type="submit"]:hover, +button:hover { + opacity: 0.8; +} + +.button:active, +[type="button"]:active, +[type="reset"]:active, +[type="submit"]:active, +button:active { + -webkit-transform: scale(0.98); + transform: scale(0.98); +} + +input:disabled, +button:disabled, +input:disabled:hover, +button:disabled:hover { + opacity: 0.4; + cursor: not-allowed; +} + +.button.primary, +.button.secondary, +.button.dark, +.button.error, +.button.success, +[type="submit"] { + color: #fff; + background-color: #000; + background-color: var(--color-primary); +} + +.button.secondary { + background-color: var(--color-grey); +} + +.button.dark { + background-color: var(--color-darkGrey); +} + +.button.error { + background-color: var(--color-error); +} + +.button.success { + background-color: var(--color-success); +} + +.button.outline { + background-color: transparent; + border-color: var(--color-lightGrey); +} + +.button.outline.primary { + border-color: var(--color-primary); + color: var(--color-primary); +} + +.button.outline.secondary { + border-color: var(--color-grey); + color: var(--color-grey); +} + +.button.outline.dark { + border-color: var(--color-darkGrey); + color: var(--color-darkGrey); +} + +.button.clear { + background-color: transparent; + border-color: transparent; + color: var(--color-primary); +} + +.button.icon { + display: -webkit-inline-box; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.button.icon>img { + margin-left: 2px; +} + +.button.icon-only { + padding: 1rem; +} + +::-webkit-input-placeholder { + color: #bdbfc4; +} + +:-ms-input-placeholder { + color: #bdbfc4; +} + +::-ms-input-placeholder { + color: #bdbfc4; +} + +::placeholder { + color: #bdbfc4; +} + +.nav { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + min-height: 5rem; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + border-bottom: 2px solid var(--color-primary); +} + +.nav img { + max-height: 3rem; +} + +.nav>.container { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.nav-center, +.nav-left, +.nav-right { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.nav-left { + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.nav-right { + -webkit-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end; +} + +.nav-center { + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +@media screen and (max-width: 480px) { + .nav, + .nav>.container { + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + } + .nav-center, + .nav-left, + .nav-right { + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + } +} + +.nav a, +.nav .brand { + text-decoration: none; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 1rem 2rem; + color: var(--color-black); +} + +.nav .active:not(.button) { + color: #000; + /* fallback */ + color: var(--color-primary); +} + +.nav .brand { + font-size: 2em; + font-weight: 700; + padding-top: 0; + padding-bottom: 0; +} + +.nav .brand img { + padding-right: 1rem; +} + +.nav .button { + margin: auto 1rem; +} + +.card { + padding: 1rem 2rem; + border-radius: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); +} + +.card p:last-child { + margin: 0; +} + +.card header>* { + margin-top: 0; + margin-bottom: 1rem; +} + +.tabs { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.tabs a { + text-decoration: none; +} + +.tabs>a { + padding: 1rem 2rem; + -webkit-box-flex: 0; + -ms-flex: 0 1 auto; + flex: 0 1 auto; + color: var(--color-darkGrey); + border-bottom: 2px solid var(--color-lightGrey); + text-align: center; +} + +.tabs>a.active, +.tabs>a:hover { + opacity: 1; + border-bottom: 2px solid var(--color-darkGrey); +} + +.tabs>a.active { + border-color: var(--color-primary); +} + +.tabs.is-full a { + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; +} + +.tag { + display: inline-block; + border: 1px solid var(--color-lightGrey); + text-transform: uppercase; + color: var(--color-grey); + padding: 0.5rem; + line-height: 1; + letter-spacing: 0.5px; +} + +.tag.is-small { + padding: 0.4rem; + font-size: 0.75em; +} + +.tag.is-large { + padding: 0.7rem; + font-size: 1.125em; +} + +.tag+.tag { + margin-left: 1rem; +} + + +/* Colors */ + +.bg-primary { + background-color: var(--color-primary) !important; +} + +.bg-light { + background-color: var(--color-lightGrey) !important; +} + +.bg-dark { + background-color: var(--color-darkGrey) !important; +} + +.bg-grey { + background-color: var(--color-grey) !important; +} + +.bg-error { + background-color: var(--color-error) !important; +} + +.bg-success { + background-color: var(--color-success) !important; +} + +.bd-primary { + border: 1px solid var(--color-primary) !important; +} + +.bd-light { + border: 1px solid var(--color-lightGrey) !important; +} + +.bd-dark { + border: 1px solid var(--color-darkGrey) !important; +} + +.bd-grey { + border: 1px solid var(--color-grey) !important; +} + +.bd-error { + border: 1px solid var(--color-error) !important; +} + +.bd-success { + border: 1px solid var(--color-success) !important; +} + +.text-primary { + color: var(--color-primary) !important; +} + +.text-light { + color: var(--color-lightGrey) !important; +} + +.text-dark { + color: var(--color-darkGrey) !important; +} + +.text-grey { + color: var(--color-grey) !important; +} + +.text-error { + color: var(--color-error) !important; +} + +.text-success { + color: var(--color-success) !important; +} + +.text-white { + color: #fff !important; +} + + +/* Position & alignment */ + +.pull-right { + float: right !important; +} + +.pull-left { + float: left !important; +} + +.is-text-center { + text-align: center; +} + +.is-text-left { + text-align: left; +} + +.is-text-right { + text-align: right; +} + +.is-text-uppercase { + text-transform: uppercase; +} + +.is-text-lowercase { + text-transform: lowercase; +} + +.is-text-capitalize { + text-transform: capitalize; +} + +.is-full-screen { + width: 100%; + min-height: 100vh; +} + +.is-full-width { + width: 100% !important; +} + +.is-vertical-align { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.is-horizontal-align { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +.is-center { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +.is-right { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end; +} + +.is-left { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.is-fixed { + position: fixed; + width: 100%; +} + +.is-paddingless { + padding: 0 !important; +} + +.is-marginless { + margin: 0 !important; +} + +.clearfix { + content: ""; + display: table; + clear: both; +} + +.is-hidden { + display: none !important; +} + +@media screen and (max-width: 599px) { + .hide-xs { + display: none !important; + } +} + +@media screen and (min-width: 600px) and (max-width: 899px) { + .hide-sm { + display: none !important; + } +} + +@media screen and (min-width: 900px) and (max-width: 1199px) { + .hide-md { + display: none !important; + } +} + +@media screen and (min-width: 1200px) { + .hide-lg { + display: none !important; + } +} \ No newline at end of file diff --git a/css/index.css b/css/index.css new file mode 100644 index 0000000..f5b9aa4 --- /dev/null +++ b/css/index.css @@ -0,0 +1,121 @@ +html { + padding-left: calc(100vw - 100%); + overflow-x: hidden; +} + +body { + color: var(--color-primary); +} + +.wrapper { + max-width: 800px; + margin: 10px auto; +} + +.nav #themeToggle { + margin-top: 0.4em; + cursor: pointer; +} + +.nav a { + padding-bottom: 0px !important; +} + +.inner { + padding: 1em; +} + +.section { + padding: 1em; + font-size: 1.1em; + border: 2px solid var(--color-primary); + border-radius: 10px; + margin-bottom: 1em; +} + +.title { + margin: 0; + margin-left: 0.3em !important; + margin-bottom: 0.2em; +} + +.button { + font-size: 1.15em !important; + font-weight: 700; +} + +.demo { + font-size: 1.25em; + font-weight: 700; +} + +.demo a { + text-decoration: underline; +} + +.extra { + font-size: 1em; + font-weight: 700; + margin: 0; + margin-top: 1.5em; +} + +.extra a { + text-decoration: underline; +} + +.no-top { + padding-top: 0 !important; +} + +.tab { + margin-left: 2em; +} + +#quote { + font-weight: 700; +} + +footer { + margin-top: 2em; + margin-left: 1em; + margin-right: 1em; + font-size: 1.1em; + font-weight: 700; + text-align: center; +} + +footer p { + margin: 0; + margin-bottom: 0.5em; +} + +.wavy { + font-size: 0.8em; + font-weight: 500; +} + +.notfound { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} + +/* https://stackoverflow.com/a/4407335 */ + +.noselect { + -webkit-touch-callout: none; + /* iOS Safari */ + -webkit-user-select: none; + /* Safari */ + -khtml-user-select: none; + /* Konqueror HTML */ + -moz-user-select: none; + /* Firefox */ + -ms-user-select: none; + /* Internet Explorer/Edge */ + user-select: none; + /* Non-prefixed version, currently + supported by Chrome and Opera */ +} diff --git a/gitlab-ci.yml b/gitlab-ci.yml new file mode 100644 index 0000000..95e2353 --- /dev/null +++ b/gitlab-ci.yml @@ -0,0 +1,13 @@ +# This file is a template, and might need editing before it works on your project. +# Full project: https://gitlab.com/pages/plain-html +pages: + stage: deploy + script: + - mkdir .public + - cp -r * .public + - mv .public public + artifacts: + paths: + - public + only: + - master diff --git a/index.html b/index.html new file mode 100644 index 0000000..547b12a --- /dev/null +++ b/index.html @@ -0,0 +1,240 @@ + + + + + + + + + + api.chainz.rest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+

A free REST API for random 2 Chainz quotes

+

API Usage

+
+ + { +
"quote": ""
+ }
+
+

+ Extra: + https://api.chainz.rest?format=text +

+
+ + + +

FAQ

+
+ Can I use this in my project? +

+ Yes. Do what ever you want with it! + Let me know what you make! +

+ Is the API rate limited? +

No, but be generous.

+ Is it open source? Can I contribute? +

+ Yes! Checkout my spaghetti code on github. + API + Site +

+
+ + +
+
+ + + diff --git a/js/index.js b/js/index.js new file mode 100644 index 0000000..ebedfc9 --- /dev/null +++ b/js/index.js @@ -0,0 +1,16 @@ +getQuote(); + +function getQuote() { + fetch("https://api.chainz.rest") + .then(resp => resp.json()) + .then(function(data) { + document.getElementById("quote").innerHTML = data.quote; + + const tweet = encodeURIComponent( + `"${data.quote}"-@2chainz via https://api.chainz.rest @ajzbc` + ); + document.getElementById( + "tweet" + ).href = `https://twitter.com/intent/tweet?text=${tweet}`; + }); +} diff --git a/static/android-icon-144x144.png b/static/android-icon-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..7ac6d879096e815688062845f35c40b0b32dca66 GIT binary patch literal 28623 zcmbq)^;g@?6E208;shyf!6{bUg9RyC90G-61xj%!1PD;vrC4!?7cZ`X;#yo-&d|47C4=I7?6 zjjXyX8d^;p?!Eb|XZeMjwvrrL)fmn0v%p}ftgViQ=FN(R77&bvhI;M_*g-?{c!!3z z_X!P6{3jY3xpQW#mgMsQriH2!813nQPcFP9@wo@vS=q?#xmEtZpW=``2o23a?mbvm z*K6V60s3pp&U^l~AL6hnbL&Xtx@@#!xT^A6y|Q6Kr;lSTMh--u z?Kq6pL0W8%)(9U>gbxBKd0gk4b4*URAn#*Kc$gCt_WI{( z*9-qsHotY*r*JcuD`S52hc)R(Hm?Ktah?fne!U`g1R(I*f3fMTl>W(uqhS&q$b?lG zu1pDR9kShQ8q53+a0Y%5!S_Ft=scHw67MWJ9GUz6n9+GT&py{ELy7(=i%DEF@1;>n z-g&h2Rn1DD|C6V`i8bp;;g1$TJ~;eM0^O@z0QyUAx#;imL>tVZA7HE0(%XKA$S024 z$^^LyMQ6l@{BNkHp58sV|3w^VCv|NE(eagLhxegZTE;F$ml()${P1_+hTQ+opR84c zR2GZM9(!zZK9Wm-s>n5OMuxqChsdS~fDBHuAzH5htk=iq^8(%$uhhP{3K02j5OL~3 zzfS9P2o_3C)t(9s_aH#RD$1e0d-foj>drHMgiog1y-nxSwbV}P&d3y9GseSU+>_K< zey$XqRs~+j3`B)PH=6JDWKku#S$WhloH2BQI6r|eJ5}3MTP0gh#o!8~%A<(D7)$a^A1`l$etNn-=k34g%Hja^9&&$vj;@9Vq?n zaDDM{bJT`plAb`d=%SHtJ8}vIS1G@?uguYgP?ze&i|lo zk<@J)Gl`kV2vEU!Hc$de8XWMKW$?v5jmM&PgF{6ICX$OU@WWe17Cz#v>pTy~g~r4E zxz-%Fxrh3OtA9N`1*iWG4{tD5P&Kb%-^|FaGS+4Mw>$6nLTyAuJ6gt3TLK|N7b)6% z*p-*B8-&d)YY%9R95vFoI0X_*xda%+f{qy9lPhV^V7*WV#%I;pa!jfeg(a~A6Zl~{ zhJN-)aF=CPfgN{@gIyL=Z+JXTDKpXc>+f^Md&Lgrtu4zlhvQ=Q{@r5N)tw+=Ow>c7btA+Y~VJX(*RtkQ_?2)Dk#^SOYu3aoS#2$kC9f1Dghtu!{El;n4ppN3uv|?$T zzBXgm0EM)p&FqdW{c2F-3g9(r{ORfm*Fn$`l83WQt}V&kfMT`05V3(iUe$8V`M|UH zl3A>cv`PD52}(JeyxI(6Y4$}}q?(U;KO-*ya>H?CW^7~;Zp=k87N-$M(5d+{g?w&i zSxh;#$GZQPO-=;oro9QZ2f0Qx1}Hj#!OjPk?Ufl<3c0X}up5R$5i7DQL(xsr>uY2wDYgF3M^}C&nKFXo+ENyw{t!*sOUT? zNkP^TPm!Zux71=UlZ|B0d$qDbOE`3c2MRO z`N){v!F#)%U$6NjBXaZ!irXK~kRM!+ep=kH##W-|1CYCEof>pHpiUbaOpmW!9e--u zmpox{&#ivAisS!BKa~G&QKdZYOQpZr=h|xS5sSK&{UKRtG0jc`?d@046!RpN`Ox-i zi^$WCo)Gp{>6O$CuKa$+NJIKx!nwg<`|lpv@W~|pc?xbV6=GjkQ6Lyu?`pJCqPDjQ z1#X!ZO;(T@sbf{s#+938>;It!%>yZJW7VP*anWHfHg2kK-om#2bv9tYRtO*M=wN3q zvB$J3iD}Pht5iR?V$Xl>VQuvF%3F$W=bG|D#T)(u@i6A*pVr~keK*F~>-?kbw{dkH z7S3QyKf6MjJx=9deSS@BKXlteb#Y`;i{GAWx>XkKfzc-3hN3bxdHI3o*NskbvMEQM zj*2sf#0Z=J(Lehfq98_G4fqGEvwtR0MC7FHJ9HOfpm#b?!YlWk_cPK;mH3p$abU!V zNWDJ&9K_#A--@1R#P!)w5$2r(xlxjEMlsD|K}gocmlSJna_bcJPKsX$UUM>_qMUME zh~+JXU4;@h1u3O<3W6l&(n@i993QC2s@G#{Dqs((IA>6xf?_3D7^$7tDo92K;F}81 zr4=_+UO##R*JmGGJVg3$6r)Wr_#Stk){cW;!@>!t9xE9qcwy_)gC-HPF_#`imm=&1 zod(G59;nu{wTdV%ye~#v)83V2vWaO%iZfoCwGP`7#aPTA)QwGwEA8uW9Qw*&$>s?` z=h-5GxkU^j>1z9q(Q65eQcWH&IPzR#%NhhL3%+oHUNZmECQ}Cf=YaA7zJyD{xdzVD zgN7>1X8%aQ-HwGJerspn{E@Q~i3I@g#pCxNO1kC;YO#r&$0&aiEUf)kMW#9`FlCNQ zc>hmAa)p|I$I0v5L#`>FQgjWOKX6|HF{$iJvzYqB6Mm@K7Xoeowpo@4NU_JrvuT`Y zu_(wW_u)ULY%|@00j*l0%0rFHMBGwJ=_q4zXC8oW;bnG&?O+4zG)@6&fl(jAHZ$%fQ^1R8he+QcR#kgY5sD!@o<6 zoUG_?2|!ElU;Fq8p2~|fPSa-xp1x!d0?J3v%mIUci^Y)z<_~@kzx@6TBTfQ=5u@oT z8+Q0I#c$wpI!$x49zJdmp{FIEYitG4m+StIcYfDFpeA1GyZLXq^!JmUL#J70h1c>c zIyjXGro?k!oowWywbr1i(FEt2yY-flD_v#0Hct~1BS5~_JC)`?M_X!Dtc0>bqy1zn z6)od|ipH4+Ci#hRfkHHD^z$->-f%4(j`w28q=3!Ze-svljympjV~HGnxuXENca>C` z=em{ZZ$7A}e^s7^;Gk9Rs{C*lmAk04%h4KCUeP*q^WQucWxAf1LM!v53VU zY4YW=UU$#9VX{+dq^?dOp}cmG<4kaRI0iWFo%SEk0B+%?h*(@vBY~4tw^BZ#uKGxY zU1>#;NA@au8fgV7<^DtFrQaBYm&t(mcnXhG=dGS4#Js-OHbS46KG#u7Z{w6FH~BaF z`{FlgT42VQ29DCus@*|X;o@XlSMG1#Y3=9V>s-D$!s&UcsUHu_ZYE#D9LQh5s$+?i(fZeU=!x9LYkZ1d zkpES(gw9BjDXvffO?dZvcD{ZL833iuxbHfD@xa4)nUR zqMF!MOO#Q(osC-f)?dc0_t^joDx3e@|MVx#P;-kdPn%E~!`PbYPRpy?i95HhA59-i zIGvb+1GK5KY)1a0QjVioi-R3-(hFQv>-PKKNOXjq!lhyzKMIJ?$JrHhs#8DE8f8m; zBvqK>bVVu1@@f*XkMOH~3q_+VP%8oTx*e; z*JTb4aTF+q=%gtpM~8(hYLQIZxb{Zd`l+W{M@`$O#Z2SsJ8Q^_ByU}(`w~s z2Q$hMl_W~8ppk8D>oB#}tGq8c2lZ9ka$DF^IbL{Kt^8)D-NCLx^S{WSpq%2pK*{Ng z$Y_3J=B?!$c@+yRlTOdk3<;%+k!ajS&ZPy~Q%+t)UQIR|-STSpRs5{q_sJiv4Z4-` zWiw^t|yPvlXpnD=y@O=8VMtQ;9S_JAVS1z`U*F{ zr;~}N*DFsCYvg{rsWrk443B?B{4Zp4uAO2rU{C&+21Zg1U0=n2u#T$~&9suPyRh_z z32^&+rld8chU}&)Xc%pB;A~PtQxZJIKBQRNR$>#C&GDB~m(8uo%V5j$3M942dKzRN zRJ~D-__{$8HXz`5NK+$Sb&91Q#)51#@Urp=`D30&^S*4$>2x6m=C^h}FPg6ByIOkw z6%W_%aEsQo)n)MZ@WrvWZ^rb#RHT|^R>>EgkQC|=6L3*HN(;iBOaFcKqx+oj+`k%6 zN48++tic$p>j0)tq|-8%WD)9MU82u&;c0}UnQj7$Gx+~h?&CVPdI(XY{u?wqaSuCB z;e4ULL=emKpmz&_Ytf(m9O+zQ6YTR4UpNun}K-laijNm5HBu!(Zbr0KW+AY%EkCD>)Nn`Pz`Y+JOOIp9v^ZDIt*N$yka@z_dG6(+0cJ54X zJo8x=F{HLy7D~ZnHcIsxpl|_tvJF=um6}ewRkeN>H*9~zs*uX}^gd1;N#1gH zms&+LPSX&nL~E38c7}PHP3`FD`x(B_ihcBwUL#-Rh`^0QA_$<29!&X z>|qu3yUlcSw!K;Ow5h;%#SA%;xyiyvpuyVt#KM8jjZ&@cAypu2-V@xx2NGKVfEIGm z{odp4HT9x$q*^=9vQb``KzO{XbnuCNLC^d1T*61yJ(;IR|MS#a>Zik}(a!6jPJcbh z2fb&1F9`9E8XCQ29M_I8-MkpiG|e8q$Zsp&g#D4F@A7=7)2iL(kzHI9&GzQ*^#Bb` zERme^;{mItnb`OoDn4fRMUU(dEzk~D*bsX=<04s#g%vDpn`mB(mnYOf*be=Adk|x( zukvR(i^;UZC15f#tAN9}9HU)#NwVT!=~^>(bHza3e0$@{*$w4LOH4SaJHg6}bMl^L z9=`dr&2c%d)}4I&?9wg3x6{dxfXWQR+rOib&i(cr?A~-@i;osGoTU2y47u$Q?_tkaQmv*#$hAaa@-_Kg5Zqb4O`IdJ%%K{z)4&7e7b z0ka%uKA;(3_mP1Sz+Sk{J;uZm)j)`bPDGhlkX7FZzBb#lx&zpnIM?-e@Rc5nizBP; zIq1ggQ4pp+GC5EwX$gNXfzyks`#B-0U!Fu6NN?>jPmapY9*T2`NJa^Rlor!imdK=i zb{1^Dsm5=&3)x>~3qSCRc9C%=Q@N>t39e&X{4NQ6e3Wh|o;A{H%AQ|oA6T1=roQgi z)jC1Jv3+v9Lb9^t9go%H-?Hi8aD&CYfLQ#OQAZkF13pYkR)O~D=d34FF+^@9e<{WG z{*!$(XdzQQD7F$*qVZl|_0MF*)~AI=d-#$AVU*hYqHrvr<_D!3`Lw>i1~qW+n0YTb z^!Lz$GUuw%agS!K&EdIqF@1z=J7vR7=b*bWvdgpip&D(P305_j?5AS)kY)54q)&Q# zYg#?=VCtI9s2aNwRMNl=e93IL+{YgCfjCL7KOmeK$jFFU_Eys;p4grJ^&`SUJZAk@H-o;Yh@mh3yj2%gFpM)a`XMOibtrmx2OB>JFKNjueH*K@vAy0$Eq1T`# zhWtd(yof&qi7ul5A?tG;;37^nFgJHMW*A0oSEz3%z&7>YHC{`)BRE2K2|I=WOj(*;WEbsQFji&;KMU2`4?9T1X zp`(wKWB41M#F(Ds9Ho$Z3Vi3}kSQV@3b0JGH=<&~DG(UGuhlwBxCTK{eWq1=njP+5 z0wQP1*m)tJI%Ht}EI;)jusGp8CTPOP-D?$r9r7fj&>yQ=EWt1H-l_bcly_811=~l1 zO0BF?t%|v)1XUrU!DuM!uI&Y!I5Wu+D@jZ7^3uH&=tgNpPoFa22jG>&9SP|A9^bU3 zbzCwaY8BuG1ZXi>%KaVzB+$~mV+gN_(uiU&!h6dJFzUkV%V=Qp4s^PxavB}?zxjH# z#I*QO?Fu9-fMSG~y%SGq8IzCp)^2ctG*yz;8tra*H>AF4(bC3}o&DP^kuIcE_gSR> zFW&H1OUn;cl}Tws^?uYR*~-3T>*|%k)y5*j4UCvw8*%gh^OWucNl4W5#*>~uPPXne zh_}ZFx1XyH48<4`sH95eI1<8YUc7A`WJ)=nY<^jWyY9L@!;33CZ!k46U2>|p4B4(M z`Xa^PwLQh5fv*}!BIyGIQ}6s(PRit6t$zE`3hM@o=>0*yPNW}>wJX?EE@h+ew-T)u z%24IuRBiw1fl0IUyY~9}X+=WAB`-Q}#bs1peETBA|C^H_HNE=&xH8bJ3FK(cf~Zbz z1`vJGZu+xU@8{=l^57fn6LYTlOkPo~CudJC2Hu#m^znuPj{P1JJD2=s!=#rKMh6cU z`+`8%yjd8@3XjUw2Af;!!+XL~4N03(q2?myl#KoL07kb@{kr0ag>^QK$SXort}Q`_9F=3M2ILQ$_~?@^ zU!=SrE?mCw6nB1VppWWX%p@GX^%@R~AE)-27k`@8TYiL*H`^z*^Xpy3rku6OQSxvO zSt7y)sO|kP=^tjLS01aME)BNH>W`8`*w47sy9+cU%I8KX4QdW~BzZ~p zH@~s`n|i{j9j-~iT~(C?`NDE!h|KcnGD7CCoZ)U5oulG>S48HY9yDPVbK?aWB3DTa zRc~4J!_5oq9Ioi^Z##cKov?NA-;#M$bLH>0_A(Zil^A3S;*mItnuj$^vHcP1HC`=M zZ8GFRL(s!CzDcK2Q!onA>Ie`n^t(!?*ZGTX7}0Yi6<1-XZ!iq%l7)~$>(zwnV^%T3 zf9(+CK7;I=?#z8@@mu668Msw~0yB$(^XAV=MaybFl zcZ>oG-b}S1?OYIc^gC{*!c#pjj5@8Ap_vG#x z5vu|DwtBcI{7z?nh7ie{>ZL#Q_;zO|R-vX^?&p=SX!Oj<>T>TEP(#KV;=e{b)>xdz zJC|HmD`^Fbn2kAMpc8O^+NB^C?Dmh;w{MCwZX+ZLL&J08#w7;-4EJjmL^c(*|NUNu zbC`JI))WcSbHa374vCtD{#wH8O z)7<@9lk9sokSJXQ2npZCp-vLh1l9hzt$c%c>V*=-7SA;FP^fpB)wceyjJ85}D<=1# zeivP4o@2zsCXB=VdJAK*v~Oeiu!;b33c$^pq;);+z6^U6;hYCVGOstKoUkPzPLBUyj zbL4UIk|?$y`ta`H&U+=l0psi~W9bt?>8o*2jH)jbi}=?Q=Rf!C-TDig3;qSJLJTqk zogGP8xh9V{sZx{{`O|>)d1#5pjN6<~tj(LY0!qL?nhV3@R4Z0)qEHqlCFW4@*8ovF zTrhgFM|-Ql8q!pJwN8Z7f*M-GcGEfn0|%Jc%PGIFS7cHMCB@`$2gn^U^;QP_=VyKW zbYuBQzH*-6zl(ce_V{2H&4VhlGm)y|dfK3WEIzT6J}{x>qadE|!6&qj_uU1pB7RhurCenJ+eHW3fq|EV8aeAT?*cKECKAN}+=>D>UgwsPUbkc&kq0cJ!j z7GH!MO+oO}9`2L3K_qEzaCi%;OM}ggr9U#~IV65(AhqLmSIbvj8MKVrVd zXhe{e0=Ac`JnyBLRMDn@gDK0v$*TJ#jsHAdmXwEjUp;fF{M7@+^D3edTj~jRng^Q?_g$_v`nh;GZDmXF+G1@ekz2m|S z4zOGPC6ZP$YguG?NZw14CX(_Tlre8IpCmyi967{=yYD2b@QOqZG#TvJP&!GkI1Adj zG{~a@w0_i1Sf%wdiP;MB(x`U4!=brR*44(MOfchP8s()|B`6d(m2u&J$s(uhCG!$n zRJfX&Kv74rF1<0sm<7}|SP?qOmB8?o;O?1RYIR7{71G;yX77U}EiH?bw2b=CLr>ey zVH5eug|)Fpi^Lcg{5`qKs|~?Q8X6!j0Zi-ut;6v1sD~PGVGCN50(wkT=5ojt{y^P; zwi*{i?#h4aqnGUyX0c8OQ>vI!G`461dkuL*b3^Q8#kRBd#xtez1^PR_s=U=Bx)^^< zVGj1*k@SHpNG6On_96G>q=002tv*@7VEg0|j540JSsfAv!{2Vs9$&aU!`q>R{nkibcb!io=XOkg&^$ z)m3LfWPcV@VL}CgDg=4T=c7gjyJ`a&tAX9M+T8dS-YJrR`X~H zkWIefQB@pLeZX~XCpFa6d@99$K0awmi$Y;XKMSch5@Q_Zdvr@(QF#qrAGS;SQGXZP z*l6IAKPeqv+?S)^(1pNkpGxMAUL4*9ouZm4^_!}06GaX*fy)gu}$xDb$m$v zVB!xAlXrcd7&9t3nYc^MZlm_|1b@>ZJei9O^FPW(2%CA{+`dNiGueoQ%YA5w-59p` zX!XHXCGl-XYwRfUdl^1WtfWL3ft2&#eqbgzcFV&;aMZ{j- z5cpWa(0y+K90KaR^CR}V+*{IxVx$vw1V{;up1+4iLo+Z_;ylH_QWP5|pCCr2ZH)tu zTCWyYaW}+UCq)oT|L(=Wg(m%R5NMiH4{cb8=Z3qli>gJtq zKrVcY+mm38A>rRKPs+qki18D=V>%&3g*>V79ZFQV0cdCa4RwWyD@i`8oJ9Cl8Bm~Z z(G63m;&8KjS{p{wdr?mH`J?y=;o4=1yoM(-xDy}9#2{}S5fbZTN8v#Q9NIX=ZX@KT zi$&RLl*jFI_2rf?e?<4SY5od%2za%E+77C z|L3L8F!rSxQ}_Q(=c5Qga8Fq8`j+oP^UO2d*akMjO40zQM2u>4GXZ4w83(4ts!bPP ztahiV>xW4J@)ucjA`slIXMibjeO_$0;!*&|5SloVKNWI0#k$5r# znN|K-3!#S&1o=Jqk7UrP+slc(H8ha`6%zI44jR&@Bz^3z&|^drd{p(!<6H}}60g3! zR~7m1?Z`Y##^tk54FC9ttgAk`V~ZM{BG;Y*8xcdZLzk^HO4et@so$P8R=OWnZHuP$%#CfmPJUHB*bwVgKt60NnFR$R>t0>{R(Ew$8XCLnvyjWZW0e%LE8pI+Bj_AnSx zCskaiCXsp}#l$n6oh6aBf~t6C+RQDEX^OP9JzN6>5&tEd)OyY!_zeF*i$(ipIIl`# zv-Tx?w{a!fZx*6iuTF~NxV(4R8L(peznj5aRNMr&c5)eC#`6;gGGQuRP_>861!9#m zhO_09mL!u(+)Gr|o)_`MJEjT-)m5S!ECjPp_m*LxJ5Jtsa8~dL z(S4_-yiy3_a#I0u9Xm2qv(26OzRz8Mx}M-zDy)EV{+LdCJ2c8hO;m8jMtiO}%3%8wlB~B|dGKZ1>)gF+-p3G40;(|LK~rD%s{q*nHJbo3H%- zu)VSUa2T2dXg^ucki1^nx8*R}O>I9fjWRrLhP(B4O_Gw6bSGf7-C2TeTSO=?-0D-3 zTJmt2@cQd|M}slcL~FUJRW{2lx|JV$eyaip*Q27!WBri!aq5F0yQ-M;)A z2Up@yN82w^*9k_;u7}%ndhttQnHv>bm#I~?O?3k#aaqrpc>`#M9sfj{!T)qMTlm-~ z%T_al4rVR$RhuqbHfx{U6c}gjHv4v*EPOPDxy6~M)xkmFolF;|Qcr4O5qmnRte>Lp zT8si14ab>`VhI5#X0HSiRdEws;c|rKa1`HrIq9gfu!!&B6PMkZtns0U8yq>#URQZpIH0IDZlsYEuDCXY^ z?c_p06A)h4!1^WVO=u`to=}NKrQ7b5*oVmR4&R_SX`f`D4Jx(R#Pp0ifg?I0$*1iX z)BSaGd;>nR8vQz#uO9jivq(tpOYjhp0^zQt9OYYbuiXWLCPJHbS6J%2 z7=THPGW&^nTItU+P|h$19?;^ zGlPakYdt@l_E&Q7!uhsijNM{cQzpE@y5axT$Dic~5Do)!SorrmVhgBqTbrE*W`)&iZwJ`u!Yu^5=Vh}Db!R}sA& z8>sbGK}N@m&d2@t>y?@@0Rw%CD}I#qP_7!P9IC`g!&ILt>Ev(R(uYfMjg0n-t^#XG$*e8#)kfa683N5$aa|E`=W<#it|v|O$}f} z>9S>dzx^pq={DWdbaQ>zV`1U!9(Vq>#s8GX!0E`caz9@l%#N?kWX;%2E|*WH`w>)p zh(`$k1>j+E45@|21d=<_oZD9~Szg;_|2F3$Ef>Uz7!nZ14DgzNN(aX4 z_zr-83Otq1)9FJMYhzjpwu?zmSP7X}-^1S*f2ygA#R^~TQjMnz#^6X3$xe0D_zyDv z=YjRGc0lkVx{CzP#t@NjOa`gQ3IVezktQjO_0>u7NY@VUF(_gGo5b<7;5iFk`XY9y zl$*4Epr5mL$FGk`nHKTv!hL8osfjEpREiMffKK&(FBmAh1A5x_*!hUk^nFeUDd**E z6Hc25l^IvnA>nPI@Grq#lc*#-cJ9K3iB>h&NvwMb+Q7{$qW_1|gdI-~2L~}fr9HDE z+&D~g|lF@H? zHdCx@w2xP~#e5lqt%jwy^4Y^pvKCE?%(iVSDK2nPaC9WbbW0KTk6gTthTt#R;@w%T ze3@K~k*|o7)JWZw6&Qpp13jBtSw-(s@NJHsI+_jZj{h?WUOiA8d!22#b+0e`Sx}MH zwqkegSF$#(>0?w>DM^>9C9{1`w7K+_v(iR-u}eC8D7q`KxxjkqFcqpJd3#9Hc|t;n z!lMsgrlCK_kiL*tW7$+TdeynjbnL?C+Z4AZ@iqL|dF;BryyO^|*`u!;Tv@{#0GF$P>Yb z?_>}fI%^&qp0HbQZrUP=ssECXy*t+J>i7HI#%z>+tSM^fH7vWc^qUWV$%kxV#&8NH z$$iTkO!AHE8+Q*WM>sF?IkQTCV6x&0wb*(3as2=lplUO3M0=r;^jM)p(bpGMLNU%Q za%F$z82uwSQ5Xy)%4>79P#&cSKYB|7UJLIg4q^Nu>QfkR>)z*9Z zC)bXJcOH$KLCGlBYmeJeje2s&8JP8UQ+dSf>+Re%Kc>stJ#c6tU&GD0p8jg0FvZkUlDB|xG!G=T5N2>Cn(fvd2-kMDY& z#P;ld!2qkh4Knba=aQy_#O^k=~fvd+%PKp<`g+MjhB2hoYzo z2E0bR=BqSzJc{+&+J51A^k>~lai;oXC;5m;9q2%dUE$>Wq}P~@^tm{1yI0V^dTW0B zzfz9B80Fu*TA*m30`D`tM8{4iQh*#pX#w=q2v{Kb@fqW#eI; zZ*AP*1H3TQx2t>mFwG;{`ISjS>fq=ntC37t!L`Jrc8qQFrKbOmY|eS=lBtw9D|kXB zf_~7q^Xw`=?$jRr)br&{{Pk%xp==l+xFHt4!BM>;xtVN0@V8~Y-zf3*!>JjJJ0)%H zU>m20Ka9cF2H&&l$oaA;L(L|I{f+4tUEuHi!odQ34Z+>bh?hhOxX6f)g54yQOgKuv z8Q;U0Ecr7(yp)`LogZFWuUT(x6|$Bfz;X=xlEq0LwwbomsKKQ5ZLDsUlbFl%ntYON zx6g;wW2EqlHczrW3i_jubfS_AJCu`>-fP}&&H$%z&Zn;${_8x}__|m(M#y9K{weT7 zb%o;<5(W1szV3IRcv^l9J9?V?<|Ao-K-;u{9ru|t?ed#I_aZEMg~H-qk$yc9*#Cw; zP%RRi{d~5zaq4c^XL2;n;HScE9}em8w&X>$`;eBLr%dl-kJQzOufmVpM}L{|mvi&{ zZpV+_<_>ck*P12%5>%~+?$lRxhj+b2U(00W%m86#yoIm@aU^#yhFF;IkYP$Gn0p;0 z0L>nbrX|mNS$jGZd#y8w48KAPnPF?5HHpK~z%I8Ej}e5|*l9)gtxSU5+}$fq>qe`O zLBZo=Zhxko7OmXin@hWXrxD}Jes|A=MO06XS$X@@P!{zDa=DpG8a3$|Jc-D$aDNwS z@Yo-8739y|CgJe&HWYx448)A(It~lLoUp!DHz7hHAw{{g)O`(Y5}g@bacu zuU(;`KdpHlpvxdD=9^$R5g(Ta3p(9*b>l0d6FMR(6;&(8cZ>>QTml!~lyTX{8&aBC z+YYJoMwCCnl5dXLu1J+<6Lca-Zdt^=*C~FqZ#RFT7`NY!QRkeADR7`gq~b+xf{Eg% zJPzms&uuXA?!;^wF}F%`Iv;x7st=NyjzWdF4>jMAH~CwC6J4&P-uK#?PPos=yR{)) z;C<9|Sn?*=6AL>`${tf7)#~teU-IOWq*{gXo#6}L5H^mPxg)BB1Ker-o7}!rkmOuX zHd}aBoAXC_;mM^XQCZ3L^6Pv=&qBKtRvg4He+c9kP=2uijX9vqB-(`6e_7HM@^oyx z>1P!tObg93cloQua6+r6mcN$_ndBt35z+r=IQg|=vx30Y+qyqD$K|vA@3cc;&=fNu zjU4<>Du{H@QC+#Lu$APvASZ&a(y(cauab(jF5PZ+)l%ExTb1hHw#%2i%93a0ka1$PNx(w>C#^&?;9d^>_GV4gA zVXr4dwojvODPia;GgOb~;=JVSb?{%Mikn&r z$8*GsH+y|%J7BkcZJ`oo>UB$?&Cw`)XVOvsXUD6*S7V2wQ?`FbkHBtTEf{RZ#*~z{ zK64eIO0M7HE~!d|$}tp{QNry}cxmH#E=4>))CQ6!dq za-cn*o2-v5ZZJI7Qdxs*tZOXK4#+Vpa6w*hq;I9Ioks0vA`Z$&;wrNIw)Xm+e9pHK z|1vxY>DtxZ9y7>B8k>gO)){Mw$lZkxbn2%_DaTJc_)?z1 zM~|)N`Wxf)M)g3rxJRya)7D5N^EwSDt2qCQ)c_bxCw19+D4bPQ z#SkiZ(_`K*kt5DTC)Fg}485L_s7Cyi@;N{1(oq^ff6aJD}IwpVayG z}P7xNTIq`;QU*=i2gx)-et!A!G7?=R0a52sQfEeAZygW4zV(MfMFN(37VNU|f&_YS%xeXjOK+U2X0$&o$DLfUjXQ78yoJ~1a%mKH#R#kZnJqf% ze_-MUYC#wZ!FE|FiH}t&1Sr4PDq%VHLl9}rdcjK7ua%7a)sRfW=lTQTDoc|0rgdm! zy<9)iHf2gvNmI@Ug3Nh*9x6PqE*6UZwg012-#(_&+!y(*cOJ4^f$F}kGp>F(azdqL z@U}ZUY!*0O5hxywKi7b6nt_^!3GWk*yYC7i+=YczoZB7>Coi~3TljWH1Aa8e=MP~I z*|HtYC%~WXRjbbybD(l#mDAu+hVdw)MMrEPFT+OPYR@90B;}e)umBdHJ8;uuUtzlS z;8SDqA;lT=+7i)jq)kv`>HEM008oQ6!=pCaZYs4CkDqagDGYk&cDO|H?u7>_q zkmmUGfmyEBZh6A6iMcdgPd&f9CU%K+H}s^~Z6(iNd!28Gv)ZbOF_=;EQ*2(;{_gS{@j9}T`nme9 z3napg0`}L#JV2x=S;$T$&%`AQ(K^S_fNbobTqS{>$r4d3Tm^314t6eYB_2vE+;Bk5(63MlN1#H zjZ;2*Vgp?Lc@^O~pRX0yhGyK)9DgL^M;(Q1&s&Yj_w1SPyfaNsmKnIR1Ky=*)GL1x zYbho(Fj10|XSRSNogpqrXSvzGq>sr~2*bJ8EIp&SMTMh6AS**;DOFqhaIIPbXY$LC zO0%(TvV=kV5CURu`QdpBa76fzJXI9=s6BekyLd%aha{TkL-`HBB78CoU~=+#FDS?G zm>QYsF(!e8Uyr>)!s`)s$aa@5`(yd>uy+^0B*g3gQ`cDswH390zCtNhyf`ghq*w?R zD8*fa2Pqx`1h+t;MGF*nhvF7oindS)9z3`d3r_JuZS($SXZGEl**`LOCigk#T+5N? ze!kxv%j?SEeGf{EyRred93||otme48y+ipQIp!%IFzKi7Ntajg>sM2ZklTFiq*)Ye z9+~Waz^buF=$&b;Q0VhyiVI9qspvG^kB9!a#1cbk&)n!Vxqb(KPK|8Qgo+LhJ}rhR z&4J!(ekhE#<1k073zom;-n$XOK}x}|i@5>knzpg>e)j&Zn)CC+JRQ7z9&)4h`Ba-W zmr1@>wKm6^3ONu4$IAZ#(7 zJcwW_FyUsu_~O}NUOk#9W1F?4#S(Jph~#V*Q_?-m9K*eQ({A^2>mSc~d~`bQh*aEv zkc6;##;U^y7Jei5gu17yav9${E;*8$nsv07Itoy9K!oK-A_*vC??tFB)Sh%d_nEdy z$&z~=fZz)uROoMwud1rdnf0Q0e^An$a#@P93&>)$V`k8;RHD-{qgFF(Q6Q<(UaSuT zue{UZuPgb*!l0467-Tp%J(d2hpnsR1e+W_ODJ|P>7k!k1@zRtjFO}t0Vqg zQ=}Tga0sh;F%u)LA+3!0prp&8tQ56jKVSN0C`+Tg2HkA#4)J(^i$KbF&27s0ulq za64)9UtjOO0%?3$3{Y84vbpk%BY&h$5Uc%|{XNPj;QCx~y=RQ-7sP>j2BEPEa>6F6 zC-Q`lgu-m;=lR3>goZ=_#mU?4)KQb&&%lKx@)`|q;U^jQU)}#%PBw#T6h~IplmoNV z0Jfz=dp={_0cW5G-qlNbf<+!Cq#tRGt1m({urFscu#&;QVuwr0oL(a1fHDC111iSK z?yp6Tp;neHu`fh+FKBeRk!R{wrC-&<$cWbI%vY_DgL>?5Wz|1WW^?!nob^&f>-}yr zw#*^qImaO8Kq>^4^cAIw#EZT917I=*pUrki-kx(syfehR9y3trb=FP%N9at+ZA59Y z`|DYklAGoVR^mp=z?jo8ZpR%WQpAlIQqzD9!vOZyF+}YNX=wf(RbKXZ?23KmRMP?f)}_IJEdj=j&wE}-0n$NDrP-7X^7xszSF zX2PTA-Gi^}aR7^`Q7+_7$fVY`1p!ZV{6U?qCJHQ#Po$HlB@Vai+nO zCe(LZHl^21nBp<&z?qn0#Au23{L*fr6;g900RxKP<;Of88580rvB#iQGZRycE?{CIzPiM`|+UW9Hz{~87UO;S%@s{~G!}@e%cUL6yJ$|{5G`qr# z0&8wO$zi&ILdfV@o;n^8{Ps^{)C7*m7m7o%MM5#buAl2Mz_v)HWQoXh*sdLH{?&qcf2zQK-J5~U!qfx1AeG`*mNL6Q<7(NeSEfName9ZJ81w@NDGZ{MX`z6VfOM+Z~_Kp5pS<0&iy{v~@wG?>y zdL^QGc{wpkWm%YX3@5>G;h4XHh9ZgiD!qr_7i&u?bj_8?A?-FKiD$UC*+IIlv!LCo zC4&_Y_nxb)Wx#P*T@Z>an3^ET`NPD{`KeL!8p?DOU+MH1Y~`tCN!KW!@-(t*lDhqq zamn7SAW0bDFuODW(Oq}ri3i(20Fg7?S;VCI^3IO6 z@M1@(X%yaJz4m!#V91+yotUb@5>S2AxXg!Fb484YJ6jwODo>z|yyo%x_StEnV5|~p zYt#lr&v+9@he>x2wdfSyRJ9mrfrXl7?hoB5DNoQD1uA)lh9ip4?lV4Uxw3=2^s0}j zYJQT`aka9Rld{jC{jENu)#R%msNhX+by9e8T&3xF&s8%woTL z#XUIa>)YucBfS)UW&A$2lHDgJ$2*q*1${hHE-&2u<1(DtF$G0Wjxm@M9O*b21=2JA z37rd8h5>1{k%@=1l3#odqXIjr;;YmcI2a>_pMqvG<@HnP?FEbHMJ|8gh+I^?CVEy7 zY{%QYdFhmZ8^Vm*2(kKYn$Ebicb2#S{7m4}&W(lJjZ$7jZeT|v7#sJQJHRG2w4y2g zl~2R|hC<Rys62IrU)(=(fN(p4FDVh0wB|)^uJg3)wkPPq>oHx)Z=@923YY zoz8_L#(IQnu5pZcEb1}p0=U66exNPGYUumQmb>{RSHhxBo**Xi8sn5R;*aFOsqM%^ z&G`aQx)aiFCkYGdb)Ve>BGeek5!zyVTf0wLxlALsOe1^Vyj*mhHh`k6{WHZMkbqjZ1ucjB)%T@eWUm5lV(_m**u)IWZqEMU3O@rQJ;P z>|HLsa4_bgz5*ulQMvfzm98M%oK58jx6))X4yQ|m6gA7+({s&dN-LEW0f(~!BIN{a z7bZ;h?JqSHl6Xd5s_DCs5S69bzcX)mXD*zL8ROMhm8iMEE5I*hd%xYo#aKzqT+G7a zkyp`sSHIC$d7pvR9jE28)|e|(w_~jW4AHVjZ5L!|8+`2?6v63#-HsYLo~6<|cZXWK zMo~1@n%8#zR*C}72@nn3)!UgkShV2ddWymGth)P#|BFk#>=J0HLhd+DdeB>&~b%Nnw#4{jp$mvTV6xd+wE?t*356`~K z3HLb|(W>!@#c7HmIQA^fl6U7<#P_}k(bl#*bLlTAT&Qn>xxCo!5D2Vh*%|y5r*auT4%E*_ zxa0&|n>?pkS<11pSlWvMz};)EMU0Fz*8a}Y=lXQL^~va*zo|To)Gs%}p?%blCQBOC z`zgGHb0t1S&1=k^j{6|BNz)YG8S5-gz3x8ulNDYw##iV(Q(Q`$-F20|;hhi^3tAp}DbyeQlDv_{;7{{4@ zOWJYF{Q)p@rvGEvA!r*5L@MB==dCNf>H8piXg(is^RqUEH{z>G2SDGd#7@_ary(UY za8N&#%;assFYG`hTTv88bZEp8l&Ekb7Y3i!tl!|-bH-B^esq}LuVmn>das7 zUP;+rb3JkHF0uB#I*Fb5;@e;C#^edC1=p3i;q)q3j4CFyrt~y+N|9(_xp;tiyO5Q0 z=EXG>y{WKKYJBQ>x^&-XZaUZ0-m66?iQed=^za))t>QkhoQ{j4NM{z*!wwD238 zOUT(#N%$!?TOaxX2mXF`ca1aiQ(5T{+1+qQd1DMs10^5KlJG*cB1 zwoOdShKRLH>F!>Q7nbj5l%;G>zR|GOf{)m=zGg5woP2m%m*Lr~l{9dCv=U?l--U)S((!_59CZ09_eMmYI1?B}S89 zTt2TjN2xUVGi=&Xkw-0wzDq}<7;s2{HcW0(ox^HC$xK^SiTgC86 zh`tGpPJ%rpU=o?4OtBAG@iohYl#}V@%Gi}?roTyWU8EPkgr$+3myEae%t7s2wv#TL zSC(@;Z`Lvc1ND`+vRgf(^Dx9FUBjSlTN7NzTbP!drTJB&k`tw>iLnT@_bijE+)vB4 z{KTz3?w+XU;9PSBFdB^=w;o=qmsJ~X_SmcbAf{bKetK-S)}`lFZ#+XAl0g*GlC%}A zvF7?pok+QfhL6cuV7KO)a}5z|>}Y5eq-vPHx29*PF;kZQ-YD6!Y(FE~+IFpZ%q$LE zNu&$r(wYnI<2RnN_D-JDYH4ptxJlKuip6IKEtIP z(RuWqz9LW{60yG&)gH#pS+=gCDkqXx-}aizn_9FTBY~Yls@Rh{&$JFUH%j|>M5t(A z`7cvJlhn`8N2QKVwP8*ZU7jv(PfU)n)R2a?(X5+CGin283*d1J^%$S*Q5gGBqiUAg zh&0$Ce_CRsMy<{)pCRT?TCBz&AMHE_cW;A+&ezts>a@IMk_dh`)3mu*({4;Z6FZJv8gBS4Rh3fd*ZeHLzL);)S zlU9zGWfXqT@UQ}@!qe*rzF5(?`T1KzYHXLE(fJV?adNDcWh@5!meYU3UCQBGt=RkP z@>ldP{88cQrJ-hD%>%{pHnFkArK6cc`fSALo+H|ER(CP#gDZ+_ADb;t+~sA^6xr&F zcX%dd1@Bm^IuUlW!YDhyr`4*LX6K!PmI8*o#;r1&T8$dpr)-0ec0xl#jp6@D*JgSh zsGPreZBSWQ+eCW7suv_fef*spT1snYoF?orMJ1a!YmoBis~blF34M-LVn0x8u{sv7 zNDF#oJV$=Fp8os3DitT$^D4!4iOq(C<%~7Wb@WLT+POP9kw**zG~{$*!*txb98&~MbvN&*Mz7RTv9rB%7DMIIEI2Z zZFt&|BV>cAmy@T4ZaSa3A!W%s$@CbPD`zZRpIBUC5@OokV45kG98?i);_bel6v~!T zbN%FxJY`sUB|~-xtHe4F$)hgf1+htBNL93fmL29*nU)pCu(`!2oK9GI`V?A&OvmLY z7Z>&#Iv}{TF}2bNYc%W&8uGD)25J`C^b=i~-ods;)iua1(X@ztrIWi^oe%o91vTaY z44kc;O`}tFx;)0PuCd>c#YE#; zKh?745MgZhS~*7@3k!bn7&>%&*6>b3g`js=eHc}bd)<`rih^w{8|dyM!@<;~k(t-X zc%t6hSXWGQ<4c>&?hf_qtCJ2)!M<6v7jvG3OrAn7&q?k}ylY&ujpYg->OISy`rHQ@ zv@;ieX6S$TKJ)#ZFk6WtLkb%ud7cIymX%yybtRGbr5%Am98?x%5f!qv3YWO%uBg1y@(k`1m;O1r-<<&x8?OeiHMqI)Y?5YDkD{%~!Ua*RBZO z{Hi6E4i0`=O5M2?IkBGoBU&6Mp1Te&Zogu+nH!n^{p+<$0)&~jJbX`GOPhc%W7Ul( z3PKr&f)ZJCK=^iLJdcOYH<3JbUBO?k#L3z_MZW*2z@2*~@)=a@uIBQBgGvBTtbeDg zQi!2=n%l0oh{DEhjbqYaiBXf;bIK6%pu%Z%HBY$B?KvQCEQt-kv`rGA6sqyT;0#te z+5ztYf8T%)ni zJs>dc=9O1I*}DzlwSQxhXcy8Ste&`TaArRKc6-j&ayd`f+1%LWaoyeNFNN1fFXGCs zVjgX$QejP%pO=0uIplMQfvA#Z4$OPU`%c71mA_nF=N!yF%3o{$XmPg0E;Z}N=s87S-#y?k61m~YB zt;RdeK#WG~mrfuu&daI@$DA?^LbiAT*(xYQD~vyHj zf?_1S9OAs782`<4SkG>E#_ipWMw??5SY4 zZ;q7s%>sl`mnJd|pi&XuJEfiojZvAXIsXeq3xo2{4;VX}^NJD(8>L>7S%&zjVp#-n zi$+UoLhDM=E0>riexDS7FB^i)jVa;p4k#I2@%*jmoiT^u>-xcn!HJZe$U|el1*uG7 zIOG5}{?qa62%^`(%Pu3$Hl#cxY5rNG5&_ zft((lcEK}u-@x~nWY`=z+p3jVT503MO#a*}e<1dt<6~PavpS)G3d0?u7uNyew>YOzO zxt=F#HTJ?U*Y>zixMJ<*7XGT1ejKVfs2?+T-_(>P@F9^P#Rbv&EZ%&wY#8&oK9Aj? zCR>`aw|3mLVrj>^f^Aw+T5>xzPmEK9@B>?pb_$nE(S(8%4+qcdogHe7K%{ zd+TfL?J`x5J9GqDoZYd1-V{MhzFs9tmQZ=3xF|Jk1?MCrtiOe@+##L(UD9EtI#oqXg+@=d4a>ybuiX1qw_-M4CAeMf`+VhPO~%cEK_^GC{%1Q< zD;+_qw*2ZuWho5NRzV9;%Q+mxgjjFD!SpG{=*IQqkexrFmakQ!zOLrIk|)^al3c>< zCL&5-0}bsvZvr*M^W#^50WkJ?QpWhr%*wcxJmAsuah`4^ zb63RC?E4nEd|p00ANb-Tvxl2obBTTQgQa*Pf8A}>`)H7Z4}?bgokLh}p`vPgKUd|6 zGbvel*ZBc+$*kst8;cExc=n)xtJmK#hVH)l1`Ianv}@>k_q__b=4?fy4M$-mo|P1} z@ULkAu)~@G#u{!ZREQ5lZyDeukriWwS`3(X%ZjA$?LbQFq`HbJs#gq(uYr&(UOlC76~ahV$Uc?;mi$H6svO)98WGv?A%W1)-wxl z7;{sb(fZGI7JfWA_Elb%ls|lcNDly_5$5wB$pM^4dQN-3({~8vmV06Ys&!+D>fjdA zWk};#J%BqamM+;BO7AKRC$)9RXCuhpKaXi(P8Fp2NQuN3=NFvg0F(jszx)Wv1K1wqjZ)eyT z_Q#6k*LI9Zo8{~u^=|k7O_X5#_LIDfT~VI`{$ws(V*Jw{Mc_k4w