From 0a6e86e6286566ebe93b1798246c4c1c6525f68b Mon Sep 17 00:00:00 2001 From: Sky Johnson Date: Wed, 13 Nov 2024 18:53:05 -0800 Subject: [PATCH] Total refactor --- public/assets/css/basic.css | 191 ++++++++++ public/assets/css/build.sh | 28 -- public/assets/css/{src => }/buttons.css | 0 public/assets/css/dragon.css | 1 - public/assets/css/{src => }/forms.css | 0 public/assets/css/game.css | 22 +- public/assets/css/src/main.css | 442 ---------------------- public/assets/css/src/profile.css | 132 ------- public/assets/css/{src => }/utilities.css | 5 + public/assets/img/dk.png | Bin 0 -> 110642 bytes public/assets/img/ui/bg.webp | Bin 0 -> 87024 bytes public/assets/img/ui/icons/bargraph.png | Bin 0 -> 1461 bytes public/assets/img/ui/icons/beer.png | Bin 0 -> 1235 bytes public/assets/img/ui/icons/bullet_red.png | Bin 0 -> 596 bytes public/assets/img/ui/icons/stop.png | Bin 0 -> 1075 bytes public/assets/img/ui/icons/user.png | Bin 0 -> 913 bytes public/assets/scripts/WindowManager.js | 13 +- public/index.php | 391 ++++++++++++++++--- src/bootstrap.php | 19 +- src/controllers/auctions.php | 9 - src/controllers/auth.php | 155 -------- src/controllers/char.php | 172 --------- src/controllers/profile.php | 24 -- src/controllers/settings.php | 9 - src/controllers/ui.php | 7 - src/controllers/world.php | 59 --- src/helpers.php | 15 +- src/util/components.php | 9 + src/util/render.php | 17 - src/util/router.php | 10 + templates/components/debug_query_log.php | 11 - templates/components/debug_stopwatch.php | 7 - templates/components/left_nav.php | 18 - templates/components/logout_button.php | 4 - templates/components/right_nav.php | 37 -- templates/layouts/basic.php | 46 +-- templates/layouts/game.php | 29 +- templates/pages/auctions/index.php | 2 - templates/pages/auth/login.php | 6 +- templates/pages/auth/register.php | 6 +- templates/pages/home.php | 8 - templates/pages/settings/index.php | 2 - templates/pages/world/base.php | 234 ------------ 43 files changed, 618 insertions(+), 1522 deletions(-) create mode 100644 public/assets/css/basic.css delete mode 100755 public/assets/css/build.sh rename public/assets/css/{src => }/buttons.css (100%) delete mode 100644 public/assets/css/dragon.css rename public/assets/css/{src => }/forms.css (100%) delete mode 100644 public/assets/css/src/main.css delete mode 100644 public/assets/css/src/profile.css rename public/assets/css/{src => }/utilities.css (94%) create mode 100644 public/assets/img/dk.png create mode 100644 public/assets/img/ui/bg.webp create mode 100644 public/assets/img/ui/icons/bargraph.png create mode 100644 public/assets/img/ui/icons/beer.png create mode 100644 public/assets/img/ui/icons/bullet_red.png create mode 100644 public/assets/img/ui/icons/stop.png create mode 100644 public/assets/img/ui/icons/user.png delete mode 100644 src/controllers/auctions.php delete mode 100644 src/controllers/auth.php delete mode 100644 src/controllers/char.php delete mode 100644 src/controllers/profile.php delete mode 100644 src/controllers/settings.php delete mode 100644 src/controllers/ui.php delete mode 100644 src/controllers/world.php delete mode 100644 templates/components/debug_query_log.php delete mode 100644 templates/components/debug_stopwatch.php delete mode 100644 templates/components/left_nav.php delete mode 100644 templates/components/logout_button.php delete mode 100644 templates/components/right_nav.php delete mode 100644 templates/pages/auctions/index.php delete mode 100644 templates/pages/home.php delete mode 100644 templates/pages/settings/index.php delete mode 100644 templates/pages/world/base.php diff --git a/public/assets/css/basic.css b/public/assets/css/basic.css new file mode 100644 index 0000000..00df23d --- /dev/null +++ b/public/assets/css/basic.css @@ -0,0 +1,191 @@ +@import 'utilities.css'; +@import 'buttons.css'; +@import 'forms.css'; + +body { + font-family: var(--main-font); + background-color: #bcc6cf; + background-image: url('/assets/img/bg.jpg'); + background-attachment: fixed; + background-position: center top; + background-repeat: no-repeat; + width: 100vw; + min-height: 100vh; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +header#basic-header { + display: flex; + justify-content: center; + margin: 1rem 0; +} + +footer { + display: flex; + justify-content: center; + align-items: center; + margin: 1rem 0; + padding: 1rem; + text-align: center; + color: #666; + + & > p:not(:last-child) { + margin-right: 2rem; + } +} + +span.badge { + font-size: 10px; + background-color: #f7f8fa; + color: #111111; + border-radius: 0.25rem; + padding: 0.1rem 0.25rem; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; + + &.dark { + background-color: #444c55; + color: white; + } + + &.green { + background-color: #a6e3a1; + } +} + +.tooltip { + position: absolute; + background-color: black; + color: white; + border: 1px solid #666; + font-size: 14px; + padding: 0.5rem; + box-shadow: 0 0 0.5rem 0.1rem rgba(0, 0, 0, 0.2); + border-radius: 0.1rem; + text-align: center; +} + +.tooltip-trigger { + width: 100%; + height: 100%; + position: absolute; + top: 0; + left: 0; +} + +h1:has(.badge), h2:has(.badge), h3:has(.badge), h4:has(.badge), h5:has(.badge), h6:has(.badge) { + display: flex; + align-items: center; + + & > .badge { + margin-left: 0.5rem; + } +} + +.alert { + position: relative; + min-height: 1rem; + margin: 1rem 0; + background: #f8f8f9; + padding: 0.5rem 1rem; + line-height: 1.4285rem; + color: rgba(0, 0, 0, .87); + transition: opacity .1s ease, color .1s ease, background .1s ease, box-shadow .1s ease; + border-radius: .28571429rem; + box-shadow: 0 0 0 1px rgba(34, 36, 38, .22) inset, 0 0 0 0 transparent; + display: flex; + align-items: center; + justify-content: space-between; + + &.success { + background-color: #f0f9eb; + color: #2c662d; + border-color: #b3dc9d; + } + + &.danger { + background-color: #f9e9eb; + color: #9f3a38; + border-color: #e0b4b4; + } + + &.warning { + background-color: #fff8e1; + color: #573a08; + border-color: #f9e79f; + } + + &.info { + background-color: #f0f9fb; + color: #2c7fba; + border-color: #b3d7f9; + } + + &.dark { + background-color: #f0f0f0; + color: #2c2c2c; + border-color: #b3b3b3; + } + + a[alert-close] { + text-decoration: none; + cursor: pointer; + font-size: 2rem; + color: inherit; + } +} + +a { + color: #4C0515; + text-decoration: none; + transition: color 0.2s ease; + + &:hover { + color: #6C0515; + text-decoration: underline; + } +} + +body::-webkit-scrollbar { + width: 0.5rem; +} + +body::-webkit-scrollbar-track { + background: rgba(0, 0, 0, 0.1); +} + +body::-webkit-scrollbar-thumb { + background-color: #444c55; + background-image: linear-gradient(rgba(255, 255, 255, 0.15), rgba(0, 0, 0, 0.1)); + border: 1px solid; + border-color: #3D444C #2F353B #2C3137; + box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset; +} + +.char-icon { + width: 32px; + height: 32px; + background-image: url('/assets/img/world/rogues.png'); + + &.index-0 { + background-position: 0 0; + } + + &.index-1 { + background-position: -32px 0; + } + + &.index-2 { + background-position: -64px 0; + } + + &.index-3 { + background-position: -96px 0; + } + + &.index-4 { + background-position: -128px 0; + } +} diff --git a/public/assets/css/build.sh b/public/assets/css/build.sh deleted file mode 100755 index 4868e8b..0000000 --- a/public/assets/css/build.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash - -if ! command -v bun &> /dev/null -then - echo "Bun is not installed. Please install it from https://bun.sh" - exit 1 -fi - -if ! command -v entr &> /dev/null -then - echo "entr is not installed. Installing entr..." - # For Debian/Ubuntu-based systems - if [[ -x "$(command -v apt)" ]]; then - sudo apt update && sudo apt install entr -y - # For Red Hat-based systems - elif [[ -x "$(command -v yum)" ]]; then - sudo yum install entr -y - # For macOS with Homebrew - elif [[ -x "$(command -v brew)" ]]; then - brew install entr - else - echo "Package manager not supported. Please install entr manually." - exit 1 - fi -fi - -echo "Running 'find src/ | entr -s \"bunx lightningcss-cli --minify --bundle src/main.css -o dragon.css\"'..." -find src/ | entr -s 'bunx lightningcss-cli --minify --bundle src/main.css -o dragon.css' diff --git a/public/assets/css/src/buttons.css b/public/assets/css/buttons.css similarity index 100% rename from public/assets/css/src/buttons.css rename to public/assets/css/buttons.css diff --git a/public/assets/css/dragon.css b/public/assets/css/dragon.css deleted file mode 100644 index dd235f1..0000000 --- a/public/assets/css/dragon.css +++ /dev/null @@ -1 +0,0 @@ -:root{--main-font:Cambria,Cochin,Georgia,Times,"Times New Roman",serif;font-size:16px}*{box-sizing:border-box;margin:0;padding:0}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.container-960{width:960px;margin:0 auto}.ui.button{cursor:pointer;font-size:1rem;font-family:var(--main-font);color:#111;text-align:center;user-select:none;-webkit-tap-highlight-color:transparent;background:#f7f8fa linear-gradient(#fff0,#0000001a);border:none;border-radius:3px;padding:.5rem 1rem;text-decoration:none;transition:opacity .1s,background-color .1s,color .1s,background .1s;display:inline-block;box-shadow:inset 0 1px 0 1px #ffffff4d,inset 0 0 0 1px #adb2bb;&:hover{color:#000c;background-color:#e0e0e0;background-image:linear-gradient(#fff0,#0000001a);box-shadow:inset 0 1px 0 1px #ffffff4d,inset 0 0 0 1px #adb2bb}&.badge{padding:.1rem .25rem;font-size:10px}&.primary{color:#111;background-color:#f4cc67;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #aa8326;border-color:#c59f43 #aa8326 #957321;box-shadow:inset 0 1px #fff3;&:hover{background-color:#fac847;border-color:#c59f43 #aa8326 #957321}}&.secondary{color:#fff;background-color:#444c55;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #2f353b;border-color:#3d444c #2f353b #2c3137;box-shadow:inset 0 1px #fff3;&:hover{background-color:#4e5964;border-color:#32373e #24282d #212429}}&.danger{background-color:#e57373;background-image:linear-gradient(#ffffff26,#8b00001a);border:1px solid #c62828;border-color:#d32f2f #c62828 #b71c1c;box-shadow:inset 0 1px #fff3;&:hover{background-color:#d95c5c;border-color:#b71c1c #a52727 #8e1f1f}}}.form.control{appearance:none;color:#fff;background-color:#0003;border:1px solid #0000;border-radius:4px;outline:none;width:100%;padding:.5rem;font-size:1rem;display:block;box-shadow:inset 0 1px 4px #0000001a;&::placeholder{color:#ffffffb3}&:hover{background-color:#0000004d}&:focus{background-color:#00000080;border-color:#000c}&.error{background-color:#ff2b2b33;&:hover{background-color:#ff2b2b4d}&:focus{background-color:#ff2b2b4d;border-color:#ff2b2bcc}}}.form.group{margin-bottom:1rem;&>label{margin-bottom:.5rem;display:block}&>.form.control:not(:last-child){margin-bottom:.5rem}}.character-select>.radio-block{background-color:#0003;border-radius:.15rem;display:inline-block;&:not(:last-child){margin-bottom:.25rem}&>input[type=radio]{display:none}&>label{cursor:pointer;background-image:linear-gradient(#fff0,#0000);border:1px solid #0000;border-radius:.15rem;align-items:center;width:100%;padding:.5rem;transition:color,background-color,border-color,background-image .2s;display:flex;&:hover{color:#fff;background-color:#0000004d}&>.badge{margin-left:.25rem}&>span.selected{display:none}&>.char-icon{margin-right:.25rem}}&.active>label{color:#fff;background-color:#444c55;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #2f353b;border-color:#3d444c #2f353b #2c3137;box-shadow:inset 0 1px #fff3;&>span.selected{display:inline-block}}&>input[type=radio]:checked+label{color:#111;background-color:#f4cc67;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #aa8326;border-color:#c59f43 #aa8326 #957321;box-shadow:inset 0 1px #fff3}&>input[type=radio]:disabled+label{cursor:default}}.character-select:not(:has(input[type=radio]:checked))>.buttons{display:none}section.profile{& header{text-align:center;margin-bottom:2rem;& h3{color:#0000004d;text-transform:uppercase;font-size:1rem}& h4{font-size:.75rem}}&>div.grid{gap:1rem;display:flex;&>section{width:50%;&>div:not(:last-child){margin-bottom:1rem}}}& div.avatar{justify-content:center;align-items:center;display:flex;& img{max-width:250px}}& h4{text-align:center;text-transform:uppercase;color:#fff;background-image:url(/assets/img/bar.jpg);background-position:bottom;margin-bottom:.5rem;padding:.5rem;font-size:.75rem}& div.stats{&>.grid{grid-template-columns:1fr 1fr;gap:.25rem;display:grid;&>div.cell{justify-content:space-between;align-items:center;padding:.25rem .5rem;display:flex;& .label{text-transform:uppercase;margin-right:.25rem;font-size:.75rem}}}}}main#game-container{width:100vw;height:100vh}canvas#game-canvas{width:100%;height:100%}body{min-width:968px;max-width:1640px;font-family:var(--main-font);background-color:#bcc6cf;background-image:url(/assets/img/bg.jpg);background-position:top;background-repeat:no-repeat;background-attachment:fixed;margin:0 auto}header#main-header{color:#fff;background-image:url(/assets/img/header.jpg);justify-content:space-between;align-items:center;height:76px;padding:0 1rem;display:flex;& h1{margin:0;padding:0}& .right{align-items:center;display:flex;& p{margin-right:1rem}}}main{gap:2rem;width:100%;padding:1rem;display:flex;& #center{flex:1}}aside{min-width:200px;& .box{background-color:#0003;border-radius:.15rem;padding:.5rem}}aside#left nav{&>:not(:last-child){margin-bottom:.25rem}& div.stack{background-color:#0003;border-radius:.15rem;& input[type=checkbox]{display:none;&:checked~div.list{display:block}&:checked+label{color:#fff;background-color:#00000080}}& label{color:#000;cursor:pointer;border-radius:.15rem;align-items:center;padding:.5rem 1rem;text-decoration:none;transition:color,background-color .2s;display:flex;& img{height:18px;margin-right:.25rem}& span.text{width:100%;display:block}&:hover{color:#fff;background-color:#0000004d}& span.arrow{position:relative;top:5px}}& div.list{display:none;&>a{color:#000;border-radius:.15rem;width:100%;padding:.5rem 1rem .5rem 1.35rem;text-decoration:none;transition:color,background-color .2s;display:block;&:not(:last-child):before{content:"├";margin-right:.25rem;display:inline-block}&:last-child:before{content:"└";margin-right:.25rem;display:inline-block;position:relative;top:3px}&:hover{background-color:#0000004d}&.active{color:#fff;background-color:#444c55;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #2f353b;border-color:#3d444c #2f353b #2c3137;box-shadow:inset 0 1px #fff3}}}}&>a{color:#000;background-color:#0003;border-radius:.15rem;width:100%;padding:.5rem 1rem;text-decoration:none;transition:color,background-color .2s;display:block;&:has(img){align-items:center;display:flex;& img{height:18px;margin-right:.25rem}}&:hover,&.active{color:#fff}&:hover{background-color:#0000004d}&.active{color:#fff;background-color:#444c55;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #2f353b;border-color:#3d444c #2f353b #2c3137;box-shadow:inset 0 1px #fff3}}}footer{text-align:center;color:#666;justify-content:center;align-items:center;margin:1rem 0;padding:1rem;display:flex;&>p:not(:last-child){margin-right:2rem}}#character{&>.name{align-items:center;display:flex}&>div:not(:last-child){margin-bottom:.5rem}}span.badge{color:#111;background-color:#f7f8fa;border-radius:.25rem;padding:.1rem .25rem;font-size:10px;box-shadow:inset 0 0 0 1px #0000001a;&.dark{color:#fff;background-color:#444c55}&.green{background-color:#a6e3a1}}.char-meter{background-color:#000;border-radius:.1rem;min-width:100px;height:16px;position:relative;&>div{border-radius:.1rem;height:100%;overflow:hidden;&.hp{background-color:#e57373;background-image:linear-gradient(#ffffff26,#8b00001a);border:1px solid #c62828;border-color:#d32f2f #c62828 #b71c1c;box-shadow:inset 0 1px #fff3}&.mp{background-color:#5a9bd4;background-image:linear-gradient(#ffffff26,#3c64961a);border:1px solid #3a7a9c;border-color:#4a8ab0 #3a7a9c #2a6a88;box-shadow:inset 0 1px #fff3}&.tp{background-color:#f4cc67;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #aa8326;border-color:#c59f43 #aa8326 #957321;box-shadow:inset 0 1px #fff3}}}.tooltip{color:#fff;text-align:center;background-color:#000;border:1px solid #666;border-radius:.1rem;padding:.5rem;font-size:14px;box-shadow:0 0 .5rem .1rem #0003}.tooltip-trigger{width:100%;height:100%;position:absolute;top:0;left:0}.debug-query-log{color:#666;padding:1rem;font-family:monospace;font-size:14px;&:last-child{padding-top:0}}#center>section{&:not(:last-child){border-bottom:1px solid #0000001a;margin-bottom:1rem;padding-bottom:1rem}}h1:has(.badge),h2:has(.badge),h3:has(.badge),h4:has(.badge),h5:has(.badge),h6:has(.badge){align-items:center;display:flex;&>.badge{margin-left:.5rem}}.alert{color:#000000de;background:#f8f8f9;border-radius:.285714rem;justify-content:space-between;align-items:center;min-height:1rem;margin:1rem 0;padding:.5rem 1rem;line-height:1.4285rem;transition:opacity .1s,color .1s,background .1s,box-shadow .1s;display:flex;position:relative;box-shadow:inset 0 0 0 1px #22242638,0 0 #0000;&.success{color:#2c662d;background-color:#f0f9eb;border-color:#b3dc9d}&.danger{color:#9f3a38;background-color:#f9e9eb;border-color:#e0b4b4}&.warning{color:#573a08;background-color:#fff8e1;border-color:#f9e79f}&.info{color:#2c7fba;background-color:#f0f9fb;border-color:#b3d7f9}&.dark{color:#2c2c2c;background-color:#f0f0f0;border-color:#b3b3b3}& a[alert-close]{cursor:pointer;color:inherit;font-size:2rem;text-decoration:none}}a{color:#4c0515;text-decoration:none;transition:color .2s;&:hover{color:#6c0515;text-decoration:underline}}body::-webkit-scrollbar{width:.5rem}body::-webkit-scrollbar-track{background:#0000001a}body::-webkit-scrollbar-thumb{background-color:#444c55;background-image:linear-gradient(#ffffff26,#0000001a);border:1px solid #2f353b;border-color:#3d444c #2f353b #2c3137;box-shadow:inset 0 1px #fff3}#canvas-container{&>canvas{width:100%;height:440px;image-rendering:pixelated;image-rendering:crisp-edges;image-rendering:-webkit-optimize-contrast;display:block}}.char-icon{background-image:url(/assets/img/world/rogues.png);width:32px;height:32px;&.index-0{background-position:0 0}&.index-1{background-position:-32px 0}&.index-2{background-position:-64px 0}&.index-3{background-position:-96px 0}&.index-4{background-position:-128px 0}} diff --git a/public/assets/css/src/forms.css b/public/assets/css/forms.css similarity index 100% rename from public/assets/css/src/forms.css rename to public/assets/css/forms.css diff --git a/public/assets/css/game.css b/public/assets/css/game.css index f87e31f..9266295 100644 --- a/public/assets/css/game.css +++ b/public/assets/css/game.css @@ -47,11 +47,8 @@ div#game-windows { & > div.window { pointer-events: auto; background-color: #bcc6cf; - background-image: url('/assets/img/bg.jpg'); - background-attachment: fixed; - background-position: center top; - background-repeat: no-repeat; - box-shadow: 0px 0px 5px black; + background-image: url('/assets/img/ui/bg.webp'); + box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5); border-radius: 4px; position: absolute; @@ -63,13 +60,15 @@ div#game-windows { display: flex; align-items: center; justify-content: space-between; - padding: 1rem 1rem 0.5rem 1rem; + padding: 0.5rem; cursor: grab; + border-bottom: 1px solid rgba(0, 0, 0, 0.1); .title { font-weight: bold; margin-right: 1rem; user-select: none; + color: rgba(0, 0, 0, 0.5); &:empty { margin-right: 0; @@ -77,15 +76,20 @@ div#game-windows { } .close { - width: 1.5rem; - height: 1.5rem; + width: 16px; + height: 16px; user-select: none; cursor: pointer; + border-radius: 100%; + display: flex; + align-items: center; + justify-content: center; + overflow: hidden; } } .body { - padding: 0 1rem 1rem 1rem; + padding: 0.5rem; &:empty { padding: 0; diff --git a/public/assets/css/src/main.css b/public/assets/css/src/main.css deleted file mode 100644 index c943db0..0000000 --- a/public/assets/css/src/main.css +++ /dev/null @@ -1,442 +0,0 @@ -@import 'utilities.css'; -@import 'buttons.css'; -@import 'forms.css'; -@import 'profile.css'; -@import 'game.css'; - -body { - background-color: #bcc6cf; - background-image: url('/assets/img/bg.jpg'); - background-attachment: fixed; - background-position: center top; - background-repeat: no-repeat; - max-width: 1640px; - min-width: 968px; - margin: 0px auto; - font-family: var(--main-font); -} - -header#main-header { - height: 76px; - color: white; - display: flex; - align-items: center; - justify-content: space-between; - padding: 0 1rem; - background-image: url('/assets/img/header.jpg'); - - h1 { - margin: 0; - padding: 0; - } - - .right { - display: flex; - align-items: center; - - p { - margin-right: 1rem; - } - } -} - -main { - padding: 1rem; - width: 100%; - display: flex; - gap: 2rem; - - #center { - flex: 1; - } -} - -aside { - min-width: 200px; - - .box { - background-color: rgba(0, 0, 0, 0.2); - border-radius: 0.15rem; - padding: 0.5rem; - } -} - -aside#left nav { - & > *:not(:last-child) { - margin-bottom: 0.25rem; - } - - div.stack { - background-color: rgba(0, 0, 0, 0.2); - border-radius: 0.15rem; - - input[type="checkbox"] { - display: none; - - &:checked ~ div.list { - display: block; - } - - &:checked + label { - background-color: rgba(0, 0, 0, 0.5); - color: white; - } - } - - label { - display: flex; - align-items: center; - padding: 0.5rem 1rem; - border-radius: 0.15rem; - text-decoration: none; - color: black; - transition: color, background-color 0.2s ease; - cursor: pointer; - - img { - height: 18px; - margin-right: 0.25rem; - } - - span.text { - display: block; - width: 100%; - } - - &:hover { - color: white; - background-color: rgba(0, 0, 0, 0.3); - } - - span.arrow { - position: relative; - top: 5px; - } - } - - div.list { - display: none; - - & > a { - display: block; - width: 100%; - padding: 0.5rem 1rem 0.5rem 1.35rem; - border-radius: 0.15rem; - text-decoration: none; - color: black; - transition: color, background-color 0.2s ease; - - &:not(:last-child)::before { - content: '├'; - display: inline-block; - margin-right: 0.25rem; - } - - &:last-child::before { - content: '└'; - display: inline-block; - position: relative; - top: 3px; - margin-right: 0.25rem; - } - - &:hover { - background-color: rgba(0, 0, 0, 0.3); - } - - &.active { - background-color: #444c55; - color: #ffffff; - background-image: linear-gradient(rgba(255, 255, 255, 0.15), rgba(0, 0, 0, 0.1)); - border: 1px solid; - border-color: #3D444C #2F353B #2C3137; - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset; - } - } - } - } - - & > a { - display: block; - width: 100%; - padding: 0.5rem 1rem; - text-decoration: none; - color: black; - transition: color, background-color 0.2s ease; - background-color: rgba(0, 0, 0, 0.2); - border-radius: 0.15rem; - - &:has(img) { - display: flex; - align-items: center; - - img { - height: 18px; - margin-right: 0.25rem; - } - } - - &:hover, &.active { - color: white; - } - - &:hover { - background-color: rgba(0, 0, 0, 0.3); - } - - &.active { - background-color: #444c55; - color: #ffffff; - background-image: linear-gradient(rgba(255, 255, 255, 0.15), rgba(0, 0, 0, 0.1)); - border: 1px solid; - border-color: #3D444C #2F353B #2C3137; - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset; - } - } -} - -footer { - display: flex; - justify-content: center; - align-items: center; - margin: 1rem 0; - padding: 1rem; - text-align: center; - color: #666; - - & > p:not(:last-child) { - margin-right: 2rem; - } -} - -#character { - & > .name { - display: flex; - align-items: center; - } - - & > div:not(:last-child) { - margin-bottom: 0.5rem; - } -} - -span.badge { - font-size: 10px; - background-color: #f7f8fa; - color: #111111; - border-radius: 0.25rem; - padding: 0.1rem 0.25rem; - box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; - - &.dark { - background-color: #444c55; - color: white; - } - - &.green { - background-color: #a6e3a1; - } -} - -.char-meter { - background-color: black; - height: 16px; - min-width: 100px; - border-radius: 0.1rem; - position: relative; - - & > div { - height: 100%; - border-radius: 0.1rem; - overflow: hidden; - - &.hp { - background-color: #e57373; - background-image: linear-gradient(rgba(255, 255, 255, 0.15), rgba(139, 0, 0, 0.1)); - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset; - border: 1px solid; - border-color: #d32f2f #c62828 #b71c1c; - } - - &.mp { - background-color: #5a9bd4; - background-image: linear-gradient(rgba(255, 255, 255, 0.15), rgba(60, 100, 150, 0.1)); - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset; - border: 1px solid; - border-color: #4a8ab0 #3a7a9c #2a6a88; - } - - &.tp { - background-color: #f4cc67; - background-image: linear-gradient(rgba(255, 255, 255, 0.15), rgba(0, 0, 0, 0.1)); - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset; - border: 1px solid; - border-color: #C59F43 #AA8326 #957321; - } - } -} - -.tooltip { - position: absolute; - background-color: black; - color: white; - border: 1px solid #666; - font-size: 14px; - padding: 0.5rem; - box-shadow: 0 0 0.5rem 0.1rem rgba(0, 0, 0, 0.2); - border-radius: 0.1rem; - text-align: center; -} - -.tooltip-trigger { - width: 100%; - height: 100%; - position: absolute; - top: 0; - left: 0; -} - -.debug-query-log { - padding: 1rem; - font-size: 14px; - color: #666; - font-family: monospace; - - &:last-child { - padding-top: 0; - } -} - -#center > section { - &:not(:last-child) { - padding-bottom: 1rem; - border-bottom: 1px solid rgba(0, 0, 0, 0.1); - margin-bottom: 1rem; - } -} - -h1:has(.badge), h2:has(.badge), h3:has(.badge), h4:has(.badge), h5:has(.badge), h6:has(.badge) { - display: flex; - align-items: center; - - & > .badge { - margin-left: 0.5rem; - } -} - -.alert { - position: relative; - min-height: 1rem; - margin: 1rem 0; - background: #f8f8f9; - padding: 0.5rem 1rem; - line-height: 1.4285rem; - color: rgba(0, 0, 0, .87); - transition: opacity .1s ease, color .1s ease, background .1s ease, box-shadow .1s ease; - border-radius: .28571429rem; - box-shadow: 0 0 0 1px rgba(34, 36, 38, .22) inset, 0 0 0 0 transparent; - display: flex; - align-items: center; - justify-content: space-between; - - &.success { - background-color: #f0f9eb; - color: #2c662d; - border-color: #b3dc9d; - } - - &.danger { - background-color: #f9e9eb; - color: #9f3a38; - border-color: #e0b4b4; - } - - &.warning { - background-color: #fff8e1; - color: #573a08; - border-color: #f9e79f; - } - - &.info { - background-color: #f0f9fb; - color: #2c7fba; - border-color: #b3d7f9; - } - - &.dark { - background-color: #f0f0f0; - color: #2c2c2c; - border-color: #b3b3b3; - } - - a[alert-close] { - text-decoration: none; - cursor: pointer; - font-size: 2rem; - color: inherit; - } -} - -a { - color: #4C0515; - text-decoration: none; - transition: color 0.2s ease; - - &:hover { - color: #6C0515; - text-decoration: underline; - } -} - -body::-webkit-scrollbar { - width: 0.5rem; -} - -body::-webkit-scrollbar-track { - background: rgba(0, 0, 0, 0.1); -} - -body::-webkit-scrollbar-thumb { - background-color: #444c55; - background-image: linear-gradient(rgba(255, 255, 255, 0.15), rgba(0, 0, 0, 0.1)); - border: 1px solid; - border-color: #3D444C #2F353B #2C3137; - box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.2) inset; -} - -#canvas-container { - & > canvas { - display: block; - width: 100%; - height: 440px; - image-rendering: pixelated; - image-rendering: crisp-edges; - image-rendering: -webkit-optimize-contrast; - } -} - -.char-icon { - width: 32px; - height: 32px; - background-image: url('/assets/img/world/rogues.png'); - - &.index-0 { - background-position: 0 0; - } - - &.index-1 { - background-position: -32px 0; - } - - &.index-2 { - background-position: -64px 0; - } - - &.index-3 { - background-position: -96px 0; - } - - &.index-4 { - background-position: -128px 0; - } -} diff --git a/public/assets/css/src/profile.css b/public/assets/css/src/profile.css deleted file mode 100644 index b8680e4..0000000 --- a/public/assets/css/src/profile.css +++ /dev/null @@ -1,132 +0,0 @@ -section.profile { - header { - text-align: center; - margin-bottom: 3rem; - - h3 { - font-size: 1rem; - } - - h5 { - color: rgba(0, 0, 0, 0.5); - font-size: 0.75rem; - } - } - - & > div.grid { - display: flex; - gap: 1rem; - - & > section { - width: 50%; - - & > div:not(:last-child) { - margin-bottom: 2rem; - } - } - } - - div.avatar { - display: flex; - align-items: center; - justify-content: center; - padding-bottom: 1rem; - - img { - height: 185px; - width: 185px; - } - - .border { - width: 250px; - height: 250px; - position: absolute; - } - } - - h4 { - text-align: center; - text-transform: uppercase; - color: white; - font-size: 0.75rem; - margin-bottom: 0.5rem; - background-image: url('/assets/img/bar.jpg'); - background-position: bottom center; - padding: 0.5rem; - } - - div.stats { - & > .grid { - display: grid; - grid-template-columns: 1fr 1fr; - gap: 0.25rem; - - & > div.cell { - padding: 0.25rem 0.5rem; - display: flex; - align-items: center; - justify-content: space-between; - - .label { - font-size: 0.75rem; - text-transform: uppercase; - margin-right: 0.25rem; - } - } - } - } - - #equipped-gear { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - gap: 0.5rem; - - div.item { - display: flex; - justify-content: center; - align-items: center; - - &.i-1x1 { - width: 30px; - height: 30px; - background-image: url('/assets/img/ui/1x1.png'); - } - - &.i-2x2 { - width: 60px; - height: 60px; - background-image: url('/assets/img/ui/2x2.png'); - } - - &.i-2x3 { - width: 60px; - height: 90px; - background-image: url('/assets/img/ui/2x3.png'); - } - } - - & > div { - display: flex; - gap: 0.5rem; - - & > div { - display: flex; - align-items: center; - justify-content: center; - width: 60px; - - &.top, &.bot { - width: 60px; - height: 60px; - } - - &.mid { - width: 60px; - height: 90px; - } - } - } - } -} diff --git a/public/assets/css/src/utilities.css b/public/assets/css/utilities.css similarity index 94% rename from public/assets/css/src/utilities.css rename to public/assets/css/utilities.css index 653019f..9351d82 100644 --- a/public/assets/css/src/utilities.css +++ b/public/assets/css/utilities.css @@ -39,3 +39,8 @@ width: 960px; margin: 0 auto; } + +.container-480 { + width: 480px; + margin: 0 auto; +} diff --git a/public/assets/img/dk.png b/public/assets/img/dk.png new file mode 100644 index 0000000000000000000000000000000000000000..9d310eb9cd09734e04d90b371de6789d019ae2ca GIT binary patch literal 110642 zcmYg$WmsHGvo#D3A$V|ix8Uv;T!KS_yL)hgySoJ)U~t#q!GpW&z~HVQ=iK{#_pN9D z*wTBZySi)Dsg{hT4k z2^5s)a>`V@jXE@5=*5Oya-RQd9f0LXX#a(2m3FOS7I023e11m5Ud?dU`UQ zjs|wyW+fb)ixMMUI@ehUpZnqg`%xlDrKrNf;3PD(qzk`*Def$jCT|F@eRN+s^VKV{Bun{^-r@0ZK0}M`M-jwSi+1}}k@k1DBRR_I zxIjUny!##n3mPgj8xIN^K^8r32=yCq|EFJ%o+1nc+(_BL9?$n&!|zk(?~X$Jzc2aP9#DEA7F! z92PSFZeEfGxm+UE`(fZ-Ye4expYv%mq&lQWv!0aq)5SRwz|r524V~-K>p4Ed|1^{{ zsp%BZgTBcHt~UPDB%K;9@LKk4s-(*6G4w%QK&%PZ61C~Q9mlLZK`_Kv&-c&CF8oom za=Kj*#QPdn?LUte%Ux9`Ro5!5JOjbL`2aBFNl2jX{U1IwCQAFv?__#1Tk6DjKV?2J z>iuqV9@2V$FH~2~&n!ce zfX4R!Jc`N}p~>f`-S~*9Zak6rHRA{JY!7VNTGjgq5(~7ZEvq%3cpk8WOpGTYhc+v4 z%R$gs)q0HY!=E$IW_;MKgld$+)NR|pijd+K{&KU z4!Hf;Wz9eUKo(y2{dIh6Y9XfI(vK;(8?h}j&KR}=vDz1K^;tcCmCC9Fza?My43Ll5 zC@K6iY7qF$S{54!>=Nf_4Jcze&c=#4qKM2#3+yEl|J8qXw0khCm8hJ;AQ zwOcPKNP0YoLG03&CTwy$ahLrD+i+|hun0UMPkxi=^z!ocvcvY4*!$kibe17wRaK4u z?|2G0o;+fwF(-5}hZ;0QVa9ZvgO3n;CXclmHHoM2ZOtqpH^I*S_rAXDWIZ2Ib6W3P zoJCmnL-qgl)bAij;`3Jp^d4AVfcfXuzy+fczspbKq)!t;wl#Be$kluCIwvUyAGFmy zb76uG1Gruq_a1UrT7nt>SrGgoP--#_E}KsI@Ej`8Z&T+qG7cMs5763GXZG_rqW7U1 zU#UA%VJ!RwpCQh}#F*Bj(2c9CaP#8TJGrNY2Vaw@|5*cJn8dCqn^t5l%5Y3pEfd$w zn?q|k%WiI67;|Q*H9yY@V7#A@$x_}X%ncs+Qv2-qvTuE0+zr}aTafCq9?VzEq4-6} zlKz>SwYbA!NYEy13raQ&^EoW@LO73-Y?ON2-h@tkUp1M{Ds)pvJAcjereW*hw3;We(aUdIYAy!SApNY1+G z0-=^+`e(}}j(*GB!KLC4WZbTB2eMbSqAEEWd|J~fHcY+4!YrRn$8I@+KQRJ2F&vDJs|=7eJG*2Z&FN^k3&@xP`- zlcNNYAx_UC2i2V3JHf?6N%Zi_^x$VAUErK=#*i`Mi+$o=?Psu1Htf{70h7MGDBPB@ z7acgZ#4Y3hRzhx<7{<&pv4Pdufif|}7KiVrp3=T?i^{1C1pM@W#-GMC#%r!hw2VbpzjMX97TR)B>>XZ8XouA^3^1U}fpBsb7DsQlN z39N&~p#xV`TD>Fp1Ge0P+Q!*meH(`n>uUbc%zGRi9f3pNe1$`=0ZOqdv_6gUwmvB$goT6n?&$ABpj%>p(&UHJ7jcx>dD2lF%ie42J3|J%x)>W$FjQ(LzmbxzUD zk!#{a{Z&W@86IXY-3L~qXu4m#u^e=VWeOHk#Wt=ge=$_B-RSQT`RP>qc_s)*H+|;m z$oj&ODFEb?N^RYz)xgtEAE3U^+_FvenT9524+-yEqkEpuq|jZq%UKoZ?De>Na(xgU zu45OUN(0>n0W;mS^30YAS{gAYKurD+X}JQO!R)KibvAWAS|!6Z+%2Pifb%a5%S}@h zw9h6s-@e~9Iy#_`I&5OW+%Ni`Z{>w4@5Xsc|6??b`1ttB>AbE}3@UADCnL8{bWfIE z+%Lyx-;Q(GjWs5|W?e{LNX~b&02?MS=tf(NByLQ1H_3VZaj~Wu5VWEjZa0|%Zr69roo;8JLRaVn^J!Ht1vCj!Sa0pzzk*FhSW2Abev|s!wjurHY zo7Ui2Basis*gnTjA({W z!f@8M&}?BnsZJYnn)m!G)de1u&gY2Ee++r+LiHPhNLaqT(bPmZ1NL?ngH$NJ_~~<| z!3M!%b^v*#&&F;+h2f3w^xzs?F*n0!*60$+9Ga`{s+Sd(-ss--Wikw4!~jJwh%I35 zTi_nMjNwG3jnfm}K-Y-OoL_i9WaWd6%-}wWjcvy2n86UHxfFEf%lf>VwdI#CUN8UN z^Z)N|3S4H_AQga6z99fV%U*1)H?YLSq0~YoWxc?I>6kVlm@0xkAYvV6 z=-Q^-;xxaFv7~*^q#kUY=Cxi8oKMM%{wM*7H1e}g zXCoRhnIBX*XD|?+uZL|~7{NF^Ald>@=LKbiCx-vAB5q2`omx>ux&n~OBfyMQG7wON zHZ9s6@Ddyw)zI;ra~>#bS^wlTXhL2Wh2SWkG~eR;sd8P~=|+sVDUfIddciic;+&p8 z76v9cVU+$CRAAA(k|J?Ic%wrVNk2{XeIu|>bhkf2Pe7@Y*rnMitLF%I%5;LMxWNfU z#t<4=Msf~gB7Slhyyn+}8@XUr%N`9zc114aE}1J=xAf^50O}V;_MZ8npZei+VBuxD zrSH8lyoV+}e#Wf1sj1+%ZB@!qp?q*)B^0x)g^bM<^P=*oAy@&>N>?YJb#WhIyX?y= zXFMKD;bULaatlSY!q-IIa-ZCa<`39AQ+-6tqGL>tJTeFvXH(M-8@7Pzq=#IRKfenXn!WyELvlW`7Lv-@M%0kh>*+cU4}Pn@y5Y0`sSmB)}(Jcz4)tyA(R zv0(S8WiF&L2I8Qy1f9T&h8@InvelQB^Q*HEe<*lv2#qO?n&_2>%zt4_ctCQ^Y;|&P z;w<10s%@|`*mt@%RDWAmTEm7KYh_Y*xL4BM2~*EY0By+&VLAsnk?xs5K_dpDVViQ^8l{z$e6>9 z77!dj;LlGzw*vhLv2_vanJvsaq@`v&d#?WDuXN>?MS+@`7AzbhBFoa;uGo=Vv3OH~U;T+)qf%s3-c ze#^b~az2DVZGE9uw?eY=MD)8#Y5Y3Wh0HmCrOmh|74xi!=w(c41z#4VTY3LLsK1dy zxbYY#f1cbENsLSRim4xtqcFYmczFdSf{XN)p!mnlZeGQH>f_OoFTxGP zttx=rNa;$jFq(<;%{Ge^b2a1Q3VFoQMyvgGfWGgi%`dG|`>gm>8HuU#!M$2H>sphT zppeEkSZN(zHP)?V8=m=MIvEvVsOl$nPsWbi7F!StG|<>wLHAKGW_!XVe#Pec5Gnb|3cpa+ zwcD);_5(mQSyU9o;|J2#XL;gb6Ac@m*fK3Br%r1;ES{kR!YomH!mnp@l zn}OkV0lG6mG_OZw@4ZhWNV-bD?kBbP@Edf-@GD|l+{Aus$Y|&#J8RLIr+sZYctQix ze~ad(8^D}k9_wf41L#mEI*K%(zoBjnX4$Odi&ZuGm~aQsLzq=&Z{=+@O0R)yJm}B* zX6v?r^?RbTP0#duZCfik9jNJqzJhKhD5bh4dMYsr zLtmI^Py?-~2uR1xPVnJ`GF$ut7K6vi4foR%qwhIYGwGc1s=MrvNllxm{lL=j2!F|m z(?S1DliQdtVY0E?-$a=}G7t63il$;|zk$8qIL8vD4Y&H6&dE=kxLw5SP}%OL-0(rx zFV~zI|K(*c@8Kn%wvWp100Q`6>k|>%mu&GuJTBsOnG_vu<4Ii+_R5$=3O~%+ zZt*!IMr)9(PBkHC@j#WNJ$3uRC!sw#Ha3-7UDH7eWh5X@WGRmEL z6ng4Yy17B*5qY?qe&oXx6_mdlv%|r4C`+i}oZq`AMjTA{dV|jc)zT=AWu3gP*zgwk99^0w)Ikuu-1x0;H)3WH)ATc-9aD=9+ z*oJRr4cA!T#{_2AL^bUo)|X(NdixZZEH|uoh$!pFNHGr%(H^&o*TG zf;E&8{NNA8iE>#)N|gDw>n$d9mlzo8%sU0>SbaGLP$tB4i(Tm`b+Lmo7yGbvEmDZ1 zOqrxfNu-*;m5$6C;^#2@2J3r6Byg@eG9w5}zufmLTz7vAsY3!y!S=3rPao~ieosXt zRtk??9w(Z*pao86L%!6JrMPG@4XlZ^J~o8lQ2bQOHh@`% zT=Y2f`=|ypa5ds^mbS-=^RdS<4o{B10f}R#uV8JrFEo%M;)2tfS3C=?2 zo0N96?Z?dy+|viUdq!iF`eceM&86sn?2Gk#8h;%? zVpgf7w1C8a3eCR-GDxU2`sTZVa*th^)a{|_glf6)!nDOfYf^m##Bk09b6BZt?tI3x zr8#3-Gt*2Aby)2`FNf9X4IQDp#Kgi>XXy(VI{B^4G|--)BCz?a_v+Y7=MyFiDBX(H zzuA0U0K{M{Q^YS|kR>?MIM=#=8+VwTiz2LWrV`qZ9cW|>7`)jCv78LauKQjRXbNLl z=pQjuHF0~gg)A|fbYexdi)n`60`CdC{>b1-?6}M%%@Yf@O5 zmHvyB&s-+X69ft<31)$9UkaR-aF7a?=4$;_n+jql3N#g^$*XRxtE=CUVC+Px`$}z7KaI7VUpXI0 zc88(#i@S^1<8&1EW?mxOO>}ZxVom?orLLDIeQbsmYXp}19}aRd?PypL>L&B}Ky8=0>uDwaAK@DV!YF8p)SNzijSRXsa# zTzQ=q|8aLb*eXp;(1BL4yzpB_>;y)!Vf>s4$8@@Xqw{Vx2bP5)ebuTv@%%FK=0RXe zR~!djQL#t&jpQnpsWOyAH>?yM&nNpX#SSeILkc(*e9~kih2tkDv%OP~2sHCzmiyFv zIz_S_xb++DR_sM+|9hpD1G{qz!-ANKa6OpnF5^U5?Ob+tsYuxM9OLjiu41tHA%rRr{f_nAa`~-$R zlaG`l&$z%!ji>0T!a{?fVEtagw%p=+D2tHnvM32G{y&d&lEz%wBm z$Q_%ndB&NY>VPJY<*tQ`3IYxIlKWk@d%4YVKN9omIhB zVG^4Q+uN(H5?e!9f@XqFdc-LX%0WQ~TJsFdJz3VO>qsp9B)UBk>?8VfY(uICTJoF> zMs7E40#pJ70va_ue;XMDEE{CQ23fP!l{75=Smo65KRTYJ)ZSB$8c?vS|PrTV-A)RG2!kLUVWI#Z?`%MtTU@8CnJY zl`LayLT1|#S2d!Mw#nAqG?mzQ@x~eK|F(ARcZPW_QpsUDAoVW3Tth;rWe_`$tI`&b zjxED}qqaJM?GQH8F}2SAm|-9;f2^m@QitrTk;_u}#y-kw$LO(|&s%tnAy23wy|1^2KFHJ`R-G!tEk8gvq{UfVhWnSLgjt z7Cs$%#}5mlCiUBo>V|F;-Y`C5V-CqPc)w~OgGZmuNfH*l)mCIcyjiKa#QLSb;)pH< zdvjzAzqa4EEy1ltKc#mjuj3ksUpQM@;!hVEt1K+lrQmfaIBZBEoUXFJoy(Ya8IjXa zDwQ_;evB(Gk}qumM5}1oiX<*!s^l%qPY%VMt)&Kk7yMx3vXdQg`kVYv<0m<$M@2;k z;8fP?c!D0ribR`GPG134HeQ3#g|7?O@3HY5OOC@v{m5R47IRY<=I!Eav{mqE&%R{5jZ~(6jZ+)yB>ZeR6foC5iFwoI!RHl z#nPGn2#TW1?T#g}!B;74DA<{HBLiKD4M*wf480THgw3|cf~<5}|D4H#U2W{sUkk>L zCLV?_4cOd$q6|9-U3F@mBS-tI3b0Lp!}iuZ_XjH^Qg?9zO7X}-ipoCbV3F$JQGddD z*04ARhippNv4+Ij}M+R<-oC$avDZdc8J z-%gJc&K5@x7cnJLRlVnXNH`TlCsR@=9Sw$)2o{{?m40h}UGOl`u&+~9I}J+Yiv%_L z32aFiVI)y!wLZ+AK7uz5SJArRv2)P{0M+K@9qI%i2Ws?F3Wiz`wleso)-f(~laeUT z!~KihvqB(RuMKfQPOBgH|3**cKhjb5AC?N$HAed)564O8=33pdr0ottb8cke0yB<8 zj@|5lnVh@aceBfnS6{3nM;eF?-H7{NOodA4duK{D=Y?J5)_VQhC#X4*^ye<4s zchmX(n|ccpP}d_^ARsKDJ7k~$_~vKJij!clc!iUY0Q@Mmn-zedaWmIrziCHt2_u?x z=J}s$+k$)gZ$!nrK0vJP&^-B-!|}D?CH}mg+S{jY&3jo0yV-DxYbw*02S8sSSXEih zBovuD#sJa(Y9d#a6=Uj-s`JDEPRow#u#89*M$NsZpYr6{lD!?9MJ-%GU*IkoUXmUs z=B3c%pVM$8<*6UM!LpfK20ZoI&M^NYOvYKW$);+hTnQiyS z4$PM75X&qlhKH5yr_SJlo07(mnIHbxGoq7?Pb}#Jxe5Eg+15?##~^@04_BY8;i_V)Uyy zouLA7JgC&6>DukO>qI=V`e>#`S|LzrNgfhJjT*cuT!VQKtoxI$N0H(V*l2PXenr*- zyf0Irm{u>Zq89>Y&RUGayP;-tD5%@*#`uoW`@2v)3~1P$GA zHK+wyM~Qup)v>|C(PFm=_GV1j4YQbO;~M))_5;uFxpc}X!ppK*)shQqnNvC^2mKEZ z%w#_q#Uy-gF%T_cn1r$-1<2CQE!l4({XH#E){_-8Axh&$A>eBn_$&r8+UNCUWHC=< z-EA#QayM%5wi_DGunNff8J7(4o~UP)MdUA@ z*Iaq7@l<|=bDj3;Y6bAi_mK1cMGlxevW7v8A>Mk7Y}F@}fqw#_vbU(I*gnPPHKIK9~D>#f|IXvw>( ze!Pow++dMvAwBgIdgNRrSjH|G$B3Pz6Zau@M013O1~T-JP^PJ4B}7PZeImo0rdn#e zVk6=ZKc2h@-<{uKJI4jK@ih?~KDfUMW-Y9~(tbLyg?)T*kFI07Sg<;1=ZMAuZ~K0Z zy2_14ngRmpXMQF)&~Q`t=JrH|(+)~!w;F1)!kt3BuI60X^lZTJL=Gn|wo+UQZ#HB- z`EA;63f(?4Xxc&Vedv9Be3a@L3LJm#7NAV}hdL<#@z$*e6OG*DP>0=t@XB%W!}u8Z zAM6+pYXUy~F|HqUqItpPG3tSGba<7vg`?vvP^_r8`nn@*E|AeeaA)X^_|S_Qn(W#j zy5Tm(H&-8J^sMA--~k=p53gQP(bsCN1rO(L`t)~AE0|$v@#lvZqA{ul9HLd;pqt~t zV?i<0V|SSgPZd2>5GiHkd|X_Oev1p2SlMV9I$@-!ZiT3Anr-D^#o)Kf-gaIDxM#Lr zxt0TjzdZePLm5-K7oOPnJUs+8_QlONpyPQ-Q`&P|P2%w370pHf_@Xv9yb`*ZUz{Im zy$YBHBOv$?6S6o=kuaym%T? z4LY5Q5-lv0?jIb>V`MCZIPq3^%E3jQv~zFT*aN$ZD1rV5*q47>)+^>V;GRi0&7?tjXbrH7 zaY&Qc2{0z@dYS_okKVRP!i<|wnm2t03%+ULU-nP`bbsBWb@77Y&FBXFPhgP6G%y}B zUxNgFWTG}>o5=rI9#6!RQNxKJ!!-fGLfDfX#vU+c#?V~hh;SS@+jaa3Tg(ZC7Dz5! zBuPsLMoJIk$DdDX!-@m%E8B*ov^RjUM31gQ!bwT6n$3f1pW1zY80yGGawV$23)J?z z$%=8Rj)C^)AsQE^y1ptE=(gpN&?&2p+m9NI0v;~}3-j=9^CpP06ts3o=;{PN-R+{| zPY@k;2AL%UR%=}_LeFo%{;Ea|aZewXP;mDb{B`bO&iTz0B1OSr^<)7XKD-bExzfCe zDS5UB_->B(REa7}dINRio{r>Cl5$f30uM8Z9O)4_}%mT4i2+K$-*RMtgt} zte>ppDYU!p%V^Mcmyzb%VvK6*vs>GG}dPG{Rv z*A*dA;|dI2UZk3w;|tD1qo!_a9Spe1>?Srf6f-RgtVtS(^$(%F0)a9^SG-)G0BHFz zZ`=jZ!daPhx1q2E$;X}CRrrBghoR4vLIdR)%(+kmz1jR0cG=bH{DdAI(EVlG!;K03 zZZ@v4 z*P|qsXaTyR1k<|-{!Iq=W5HuO%6fKWJ7lV;uCZdtEWr3Uyj`~(jO_U!c%hH~_}5IM znaI#OIuVY0MoGEs{v?Fza#Gr@$)V|UZFTXR8LsM&ah>Qz2~KLAV7eRr?TBMR=`rfW zdQrLvpc$2VAii6Xfg@K3;T? zn<_SiFz&q|n`leCxd?Nw(80Wd1ly>AU?0WZO*9 zQrTt)T+OQt-<6A_CXDVynh8pKA58oMk`-^;g|Ae*uU&&at%X3N46?}!{=~`NIJ>)^ z4LyHFBRUEXfWoI)rU?T5|}nhdR)*unf}>dPD_2|Z`q;d2ry_2$uCC_(uEM12Vy z|1&vR$sV6RP6A~RoJ@(aC~4>*&ea}d$i9-B}R2lUuUIZ1bzXB@H@w&r$z z!qnIna}+v7;A%%jzKg_I_UPq##rQ$S*pTO~@3H2FAhpX)TD8#Bte!#wb?VYz4W;X{ zCG>%acwqysLsHUDU9%h66Z4#56I0VSA^f=wxDLN+fGuTq zY?u$6xrs{e)lA(($BTLLqCB^!gqg&<^O{=Kq<#4+N=Mml)#La6x?(pveRYmBVzt8+aiInq8*>`h#qvvham$xdxQZo1|jk!h~b*ZFm#I1?YXIAFVeb*%+3V&^iE=?n8xEgao(Z!2v( z6(rVYX9vibMwg{;yZsJht#1ULnQe)%CL63G#1j4S2C^kS(vYFBv0b0&k44q@2^xt! z{u=D8$4fy7pl!!cCgS7Qzv|vM;f%_6L{Dl3I2hhP4(3bYJLR*A<|8Y}DP$_&k1`9_2YDI}JGUpYD@T45KVEnM4lpFAZKqF6Qv^MFcCl42Dp=}* zIq5CaFx`1Z^ql{YUS0|PILdM%aknSxrzTM%LNX@PFAqXZjzDI-^e3lHoSU3$k%K~F zN-8#twBy}+YsD(sIkI=z5FegJu#& zp?I46{acnBuZnbguP6l(dNY@Li5*s5NOWGj5J^MxyeS`TdaOwCz`ZD}Kjd{%Z#G^b z8?Vb0A-9PNEM6Svew&ivj@~SeHnNJ}8FGYe6Vxbcm*(8oLKWn`g94l__1{(!(3L&} zV=WOz?V_B&^Cv#d7k3Ok_-6}EyY0s|QOPPLs4i*EC#WV;x!!KgIg#2QH7>t)rOT|< z_H0(%!@@hLXZ@{oF-+YE>zV}EtEqWTTd}T8DQ#tL>~YU2izqRMt|+#Ne%U}8zR+2e z`~C3!-tn0tBN`(ewl!+nAv!|9OHMd_hE-&A_#=doRk7l5lf&fd0#jR<4zH z(A^K*_5*(?YLYBA!P!M=9i|-~zuCV%{DeTScHEc6;I>V6%HKo(^?6Y#((Bu`cc-eR zW?vms={kBU&%@~nQqsRWuxLpWBg@*wYMr&nn~hpLU}F^e@t0yGwT$VuuzRhpdC3yW z3`D&S_6T9R(8#fS@QY4uMe|^hLqZpg(ZyK z4R|!>a(Y78Udw@gERNPcUdb^Yv^0JH+&>$7vfohc<4|1El(rc{Kc|LgW6d!^F;XI( zBdZq!H9f^}HU}s!2Y|X!vRe~3FEoGDfSupsC>sK8Y2`p)`}X0$OQ+dV01BN9ja4;k ztBwimZ`V{bW2|z9Y72ZeFBS~bj*kR0cN7!Uu~^lVeuk6}nXMph%&makj^`_uQRm#1 zi;iRor?o29Bu!TwT~U>+w`PfKPhN!PO=yUb9+zGHH$8H!P{ur)$7&`+7KY{E zD5((kjAD>Y9)NM87RryN+t2*pEf;d)6hQku{WynCV`T}npWHRU3~Z%-hks9!kxR#3 z7BAv2;lUCIH`jG8^Lpo2L7@`|*t~PtKLYm21N^O;hxP1R_r7n+Xu4@iKBK&8WL&D^ zRgE`Hl#2`BtwSg-e>SgsAKz7geM0-T5Y}H#J>JGGKQpj&KVMc1`rZw>anzPrjrcy@ z`o19lIGrQ)56D8G1euAVnQaa)sX0QEv?84R z)miCt)KBn<;KUR|O$B=Q7i@fvF|fdOS_guQQK1~Als*M}#A$AQGO#RU!08kDtZH%0 z!J`HCux$SiYUadajs7*+x@|A5lJL+xmrOF+`CXPv9jg`hd4j(>r-M#DB+%J+4_`pF zT;h3c3+2NjR~;YJ7`%fjX-<6$#|uqhnZATlQn16Dw^<2n9}8*Ggv>9Gf55!$+Xp^x zJriX98=zQWEox0DlCJ6C+o(GS=-(Ul;air$*n35wnHWcaFBRgq8|LfN4qKC5)7JA( ztd4D1p}@FncZcleYNiDs(7Oe6jD;mtzHn^kcm0dh*VDx%Da*diYNiB zQfl*^Xe*me+Zt(~_$WGZZoJ3u4s&xse%yH|t95_)JWn#DxR@H${rbq$XeXfh+tB=l zgPzv?yg;V)g;aRZEV?BKBZl^;eckuHR9a=f9ANueCwe?x8{>jl0ySM%jt-%03QZv* zim2lrbMKI4dbsxP%HtzL11pq1J^7Qy)(FMEdyH6R$5Wlae0^O5MAh*vrJrA$%O>bM zvF0%aFRKPQM2#?j`7i$LVu!PIOF-UthJXY5?;fQ$9!0l zQ5fr7<{NN=y4Dv8Wq=Lt9qID9|EcaYCnNGPgy#{ov*t9OO2ijU+LSQou@(1aC)^e5 zQLDqjU4!-~0jlI*`U>0@!#+@ULrlLiXAV3?83ZYQAWN2<;g2dg=7ozWCm$ z0hWFT^gQ}{cUSOTWwm}knYYE?V?C8MPG>h zYma7jtku*wq2pJ%Y%S-S>bQAQOUSZ(CRI^2vrydZ)%C6gMx!0cpC2cAwbzR)z*TlK zE&lk~A8>1%Pj?VXwX5h!8XQH>(`=d@nLFKjyhgs89jVp0yg=Wrq*TTy)Xt+9`aY1dA)KJ98xRZ%pT!hztJ+VvkCK*)kFMibk@k?GJap*@q_b zoV0-R!YatSY}&cNhtKq0)%Wg;dNzEmqDc;pP?Tj3waD_m{)W*?Rr`rPm-ILh6k_Gk z>Y9lVmca^jfmTObho!eh;JB1Nw*IgwA^4NrH~G`pNdoNGbq2|2I|)%5eSFQ)7I&3Y3@l3nt5)FY?QTaPD`Uqu0`4&%VXY~uyB zpQ}9E*bYwfZEAu1ud1kbZg><*Job9O6dI0yeKhsNUlhF`h(R5xqiP|Zd}i{-#PoM$ zAEUOYHPAq;%HGpWSEInCVYycQ~UGeu^=YN@vraMm%OsYA2J~&d0qSYN)wt9 zFL+nE7Zi8YseZzKV;RTolo#-7R$hB|%9(+Qx#aZZo`PJZ}l$LX?e>9V_d2$?EgXh7)U zgj0+aarMSQ1?q!o1s)qi{6TN2=|`J*_A(v)s1I5Pl~={>%3vfficO6VqFqrz9w!^4 zWuQ)LHU&tw!u}@@h3FNlNmvQXG^%Qpgvy}^PkU=&zvtOo+r(_8q(m~YKf*gve%W^& zn;L&^KPIfQfWPO0{k1?#$ugpuUl8C}C?L8-IQA5Y$aa-+cYoqZT)Lv1zc{C|B%Vgg=2O^Ui!D<$km`RU6F)l2zl%lUm8TT5>Pu}h|KV=h{;v5AD0 zSal$L{bKi7(-Csdc;b1@!Y91$2MT}2XB)2Wyi(oQi%)RcHzE3c-P`GN=XbW4D?}3~ z6V|tt7lSGqOT<^VQ&~UZ{cyinWzzob$8(#L*Eqv!xWI%YCMGiu!eg7I4IHeY2F{LZ$_UcHAtI|3RRCR^WNJ&5@fm%@h2O6ayE z;%1*!n}dBkn4Uz?{RFyPC*+?tnO`w<`+cVuhD4hF?$Pn3($)xL{-UkZavmQ#J(!5w zn5@Th4EdyNN+9ED&6?V7hic_v-Mq0uBVwI$F30*K2S0Xf@LCkS7H801>l?kP2TQ1< z(|%#&p>))-uE3bK+9K7GJ3qGr5|UO=bu=Va!;l-!s4!2#2W>FK&v0PO{=w3EvmJ<8 zd9YEEj9ZU7@5&K)s8}P!mclTq`H?|pt_5GzL4+y$;vZea^Vh#F`)Jy7fm>PiOKgr7 ziHT7Z7J_lY)BZ8#Ct}u#8Ihf#m4gnq#VCdbD~^=cFJl_Fn6mBZrIZ&eVDnB0(ah

sdhH>CrHg77v?E05hY3a6(vYnxOWRY?&WLTU!uc4NEHr(JNeN>SsX!Zw_hKfqt&hB=M=t+3^&RN}ADYmZ-3J}aVs#Hg z#}s0|I@;KC2x5qOc6p8hndvsp(7o(Cyy9Z7^0yoTQ&@tWsgm765cAww?m)Vh>+9u`7E(wsCO;Irh1iIOwqw40H^{~?@bFN z*m~VFd$l|xK~9)`%bHa%rrnFN^;xh`l`AJX;`YzMX`Y+wgJJ^J#=)4yJFu>t z0e-(>?u_YMV;=A^YR|7`S3=h#-U{MEbVly=d8}8IfaRerexGmocui2o~uvLOK!z*t#-suyr`5m@nZ~7N#tc9I0Fy`CP z&S3;}+8OC@C(7Xp&_+DM-foStO=EO7RH^JyC2mGSDQqWl8ArMD1Q(uyw0>cN>y7PyV>qQI3Nr;1#v^~ns4bkXFlY90VHU`;n7>Wc z+;hspNy%fZYmhp9yqZv4i;_~mW&#i9wt=KlMrP4i|8P}Z)PK9P@Ux9VRvOMn=6OL`tPS^so zNOX7gTF2xM;3cEb>yh|Z>SKz2dAdV69|t~O7t(dXd8$Zuxpf!-!U8R5Uhh3S-Y;!z z-v#AjQ7fbG?UK7;atJtb@Y&}FoEls8n3QqS;7H-11{ zf18wtxK=in>_q;J4-SU+g*7eBX(#$*Oz>@;2suk&G{okcC%a-haw+)xONRy}3Vr8= z&T=Pp?mu|Fx2WMk}=8>rVT-9tYw%0`d(C!WZi=&k}359xQwL$*^o$#!xR{K;0Nw~Z{2mECvz=tbwKsPHnI$`+-^NP%j&ezgQw5u?!n{{TEQVvCDy^Y^B?R^PSLFEV84 zMRs`~*zWYDUW1M4jJd{9(vC9b?+V$Ci2>M$UJPg_NLo3Wi-SIQ;B|(#xA;mN&?+Z_ z-=ZLSN_uw%zgZoih|!AXN%oH%KPjH=d%MKrW^f0OL9a1)nZYsc0R&PiP}Ua!Jr;3S z43av46m_4vT({F~^iAsZG>te(99WQ|U`N{>b&O{1hCcBxDZK$fBkH8Y&L>Ue*uv3v z#=?DXL+f+hi*CtV785V424^%@CJpT6REkO5gWL^@RWZz5IFCOgKQ$mXl3k0?y+Q|x zfLR&B!~KJAWiWu>3yi-jypUlxCZ^M5nR+Cxot$Z-Eg9kB7a1(>6_ z_NcRV`b8aniH0UOP7IkV&O^ziMP$0v5twLdwwz6KkQnLy#$AzE{UjKKySalsg}FSd z8GwSVm#P?vR1}Ehq$ynE%$@=3^PQdVlkFed8o>L<$N&bms-|`favJ5H3}1brjJsH> zWVDR?`4!y;V3F{V%8CN=WFO7o??|)?P%D)fu!r43?r)2R@C5PAQ}iQkX&0-;=PDMW z^%e*>iRu3Xen5f0v7a|jc<}%$HYl`AJc)HM<7l$_XOlGqA2ZolIVYR*ap)LbXLP?# ztc=S0g)wPjq*;wPW*W`q4e&>7tJEQ(W-K7XU@Ym^NJ*c^8iX@r$x5;b_A{w28w0dW z0$B|9Q);*|Kx7?b<}t?lZAWw|1!ma%xyb~a!w>1-Sp7V8JY7kqYOj>j&l`ip1oLdR z!&HRkdxB%l^5m7a%FtsiZadel>*BcBa?CUZ*M7EqToVZl+<9yv)dG)$!)xOxL8udU_>h zG0z$G8~eC|Z}~{hIQA?t(t%8$yJV7_>3$_PmfI9aNU9HqU+=!1*oS7&0a@ z&wljTk{G!Bj9C^hlWa^Bn9&~=$Myd*gfJ@0vhdyuITPM=&OHxca|UW>X_o%Cd|03K z-v0nV_MR@0uQue`XLX$aUYC91|f(C18;S$sQQ7=PT;=~xxKD)e%Qy3x( z(yav$vRm1EAhZCq1k?(!4He)kNdE#s`Y;PB-YJLPA)%!}acT=@JpoS^rpsqejB{l z=ABl1SjZ^(E|GHS{u2NwDFuvp&~5=RT}R4v*K(WS`@>{_1uXD2u#Y0gK<4YRCW@zt z6U=osnGrLvPTubVaQOEO6jI+DS~rp{fR&nz(QGgGzh#E6bBbw=3CtPazGOed+T1kp z#MfkjR=yVfPORBf4#A_72Dw_zSef(M*JS(lPL=|W69G7yWP}Sheg(OJ>1Tw z_fStVq}OVlo{ zw{W@NvdjYc<7~1ra?JAMvu25H-&vb2uo!`8koCdl@TS7?H&&PN2=W>{RzjK9fKbJn zsXX91vflxf1400@w(P5bx*jqYX3z({O+XJcXOR=r363+%%F6`E$YfWtE-Q7CLa}EN zD?_8KgMeI}-y0!^3NpJcIQAq^76TD|EH(Iyg~m#Y#n|sVi_uB>)9LjTQ^Y2lQ82F)vze4wIX5Ld z)Fjkng>7Lb$QC}b`!aT}CKcKkGaUt^Wm#I+!hMts=|XAxvNnih)7_Xw08cO^!HPB! z=j-DAY%HC@v)uXSS>*ei4vhEkXkNbr|EwkpjZS}T@ zJjFn{eh;vMF|TvGV+?9kC0zq#e%ESiF5S=EHYpdIuwoPOlsf>MTE{E~4ootIow^R- zyWaaB0mx@@YG-Md-X9>lu(-JRopF8zz)zfW-wGidA1^-!AWN8I!~jrA_0nQo^?Ed@ zw#@iN{Wt)mOpMZCo6=qDLp;7`6Q9^!Vy+!<{z?ab2_3Ar)rU9)d~> zDUJ9G02LvdjzTAr-(KzES6LsIIvMU9RrqSYg~#>`1q74bYA!}DTc}6ue_ZL|Hwy!- z&GqUJk@TD4Gmg=2jlI+j#6)XPb(2N`>>-@tQ!yMX71>v+%=r~+!{v8(}? zNC^Dd^fKdhHLH4WTxd%p0>L7+S=Y8sLEEPZ-sq>bS^>$8WA^T0>O1DZ*7VIU3 zZ-l1%dBW%yl)X3o{^NQ_z@?^)wbLvGX=vKeu0JU5@)y12BV)O0e@*vc(1Y zezf}A0$jQd%d*D;nhffBza`dWo=1}9OS@fQ%pt&ZHdyjxyl1s;?we-vP3L3`Yt|AF zc9dhvb6c3rtz*&(Aa44N-nJ&YCiTPsd<|%2TgR?#dd_)02E?TvGp=-OsblK$x%vQ} z8ZW;N;JkcF7rgg#KZVl-oFXK9w2&4<4R;8X}nv?4F}69Dc>#L!E8gpz8N z_J`I!&h>KaHCmeDDZJ!%n`X;{yu!|buLYP6?k#ZeT#56Ytp43YYdMbHHNxV8@}*_P zpHia`vZD+XC#3_tx7osl!L1p|`)}lUc+W^700Fjr*`61scZeFDEN!-MWlz^)PH5fe zZ%frM%_2=>Vs0`y+#aoTd}#SPp7_@lJlz}OlVycc*j1hVBxgYBWnTb7CHupz>^guK zMi&nCesDM*CqRo3V^C!(GN%np&`b6j$WjR7oXC4ebwGi;4za))0oq#incCvDim~J^ zRs*(_oHcVwEHW5ev-vY!yJvseh%fC(F{(bI^xW2ujt*&LC{qW`j@R{M_|xJb23+)d z42bZy26QQ3R4eYQS&rLQmgQv0YzjZy+hN|)s=9Tr$Arn4zyc8Y zKWB>(2Bp!7B*P_++dWmxaFrMor(8S^kC(rQSd#p~d;bc6-_1bnEd5`lef#z;dhdVi zocp*UfC^F-?gMyHJya=`O-spkT9Y*PfihkI=10j==;c{&?R&&^TE1pnH(zh`Jc~tv z9UrM`TgQX@3miCG;I+Z6^S3IGCpL0Cd~66*1Y9$sojA6NBYR0%&nt)Jtro8Aa@dx~%|405-{XG|*@tz{aM-5?a`3w~(cTCDP$0tifk0W^MBSR4K})FrYnlQ{i|S zU+N99+j)5Lk5KZ&vsJQ3D}X}c`{jzjw=HJJvQ+*%wz*^ zbGRDCGIm%!na)$l@k+Cv>_1Dsz9V8qD`H?vBjk`X+To>M&%l;K?6e3-R%EQelL(MD z72rPRYn1sPdYssV+Q~~WCm`H`y9sD7&d=!qh{Zmp;%TNBD_y?HC4&7AjluNPp;)-Q z$tY8@>a&z=IU9<)#FVB}YS5oD4^H(l?`JU}DPsc)2687)p2XbTobH2^DK&4K-={p! zvAn#Dm6es7c{m*MZ`jY#3VjpXXZhte3YIaetdb=(WZfftuj_MjfAckP-5RiSdlDw( zW`An+?(Ldxr+}^zYAVTMTW#QL=XP;f%LLpMbK>LDN31$+33&3vpV?<(_RRMM_l0J0 z_4)NRS*qOT#F94Emhy&G04b(ZN@yOizx)aB{cl4Eua1{50k}2;wX^hLG7G*vgz$am z+#t)cT7=0tH_4BU_Z_1boBg2LgDU-SPCMvIu@8y5k{=V@Zp&xIW&>@L5KE!aRAgK% z{20{wdgQ!ovBJTAft^JUD=px2>jmyVGQz^VR|++efTu7hq)f6>;JLWo!n?f;0l@K% z0uSFIgO{#C1r%si+qy1owsEE3wgQuLKU@A%>X@l4nHW5#8C_vw2_?ydLF@2gv=;{O0SHd9fSG_^*%5>y%^<9;r|>a`@2p0rnXEhVZ>`Ts zz{=_RyvOFHOBgLJi43y_vpn}9?IeHLp6myK+ltuP`MrD5zvB*c0p!}Gx~|6|LqN&E zkwXMUKx;`1D5xLW3|RS^2)IJAxf?4hSig7?<#34lmM5R#Ipx3GmHkqWtV@>TPKPU+ zu(Ue{VDm7Yd1jvnMu!d^La*0j0An#(Jh(A@Qf+o#@Q}`_g3fqoT zdgRCv{Z1veF3pNbni?GN`hS|(jPk;T3s_rQWB*1Lw~Go0vH$PcvuE-0%P-@F7haG- z_WPH%wzjakx{9TxC7d~P2Cu*VI!>QHJpsFVFwfsMj$51b-PQd)5#Bj);6Po6en;D) zgEn)@`zQTZ6oob&)z@Ign$=6bM?0NPO8GYiI-&}^%x<1LcMcmH8w`Ny88dYw_@0X$ z=kH`Hgi_9y>eZWmh4n?3M}gT^9@V+YYCy9G^Kl zRGp_-*)a^8u`=$QGH^AHv#0pQr^Pl`K}2< z0VF0Mk}(Up9Q!{f>t+@}vm`uNdg%ORJbP^w&-91L@_=EbyIR&gfDo|rXFo^p{`>Gj zNIuW8e*QfE&EEBcv=N2zUoIvp7Gn_{+R}n9l}aT;p-@t4H$g;1+?5O>icabvbQ5&4 zLJ+g)AUFk_bP~i2p@jY!)KH{|#H5yxCYqQu#)Re_SNQmN?~`&Q;=T?YYLZpnhrj%Fn5>p78CktV5NB!uPV z2$*FcI(#MU@)i?T)*Eh zNTRsDEKb-=$*Uxcf-rY>c4B^h9t{l*_}^GrS;6AsA|-Zon~zy@_gbTmR##W`KB@*r zM@MmRa6ri%C1}e3PXn_1G?kke%7tv1)q>~anJc$wQ@QQR-s41*$Kxu0C*L>D!NVJ5 zN&}fZ$&;1INepA%Nv-*Z&5TGLs*G5 z(oW(>ZA2%cDH28%udeWEco@&7rqI2#1gp)4T0&E6tKJ@WbwS{b+l@>ziEln1zHDvb zbbntLUTAh>E2|}Z3trY)!`Fun1)=2vrMixCC=|lr;2@St{o2#hgQ~(HTD`r!*x1-$ zYn?KAj%rPzXmQ>*aE!xb?3<7}wJRXm*;L_~0+?u9xbCt$s`h32>?0pHC9aXjNUvnL76cLA!C#De9ozJ>h1Ni&&&G$Z|_~zq#6vj*Y~a7Rn=9ecI~R#wg0`=`WGI2 z@IhR0#TD3k>#b3woO8}O_}%Y*C(7Ot#5nAptmf_a-FF|P?FB3!c;JB;Ckgc>?83?u z2V=1!hlsS8_1Tw?mHPlb52xMX<3q9S`goc2bH$qSF$}8NGlo3r$O;>d`3`xE@im0f zM=}Tw{RW>mbe}`_`eXpJO?fte2k{Rk(Kg#`GlA;qM{yPS)ym<<) zncRUhhHH4o9{niwlS!_oh^N@qS?acAGX8Vh8Az%fy1g_bq3)`4}Jg)54SCowp6al3e+_yUU$^$)a%wlg!`sU#iAM0wfkKr(>If?@j(BKGtR)d=bk(67Rx{X`Oi4+xZ~PZ z1l=d{b#QzbSsljYTIU^zw%=C?7kHI%{}%vv*kOlZQxXAEx8HtyyG`|XM90qQIA_kC z*p@$xd)vH&t ztGEwH(D=el{3I6n4}S22at{i%)QUyi#&o(^bVKabQWv(Eh9-WUAyN)u*ZIs8HuC=3 znBg{Cu{Rc$37lkKS=QqWyPZKQ$F6JD90EZ@jLzvS$8mpT>!t5Kld8$&506(FWU}{* zD359K^m24*Vmtz<H^gO;V-;_&R{A0dz-Ebb!$> z#&P`r6u=i{9l+(HX_|`O0pJnv8kK#%V#=>uK+7>#KFa<)iN$r9l_!t4hu9_g zn7lOip;Qea;-C;KosZCgbFYN~e;9yyNmJVKv?4mlP>y`XoH`EPeOUdE7;-=^#}U)Z zDow1`fK`1ZERDoU+rj~_8bPT7V3LdFM{QFh_m!;@o~~3dT8jDlI88=a@~45wiihL< zoSnbcNh39Ew{k5Gh-%n5t)pexhUM@w8MzTFLw6mBWM89ezxho(uwVg(9(xR%vdlI> z^l;P&{;OZTbUNwTvvJz>*W(0p zzvJFsjI_P*l{T!lL{%)UXdu-_u;ji{0Lwex@eT-q&v?piyX^*Iq z&$l;UG{;f4E!W}#EAGgTJn{%O5n=GgE`p(4!h9cG?Jm!SxT(LWF4}wUxhKTJf32C+ z5?5t?53O<^pUK8OI5-Hg&|iG<#dg46jLe)lQ`(E4K~;w9tO2EVA^qYPzlgWK^{o)H ztpdgO9pmRhZ>My3&b;ybKRzdG@SAP#HGhZs+-)%HOC`qjaiztf_noiR zY8yzim6_XIl*is#B!7IbdEzh2O6&Vw?o&nCI$bvF7n*XFDF=+!jLP!-2~ayBJZRY( zz*|k(Vcmki2H?v8E(7p60E+;;8^F8FKEE}3v(bMRORT6Y0}wq|)U1o{?HKUz?025{ z2p4-|R+=4FACU0PFze%ZHZSyIX9d8!1_@cIU$OvH2+(sGXqWJB%&Il9#k3|kO^?Wd zyN+Pmak>$_{1Cyd8X=wwLK=PJga@&+{Xq{u#ak9F!pjY4SQka;2QZ}46Au%iQ>2NXlqRcI;l?A6 z#P9y?-{`(?+Ooj7o1gcmKVb_q2{0;cLcm{^>xl4FS10-_6(=DRdxUW8ArGL~dqG?# zk2>lo{K?c~97WuGd4Q+u=<1I{EWyE8H_kuH-wXyv@;eguDFe_jesw!? zpZW?DRv@mrpZe6NAXd#6OL$V`zfEX^cox_RVFtIZXCTO8fA!T@<4tdR6P7Puj-o^? zwP&7rrmKB}d?Gw<(ZE(pv8o<^_~8)CbwNVFDf7D+dgpkI5>6);K2Hch@iuLJ^wrBZ zMikX~XhpNy#065hO}NgXajnlo%xA$4z3+TZR~&KHm@~8-%1h1L^*J@Bm=53$^S@sM zc+~``eQ66nIJ*Ei8bBqAq7R$(e>3GLjD8%zA5Hmfv+V(+|7!Gf0Oy!(ABf}lL#Et8 zJxKG-|2v^1@N#8ay294dOwh+JU?kiba9u*F2Ka^NdWJg8><&B}iy=Ce6ctL@O*`z) zL*l+pqpuuIFlY0I6O?vz$O5J8NpwO`Dn(Oe$&HDowz6KIUR}X{BTXE<{V)(KR^zhO zhH_t~#GIl}4wms`cO`U>m=wbM@f*7b0pG{)pqU4bm3jj^E$_oS`&MH&G!P4TjpcZi z+QnXLDYC4^sReIM0I*eYCu$mRw_oM%W|c0T!J+XkAQS;`21v3Y69 zqNBm8YvAW{qjNH`%fS9*bAGXkjh7sA%rQX%H@5m%2@wkV(%f+A9E`PH7dPL0bA0DJ z-@yeJT(F4|M}@!5Y$@V>xIN_B#e(_EU;YyF=g-GKnn?Y`4Oe2JCr_U2$}j8tE;wD( zMcc8f0vd~wkA3W8*m>uj8T>e{cl^w1aK)2R@{XQx!U>S;FF-iOOkP0C%RIp=@0Gqb z-{eCUSmkk`^IW#ga;FR9{!f!HCzOMi z$1qvoo!i4_K+@Ns+f`IAPd57;2;id=pmx(2?oj3%z1lp0SDNyR;`R&RGf@;>V)XZt z;26Mf&Hp|d$MJ;#E&^~dfX(g0vz;yV104d2{thhcX2AdFb?ylASY}-xAs@iht_?1R zJ{{BO9{`2hBr7nV<90<|$=Y*)R}#LK;0J|cH<;*Zdaa4gr#4aTN`Vp~go*;HF)nQ5(!a0snLz+f}R6O9U1SIe$JZph_E z-+SE_{L#sBzj6&QoONJJPbo>T%d*vYy8*O&Ms*+snnqi#4S8fmTdAnx&9bq~Qgnza zKr3ZQG)?i;WtZU=L*_HMY#BCn+10o+p0a2WdgjeT8^|U~b;hTJoCPXYBSd)m=9}?V zGw5Dy;_O~35|>JNyK&c^X|AiL(ip*l+QpN)$@&@uccFer#7R(BtJQ=+i3a$^$-H^< zBz~3OQ69+WWl-gTrt_U;i!1|;efHT00^)?AXcLl#r%_LBVZ_{mRxBB0U6 z6#nDN0S6p_8*jW(thaJ++dxVKM;BR;b23O&T<=dg@UEzAND=!0g21MKzp=;*}ye#iHKA+E1&~;7h z#lj$&-E6(aA-)agfc_3D-0pnKB5}9+I7wO;A5kH z8-TeJpmx&{$ys)Y(f>61-${~u(>yR&rD^(QqnDfIF95jRx(L6=x&xmN;G^dM9|6!4 z$8pL0Zy!^7UCLN^Up|h>2uOS&HDn3R0?Z6VvMg$ROlZL71K{j-76OPqwmCXiFkhf3 zw}UQuP!Vcp-#NX2oo8IYTEw;e7zx{0?A7g;v0#OX4oM24Yz$H(w>A)<@fTi z>GQ-6TN9mN{3eqkOx%$ldgviMFA2XVSq2GJI%CyClhWJ{Ap;6;V^GS3b9`POH%TZ4 zRsWU-lQO0k)s|LQTls#&36kZvtjapK6)St0=zaNF3T1Qfc?E_nvkcOG6GeP3pHZd+ z;3E^D_8(Zp&DZF0=0W>(k|ehQ5Ix&$JH_Zbjh#{2QSclsnOo1vV7N;cL$zQ=AefXeM!Xis81*ww%AL z*1}e^5&-1G*P=&b{{Ib z*=CywprsTyn}&!*`J#(1!a)Zeq`@mse)9J=$ekc;(vnK32s!b@6UC+9XTjrl(>2Zu zj`f~;>M2Qov@y?5)cxW2F%uAJ}1Y3<|Po-%3~=PDD+t!UE|weJtdE_1+;C= z!w;aB`JS_f*8Sfn8mITskS>v8+1X4|~cCg#j)C?rL$ z!xd4AZI$gU?NUr+QBdm*3V>{_Kjf7&taTWUJho-Wd8_N!8>I+K2Fh66Sz?z#mt|JF zoAC_1&x*^-q9GzMZg)zzSZ2DYJZhs#sP83(5K70@}3B5tnYHtP2T%4XyYveh$qm1XW5 z#0^@kd}5W}goWBB-#1!fxx^8bj@BGFVBx0=< z@-ZLK(=5kqzzD@Ca!Q>7fGxFwI~Ln#8PqPP8idRKJmKVXiRGNtTqjqb791yPu%%T4 zRviZ{z*R~e7cAg%baYe$PamVY?sIg>>Iw^Sv6t)d4ufY-T^Vv4*7qpONW%BY7YiK< z0pV{=2+s&-(1-8>N_hgtt{2NR{2p`D&IRytQ)aQX@qi&jGtb*xd8Aywk!5A{J@8qx zVWE=SC1fSYs%t1;tj{u`m$_|q`}qNU{**2ucj8d&Lx^>b2b8%dFKpWc!SA*s3AWv; zfzD1Hyh*XMsj}X-YzY;}SW)iBAar37hz7x{M@rcH<)a(+D{-7IfoBDFMgP98jEAcw zBx#CDD@D20L>ZCAz8jVs5in3Gq3QUb1!8d64cQ9>_@ih`Cu8bfOIF~7HGMcRssYLZ z8?~>i342bv-QuoN)s%@*0kmZRvfNrv78SSbHdD&BiU3|y>in+F2wq7>M=`i+6+#km zDN0;mD3{SQb0(q}fH3F4kA4)Z@4Xj~n_R7Jt7KW#r=%XEE&!wQEZB#!fp&~-So)SO zg??w4%sZm?NU6QFq&D_-l4+mujyrtK>8InSi!R3Fr4sk)dYOogg0W|r#4x?Ry*Sv! zZ;!XU;SFyPre*eqc)mb`L2i(RRIX7hv|^!rA!XI7RWfMyeLHx&cC*bQuL|{N-U;GK zlP2MthPZ9J?Y6^si2#FT%a%dv^fKd}FeF zilLbD&ZY`brW9w}RNFQCF;tl<_hhUur&L?0AO-5=-%$q8K`5a@>4O@;lYM2pqSnND zOZ!ohjyg_F2`OzFob~HTGeUno#@bShb>$M)b;Rhel+oW|mMbL;c6OjqD(Q|_moAqb z{*ds;#Ocbs=i-$()&SZAFlyGV#Z}Z!6r>hyMd^9~i}wEotTs(qk#*Tm_L1Y(gV!XL z|En}WEuc&u|m zNPV_7Y@6E|7rN@ysTdDA%EUBY^YFtMHu*ud>v3f3*9DO_iByCVQZ$tXS2QHG;bHvV z5HS7T0GV~qJ_|jEQ-yXDmv!6D^tv=Dq+Hr(ipjY;%~)VwZ5Vy`Hfeb(1-tBaba!LV zv(Lu0|L2=1)1ZY0DXwpf8}Ni#P9;X~1tAHN^g*Bg^rzLknk&ZL$Hfq|I`I4Z@sEF8 zfZ}*^Y2fES|2ZV}%915ZLjiUsoDOd2c6*BS;U;cu+=@DcZNNoTXm zF1w&;dDy(mLXz~yKmHMN-E9IVnM9Cl*=eVp@VeK%uJE{RiHmNh=vljVtse7etCkns za{phXh^zaB7hWjOp6|QwdT;eu)MbI*7(mNol#sQL>*$)a*I-bdGhZ9?1fA=*eHLp` zmxb8(UirpSY*F@(Nv)f47N?AUzP#at+(%o`?6YWw*tBEK$8`J&vo|pQA}DU z;xPdEwsXA_ynqr(vh@FjvcNoW()+y5+_WkfSny2`TWLceg&zP0)%4(b0jtl%&t>2R z3dbtQe(Xvjl3|4o#l(g{Z*DNl%)i{8To1k;hh!!C=lkllFvtsU&*3BO3R1}Paa=bh z9O$VhIDcpa?>u=eBAuQm4Vdhp0BuVxCu&=wVqhC;JynRJVYS*`R|qP$Cb%Z7sJb;| z5Evn9q$o$qJvwp(Kv={x*od*V9%J3Glo8em&`r#`(WR9NmiBaF$)rxKGMdI4sPWYY zOxAr&(!l}Y{J*cj(W_SDbr{)Th>na3_%;eBDI7%6Lc8d)G~%T!-pYHyeF@UBI` z+7##q@SLohf!m2>jde+FU;uyq{`YZ@vBWIB`)*Xz)DllAU@NMDtYiM7(as}l0P{SP z{Qn^1O4m6K7Oqu>?Bu@;5mr~Dfgan8liHwDJ#xc{(SsHel@4eCz-fQ`8#d3dI5m?5 z5B}m8_?-d$4;Ye_w9&9_pqQtLoZB@gB-#{J-uOLp=3u|`&&L7peQ%+laLtMp*lWQ8 zdH&>gMLC92$~=9si*ta9bi{HOwA3y&R&Q}1E<)aFo~OI+x~u&zO6i;UbGg2S2IAh_ zjgp5}+-=80`uqDKc~pgXYQ>5b{EgvQI-fU{*PZg%V~@p0KJpRFm@xxwdEfiqhudzu zjlOqoi^Z~MFj*F>>L)+>Nr>gVNRemi?Qeg3 zd!Vn?YlV`1HF1x$tFV9~cYN0U{T;)otjta&wzn5GW-BV|Mp#A19MkTnFt|%plp;CkX0- z|Cit7cGJHrCEqWpqpgQGce&nQ_xWrf<5Wp}U+s1cYMoey$6a6y^8ZZ0OC}_=!j|~A@*LELS5)TgeoY@3N{Icbb%W#5h629)t z*kBT$CDccp!mcAB_iP3}%q$lI^kWRv&$cq~x-NGeYGUW@YKS->k*%&EfJsco0Fy(B zGJ6kMd_l+n3Q*hM^rZu;AVs-NJXNz)xC64R(cK1M-P6&+R=o*cJ*$rWx2oaD*&}$% zmP2^YHUl_!+B&?qwFd85xdNyEbtw*6ybAMH_oH*P&TX9ODZ#FbyDwgWBMqQE6eG%# zXT_%QNfWCLyUhaGRth9Wo7N)Ruw@H&duo4%!Xd+Ws_Gq)>u_EvmCM-8xV^sjh8ysCV?8_30Q8v(2LOps-QQUWKK~+9jU`?{Ur7F9o+YtB7DO1u^$77mgjiFZ z`}1{+yRCq(@sKO7xB_B%{H%$CUb%85IQ@mz_W#;isZ=1P47PPC`|99`m!u%3zE^p{&b$sNdE0etKNpKA(6(h)QZFQ8})CJRhsyaZ%lGv;n51T9fom z!^6Xna&T}^;(Yaa>7AqYcC%IU{SIaR;NyLv4!j>vF#gJvPuP7{060(p?F3QO_%ayJ z4FC%t>zE6ugi;OofLf5{n8bIUJS@4ceSMvOsQx}+oQEY@mzjA)9l~*vyniTWf$PYD z_$>N=KETa&4o+&2WLl?L_=7mT-o!yk1H0}p3V>4YFlcS5b+*!i0j*kYkRN7?Ojfb- z-K-FEvQ_KyOvkD~hr|NfVT*1?$pyNm)B<|wd+DOFXJ9LU_K2110j*RuE*p)2a>^;nwr zsj{ze-@VxYx4S?0x#D9;|K(rM?CiAHY?S6sN)SyE6PHE`TZ1 z$}Fi)eq79?hQt`k`9kcb?1AImkHq;K!V)`Y&YZ$sjU}(^rI%hR15O@16R0DyFR~sv z2H*^GWgsi(l9*(%vN^veoV%T^@?sqoDUt~3{f2>D+CpD9*Pm7PS+iyh&N=5CTz>iG zC{j*8{d93h)-Kng>|N(gH#lA*F4$lB%2(w2`Tk^0@OW8tH$wRLa_wU^H1X~-SnxTx zAM%1(He9fZ&^zXw1l0f6>wIl`qDj_exeZM9vXlZ`J3BiiZd%GVh}8g=K`_4)UO?Ke zhyES$B9Qk?Kl-*FGkI_lL72x{(rvt z-vR)CoJi^O!Vp4<_-6J(Rzn|=PiV$jG%o=}C^dthtt?Cm#c2^jpxrmP@Ui;(m}o-) z*gYedKgCZL=nnzO5CblQ$5-Lf<1=OQB5rZ(7}Ra{^Pu} zEl~onDFNQ5T5qUhwAEGv*bW^(t28D8s)UZO+j11Z$a-*_4jJvYD(8c;;10@uij5g| zy#{oQrg&vF!J*Se@vfPJ_~-I-c((y|Z~ya?*lF1slpBfD;>|9Bn-7lQkQJ+OWHf>* zHUL;e8)9Xnjt#N10&=y1y2;#Fiv|BDq8N*kcdwKilgeFA!Jkln*@S zVm%-4}_A{~+<`*WVI^ciq|?(gS5V zA6sL2fXF3-VIFvEU@Q9c(@*29v(6G=tL|$yus{0fqan{yK_c$zlKzIlg4CCnMZFg3 zFMa7txY6WiE=a^GFJPHnuSI#><5ZHOEy*$oz%jC}aaa&w79hEaK-t|_36B?f?BfED zdBd=L?7lujfosA@l&`}ZHm2*tpj2PKsDM`iveqiwe$Ksy9_|O&{ajyzRymIlp$Tx7 z^R$0QeqX@t$jC_hTskv^sQh0h!bIEPQvUB7%ZJvpEVc~HUFp=G0I<%E?!ExvDFB!N zwJ%JrS-qZR0ri2<&^k+&%dsytNeD29fFpx%p55^Q&ybap0bi&tp>y!>=1HC%0+k%k zkwxg_>ny#w&%*hH!_1T-Spc3tdVK#Sh0h_?26o<|rqcHik}9cEG}8NMa7#cmark;h z1db!cW+WxlxhiVkL<3v}Oht#<$VCC!RYq3;ttCd68I|Q{fu_+`AAq%ToMJfYR@!0J z)<3EM+e}Vy^cEv{*Yp9LvG!SndVQNm;Lk?XXnc`5>4?LLvw zx`5lZ8?uLKSU0_DKGrl9b>E^G1qfw&DyvdkC^dNN64lnqG{wCi{xBXiY_=2ZYh;}a;KUc_^ly9TJgvuMFLwQ8T69JWu}DV ze$tZc$Y47cs1^6xMT-^{<$~-=8RGqRT4nH;nFCX--9?I6Nsc@2IB5qBVC7sgxaC-~ zko%}FM>g;41OS$Nih+=Gl3NDg5|dk$+;`u7_{?WM0|u-Nz(stPYJKd7O@DIFJ@=p} zkqHOMz02QA8SL}3#^3$%7P0OxSg=5QiZNK==bqcHsQR+E8w*3xJX-il|}@BWm`)j3GIrT z7;OOQsL^3-wH>jbwWLgF3QVURz{*kykJc)}}zR(9dK<&*H;=X!9@NEP4OaT_!g zIfRQi2ew*2-C=8drDq0iPdd@+0HRK#9aiOh3Xn!nO3lE=@FshQxA%*T!Ub%L5)0Op zC9+Jwwo{gAj-XosxQ;Z%A`?eCv|NtD^K$}d&$!zK@k!ukS`jk zYp;-Naz(WfFGsZ+7MV021&O3X3B`a@>9=6&V|3rLaN$B4+_^^!nRwaTy)Vzc;t~sIA%?!*x=lw3=UkbogsJf5TOts>x`Eam)tG4 z+!95IxS^kY_Sw=$Y6})y-@GYIq-3BV18%WCKlM~G1{?uX=bd*R57b>?gx`x7B)9IB zS6(S`>})-5YnIWZ2&QIzY$$iX@7ZL~;*CwV_n5)3CcpDd#PRt;V@bY`AtQ_1ojThU z+-3O5GA8k|FNWFa&A^@x)vUZ+TKs#VluV&}&!E=%OzuC>#6EkBVC&fpLO=m)Z7NF0ir@BB zZHqNnBvYOW%yd{|DPOIo_9b&=Ma9Ra8`9&%RUj%$`&+l%4q3L=%!biHqiX<+Y+z1) zHYwrPt2%M@)4jNS)nr^gG8tbiPsJ6Jr{T&iX5gy1Ti|Ou%)w{`Ct*T+U29)=Cl+lz z6W^OU9X}lH#&8nZcC@)@b?j`aE=}Wn_WV{&29H~EOt&dT5n^wPPVGaaQJt#nP*&Qi zsM;2p!R>Dh2rW`}FwCV*VVDGay+?MP+p!3-77OhT&Rl6^wXNFalIBQL+aEGSI7P{} z+isgh^y0I! z-_>o)b>#o)GDL#I*X+t^?o=gClDnBRXX1=A&OlLe*=3hu`SRs#k#$*Meb#5EMMs{m zi!Z(y1&J_5OFEsP@qvMx=nEh+!6323UV{gZJ4Fg|lMaD+1|~cv3bGZ;IxGJk$G)|;LNgD=Q0f0V_X*AP@A$#tv`KFcG{e*j23(hPY!XcuO_0>?<8XoF7@*B zxehPWHHRJ8<*kjLG68B|IFUxLdPq1zf$^c__95^~9hZ_YtFdU_T&;O5%(^aF1W7Jp zC*SNDgXj`f9<*kj-Nh)1$&NI z1f*1pMo5gF5^^^NB>;^T*z6D`A5B?q5(AQA_)+FHLLx-=)B?0=EG^kM)ryT%tr!&? zY4A^F0j3poU1e^n@3` zcRazwZsF|iuG@#7J1#>6x4y|pCd0beJWrhyp!S7vJ)WPYX~}4oKYu9hRe#h%#2su| z3;{iTT-HmHHB-g2Gz7xDZoyviBd#k+Uiay&Tz$So);USL!n5QYx1>b3RS0DBeehY# zLo;^#ECnt7yA38-SZ-k9p@S4dtF5r)-Wyrv|CN=cwWZBcN*Vbu9dF9a$jX1TK@`4q z1%O8s({aNd6APfVKV^TjCEME!!!2tKRi?$wCpEEewT8Ep2JwN;etfW_A0H_98`Ca~G$SN7 zEl&!z&@u^>C<9*G{1H$w+9BK2eN5H9MN6zyhecO(E?Xi=>Q*Ujx^3B&rnu9@h{2Ra z$tw*I=|_Z?1+x{TwvI&Vt=2b6XnrScKlXf|;O1c~sr|I}FI`#`sO6Yi7kCIwbox?( zk?V0-)~#FD9;_5b>?3(`r%ag=syBl{@ApwN%8CkLo<4m#ijsdZ4BgK@`z+^P^iA%D zn07_O--B>!z#!oxf8!-}PEjJnP&SsA!A_Rvlh+-S+fz~`6(vGOCd5&?O}UL;Ou6vF z3)|M@Op6%nMhF4qptuO0TtJrDgW1~4mV9RZ^%J9p^Vo8lM%q6+g%P(omwXL2*Da^X z&jk{nS1AM7;5gmZ=VfNU_fLS@@fEqb zb4{b)>@=lkGYazmLorVw5Xvu7_=U?Kx5;%1J;b53J-#;JI{U1Uye%&?aVVuuC~q%! zI{D5SCMe-fG}A?cXY(_}%ZR9#x2>l*awNeU4~ARwW;-HFa9y;$u2S<1SWw$k`!($EcL7niQB#V>9V*{z(`X%N4clX4XOb$HJzlgsw$m3Zr8%W=@sHJIH$EFjiN zeb4t*^pCTq;g;!};U;vUo<>f$Vnk|=fvt-iV{3P6sb!2KpatJ%PA5#Uqh)=|XoC$o7wsrsWyoy{F2zwiD}dKKJAHJ8;V_w@4bBLSi4qVnyQn{$?^g>rz~gixMHoy8im>b(`uz zc6(AgGw(cK8d{w&iehJ z+I>PEcD|h6AvbQHdp!4{uK)Y$qe+;8akp$_;z@O8M`wn0X?FktLH@p*O32msXwd5% zQ(6s8{DgATs_jl=66ePKxB=SxOn}<)jiuei=;q3GRW#%l#K1HZIPOdwEs`^rExSu_ zr{_yW!kq*s8TXw(#MbC*7oY14*DVA}xvlhZS-H%7vrAdabRFKAGOo94In)Vexi1F? zqgpGi6eq7~;P8V7F>P8C024V;&}2kN3T)LS^Ajirwj!#Ia^!=D!@Bx_p`s5Dijt+*2S}pIvR>SS&pA%Q|dHi1X5d$*X1Urw8Xo6(5`?0zf&++MmbH4hU< z*>i-?5#{2;G`#P#jI`|e|Mzit1vq>{Mpw%bsENZwV~1X3{d1ox91 zdLkfUH{-@$ln9_@uO_aqEkhnsp=D9t?z8srb|-KaJ@CK-3yUfK}966GjO#f$H%g@H1vME zV$?;MOiF$`?=|rA#piUTu;jeBA<)d;8ZL0m;FibXs&wa6RuYUyw{6cBQ?~4eEdRMM zft3&$EngQiF!va}zGP$q)Q+DF*atXIpt%c-Wm!+N@`Cw*TF7O|2fBS=)8_)4~|YtDJJE zu5Ml3;i2APb?HxjQYaJhwnrYR(jpU47S%T@x;=Qlhb-Grb!w>gV1n@}vuC3K(ebQ# zCL+C-90pM0o|{+1Dl2&pHGuhvx#va5KKty088c?U3QyvO;`h9Re*v^bj+?H#?mE9k zXzbYqLX*Ng5cGjwRxiVJK_V7Zw$A#&1+@nc$T>!kS&=2SwkQ!`AD;Mr@#W-`PsZ`b zAMd%h;S3c;3!ft(A$N17&M{mtRghiw5lsax%2s^@SiTU%yacd$2%vabAIoWVxXpe2 z0+X>h$DMW(Ky$oEsjceNZb70b&I-YJg6r&Z!4Vxx8$sXa_tk)v1aI@4MuT_ zfZON#@UF*~;q}Hvd8>6pU>bb=UfnfoGyHVw6x@L>+nm%kWDV_TTbnt|Ia0SwgDi5n zE!slcr0twam@TtarJb4tyV1bI1?H`tZa~Q>fV!UdQ1#ZJGcC$O%lCvz1ORr+5mG*R z&YYq`WF$wdYXBAQyTg4Hf!chaTB|St4-5$$&NYCLWd;`oh%a4WW_rPZgr3Wg)sb0#HJD}frCsE) ztT+EN$FN!r86~oa-$L!d9t^Cm@Pm-?B$$1Juaox^vF*!s=XIAGwH^mC*wxSL!$x0e z_MK(6ZDq<=n)0SLkT>g#0bDuZemuT%CxHI|@L-@L<`lSjs^;vI2f&K2l`EW`iH_*+_E#|75?}O*-z(et2+!68hd0GG7 zu&#;M9WV&nL_Dgts)4B4X7JUj5ZUU?#EWi)-O$r)&PjwxK~BA3=;V{4hr zio&3I-Xf+rQK*zQ9mD{!w1RxK-_sz5#|IYV^LoQW+A z0ZaiR1WkDcv+Q~nwAjkvdFP#X9#cFmGsh=MA}*;#vmo=tD_e7%gGRRc?X}llC`x`P z>6zRFFD`dTU*1^P;5!U%`CDp_)hwnAOfLNRebwOde#nh4RC)=8e}4Sv1|m zW7)a4T|`Z;d+dr$&C3%L3fa>HvD&>@gFU`?E@CKWN=Q~EArdOhH0`v)+W)!QGelsz z%#@!nx{dkGE>nKUludh`pEA0K(RpTn>3E+2uoA#CvTXJ}9>B2xPPXOf1gITfX#x14 zY54sEt_41_Ck8?xASoIqg9x+I`L_97Y56=^ol6M7=Vi_d<&kAdat7_>a_f9yv#yc% z&y&=jXVYXoi|8wh9Zsuj!oz0?cE()2wm-oxuO7vgGZM-h!*8laKvYsdB!N_`F2W~{ z(wGV3LO_ydZP-r2KJojKD$$oEb8u z#Fw+*MV84aea1r6#J?F1zX)@ja6P?7DH2yqKLdHTWb!lSvfwhf=X!*_8?6hnW=EFa z;5OD1O5CnW{$zghwRR*m2f(KREViKZQUSO|=L<2sbP)g^xBhr6H2^mPxK4g^g8le~ zlZppC<;^AM11OHtW-R{^^hxXIOaA?43(K*Hz@hpmR+4P zlUn7qdSnfB_#CXkT)|t{TR03&?7!ErpYAnM3KrU*ksCO$QZ0klV--YMBH&wMc4acH zaZZ+!I>zRmZCcUmsSB%V0q=!vG!jqK_OrXlYR{*<_g|{x$U) z(DO;4wjM>;;~nonQLoLokHEW!J`OZ7<#Ol?nQG^_I)KN|^7QP+^ z@B9sU)vI1rn1xdE@mkmKwz@zN*O#reS+2w(MpSMG?{}HqNM(|sDABIK%zRAZbCc)) z`{F6(dI;1O0~YhUglEfPhaHA@z3W{Npjot>b=FyuhKa3x;VcXJg~uq&;;mgxwfbVZ zL%$y~AmoY9&B_;>C(MnNjX9hr*JbEYWiayyyN-ua;PCZ^jYnaZ=TN@jkoB9}HWjdH z%6*K^H{13G@H+)mS)O@5Aaw%NzHrjvvHa=fkl%UMgBD8Plj}GuSxLHmv%8{M*Wd$t zdE#Y#AU4a*C)`Pnozflc@qa_OTHub&=HQIej<+deORYz5!VN0lWQ317S(}LrQ z9Aww6J9N}(v;@SF(pb)CV{NG^5{ET)Dq1)i!+5u`Se^33v)E`Oev-giqn~Yyi zpMu|_3OQdyX@Xm+drpEakqp#g)m%jgKLVrnt5sJ3HL>M73t&gB>iQ>+R6x(%doPNT zSq9XWT$U11MSfj`=+}X*(FwU0*KJu-ZB|p|PH%e~wpp+M1&IJh=4aqC$i~iny2KZ5 zzy0J}<9#WEq46uaK68AXPrG$ zro`7FaozQ@){y&0h<%dl@7z~O5ZLZL)WQ*4)-mrDb$TmlB<^%84p?eIqxS>=`+36S z2MZUCuQqS7PbQ;M@^@`m#d@o1Tyn>7f{o1@n59N*HhoWG&nxSqk+szJ0&$lqBMTl= zqlo}biXpWcX*{n~;%!gD5RO^-9QIw_2Yzn;u;nz|+TDYtt8@UO= z?!g5DxVikjfg((>Y=!ktL}q)6jMep6(zr++yzy^8{pn9pga{a& zH*X$Kcsl!Hz09t+S+;DM&$1Z$zEPbBj8a^z8i?w3?V`-?r|Nh7;{iznRe*@4 zS}gT^o;;J-obJTOxayn8FACHOV3Fs-NuC>m<%U}Mo z)H8E3oWI;s0Oy8n$1@K-)F()yrm(c)VzErS=S%R5|TG&l~YpYB|PPvvmA1l zXJUeX-)H&F3J-MEN9VzP#BvFJ0Khx|3jzEVBom-^)0PSW9j$p;fw|M>eM9Vsq5Ndo zok6zGeaLdlzsuWQ05Is%YXj$VTP;cQT5R*~!|pbr{IooK7OFR^54eX?DLDrvQ@Jyyjn zRy0|Wj(21LngC59hOTd@LsTa=-mQvtOW&r{4OUv5d1Vq&|HVj+g{#x(}m zF6%=Fx%&TYS}%T=R?$jrlPkZ~NP)__I%gtEyj+wLs4z*0*_hJ}l~l&1E>X3u%r3x0 zcD?TDr%{wtCr?J=@{A`ZfFh)6L218otsYT8wn0F5NR;+V%|P_6CdRZ^EGz}d(xprB z#1l^htzwOQYffhzI?e{vsab) z2J}q&qk#g02hM3J`|y6g*jxtqg@M|~AAj7JX3zyh`P;_NE0-ZaA_QfH0!4NK4ZDGc z<-`+DgzS6HIp;toKZ=(9_un69pM7?ad~_qk1<+j28JE6iPanrTAwHs|&;*BXU*Fg% zG|tVm5Njpj?IB>RNz^!ISk!A2vBG^eYp9>$eHIygAAs{r`4OWRn*A;^`Z=TjZuB(( zJ_z7)dBtI60@S{=Qu}oH0EtI9iE@bLIB#CraDaOl>}CNmmMj7!?ijLIk$r?vV|Rne zcGU{GVDNsKH1oOdd-zzb%oynF#JyJJJ%&>(*n0%MJuPM(a>Ulsx)Xf5jv;qu{;eh< z9WY3yAVjbURr!df%5Srw15Fi;ZVJQ#{Hl~K$XX4%0aT+6VZB|pj0v4cb4r=&A8ECb zmvuiTaKudu2jEKyj~{?h{8Qf=>}A-Ir;j$!zL!rkt&27wTzMxyhY0` z0_()RRe&%tl)VLP8P|YSt#_(p09n>e9ARkfIus=xQ>K6!nNyw=C=lomDS*08)+vT~ zPy_us#0E3Nbg9QWk~S4`}}eWF-GMaLpP|M|}u1n_r42&0Mu zwcdd>iSyb;rx&ETT{o6!Ml}bfQSN$1SGdr`ca|mzf zQtO}1K1TugGJwkfd=9`x04@aZ5da?suo_AxK2VifW`OYRcVsSb>qoGx-6X2NxDw^C$0tyt;lnF=n4 zSZeh)1`e)oYf+Y3cE=8qUP_r)-u&h_LynR3Ll<9sF^U!eMPK>KSLB&?#b<5|h|QDI zh5HzeJ=OP;$F2;LS-D=hehjpE z*|m*3$UNZERaf2?y0)x+xxT*rLUF_)X6cZXlm~{~;f^VegXjssc>D)#dIu~237&wx?!T;|bw3Ml~8mF?TmdgMVyDw~6UB4}DDI^wcuo}lkL8*9SvYtX!u|Y1cqU%t?Dx)n# zn1uv$`iHTkw+nJlmv>jOXxe1#*w?^rX&sfOy&e$)l{5!I&8``g3lL9Ap)xT(L$yI2 zK-K;~QGm8#%XNs+jTT}6$=bEWf?Cczr5-bTKMIkZj7x6Mv}uU-y^;5mU$0ULlZ=IC z^442pGXubS%<_224L96?2OfAJlm;T$e_7Ror!li03!oht8PRocp7XDN{VSe)@=45{ zJGTgHtz37AtT7miDWpIJh>*Pqs3I`y4{Pb}?iP?E78+-4TX@Wnoe_b@5i3`DS( z11IUC0Jx$=2$4wm`{lD-^F0dX5M@4&!Y#GarcKjc3_N*F?^J%qZULNP&Hm5-{7>w= z@4i^La3PA6IdkUV3t#vG-u>=(+qNl0LZp|zG))Y4sm+`q)a8!sig#sjtdG?>g6W;| z8&x=Elod8`aL(C0xr}{=4ez9Ywb-`vdpr9!ZclqG-=ALrXqn}Tc$ezAX1jhPfF~y4 zt6R!)lV9Qz8M)Z##~d>>Syn>Vi{u6_3}9$K$7~_5=bc@ok}RlN!AlvjsQ^$NNq4}WI<`vFxm;E4Wo&G zLxsiT4LN8di%e5X{BqP?X(uRrm|YgGRSSb2zmJ)dqDKX6t<3Cdg-Ow)!3Cfj+cXd;SM|O0I`IQ zL4?_u&hO6WE$c!Ub?&+67LwZMl1nbpRt%oF4fV+aGKwOJ;_q>g3u9<#2zT9e7p}PC z3J4GxZ~60||BP#|z1BJA5ZBnEM6SzUwG7*$vdmn zDvmkk7<~KN--aCbzW2RPLIw&+r^I=s-}=_KLe9fL?0E{`3tkTyCql$&ObF&9yOL*y z&!erU8hD1tIk`{b@veYK{d|gg$A9b^%pjY^o|CsZ!!$X09F*h zCjoqK0-8>^ABSG*Q_?j3n5SdlnHt{a1AZaa!?AQo3_?ROtiJqkp;%qsH-FyRFmX~Y zvL>(OXLWYfIdq*mIX~|ozGgmGHc6OhCR;YgS}hn(aoqI8#L$db#N%QhrZVyYTXIuY z3`L6ZSb<|=QReePpPS8xl-$(jfJuie195%5Vu;cL)c`2AVv#hqr?Eh{?K0d(Fj0rm zSaz_NCfg!WS(dgmniw6i*4+jrSrw360@BKQHsn%l)N`3FA_{6kE-l6~RB%skCvKhD zi@T@y;=av$vBUsc{_qY|%6O=^8&9JQeJi3!-7;=gim3&a1qj6m`}5+;eqCgcF9E39 z_*nt8Gtk1M4c^{J1_n@+RJyxWT(wHIL(I!BMY-y#tHct=)(B8yETgwy53}{&S_`$(J6eW` zKChPoeye(lg-u}L;RA>mSxK3)wbnCimdYcq{{!bnc7`b)g;PoxhXngv<9>q7FdtivSzKnWgs?MiWJ$i zsLJ13v$2%VS%BMt77oN9-Zrof?^x1@y;k+R(r;{FLY~r%zoDWSjx7*Z*q#mUvD0E& zkZ_t}I!B2(yg=Jh03(PX%Tol_Qhad53>=G++Th^&_E6_8QN2^VG=wd1S6_WK_ss;L zob2`9+@>O9jHeY~CNZ^MK*up(;(q+_!w(mhvzBwO^0KazRciu%M~|7Zpr|WxAAsw{HskJ zBr40H6pbOWudH;6zP!+KUaF&a{42`quCc6Za&WEDTTDC80nnlNFlPezX8`pH7&-xJ z$MRC25Jk~;Mj04}ERtdH6s7@p{k~q$%7+^IZJ$*zFBoND>Rnb60(`-Q^Z6;txt`hg zg4=@bFLjE}bNgd#!i>zEo7VS#=S=1Nkram>GKk*EEn+gJ1ga$lytH4Fz%QBnC=sh& z=X@#3Wat94P;SPFEo;grv~B@uueGwaiJQ9Zq3!mJ)v?3YZMb1wkQ+uvt>sqMjW&(e zn?Oz0H71rnZ2~EU6q6=Ux1hFF2bxma^Q6{dt$lx6x(SHuN~*R7K%X`G&PE*qZjXO% zEnd4~EvAmvo$vCJNmV?9G6oPM*2ZsrYL1yz^(YmZ)`tnI!vxyx`fAduA;gg7$wBD=HbbOE3do~r<`(%u;Y%qrIra1SFKuw zf<$7J^SJ4TNOc%QGT(^PU1{#F_p zO^l}N6{6PXv^fg25+F%cmDFX)_J$m*NTlLOc~aZhT+vq3E}JrHtUp)W36x`?Lhip- zloi*ed$HhF?1*zQij&r@#had5iERc(oX^MI(M2E)dI> zT$=Of0ML&ZJ!qkd6z%`>{++XCp(v>vi&sm{nyC8G?`}^Pjen_6_ zqD5kBk3IHSP39)9@*88V<$EQ$t1ms3<7Foc3@vC(+oZ<|=pqt;yWv{m3eaJ+Gd86INS0MD z*Aa#5hXKq$9s6JeM?bR$+xHECJu)7i+=a(bfgD>=Ko*g$C%N#($}$?q8@87U1hoxE zK3>y_4w9XZxz;KAAt3_a7qdsalb6q1v#9;g8SnlK`l*aX9HS}Gn8ck9B+El zn;@3k0)@Y6dbi04H+JhK5Qpo~)MfoYcs+K^##BOWBp8*ygrP3G@~qi2{hJ>ro?My8Oe%h8? zu8{Na`?v|~@wsh{<+n3CVyk0e^9{MN zv75*kJO6NuZZ65rLCbY#&Esms;FZ;%aw+@)=WBL;EcPEtvG*Rsm@~Vf0z?_KDg`AI zWya#jSsRY_vmj8nkHI~M6uRbeCr>Zxr;sW-*RrY#G&scoa!f?Es9OBS^D0_d^e zb&AzayFT51^|~O-EgXqq9M!iDyY~%3KP$^RI|LkBre=FRsXd?LcH7*%mfe|LqKjle zX7VTku4@oub2QOjkErB4vfToniUhTkiApryK#Ywlp1*84Zyv5X>nyxjvigZ9aOLX{ z$E6?okhuGD>{?s%^rayNPyx(iP2nOgjlq7HRoC~Izx-t(1WCf+d+@;rg9&A<_}ZpW zlBBJ++KQQ9y+BTHXBBC;jezw>9(iQE*^mXq73F@M<(bA-PGA1f%&;nwB2(jt7lij+ z;%#|_+kjbtW&NAq{3hhS7cG036l5R$=tt3x#TNiQM)6JZ`>g4@WX%G@{F~mq+pJc6 zR#{qig4evy-4ka0l>pue;BOwx(9YxV9DtPomI8PRfV|Lu0dOCHKTp8N2~hiwAU{mg zbgt1|0Gt5eaSyX($i;T7BvbsqyeWP{{|_CX399LuMSZT>d0m-v$0S)DOM8wL%=5NT zd~M$Q=BuMOf3e73BfuLcH?i-Y!*B|x@F`hk;A+vuNIk}Vf9bUQXr*IPySEnPfq1uU(!7S-162P11!FhhYQ_pn63izW7hln z?EQ7c(6VE~*kv;V!26aj#|@wTEM7=?+{CJW>-gjGMML`X_${}hSuSY{4}${^Kgmtd zV$+w6+4cCATW%36pC?sN*xJ@6DZ2B{J5hj04p4nwulJ8`i>IG{8b!(c`Sa-;6Lw$J zWgFnIRqF45|2uyB+ux!H;cu2cm!yO$LZ(lj&d*wi5u4j84~w1XBoPa_ zk5OEg8)d2GZ~;--cK-S2WAWm}C|V>hv`qZSIluS4+!UMMdIP?~^#6QK5`BufB12;h1EI|29@fZ+hxl0Uawm9Ny@ z=6`>(Gd7Rf8JuSTtTOwrH98!MeI*GotI_dJ0F?zaS-FEyr329APoa~yE?HFTp*XU< z9dB+X>oBMeZ)4XMj@zEuNO5EhIO322#17YDB6G4r!Ix^^zO^NM?)D6N`xdkW&B5=|&wZ-Nc(yB+Zc zuo^>wUIJbsat^4pwMk31S#1d!mC=S#yA2|gVW_MwNtPp(`lqFC&m^Qc7^66P*;$bFjwy82fQOLIbE!7rNWe{4B ztbX7DXfOB{J^Dq+!Eb*%zVq>q<6d%^Em8*8tigRZ-iYhW!1lAd?uxG-bPyi>@sANT znL~IK6zMx!xk=Ak$Xj0_?a>ZyGtt z6|zAgDkfl-_HWYHy)4}(xOuO2)Oip_t^@|_lURWPWduz+B9sw`R2vC z9*4j0v_3Y`sc@L+O#t=TXP-ST`D-Q3kG$hQ`q7UzCTFb=2!=RP_p&vgZ#3HvGJ1?zJ`un_0XWqxzsu-ZX8XAS1}C83OIOPBk@{aOH2{|Y z`0pr+&HykeP1B0e4geMFTmLNpw_t2?9)Qo=S=A-xMS2T>zXJHW*>;?BhATVQtv{Do zHfYOZIreozd9BKMEX=e#Cdo>(!*$5AvU5CHs1p_qcG^5yu=_}agZ3N5)Ltb7~nOwwI+(M9;wr#^)uMF6dkkO>*tO*h?yRVegi;Tc|TcCCLrVlsQpK_-hL9r$rk`z7DZ9Tyclhpm%My$GTU}F z+bX8)kpD|*wzqjv1W>=lY&$9^zzlWL%}RUaO~|sz@w)_&E9!SG8*x)qabitE3yV?4D^W+vd{^8& z?NYf#mo&&CEHB5^+JH*|(zYZD=gWbyYN`fVhnqAXP*SRYH&*rA2Q@s~KZxN{gg;E} z#xik1Zk8~$)LI|cYuhYsm?E|Hj({XpU^?Dl`HqYhA*pU(+V-3PT1yJmRPEGI7Sfmi zZDMtsBacK>DxnDJU$zWumo7y&O&~x$#FDahz9*iDJHGJ^eD;lR#AgkV?j_4+ zUYR?8KDK`Kt8t$JbpP|6@8BWhW}J+UqDtAaO2pNMD0bzI41rqi6J1t{=jD1Vv47%v zEXP{wE4%4&=_CC0wBaKb7N)OZMPM0Eb*8Oo@L#| zC>sI;x}HT?XoD8EJMOpx7hG^bVW9Tg-~Kj#&wN0|H@;vAdaUiZR{ z*u?uxbn=@IFO8Q{lQ(pkZ?)e@c^D&bXVAhs8lCiZ0Q$01dr&E*Y~ z5>XY!1lH(=3}>#xUM-~BG0FaRSJi$nW9>t{TU^uQ{_ zs4L=))#pjT1q&8nv&}X`Ua`!@42(HWEi>e!z5fk2+)xOpmFo~URI$FYE3Z~P2)_UR z`wIcJA_pFLAg(v}(Ms6T7ykBWOKzcQeHdU^U@wykLiAJwsAY?@3xs5)a^YtvI5~3Y zp@*UmAz5=nnui z%>U~KfY)W&Y^$4kH%uMtW_v@{r36qn%MDpil0??!7}18&5dgIbxV1sbrlBTU;l&pQ zzMnt=qKpP&G1g%B{{v<1ZY`zk!$7$WsP%CSsP+G4UF}mf%ZJ(V-GlZww=>(;0eIR0 z%zNTE?gfy?<%K&W-Y=A2H_I}exlg;)Gk+%yL^%A7{pjp&0SN)dm~zL0K&V|$>Jff^ zYcIb4Y#G1mY9f(yA;MP82(xE2fF|cz(eB9FCD_GetjdzAPg9M+6SBrOY*_=)4?ytx zh|z}q>56r;?J(K`DpEzG4YUoAEi6M7!|F>=u_ecu*2!?(qRVR$8MEv^s*b6*_fzL- zQp{|m&Xo|DPN3>-L2#ms)SWab5to63pBrMKakZzN zcA9`%ZK)D<#`gMz2kAu#11BbE5)0+A1xz;0o;@3L=FGt}&pe|nd0qx;7s%#G;9%Ug zq!E&M<|1V2(xrI(@yEHnoE{DvAsnjYd|zcBaq&OPu&ztoxwzLCCGuNWU3C?1zWHXH zdg`eg8&B(6XA(QMl+v-@lw%?5xZcM5IJa@BC*!ONDCQJf%A)Q~$;dAB-uuh-x4#|a zyJ73I-L}7}yQq(-)ir^j&#AAYzgn#x4B);A=wv~yY0QaMcxhXUlmE-!cR*WGRBM0T zC*3%aFhd5(Ny#9>0|Z1sF`yuVD5i%w=U+vi5uXo`XF%~Of&oww1VK@PWF#laX&8nH zOt|Uf{%bF*7khoHs=Dt?pMk-<@7=4q`*f(TPW9E^``cD0@cfB9bQ=OV2f&OdicSIW zWdIL5Uc3_5e4)_;%yiaEc|L&u1TbQLOF^{@a1R6cEPzo<=gzCDLHSv$B>|?ev&kFXlY13KX~0{wFN3t=etIA?rn0D@jn6=@w9` z0$WyF*mJCoy9aA%l%zp`q$BNNN_AqDl3ZhHGkbfKp0n0=$Boudj1akX0}+OhpiDrq zO>W9;oNwB5t^-)xSXHWngD6U#GM3u(cH@-EEh4QdLiRKk+RIKp86wvjtF5>ZANtXc zq9~a@XAWNZk&j^O0}sThChoX3GNPO#+#NH^UYv_vU90Vct(2AYm}8E?3sGKcT*H6< z^Phv=1~~*I{q3fkZjxNBg#havcia)ef_&?(x9WE~gSYg0rSqA&-U}4pam59^5Kt?! z&p!Kzdn$uKQ89=X-03TR4U80wO2}WZChr#Da)la%TlZF)#kU80VGrI z$5S#TD<@Z|=_LS;gI~rV9=uVsmbLbJt;p8$`*hAx?h634ECBwBfNKW9`dHeHTU)HP z#aj;u)e_*qR)jtG8Y6dLDf0(EUh>yr{AN*vzw~twDRjD9GsbRvjH-OIo;)|;--!V! zCbY-_t?g@b+3Sh>v>^Tc=w{JMz-g3(=9CPS( z|K`rSm7*DtIc`;}EGsN^kjQ)9^B$ag?z#G2Z)J%0{#7AqqFzq~c00Dp;7+zlK^9+U-Y4%nM24Cf zTW^W4L_@C4AuF#d1doBRtA0+9&&OvW%d9BxkG~6|POlx3iu9MMEjcb(Z+n>BLd|CL zHgR5JodFp8oX z0+8R<8UEnTyG|TAC~n7HC}jkpl)&X3_w?ac^Go=%*@p(SFK?D`z>F?lqAkENp%V~7 z0fSv$uIdC27-lQ&QXpvqT~TXFO)Rr-sR=|Yj8=h86KE-r*pCFm-3VR8VDhC%fz6Jc z9-|aGO#mR5<+5596VQdKc0==7kukbsj}__T=onoE3~N?J)4_Q(iy+-yYkfT~B)ZDN@|@YAD@#%FH00du$B8b!*E zChqM(W2L$L|NTF-0d%?wl+uVi0VoEx-dx+SdChC^Vi300{_uxClyldXY+qcbq&O)G z)QbDFSi!`V)nz62aVhY0;W4$kE^MhybJdDfP+~Y&Rkqx6OB{Ug!Q$TP3*RAd>uv+K zYO=*vSdR}l-~bdLVy%~)$qXFW&A$)}y0&gIU`U0nl@edOgJE3Xbkj}oJPHqp=(h4- zR|fO>2+XqDI%q{z5{lX8dTW4A15=sApn5r5k9~Cz4c3#b(zbqiEb97MbGbPC@}2AY zGoaSXQts}RVyF4 z>n`I240$W^rB$GIbS%czHx1(ES{M37w|P6l;oTUAzH$UnmE4D=1R=eMfh)(>axf)t zL(@&G6BeYlfkw;Bb^!roV@8((Sk?p@D}ZEN>XCw_G_7rfi3k`oWrr-M4QmBlV)YpS zivWx$R^yTayQ8*TVb@u1*I!|mFBP@Rm&rcWHZ4aMr2%zmG>O%qt$UvZK`9$UdR|+i ziRqm#PT6QC&X_$NKdMf{r5M0$bkGEVNP)yI&};)OQ#Op&I|5|2i?yCEMq*J*47HX3 zS``+ZkjHvUu;$o$q|db)8(6Vjqzd{Z9s;M3d4ylC2v>GVg9 z+kdGb7WHedy;gF!y7JnKa$eLBxX8^YtbwaNCvV=@k&zLJuPr`*?d0nm0*D+>%hx*u zDj5vw-&upemvi4TU}ivSud8SXWV1I6#jJV;u)@Tqt{l5s+11-=QD#^6H0QCLkG$h$ zn)fTq^s%{a={`6nnk~1ojsdpm{!$nH^w?>P^6QN@jJAy4Wpu+SP&*}4vSy38`0YGx z+O+G8zS%tJB~yOdEc?DGPaYl~K55(Xz{$JrI*wXj0&w2hQaIQ#mD}&>$ED>C7R3ot z*{TV=tzN>b_aDLZX&sfGhb^?CWNKq@&D)B^1d@3<6!J7>w*}Ni?V{xtG_FX2V+UxA zTbEj8~Axy4%^=w3fRs?3%iatuzsVByNCPm>-A^g^f|L|`Z_bwhy=8z;{mq45=9s-N@39` zIDRyO95=!+x++9kRHZ>u=hGx&DA6(7t}~1UXxI0?7e&e9`|rm*(-DoeyR%}g=36)} zuub?LDg#(*2xiWB)0@y~w^6hl`_rFd&dx7Gmp~e;h!YHX2zZ38cW`hJFE)`BFPm?^ zIXDherykJ0&V_GBPt<{)tu15qbvWXvC-exYPEAs|M!hk zF||`NB`*x1It<{40M-JK2GQ$Sf|d&PJ0XtaKC{j_0|Nt3%4n5Qh$2a_Q>TQTUN)f^ zhg}Rv^qT^<9iw;tvkx~{<#7Lc0ll;p zLnKmic$-^QChO{yR@hbJ6eP)vT|Qx#FGq~ANakZKv%4ghVFhp$$RrZxu6|(=lW|9F zo5*i=I-+zzHM0Jd(^I5}5AAiw(1hj8rozmFoNIxv9u{o!}GfB*gI@iZ`BzftsLO>!c+d zL+gBob*$;xXP*s8T_q`bR)a7g;%Ogn<#$gA*aj_{x=rjngD-FVt6kTX0*yhXlWCaG z*RGe&=kbVO3$6}_(1c_%&F90eyuSVUVrPAE`kB{&kHdpc>@F|UVy%_)5>Eoo(XAPt zZ91em01j2p_v?p-h6LDN2;ik=*_{BADNF5?Oi4Z<8X1jqtoLeTMZL-B4Q5&_tk)R5 z+Du<*%Dsj@51`1et($g_@=bZLO_i{fQQICnieBtyrCNn+)tR)i)|ID7}OP z=`lq+`uJ+TsjS`H#+w)m=4J)DxprDD+-}mgL`3XWqT9I_(seu@vAVuD{@@3=N!W{czm6XX>w~-dkyZQLzkK?@a&MP!+%J?vd?ASN1o#(gwor6@Pi-3z9zj^5h8;c!Ypjt zfZHjXk#_RJ#}f5k8@3RNe9Dm1J^JXQs}s;NV=h}M8HBmcm!C&px+ezpLHA#-qgCxf zOZ9YHCw2IM-e0<%sJ7TUgn>TSN!Nvc<8xq3uMdoC3n_z92J>0@t9`^&+MU@sP@v~| zfFK38sXMZ<%<6VX!)D4x&ole^KU3Zg;1n~xAApyeau9%kV!-GI0KT6j z$y#Rm*f@@NGSi<|Sf(Y`R$Cq{48@d$J48&t9TNRpknyoEiBPL`pF>LtA*e{H6*d(u zSXjpVxC@b2G)j0~ImR1ay&P-JYNzWF>oNJPCXC7yY5|i~ksqpPiHN5_Alx!430RZO zs){AJVS#K-SvLm&lofayLm8zgLCwZ?*6jtWahe`&aV0XNmYuH>u~bcgR4YQ@`C$!)inZ_Ntw3s=T*NXlrd9^ZLqwC59U8%DEUd>){=YLR zdDb@Wk=qJrEST9>tY~5ZV|HVX&En1O8dE(c^cqSau~I zw=kD%Axshr@X>}y>=|>vdOH0f>w4k9guhk%-4c)|F~I^xi;%+(I}CEae*NoT*UYwQ zoxJgxvJS`9rY`dmOIwtjbIv(<_~D0L*M^Cl0y%W^3%lKlc%EBtiX*Y8i+j7oK#PTJ zHHpjhHpEz+Mg9~bJYoX8Jn3p&`{SIf=`neKE_Y_~q#<`+Uy{2x7&OOfT+j~=Gp(Q zS?9|J*uE9O?NgT8DfxE+tVbEW)#!~z|8A|Rmm0mu=x@#ZZ=xu=7r<)(>;>RX865(! z6M)?X3nodjzgg#COIKd;0aGRH3gdfu1{2UPD0Q)DQAP60Dsm8WDiA9A?D8@e zMhOmXlyS^3@Rrvu!&)=j79G8=!}k&=cl$0k%Fd zVwBKnB{<{F$KYubXIr$q$ymML{`R-CTV|@h!8W#%yjWe2nFTplnv8VWqD6}!*3}|K zfbE4BUML`2$BFVaW2MetVd7*|W*5sp{NWF{@4ov`lnBAmTi^Ot=edh&(WFp(f6E}n z>8GDwn2WfOFP(bosoEOK(+olgbQVY4<;!``;5XHK?zsnFFeGxl7PcI-1(GC_1dN1< zz&QS$)9>g~*GB^?wzT`Kl?)J_R&>2Tw!&HoZKtOhC~Hfr%lfU4$$duOKH2i`Tc0iP zzGu#r|Cg=9&fK?Rm9_QYv`+Gyuf9^U?rD~vYjj(qx0v~5#@f56udnYZqhFk|)K1Bo z4qV?3;3JMccGtQ9$Mk^+eMAQ7MVl1|!s6OCnCDJUGkExWse|qRK8OSM86~19_Gu-W z-8daJj<8M=;jJ5VamWE9;>!G7Z@=SVPma|72`F>SE|{69lPaxKQuAaL?v4V2+gbpg zu-4fzyV?w8>9StR>ab-zPyuFiBSh#TwWwCq>2=vkOD?$;`Ar?8t1PE6;r_O=thR{| z8p;CLqLAUfv`*wU+_k?|*%+?&wLV(dVyubVr}bf=-9;Y~Wg#}Itk^BJ-;Q&-7-=hO zatslb>zB^6E~*9&<`@g@>wfn;RQmc*r2Ngq(lr(=fR35gR_xfrqt-2=UFf#1B1Q!f zB73LJAE;qLt%haQGM1J~xZ~aLh5#Bvgn=SOEME^9zVQ?OMES*qbgi{ZmsOL>dVy{O5wxS%&fK$4W_6PV8qsA zwyJ8;*H#lYX(iD>jnf!~;$6jh>ASz!0xjySI||OU0k*FKFeVby- ze5q}wccmMhT_o}(yUs;Y!7ttn39XweA@`sA+9*F*1(G2g@bXbG;}MfXvG1wu>O(uU z@bcZqC=QlTo0KKaZ_E2v0G4BIL9E82)f5~PaIUD}QKQ|qWzDsg*>QDx{dTqSbT~9XHC{R_fTXazU0dN>y2UV+EEg zq6%y!wj2d8NW@A|=R6xNY(3V%twU7|v^(fWqR6imqpwx4L09~SrbW2u?$l0{VF-ahbw4+u~y#JZ$AGGbv8tF6R>@;i~;+jv@HY5N?54J%fx z5SK3y6GmQE^xYY$nmC9 zk9xh1Z+`Qe_}=%vhayD=Hoo$euRvUpPde!&Ng>1SEA!OREJoN(QqQO7&mGpk8PYR} zuRZqIV+*@yKVsbS1%Qc#@v5t?QXqhGV=4=t#3aiz^j=|3FHq#!JnO8p*fpC8d_w6{ zdID@UFyp}&wi?UtLP)mbjyvKdFL?=iDBLbSfXMF(CcnxeNMpdoAzkcBtJmjcp-?bA z&+BMcV+O2Df)orZZw{1Q*9_W#Gsti))CPcI6 z$u8ZpJbefIz_yDCTJ+`gZQ04}`=@5TmYHrE{WE|kr$FtLh!p)%Un`2DUjx{JEUg;> zm}zg^{v574lL4QhSXbXe&)YabG4DSdbRV|drgBMN8%Tle-lG7N&nlVtnBZxToyRe4 zxI?BXvbxgt78Mep<#<{Gw8RjkK(DHgLWW(7jFtf11ZeAAr(_YW+T|-CWxA}42P+jk zQjIWsBtlnqsG6if_`5@=9#b4@mq6`=HZZH|O4-pCUa|nn@>qL_tJv9^Ei1~}DKf6M zQ=rR&v<_a&EGNw0ktA94gHHSht!?uz4&KfWjFhJN##-(ddy`Endl zaV3>&$Q|rnSZkf%Hty7>%f9rbFNwuku0^4-&cFD@FCgdrdlQ-<=bq*W*1%l79l1WfkUkyn>?76__T*C)SYK+&w*$Cv3e--?s*o|A zCSWy55}n>=OIhZ)k$pgq#W~`WAmOw2h9gd+;jB;QJo?R|Q28TUO=!@{Ly9JI?QX7_bqMQu-}&yGT{ zEo)Kk$}ETT>eEbFi_=~7;~zC(<5q$aTBrd4kuS$q8|siH1!QZ=1-L1{Q8PjBhttET zZTR=91>jJ>wUo8APXXY%0^wz=A|18Ab~vL&{Pj>t`%lE@OD3jWEjq+Q>}zT5kUFkMZ>N*P}`n*^0WBpj@?0ox?VYFfel_ zR$1n*i{%6T|FT?A>{2Qza7sxvq!TZ(l}86I zh!LV7A>$GEOko7JDJWdlfl!(Ww!Vd|Bs@AVfJZ=WA#t^0d9}cw-_c&nkyuj&SP3yv zFJ!&-*2BAvd%CE#k_)&KLMh!Tl>4TL0T8FPoKuFd6;M>Hq%y#<-FDldND%@lQIVxf zm*Vcb@5cD}I0W==xZ#F{=1=B0+T)HpPCOiZIcY`xuC&~)lNY|%89eFh;{~?5?*IJf zKgIej?(MzE7U6rgePEY?q-f}wcUj}|hIaA(eIQEjllK)m?y9g|yK>>O)jNx^oUN5X zYcPqQlqo!5pttc^zZv{%5;$+@3tNR{8@77e-@Q40^`L;|2Vl_7=Q9()`DXpS0NgS~ z6g4Gzf$Yvk&oS268v)!0;Ppw8>|zO-_BGQ7P6E)nM%SF_Do9)}-@MbIWBM45wT9f4 zGGk?URQ{Q`i^WSzK$nxOs?wnZbP1$dO*}EOjPz`|bhLy&UN?-BuNuak5A|W&jT)Fe zEC5=AR-zcL+hr=TYcgbat5WbpYSl3SBb3jzg9;w1RPfJQgsqwh611RCqeWKQk|*VE zM=>79DXTH1+DTNMYHC?TF0CcXPur(lmD@@iQfd$=^Y%QKk&#=ZWI^pV<1I|@Bp5)~ zf_&onBG3&2x1#G5WLeqJuIW2A)RN^3r+SRuBYM#TeJx1`q;-l<|J83r}c6Hz(UkP z;sm$f`qsDb_rL#Lz#X5T>wNVz&%0Fr#?umuT-3KoTvw?b$V%X0ynVm%40zyy2UgcN z6k8c@2N`e>%c$r92OJ>rxP=UU%$+-z-8}WYH_eQ=W54sA?}S*EdnGex&cr_Z?1NXC z_sZ5=Z{0IMJ25c-4K%{R+agU9{}E z=boXy5rYX=-FO>){%p1O0es(J17Ev5Ov}DHGg#)5Exddjz08-c$Ezf+er2Y&APH|9 z0>hy?dh-;EaC#w|CQDSTx8jIaeGp7b`AnQ(@v{{LSjpwLO-w`#SRrMGc0Ei(R>#I;{O!g; z{NmynIBijkO}a4-*>e;-zN8LB1Y&Jzms_?VRkw;MhJjM;IWSpO;IBnYzJn>S6)SDu zzuIieW`YPU3qA=ut184+p)q=@1Y+X={x6epysKhIp^jbA>rx)uQPmVRyWcUznA{;S zJ%}#WYj?0=qk|!I)VUd@%VbOEc*h*m8GfG^ zT~Kj{RW8jkUKVf z-Y!7PfS=pO31(B3V_t78^F@e&vUTi$23d}S;6|)^?=UX)&p!Js)^yo>@4da(jK7f_ zTPm#3(uU&dx~7VBpv6u1=9_P3%UQ^Z=*@B z`o7W63zMzo86XNhYkFNi*SrP{j*ZvLLVYwoHUlIcK+xwOtP_bd|FMid?t|;fOw0^^85CO}Dd1CpZCY}E-L%x#CEZq*vs=DzK!h2pHM6p)uJ4wnJZZ}P z_}>r2?g`)<0J_#~cp8AcGJv4VUq2KB5X$rFU7k~Tdp*y;=Z*Ku3yOU?_cGUG8BQV$ z)jEI%pb?qrT4bICyA)dm1(=dB`IDU1&3E1|Z98xV5i>2Wt`LwuSk)i>i&N9aGpIlrI&E zxG7fCk@AeL$@&2!c2!k9Qe;ydwVw&KzcPbj8Z)TdbBfgbasWfhMR~%mGZP)ie+6CJ zj7AlB|zHHn8Vyr)zc^bp6`0oaVPGFlX$`U;c7P zOrRdE)~;ntNPEg`@AA9UE+G8QUB*!KzZMOXR&wtjj zhpaxUfNl@{9_BV;av(h-FR5k78n$vGZ7puJ5+lk4Nle1Sq%HI2&BMFi^)88nrM6qM zL@c4=(yfI7h;AEpr5B5}+&^cWaR&PP`>`g8+)FZ`bmf&-YQV^Vz;!QZ)%UmDm-0*$ z6;tc14})(e7GoeMmT2+BxagvbSK2*59BLo6x-$00#q5NBg%bx~;ZGQUruq?Qfi0 zX4#4oesk#z{P(>ze6z2G2g_Z&t6s&cb{@s%bDAoFD}n0RVNx7Vk%dBsgFv|qR8@)_ zQN{9Wy_w4x!ys-O_*VzyWes2e4cQ!RyXy&Mv0ZL;1%SG?mMXHNhN=b>=8jY~*+N@U zU=%7&cTDY{!<=KXAU3UzO11oQS)Xq)SLOv|`tb9>R$xAM$lccmbXnOg*R?ONcY)QcdU@kcZJTKeseDVM^jg#TJ+6VO zeV5Ciii8nJDQxz#PdSEGSthF8h0{SaCm@#J`B~w*b3HYXj*Xb|Y@?q5@M?36>J+G5 zGr?=s0M;*>^1G(|meH@uJb=GPQS{yOV@F-*opI6 zY(wC>04B*`9sTnhNUw-*Hi;svJ-e-~opu8XCXI;xmR*WP;b17XqQUK55A@;eKhD7a zjR2Qa+bBu=-FOuT?KFz5)^Er@wW^duqH5oq$h4#CI|f9i>{qdoHD!S-L9~P=7{>3X zm+(xrgiYHC_LyivKy4F1gRptS0=f|k5=Uj3(t4@{YNd?HvRe@)z$+T7Q)I7e5Q$TX zz*nSPkw=sfyFQT%>TzfaQ;CDp*4TLy&m>{ z5v5d3ARaVO%&o{qhRL>n`t%~>%zQ4J-X!;WS}aCF##FF~i>)vs3kxd8)rzH(I-8jy zAWoQreN3iOYGt=$2K?MkLAN(4#obj>%M>7T?lPF*4KLviE4xwu)x>olWbR2x#j~ae zr#ISs^Ue7jU0~kX7HJ!a#a3M1#Z%#hE0I{`u$Y>&f>ZKd)YZtEa^+cO}IY zL&)I@Y;_W47FbuOUVfAF6)h6fa=(Xx9=qtez);AoIEyee1j@3AkbJ4em;{MQqqzR` zTfVR~2DmKtJ?#X&Bn;Mlb@yGXAb8h)*K}F>yMS3K)BSp5 zVA+M(0$3?!`&4C_l<7W0WMw?4tFPte08TdRT>{`y0k}p7r$Frs-;H<&qaQXv_QWJf zE(359fR9E|^eLlXFe>vqcmSC%ro{gu%8q%+d?7IiT}8>eulxWvTzA?>D2-5fn;lza zY_?GoF|!=ADGDi?Q6*brI}B!3JgzOrCt_Ui*J=31ZT&d4+QjwM4n+29mhm4i8^d-R z*VXzIyciS7RID_zs{CZTf{m?L^)vv33Q*P{yNIw1L%3|Xg!}tT5ZQS=!E8*Rl^TiF zHc-~ut^&DZR##Z?SC>-9-)i8gu>FwKi2!Ou9^TxnO*;(&wNgTr9WtQTRNdMt2DFMU zW}*dcZL6SE zxv>H`E#j{N8Ns2!Q>xlMS$TSc37f389PG$7vi3qmxgn1rZ88mr6Lb|wgYxKZsCsln z^;ku}H^6`&< zoZss~_EL6p6Op)5al@4u<~2pw;>NyXBnt zxeMK+40M9+xQfE{q4+;9P;ptCo$ECk4TyJ!3_z@^%$hYzn7L*D8hCTNg^7}~U5`UX z311)5$E3{r3b}4Gz{>K@^SMX+QrPf$=5Zz1BxYVp*u+9{!vKF2ie zj)-M2mUU#glrrzMLNi#^?(ufoRZkb$6I=gz;76Z>C=YIFZ>5kc`MO3=G5U}J;4hs5 zwW}Y=)$RIA|2=)=y9yUK?xAXangg9bFOKyJw~&ZM7xP zOVaHCmtQ}GZ(lu#AI5E5S?eG@@15Hv99{(u+-+1HTT{-evT9LVRn>_DKbs1PMLeOvoZC6un&<#;F9?_P01%?|cHg~N(_CRHD5Nnc*FJ6o* z41v#?#-(?$Avr3m^X!trzwL1b=&I`-LvLS3ZD2Y!-Fq(-Eqj=@CQp=5Ix;7~laIHg zGa)Gqyh%zJVQUtP)nsMi!i5q`>VNl#-=o=S%)$gMIwrDESJ(aa+YfT>*m5GOJLn9C zmX*;+w?=nwm9WQFV?axjKoN~A2(U(^v8Y;y z;%e*l2*3Nwbo}_S3Vt)t!K0Pu+I)5r;|+~64%>4CwI~6)3bjQXkg8pd6}Z)4JU#xH zDe6F{0W@W|M5@#WppGi;u9Ywv|En&WniV&0HV~l=?ONO2qBJ^E-C^wt zO+->L#n3i%(~@@dwp^wFmtt+ZL>N7$4DXe+{^X_%Vq9)0@IF`EY}Wv3)$6#+FaV!p zEQy!C>l+`*qegkKGo1UI*I!Rbro|9fT=*wSs&B z((ilU`yly!&pPWY83gg=jMklJO+3T*99!NP*sm%hHvuO)Ho2z;JRHJ6$!=Fre64_5 z?e@$-+ST9Dahg7>Ew!yWSF)m#M+LWouPuWi6G|93Wev>naTw6*>&(|FGlwjLWENhB zr+NSOeoynh`iw@tfd*z2=D`UmL-p4&!=ZFQ+BKTppIw7ayq$h_GecfPR4!aSpz!*k zp`op(Qu-7FV9TaacS?C+k|bFdz&QZsG7wVYqww}wPF;Z1ca!H$S;On_$C0-wGR`$z z$H@z~6_o-!D|p4hqZk5cyU3I#`$A!#8PR?u?d2XOu%Wm00)a zSvBxg`>rc1wgTie zTQ-4a8|WxYXrKM*anx|zKnbZlQ%cZ92{lBfOwd;OTRHv z`xGD&U}7?9&~!%wR3>~mOXG7T<;%-I80KC%$++I zMaWBE`cfQdo|Vflzns4}TyJM8B4)XkPMgGTN-XoYzx{1Un+vIw#9m9C*IREr0hBKo z7i4Qub=|kQysr5AXwV^qTB1UvBtT!Jh|8)BOtGsr zzvH;?=L2(WRb;Crrw9wh#AfA*%}ifI5^@m^Sp#+bc^g-snsrk;I$1!PJNpQy!qOI7TSo@B={d-9wxVkQo7O!oH6C*1ZRTliGi{~Sb&*o!Q&XUJ za^N)ru#suFHh`9C$flVt0XPf5p`jpf`OO1tgX>$#75_yNIwsdCZ>(+TI4c8M>4Bm3 zvX8+JlK1xtfE}U|Ha0*u1$Uco(ZE&<`tV4#ojWHkx7o|uWxTepgnhSO4m63us7uI= z^2BQQW1X~>W&XknF1&IY{t$O@V}Al!N1yL5tr%~d*~QLVPAK%HO`F7e6j7Y6MxBf> ztxs-Z>s3{YD*(n(!U!t=vKreL&j=D+KTyVj<9!&w1e&TUbuu8w)D$2KUca(z)?{9k zQtA$HJf_vIa%V0R0MqMpK3i?&?Gl4B)c#_!IM>M<8`161w%QU^z*g3M%#foz^rIi4 zog`>Qk!^O$Yilo@1;%!c#NoltV;rFNPxLz7F2)xuz=#2|WAo;rGd>R8UXi^ADyq%8 zblsSoD^k~dK&5K#sMy&Ws<>m?Aa0s943RjBr1L9)!$*8aofeib$ikjtNXQ*5lvmTsJjyP0 zx^w%nk9|x)Viv)mw`0$3vtq>xS8iN#DGZY%in80X%u5{b6<1uL&q;FS3c-*7Tw$q} zZS#PVJPfP6ZHO>MVorUXbAARgGZe5@S9cC2{ZGmiE$1vGRiXl_XV0FE$;h+MJ}dhZ z04vY4JTpF`A18CIC|jENnbjR>oKo!D+IpDf0mwG3&G zd}O4A|NikTd}m-BB3bdee4JUG2p_BW3Tt4Q|=>Mu227faSnM19%!h zok*GQ!642a>c`CkF?5>^B)~@(x3LbEV**{&72(r3#m<(L5jj@P(P!O@r`zcvQL+Ha zy8RTx+LDsJuZf_juHtB83)BV(7&cUsbjT%n&_N_sRxa5CDumh|&$`#zQUULh0`YZG zeTkI&?o!04qKotxRUNiX?!GY@-}!ftlK|8?mXt>1Gyt`2Roy~R>&0}BG}V1$W3UzL zbqR7-f1fpkdxrjetKQDTKQZLv%*+hjF_QspDy_u8{$mh`sIr6${}25UmJ$583T_HORdie zNWdX@&OvXdRHZ{XW5x`uW%6kYz!eqG2kBfcS+Yb_fNVM~sh#+Fa*`C;(#K-0-7!N% zS^C~{-FKV^n(ukna~UM^;f}ohJs2nI6MjEf4G}MKeYlS7#;upR0A?tZ%oV1fK~wNN zxqeod_(_8)ZVUY!a0)U8k$gOMnPy<+Vh!iiJ^W1i+|Rjf_&(Oh&$i5#8RTN%p1O-mD3B!b{2F>$spUw)@+w?sw8fk6uhQDJ>7rD9QU(E zzf+pRuHFyQ&j6eU;7ev&BKAKEV0YKZGD(pxx%u3{^5@)InR-mdYMKSEC-tJ|eS{@! z{ob=##%s2(W8JmdNTt@7VE!Y0xMd>2NSwGV$KFx-zAmtDtBhlIoWK@y8wvpsvv5pA zOl+l%RY|7A8}1yyX?G0bqP`9uuDUJuyVoNewtfpQ+q|yKa30eg$OPH6+9vcV<_RD7{s|VIGzP)MS$#P<5m|j+R&lKb%ncQPnfSr#e&*C3vBxp z=C0`VDgACoom!n-j3c@6yDZar$x^s}o;cd@GLf9W`&eOp z*EFkbTpdUksAlzno)DnUOQsW2AJAZRUAwGxLtviH#p?x->G{QVU@MJyIS3iqlg69l zpa1+PZZquXx88aygh^Q}vClm7j9Am9v&qNEY6Cu>um={q{N^9T@TFbh_VHQRv~nCR zTQOO9AK~l8^Wo=(rx|qc{T3pR^9_WAj>+5k7?XXmnO=})mCu9f?Io%50XPw7Taobk zzVAtBU7qGPbg{T|d@kQ#lXbiH-oMPGYyqu{Jc`eU_bF}27HcP1C()ptt>!PI6BEMtwWj>d}xancHeT`9z-WQWq_+t z1PBGhYTA}kr%SJ$hMzoA#g&7=k`mkstx zZBfvr8o~Di1d$AonI}yJ&xc4t7_fzaOuk&N;m{9}EMVm8Jo?^c+zHEL$zw3YYd@WqhU>3iMuV2X)PHtDNE&wIU*1J4e zE%ZL~SYKTp3m$Jc-cNRFB#|6$*uGd`Q7>5bNa!6Kie(R_qw@8!83^VfaOHtrj^E|= z`Q0AkBk);mecm)WPpwQdNu4O4kFQO1j4_9}$o4M7Fhm^rY-g@#mO@>i21Uh+n5PeTag+BbHzYo_AmAxJBMjT;I8<^Hu4suVYXsxkqn0Z|QT z2`IWwv#o)$0=4CIeWej+SaN{gNFB4wWJoE1C1BT=S~wNhu4{0snx8eH7~r-B+yt&8 zZUZLXVgN5nR^2KA*)oCOiYS3*kdr}+;+XBcj-A%lT6-?BDXX}3`Vj7%IgE%vjSILk zW1^k*0k^zN>RCXE_o+v$eKAv6mfSFC2@4<3XWh%P^!hq6KETTHg8X}kAAtc6Yu4`} zt3b$&IRr-dym(&>M6y6e__r_{a~K43`|y6l#5XRcSq5C8Z*$1YfVc6tRXC-TK3*13 zCjgoq2hZDEw?^On?gp-OZ}7VOUeMMpB|%rwpoD>uFAmd}#)*MSp7#{5!~2jjR7VEH zS$)H-7*kdH&NPni&^-Y))r4DbJF`yV`5#; zPRMw}Icjx1HTdW2!Pi92LANh&o0at?n8C%m9m_d>0YLNL4b)1*_L)X}zjY~oqiK}& z0c-$ZV*s0(`7Ho!1z=kMgIQKi`aKL93y_RaU!Pl1URPm%oKiNhC$QO*bLV=o^7?#| zIIP)^efJwhOg^Wj7#JIk@!-M|o{T%e5wP{TF<#lM;#~&N9|$B2DD5v zO{ZQWeBVlsP3tJoNY+mxlv2&qQ6ROdET0KAbwjP!)gUmPr|E{$j8Ddi!E=*>IaOI zzn4UVfR&Zoi-bX!Yu*?8?E{C|_kY-R*cYah<-X|y>7jd(+mmC|H5ldd^;zsZ^$*|s zR$T);d5PWl9?6QO^<5J-s4xf#y20|il5n3l+Z{K{y;)Spo%*)dKu$E|F7In6zV_@9 zls8^Id<<^0Y?tkj2ZN5+W*2vQk9$d}d;?fPegWN{8sOTJ^V2#FPdu<=Q~qc$uG?Q9 zpW}x4+2(K7Njm7R{2~Xk``B36Hh^6KtmgrJQsyCQ3V}S|M|kB^*@UeJd1G-`i2%yc zUcOFQ2<)omLCMS3ocp6FGL%FZ9PFZ0RW7>9tn||DCvf;(vvGH+g%P;hYUfrNZ|c-= z!0sd1Zu1Es(bTr&-^nJlRP;6xnHB;3<@#Zq^;8*`4s;Ml)Ul&Dip`q9Msr&ju66Bs zIB0H5ghoVSHd|64sbVmavfThi0X%CLPoRXyFpTr3MOajhP>SQ={q{&LLW~L`n01k$ z!u(h%@Kgj#gSMPOWK3nNZBfGPiCQLFVYg;VBNKbTaM{z06%F?EIut9~Qqz$Fce4&Y z7}E`Vs0Ozk4G7bF+fK`}ZhDW?SVJPpp6jXF{pi~)86U@8CS6I5w&8J=m`I`K9&rSw z@3hl%AU#Q>PPUDWs(A*!UAo2Eh>#e4rmu!gE6*ioXVu}7fF!tVe-+iiMB>A}C zj9Ig0xxgE<276p1^Aq#&I#L(Of69!fw$z;#W+3MMO8O;9F~jZTB-bIy13-P}?)r|c z>fp84s`VpbK5w@n^KX3P8-@8g>$~Qf&zn-j>qh^WN!@kPMHdD4$pcPukH7Y{uVv83 z--LkmJAXJ9-}j>Dop&B2##fdLL$joP5((79_e`>6{hoI~$p->MA!E#5&fB}JiC&<0 z!37rxaTftXH?f#VAhtN~a~HBIbH6ae&K+*+a7s*9>~z=-IQx9^dn069*?sQr+G5LA zetsAD<`t-Ywb2(zUL_RySawTstq*MXxIjw7<;tK_>cY)4nJTi)>*4% z4@@Y7EwW&98JYhGgkEve5PmkVVgPNIJAclO)%Hzbn~m#)tjKa4DZf|HZyisaU`uO) z>vVK1ZH&h-4VMkYc%Uyv>>z^yvnc|2yc%Invy2W}=#s^?qC$=bEOF5=fU2D?>uOW1 zCtC+Qlo?6NHZ9}R=S)UjYPzaj-lr+i$M9lb?O67fbVo~WVb?oH(!1A)%faHzl#0#+Yh~#1q&8HfTZpO2&g>yr3_r7@K|Nig)kP<6NyGhR6efQlL zt6SvQ7hZTFfg~dPp+Ol*H6#R4a<5DJqtz`kpp$~yn{U1uuY29=WI$<(97c(xQ(C-u zv9wWE+>VV(THQ-Ffr$?P z!Y&unc@`mSh)LVmXLrSMbDe@7B|5c_T`uoC&8p7#4e!f0xYOaxhVdF~h27EU#pa~0 zG$(uc2}b`Dzy|?*06;Bc^foK!R486G??`agOM@kJWAbrBBYmrqM#s0`Nu6i* zNLEr^b&dDD8{YFCT=}-Qp*1$vTi{)<<3IoNKOvUdG$-HJzVr5fVzF^8ClHbD}v0pRrjqyK621f$0pJ=*9mOat6*^w3-k zx|6q#W{qwHKnF`U;~hz8pZ<}W$-5z~g0(m7E+>*RVKr^PFR-&f0($;|q04osVVF;it;rao7 z-m=|!o~%YFp$u6PlNENr>P!o0Yedq_YO98li|v=(fPH|t%*?@>fJrkDtNOCHc14wu z&X7cawnJ{wPyX(A_^U~z|Lh%itVTdg%d!wXwjmcgGlax zNT=XC-}w$c^q~)7WMl-ZNkTEXK}!G=op8tdAOH9V1lS&b{PDQ`_S^Ad67JB6OS0TI z;x@V(gk2wf%%k2IMsZyhm-pZQ{`b$z;E66}An8+|`jogiP9a)1I19#G>XN}Ki(Rhs z#`3jc5-oL1C;M$)m-|qhHOGT8Sr+%9eE@zkK-C3)^SDoQd+D}z5vBRsAuoHiGe0l4 zmsMXXC9vD$77Km+J>1<*ziKzmt# zjBEOlN@o5(?t0kR)-NwgbV+7NN{^F8qEI zFea9)8*jW31xk>yRkz{gmtQW&7gyfr3#j>WMF!)j*oDw`j>NTF;yA?;ZQZWdR0*>f zUw{4e5O-R+e^!HVDjFsl3XslUSM`v)$+wl7#!~*UObJO)o>o2M;#vGe%h4T%Eh^V-)mOq7D7*8%agvkB8|ErXDwm(b4SV9-|MM>Bj)fH+5TN-U-W%j+^Bj zVMgxn?}uEUv_1lA`}+FWGb9!M#y)J$^;Iu4P%90!w$X0`c+^z%$EK2Jn(`L_ehuJT zW;%A<{8U9ojB0Xrqgho3)eY`5_Jw53q!em)D(`)xZC2KuvYdOx+VA zhw>)AMhY<6k+Np05<0~Wx#`9XP6-Tx&4pA(`H`ltDC}mR9>juV_ z?FbvJs{nUJ1%bA-nNs=5#*{y&tNnDz6k4~beA>W2FoetdOZfYM|Jw7&BA-LI6k~oR zMipfY*y`3Spq-|GY1tmWMfe;9z)H5PP>gLvF|M+_rU0=zUE<6lU`m&=Luq=t+FhBN z4{CWw8_EfALtJ}}73PW)PC&~{_e?15u&qDwmO1jy((RN;IXa4Sk2?FMqjb09iq%zSb9sV_bXfwY9ZY11V8g3J>pSI=d!|#Z5q% zSm25lws4A)h-`3ZV1 z+38ih_Z^cr$-VaElTWU;dyP{VrLm+(7{a@G^X5&VTFURKa*6W$R;Ic1TJ5azea!K( zq9H;y-@C#KAoaEk!UQnUAgPNj+xt5ogF$0>0pADJl5GfY0B7I8ge)G zvFv+OquG$py#VY1U?%|E1K1M4rU2Flu#UB93>siNWa@H}smm|S@jnINA+wJi%(C@m zeRKV`HrMeL=C_}#lt9{g{D_&~AHcll8`MgLhK=rPbT6Y{Gbi#WfKS>!t}kvhukSnG zxW%Q}32(-IXInWZFZ@9FDkjJG0EW^}OxE=~c#W1v9gK{WfHGTXwUVWk z<5eT8O!uk*F!Z{V2i9&gQIB!)mD6!vUkgi0@W!XQWZh1LwP&_b?Mna4Tsg?2mDxmTd>*55gg(Tms%%I7lyRsfB{gfLfMAWl zVVPoO2LSY`<+2SZU6A9FDv+lvwUnNQvmZqP{ zmS@bEA#sdyEd9~uP65B;*_!L^K#HcWk?%3F$`U(SAP8ZA?d)WU_3ZPX|2$-XKn4nW zBm~f$V9n?LCz>m-uG|NgTyhDv+;Ynoou!uFv(gb2j|Pdg9UUF*HMq`nS>^kRzh9OC zTdd6DCD7}5QBiM-6A4{-&1+r*32*o}6lRR|#a1$qbq$g^Ew*-DKbXsJ6mktDYRj$H zVyXcxp98B1ol7valI3>s4YK)2jCdXXEtImzg(JKvsXW5R4)xKp@@0383V3`5z!J0V z3II(tUj9!2Cj$6iIAGFP%9%2o0uDIW21A8Zf+`gHGr!CTxTlyIWs?KG%F}O3-I~kczOw5 z`6lCsg>T%+l00R(0%tL{P3|1HUfIG7p!tp&25mv2t_%s*`|(o8uryW``cQz7pN5#@ zZ3*Nmp=7C)r-hh^639O;xoR3N?sjo+AM}eP*J#{^Enqz%tZI>8Ze0P}SRp5w1|hdH zp*&^X6-`>eyk;49Vh}g=BlN-2(?Jr4R%}!O#jeAM-BjSOqNb}9%3KjumuSGcFAv(X zp8##7T$Rf-o{^~ew$(_KQ}d|XrbR%O<8hJB)3N((SyKR4mW`YE+TZN98y+z6wmlI7 z+_cOA(ye$Nf&cjEN3p}Iv5QIvQ)1piIZVAH|M%W|uP_!{cHLrS4--55{`bG%mxGdB z=;*hw7m?O0ue=gsLAvwKJ9`#StDi@%$8Uf8TZlWd#6cD;%z*B-=-KtSzCkOvsJN`1 zdg`f=SYdHhBY9B)TegY`KoqxYc?NnQY+Va>mO1X3udgLb69PB^$GbN2bTKEka2 zmbbhGGLZIfD86qrTVVC|<7M1e3FTSU+vPH#aQrCeR%W+YzQ)#q7dj40*dsG+ktD0F z_xwXV1MKqbV;2vGaaeWT`@VN8yP0e2Cl4;m%4eHxwg#{vfH?rxO6gA&f95s-ez*$V z5|LJ5O#XZTKLzk30N(@f-vFL~N8%oU*tLw#FuekyybUM z3K7>#CMQ}}8lCX|vU5}MF?l}g#i4cbmfHMQ&#c^k3~+pH9%6IL->%sbj9q>_?qc2( z6#!&%n_TjFy}qejDRX43|W_BDf?9QTFSav zPTi9Uyw)sm?I$ZOM3fb@OP1AGHAj^)7?so|iZn5{w&beq6UW=Qt+GV**|Ms(sVP#d zn$4S zbwI>nA#lD!ZD(0rh6`ti{on^bh~0MEO}ikg&K3bKnh)jW=9n)@g(B9*a|(!4&IrM9 zc3SVh|9$~T!d%-kcW7=iJ0E07X0In*uC>-$_`@Im0I>kRcqGiI%~mw=QV{Yq@meTa zn7@NWcfg%_Ez{*}DLdngGw{~8z7^t1-3wvxB*(UHoT&v*!WLw}O5C{rok6VzGn(K@ zl*yEQxlQR_^)l!BT$F?Tb6W?k&SlzFmjSocOy*<<7Gc(1Cbx19bdvb$!0LLwy@ay5 ztv$khu(p|AVDwqDe8gxY5wU=rjxVZ@aV~)E02~Lv=|-lQTV7BS7X)Nyng`?qrn~{b zLI6*j29rkoXbx~vKpGkXQP~OXgG5d|f=m(ygV{2f8#K?zWFbt(N71Z+Q+H{;yAynLOUF1+9AN&NtFODXkG#3XBJj)lL56?_jmFP1~{+x25oDp zjncXh9WUp(;W*-oo$jW&XjNV7K(_(h*c^bw(caS+xv2cvO3yBW&U0xR6;L|^z`Ba< zc!mY4!|60>p8}eF78q7_W+pl%s8eb~2?6Gcb`RF6hP4uLQkN~UoY_g$u}?L3nb?x6 zR{O2?rJ5wTAN;I$~F0mGcU=MA&DUSU0uMw?64CAt8%OH%d zOP4MUk#YDuHJBM!;!~xwEc+`m_c_E8IDPtbueDahW4R4k-uN3J9c^(3mefD1V#%WR z@_)lPrN!9T7^I_r(n%+wFbNX|a(lYmkDWkx+O%mn>#Vb|#THxOMJ7H18>ef&Op6=& zXFvN{NqHsrP%rDlF?#&0daXm83P@5h9cJ=g-*nSWC{oyR%%D~@wM2=0{p(-H7r*#L z8Vq~U3tca|zSMq{c_IW-X@Aba$PgKo%YB)_7C!^N_O^^4dQNhu1k!Dg_1+9+ZF$7H?al|V$jmPW@EQPfRrbWbv>Rmh)o*kkpGVsN#0AypM-!l4yX_RNJS$Gcsk!|GuoV3%Se6hSdk995&VB+m{ z$#u=2D=Qom%o6hV57l*5<7Kl5o4l-JB%zoIZjVq0Z)HGzCg5jT6nF8&k{IJ-F|h-& z$UF#5nj~<#m8!IW&5tmp}ad~y6fRHlRyNWwQ!YF)4!6}mF z%$XxrVD2DEsXI`i5EyT3|FKR%?_w5dmGkQU-_PWqkw#ADV_ax;HTlJXmh^Nm! z`)s`X-S37B>iio>XfT4WCtF{=ZpoS(k{T>Ubf~Mi*(IZ$N;TWqEh%{Uvsp$cF&Dgb10|25>3dVoexW0bmJ$r>#5h zLjq*&^cpL1fY51%x%sX#x};jIJ}uzY=tD;DGkOPrdjWh3z=m{T!z{wtRzmH%=+AeW zyfK0mGGvAN2uNu77T;u~Wi{uHEj@;r+X;7ooP~YvQx+=8EY7!YO9B zT^}fQ@aO|I0KWXOE>b0qoAssap}aEW;(X^l{kUj_DQjJRnbW*K|K0`?PrFvzA`MEz z(^VQ1m<6T$X_1Mt35d3r0N2z9aM@sjIuhTqhR$HD$rA64))F zSgBiJJFZ;4L1Q5urELX%<=Va4fSx%odl^1gWIBA$nvDL3Az9J=INu9>7t$A&5R}7-n^Vj7TzvgZ++aGDlOb{!yvZXenQjS zDyyd>rB5QI57ZL56bJ#?b;LS+?JYz2N3G?%p5E)DpNoy!!1}W-Nfb1y(#S-o9#S9| zic~65V0bBjF`%;qc(PH(HRTF!?2Fh1NWX-A_nh|`mFZRl#E2}ov(3n{tHdH)BKG4x zsXp^_DeGuVAhMfUx)gO%3oB^f{> z4U9sC!K#WChReA?t+V6DKaTB9p4e3parwLS(o6Xx?gBKqNaOf@(IXMpU~!ieCRg1t zW`^U?J6P7qYo#mN&5-Nn1}(h@NWmCmDLHOg|9jPn65f8Sp0?nVL9)-lAm1;Z=U8D8PMPE~c6pUq&uv?rZ}#y? z02TB50stfFDpN34iS@1C*EG^}qah$tlq-wxqn`zW^Ul*Tyui*?GSKio+!>M=2>RS9 zCI=3~pgT``qfk4A1`i5ld(5A*C_h0LvqaB}+PH2>1+RFZhRrr>0C4!7g3MN3w#L#t z@1sjVxdU8%^AIkJJ6KXC%crBRp>|ro6=A(~TDA_Fx>uVJseWyR=sL<|C*>H>U178i zv>L$ONxuQ!c4v-u4(Bcm$7T<=6I9Se2UZA>c8Jr8bHFB6`>5Glwgjd6X>eF`x~{UQ za_nrEh@xz>sjNse4x+$!Bdrfvd%Fr?Pbe4Um_n~xNb4A*hAv_hD3lJ#m4dmew5@c` zK?mVL!(6%wB5{!7I?5zs^xpS+*!V0$ti59I$LXh^F0p_@Y{hYfJ~!j6LAYK3@{lz+ z>$?}S6!)}#Y^i0pfGRT@s)rztedOs<`B_ z3a;+!x;|Vkmmen)L9Nrp#wB2_8Ev}|D(9|FC8QA42!Lf)mjhU2bt#aTvhxfuZkA6> z0AopnM^VK;Yqn1A4!AQ;M3?FBtTQ?Zs^~zrYTD{`HD8q~MM|8%R^f5cjsmf<)riQP z`q>j(TVmPjN-?k?;0wJzf#{Ap&V&M}vD86<_9pL_T#gCc7b>#PVXH%Qn~OH3R0jNp z)P1wfaKtJSLrDsfuYK)n>}JbxMxhis>_SG%`JG(6Y-ZZwD_{AF%Oy>Nb00W!J=x^!DgyRe0{*CbI{4682dTo$KC;Q-trq5Pqo z!h{FULf&)yoCRHe<(mKC2S30KH{2jzAM!3qiHM{WrTtJldzgPkw0rt>*Ifs(IREee z{x2Gh21q#8I1AAF;<`n-Uc5gBZXE0Ej-?G}esH<&W_<(rI&rM6DAhYVzMWGcSwNf4 z>*cP&6j|=OzvNyx%e-gyH1*oY+#jzrrwpE7!Jj?rnZkDlf-Z_Gx>s+d_)JBN;!l|VT!F;-r3 zDEBe40k(hr$ph8N0OP#w+K#x|Hm;i=;i)I9#BxkNqprBwm>7xRp~X#}vycw;b+An- z#@4MklNgOh4z+C5j*aValai?t7>7cCqgGd_atuh80_|skhJe{RkaU3-fICpbjWwVh zLEneLfhqm~>COSm%(hgmiwT9j8vrI0h)S$Bb?RN6=2ro+3F5j+6ez2w>*yF)Vk&0x zYgQ(h;_&MdtpnBkqXeQwBL!@e)SX)WF7vQu3B^k}1<(qZx0JR;)xbe#a1gIEgf9KF zW?^MT$eTX;(U0oR19f<^^9Abdcpto8FGW(QNM2dpDYDbPINKn@s7Md3wprgP{;sVq zk{a#@1oNGL`O9C%Y$7HrS{`}i5q#XZ*Gmeg(@r~0NS8F&;f_2L66qX|Y02xQX=P;J z!dNW%ftlDW-CiHhnUhk3i5^HOr?A(PO)C@gaQtQug!@>T7B+nj47x0dk=FD#Jx#~T zmRaUKD#TRc1#t1j7vpVjdz-MUdl{os<@-vLEwRcu3gMf)tFE}>3SYXYkjrZ@wGPKD zTMdyY$?puzGp*IUjy-?gj=eqk+Ywqa1nst0q9P_)%<;(GXQ+rH0-cx?59jwF=aL7GcnT@v&_zW-FJg= z6t-l!#4P`^91lRMRaO2Szyi2svDx-8I&PL#F9gCvuE$blt>ddln2ahr%@EfyFB^2$ zI(aO+T*uJw+@?I8C*{&Ax^stJ&9z8u?Nxsp#?ePDL99TbMOI2(F2)|VV`fmc$Z5uK z2Z!ym9IY#+j?6@OVR-Sm`2?*2i#KZ)5Sm>V0e4lU!p4acGrIzD@Z@>L^aZRPz zE@ysbwx}`7FKf}Uh1_OY9!@=t<v(i@6dY%$JL_z9 zBFXGC@NakDeK(Fi`e*^SLY^jo#|bu=&p^l2>at)7<=)Jjp&=Z~)O)W07f1>93v>>4 z7pDc^tE=Q8^3s>S6rx}H(w87S1LvQAKK}8Kf4CT<`5c^i?K#F-SkyoBna^Oaz4j89 zcX3G$SxPx}I&<*dt{bw>PbLh5m-{TtE+Sd>mdNBRu@+iBSK7|wO_v=;5wd*i`V89a zFqZiP#M02*JpjU(6bl!s0D*eW#$S(jiSE7G*fH}r{GUAtf zaRWSp?ge7D%wxHv`CP!2*W+#T5=H5Aa-9digjn=GLI61obhGQa(u899S);=sU!UV$ z2%$JlQHQMKJALw#*!HNS zRw)s#heF&ZC6;0i-}gB6EmByYAm|2dW-jmsKjlHYr0rk zr5=3WWeuV^?+YQgJMOsSaLh5sh`V!;JV}Yq=n(4HazBCFg+ZsU|LW?0^Lk$PVtWm} zTnu&{y`1~V{0#E`LhVJKZ9%Wj^{m(F|4u>B;-zfMvvT&0T2{xOha6kelO*}0(O1xo z9eViq_q-q6EM{8zJ@?2IKOiB?uI?P=34{-g6z6?mh4vX@A?0PheFVsn!u1PVdHML+ z*ZJyd3wz%uhjCp0% zu4=@XJ}TZ$ACDw!HdC?EnyoQrK~qEka#Xv-DtFwb%I^wgZLHem4ZB_{rF4I4ea@~_ z)8iCsn}p(P83@WUa2T`NrkYxX)p0uN-1^n_9ozO1y;KvjA{QkQr(RZCQnyS4z}#28 z3J0tLF_d(k-uvG7N-kOr0&)>1v1^#^RQN1_WgS&vQGn)$e(bpht)3hd=ybth?^I=#_la+~42-{`Vn5omLmIk#r}K zEdpx!K4XC8vb5^DN~!NP8NgvHErT$9eHiHZ&Y7PX4emk~^U!_5&xe%GoVa|w^}hMK zbM9D9XT&LX9OARi=k`9b@|2lgVvT;E0r12W1T9|5Saak|02a`aW}jBYXKYvVEGj6?0rfftO2rvsplK{Mat7Wy2g?d5c@tN z{6geyLnHG1`((+NLi^|XgxO4xRty7FCBh-wMYnGZ~i0^@a{-3G?Ul_Ir}rkgLf^F}Qu zFXO2SM0ljvOZs6!Z%Pg#%e)=4EgK0UGyz2rRaREY3dh4z?$oN)eq}W8gNOp9is!3e zlTnj(vMs9PW;w2vjPwzK%rX&QSIBBxA>)3m&JzyL^(HitRTm9)+@d6*^N+1I^|GNM zy#9g<&_8qLDp|mU1SMsD~Y7(nIM04%6Gr}T^xMy!C1I(A-l%0C6?cH zRPO?;&9v`82bH}kdI^j|Av3;|8sgebX>W>?Yp=alEMcLPCcG?kKK}V^Ynqp3l|etR z&)fA*!i=(PdDivj^VZrU2@zYd2NDBqU(Quu_)V{^eRp2AYt|Wk~Un+WAuqg;R4rWR@QSU~~#{zW6P* z{36*fNs=!CcpZRN6h$pjvuw!mqVngY^~VL~1A$?n>wDSfrNigr`|2_oke4U+HUECY z?6+L^teAt4J920l?<-I2bS41j`OB&eR355gpnn*z*l7ePagJBcvtp+czgg{}$NO+| z)WLP#Hg>*y06X3~gtaRPW(;;P)97%ugJv68Yp{(I7uN8NSwJU_oGz97Pn59Dj5-FR zE-cO!m&#aJ$~EA^?pQLfDe1xY)U0-b zwc8!YUtda=q^zd>+UiO!z8xlzvgb3V+>#Sc$zx?mTOqYolw5Jk`ZB6%wgf{FS6Nj? zeFbufxfw*5Jx;_|owQ!|$O#}?xOCNkLPSJetti6lO&-~Gw%;BrD`%g5wphT}g_1jz zQn;)F%Cr#%!TCM+^gSFhI{EtS z?Dn6B_{(KP($|Ywrn87(eGJmMy@%}bC#C@HiyzeTi(>64iarbAeE@1JVOR5qx}E#U{4=Dl^uemP`YqqE$yCTsN#fm!~I#W%`2DKf6hYi(hVGQf5a zJ8zxR1E-c+nobmh5h$mOoxcCkKHOdDU`YwMyxhiL2Ow1s%S>QcnNr5 zHqerKbvd;XuwygEVO?Oq!4Y7&LSW-SG6F1H3e4*O3jr)q?xcyT?zjaq(8NZXV9B1G z)F&plr_jIxgN}3=vzTsSU60x5EoIvR)S3c=B?VSf;doZ0mQAZIZAhozq4K|W)Oze; zUS_6byFAhRrIbI=7FkulrpodZkp;J=j<>{~KkRiFfWD22m9lEbx-DDw-q`!opT>4a z9*LC{A-j?ED?G9u8qD(n-%!k{&+_xU0ozx+;uSdY#1kbqq|2MeM;hgIjavoryM2b= z>AeC=S&aS8yu^F#u?M!;Vhi*@g+3!gotCZEVnMESJupLW~$s_FHrO` zeD1gmK7t$=Y@zFc@H@k2EZ}nx&GOcBkxlaQUI1I4wNl5&a~!Layh(}AOTcFx=69Fx zz0UWf>%Pf~0}pvGWU}G&xp95iHQ6d(>pTV|43TnPMKrP>N8v!^iilS1I zBu%3&0L|!M@;b4`X2!#^OdcTS=?H~hkRc1FFAg;98Xb-Yoh<3oWG%E|CcJDQot46e zxAU#X>t=npLT#RT9=xo91lLzPxazuL^w+xBX446a!%`GPz*eM5?#Xuf_(Y5+7FO}t z@C1P8>NH_=UX(!GeB)TPA#B^w%W<<-gf~o-ap*=%QI+NP7|C*=YjpVp@K_gE2H@E= zhLjj}>xwg~NpYPK(lWw$3=yBJO`dl2<~-iIE@cxMOp8X8g=j#5zZT_`O%z}pwDTQG z4a`6=R@zdo#_e>PVs1-T8$6!jU_Xw@O**06vlTkm7OW`HEIJdwnAH{{tf1o*Ce-ec zvVyWjv>DO`s*Qa#O!9rAdcID zmlYsn^|1@~@y8#JUdZK_UygInJ(n%CQs#*v%*$#V>J7a0>ym+QR*rve2R=^* zt%2`;n7}SW_*{Kn3t4?w2J0M48|o*z2I_gAT#t~~Kx+zWuDPIAZk$;FJ_2An04)Kq z_M#pHU_3539381zp5Bjy8d^jlD}U3|jZ_(m7$ymEIgvpx#0ZL-{3 zRyMyduj6CA%gnpWos4JE#gF?Z5M4PP^@#{OZ8fg^Lpgo3QgQVS`{N}dH;D}d!K;HktYkpOiSfEtr|a;vpqi?S5O7?0p_ z-O6TqRil^UZPOIp?f& zXLH`Xd6K$Ea?vuO2fzP##N3r7op_N!;S6cF< zH4ClZYerg4KI8Wbm#_SKrzpY<71*y!?~_qXj@LvqwAm70OI-{`S>1qoheYenk6pq=;0k#p!YtrtnHxAo@|_@>o=Ck>|alZEu!J$Y0c02$-jkx zXa1K8Z3qc;>l76r}U5G+qd-N&(}>y2a)n?rTi}) ztAv#9H=y>uYT^X5yiC6gW!GCbfa6BWcz3OZc9A+T*Wn zUyS|eqGPuix7!sWDpgWbqu|l0;nZTE6#nr_d(B=X=MM zUV`6~MRhO>O~-Na$tUY`*XPI9A1^EJDoDsRn@ME2PQ7NM&Gn5s^w2}44}qfPl1nae zx*c0_$Jd49f4LpC`dCv#)R{SD}c}DjQN>ortdb(ssPRa zaJ`v74ZtSWSn)wKzqk2)8h~#C*a*OlX4$%4rrT_WUM_hgF|=*&I58`{EZdDa|9*KS z$e&A#B}}Lldg+HO+j*?E+{W1el$VDYpC=PT8zet^wv^zHaRZ&lYIt_pEWBplr5GIQ zJ_lwi%34b%!IAM2o?2SLlQWxMHb!oz+1&^)n@I5TdW4ruZ(_#{C$QmA6DeX!DT_NJ zK*MrHEm5Gal>$9YaHQs|3XoYars7CN6Ouy<* zI5C59U4h<2S)pU~`)mc$J8Iily9DdDQ0HBxOULoDZCIhyLS4Gt9W`GSP1~0&&@Ect zRm)|+6aQ*`Y=k!Y0X%E9Na@mb7cYXh{q(1pv)y(por_j1v=2V`V0yoB%$H2Fx;nl- zS4Q8n%L6BB+4Cy`%HI0cx8j_0&f)yDp?7kTpgag7*)^Ok)a-TyO6)%-SRI0r61WWLCe20V22e z>LR_$IwmuU`@92ud9?Go6Z5eq(bh*Av0Ov9WO*TEI zZm0DCT*24W0NXDB_%?tkOYRF4)c!GwqJ5GisRF37s^yQF^^OLxkhXsv&EIaz^#NR> z0Bsf_fGd7A^ufvoNMY-)>%*AeY8wWxlU*-Q?nfVJT-lLgKZp&Jbn(0&Oi%v0@p1T` zaORxT9p*pP8W>+*!N{Lx*%j^fsSH1GG)>ojET5e%8~+j5fW6BAfblO z!Vo0S*l8j`6BFpyZo~=%c9g3zXq=#B%RXi8Oca~*boou4M~C82y9!8_3Cv3wG1D=n z>4_*EPf1h*Wnx?w1&3az>k+tIfe3Y!kRZVTy6CsHZvdD^sey`=ma5A^pZN@4whF{h zAO7%%al;Ka=$yv<9_D)|WZ{>OyM7jP4Ipv{|AinYopcgzzWHX{fB*fyK{Ix~5=t+cgBtcwj0>YE*y(!5a5v!oV~? z0OjSDfXX=_#_gd)2{`mbiHpr%PxEuY9zL$R%63_#c)kIbY%Y-ep?*GB2m#3Dev(IN$*rL5waT2x)>1*X3RZoAv zy4J=>3#k8T77pHfIkwuYt`G}>+Ac7ENd@yN3A?&^U8J{ZMA)it0=vu}2g(4N3M|(w zY85~`2GqO2D1e2E?5M4*w9wW><>J~Ut0IVaNkDC10)CnE{mP@E607F5itjqs#Y-A3 zG|i8Y%n#gYxh%s(dfNTjJ4A@`mb~|EO?um@qa{I#$!)w3xHLR?B-H=LMc;SWm z{`Oe_z3)vawc2}$En9kfc3sxAN&BXHso9NdY!)wK5Jf4F}2=rARm_j zM=ylWS9g51rtaJ8tg{Y^mh;X#FGPamii_oeJ&p%vk0^dGW?9D=ypW4&*o|{_3)h8t zAoTg#_+<@NR_6c|zbiCgqHCHtc+dM~Ak1ykt2Xz6LDzs;7Kss;dJu>1Z|8nw+Gn+v z?eZ8EoFOI*if!rYyD@;z3sCcVQ07gU$>-$jtLk?Q^S$t3!myc^Fw3g|JY&{$14ClL%C2J ziXe&sS4@^mC~#RrY7Fi|s_Yrv^nGl+BgVB(7q1-cU^&LnN2E^?5i+$1phu#rzOA%* z$9&BX)kR}@#Vbc6iEYGcF7F0$A*`wj+L@5(t4z{ zkL+Bf3l=P(v@ylXmRoKKvDkj{lb_V}(gY>pk^SO@Ehawj*$Yc;F2?j-cG(5JkiY)* zuReEK-+B9(t6kr3whZdgC0pv)O3JC-Sc|^bcmO#R zf|NV7irr9c4q>(o_cBJ9fo+(OEDR|59n0sNIRHZv^0*WAd5vVTQ-=n6vhw6|`?-F1 zwJGm6PwFDBQ&u`V7fbc^X4$U*RLuI<0k~lbjz0gOmM`3Ak|cR|WCTD=8kyhLw&{F8 zk_UV(1+W)@s{qWk{rmHj5on=V_j3Ry%=*Uwc#|xbm|Zhpky7Se%ea(%n%|!W@J_Sr zp8(R|4+8KB03QYL8_$P3%Pmusmt}#hESKDsVUi1_4pBo&@vD9kWdZ z-PnS#K83_404WorGC3-MRsmOKp;gvCMF6G1A?H!8T1_CDpq504k+ADeC{LTHvxB(D zXo7Lnk)Q+p0_fVZL{`uyKrz`v=% zH-XI(S-Mr58;$TR1jqt4bTDX?Qy9mb8`myx(Y1_Gyi|sV@o_^8H8^9&N~cBn{O3O( zW`GZO9C`gb9cl)*s}!dsR;?MwRFReU2 zV5PxQufa4EXF0zOqPy<8D~gso@4Qn;%yeuXgF|0vO5XMiy0A{3Z92>}%*%T%Y^@ea zft{2jvYgwH_ z-}9mRhTMXAn(M^k4V5ABg)H(ktJC|#>QbXWR(NI1%zp*I#1sU5{y;4=9nVdYu)s`@*mOW+0Df)Vn-4Ve=Kwe!z@2c*FRiYuM9Qe6afs@ltrnq=`D9s|Xu1PNF!*hkpKZY`E>VE1iq>#1l`HXGNz( z$qW(Tyq00Wz}BlU114);5v$-wKl)Mp=tn<7FXcPm`3@wWbN>AKJRlUZ92C)!4_QP) zpsSYvDMS|26OyRE{N*q3NS;)H+*X+u8!H;XyFfIPMg=WBye&zuavb|oYwSbqc8|AzU?_S*|x8qXO9auo`f<~xc29Bmv!|^xy^Q2?J;h6|Q^0qhJQL63yEXCUNP00h9d%ydhDw(^J!Jjh{- zA#ckMXKwfD{Oz8X(b;EJ2#t~jDbDSFLdOk*_x!QDVd8}FD5JA({1U#S*2SH*1`b$U z!-EU^u;1n@u;n^+JiVlXr^^TufQT@m$ZZ21T(NK%8x1tkU+N;g^O6?OngE0x$`p83 zrJZTgOjxIaTMBiZL+j?b|5jK0 zduV{02kjZeh72yD`=$80XI~E~vq&^~y{vne_C2ZoCD$dyAk4s=K_s7N*1f8MIH%m= zHe^ex>sbp~v|UzM4+-qQ>>y_T;{YC>f|@UIP-|Ja-UncY0;E*|s#40lOq-jil1|(5 zw*by40Ce_34ii>pQ-1-kX^d~zx>WZE9xev4`P_HIfGcmx96qM+gP1>FAnfMBl12G0 z%78OeuTWYZw}m)Ab90D1#dm!7zD#+=U>6U!BK+f_X*lGmevCIuc({*WY}q54Pt{^v z-s)n#r>Ei2b(f5G4Tvi}cOH9_= zuBcibQw(pHtiPiuLDrjr4q|jw`XNyT%n8Vr>3AiFyK#xE>d&_eKdmYB+4JpCn};H+|epyv<56JC5YjU(_-+fUyj!ew^3PM!;&Xw<2IaU|d;gW&NsHYTIBpNpB}We&gv~>Ip_L z=7>dA7E2W$%lTS6>2DNUTTVeJ0YTVpJ4&0PcAF}*A#2ZWVu@zpUnT2o2N9N`gc`aS zLI<1|H)3{V0`g^=Z>x2x>O3myT1I&O<^1!{m-I9m7_b#T?L6ci1k=`j+HcUk%SA-9 z(jCpWyyYzrORePEz2b^1FgQ4fUdabO@Bv(N%{3BZtJA$Wtre>vS^337#9FHS?SogKHZ*atAUR8boq$*kM_%rVIJ5suMu2+;cP!AGV5?V3vzwWhuNzMdq>p{D$j(Zc||+RT?S zXwXAR+r4oO41#%C*abOk$tB53f*sDS6$Ya|a9B+4wd^?9aQdYD^z6Pobi7XnuDJ#c z9;qgLZ*XTy=f-sc-Mk3J^^INGMG%l!Y;&fbdwA zgEj`Vi5MkQwoTbZWVD25%E&|X<4l0Q=LE2JyM+~KL4&fo1w)GJufUT|v$LN9xredy#2Gz9v z^DS?G``dBB1s6!ZPjC7(C80QZUnia=^j_fH(kq=(V~;)dz$Tk)f(IXb5R!BECqMZK zdMV%g-uLjzSH4n!mMg7D0WO)jtV%8dpWa)E!xpe!fLa-d(STK#To)!m;uy>zqpDq= zm-r?a&SQVi@*r}>Q%?0_!=#MdcD~d&uC@$Wo@Ksg1YNCG3zbU6R~LTX^ID*NapT(U zJ#380pZZd7OPW6vg{S$N+P32FP0;O~8OANYijK3@#w*QU?+Z`R=YPB4im4}Z3e>JH zQ2Px4Zz3zRYXmnFq>=c*u5UVf6e~MsH7nV6h)LM@F$j@DO+FP*c==?l27#A!Zns}{ z1#^AaCKI#d&BbP4lDU(1%dzk8PwrY&GjM<8bh0zG4+0<98sRs3e8 zfLnyvC@g5z$#i57^8wT&pb8tp=+mm9sMU)mxL#uaHzrP59C%5h)<8O~X0b#=Q@ z@;9_+mfA-ic|==O)U*>Q@}M+ZT4g#Ecgv|#LixUfRw`TiENQL*oheYu_g2{3jR6=> zbKgi`8;*nTMfmbpE1tmyV-3%T=J+PuiF=fr23 z&g~V+?$TC$AbZs4=|<1DpZ7-rteAq9Q=oQr$pZjR1aO9=^@-!SUl;VdH=rH;=ERD zpM{A>$3xd852$r^svhYF9;|jCGQAsNM!Sr`E-;t?{oQ}1;1OsG1!!f{Rve)LU?K(@ zktva&5d(G62xvyIlD0*hE1iX&=J~xQB2+Me8aim$*xwGh+ggh)0ZI!7twwg8sw16F zmn^nW%bQj!3bTvtjLR8s3OgRvYZCekQoHcr&? zF1eMzP-MOJ*25{MoPu}0^PSGl6-mg$!5h11-Np1fP^=VAm*aFD1_hIqqmDWX;$|uP z{oLn12T3cl!wx&3SF->9`{TXueXo#5F)>Q2MRtfo+yTDlxz{ngPB-7_)2E{V;e5m) zawfiCIHZVKR$bp=Zrh;u0=EOZJd*gBYZ(+z^%d-JK5!@+0&MI)?dp5DfF++_o;Zo}GFEr$FuVDZj8P5(~IBH*&>1AXSyecBv`*jGivb$nAq43jToR zwWiWXk*ph&PtTJD)F!hZUOx|@%uDeeB0OMlm4}tkSIWGDBzlC zqA9g)U0Ii70h(Ir)%waSuY}~X?Ue{Q)%Dk3FR6ZtWlqiJ6!5qn z_nzUHW3IWgJ9FmDUVvKdF%u+L)W5ynFogH@^$|$&TGH84mzgex!H8BNwz~D!TX|4| zuNmL_Q{dL&MMNB(V|W})8-+KvZQFJl+je8yZrC_!V>E2Au{XAD+cw*v-@f19z4q76 zH9IrsIp^GMoEfUw6*ou9lMf!i2Cv;x|gQX1_kW1Nc>-Tua;eP2g7`KMw?i5(2 zxVYJfu;q9h7lfpdb3i9CGwz`heZz0aEH;+H?*lC}Ht34Td^rc|!|Q0{&bGt;%+}5f zF;=?nr-97D_$j*-sG|W{WyLdf=EZ2ggGE2qq-T>xvwEG=Ya^?W8y0sE$;&okwkUN7U-wl4#Nt!#{blivr%{+LBzqrHUo$^7o4dV%=vo&Fx74ry=o zB}w!zz3BbVq+M_fOR83?YG!{rXjUA~Y$z5-8k6TvNO&-&cNeG|!6$klJhJ!AS>&D%RX||-qtfOaWUzb(d(Fp+ z8Z^#s+gz)F6ZdBpHP0A@cY+jnzCA>IE=13zW-dG{rWk1U4Q>?JD&#$P-3|Pjq`V8? zcrWrGcSFm|9Hx@-|C!w1)5lJ8Gln$JY`&6#1w*PU@3)}RcgPUKN$_~WpE~49m(z^j z@L2-;>b}Ffa(1HYLLXtqCVWi|wd)5FcZU90TM$6>MRD04_rWADi6H5R&5^4|?ziO; zmKBkKlkv*{$~?WqN#aq$M^2P3pdYBx^bThwfD}B-? z+?C*=OGBN41}U-Da(9r-I89rUd&_5Wz170uez559glZ@u{C2@LVJp9}U2~+) zV*8FldA{9FK&nXlt8aIvxwGua?r)uEXVX0=Cy}Ra&7~8@b946N516&7l62E?{!<>AS{PS}WNJQ$*7?bN#NBUzceaq)>_5RtH0;m~ z4f`_E4|Kw4E?E8$k$r~V1>bIoQzMp9)Z3z%=ikGo8n|t(@M?dJOqa&n6v+3d&sDwh zeu^DgyC0(E!Yg<5x>^SfT!!sooQu#=rmD-r80UzNRKU1@lpm!AU#wbLHCIVFW3e=( zhH2cS!V9k-Jxcs;k{CB%7b8#x?A!l>oLQ||Da95)SYBV(xu8Z&m0c&%ciOQkwK3VT zHxAv3&_L;$wTxo{_3C!tbj+L{lmtG zDQhA`U(>`J3)texYi6raxxSUu{O}(ys=$9iNq;{40sq*Ka!XmRxtw0==4^0!om52B zHLpk5sL?yh=T@M8Xo=(~koBi}oE~u?nP3M-nfN0?H8fsqkXzL6j1ij>&B7 zG}sHG8B0#w9+A@lw>ZXg6ii1AX>wetT;HL^CU?~QWuFfjg40pOxUqUs7tT=^S=k8Z> zMs%VvlP=My+Wuu7Ql)nv<)LQ7KXggQV;`A&{5YZem!5w?j&*&orzNhR))xvnN5_IN zw(_SzgFEJUy$gY~dyAo6NjA%GmT00biQ4(LGw?#AEDNFlfi?67^wty6q$F~lMKpJo z9LJ5ZKcY^hwOlK_Uho}gy>wSL8Aoy+@ehuxJI)@q5pRaM)k$5bNCb3$>oV-<^!oF13}J2@v(Yk49+ z5qt79q;~OhqVw@pxFNea7i}}ZgUVkufD(Y?96dVIfU6@Ft%Xc1!M#aBpT7fJ zQD_$s%TlRUGfvX5ojx|s6tg`wpXwuP;u|9?GkPO1=$?p-D2hAA~C@0HOe|K)Bg! z8_-*u{foY)>Jm0ENK`uTsD&v_A!@|!-3+i{6(XIejKG0nV`qXy!?t1-t-g|0m&+sc zomZ&=li4pHlvg+{v3$B=8Qmg5P1oHA@2tDc%4Q}-yGms?Pedk;J@UpLUDBG$egI0$ zpm8hlMKq=Yu?lT%PpC(H&?%rZRfGB)q`gP&v&6G=YZ!Ysw4BF(J(r0i_gj%Pg1gBQ zuzxVt@yB8kMzcroHVJW#_Q!h~Tq!nHr*jR|(?=InRBIhqj!SIO)NPZC<7UUAN)Ct>|1j#@N1ePmKw|5xJGpD#aBM^wz z0@q@CVYCSb#g7zCht7u$y(I4A|0`l?mJ*dFv8u?Q5iGmt@;uX!Lp^W-bMMf}XC>$E zA_c8Aw4hoTis&&Ddlv6r*GY5~V4K>zq!)N;5!{QhS%lfGZnSCp_fLeeB_~35UZzLS zB^&NPP921Hc#^FOT}6UjPA$%e8?dZ{5kg=9dE9TEbCWkry}Yu9WTwkKgQp?(BQE$# z^*7kU;1#b_Y}Is^!+rREGt4wa{jxo%JKFsrY^|J#Bd1T*0jzp^dx6vaMk~ z)(aGdI#^VdMBw01TY7`y4V@lSsO^#4E zL*hsKe)eZuVfA2WI;8}}u67aduiYH8>+(5U?mv7JX#`8a-TsgWoOOF5@3Wd#8BbQj zBBNV~;0ih5<-%7ezYH(H;7+JAqy9uG`{Z%^AUS4V?lpLx25s~7;FkQGj=v;qhY7ml z5}a+;t^AkDqB01*oyi%Vg$oFTpIzuZtA{hNK%KR|{L3*6-OgJbU0ai|G+<^Kcc;9UcS6EE3; z(ZVgJxu881NQ_0H6~~;~fQ+~rmKm=IE!<)67bRDSdEqQfE?aleR6Tq?qzl1CZK(bh zRq;*fgb}m6;iCR8XlzNZX#!faqNFxznjIvVuLjU+ofpP8l)KuUzudaiOLQOJgM$$#_ zyz?*9-s)%CrJ!Q=Aim~xFAJ+CC(6%@;jnD(wJdahD$Q~Zzuba78*uRC8KJ=cCa`vG z7d0Ic&;$M2(;CGkS=t&f1I4c>VvmPv&~BBd`UmP24Vl zlM{GOWuawXb{s$_nHL{N_vrd0A2#9{PgmC*GQNyhC*CbNCytM#9B#~LpAbm{Y48n__-TX&P4hIIr7OWcW@L!r>Mi<1Q7 zqX*L??=k4aDr)_v`)=P=HP+V7dfLwFq;mb4hq$#gtQFmtPL8$0gA;|HgY9li{l8R* zFa%9Cib3=cixmlJ3G{r9j?KtS(AQGZl+$*V>7gMmj9!Db_~5G(2y&jLVY(EPNx9^5 zRRzhgluG+w4P`gsisLi`e3`eL)EJ3Ax4v}9^ZZIT?ib!-l>^0$q6|vhsbC!PAcbMpm`VVmD>h9}$o*piZF_@F|mb3G2Z8bv?2cCdouS{ebxYQWL zP_Y_-%T5MJ?y4T$O-PZd?bb`El7uxjZvw^w!O3t4Bny7Nd$95z`X8_Fbxbul3<{MW zkbG|o9<2GEmzR+rEvSA;_^(lTTKS?s5{aVSc8>DYuS<9d9D$3Dr4d>Jul3hN3I!;F zAut>I3!OyU(b{iD+a*ia2{T*~Ogw>NTVPNBnOjr)yb>%+iBfF2=1yJd1j-N3Hn}L_ z52H6sl<#LHBbZ02!sRKMS$R(BQ#|cI{nKqQN1vYp@&I+UA-fFGU<_YAnmJJ6I}ABj z34&8T3i^PQFl)A#NyZQ!))fIk5z2A6mQ5qRN-YhYC>Mj~@gu`+L>*t3v3l_PS$AS0bVe?nW4D&#}lW#O? zbn9xnKlCFyQoYMyFuGI_tf=V=!$F{a#@h{w1bF%pDPrwH|E9KU#ApyV19ml91A4|| zJwul&hFfz-_nESuJzz~A92GPfUw5cY00)c{wicxqAo$h4GNOFF)MaN5KN!~0ehs#9 z*dN0CicH~kUJ_k$@gJS(a1*?lL^r`zGfWp@V@{b9giB0&FT!kCYT8YXZAa<-Mpqt3 zmUURjOJ)u~n}eVG*GE^R7l)1~3am6Jpy=`g8(J6Rd_ut1$3LY4Jpvh`YQH_g?s>az z;dcY{dprWSmAdC)OoEn!nw<(y_Q!Q^-i{wUhE`Y)KW8Q+3r$qOG4mq-Y{`t)D+1=Y zaX@@ml*EURsC9R0eBia&{A3b@uPq|!e>*FVde;%)!yh6A-x+CgShzaD4v)x11oxF5 zVk|Lq%9<{Z*@3e~Ia+UGWjn?vAj3fci*wKHNMOWY6<$C@)24n3nYE1VR6(lVY( z!a>@nq)x^dg$v}hIB6^D4?#_M##GI*W|;r{4%vjF%{D85a!%Ybh`L2_+s)W8B>HCR zyXEC}0fV=#~9#L(jGnlLkU1z13+uHsembe_n-H+k!(|-*63UWIV1Lx`G8I{=4s4*(FoM z5sAR{Mgl%9!~1G^{loQx!QNG+KdQfz0KW67GnqSiJV(Ge8Or@>v(gjEa)YM7n?EJ9 zb0RaS+4!eaxE}wlyFQ?Y+#@dD+r^E=Er1%#m?_vfLDW) zg1u`?Y?zFetP|FUkxm!C<7g1Zfs6QV<|6h}8U`lFVj;FJHG&e2rG_;|(mB->0WRyyC(s&JH8y|+pARvK^Zp~hFDUFP!8-En*S z=i)IPyWzjPgCd82Fq2kj<2Yitx4$h~JU?Sa`k>PgGsj$YpBPo(B5ka5+&T(Fk0`T1 zeBN%hLH{<*5%Lre83!r`-3}wyyZ2FOCc0Ts;KT_fF$>dj#9AAtHqeT^Uu z*JzLY901MomC`OgCP7)j=fr|6o&SRElfhk;^y^?qDFl5cmYkCr9dv}mUO0N)lJiRp zC?<-;8{hw;nj}8=!m$vHTvOIHa*O2SP#?X%s0!2)a1_*W(prc*=v!8DB&%4H9)8!; z!`!s)%c?#KPaZJH+d9s1Q320Ekw=uQpDazZV(d7z2tCy8qk4<2`@8#_M4oyS5$MCT znXDP}YR!I-em#Y&z$EEw*ct{QR`3KQ&A~@VKAkIDAb>eDUf`I_M(4xqdZH^l|U(I&f-5d)b~dIq-!VS@;MPVu_{n zIK$3x-kbmC@#}X*gv~}}*_CUrH@Vfu#`naQUIiRG`zpyM*jC15JEm)V=il7Cps+-% zW)GdTMTe`x+!cFOt+hUzcm@wW1w^MJUtSp;Z$)i+CaM~wd5Dbbdf}3I+OX-Le`#!? z1Li_ikq9((-t%Hyg%K(aCE7Zn@yr8uuWUL3Y0Nre8OQ0@j466;AWhSxf`^eQ{Qnj> z8^Nnc>q8%9!Ao+NJi?=RF_!};Ba|Z^Iw$cy$3hdinO}1IvM8M6x+X@M5#rTJlc?$Pfwk zvEMB`!y^FbH>%~~ZMQY@40nbv%}YZJK=GJ~pdD{+KO6z^Nx$!pL3 zs>G*aV>&AG5T6jTNepW$@GK119pOkuP>Hl@IoO=vh|oy187wivkcHV$1#@2TxA0QK0Nut@=Vkf;Ugd0cLnnKpo_{%aitQ?B#YP0)sdf*2C!s=Rfb9SM85rC*4K z#qI7UV-k$v8mXLpmPQ-P3q-56sSh$msC{8|uFZbd^l@5k^XQtL$$cc7S_-$%wUHoL zjBrhc7aLEN8SO^Xy|*}@NZ{w~mnVms0=qGjvWvn0oH-@^RbfVzgj8(8o*l-Qwb}8_ z1llE*-94l%kWFMq2!gEi4yHqYS)kXKvFqkKca}dct6Ex+yZ~DxK?a($;Ej3Q0auOHV4YXeYP6M3s;F*5hdvrh$tnnw ztR$<~mxF+=?L`b~!q9cE1XA~Rw-F)1JUj?=LikF|x2B5UXr0b-%}o`O-}UgbD?n{^ zWF@m9=0i_QG(Ah&#W)PE*q#@?GoYmk+)@V8y3O?#v2QqDk3b)1c_9^ccH?@?f|4*p ziT&*Gs6B$jj((M9s!J^)^o;bDvQ&x?>R#pvcm&pg3tSXpJW{FO19UxLF3&jgy)JyY z1ICYb+WpnZJGE4@=(nrTj6(^)-E(U_hD3W!|{j_7L(Uu zFTw+J1-%$I{KK1eQt=Je*-j^`>}+JyOR=91l;z_vJa>(tM1K6%r22TDib`l0Rt&5$ z82tq_Ewq-{O$bWH*}>T%VW^f;D`Od~M5VP_CA*f)6ln!@vv`Cm9#in!$jrt(N!qBd z%36?O86nj&XlMC&bxy%UCWu|NEA+@GANr0kQ6|EglMfQ!@|@r-KS_{iE>2LPu4X2Y zkZv~W;KIV8KyP@L18Jj>@1nizDmmqO9E&7sJ}gkt*qP;-LG?VRwv31CgPJ0A-^`QEW@pUmjFbr04C`3~WlFs#!c}35l&v>!lMG~6;NsR(v< zu)Fmrre5i;$Z7u5BEa0~@_$`4Vnz_T^Z0UHT($0#cQ#1y2`PW>NoJBc3%B254{!?R zg&&pFGP>33Y26aE09z7aCJ@D%G$3bGBuIuPE86Rp0{>IxfJ^a%Mw?p4#%?HdJW^kB zl((RYl-Ul(jTLKsS~{}zmI~HW-#69;+!k1k%Q5k6h?K)fB)s{bvZV4Tm~6<-_r+OV!212#o=^XZ9Pllh5A_C1BfrU!fhmB#Cd*ZP9;o?{tm;w;l;4<@ zSxTOUg16sxV8`O;PM%kC`ovHSKdH%*c&;%JQB#PcNRY4x0a@ccFi@Hdf)aU7(w-I; z7bWAMDImg2Ihk*C6@Fx~2yLxyx*jsyL))(yhzWJj#~MbTf~e(#uQH#;KX>m*z27qr zE=W{YIt3Ul%L%Aj)q1s##>kEtpb`+>S;&DvxC>sO*m*rhL-AmCb)txV<5k+H0b4`` z;t%qLtW+DObi!_|^`L!n%x1$u2o+}+9(iPYT}WQ*(nNs&h0yls-9=Y~cQ(B&1?)fA`1e8KAtq;sM2z#eo+R5gk$AY5*Pt;F%Ddy@5YcVI`XW{iZgB^YlR9MB|jUCd7=73~V zj0^mGLbhjREE;H#j=+_lo?A#Wx>F@~@}viX^@NraSAMPisV~k&1~D6H-+$+>p`Eol zHWCh$kAtargU;{jF<4Z{^>Gl4o_4QoID5c;A^P%A`t9(+;9kAnbn^0GCx%5Ht#YC& zwi83elcV`vI8IF4nrL>0qo3%I^JqHuM7t6ZZqwLo33q`TT05_6Cq=lfiU{}|-^qtG z3qYhuIO@bEmZFJWIoP}tOSQUKOH2~qz{%Ais*S=_my7E6)5<5%N_yKB5XhJ}QF9;- zYx2g_ibJxt`+_vx5_C>&|Q7jU1D z7GHhP%VZYUT{dAa4^J8TERPs~yoi>0QWxU{*b zuXXw)<&LpT0kE8wkPTGceu8txDqdIt0iR$)o4yq@f`Ug@s`L>p{7Cp}>sIQ^!K_ET zAYZB#b#(IXxC`HsvwPK|`KLW^0WhyJ;rEp97ZBd9)?lc6%^%CUf^Aci>CGvnYaS&>@22jBt_5aN5EcJ;eR9S1#OU{>K%;i zHdl;X8hhb53w4`Kwnd(~A}{T#T}3~*sy&hjs7zaJY0F=MK2mv$5!mdoLzErMLeYh( zh2d1g1X)AjcCp8?A^D%TbTZuS-D&_68aV#s=iC5S<7DK8g|K!`n|>tsjWWp}kJh^g z0$4{H>f2vuR+vgin>W4pLtP}^PYm;3GxHR6>$++c>44c* z6mhYj8klNY!?KIO){XqtZts5|FG*b!@Ot%Me*);KQGh7e`_w2s9PjCCl6PRiOdRiP z;9VuEqjEzK2e&>Rg1NQ_d@!26Rj&5&Me%>2qrr;(6_WrK)@*iNh|bt76{iR<&Jh&k zLJh7+vG~B3yACb$WXM^Z&D}RL4XYs=JGqjFX&XEGG^*TdH$7 zCq1|lLKa^L(pdZ&EE=)2LT_l_si7MLenWG$3=Q$DgI^CN=d4Bndd_kFrQ{?mgB&bs zUbJqiBB|5qBM9hIc8oF|gl=F;(3+ zlLkwKySGus3$KOpvOI+<+HT)F^I$k06oOBbjbw3N#lUQ68~#!^kuY-Hw-meWd%Dor4%vPW=Zb1K+;MU8yn@8mNVO!9RxqNhMi=UJ$|%Ebo#F6xATXA zA;ig)l_M>TK-Zwd`qwLm!m3*VAgG02JLAuNmj93VWAr|YcQ4Vy^#C@|A_2v3@M)KG zMmtlffET?A;_wI8!0`FX1EF(~Wsbbh=Xc@`aJk~pK2Uuwk?-EfvUEMzbI+64f>m}- z7LS4kOWp|1m(~xZG>4k0t6E*;eK1DtR;rnZ!w6`hE)uLnY+J6}4ggwlEe^`K$}zZ* z?vIFV;88Nj2R$t;+a*bp0)iwY_D0PSjT(rlQc7ElMeFtn%5ZJ)OfP9dSS{i_0m!Hy z@mb&=VHTn$XdEe3kRcJR7%gh^C*GU#7Lr;u#TyLT?Le*C7)s4pB8Y6r+uiBqq$9t* zqDH|Q>WQevELc4$guOH7A`2`Q9U)+>92BRh6uoqwh%|xKR&~wC=GveHa1R5`TV*e;LkLG0qo!5}8254*l)IDm!?*$c?gIE$tzQc#oDWOk!nCDLM zx1WmH=a|ItmdaB?SLA8#eehxULBVIGz@OQ|_0jl4K8K{gz!W^0VwO~VwyTvHtuH7L z>A+)9&xkPOO2xE;aoM4laf@!7H0h(F^Q@<9%x>iA#B`{OVT(!kdiYG9+4H9n#BB6K>L;&cuGm&4QfdqN zG7~{<8k9NgaDmi`Q|+CcS{hLbl+i_wd0PmnxzqfcilAvE3H;GNH;WSD7VRR9*Cx*?S$aw(h*rOKHcjM3#&>xf&+>uYk`OcU#f zAG0%UiUMJAlhGrzNYx2vQ&UJi%$Y8z-@?oCgR@bEF4<|MlpjKHH*hXaThz^$EH~A# z^mZGM-VYLm5_#Y{+pW4D!StuRQq}zF-DUSreE;RCP{M#fZW0#vb@;Wo@$}MESWwR6 zYJ7-}rnJs)WcYd9RdhYx`U2Cb7&RzlnnVpKafp#Li(rQk-MI>m<`v6s>dTq>gnDNV zEH0+hRDmAJE1qx2IcFm55;#<9LPf`b3tGRt7NcxD>7R7+$yjsai$Xu!$FE#qNrq>S zUf$t^ub*+?@YAT%vPHmDFMK!{tYRI{qR2PzkNVCle#DEIm6pY`CWKmE`IbB%poo^X zQ;y@3)8!`L1;$i?d^WbmO3eXIzqc2_)GLI;By!#TyiL2}Z|u(Z{IVOyAT z_SHpHm`s}d48P&`h=(B#5o`4sT)7NgH5oR|3|x&UQb#(}QQXI`iHaL*T2=IlE-AK+ zNAhk)m_DeQc=aFGTL;Ge7WuZ<ytIR-nO- z=g|Y7+gV98j2<#L5>Ip<@%Lb^Ix8WUo*$52kW&b@jq6KEPC~NEngwGga4*25meXDo zaq1SAHkMGE@Cb4R=ie3-YaseaE%3o(lwc{~G8n9|obW+{Urq+CJL zScdjTyRY3Lh&>O9$6msM0aWt7We_hkK@%r4Y61SoYC0#m<<4*%OV)1Lnt14(Iq!4M zUl4`T$RL%FDkH!oR)lFens=*GQCzsCQ=x=EzJbPC)CeNWP6D*q*-dr>5Oe*`3U<3&RyU0|fhR(C;Gs}y>FMi1 zQd!4McMfUrtC_jPOeX2-xF}+1^5IeoLbEdCYv;KoI$fZ9PyE*oFbE61QF#hVA*l`PUumAq8oOQolrKCz} zL%%g>MMu{Z(8<*@k7f(}7Z^=?MIvSBGGtd?ju5)D@o?RuDRcVYpg?L#>{2F?&vo)Q zkK$Lb7X7?kM1Sq`PDjS~GDa<*=XHje(LEWme4Aal<}|z*$z5j;Ro)uwqU~iY1Zyhn zUFm(Z+-26iTy7UK&|X^lT;x@dPV`UD*bR_W-EHr!+LyMg42v*TB+7A0j1|HIVW?M1 z{2^Ys+71Dwil|3w_tq4>_wp|*^z+uv<^JnKDDbEnh zMa=~lxC^_bR6Zt4g5n#Dj8g)Bb(Y6_i4WTtt}`^s?(nGGwJ!GEqo@P(W4^!dc?&&E za+S-k_YJxHr`w%^iF4Lt)$wi&n!eXlQS)Z~-KFtMov;knXe13=$XVQbH_B^^->Ks{ z9*VU&4(5u3m9sEzJLq027s;B>ZiUa^(RftQ#Vp89<(v63>Rmp%&lWW(kZ~eT`Z7DU zkCm+n$UdCOM&e{`t-w1*YSDbG^1%6g^qVIUo&3EJA3eztNY!U!21mM&Y*Hgb^!nN7 z7D}fXZ5xzS*Gp8B7^TB$6>DXolER&F-WQM@pUa_!ENlo8@$Td^w66@s86$jcHs35H zDfApk>O14%(Rti13;hJLq!LGGb_mQ}+(+;hKqN?3En{D5V*SJ|@E1n!O^+CNhZJj8 zMP~9KjOK4>1Jn_4MJzKELox7w&6t3?eYT=dj_$i`b~#OHHNAkLD32T{PmFqiac+DeV|u7Q`!c+pjseGg>)(yRVz8K2$qG zJ8=3)Qb6O74~F2B^d{WCN?{*cld^1!*8uo+iisl@K(7Zew?WVrX5w9r^#Br*g)g$f1hHFgi5cMx+c z?S&2mN^1zu>zJSP9HjNgsNK{WL;2Dx_cP@yg^q`=>i6#~ep>pa`VTK2Gcy3K6f1>S zfS!0HguPFb{4My1($x<{-x;c9g9u;Pd{I&JXXi8-Y3gXgsarxku&D>2N)`(to+1_8 z7(*Nlfs|Oke#1PS-gZAGGf&I+6D%=t%djo*Z!J!pJ=as9?D@fNYfquB`=2yL;sWgc za(H2O+u(0Q^lXuRoXUcU3*8ydTRvayV^=}X%Z4r`|Ji;wXWek0vBPOToyB|x~c&Z^R%MbV7V!VGV3v_X4kKPgWw%!S2Bp zH&J_9S>dzH*tFdFeiJlmO}L|MjZjx1H=pxrJ!_WC6D8&{n2nqFPLiMWd}(QD=b_Yz z3qm@!>;3gmg)U4V-N$ZJ_&gWEZlG5#OVTrP*GSb0zOr3VIvuwDnrT$N=)snDi+Gpo zs?MM->1)D)$k7%--S38d-e>9stv7goW+M3_9qQX>Y7^7i0dzHg$E>X>_*~<<_JJBg zVvz%#1?YPrl$gk%9@Jd0;G-PvwG8_O1|n7)9t9wXg-jq7cA*iMLOn(u{8V6iN#Jk) zG_?HA-3?L~z1xJLQ=#rX&+OzS-gzP8$oC-+{x(MP6!vzstRmiXj(VClcoZl_ z5#S|0qT?0ECbb8yK-zFBr|8$VUphmA;?SAfv`kS3GMI0S?R;GOAQRWA_M#){d>gyc zjymUH1;pG4c86#yyw=^AJ?Vfn!SLoCWfY8^p66{dk?@z!B^|@1b0=RgfvykC21HhV zTKfdEIw=xa0-lz1C0om_A+EuLZdnv8kS@&*0>6$E*abVO>cdJXZZAUJgr#)^Gkxn#pN}*adFkCHXsTc!AgyekwcHWWKk+Wn1YiUdUeTU6N}5XWKf(UTkE z?}~VYH7z+-4Je=JDmz#t+kqH!-ha@TjyTBTgvi{GxZ;N}1RFwtib-?+o>l?zD*1xN z7bEVlP4g-!bS^(+@@Xn~?2sfVme`w?EXuJxG($hMZ;e5+W5lY@;49eEv|=`eH}v40 zLnAYlmVQbBW?v>XtRQ!dAPU8_6#8pJB$CMINHSb;Cv3WCI&2`mo9Ny`;uxT`R=?F5)0>RaIfEY8M2^hyheU7kJCXyfH;jc#DMOGWMRg z9`v6AH7KTX_cfcYjAdB-e_7A-tnufHh!#7vLmA9thCp8$B@EF`I8X{U&N>Yq)MpU^ z@Oghc0F;_pdj6Bj!POJRw07Y5Lopi|6R}QhqEe(DS^xc+vm|@+m}_7NQiUV`Puoe} z@0p-$k3ckK`M-MRHtV0941mauI&ZIaW1lT;P<>#x_=X)ZQ}JQc(jqvCWNRQBlUrKP zO_q;mAL?qz{b$pa6zk!c-4Y6kG+Ovuuut758bMld+7eIrw^#3A6K!7qyw@kXxUF<=mJ}wfLtBUr?O0SS z*(TvV30J9UwHKf(v{eeDP1J|ZLsW`k2^kFW$~wsgVUS-}vuW|-eh2J?7f9_k`zcrq znj|5eiz%&2MGR#{ywCu_WFGI4bIO(o#$=*yHvZ`@8Y<#Q8PfPT8IM}&J~Gqx zm8>Mo)32-`-}|kpF3sWm6n0||Hgl34;n}Aw$is1By@^k=s->L8?Rm{+fu&_rLU|r6 z&-RhaJq$AtKwN*_GI8f*1vdDooSjMuLJo+AZrsLmP1|Z182&M_B&fOR*nVQIh;gkK zPZ2EAl27n5D8)1O#K`s8_G?1L5baqFgZ9u2iu|Z@Tng}bmjP&T)u+QcIEV!?`pK>I z3MgRh5pW~g-x;bwlOK!NZuBZ_tb*FIJwzUilIw&OH1GHs_Kr@}8&W@?--4{q`iQ$S zCr%hHx*(96{Qt8i5EHL0t}k{L7hWX0l-c=<<(&}yO)_m$qz#H+;bf-C*us8%*_gy& zC^lM(UBlfxc%|XkxlY{(B=J#(opSOao&GX?N5F$3)`|UTmC?|0v=aS(Z!$M6jwIPn z{NRg^0)4|k+qRS#7rx!PRcD3guyH)>S~kAuXNp;+F1>NP}|atx5`sc| zAkq>$&!7%zA8QeVOTZu9EevW7-#tw+pAgrT zNP=JYxW9b{W{U)PTbS7PfFXJFqyd+G-l^G9-htM{q|tO?UTgRxN-`25ip?KsN8_Kb zshTQgfVJp#`X0V7;4UCb<8V{RCB*+Q!xF-)21^oFZ}y+4YU9;^1z*9SPHE<)_r)?% z=?m}-u5hb(2NjYRA>U;eO&&4PrRVsFt&N+ z9YX^aaxY9?1ouz=f*%4p2qe@Ou`eO(a`#53YDhDoJH?J@oi)5{sZYH>RNO@go9C>; z+G0z_qBxww)#-#q`PWJmNp_T_m}FdC!DcL{?8lI6>@Q?_Db!;xTc0}k*o4o&^TM*a z?p|jIQquuxq2&jtCvN8t->zQsiBC`V*y+JA87p~7Ru4~JfKgp#eB$nnIM2H5h7JK5Z+kl8hs;NNOsk1RMX(5 ze&%_pFe7zmhUT*w?u42vY)=mxH9v_18mHU5%=sGN0@l081SfHwWaaIpZ!yBIt>3Fu z9mcO8%mz)-_^T$te~zHFDhH3M8mG-i#IoC&uN#dwzQT;MS49+Lu6P`0w#kgDBW$cR z=vwOF)evDv;w~Rbu^nD@b9lW>@$LNbP5uOD0ntTO5gzNi-N|wXZaH>dhxt~8I7aH9 zygM#nyN*~~3Q>4hLri@4V9X(94NpH>>xbCRjF(r$p(F|ejpR;jzFT-uAwh!iDcz-< zLJo#j+cZDK?~v>e?dr z>s`H|CDO;B8bx<^X6`4OH zsJA1nWqkfF;UTqjKBNJ&0C87;eHA2fvKj+_8<&^FHKPbrZY);?&QIFu{?cXVPr^Kb zse5a!{3AhFra1EUs1`-fGS7Iv#cyVTx|Y6CdEhoCcC?xT)-?iB3I){Spo%5f?;?0j z$%iXOs~9)2yZ(LL(7^_s{PIwtzr=@>(pjq-h=8Gizt8Q3Dc9S$Ta&gv&$wMGaLAA6uAfdkwnc zZ7rDB^{1vB)gS+TQN`^f$sn3mSSK!Y2OoX1L8(Q*1&_{c4uB_eXY$(R{7BLY=Kno$ z>?ArkhRQf}hp%JOh8%&?M=boH+u%Dt{Hk^=Jn#bfn*SW;UT==H?>HZBVH^^HN6)dV zryDdmoa`(#RmlQ7I}aqzZ`3z$*2)VT#QBFcUo7j!y}R3}ba#?olddJwd4;wmL+EN= zqR6ie(-5$|@o`(1ih1;=V}*d<;qH3T1}sJei^?=F*6;B1c>y4aCR;|HR(;{*zhIVB7jWVcQACrA3tyYft~tdrav9N^XQR;e|R`Ke^uXgj>#?Zi}r8oQ|7&VjppP`)PQE|)L3133)4V1am z-J8PT#=NlM+>!AAN!Wi4A030S;w&a;J>Ljq4oPl&Wm6cNk+*rO$#_ud6yk3M(xzKb z`F8<=mvsYr{u33a7ZHf}X}TscGt8E-ntXK<1vWz@>C6!E=Mdd?=1wR&zk9$S@5=Zx zy{`l{99pC!fx#-uVFrHHYCTce(!e|N7nYgj`nCuhLqTpADfa4Sp@#j|abYr~dRDK= zbR5@WFT#U_w>i6IZ{L5TF18ZOeYL0KmSw-fn@g{qw7?l_M|i{3 zp|LDyc_DMBWU&hj>_qM0{Z(h~OIHf~Yb+&1ZyWFpoKv4;?YPvqfX8ra0uoZunN0f?DM$ zkRh0-MU1S=@=h!KA;u*EHX4`Ot|5}M76PM)e&oy7ijDtJx1dm^I0AMHxHIg+i=+>@ zi*Z|JWCK=y=^t_=`TbaftD6u$Ydvunpk;AM;h)L;@&4QwoRJlgzydL9ET(xn?wxV% zjCNWcf7C0E5H6xOvIAwL)C+1_Z)*6fJ4U>2eZE+}h;Fv?do7T2bnk|9RRy`<8r(vq zj8!?87kEEbb>7) zyK90ZxI@qYA?RR12m2=PIp?nL-dXdb_gcNXtDmacy{fvp%3UItixF$68ELXsZ?!zF z#A6V&7ys@`x}8nk5~5=!c>|_9;%)FjcWN5JCvnjA8n#Ka8hXK`)w;l1EVOX4x0jPLl=pOSCx0Pl=UO?^U|~?jk|NJy5M~VMVJ52kHOv4x;ic zRC0Dd`h}z!XNx;;GZkgxrMz%0#3r(RDIo2ktAQ)#a+GKc88C+EWRm3{JiIgZ1q|UP|>2N*CZm?cCnJ2^}L;Kwy!I+|uB&n?plnUi zo1Hy>OMu zdTHAg@yMO6%BN@ZM!h!88h{(mH_s zvAGU?0RCYL+D-hZZ#;0B-;NTAUxrs+8yp*AGEpUQ_@LC#d#{}CHKzTCo1Wx^;7Cyc zoVDjVrbVO;Yc?feE_4KQDh^oNaAv1QXk$I@-VpwY+;zbcH1Px)3lI^6)pHlnefOf! zqp~6>E=1)0Ce%rxwywBngtfiEfu+s7gik~tWjUYde5Rq+VR{;{$fx%Ah+PRHInz`h z-8a9IwKda(jzv;a%wB49a<#hdJdm#{akhE4awCZw1p=EP1Vwi^w@!7zwaGp!N#7zgQY5a zl4;pv9`xZyfc;xLl^oVax@f+Rm}w15VeKGgqQ};a$h$6m1*ads=Y{+-taNxuG2`}j zL-Cs%Q#d4YG#@;fVQPLgE9)0LxKKg1kbL89O9LGnTItyY${Au_k2I^WH<&yA2p^;c z`3VV`yFF&`D7VO>&7lggPsqn~+` z){t@O6ox4x$+AQuc(WOT=3+ErAH7M16G?gj!=o1U(@gw%GfAZ#=GaH2QRM6Hd9eXZ zT7X(7)lHMkh?hJvOjI(-Q$sc>?28yMq7nM*=gktRb3?JyLnGY$Tz^`W1<`U@C=6U# z!?a$^uD$fm`u5%r`e{0{M&Sdjh!d)9S@j=D!%1L9-0<&&;~+6~cUoa(jNQkSfmtFj zEzEVKq8=Txy(&Te*K=}G0Sb=TlX2VDn2zaA-)458#d+VbpXE8pbR(uu))RkZQ zFaJ8KXZ(M2gS-`FooIE}m(NHKbbpH!A*Vb||MgFX4G#GSY3P_Nw0`YRBw#1h-ZO9a z?WG_IVnTi!Y~o>M&CjOh5!tgn@}<6QYI2=zU}`-tCMnaY@anwxnPp~<^wk!wM|P2h z7FzcXf8JU~gXDmhl0ax{9y}m4k7Y23Nl(F~p3hRe95sNBh#9kNcpmEq<;0ln z>rO0BDuj9HG>wa{4p8)IBcihzNt2#%wtEBj%O4uavh48icAA$y_OgDq15pgyhO=uI zjtX#_}Vdo08i&be2otQt0XsbFVAMEKiwv(mm6kZ+?lIaF=F~dIG^3LHrnUPdyDG-XRmqI)<%I8aWSA!5g+LKZJpJB=169&??l4$YIU zi#wh+h4>#nEBmLu`SOgV#D_Rqdf3(yutVnE5YUa>(TcuG#%cWh+o{%xZHf#hs&kyu z0Rh@;;v9+h?Kn9rM>@$xAF35h!pKTAt`K;Ru6nSFV&|h*g+}ew;Fa;*Cppe6wb_KK2uqx2DpGz?$%3&a$g5KxNv+0 z9`T43U6KCxUP;zLdxuEliHw|)F&Q?Ni~Zsi*1olm{77SvZ^Bd5o%nM4oJ5)gI&EEm zm+2W)aJnmbL&zXO1MSJZ`c7e?T+OtLMNGkM4ltazHXsfFA> z!UM6N6fzd)(~)6R(;V%O>kQCzPOm=$kUNsA!Mwepa0QW)|Cc<>;#!c|2{@ zOvQXD(j&5jSGUC*_kk(*hXxRdp>j)a@}4D%1kW<5xHAu&qH?}&OI1u2^&?NUJ-xYR zZb0zub2vWg<=SK?IdFWfC1#{{)Z&+UFzw}1LR)J951uE>=PI*Z-V*4|hLA^uBkZNl zc5SP+AS1ZJM;X8{uKr*`2yKmOHyknk+jO63WW5Vw*`q!}pcEfi$K^2ZTcu`Z;Olr>`zCYcOm~U0E$~p3Y4{6ZN0a^Rl97FQtPxX_NTrAWlAolxB9U9)?Vf8OS)z{%1)2 z7i&njZ8p`PGOL-EY?hT>#5aG?oD$T|n&0QKw2-4unm@lEt3{D;tPBwEt`GdmMNZqw zsdG`-?JzJ{v_$%~sIB#VzMS+yBE@8sZ0i|+On08tS?9F_7I7U@d;VNB=~!Z3R+f0x zdlnv~mvRL~SC>%<)QQnD*!GxY_zM?~=(dVB%?6`}<_;0`QbP*O+(GSjHK628wGPPl z6R^E3qOMBqgE31H8LVJ={?#H?@#KV#A=zyEr+0hB2gB|Pb=Vh@k@M7^g1i^iBL$QZ zPINHt*(mhd17$?h5$#39LIFzP#hfTTzS`m|B=LRDcQ|uTS3LEnHt6a&E&8zvZJ7QM zfTZQZpZ#S-L(lPLw3L6;7Y2`Q)B`Z-y~?%7)iU7TF7-&InyVPtg`hbM#9)MC9u7h5 zJm*vP{cPjyvfkslFeiYEgiFV}LgGA|cmrBT#%H}5*5y)<4a=Dga(6GWy={Yu3B-B7 ze`blji^BG;X{hOq+MO^w51N!Uc;o{&O@3UTm>Mn9Du9MR%7?M--!$YP_D%$!+ADe5ahQh|`58$`q0me9xu167?%lowLj&ji zEq;+|^~1OH?gP+iX*gK{r|bM1pKi&b-E|=^JcCI4pRw1n_JrYd-l|J9tgOoE2k1M( z)WvLv&9)<;vDmog7+a$?{%i?vs!zEySAy4p-qrn45pg#2mbi^mV;S+J3Z|LDMfyg) zNDrx^ItPu?6!E^!_BOM#sCWq|vT2d~9)0Y+{#C9Ok#kE#PF*~9VT;}$6#qhHFo6QY z{%HRwg^==x8w(1x_^@ZCv4#u6)2*?%D1N6N(T7Q>|IUcbSRvdS&Q^}61T>?uSWBbu z;+#`%=;loZc|A2ot+ig#d6|AOy_36ltt`fKGH0Z0N>^Np(lw~6 z%ZOf%p5;TJ(y>QDXj7r#&(WS(ZpA1jeysO=`{ydv&EB}_82i{5j>jT>@^igBekr1 zwN`7`$=%3zTJyQp5 zEfvIDv)=-8ABZzpsP(K|9Tel;bSD~{M_o@Z^RzH*3d>QE0G8avYjs3-=vs&-FX5qL(IPy-u=YeR8zcNo zBooO&rnZah5Rq6nz%cuon5HGR5Yf{q38je1NmQ(yu%%7Ok;un(bfU>8_f} znM>fS?5^r=>TqIn;L&_m!d<^1GNUzpt(N|qDw8&;XHLK!CXkKd1)*sy^qiH)nwv9S zwu(&+OaL${7k$sJY*BHg3$QtKh>^J^1$1+r22k7u00&KYzNWX4+FmfsWh^o7r=J{FaQu^r8r(uae3jyOlBUF}V)Hnwhb$pc8H-0>>H z)tD|~Nh%UKJw@yWX40~v_DfZeN9lAW`c#cyG6}HPr0CRLbqqNb%Ub=zZ6PcRcWbS)b$*OQsJmWb zH+|n;>X>KXg`GMlp4l}Y5ypw0Idoxgni0M-^FTPo!h<;QYGqiIRC<<*u^kGKozV6 zj2k-2tXoF@PPEv4^E5 z5QwnXl+oD+d6Gz45Cj4+_J*Y@%vY5kbE-{#UkH#iH*S-5wZDWNXR2?v0Rm%J?XfQy zSXMG_-6L5Y&k0&vKBbfT`S=@IYlg=_k}}~Zi^GWe;kt(lZb$H5+AvSR9uP(cCG-{;rlu5+6@VS2V^Edg*kw@f9q8VgapGZprb)qiD$#*Q=Z?49{1< zdtX7S>WLzr2I_I#nzZGwxcQz7%q2dzW-a4S{$_+-xT9uFBbHgpC_0F!jE#Te*#;r# zKl00a3flK%G1E5YIXv_vQhD;sHR|yteeUX)+&2O2nN)juC@jvXI@t$>t_h7st2B>V z>(MHAzD1+Q|8afI)34MyC~!C0%)*SNfn3>A1>K(@3DY$Un6V^P0f9NP(~iFGPL@qO zkj@ITpcc zw8`!wia)z@1S-|h$$7{&!uWYO!dfd6g5R)$?ZLDwLn-Yfzv=FW*xA8djn{fCY$vv` zdM-r!R&#-~?Lr>8$U3m?=uwslkosbD#F)AUy`AM#{Cr`dJN`?1d=N=9BwsV5qwz6%h_fmHZg!i$|WVQjDPFwQr4t*6Ypc4bFN7e!C`; zgR9=_^Sf8JoA#UyzmnwM8-DY7$p*@ir*f5C%=+A~kr-o|#C4-L478P>2b5$tpX-mD z+0zx3o!|dnS{@5Ty!;SoZA2*sl=qB=NyKsHg0bVs+xTW}ZGFKdCEGbC;FX-$UCo-( z+KU}wcIZKhcM?kQ-4!CShkyRupxLFXHbDE*+sTMwH>oxJ4$zr;uMO&zv;}{@y#e?y zq?*0^$rDqORk|>&Z)GCjGX2aWcP{#=p-`aO8PSE>6=$IHUSv7cc(=xO(iB#Y9E+Qv zxpN?;{f{ePq4f!?x)9?h#nOsK0GD;2??ln38Uz88M44ZJ-u7A)P6IAEWky>>TMM9@ zH-2lv56z?C2(EYx#E9;?&7re1bRx#Bv$c(nA!hWKbPchQZYn$OaoQmjI zDPd`UZt^u4pI5W5m*Kd?RfEzfLOwzRNsWXwT2+`iNKvhysGXv1sfIne-jcVj_U9Vp z@|xp|-&_>ncBp7!jFg9rE+>Pt)T;_51_eI9`?wKBEte3yVSAk=*nzC(VX%m;MMeEA zFuzjQ-dzEg6IfL`HmZ5ZqcV{qcqX{*rq9;|v71|=fuHNlv{NbHlmljcPho9iTH*iP zRpi8#&cE+YA~0%60*t2{+u{e|c8JOJju(WYAxI5Z+~P$m3*UQ5GqQRx--rVS)P&RT z@pe7?L$;Z>c6GE|Fo51s8TsfxsZ0(iE;$oIAPthI@IhPBWLptT$0hRUV0&kv3u3$v`OqVkyw7d(laPtuTrNtV9#(eW!r#Gg*vI3-J_=WOoZy{JhB@St#n&6{ z#Kpq-k~@~ouw;)Fd4`Rh{k(+7;6U@S4SFM#x{ZLzScI1sL?lPupS?XekRf(bsM)2w zk2f3!ctM601_dHM+E;|v*1vK-#tcmRy_WjUKH@NKE9_@uB~z>^Oc=2^dpc&{!o)>) zMa`?p2SVH$O%t#w-;av+OH;;?PYBZpl@;j!F{+3T*fSOm3P+ zn-PWS3YYGKK9->ueMTdGjLuw74IeU-R}&L`fCf9IL`FI9-U8{Q(dn7rkP4=RyGcr>4nPvWc!1x&ja{38DZESk^+3g+6d2p4 z&Lws_sh;D+0`lD>p4-%?-CfbMpd@}j*m8`%*!JfWx9zLdH1RhFhbX(C#aFFUgO+BK zFC{vSsN;OQ4&J|K7IUpwwN4GJ zwdcDlHNTyv_^^KZjY2VG>#=DsY6j+B%KYQ&B0|_s8C8px8Asl=e9T%6=bz-*xq(v; z5*ubF4QZz7QZW`Si{t=1kwoTjD%Kh&m)E4nS5)E)^t6uC!HsPg{?U>QcvcMR7-Qc& zvs%*uQHwdqwzeveUkNEwT&`EC8$Qj-hcOs+RkN4ftv@J!bW`Q)_BV;emt(jG>sIU* z&FYtfD7mV0-o*|LQM2YYO;m0>m}IM>I5SbX-VmFr-uH3ObcRxot$hxXYb;EOF0Gfj zQ4`xkM3^>|Mh5Is7asF2&#gCI)|5#&h4clA;8>Wa_uFs;$ zZYEOU9)a{7+*LEiiG$3k;V4BCjGKWXfVAS)ud25&aYt&p3&Zc6y#m5=(@=J`&KLK(TN2Dyz&>48RUw%&^Wl)BrDfpcL@VwTK({n;veH9~xp< z@7RkbIzm{qLDHnlVFK;pkg6kKo?I6`31XVyOL9ytkuM;6 z0HIX=iB;S8n#%v=3W$}Qy=7*uYn?UN^$FV%N}S4lCj@Y!#CP8KquZpy+{4n@?GUKW%zhc=p zj>Amnc!Xy^xqA+G(U*k#p5Qvj?_ELw>7c8%sfy5T2%Rkyq9HR5LNrExA$WwZ-xJdq zNMObyU6ufh;#TC$O1dNF*>Vw}ZyIr&4Zn?i=kA1;&Do#Cl8QE|!%x*AvpGe)glPX8 zBC8VG0x>s$G^vBO70KZ`X z2{|Gy;8_3KZ2v4Hr^u;d(CmH-zf)j8x<^E}k{VCh zp3L}E&Sr*{--Fm$wgSvJDd_;k;D2K%)eV`=GT_{}y^+CeJ8VJ%Nlv!I12dvOjeqEQ z1JBholuStdSsOfpTkz#ViHTw{Da)|b;vWqEkv8>6HQ`F!xERi_drszd+!n?Dx`XD?^iyWS(2e$gIHNi)6{r~x> zqRs>%+5dv{!y_?ApLbI)Y9WInjJ2hJwS~$hO})0@9+vI`kg!QxL23vg`)~0Ne+3eU z$`*)f){hZ6J7<%yTAQQ9T^*Ak41-Yt=_L%p6e;n$c10^do-=SUog=-jot)g4KEP->+9LdS(p7^0!P1SASCH?jTE~! z*9n6s(_J8HKxN9RQ3fGWXVtSGh#EosR79GczWnc8W+l*8?ORQ8`@U|Z0cR{H`JHN& zZUN>66rd%ur0zirXxQepq0i4DnVETy{L%%5YBkVmBrP%il(`n#SC8r*wgU3r)9Otj zyj8EDt+uU^BsIn$5n9z|aYJCdv4KJgjR1qcG?Du6XpnS~q%W6^p`#c^jJR_bB z-a>F?z!x!R&Z9R`)qh^s#hIaVNY$0HS5q$WEmTy5S7@O~c7N}EZvG+Cjm#@Fe?aE2 zVFmH@T5IyNqg6<;tW5XNNEVJQ7cBch#90LMt-JoA{|C%$b+_D;<>m$_ykD(b{@wtL zmEorNiOJsu5ZTlArE%LUgt$w$xJwtxr@${!Hm0D*#Z+C@f0SQ&<*>}W>d@NtP%UyY z@?`mkn#`___KyyQ_K)yD`FE&hN#KTf55vCXkAqGQiFjvPfgCnRu0Ux-X=v~7>dZ&5 zzr7rsIaR-w@V`pcWCj#uMi5_Fjfc>qd1o#phQw&IiDb|yq!jDUf0?d=KPI(~v zLh%(htV{Xm=k;<25Vjsf-34P!@nf|7pT1NPGW$A(v!{6+-(a0Qvsh=LmeZYiyYvGk zv+(EsAK=;UYdt935e5peZ}D|fB@d&1pDE-78-eC+<(E$2eozq;-Xy`imOVw`+UEO0 z7gj2B@`yqcDN|N`$Jilz9lhDtoDT&--4Ki4Y!F@6tNYOw{XYhl9YyGCZdx|;nv18x zF9&7>e*fx-?`^0?$U(IwT%P^Qz4XfLWZvQ*c#WlL7K}sv6MyV5?(8taV=*+33$@pY z)4UD^=<=7o5U989yD1k)=!3tP(rTaQ(f;;WcoeH2AX%nBhAcZB4bq)Puo-wrEBRmZ9C z>m^tUf{26i&7eyrL)l>s<+{1ZPr6V@*;Ao-Ir{$$E6?Tp;A*H=_3AsAL`94y<3;7> zNxEQxHbbtF?+L7vDuFTzDr480Q$jU-7;T2o=|9NV$jjWi1g5E-q={sEr$Kw6 zwWZW^t!4!MzTYE2V_=-_X~I)aCBMO;3=k_fQ{JF{F8Esf&tR?cSO$N3+R!I&t6nY` zSS1R|#D4kNB1%hkdr1!=Pm#^GT6L!XBOoOsU4HgjPTYQ8iA%y|zaMSa2l9eMi+_gy zc74e`D~9%(w>pG!F$|n%X4wCAuFm<&Y7`f(>d4@8F`YUlBl2XFjs6R5z^Kb#y%K6m zVY5JX%a2?`uuiP3KW|bbXVBaqy|&eXvmWNeRIn=gciJ*9`#)xWnMbB%jj|YrHWP`4 zSXo%M>2T#do9eMUy8nt9e#`jXQiij;$Dd$4x>Ck(`g6!_d#z8a-2W*io>Ee7d$&@O zSed^?B*>sx3o}YwCXqXbyQlddwstqGI=x$jZ4q<3e&k!sfV&bmEJgkXQ;9^9$}WbG zc$NGQ3SU4%ZJTC(g+F#)ZR@u!NK=yPa~HLbhO~03B>p8PlQm_M7$1Ie>)^D`iH{<> z3L-6gZP&1JSa;9#?`Og)f9=$u44S?#aUmb^Vv9}6fYQ%flKs<~Iq&8fO25g!!h1Ye z*{ij_%(w9Fyip-*VGWG)qqM{RKV-Px#4!bp9X=b!tS9PIe(~uvE-O~E%-@=Q{;Mi~ zB{d^N160km6qa3uV`r zp9s9f*Zn9wXEp!wj|=2*(rf4^4!TN$Jd(SCpN2q85!WUYQg#0^PYKkkR{g_E;QolO zhMcrf5?HIjP2rDT30_wGM~kw%+dzg;(8X^iFgj)PZx?ToxAiIrX2P7z{}WCfPlvr; zvqxY-|4s1Ajq&m!j{fK0hDLsPm867F%>RDI%eD;Hmqqv4KmI|%TrJ(@MQ8xVD<%EI zkXGqp&%nlKtjJey+4Hfx)t`9wd`Eo+1$HF(|Gmx8VUcSe`yHcW)l$Axjc{5&kYv*k zD#@iXjQ;Q`Y|Y!Ze5t7o9Nrf3J6`RK1J9Iu7Qi~F%s_Q9!;YU?^tD`y7m4hy!?cbRdCKyVO17zXfhsr}A nQZn=pGd}#~-T(ea?hrA#2aGb)u`wqA^rs-BDqSyW7W)4ILA_N& literal 0 HcmV?d00001 diff --git a/public/assets/img/ui/bg.webp b/public/assets/img/ui/bg.webp new file mode 100644 index 0000000000000000000000000000000000000000..bdc53756c8ffc08d1b727dd5a1372ca2cc0efaea GIT binary patch literal 87024 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�YaiFr)&d=_izsMa zJoz==WrU`mFG=X*)|GiahC1@lQtMwCv9UhC5Hq3-4|6hFSYSqK@sRC@p5$0E}o+>^~=f zJ$mi`pwm+O*cuWRLMcf81$2?V}u!U16t8jx(G{K>9D};oFVwbpV=P8QVw}%Vcw%LM;PQt$2xHri$a_1t zjhO#sKkXs8qaF8BIJ-GP8?$(h(R(H%a!~*=$FGy(k#Dyz8z%=7T1{Al#VnKbq7tA( zVVpY8Zx~xkY$JTgnTM%hIKkHA`UfvSRm1ysc?C*xPfifIc;7k}fBx{oat{f#2hf@n zX^U-5VA}u3)h4=ikfFwEj8-q6XP7!tCP{sGRvL2;TpqEG~Yo0 ze!invA}UdST#h-j97@tZSsfob zo|Kjbuj>h->X~3f_dfb8izUd>7y?6)+~gabSDt>Ih3+7^bAvxL5%!n$cp=~R;27|m zFOM@`1|Fb60&o-dy(ZTyqPHP}St`?$_ES>>>X_~U3Ite!RI(C=^RE3HRJ8x|OFHQw z##c@J_|EXyf&sx}SG5vlz;{!e@VCHxKtKMnhdL@MBLdr)s%cFYmy4-PuP z@sLohoDiqjoHX8o6DK8yaO5Ne(1EE`0fVK>&!(3sRb4tuBRQVag|KSCrhESUX#Smh8{E+AgmJ z^P$I>)`$LjqNwIiqP!0?vHUAFdb~K8`IMHweeVRCI=zLzKI@(#Ikl(oKAMzO*oj!C z9AklWfBST7x~PwhByTifBnmU3%gU*%b2LwtNRq$x38IJpS1zL>g%;$F9=St=8-TG# zsv36&w|XZ|1PE|o{As{Yd#Uio3L;i8MJ1}u{yT~-lbA0SV~WiV?S>U#nAu_$6=+~b zbEgNN{$pEcf)j=^eN*RHLx$rM?ki-A$Ja>#0~hu;E@+v!ig5iD&myG)xdkZkj$=Tk zTQ64-xo%GcH00Il5<~$@Kfe~imv1LKdbvI^$Z`F~>GACa{b>$T4DDuf~%D-yR{- zez=>(5O=IMx&4D-^cQ9x>~dD3PwP7pC%>2X&y+e#@GC#fze5&OTso3#ion){(#mknU-OV)Ax zm8l$6?e5fNzkt$Wn_b4gi$P?|%%9GqkSFQSj0knBv<67Trgi5e_2bZ-m56!pVH3)C z;<%UoB*0>kHKX?Q@9m$}Vr#(UaIF|HesxPGD79Y`97*5s&gcx+$=8-=!2~}fG01(T zC9;;jsCq@DmCYT+{#u=G04*q4lGa?VvkGS-@}g6Ee%KGQOA5eowvkCG1k~1~vU^UV zmOG*IWB?K@P88R6ext^wQq5QEYo_8A+Daiof!@JkDUsCAW)<3-WzC=uKN8nGIPej!hagYQG&z>qa8FQg)+(OSzVk_};X&h}wk;2~ zrLM=V>r8S@rTIdiX#}Xfq_Ycf6;6K`-gqsBA{ay|X)09#e2mqe@eV^Jdy9XP0_ibC zezP!g!m9`bJmkP3X|iN7bL+)y}G4;HI(J^zJa}Mj=Ii!EbzSf0PLHARxF?^ z+F}zGbK~BaySk&%ZL(TvdTvJis-`glIhZ3S!2e8%FFb&;5CFZ$(&YG;N1k`NMj!+e zg30UEf+)G>%KZt943Cme*8j!}{I&FhMOC8$Qg%(woGfBBrCMldgMST5+a1IRJsZoE zjXT$)M)M zC{!aH(Th84h*`8ZNH`6MO6u#M3H}Jr{Ppf2-#dlqDaW^1&GGin{bWsCWN|d*o1!MA zu)`!e1zHKAh<*CN(@G!2#_S9TObxmUSJc!P76=MdZ494KCNXnbSFvk@DYb#%*tUr} zjc?E0+&@-T0CREtAtl7+@ z#4=0WMY7}#3#s5m9NhKk_8EnQBen4JKqrgSGMf|%)+PdjEpb;3=< z?RT-U;sx}^evunnuL{x6ioH9}Q&x!VN*o<|_sq_l-UjfUoTrk-`E~}68UOMdFxL^J z4X=j{5#c@cC%>#m@&|S+P-cych#}CMO#2iU-;9qdpv^a7-2+loO{PwDLFg&<%OAH&{?_cJ7~RF~ueL6Ge6g+t=Z z*%V+)sogATNK8*i$ z-=*2WlZ*edJ=bbk1`Bu@hWwH7GnheLV#nhC5c`W1;{)eMp_S;dNnRh&HIQHx zF0a%SppFXL1EMqC<{i)M=}zwtoeL+O>6YWF(QPfZfGx!oF;7YWA63$WsBv0(_Kp7Z z_#Dj}D4P05<$knlW5ly8U4e6?piqQc7xJGVs`GF{+EL#VsOQ8s8e#XcU#JR3C`HQ& z3|@7~6cc;CbB)^b$lvzb#uy^28Qvk0f_O0Dn2MS{K^1EO+v^UN)Wg%BAWY0^9!2?8 z_!9g=EkpG```>@mM~Xp;Ey8*A{zWiyt~-XRjPjS#_SqLBjV7Rx$E$@%@vs!WXW4r6 z5N!If`(@5$7m42x)ZP41Titql$7K2}fcle(k3Hp$PUihS^A+?U;>y1+`X!zW%y)rv zA8=H>o)lLheAj13H+yzqj6v}@cM&B$FSy(*MM#@~xYmD<7LvGFmX^xtxp;&W>I`@j za8(8c4fRE$QkyQDRmA`g1}McO(GkWzKiVf@E|Qa?Fz9vcGMfd#{1Uk-xMKZyxPkF}e94^0V2{gGspSuHngcVb;V;aJd7Lhk5a##w+?b zV`sR1|JAYmx$+y%Oy*`(ug1fHrTHj1!Q^G;r@(waP{ZCBcQI4Q3I#aeHqxWR>k@t? zMFsvd8XF&$iZ!euDQ0o@$9Wq*{7Rj4kqlGnD}^;c8pD(Iigt zB-7$t8y%iR4{9oaxwwqCD$Rs@xSc?suK?<#_<1-9+G5%Uox<(lw)ExiX&=T_pTW!T zdODxX&gBLQRvGF`izzTS&qe0$BK!7zR}Gl={ne4C@+I#>RsL1rzd4v>&sA(WiQa1y z&OP#Qeb6B^4@1P>5$>3})BS}u29=JD-r`d6(!f+u`W4oq)BnH5RU*Gd8%^W8Wck$B zfz46v#}dFkU&4HjW!7W!*I-^OTA-A67OjUp{K4ZCoW{T>2qn7t1P@FYNkM}|risz8Ua_Uu-3j{_`lZ7et`scA=@~F6|1C-fNc3L z;}B>cQ*egtVGo>s7?@MTDr7KB8L+<#cZye;z;)V?%z&Yz(YMs_F=?YDEJ>YLNUE#P z-d^CM>atGZNl-MNlekWJ#C;+?!VEnrkraxW1bkz~nCTxt3muW+IGKoq(JA7C!lkP= z%w2NHjY8{~><-mC+^gcy3P&ppI_dMsHp#rB#%&GitGyoQ{0xwe0dv+ZF!koA-yYa~ zKD&<079F2^spTKYz=1_;28NfUV+MGbiVVapQ8j&5b#@29Hm^f7wV64Ewuf-f5!o}E zqF237p_PA!&j_F@yI|lCPkxd&j&*^O5_y0-9yA#G@0;wzvcgaQ2A8VG(<@=V?9E2# z1@9Q`_uke)T5Lrn5(Q@9;OLAFH>ft#Kdz;fcRHJ5Mld5&`IC^Lr}$r)Rccql}|FUf+J)_~HqtGT_{2Bj&!!f=wk^ zQ2wQlHN!BX`)BJ=IH7(Y$kd;?z0XTa^5{bd=NpGtxl?F||%rQyUsXdzxX+L3+} z;blDJ>ARM=c5o~hC|+%OBDdyQQLuhH8sn9jOmo25*wF3=1hu=&&qAEN#(4p!M%XC- zjG~Elvd6DJ)HKvx1bQAO zjG(k8V0dUw9L2!lX2xVf4T#lKz>H?4j7f(7yjm;JZ{pm6)_<%9R6$|eqL_Eg!LVel zxlhmEV|m?Bs!WUoba+5DxoqM6<@Y&K4y&$@HXI z9;6?)ox%npuX>pc3k4rPmhk1#q`-h5t!HK{73{$2DW2z|rYKK(eTp7zMDkD|if>lv zlwG!)uy5`J&{ zp^tucUga#GHNhF@ET6=+zDC*kMhjc4M?%E7)??Bmzr7%dFhMUP@vEJM1cjR5kSfbn zqFB3*$*M`WOV;JGWb7_55xib#-y)&+x+Yz4NE8%{wHAx@ow94J8;;9_Bmccp5t)&v zagaD3`CWS5&J(BnP^00hDA*6Sa1Fs9cKoJ3FUVqW&klqZFphQS5OO&Dl-CEfg%h4v(g^~! z8Y3^zhw2ZF0h(byEuN+mbZ6kPOIcPe6c$WizI?S&dwmsTfLwJsxtKy1IZUyTN@J5L z7#9nV^$K=zjyLMd63A(3Ok2 zEnC3)1e1*q^-I;9mGm2Q0VY*50^~}jx{_gU^R;NgoC}jz(I}|;ul^IVD)O${z!6GT zO3uX!kC-n$z?*g3Sb^% zdl}raqYA)h16+wE%Ww9V7aW=1(h}Bk2Vp8n3Yk?nd491as`EqvdH%K2u;)7(6(wSx z14lf%8hKbMh-Vy5oWQ4|o|Hcku$ph|ng0@_8MJqGkkTK4^lV9+_TI_K8u>}3ZU+8p zG5Y2gIvJ}=8^zgCaAdK`gU${x)uha}w%wlPD1fPLFNdYe1d6`x2fnWq57>M)vfD{& zz@?af#Wy^x&amMCR!l{3J&d^}Idf*7xJ$1vVi5pg29!zqo zP#GSF&?@JLS_Cbb3o}nU7*V1$@ukZiq;}{(#rxI`B_N9zW1a}!nS5R1~+V! zVgz;Gs&jW%9=#@P!c`A;09lF*g`@oOi--9O7u{^uO(Spk5dWa!uHAMz($}@kSNOK3UxtSB zyE0MZoa<4SqH_9c%RNMPM?oK?*@XjLKk_;rg+;_`+O!m4Bh}} zq#5?mS0!69#p5scrq#0#;|^q{&h%2tCZ@fzW|zC8K@4zC5y{tyc$u2OmcN87V=DSM z{b$b;@255n>wipCZ;E_@MgggdZT>f?E0xF_MPGY)l*EWtvmhZp-=+*oXjYLAyRxq` zW_&XgWH+CC>}}h+N0O32DwGSkEhYM)Jc~SydGl57FwBCSY1qqt-_K06w@TK-|3D}b zjzgOysmU1GZH{(~A8vX}{Y{IUcJgq5YmLQ4y&Oo`+xd^4pA~0dC2E#vPI`o0>yugD z?T{|_7vb3Sk+c}^B@Az5 zIB$#v*Qo{9CsBJhRR4!xCy@WJU5myQr=s94wnyLOH^mt>wLzMz2aJa-=N#hpt2%J& z@-(f;PYfk>0DNHB4>*R;bx~!eoYHT*u9gf7HfQ5~4dM!#jl zzKJXS86;fgL4c+7`JixH4h0Yn^|Buc88pm6ycUoNh6Rbv@?y+9_qKV+ys-i%<0eKd zz{Dc)>iemoo|vfQm6Mko>Y-g-+D;#0|{ygvvVh<$*#n4n@)&k>eTOo|*#55l4n&Vx$gpFw$YR-aAIMpP1 zykm~v!8O9|&ak+^Wb$}QRPo$3;=be&#Y7}zUzkwvt$jQHr@+dkJN*f1CdXhGPaC_5 z*IbnIkb+?{{_pOTK_B5~NIFPcnnQFz5bx>YlkeD&tN6My^~$mjP-Nxx0b0vF%;Y(| z9uF({7Z=(yy4V+>d&idbA_&_>D0I6G>vF%D%w}>m1$eogW2=s)EX=(3Qj*6@#d8Qj zPLaNaizS&FnzbQbFHjnLu(BmF5Y#|NrF#(s1>k3TNTPA`%@yaFXvwjkiny#;T&kid zEm0A#)XOwT))9n~3K|VMm!ZWvEsksSC^}rTp__^^wKmGI02d*R z}aWp_jtFGvVs4b&&>)V-U`6&duI->Hufo(h*J8)bwb^hj_j^7wQl8 z8g*bxd4Sf;cJa&KcZ1II4inK$;0}X9*J?gRzgR>Di<9cv{ycY95q<13P;A*k^DE2D zY5ftY52vAAATUzUh<$f~=4LNU1d<3E6om&E2w z6RaCu?gmcJte#i*@Br&p3fX)cNC*ETGwTi_$#^RV_9-w16m9^_^-!G*dKF%dAg9I% z6#T$uXShk;j+$nq1z+j%8@a+OTPb=*o?H;sEs-yRZGY4tiBW)8rDpMu%A&|W#dse= z)>zFVQNOx0U>7+M`oQqBsbn#r8qh{+xBQ9W?oDfqNcfpH zEH0)F$BLtR@D>dbYdE9wRD2CE(F{r`O)LO{RIc574=CWC8eqxuMWd0D$m&isp4~<& zU+I(Nr1n1RBRMwbWxj1s#2b^TVHkh_T?rc75NjxBqDzI2 z9h+ezkCa$&g^hPlLSG)?@95SE$0@It_yGuPpf4_bs;vLv5I}o?3>&wHBCM_7*U+6| zTVc8MSY%RH_=RPRirL(cT|XcpbcJ29nU$ern-2;|>kUDmAKh(li3LGf`t^kF%$msK zmIh^YIxg9hgEiC&)U(=AIu9oJ0%=Yc_u0zixGwEf>CkafD*b9&-TKLb=d9ftwZVw3 z)>fq#H$F#*bnGT<_&Lm|PWX<=nuolVI4H|fmq}}6PD2A_RFRxI&KCgbkh%;&!oZ=o z5-Qig6bnx@ZHSBKI(uxm1iMiZr-#ARX%8U=x!tOm^=?to{HfrvPQ3`uI$@)&QH!fe zciPGI&#oB@OYZOWd}pD3q}6(- zP@!&*tzpLd>QF>nLg(_nncpuo|3DUwoV;F~XIoh6>&yk-XqGOSsXgP#pz2vuDV ze^C>nbbBcxa#1^v`Xx|u?vWf%LTUXaH7wg1tOM_(rslBxL+#Q;TFE(47fjBd$q}iB zAGSOx4)yMbQy|_A!h-=0%WWzu?3p+|v{TG{kyftA+?bN3(hkg^0{HqY4EVrixF^o3 zSJYIGy><-2USMmzXSuq|nkFP3*n)sLk;IQxqz*-ikEX2nbgjHhV$_wvz@EANohQ}d zp;U8@pWMiXC5TzE6G#H@TV~Q;*MyorQ?P~&SWp}?(x$@cB;j2fqc|* z8&WbxO5oED!m2%4+MQhhfrYm?;YhB%r)8&Z>ry^-` zczaI|pgGLCEdi#Gdg@SpFwaB*tS%RHaMC5tYT!+33(>iYVa8EikWqsG;w7wxw$ic* zE8TVw@#}KP%8g+r?d`1N>vX7a`)^@+d$Gd!-Y`iA2pbe`5FR!-K2l_V|G1@Xt&&3D zbiton&ZOX&WcQ4ybU7iZy1N`Te=;N{RPFRSwUcu{ImS)!OVy@6Gl9aGz+JT*mKknZxoH9XdKcN!1$ihPRai~%4{rgtiMiDk?%k3U@tue4B^I8g-|P1CjuCmYXqU@_LG6l&CK)S zacrvrJ-o*5KEI}TTTyZ3n&6_jd4AN@EqJ>%V#8=e3fw|z{*Cc2&MK5sLJzLo~vc=~a2#M{*q zY#Des-icS1LwJ-zUsRd%YCqN=?ITw$%g2JaoyfluTPTG_bbvs~4&sq`h_Ml+Yh}lv zIav(08xUefEEy%{fgdl^gOJn%O5|8ol=k~zgEr<2Rx%)>^XvcEAnMz^A_a+>j`w;| z=t!-IlKG~*Z)t!kVS!0%19^-5(bvyuPBv+H8oALzZD$g9*j8ix1>b**9Cs`%k^3gK zGQsint`xwUqt!AiPHle*o(Qp816(^)jeStUH6kA87mRBBz0q3pAaP3AY!)k9Kr3Vu zM-N+8DFXd15&!hl+wKgtqCGnMPEtD;RBVmOO`~0~m;M~~q)+9115?_G7LFET1+n$c zJ5`$)0rl%{UuA~FT1?V8qb9Hi(h&CyY+q7F1Kwc*Flrz9VUMpYfQ=-TU<>pCM?(o) z0mS`TfLlNY^LS}A5W^%QYcNg}vS;MU+Z#nfyK5o2biP?67BMN<88%8b_Z~KCv_+W~ z6O!!oqrNIQmfL7&?bgud!Z^+J=hsWGulmQqWpXnkE$S zV9u-1#+2ORjC$omg2Weq0w5`xuvRLv-+9``GXK#0-lkwFUk4`2Y!A6lG>g?iRzk(3 ziT6%__>-)Ifse3lQo_U@6ke$ZGr7TE?t>x-(pY-YQaS0jsWQ_kh zUn&KOyGD~eq*pPkQxKjgY)5=*Of1BJ!Zvf&<`wgM%OnZ{jW_1I zQ3c?P9|&t9Pr?OSpx`7tq>wl!;io*%K)Nc?_m=2RQ<{0*n^YFRf!C?B?Ic$OZeAj; zGm^v${M|l)B#y{HN^Sq`t~^mkce>V`1+C9ca3=!mw`DYA_(4luc*%^JoQ0TbUu$+7 z#3*3l%$2^};6#149*p zSVl|ohDKH-Cb@)A48Tq@W>qWtErII4f{&}{EEt#JIKuAFF;*NHVL~M@OW<@a)<$`E(qSy z*X=A{S7KtD68E-Bv-!yQu5QTE`i-^k-}GUm0}devL*)z(FsU_*d(T^yOUe7|{peB} zy)XJiVnl%Ry*gd)6R+w|a}d;o0WRv;H5`7~#)3D)&_su=T!`1zr-LZ_)Vvy;PNY8- z`?9d=cz88LuI6f^^?lZq?Hm3DVs%n_PgVHkwB^f z28ZZ?sDkIHws$0B%xQEFg7U^b5MrE3vnDra!ld#VKi-W(S4wEdL!pL8EzKYebc54O zFTCKPf0TJw`^^m}>oT1uCZZ-^$$cYNU>TgN*M~gwr?cn?g)pckFZRjIX};dF&al!5 zgQds_b$9;^3jP~53Sbq|IAi&&_Urpy3@7$7v!Dq{U=O2mLPV{E3LRzjX12V`HV7i$ z+eJbQ&03vSuJ4Tn)mE%ol>lz;I8t1^=h$0C+y?o(eunA6S8>ihD=Eazp6g<`=kog9 z2wg_Bl}ldv(-z!jPCgp(Gxt#p`ZbSm;1wd|{NasOK-t&2wxx?vd2l3&^v& zfo{To7KV+>rgYtZwwxGS#2125E#eT;mA;)C(}dBsLrJNI7iC#?%n(VPfsXs-1hex-Jak)UH=O2~6is=^T2_3`%CC8j z9d-aSJ_%9b3dG;2bh&^Y${Nxs=&&%n8fw3kwR?htGQ@-7T|8whA+^8;g1~i!;9sZn zkl-Pcy}5h2l%MvsFB2aUawIx6D#@K2|1xf(KsdvqZrG;Mw{&>);4RhyASMa9q<$|s z$-WeMc|@qCcjhN|0IeahcwdB6QBhwaUuzPTYFaZjLWgb_U!|hsS3@jSCT>8J#Y~2< z+sIl~eDeopQUMMYQ0R}Pd^A4=Owx>qqUCDPL$!C+2%uFZxv0|(Lr2eDFU@+F6XP&d zgSuMhGz!}&W6aNlT%FtYFGJ1R$W)SfZiO@?4|1u1W2v-k+E%e%+0=p*26$ z^gLx`2w)zg$`A-N7#&Uj2hWvbPM6}0QH4bu%k(AC5#OuL`VPZE(ZdC|Pj|bXh{=Vx zBKC9LQ!2T&-brac9KGQ><(AX;ea#Q3Poj1$;c8yGI9O}0kIJzPLscsGrd$EoorKoSU_w%)&T?MbqFPe zJdJ5z2kt#fU7~iHr4vnsvJWE2X1W!iKvyWgkD(l4Wg@41eC+Q51YCKzPW!N3TW9RN z;6FsEnDDVjk-(BTeBP&}Mdt?490WdWP>3NY8A#W_>Yd_!OAvZv_&G!pQD$jLaa9(W(I{j98PcWb|6# zVizs$RxzzF6wU-H+$>#%`25S%9pVedI3jj-7T69yw{>t!-w!VYc8gZ*VM^DDJNP-D zwjTQZWgU_8VBauJ17}Qbg|4(;oW%4Q?2n#$k{Mip^gw2g&^nvZu^=tJBhY@g;fa#F z5?y%5jaWPxVqyQtuq6@Bl&(npAg*j(B(zM;f|atw4#AG`KOJ-9G;yp~vvh!~Ky@w}_UCiG?ZMdV-@J;ZIzb^AZ_B z{xOu3v=9}GAxBYY%!GrvyYD24NiTq>LPF#2VLI?E<@4ifb;w`nqv_^pE5JU#@4zWJ zWQzZW0N?z69yo;{$$qVNLE1UZx(CCd6v}>nfrY&uz#3Y*l@K#q`!U6dALAe!zo)QG z`i_;huo`>FUYQOJ*QV-MuxVgt@Y{mhR4sAy-Y78RZI#-MbI{zHV1C$G1yw2@^4U6f zP*fpJ)PT_B-m{VnMN#A)pvA$~TGon#>*lV3w@y)MR%}py;!r$m@n6?5bYKO=&8@2G z7t+#(n*xWuRwZSpYNkw=_EfcWdY!nG6gj9R5_L0*y_TgQHaD}bOa+XE96^)qE7BjX zS6>hAMJtwOjB8fz;2cf$i=-F4apEV!pm8wcFl#I-rxiQZLpwS8BTEAdcS`Vzsu-65!3{Wiier=OM_TH*S_}4dxnQK$ z*bzge1vfXM78gtj0xK$V5UG99S?`g!!B}EG+TKx1&P)!B--;P5Au~}3d2fW4Er(@GF1f&=MJz5K#fnCR-iEsZUw8WCwZWz4%{dNVCWk2vWOi zL5@yZpe)r2L{EL`&akH-fzn=U@qE+#cs zK9W{ULFCj6K|KBN*~{a?OMs+ss)KwGwGGWcHH2GtUNWULdajvK71O?GO=VqfwQLLb zhCV8W*}Z4_%SpfhCVGHBqmtm0fQJ3=9}#CJ@S`_RCY8)HGcLb%9l+U5r!_(Z05r)b z!PMZKf8zZ0l^no4vbuf?y`4?kd%)Z(u8HDU;JvS%oZ_-ihjPNHLVqW=dW>TO5lq9v zDRN>j9yo90t`~#M!Hi*w%rd{88js72RTd4rh3=)~9*X64XRz*Gt6y`1rMTPc`~B~* z+jOfE+2XU*+W54acWH%!1g@Lj@hK(r{ww2=TfkW2IXZIX$xX0hj^(Q=OI!GW z$C{Hx+XBc>U>{g*GsO5ZrvYq2pD)9NCe?~>^h`$anYv9+K~ZF*o6C=4apg?iy-rNv zm0?ih=kcCICiMVcFWA}zmb9wWs53ZRP;6m`VS7}i$>{$7{)~EDspg+l-9T%8Vs4-{ z2DQWbsA^4Oj{~JS;0B$ZM@k)MOU8icMtJ@%wqGa7WmjVL3iykC(~%CN7n8G9sXGA zSi|tOhn}SpbrX||(u7yOp*EyQ#7t^V14v9@m+&oFTw{?dq@fTv7|u^+zvs#Py`MvO z=WNN2=IF>WEWZ=n2v&o{6f%P!HXW~A$PnYo04YG$zjQD2d9IYWgKdKf0n6goe7Tqb z>F(M%Js!%O=Zp3f9iK$1{bzt_{g3iM3VDtI1O*>(@qzWgy8xS1g$hbacNG= z)`{;Mqss&rMfZo=9b(~)h-8ku(Hz>3DoGeBxwM6@&9O~G1%?F#^KE`f!fJ# zsj+DCl$3%%rTTOp^)~Ux79=SS!#^3x{u|4z2X)%9d>wI;j2&-9!i!G~O{rzAlnQz` zAeZ*{5Z7MZnVgcULC;esG`89ZGFmaNgEZi%UcK!nH0?ErztfkRu)Y5PbD^G?oHVcH zzNcQ+J>R;pd)fbi`+1o^hKZZ*5ZmtN7X=*RjydNhvzYUnyS-ik?(@0Iy^I|5(+y%n zINmfGWzA!bQ(NmyXXeq`VA|U@OVAG}^?LNV8~AeBK9pqyYia2q)UfU@*ewNdSQy|_ zQ9u5kVq=ysPX%6Or6yYJEQ9nU%$T;auxS;^IAV5T915Wxd+Wr}oN5!)0s?%!I@HQv zDPa)0MJcn~7%4{uu|#~>bi7KWmauZ#|G5kE?Z8j0C2Lc+h6>l=HW=}UG5%Oc z%iIxOVCYThH?_sLn@5o=t>lJ1|7y3O545eY_E>{L<^rRbBX)Zst%0GChX#4M8DsZJ z%9g^|)YN5HmLyDbWWz`Si(~a72|5D{xfcz1#($RqPSdIWE1)XEtsE8xduzLTEENUA z8rO_ZbuJWU;Au@v*rOJ_A@Q7XCN#k-_Xs|jK<)KHfz~=H=C~uQ0Aq4z!Y<)3`Iz1$Bzq5;doGMdGc8m2=Dk=xMb^M5Wim%y`Yy7rpA@btJAn;y0L|y7M?0T4O*b(Gl%jQ!3DVxvo`*bho0J&z zK|PA)qG+-Y1Y3wf3S6LdV(0niQ`taWC zib_NkdH)m+y?C%KQ7~D-P4J2#T?4|JD2N6xj+6hJ48p$=<|ZJQQR4`A`Y&OwyMvxe zb;)Xl65|@nwC8gqiFPHAKowEt4B{U~dO{h-$Y{;qIDh45L@DHPhKm^~B#U@c+~<3j z5u`Lh?>uoC1rQ!M#Dtv8nsN+@U8H9^SN8fB@*AogdkiO%2NuA21YwmqZn#z{Wi?${ z#I8K={PbQzobJR+XdYpD=T`59{bxSyKzx8bNuI>b~JZaJU52UWu(Vu!H$2vo>G*b3edFf^Z*8(7Rahq<^(5p zOZv6wo1&Ktd>fn;ou38O1Z=j(qXY;B++X8yyXy-4iEdJ%q(00U5%SG;DUfplxpCBl znjgYidW}>3SD#qNk`2?XBW^WN6Vf5U4i82=fh^kl4J;e2N;)3nVDp4Ni7?=Uh zb+dVwU1IMYqy%@i$^Is*PvAr}iTjzeW&tY0>SZ^U2u2tmr=t=@ANl3*F!kk&`Jh-r z#Jv86cW`xK0Au-za=ZB|vi`Ljhdpwl(l)6LQixoZMmEhRHAcf%Sb#Pj;GRdKj=}PH>Du z#r>6*(490i`g8-y8I&k|`wW^WSdA+=1e}&8jh1{`BKwo@wv~805smTjlfx1r;3x98 zx^Vr3FVq~<=zmYaBi5#?n{`T|4Q^+46{JZf9ld)y*G;e^w1G(GU?&n})>3t)P}!;L zT!q*;ZVR=>9OcYcyJqGiE&P|4{9G+lf!IrhgUPkxt}t<6gM>2Dj_yxbbc6yG=T(7! zhIKNby*ZsT&oZE7Ediq!u;g4C(#^*tqZwPRa~wbsi|*UT6-t&2sse{=;9&+H)_vTL z>KKqoA?T_ID{5nSboh3-YuA+)aQ(qibuG4K|LB>~&ce$>=l3-`ryH3?On(8eVKZdf zj*Ks%tgBlITqInISz#Fy)~{ZkNo2RwOEgyAv9|)H0@7On3wN;TLjnHOzl=EIoo!~2 zJrqdfql*Y`tCt1FFoiw37@&#kyQLQ-DGW4jc;nbGhS^Z<`}VcxVx6Q|7M~(OLA4F8 zJKz8khS!lw%x`p3Kp(dxg<2zpK~A`M6$3Vo4_3^9lzX#!OeB9iGyo%f4Sbg67&&Wn zTTEyWl-DC_yv=b{BCgx4_U0CrA~OSs?+dtlimvwnKU3dVo*=PcK6PVh9R^7-|G)|P z5E#L|~G7QKmqWfF`q7>IX zRY3RI;*?-zPwSxut2jX_?-f6i6-(hloLKb*)~ibRt{k~1S;zI&n$gNaULQM*j;C}q z0`#QCbUvYwfG70g3bo;-=y7gMvLW?+miJ7{AUfP_sl>|=iRbS%NP;P6MJk4RhX#&? zckF>oVaYlQ{iB>S86x2DZJGp%!s+LBPVzR&v-f5FzeCvcZMoX7GGFZSPlWlSeQN|qG;eIOUoqn|YcF5ablmFrfxbUB?jmkEN-6OEarp$8kAEJZ2)fzpoIBj3PgI!Eo;V4a6`75-ZiVj}^g zgEi=C;HbjR;Pe+5`a-fp8kU$FDtDamDp$ptqXk7C%wcmugHP1dFsT?O8s=3Y`RGaT z`{&fJNrqxLF_=7p7Fl%&CnYt@ZXpQdYNoz~KPtvnd#DZb3ixNj0uvLFQwEhS2cU~a zVq&ft+ol6hv{s}RD+;NWXo@J5qR#4H!Q9SNX0knhZ;)%<)A}0)B;7 z=pRRH!k}OOxKlqicjNL1X0d$1%fF6_J3#3=yNbs)d8Q{4Q!Fh7-FJr+FtY@5qto-h zY~ALv6(nSr`sG4nb8c&6w4aMTNcNQISy0FXkm|Wesaq|lw)u_i=^Le0t3WU(eDvZ# zwE2(?eTO69ho8PXCqMi5g^B9WqU(KfDOU}bKIw3z{c2)k~d55@C? zC;$Ke{(%mw>>XXz)F&CGRxxyhgFxz$ zw?s<-vLPwo>FBqi`xfAIqPexkcHjl%RxBhehKPL+71WOJ7}zU=axQu4M=$|a#Ec5k zkbeQCb~&Ax0QL$9c7dIo&NMzF&M3WkwOThQoJNW;NR0q%)1&)jZ+<#U0iQ+o>Nr`` z1CoPC*;i&F5OYw9*A6;k`Elv1rjvUC<7%A5yl;zS23PQW+Y`i{2Fd|?nDD3QQq!Ik zEC`fP#yFlz5b>yPVzq#S%@DH%uoQar2-*2R*g6Y`2}DKfM%CPeWKSUzEFXjR(5~>l z?78wc-r6;;OD9OPKpksy{jl=o0EskCi{;3)bw&J{Oh9T#w4EkAgoz%eWZDQow-bmt zoL~<#ZfznONO=13bKN~-v=8YM7*X$JZGqPEqTgyq(y{Rb9@ebg3<=&z74;{$(mL*j z2Hn*nGl`A{iCJR3(p_@HG(}DDIL+N+%sNMG{!Tp(GgmJ`98b9ec`=6H7cpkGy(C#r z;PZs&!BAQpgh8Kwg^ysuP*q^w=W6V~7I8qWG$Xf_+}N$-#J(X@L~Zg!001G6H2*H& z44hp`>9P}uDs(p}uMY7rcgJR02}MMp2t(3~u}H3QMN!A#G10q$>xwq_gv=5=p_w2K|<^Br|ifYt)vtC_QLO(koc3`Cpc|H6u^{7I}C!!>w*_ z4xk#6ltKgnC^qoWni=RQDM?anL>TURleCM^9aC|?KOthPqHq70`1ihbZ#e)KI*bjT z2JMYGaPZzkKcC9;2dcE7JT!GA<|=o=$k;3f?+EP8+rubotCmos?;}@>K6>fjV>07; z(aQ)#B8eiM#@!(FTep}5-4+|Z1++Y z8AAe74s$-uR#vNkpE)cb&Aj63d5yDoH>2B{tREEEfDDRAd;ZAPqUzanS8BMaACMRA z+h(3d%pLIlgC{1F!GZ<5RqrnzXN%))_7n`syz}jG{c@ABGvE&`9z#M{ou!hCXFJ`~ zcMqZ8m!0(j%CE%k)JDgE0=h@9q}k|VgRJHvSX^PY7Xl6 zTH7{MK+UV@8%4k{e`o_+wu}C(R*kJ6^lxgTs!&Q;tgH0Q%17g$b)QZFg%w!}LQkliu|h@(B} zLT-qr6;O)&ldNJuh|!;s@#rYkXIy5I54UR|?_}NmQ}?D42T;tP-2{%sgEmx$JvCDj z-j?dRa|5NTTt=V#AVa#pdK6`%9Omht9{_OBPZmc^Dqa>6={5!eKJ~VfKD0zk5k%=W zjhUNZB(*?0m0lUaQ_PhqRZV}@`(fWt?34f+q;75isMWfesotUMhpPWc8sdMjD}>9` zpiNXeP<5rwal&GHO8XQqVuB7hhw;;$ojKw10}e#y$OnHMOLSP-ihNQMS-yziox||D z_!AIg2`|eYf)AA9QOc^QekPvbpe#Hg4OI z)BEeEANKvB4*n$sfB3=uLAqf`5yxftIG%sbIB^#`Z0v*$t5z;%q=4tTp4@zBm< zAw4Ux9yrX?3woF7uWYTpxgSx}^#rt-n?uVe=ezYDz0GJrE9RGq1VI3lqmx0!JFo#Z zr#nFI_%%XSN|B9ouVjYBFC_^4+UCQ1nLg6N#sGtBZ`?$948gdE21(9K)v1wA=uD@y zGCelE%Zt~N<+-3Hs7BYhIpOpPm){iw@aOQ{Nd?5Qn3X_gwK{2f4vJ_FZD|UwC3_&4 zfM6wjNH#EBdPlRYV!PDOW!3Rig6+)g;PO;!^sLZXqiP6Q*nQMj<=22$gV({-G=2+# zZ>(v(-iID3o&gn}WjpC|4C^(;-UxxfN4o|Ry4fPAAk1^M@ttqP^BCW>WiTe-sg$(s zo(=>}_EFSHEsoU7z~iXdUyO@sGMeGhLOp|HD$oMh00CFeNav5Thq)}ruK*dh8k9lp z1biN`=yrkFUJK607;2Mf?^}8Fu6+tPSB(wj69@|ynIOSn-c2)z^5(wdVZ@&B#GcZd zol1QJ6Sw4FZlMm0jBM1SvX(1C!gOdTCH+cu1m3>5DJq$uudX9bVzvnQOa{!>s}I15 zwu2g(hM;)#f@Q2c*){H_soXqb5Qi5dhfme6*b<715Vo= zC>^f<2lQLUqQPXxHT&q@d|4GnCo{4%Z59RvBh`|EDo_OAT(D+4F;9V<01se&Fjkoz zIm8e-yf{uvW$D}0$siC;Z~y)I=l9h4uYNQw7_lj73v^C5vy)%ta;{@w4^WwiGiIN4MJ4o zrb`73dJlS&q2q<6R3NMuPRLOP$WsH;#OJ`t!Cd&1sy;&lip4|0vR>R?xXl$FwY zuE7H)R^(&G3EuoVbyG@dWG>F8sdN=wSb$fMLwU2x%eVEczE0la?J#JFXO?C^7!w%V z*{-o4Nf>LM5SJB(St~wZ|9rT*T{jm$l zZ)}THg?N9%0QofOf~EoE*%N7gIrJBE6CeCwOzxcpyo;gn8%UvDUF-ik^d{g%aFUlB zx)@ui{USlZ7@7PQY`~NphmyR2^(}9EpW0uT-y=$bwMw&%1Zdibkz60pq(N+@X23p+ zzK_b;T?JTMRr!*dQ#{T6b5eQT#Vi{QgG`b?1)ygXf-)pHe$4Z9|2uSp+V^V>Z@n7U z6aGNh-9YK)S0vX>mS7?r3CU8Y!|rJrs|TzW)RUU=I9wJ{oAfI?r#ZY8-%*=(5ZLfa zHT8|lHCqGU7T{YrVsMM5_}yRW#xF{fbvdGn*UXKAVq}yd4FVx70^>!aUR8C_kQ0;e zM}EAb{2`QXX5E^$DVgtYF|S6x`ZlhyF_0p=qSsGh`z%_I3?K@X!(Is|RP|b0e`m4^ zFLLbxNh!mVQ9AAk1}Ro}Jg`1BpJPzcXt!NZK$&-~li8Z_XC5^GjC+|USZR25E)2Xd zU_IH^dc-dsvWNKIcp6@lgJIJ$*qHSv!M2Xxb%F~GX;E~`mis;c0q$1a#OlOA1>bpI z03-BHIEhZ^0gzIiSYtHXl{F{1o5h$@o55VFEDeJRP;CPGI^3Kq2U)B)Ll|?&#C2c> zA*_*mwWBDR=T)|!NTN`*1`uVZF6L!+m1 z@VR6Noh$32XQCXeY%}es+vs9QPXse6CL{sn{g+M9-1O+`@=PjuKt2i6T^%0D@Y|<3 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 L5ON_gi;3_6+ma*6 literal 0 HcmV?d00001 diff --git a/public/assets/img/ui/icons/bargraph.png b/public/assets/img/ui/icons/bargraph.png new file mode 100644 index 0000000000000000000000000000000000000000..5de6e9751a347ac9eaac253d1f9bf168a88715f4 GIT binary patch literal 1461 zcmV;m1xosfP)zjMyL_q`@n6R{SlO{)=vfKp;(NK_QT(%?%45u|h>;>LvvT^dp7Rz;8^ zhzl3GNCPfx)Riu()off;5QTQ*ADWhww&b9RD5ozxe(~M69^P5Z2C^d%t+@w$ z_0;YB=y(6TA6Nj_4-%l9y71e_K5+YO58QIg7U4cM2i)QOiT7~nZ_fY%Fh59u?$m|H ze{=kYV-~TI{iz?Rj030O1Jb5HNQ92!blgjegD*_~8s5bT)^<<&$v!W&sFf-#g*$|^c<38E_2sYRrrb2ZC6Uv!Byqe$xOqSg>+MRWchu{$C9uoMpfxPhVz!`Ye=z0t7&KHn-1x zo|k|6DBboJEo3i1_y32vG$=bX@B$nP_}cgcqaC9ZT~j~{n0t<5Wx?sse2AB?yomKP zkfwlDW@kRl^1F{9^F`J-nXvrl+g$AL{=|+SJq8hEN?@|flTV%DoI9OJrU)nyBGiEN zfH_oS_ZN@i^DR&XcVf9@@yRoIUgwC}IzTr678hqHKJ|dV_c(Y3g8UN$4a7&x9aYV2 z#z!MPkRu3kFDdhFbZZ;hq0o}`a07E<4?zFi!#ryrzwbzW|A}lw1Q0|j;LL72ja*5$ zqa{5s0U)@8rx63{3LR#6KR{Ce_pHZQp^QY)HGpjijvPJvJ;rDL1Vw-rZp`mI#qzQH zLH>w^P_(Q86xs;PadlX&(4mK}n?~S0j3aJF%3mwO1TYZb;|+HI{!6s$5I(}NMU)|%5l&d2b&W`+ zOaKVfHUjr-g!Vo39qpb>9Y?HIv=&g^1h9f`2Bn`q6tXU!l3{@68cqN~;DF~UIw^18 zBi#T^NkXz7W|^B6uqC8%rV*f$V~}t_as)+X4S=jeL}IiN^hoKL00Qbb0o1w)U?k<& z>BDFW;6Qu(HBAT;0BKHlYYI4}AE4_e00gOy*9x`le~3g9pgFe#+V$S*L54Zx8VYM3 za0m0iEx---Du84?tP<7{n_fbX3aLPu07P*&FxnaDL=%7(4zv*vI8>wb{kj5LQUSBJ z1tQ3P6V^5Yg$58(h%g911P4@Q4S;~4na~oTnQ&5)tWO4HlL8SHnsaF%ibmEY0on+3 zT>$|+nAXrO-;zi()8HL-&zCT|3K5$C3~4LKBumyYKof~lggpY_==2bolM0k+l(>Q! z?IlEDKY)c1-2m&?XI&bwA?bnj5FEkHv0@3J{Xl48x+W+d&4dP<0EkEv?vDUx@{`J5 zfUH{^0THGO=cahR z2aNDy1DKqgBM9Gjc{NxvW2D=!fHVbar5rvCOG^cG0zjI40r+agtL`t{3-)*1 ze+dkLF()rqr6olR4)j}xnQh;C6$@x<*fLE?fB~<$zjQBr5%?eQ ziU5azJAk7=$L4ULEhG94&IEA1HNOUo(wZ)SIUu}QOqcTx&#Zt~fDzzzd)r`QQn{rb P00000NkvXXu0mjfLe7~z literal 0 HcmV?d00001 diff --git a/public/assets/img/ui/icons/beer.png b/public/assets/img/ui/icons/beer.png new file mode 100644 index 0000000000000000000000000000000000000000..33a8a267fbf5056efd50d934ea08c73fa87c3664 GIT binary patch literal 1235 zcmV;^1T6cBP)A#8?!EKbnHJgtRw)J45+Sg0qkn=4JA)f`Zrs3M;KCSb&@Wp1K|5df&dmKfukFnwMxZmL%#)nFxr=ju&w0;z6`fIIV`GPk z#p1h;)~VDg)EiBd zwrGdl=`;#3B6yxh;D@AA4vu4!PNz4jlL&=jNTbo*r~$sevBC(00-Zv%Y)7E;peU`; zTA@_3o)lFUTH7>yk48P%s1dO@$JCWiKLg?&3y27v5T$5@KKCc@kySN%oic}qk5c{q z1HQgCeidl$L_kWV(v563_d4km?J!1|o?hgL{X4xmL!8}%g-dN^kqf`nCff;UwkDjK zni>nD5UtdfZvj1BqyG?yn>_4J>uaI+JE=Gn7nFS>4X)eko%^kd3b|#{UiQ0d^u_fZB&&j$O^({Fs$>7q{+XSq|Dx(FkJhPR(<0 z={zapBTAEyE&xLP(F*5(TKXFZo@Wewpjw~3Ir;J%_eST|`dMBZ1i&`yy!h}ddZbL8 z+lNL00#*)bmMGVPsn&k;JOTm)-`>7aSz5yG9ik)Y zJk`Z{R;$q(V7eh-fY6}PQAlSrK^XD*50f+95)iKwC&|0Lc%a`}Z?2 zaso}<^$v*Vx#RPT%g0~XcbMLnh6&dmKw}+HkllsTe}GDqX8xa5Jg+_u2y{lVJ&M4= zGiT16e(mVdxAQ&45zwF&2}S^e=T>JX?oM1jckYXCfN7xGEdjeFF#zlWa!;8c1Jr>M x@Te6YbxVL&U<$|r_EYvsE3g3sfZ5JZ{{?R-HAESXFZTcd002ovPDHLkV1h2yJeL3f literal 0 HcmV?d00001 diff --git a/public/assets/img/ui/icons/bullet_red.png b/public/assets/img/ui/icons/bullet_red.png new file mode 100644 index 0000000000000000000000000000000000000000..3036084d543e99486e74c438e05f3033398c0c8b GIT binary patch literal 596 zcmV-a0;~OrP)ZZF2q@W(9`1an0`FGqkmJcRsZ}>h@Kf946NykZ+8wZ z%%u{leR!jVNB2}3>DAA^HX(Xucrepe=$XkSe9t@gCW^_pYE!TDYhqBPWLTw>ohl7> z3DGmdgMpolwDp?09nBwO!P)u8_f^fORZc}!K5eNy+`UfB@L*s+S;1MdCKm9|ba!a+ z#S>M|#8o+aSe0{$hQfn^B}3N40o!mw2~haqGyH&153u#-_Yl%#Zh=NvhRIypiAY6Q_}6MbT=nN&kPR+mW;{wLX)E% z9DH$CAon&F{BHN`*H>5c%(|ZT^Dg(yRY+w6?}~KrNyp`zD|w*GCxpHLh8eZQiEqcibtO4C-dn9xH%A2 zx@-FZkkTFooB-L;S6NS|S(*BEdHmlL^qSy>NYPD}ZQYMb}TBCiBm~ zJiKwOri9cgd*c0xcqBQ@=I0-R??IpiMA&IW`&MH0_$ccIiM6@usuEHOzwk^lb>N*3 z;_X98@@GG;3vVo;F``&Ge44M6?Ra!BfqZoq*AWIuHbxJ4kAq!5CPAvQUTXRIRR`1Xr6$h6vod~t3cj1pfp)P9EJA0@~1!m z-!1llgBEG7fUSUsh?F0J$#2>jVCNN0iG|um_uOhn;9{H>lrdxdidXA0FEO}!p;iXryS`wj-$7A7w#IfFP5HLHegeU=BgwL?CQ5#+o zs3GxvL1KSfG!||Rb9^WPN~+MRT*}v6ow{BZUR$72V)V%5{!l1}a%=^RHej}z)A#Kj z#s{sj{|ShQo%uPf>%mI`4I~m5omRth{jP#>>D$EqFdFN!T)A=Q(kNSkD`JcZw7o4{`lRochaf1>2c>{SL<1V#=wC3# zjekUbfU+yl-X704@h%|rp$sSaGM#h2^PMyI-kFa0N3-XPrQK4wa23Q4}77} z>@#!oWq!=O+8rvcl^N^jpe*Cyf#2!t&^q9_oX)N%E?2KOK0Xo+(`*XF!2=(8LXllv zTzW}6yLjxfzMv^sEKT_cuOG;LAKk=3v|$pP2ks z;T7W0Nu{%dhAdzXKjPqlFY^>y|AU8vPf={|{YMnVnUBI4<^1iteK~>$zEEsV#(>A` z`#Qg{NUQl0O~n!vizhM4IsAx&2foT(0IM+$4-S5QuGMP7-gWv+z#M+W!2@4)1H?EP z7`XMQr>938{`xHo6A?x^ho9ra;7R@^SbrcGrhH+I!jUQ7Y7q*BqZl!le#BM3f1BH* z-{UX)i!m9bWI96&i%Vn}0SW{{7BGijew5&WkGzXqOf=o=OH3GnDpm>MXY4XH8akxw8Ri<8ccp-$639goLLlSYU}N8L2WiK+lS z=t3WLnwNIOW9x8QQEO5zC2x34N`mp8=5aCD#Q8}b8 zQR@cKZH+rMc~lJOLci@3uUD>4pE0N&(3Sdq nt*%}OqQe{NA$9xCUe*2pn%cn*kV|T-00000NkvXXu0mjfN))x1 literal 0 HcmV?d00001 diff --git a/public/assets/scripts/WindowManager.js b/public/assets/scripts/WindowManager.js index 92dc5c8..f1e19d9 100644 --- a/public/assets/scripts/WindowManager.js +++ b/public/assets/scripts/WindowManager.js @@ -16,10 +16,12 @@ class WindowManager let w = this.windows[id] w.querySelector('header .title').innerHTML = title w.querySelector('.body').innerHTML = content + this.bringToFront(w) return } - this.createWindow(id, content, title) + let w = this.createWindow(id, content, title) + this.bringToFront(w) } createWindow(id, content, title = '') @@ -40,12 +42,8 @@ class WindowManager h.appendChild(ht) // create close button - ht.insertAdjacentHTML('afterend', ` - - - - `) - h.querySelector('svg').addEventListener('click', () => { + ht.insertAdjacentHTML('afterend', '') + h.querySelector('a.close').addEventListener('click', () => { this.windows[id].remove() delete this.windows[id] }) @@ -60,6 +58,7 @@ class WindowManager this.makeWindowDraggable(w, this.container) this.windows[id] = w this.container.appendChild(w) + return w } makeWindowDraggable(w, c) diff --git a/public/index.php b/public/index.php index e2dfebd..56cc1ca 100644 --- a/public/index.php +++ b/public/index.php @@ -11,73 +11,370 @@ $r = new Router; /* Home */ -$r->get('/', function () { - if (user()) must_have_character(); - $GLOBALS['active_nav_tab'] = 'home'; - echo render('layouts/basic', ['view' => 'pages/home']); +$r->get('/', function() { + if (!user()) redirect('/login'); + redirect('/world'); }); /* Auth */ -$r->get('/auth/register', 'auth_controller_register_get'); -$r->post('/auth/register', 'auth_controller_register_post'); -$r->get('/auth/login', 'auth_controller_login_get'); -$r->post('/auth/login', 'auth_controller_login_post'); -$r->post('/auth/logout', 'auth_controller_logout_post'); +$r->get('/register', function() { + guest_only(); + echo render('layouts/basic', ['view' => 'pages/auth/register']); +}); + +$r->post('/register', function() { + guest_only(); + csrf_ensure(); + + $errors = []; + + $u = trim($_POST['u'] ?? ''); + $e = trim($_POST['e'] ?? ''); + $p = $_POST['p'] ?? ''; + + /* + A username is required. + A username must be at least 3 characters long and at most 18 characters long. + A username must contain only alphanumeric characters and spaces. + */ + if (empty($u) || strlen($u) < 3 || strlen($u) > 18 || !ctype_alnum(str_replace(' ', '', $u))) { + $errors['u'][] = 'Username is required and must be between 3 and 18 characters long and contain only + alphanumeric characters and spaces.'; + } + + /* + An email is required. + An email must be at most 255 characters long. + An email must be a valid email address. + */ + if (empty($e) || strlen($e) > 255 || !filter_var($e, FILTER_VALIDATE_EMAIL)) { + $errors['e'][] = 'Email is required must be a valid email address.'; + } + + /* + A password is required. + A password must be at least 6 characters long. + */ + if (empty($p) || strlen($p) < 6) { + $errors['p'][] = 'Password is required and must be at least 6 characters long.'; + } + + /* + A username must be unique. + */ + if (User::username_exists($u)) { + $errors['u'][] = 'Username is already taken.'; + } + + /* + An email must be unique. + */ + if (User::email_exists($e)) { + $errors['e'][] = 'Email is already taken.'; + } + + // If there are errors at this point, send them to the page with errors flashed. + if (!empty($errors)) { + $GLOBALS['form-errors'] = $errors; + echo page('auth/register'); + exit; + } + + if (User::create($u, $e, $p) === false) error_response(400); + + $_SESSION['user'] = serialize(User::find($u)); + Wallet::create(user()->id); + redirect('/character/create-first'); +}); + +$r->get('/login', function() { + guest_only(); + echo render('layouts/basic', ['view' => 'pages/auth/login']); +}); + +$r->post('/login', function() { + guest_only(); + csrf_ensure(); + + $errors = []; + + $u = trim($_POST['u'] ?? ''); + $p = $_POST['p'] ?? ''; + + if (empty($u)) $errors['u'][] = 'Username is required.'; + if (empty($p)) $errors['p'][] = 'Password is required.'; + + // If there are errors at this point, send them to the page with errors flashed. + if (!empty($errors)) { + $GLOBALS['form-errors'] = $errors; + echo render('layouts/basic', ['view' => 'pages/auth/login']); + exit; + } + + $user = User::find($u); + if ($user === false || !$user->check_password($p)) { + $errors['x'][] = 'Invalid username or password.'; + $GLOBALS['form-errors'] = $errors; + echo render('layouts/basic', ['view' => 'pages/auth/login']); + exit; + } + + $_SESSION['user'] = serialize($user); + + if ($_POST['remember'] ?? false) { + $token = token(); + $expires = strtotime('+30 days'); + $result = db_query( + db_auth(), + "INSERT INTO sessions (token, user_id, expires) VALUES (:t, :u, :e)", + [':t' => $token, ':u' => user()->id, ':e' => $expires] + ); + if (!$result) error_response(400); + set_cookie('remember_me', $token, $expires); + } + + if (user()->char_count() === 0) { + redirect('/character/create-first'); + } elseif (!change_user_character(user()->char_id)) { + echo "failed to change user character (aclp)"; + error_response(999); + } + + redirect('/'); +}); + +$r->post('/logout', function() { + csrf_ensure(); + session_delete(user()->id); + unset($_SESSION['user']); + set_cookie('remember_me', '', 1); + redirect('/'); +}); + +$r->get('/debug/logout', function() { + session_delete(user()->id); + unset($_SESSION['user']); + set_cookie('remember_me', '', 1); + redirect('/'); +}); /* Characters */ -$r->get('/characters', 'char_controller_list_get'); -$r->post('/characters', 'char_controller_list_post'); -$r->get('/character/create-first', 'char_controller_create_first_get'); -$r->post('/character/create', 'char_controller_create_post'); -$r->post('/character/delete', 'char_controller_delete_post'); +$r->get('/characters', function() { + auth_only_and_must_have_character(); + + $GLOBALS['active_nav_tab'] = 'chars'; + echo page('chars/list', ['chars' => user()->char_list()]); +}); + +$r->post('/characters', function() { + auth_only_and_must_have_character(); + csrf_ensure(); + + $GLOBALS['active_nav_tab'] = 'chars'; + + $char_id = (int) ($_POST['char_id'] ?? 0); + $action = $_POST['action'] ?? ''; + + // If the character ID is not a number, or the action is not a string, return a 400. + if (!is_numeric($char_id) || !is_string($action)) error_response(400); + + // If the character ID is 0, return to the list. + if ($char_id === 0) { + flash('alert_character_list_1', ['', 'No character selected.']); + redirect('/characters'); + } + + // If the action is not one of the allowed actions, return a 400. + if (!in_array($action, ['select', 'delete'])) error_response(400); + + // If the action is to select a character, change the user's selected character. + if ($action === 'select') { + // If the character ID is the current character, do nothing. + if ($char_id === user()->char_id || $char_id === 0) { + flash('alert_character_list_1', ['info', 'You are already using ' . char()->name . '.']); + redirect('/characters'); + } + + if (!Character::belongs_to($char_id, user()->id)) error_response(999); + + change_user_character($char_id); + + flash('alert_character_list_1', ['success', 'Switched to ' . char()->name . '!']); + } + + // If the action is to delete a character, move to the confirmation page. + if ($action === 'delete') { + if (!Character::belongs_to($char_id, user()->id)) error_response(999); + + echo page('chars/delete', ['char' => Character::find($char_id)]); + exit; + } + + redirect('/characters'); +}); + +$r->get('/character/create-first', function() { + auth_only(); + + $GLOBALS['active_nav_tab'] = 'chars'; + + // If the user already has a character, redirect them to the main page. + if (user()->char_count() > 0) redirect('/'); + + echo page('chars/first'); +}); + +$r->post('/character/create', function() { + auth_only(); csrf_ensure(); + + $GLOBALS['active_nav_tab'] = 'chars'; + + $errors = []; + + $name = trim($_POST['n'] ?? ''); + + /* + A name is required. + A name must be between 3 and 18 characters. + A name must contain only alphanumeric characters and spaces. + */ + if (empty($name) || strlen($name) < 3 || strlen($name) > 18 || !ctype_alnum(str_replace(' ', '', $name))) { + $errors['n'][] = 'Name is required and must be between 3 and 18 characters long and contain only alphanumeric characters and spaces.'; + } + + /* + A character's name must be unique. + */ + if (Character::name_exists($name)) $errors['n'][] = 'Name is already taken.'; + + // If there are errors at this point, send them to the page with errors flashed. + if (!empty($errors)) { + $GLOBALS['form-errors-create-character'] = $errors; + + if (isset($_POST['first']) && $_POST['first'] === 'true') { + // If this is the first character, return to the first character creation page. + echo page('chars/first'); + exit; + } else { + // If this is not the first character, return to the character list page. + echo page('chars/list', ['chars' => user()->char_list()]); + exit; + } + } + + if (($char = Character::create(user()->id, $name)) === false) error_response(400); + + // Create the auxiliary tables + $char->create_location(); + $char->create_gear(); + + // Award the Adventurer title. + $char->award_title(1); + + // Set the character as the user's selected character + change_user_character($char->id); + + flash('alert_character_list_1', ['success', 'Character ' . $name . ' created!']); + redirect('/characters'); +}); + +$r->post('/character/delete', function() { + auth_only_and_must_have_character(); + csrf_ensure(); + + $char_id = (int) ($_POST['char_id'] ?? 0); + + // If the character ID is not a number, return a 400. + if (!is_numeric($char_id)) error_response(400); + + // Ensure the character ID is valid and belongs to the user. + if (!Character::belongs_to($char_id, user()->id)) error_response(999); + + $char = Character::find($char_id); + + // Confirm the name matches the name of the character. CASE SENSITIVE. + if ($char['name'] !== trim($_POST['n'] ?? '')) { + flash('alert_character_list_1', ['danger', 'Failed to delete ' . $char['name'] . '. Name confirmation did not match.']); + redirect('/characters'); + } + + // Delete the character + Character::delete($char_id); + + // If the character being deleted is the currently selected character, select the first character. + if (user()->char_id === $char_id) { + $chars = user()->char_list(); + if (count($chars) > 0) change_user_character($chars[0]['id']); + } + + flash('alert_character_list_1', ['danger', 'Character ' . $char['name'] . ' deleted.']); + redirect('/characters'); +}); /* World */ -$r->get('/world', 'world_controller_get'); -$r->post('/move', 'world_controller_move_post'); +$r->get('/world', function() { + auth_only_and_must_have_character(); + echo render('layouts/game'); +}); -/* - Profile -*/ -$r->get('/profile', 'profile_controller_get'); -$r->get('/profile/:id', 'profile_controller_show_get'); +$r->post('/move', function() { + /* + This endpoint is used to move the character around the world. The client sends a POST request with the direction + they want to move the character. The server will update the character's position in the database and return the + new position to the client. -/* - Settings -*/ -$r->get('/settings', 'settings_controller_get'); + We should only be using this endpoint as an AJAX request from the world page. Since we don't need all the character's + data to move them, we can just get and update their lcoation using the user's currently selected character ID. + */ -/* - Auctions -*/ -$r->get('/auctions', 'auctions_controller_get'); + ajax_only(); auth_only(); csrf_ensure(); + + define('directions', [ + [0, -1], // Up + [0, 1], // Down + [-1, 0], // Left + [1, 0] // Right + ]); + + // direction must exist + $d = (int) $_POST['direction'] ?? -1; + + // Update the character's position + // 0 = up, 1 = down, 2 = left, 3 = right + $x = location('x'); + $y = location('y'); + + if (isset(directions[$d])) { + $x += directions[$d][0]; + $y += directions[$d][1]; + } else { + error_response(999); + } + + $r = db_query(db_live(), 'UPDATE char_locations SET x = :x, y = :y WHERE char_id = :c', [ + ':x' => $x, + ':y' => $y, + ':c' => user()->char_id + ]); + + if ($r === false) throw new Exception('Failed to move character. (wcmp)'); + + json_response(['x' => $x, 'y' => $y]); +}); /* UI */ -router_post($r, '/ui/stats', 'ui_contoller_stats_post'); - -/* - Testing -*/ -if (env('debug')) { - $r->get('/give_silver/:x', function (int $amt) { - auth_only_and_must_have_character(); - wallet()->give(Currency::Silver, $amt); - redirect('/'); - }); - - $r->get('/take_silver/:x', function (int $amt) { - auth_only_and_must_have_character(); - wallet()->take(Currency::Silver, $amt); - redirect('/'); - }); -} +$r->post('/ui/stats', function() { + ui_guard(); + echo c_profile_stats(char()); +}); /* Router diff --git a/src/bootstrap.php b/src/bootstrap.php index 93a8816..70bd483 100644 --- a/src/bootstrap.php +++ b/src/bootstrap.php @@ -10,8 +10,10 @@ define('CLASS_MAP', [ 'Wallet' => '/models/wallet.php' ]); -// Source libraries require_once SRC . '/helpers.php'; + +stopwatch_start('bootstrap'); // Start the bootstrap stopwatch + require_once SRC . '/util/env.php'; require_once SRC . '/util/database.php'; require_once SRC . '/util/auth.php'; @@ -20,19 +22,9 @@ require_once SRC . '/util/components.php'; require_once SRC . '/util/render.php'; require_once SRC . '/util/enums.php'; -// Database models require_once SRC . '/models/session.php'; require_once SRC . '/models/token.php'; -// Controllers -require_once SRC . '/controller/char.php'; -require_once SRC . '/controller/auth.php'; -require_once SRC . '/controller/world.php'; -require_once SRC . '/controller/settings.php'; -require_once SRC . '/controller/auctions.php'; -require_once SRC . '/controller/profile.php'; -require_once SRC . '/controller/ui.php'; - spl_autoload_register(function (string $class) { if (array_key_exists($class, CLASS_MAP)) require_once SRC . CLASS_MAP[$class]; }); @@ -51,8 +43,6 @@ if (env('debug') === 'true') { error_reporting(E_ALL); } -stopwatch_start('bootstrap'); // Start the bootstrap stopwatch - // Generate a new CSRF token. (if one doesn't exist, that is) csrf(); @@ -60,9 +50,6 @@ csrf(); $GLOBALS['queries'] = 0; $GLOBALS['query_time'] = 0; -// Set the default page layout -page_layout('basic'); - // Run auth_check to see if we're logged in, since it populates the user data in SESSION auth_check(); diff --git a/src/controllers/auctions.php b/src/controllers/auctions.php deleted file mode 100644 index 5194519..0000000 --- a/src/controllers/auctions.php +++ /dev/null @@ -1,9 +0,0 @@ - 'pages/auctions/index']); -} diff --git a/src/controllers/auth.php b/src/controllers/auth.php deleted file mode 100644 index 4e445ce..0000000 --- a/src/controllers/auth.php +++ /dev/null @@ -1,155 +0,0 @@ - 'pages/auth/register']); -} - -/** - * Handles the registration form submission. - */ -function auth_controller_register_post() -{ - guest_only(); - csrf_ensure(); - - $errors = []; - - $u = trim($_POST['u'] ?? ''); - $e = trim($_POST['e'] ?? ''); - $p = $_POST['p'] ?? ''; - - /* - A username is required. - A username must be at least 3 characters long and at most 18 characters long. - A username must contain only alphanumeric characters and spaces. - */ - if (empty($u) || strlen($u) < 3 || strlen($u) > 18 || !ctype_alnum(str_replace(' ', '', $u))) { - $errors['u'][] = 'Username is required and must be between 3 and 18 characters long and contain only - alphanumeric characters and spaces.'; - } - - /* - An email is required. - An email must be at most 255 characters long. - An email must be a valid email address. - */ - if (empty($e) || strlen($e) > 255 || !filter_var($e, FILTER_VALIDATE_EMAIL)) { - $errors['e'][] = 'Email is required must be a valid email address.'; - } - - /* - A password is required. - A password must be at least 6 characters long. - */ - if (empty($p) || strlen($p) < 6) { - $errors['p'][] = 'Password is required and must be at least 6 characters long.'; - } - - /* - A username must be unique. - */ - if (User::username_exists($u)) { - $errors['u'][] = 'Username is already taken.'; - } - - /* - An email must be unique. - */ - if (User::email_exists($e)) { - $errors['e'][] = 'Email is already taken.'; - } - - // If there are errors at this point, send them to the page with errors flashed. - if (!empty($errors)) { - $GLOBALS['form-errors'] = $errors; - echo page('auth/register'); - exit; - } - - if (User::create($u, $e, $p) === false) error_response(400); - - $_SESSION['user'] = serialize(User::find($u)); - Wallet::create(user()->id); - redirect('/character/create-first'); -} - -/** - * Displays the login page. - */ -function auth_controller_login_get() -{ - guest_only(); - echo render('layouts/basic', ['view' => 'pages/auth/login']); -} - -/** - * Handles the login form submission. - */ -function auth_controller_login_post() -{ - guest_only(); - csrf_ensure(); - - $errors = []; - - $u = trim($_POST['u'] ?? ''); - $p = $_POST['p'] ?? ''; - - if (empty($u)) $errors['u'][] = 'Username is required.'; - if (empty($p)) $errors['p'][] = 'Password is required.'; - - // If there are errors at this point, send them to the page with errors flashed. - if (!empty($errors)) { - $GLOBALS['form-errors'] = $errors; - echo render('layouts/basic', ['view' => 'pages/auth/login']); - exit; - } - - $user = User::find($u); - if ($user === false || !$user->check_password($p)) { - $errors['x'][] = 'Invalid username or password.'; - $GLOBALS['form-errors'] = $errors; - echo render('layouts/basic', ['view' => 'pages/auth/login']); - exit; - } - - $_SESSION['user'] = serialize($user); - - if ($_POST['remember'] ?? false) { - $token = token(); - $expires = strtotime('+30 days'); - $result = db_query( - db_auth(), - "INSERT INTO sessions (token, user_id, expires) VALUES (:t, :u, :e)", - [':t' => $token, ':u' => user()->id, ':e' => $expires] - ); - if (!$result) error_response(400); - set_cookie('remember_me', $token, $expires); - } - - if (user()->char_count() === 0) { - redirect('/character/create-first'); - } elseif (!change_user_character(user()->char_id)) { - echo "failed to change user character (aclp)"; - error_response(999); - } - - redirect('/'); -} - -/** - * Logs the user out. - */ -function auth_controller_logout_post() -{ - csrf_ensure(); - session_delete(user()->id); - unset($_SESSION['user']); - set_cookie('remember_me', '', 1); - redirect('/'); -} diff --git a/src/controllers/char.php b/src/controllers/char.php deleted file mode 100644 index 1c77a3a..0000000 --- a/src/controllers/char.php +++ /dev/null @@ -1,172 +0,0 @@ - user()->char_list()]); -} - -/** - * Handle an action from the character list page. - */ -function char_controller_list_post() -{ - auth_only_and_must_have_character(); csrf_ensure(); - - $GLOBALS['active_nav_tab'] = 'chars'; - - $char_id = (int) ($_POST['char_id'] ?? 0); - $action = $_POST['action'] ?? ''; - - // If the character ID is not a number, or the action is not a string, return a 400. - if (!is_numeric($char_id) || !is_string($action)) error_response(400); - - // If the character ID is 0, return to the list. - if ($char_id === 0) { - flash('alert_character_list_1', ['', 'No character selected.']); - redirect('/characters'); - } - - // If the action is not one of the allowed actions, return a 400. - if (!in_array($action, ['select', 'delete'])) error_response(400); - - // If the action is to select a character, change the user's selected character. - if ($action === 'select') { - // If the character ID is the current character, do nothing. - if ($char_id === user()->char_id || $char_id === 0) { - flash('alert_character_list_1', ['info', 'You are already using ' . char()->name . '.']); - redirect('/characters'); - } - - if (!Character::belongs_to($char_id, user()->id)) error_response(999); - - change_user_character($char_id); - - flash('alert_character_list_1', ['success', 'Switched to ' . char()->name . '!']); - } - - // If the action is to delete a character, move to the confirmation page. - if ($action === 'delete') { - if (!Character::belongs_to($char_id, user()->id)) error_response(999); - - echo page('chars/delete', ['char' => Character::find($char_id)]); - exit; - } - - redirect('/characters'); -} - -/** - * Delete a character for the currently logged in user. - */ -function char_controller_delete_post() -{ - auth_only_and_must_have_character(); csrf_ensure(); - - $char_id = (int) ($_POST['char_id'] ?? 0); - - // If the character ID is not a number, return a 400. - if (!is_numeric($char_id)) error_response(400); - - // Ensure the character ID is valid and belongs to the user. - if (!Character::belongs_to($char_id, user()->id)) error_response(999); - - $char = Character::find($char_id); - - // Confirm the name matches the name of the character. CASE SENSITIVE. - if ($char['name'] !== trim($_POST['n'] ?? '')) { - flash('alert_character_list_1', ['danger', 'Failed to delete ' . $char['name'] . '. Name confirmation did not match.']); - redirect('/characters'); - } - - // Delete the character - Character::delete($char_id); - - // If the character being deleted is the currently selected character, select the first character. - if (user()->char_id === $char_id) { - $chars = user()->char_list(); - if (count($chars) > 0) change_user_character($chars[0]['id']); - } - - flash('alert_character_list_1', ['danger', 'Character ' . $char['name'] . ' deleted.']); - redirect('/characters'); -} - -/** - * Form to create your first character. - */ -function char_controller_create_first_get() -{ - auth_only(); - - $GLOBALS['active_nav_tab'] = 'chars'; - - // If the user already has a character, redirect them to the main page. - if (user()->char_count() > 0) redirect('/'); - - echo page('chars/first'); -} - -/** - * Create a character for the currently logged in user. - */ -function char_controller_create_post() -{ - auth_only(); csrf_ensure(); - - $GLOBALS['active_nav_tab'] = 'chars'; - - $errors = []; - - $name = trim($_POST['n'] ?? ''); - - /* - A name is required. - A name must be between 3 and 18 characters. - A name must contain only alphanumeric characters and spaces. - */ - if (empty($name) || strlen($name) < 3 || strlen($name) > 18 || !ctype_alnum(str_replace(' ', '', $name))) { - $errors['n'][] = 'Name is required and must be between 3 and 18 characters long and contain only alphanumeric characters and spaces.'; - } - - /* - A character's name must be unique. - */ - if (Character::name_exists($name)) $errors['n'][] = 'Name is already taken.'; - - // If there are errors at this point, send them to the page with errors flashed. - if (!empty($errors)) { - $GLOBALS['form-errors-create-character'] = $errors; - - if (isset($_POST['first']) && $_POST['first'] === 'true') { - // If this is the first character, return to the first character creation page. - echo page('chars/first'); - exit; - } else { - // If this is not the first character, return to the character list page. - echo page('chars/list', ['chars' => user()->char_list()]); - exit; - } - } - - if (($char = Character::create(user()->id, $name)) === false) error_response(400); - - // Create the auxiliary tables - $char->create_location(); - $char->create_gear(); - - // Award the Adventurer title. - $char->award_title(1); - - // Set the character as the user's selected character - change_user_character($char->id); - - flash('alert_character_list_1', ['success', 'Character ' . $name . ' created!']); - redirect('/characters'); -} - diff --git a/src/controllers/profile.php b/src/controllers/profile.php deleted file mode 100644 index 3497d13..0000000 --- a/src/controllers/profile.php +++ /dev/null @@ -1,24 +0,0 @@ -char_id == $id) redirect('/profile'); - echo page('profile/show', ['c' => $char]); -} diff --git a/src/controllers/settings.php b/src/controllers/settings.php deleted file mode 100644 index b2521ff..0000000 --- a/src/controllers/settings.php +++ /dev/null @@ -1,9 +0,0 @@ - 'pages/settings/index']); -} diff --git a/src/controllers/ui.php b/src/controllers/ui.php deleted file mode 100644 index 3c3174b..0000000 --- a/src/controllers/ui.php +++ /dev/null @@ -1,7 +0,0 @@ - $x, - ':y' => $y, - ':c' => user()->char_id - ]); - - if ($r === false) throw new Exception('Failed to move character. (wcmp)'); - - json_response(['x' => $x, 'y' => $y]); -} diff --git a/src/helpers.php b/src/helpers.php index 44119c1..1be12eb 100644 --- a/src/helpers.php +++ b/src/helpers.php @@ -3,7 +3,7 @@ /** * Generate a pretty dope token. */ -function token($length = 32) +function token($length = 32): string { return bin2hex(random_bytes($length)); } @@ -11,7 +11,7 @@ function token($length = 32) /** * Redirect to a new location. */ -function redirect($location) +function redirect($location): void { header("Location: $location"); exit; @@ -353,3 +353,14 @@ function parse_bbcode(string $text): array 'char_count' => $charCount ]; } + +/** + * Shorthand to verify auth, a character is selected, CSRF is correct, and it is an AJAX request. Used for + * front-end API routes. + */ +function ui_guard() +{ + auth_only_and_must_have_character(); + ajax_only(); + csrf_ensure(); +} diff --git a/src/util/components.php b/src/util/components.php index 9b2cccc..8a97716 100644 --- a/src/util/components.php +++ b/src/util/components.php @@ -117,3 +117,12 @@ function c_equipped_gear(Character $char): string { return render('components/equipped_gear', ['char' => $char]); } + +/** + * Render a front-end UI window with the given title and content. The WindowManager on the front end will handle + * the rest. + */ +function c_ui_window(string $title = '', string $content = ''): string +{ + return render('components/ui_window', ['title' => $title, 'content' => $content]); +} diff --git a/src/util/render.php b/src/util/render.php index 8954697..9072796 100644 --- a/src/util/render.php +++ b/src/util/render.php @@ -18,20 +18,3 @@ function render($pathToBaseView, $data = []) require template($pathToBaseView); return ob_get_clean(); } - -/** - * Set/retrieve the current page layout in/from GLOBALS. - */ -function page_layout($layout = '') -{ - if ($layout !== '') $GLOBALS['page-layout'] = $layout; - return $GLOBALS['page-layout'] ?? 'basic'; -} - -/** - * Shorthand to render a page with the current layout. - */ -function page($view, $data = []) -{ - return render("layouts/" . page_layout(), ['view' => "pages/$view"] + $data); -} diff --git a/src/util/router.php b/src/util/router.php index 34e24cb..d77bea7 100644 --- a/src/util/router.php +++ b/src/util/router.php @@ -1,5 +1,9 @@ 405, 'handler' => null, 'params' => []]; } + /** + * Shorthand to register a GET route. + */ public function get(string $route, callable $handler): Router { return $this->add('GET', $route, $handler); } + /** + * Shorthand to register a POST route. + */ public function post(string $route, callable $handler): Router { return $this->add('POST', $route, $handler); diff --git a/templates/components/debug_query_log.php b/templates/components/debug_query_log.php deleted file mode 100644 index a533452..0000000 --- a/templates/components/debug_query_log.php +++ /dev/null @@ -1,11 +0,0 @@ -

-

Query Log

-

queries were executed.

- ({$time}s) {$query[0]}

"; - } - ?> -
diff --git a/templates/components/debug_stopwatch.php b/templates/components/debug_stopwatch.php deleted file mode 100644 index d0e6f5e..0000000 --- a/templates/components/debug_stopwatch.php +++ /dev/null @@ -1,7 +0,0 @@ -
-

Stopwatches

-

Page execution took seconds.

-

Bootstrap: seconds

-

Router: seconds

-

Handler: seconds

-
diff --git a/templates/components/left_nav.php b/templates/components/left_nav.php deleted file mode 100644 index 5e0c119..0000000 --- a/templates/components/left_nav.php +++ /dev/null @@ -1,18 +0,0 @@ - diff --git a/templates/components/logout_button.php b/templates/components/logout_button.php deleted file mode 100644 index 10cd741..0000000 --- a/templates/components/logout_button.php +++ /dev/null @@ -1,4 +0,0 @@ -
- - -
diff --git a/templates/components/right_nav.php b/templates/components/right_nav.php deleted file mode 100644 index 505a6f3..0000000 --- a/templates/components/right_nav.php +++ /dev/null @@ -1,37 +0,0 @@ -
-
- name ?> - att_points > 0): ?> - att_points ?> - -
- -
- Llevel ?> title()['name'] ?> -
- -
- silver ?> s -
- -
-
-
-
-
-
- -
-
-
-
-
-
- -
-
-
-
-
-
-
diff --git a/templates/layouts/basic.php b/templates/layouts/basic.php index a15b7cc..f6d28ae 100644 --- a/templates/layouts/basic.php +++ b/templates/layouts/basic.php @@ -4,54 +4,22 @@ Dragon Knight - + -
-
-

Dragon Knight

-
- -
- -

Welcome, username ?>

- - - Login - Register - -
+
+ Dragon Knight
-
- - -
- -
- - +
+
-