From d010b86fa0e143970d1b92d402313c94c3839c9d Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Thu, 9 Sep 2021 15:18:42 +0200 Subject: [PATCH] Remove old frontend ui --- dashboard/static/css/fic.css | 2 +- dashboard/static/css/glyphicon.css | 2 +- dashboard/static/favicon.ico | 2 +- dashboard/static/img/comcyber.png | 2 +- dashboard/static/img/epita.png | 2 +- dashboard/static/img/fic.png | 2 +- dashboard/static/img/srs.png | 2 +- dashboard/static/js/angular-route.min.js | 2 +- dashboard/static/js/angular-sanitize.min.js | 2 +- dashboard/static/js/angular.min.js | 2 +- dashboard/static/js/bootstrap.min.js | 2 +- dashboard/static/js/common.js | 2 +- dashboard/static/js/d3.v3.min.js | 2 +- dashboard/static/js/i18n | 2 +- dashboard/static/js/jquery.min.js | 2 +- frontend/static/css/bootstrap.min.css | 12 - frontend/static/css/fic.css | 387 --- frontend/static/css/glyphicon.css | 1 - frontend/static/e404.html | 51 - frontend/static/e404.json | 1 - frontend/static/e413.html | 48 - frontend/static/e413.json | 1 - frontend/static/e500.html | 51 - frontend/static/e500.json | 1 - frontend/static/favicon.ico | Bin 2238 -> 0 bytes frontend/static/fonts | 1 - frontend/static/img/comcyber.png | Bin 155509 -> 0 bytes frontend/static/img/epita.png | Bin 39967 -> 0 bytes frontend/static/img/fic.png | Bin 11868 -> 0 bytes frontend/static/img/icon-danger.ico | Bin 10366 -> 0 bytes frontend/static/img/icon-dark.ico | Bin 10366 -> 0 bytes frontend/static/img/icon-info.ico | Bin 10366 -> 0 bytes frontend/static/img/icon-light.ico | Bin 10366 -> 0 bytes frontend/static/img/icon-primary.ico | Bin 10366 -> 0 bytes frontend/static/img/icon-secondary.ico | Bin 10366 -> 0 bytes frontend/static/img/icon-success.ico | Bin 10366 -> 0 bytes frontend/static/img/icon-warning.ico | Bin 10366 -> 0 bytes frontend/static/img/srs.png | Bin 160574 -> 0 bytes frontend/static/index.html | 165 -- frontend/static/js/angular-route.min.js | 1 - frontend/static/js/angular-sanitize.min.js | 1 - frontend/static/js/angular.min.js | 1 - frontend/static/js/blake2b.js | 2594 ------------------- frontend/static/js/bootstrap.min.js | 1 - frontend/static/js/challenge.js | 887 ------- frontend/static/js/common.js | 1 - frontend/static/js/d3.v3.min.js | 1 - frontend/static/js/i18n | 1 - frontend/static/js/jquery.min.js | 1 - frontend/static/robots.txt | 2 - frontend/static/views/defi-SE.html | 130 - frontend/static/views/defi.html | 149 -- frontend/static/views/home.html | 27 - frontend/static/views/issue.html | 80 - frontend/static/views/rank.html | 22 - frontend/static/views/register.html | 135 - frontend/static/views/rules.html | 128 - frontend/static/views/tag.html | 16 - frontend/static/views/team-edit.html | 103 - frontend/static/views/theme.html | 49 - frontend/static/views/videos.html | 10 - frontend/static/welcome.html | 185 -- frontend/static/welcome.json | 1 - htdocs-frontend | 1 - qa/static/css/fic.css | 388 ++- qa/static/css/glyphicon.css | 2 +- qa/static/favicon.ico | 2 +- qa/static/fonts | 2 +- qa/static/img/comcyber.png | 1 - qa/static/img/epita.png | 1 - qa/static/img/fic.png | 2 +- qa/static/img/srs.png | 1 - qa/static/js/angular-route.min.js | 2 +- qa/static/js/angular-sanitize.min.js | 2 +- qa/static/js/angular.min.js | 2 +- qa/static/js/bootstrap.min.js | 2 +- qa/static/js/common.js | 2 +- qa/static/js/d3.v3.min.js | 2 +- qa/static/js/i18n | 2 +- qa/static/js/jquery.min.js | 2 +- 80 files changed, 414 insertions(+), 5277 deletions(-) delete mode 100644 frontend/static/css/bootstrap.min.css delete mode 100644 frontend/static/css/fic.css delete mode 120000 frontend/static/css/glyphicon.css delete mode 100644 frontend/static/e404.html delete mode 100644 frontend/static/e404.json delete mode 100644 frontend/static/e413.html delete mode 100644 frontend/static/e413.json delete mode 100644 frontend/static/e500.html delete mode 100644 frontend/static/e500.json delete mode 100644 frontend/static/favicon.ico delete mode 120000 frontend/static/fonts delete mode 100644 frontend/static/img/comcyber.png delete mode 100644 frontend/static/img/epita.png delete mode 100644 frontend/static/img/fic.png delete mode 100644 frontend/static/img/icon-danger.ico delete mode 100644 frontend/static/img/icon-dark.ico delete mode 100644 frontend/static/img/icon-info.ico delete mode 100644 frontend/static/img/icon-light.ico delete mode 100644 frontend/static/img/icon-primary.ico delete mode 100644 frontend/static/img/icon-secondary.ico delete mode 100644 frontend/static/img/icon-success.ico delete mode 100644 frontend/static/img/icon-warning.ico delete mode 100644 frontend/static/img/srs.png delete mode 100644 frontend/static/index.html delete mode 120000 frontend/static/js/angular-route.min.js delete mode 120000 frontend/static/js/angular-sanitize.min.js delete mode 120000 frontend/static/js/angular.min.js delete mode 100644 frontend/static/js/blake2b.js delete mode 120000 frontend/static/js/bootstrap.min.js delete mode 100644 frontend/static/js/challenge.js delete mode 120000 frontend/static/js/common.js delete mode 120000 frontend/static/js/d3.v3.min.js delete mode 120000 frontend/static/js/i18n delete mode 120000 frontend/static/js/jquery.min.js delete mode 100644 frontend/static/robots.txt delete mode 100644 frontend/static/views/defi-SE.html delete mode 100644 frontend/static/views/defi.html delete mode 100644 frontend/static/views/home.html delete mode 100644 frontend/static/views/issue.html delete mode 100644 frontend/static/views/rank.html delete mode 100644 frontend/static/views/register.html delete mode 100644 frontend/static/views/rules.html delete mode 100644 frontend/static/views/tag.html delete mode 100644 frontend/static/views/team-edit.html delete mode 100644 frontend/static/views/theme.html delete mode 100644 frontend/static/views/videos.html delete mode 100644 frontend/static/welcome.html delete mode 100644 frontend/static/welcome.json delete mode 120000 htdocs-frontend mode change 120000 => 100644 qa/static/css/fic.css delete mode 120000 qa/static/img/comcyber.png delete mode 120000 qa/static/img/epita.png delete mode 120000 qa/static/img/srs.png diff --git a/dashboard/static/css/fic.css b/dashboard/static/css/fic.css index 5f8e4077..d925f895 120000 --- a/dashboard/static/css/fic.css +++ b/dashboard/static/css/fic.css @@ -1 +1 @@ -../../../frontend/static/css/fic.css \ No newline at end of file +../../../qa/static/css/fic.css \ No newline at end of file diff --git a/dashboard/static/css/glyphicon.css b/dashboard/static/css/glyphicon.css index 6d65cb92..14cd8c56 120000 --- a/dashboard/static/css/glyphicon.css +++ b/dashboard/static/css/glyphicon.css @@ -1 +1 @@ -../../../frontend/static/css/glyphicon.css \ No newline at end of file +../../../admin/static/css/glyphicon.css \ No newline at end of file diff --git a/dashboard/static/favicon.ico b/dashboard/static/favicon.ico index 060d10ef..b92aceba 120000 --- a/dashboard/static/favicon.ico +++ b/dashboard/static/favicon.ico @@ -1 +1 @@ -../../frontend/static/favicon.ico \ No newline at end of file +../../frontend/ui/static/favicon.ico \ No newline at end of file diff --git a/dashboard/static/img/comcyber.png b/dashboard/static/img/comcyber.png index 0df83a18..59b125f8 120000 --- a/dashboard/static/img/comcyber.png +++ b/dashboard/static/img/comcyber.png @@ -1 +1 @@ -../../../frontend/static/img/comcyber.png \ No newline at end of file +../../../frontend/ui/static/img/comcyber.png \ No newline at end of file diff --git a/dashboard/static/img/epita.png b/dashboard/static/img/epita.png index 110ea62c..87bb7b0c 120000 --- a/dashboard/static/img/epita.png +++ b/dashboard/static/img/epita.png @@ -1 +1 @@ -../../../frontend/static/img/epita.png \ No newline at end of file +../../../admin/static/img/epita.png \ No newline at end of file diff --git a/dashboard/static/img/fic.png b/dashboard/static/img/fic.png index 00ba2748..6934adf9 120000 --- a/dashboard/static/img/fic.png +++ b/dashboard/static/img/fic.png @@ -1 +1 @@ -../../../frontend/static/img/fic.png \ No newline at end of file +../../../admin/static/img/fic.png \ No newline at end of file diff --git a/dashboard/static/img/srs.png b/dashboard/static/img/srs.png index a599744d..360dc727 120000 --- a/dashboard/static/img/srs.png +++ b/dashboard/static/img/srs.png @@ -1 +1 @@ -../../../frontend/static/img/srs.png \ No newline at end of file +../../../frontend/ui/static/img/srs.png \ No newline at end of file diff --git a/dashboard/static/js/angular-route.min.js b/dashboard/static/js/angular-route.min.js index 407db24d..ae04a29f 120000 --- a/dashboard/static/js/angular-route.min.js +++ b/dashboard/static/js/angular-route.min.js @@ -1 +1 @@ -../../../frontend/static/js/angular-route.min.js \ No newline at end of file +../../../admin/static/js/angular-route.min.js \ No newline at end of file diff --git a/dashboard/static/js/angular-sanitize.min.js b/dashboard/static/js/angular-sanitize.min.js index 7e14fe0a..d0410452 120000 --- a/dashboard/static/js/angular-sanitize.min.js +++ b/dashboard/static/js/angular-sanitize.min.js @@ -1 +1 @@ -../../../frontend/static/js/angular-sanitize.min.js \ No newline at end of file +../../../admin/static/js/angular-sanitize.min.js \ No newline at end of file diff --git a/dashboard/static/js/angular.min.js b/dashboard/static/js/angular.min.js index 86b88964..5eba27d2 120000 --- a/dashboard/static/js/angular.min.js +++ b/dashboard/static/js/angular.min.js @@ -1 +1 @@ -../../../frontend/static/js/angular.min.js \ No newline at end of file +../../../admin/static/js/angular.min.js \ No newline at end of file diff --git a/dashboard/static/js/bootstrap.min.js b/dashboard/static/js/bootstrap.min.js index d074c9db..47696515 120000 --- a/dashboard/static/js/bootstrap.min.js +++ b/dashboard/static/js/bootstrap.min.js @@ -1 +1 @@ -../../../frontend/static/js/bootstrap.min.js \ No newline at end of file +../../../admin/static/js/bootstrap.min.js \ No newline at end of file diff --git a/dashboard/static/js/common.js b/dashboard/static/js/common.js index 4e3fce35..c978b8f5 120000 --- a/dashboard/static/js/common.js +++ b/dashboard/static/js/common.js @@ -1 +1 @@ -../../../frontend/static/js/common.js \ No newline at end of file +../../../admin/static/js/common.js \ No newline at end of file diff --git a/dashboard/static/js/d3.v3.min.js b/dashboard/static/js/d3.v3.min.js index d2407e47..58337036 120000 --- a/dashboard/static/js/d3.v3.min.js +++ b/dashboard/static/js/d3.v3.min.js @@ -1 +1 @@ -../../../frontend/static/js/d3.v3.min.js \ No newline at end of file +../../../admin/static/js/d3.v3.min.js \ No newline at end of file diff --git a/dashboard/static/js/i18n b/dashboard/static/js/i18n index dab94408..0bb28e47 120000 --- a/dashboard/static/js/i18n +++ b/dashboard/static/js/i18n @@ -1 +1 @@ -../../../frontend/static/js/i18n/ \ No newline at end of file +../../../admin/static/js/i18n/ \ No newline at end of file diff --git a/dashboard/static/js/jquery.min.js b/dashboard/static/js/jquery.min.js index 022463c1..3065bbb1 120000 --- a/dashboard/static/js/jquery.min.js +++ b/dashboard/static/js/jquery.min.js @@ -1 +1 @@ -../../../frontend/static/js/jquery.min.js \ No newline at end of file +../../../admin/static/js/jquery.min.js \ No newline at end of file diff --git a/frontend/static/css/bootstrap.min.css b/frontend/static/css/bootstrap.min.css deleted file mode 100644 index c7b4f263..00000000 --- a/frontend/static/css/bootstrap.min.css +++ /dev/null @@ -1,12 +0,0 @@ -/*! - * Bootswatch v4.4.1 - * Homepage: https://bootswatch.com - * Copyright 2012-2019 Thomas Park - * Licensed under MIT - * Based on Bootstrap -*//*! - * Bootstrap v4.4.1 (https://getbootstrap.com/) - * Copyright 2011-2019 The Bootstrap Authors - * Copyright 2011-2019 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */:root{--blue: #007bff;--indigo: #6610f2;--purple: #6f42c1;--pink: #e83e8c;--red: #ee5f5b;--orange: #fd7e14;--yellow: #f89406;--green: #62c462;--teal: #20c997;--cyan: #5bc0de;--white: #fff;--gray: #7A8288;--gray-dark: #3A3F44;--primary: #3A3F44;--secondary: #7A8288;--success: #62c462;--info: #5bc0de;--warning: #f89406;--danger: #ee5f5b;--light: #e9ecef;--dark: #272B30;--breakpoint-xs: 0;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-size:0.9375rem;font-weight:400;line-height:1.5;color:#aaa;text-align:left;background-color:#272B30}[tabindex="-1"]:focus:not(:focus-visible){outline:0 !important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:0.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#fff;text-decoration:none;background-color:transparent}a:hover{color:#d9d9d9;text-decoration:underline}a:not([href]){color:inherit;text-decoration:none}a:not([href]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:0.75rem;padding-bottom:0.75rem;color:#7A8288;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:0.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled){cursor:pointer}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{padding:0;border-style:none}input[type="radio"],input[type="checkbox"]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px;-webkit-appearance:none}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none !important}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{margin-bottom:0.5rem;font-weight:500;line-height:1.2}h1,.h1{font-size:2.34375rem}h2,.h2{font-size:1.875rem}h3,.h3{font-size:1.640625rem}h4,.h4{font-size:1.40625rem}h5,.h5{font-size:1.171875rem}h6,.h6{font-size:0.9375rem}.lead{font-size:1.171875rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,0.1)}small,.small{font-size:80%;font-weight:400}mark,.mark{padding:0.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:0.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.171875rem}.blockquote-footer{display:block;font-size:80%;color:#7A8288}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:0.25rem;background-color:#272B30;border:1px solid #dee2e6;border-radius:0.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:0.5rem;line-height:1}.figure-caption{font-size:90%;color:#7A8288}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:0.2rem 0.4rem;font-size:87.5%;color:#fff;background-color:#272B30;border-radius:0.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:inherit}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width: 576px){.container{max-width:540px}}@media (min-width: 768px){.container{max-width:720px}}@media (min-width: 992px){.container{max-width:960px}}@media (min-width: 1200px){.container{max-width:1140px}}.container-fluid,.container-sm,.container-md,.container-lg,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width: 576px){.container,.container-sm{max-width:540px}}@media (min-width: 768px){.container,.container-sm,.container-md{max-width:720px}}@media (min-width: 992px){.container,.container-sm,.container-md,.container-lg{max-width:960px}}@media (min-width: 1200px){.container,.container-sm,.container-md,.container-lg,.container-xl{max-width:1140px}}.row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*="col-"]{padding-right:0;padding-left:0}.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.col-auto,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm,.col-sm-auto,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md,.col-md-auto,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg,.col-lg-auto,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-1>*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-2>*{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-3>*{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-4>*{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-5>*{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-6>*{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-1{margin-left:8.3333333333%}.offset-2{margin-left:16.6666666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.3333333333%}.offset-5{margin-left:41.6666666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.3333333333%}.offset-8{margin-left:66.6666666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.3333333333%}.offset-11{margin-left:91.6666666667%}@media (min-width: 576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-sm-1>*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-sm-4>*{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-sm-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-sm-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-sm-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-sm-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-sm-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-sm-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-sm-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-sm-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-sm-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-sm-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-sm-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-sm-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-sm-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-sm-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-sm-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-sm-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-sm-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.3333333333%}.offset-sm-2{margin-left:16.6666666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.3333333333%}.offset-sm-5{margin-left:41.6666666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.3333333333%}.offset-sm-8{margin-left:66.6666666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.3333333333%}.offset-sm-11{margin-left:91.6666666667%}}@media (min-width: 768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-md-1>*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-md-2>*{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-md-3>*{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-md-4>*{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-md-5>*{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-md-6>*{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-md-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-md-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-md-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-md-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-md-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-md-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-md-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-md-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-md-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-md-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-md-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-md-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-md-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-md-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-md-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-md-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-md-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-md-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-md-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-md-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-md-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.3333333333%}.offset-md-2{margin-left:16.6666666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.3333333333%}.offset-md-5{margin-left:41.6666666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.3333333333%}.offset-md-8{margin-left:66.6666666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.3333333333%}.offset-md-11{margin-left:91.6666666667%}}@media (min-width: 992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-lg-1>*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-lg-4>*{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-lg-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-lg-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-lg-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-lg-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-lg-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-lg-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-lg-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-lg-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-lg-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-lg-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-lg-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-lg-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-lg-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-lg-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-lg-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-lg-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-lg-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.3333333333%}.offset-lg-2{margin-left:16.6666666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.3333333333%}.offset-lg-5{margin-left:41.6666666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.3333333333%}.offset-lg-8{margin-left:66.6666666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.3333333333%}.offset-lg-11{margin-left:91.6666666667%}}@media (min-width: 1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-xl-1>*{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-xl-4>*{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-xl-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-xl-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-xl-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-xl-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-xl-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-xl-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-xl-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-xl-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-xl-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-xl-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-xl-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-xl-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-xl-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-xl-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-xl-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-xl-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-xl-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.3333333333%}.offset-xl-2{margin-left:16.6666666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.3333333333%}.offset-xl-5{margin-left:41.6666666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.3333333333%}.offset-xl-8{margin-left:66.6666666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.3333333333%}.offset-xl-11{margin-left:91.6666666667%}}.table{width:100%;margin-bottom:1rem;color:#fff}.table th,.table td{padding:0.75rem;vertical-align:top;border-top:1px solid rgba(0,0,0,0.6)}.table thead th{vertical-align:bottom;border-bottom:2px solid rgba(0,0,0,0.6)}.table tbody+tbody{border-top:2px solid rgba(0,0,0,0.6)}.table-sm th,.table-sm td{padding:0.3rem}.table-bordered{border:1px solid rgba(0,0,0,0.6)}.table-bordered th,.table-bordered td{border:1px solid rgba(0,0,0,0.6)}.table-bordered thead th,.table-bordered thead td{border-bottom-width:2px}.table-borderless th,.table-borderless td,.table-borderless thead th,.table-borderless tbody+tbody{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,0.05)}.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,0.075)}.table-primary,.table-primary>th,.table-primary>td{background-color:#c8c9cb}.table-primary th,.table-primary td,.table-primary thead th,.table-primary tbody+tbody{border-color:#999b9e}.table-hover .table-primary:hover{background-color:#bbbcbf}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#bbbcbf}.table-secondary,.table-secondary>th,.table-secondary>td{background-color:#dadcde}.table-secondary th,.table-secondary td,.table-secondary thead th,.table-secondary tbody+tbody{border-color:#babec1}.table-hover .table-secondary:hover{background-color:#cdcfd2}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#cdcfd2}.table-success,.table-success>th,.table-success>td{background-color:#d3eed3}.table-success th,.table-success td,.table-success thead th,.table-success tbody+tbody{border-color:#ade0ad}.table-hover .table-success:hover{background-color:#c1e7c1}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#c1e7c1}.table-info,.table-info>th,.table-info>td{background-color:#d1edf6}.table-info th,.table-info td,.table-info thead th,.table-info tbody+tbody{border-color:#aadeee}.table-hover .table-info:hover{background-color:#bce5f2}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#bce5f2}.table-warning,.table-warning>th,.table-warning>td{background-color:#fde1b9}.table-warning th,.table-warning td,.table-warning thead th,.table-warning tbody+tbody{border-color:#fbc77e}.table-hover .table-warning:hover{background-color:#fcd6a0}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#fcd6a0}.table-danger,.table-danger>th,.table-danger>td{background-color:#fad2d1}.table-danger th,.table-danger td,.table-danger thead th,.table-danger tbody+tbody{border-color:#f6acaa}.table-hover .table-danger:hover{background-color:#f8bcba}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f8bcba}.table-light,.table-light>th,.table-light>td{background-color:#f9fafb}.table-light th,.table-light td,.table-light thead th,.table-light tbody+tbody{border-color:#f4f5f7}.table-hover .table-light:hover{background-color:#eaedf1}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#eaedf1}.table-dark,.table-dark>th,.table-dark>td{background-color:#c3c4c5}.table-dark th,.table-dark td,.table-dark thead th,.table-dark tbody+tbody{border-color:#8f9193}.table-hover .table-dark:hover{background-color:#b6b7b8}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b6b7b8}.table-active,.table-active>th,.table-active>td{background-color:rgba(255,255,255,0.075)}.table-hover .table-active:hover{background-color:rgba(242,242,242,0.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(242,242,242,0.075)}.table .thead-dark th{color:#fff;background-color:#3A3F44;border-color:rgba(0,0,0,0.6)}.table .thead-light th{color:#52575C;background-color:#e9ecef;border-color:rgba(0,0,0,0.6)}.table-dark{color:#fff;background-color:#3A3F44}.table-dark th,.table-dark td,.table-dark thead th{border-color:rgba(0,0,0,0.6)}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,0.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,0.075)}@media (max-width: 575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width: 767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width: 991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width: 1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + 1.5rem + 2px);padding:0.75rem 1rem;font-size:0.9375rem;font-weight:400;line-height:1.5;color:#52575C;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:0.25rem;-webkit-transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{-webkit-transition:none;transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #52575C}.form-control:focus{color:#52575C;background-color:#fff;border-color:#757f89;outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25)}.form-control::-webkit-input-placeholder{color:#7A8288;opacity:1}.form-control::-ms-input-placeholder{color:#7A8288;opacity:1}.form-control::placeholder{color:#7A8288;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#ccc;opacity:1}select.form-control:focus::-ms-value{color:#52575C;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(0.75rem + 1px);padding-bottom:calc(0.75rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + 1px);padding-bottom:calc(0.5rem + 1px);font-size:1.171875rem;line-height:1.5}.col-form-label-sm{padding-top:calc(0.25rem + 1px);padding-bottom:calc(0.25rem + 1px);font-size:0.8203125rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:0.75rem 0;margin-bottom:0;font-size:0.9375rem;line-height:1.5;color:#aaa;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + 0.5rem + 2px);padding:0.25rem 0.5rem;font-size:0.8203125rem;line-height:1.5;border-radius:0.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:0.5rem 1rem;font-size:1.171875rem;line-height:1.5;border-radius:0.3rem}select.form-control[size],select.form-control[multiple]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:0.25rem}.form-row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*="col-"]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:0.3rem;margin-left:-1.25rem}.form-check-input[disabled] ~ .form-check-label,.form-check-input:disabled ~ .form-check-label{color:#7A8288}.form-check-label{margin-bottom:0}.form-check-inline{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:0.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:0.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:0.25rem;font-size:80%;color:#62c462}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:0.25rem 0.5rem;margin-top:.1rem;font-size:0.8203125rem;line-height:1.5;color:#fff;background-color:rgba(98,196,98,0.9);border-radius:0.25rem}.was-validated :valid ~ .valid-feedback,.was-validated :valid ~ .valid-tooltip,.is-valid ~ .valid-feedback,.is-valid ~ .valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:#62c462;padding-right:calc(1.5em + 1.5rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2362c462' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.375rem) center;background-size:calc(0.75em + 0.75rem) calc(0.75em + 0.75rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:#62c462;-webkit-box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25);box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + 1.5rem);background-position:top calc(0.375em + 0.375rem) right calc(0.375em + 0.375rem)}.was-validated .custom-select:valid,.custom-select.is-valid{border-color:#62c462;padding-right:calc(0.75em + 3.125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%233A3F44' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 1rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2362c462' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 2rem/calc(0.75em + 0.75rem) calc(0.75em + 0.75rem)}.was-validated .custom-select:valid:focus,.custom-select.is-valid:focus{border-color:#62c462;-webkit-box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25);box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25)}.was-validated .form-check-input:valid ~ .form-check-label,.form-check-input.is-valid ~ .form-check-label{color:#62c462}.was-validated .form-check-input:valid ~ .valid-feedback,.was-validated .form-check-input:valid ~ .valid-tooltip,.form-check-input.is-valid ~ .valid-feedback,.form-check-input.is-valid ~ .valid-tooltip{display:block}.was-validated .custom-control-input:valid ~ .custom-control-label,.custom-control-input.is-valid ~ .custom-control-label{color:#62c462}.was-validated .custom-control-input:valid ~ .custom-control-label::before,.custom-control-input.is-valid ~ .custom-control-label::before{border-color:#62c462}.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before,.custom-control-input.is-valid:checked ~ .custom-control-label::before{border-color:#87d287;background-color:#87d287}.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before,.custom-control-input.is-valid:focus ~ .custom-control-label::before{-webkit-box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25);box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25)}.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before,.custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before{border-color:#62c462}.was-validated .custom-file-input:valid ~ .custom-file-label,.custom-file-input.is-valid ~ .custom-file-label{border-color:#62c462}.was-validated .custom-file-input:valid:focus ~ .custom-file-label,.custom-file-input.is-valid:focus ~ .custom-file-label{border-color:#62c462;-webkit-box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25);box-shadow:0 0 0 0.2rem rgba(98,196,98,0.25)}.invalid-feedback{display:none;width:100%;margin-top:0.25rem;font-size:80%;color:#ee5f5b}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:0.25rem 0.5rem;margin-top:.1rem;font-size:0.8203125rem;line-height:1.5;color:#fff;background-color:rgba(238,95,91,0.9);border-radius:0.25rem}.was-validated :invalid ~ .invalid-feedback,.was-validated :invalid ~ .invalid-tooltip,.is-invalid ~ .invalid-feedback,.is-invalid ~ .invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#ee5f5b;padding-right:calc(1.5em + 1.5rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23ee5f5b' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23ee5f5b' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.375rem) center;background-size:calc(0.75em + 0.75rem) calc(0.75em + 0.75rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#ee5f5b;-webkit-box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25);box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + 1.5rem);background-position:top calc(0.375em + 0.375rem) right calc(0.375em + 0.375rem)}.was-validated .custom-select:invalid,.custom-select.is-invalid{border-color:#ee5f5b;padding-right:calc(0.75em + 3.125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%233A3F44' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 1rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23ee5f5b' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23ee5f5b' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 2rem/calc(0.75em + 0.75rem) calc(0.75em + 0.75rem)}.was-validated .custom-select:invalid:focus,.custom-select.is-invalid:focus{border-color:#ee5f5b;-webkit-box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25);box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25)}.was-validated .form-check-input:invalid ~ .form-check-label,.form-check-input.is-invalid ~ .form-check-label{color:#ee5f5b}.was-validated .form-check-input:invalid ~ .invalid-feedback,.was-validated .form-check-input:invalid ~ .invalid-tooltip,.form-check-input.is-invalid ~ .invalid-feedback,.form-check-input.is-invalid ~ .invalid-tooltip{display:block}.was-validated .custom-control-input:invalid ~ .custom-control-label,.custom-control-input.is-invalid ~ .custom-control-label{color:#ee5f5b}.was-validated .custom-control-input:invalid ~ .custom-control-label::before,.custom-control-input.is-invalid ~ .custom-control-label::before{border-color:#ee5f5b}.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before,.custom-control-input.is-invalid:checked ~ .custom-control-label::before{border-color:#f38c89;background-color:#f38c89}.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before,.custom-control-input.is-invalid:focus ~ .custom-control-label::before{-webkit-box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25);box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25)}.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before,.custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before{border-color:#ee5f5b}.was-validated .custom-file-input:invalid ~ .custom-file-label,.custom-file-input.is-invalid ~ .custom-file-label{border-color:#ee5f5b}.was-validated .custom-file-input:invalid:focus ~ .custom-file-label,.custom-file-input.is-invalid:focus ~ .custom-file-label{border-color:#ee5f5b;-webkit-box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25);box-shadow:0 0 0 0.2rem rgba(238,95,91,0.25)}.form-inline{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width: 576px){.form-inline label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .input-group,.form-inline .custom-select{width:auto}.form-inline .form-check{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:0.25rem;margin-left:0}.form-inline .custom-control{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#aaa;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:0.75rem 1rem;font-size:0.9375rem;line-height:1.5;border-radius:0.25rem;-webkit-transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{-webkit-transition:none;transition:none}}.btn:hover{color:#aaa;text-decoration:none}.btn:focus,.btn.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25)}.btn.disabled,.btn:disabled{opacity:0.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#3A3F44;border-color:#3A3F44}.btn-primary:hover{color:#fff;background-color:#282c2f;border-color:#232628}.btn-primary:focus,.btn-primary.focus{color:#fff;background-color:#282c2f;border-color:#232628;-webkit-box-shadow:0 0 0 0.2rem rgba(88,92,96,0.5);box-shadow:0 0 0 0.2rem rgba(88,92,96,0.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#3A3F44;border-color:#3A3F44}.btn-primary:not(:disabled):not(.disabled):active,.btn-primary:not(:disabled):not(.disabled).active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#232628;border-color:#1d1f22}.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-primary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(88,92,96,0.5);box-shadow:0 0 0 0.2rem rgba(88,92,96,0.5)}.btn-secondary{color:#fff;background-color:#7A8288;border-color:#7A8288}.btn-secondary:hover{color:#fff;background-color:#686f74;border-color:#62686d}.btn-secondary:focus,.btn-secondary.focus{color:#fff;background-color:#686f74;border-color:#62686d;-webkit-box-shadow:0 0 0 0.2rem rgba(142,149,154,0.5);box-shadow:0 0 0 0.2rem rgba(142,149,154,0.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#7A8288;border-color:#7A8288}.btn-secondary:not(:disabled):not(.disabled):active,.btn-secondary:not(:disabled):not(.disabled).active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#62686d;border-color:#5c6267}.btn-secondary:not(:disabled):not(.disabled):active:focus,.btn-secondary:not(:disabled):not(.disabled).active:focus,.show>.btn-secondary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(142,149,154,0.5);box-shadow:0 0 0 0.2rem rgba(142,149,154,0.5)}.btn-success{color:#fff;background-color:#62c462;border-color:#62c462}.btn-success:hover{color:#fff;background-color:#46ba46;border-color:#42b142}.btn-success:focus,.btn-success.focus{color:#fff;background-color:#46ba46;border-color:#42b142;-webkit-box-shadow:0 0 0 0.2rem rgba(122,205,122,0.5);box-shadow:0 0 0 0.2rem rgba(122,205,122,0.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#62c462;border-color:#62c462}.btn-success:not(:disabled):not(.disabled):active,.btn-success:not(:disabled):not(.disabled).active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#42b142;border-color:#3fa73f}.btn-success:not(:disabled):not(.disabled):active:focus,.btn-success:not(:disabled):not(.disabled).active:focus,.show>.btn-success.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(122,205,122,0.5);box-shadow:0 0 0 0.2rem rgba(122,205,122,0.5)}.btn-info{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-info:hover{color:#fff;background-color:#3bb4d8;border-color:#31b0d5}.btn-info:focus,.btn-info.focus{color:#fff;background-color:#3bb4d8;border-color:#31b0d5;-webkit-box-shadow:0 0 0 0.2rem rgba(116,201,227,0.5);box-shadow:0 0 0 0.2rem rgba(116,201,227,0.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-info:not(:disabled):not(.disabled):active,.btn-info:not(:disabled):not(.disabled).active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#2aaacf}.btn-info:not(:disabled):not(.disabled):active:focus,.btn-info:not(:disabled):not(.disabled).active:focus,.show>.btn-info.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(116,201,227,0.5);box-shadow:0 0 0 0.2rem rgba(116,201,227,0.5)}.btn-warning{color:#fff;background-color:#f89406;border-color:#f89406}.btn-warning:hover{color:#fff;background-color:#d37e05;border-color:#c67605}.btn-warning:focus,.btn-warning.focus{color:#fff;background-color:#d37e05;border-color:#c67605;-webkit-box-shadow:0 0 0 0.2rem rgba(249,164,43,0.5);box-shadow:0 0 0 0.2rem rgba(249,164,43,0.5)}.btn-warning.disabled,.btn-warning:disabled{color:#fff;background-color:#f89406;border-color:#f89406}.btn-warning:not(:disabled):not(.disabled):active,.btn-warning:not(:disabled):not(.disabled).active,.show>.btn-warning.dropdown-toggle{color:#fff;background-color:#c67605;border-color:#ba6f04}.btn-warning:not(:disabled):not(.disabled):active:focus,.btn-warning:not(:disabled):not(.disabled).active:focus,.show>.btn-warning.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(249,164,43,0.5);box-shadow:0 0 0 0.2rem rgba(249,164,43,0.5)}.btn-danger{color:#fff;background-color:#ee5f5b;border-color:#ee5f5b}.btn-danger:hover{color:#fff;background-color:#ea3d38;border-color:#e9322d}.btn-danger:focus,.btn-danger.focus{color:#fff;background-color:#ea3d38;border-color:#e9322d;-webkit-box-shadow:0 0 0 0.2rem rgba(241,119,116,0.5);box-shadow:0 0 0 0.2rem rgba(241,119,116,0.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#ee5f5b;border-color:#ee5f5b}.btn-danger:not(:disabled):not(.disabled):active,.btn-danger:not(:disabled):not(.disabled).active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#e9322d;border-color:#e82721}.btn-danger:not(:disabled):not(.disabled):active:focus,.btn-danger:not(:disabled):not(.disabled).active:focus,.show>.btn-danger.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(241,119,116,0.5);box-shadow:0 0 0 0.2rem rgba(241,119,116,0.5)}.btn-light{color:#272B30;background-color:#e9ecef;border-color:#e9ecef}.btn-light:hover{color:#272B30;background-color:#d3d9df;border-color:#cbd3da}.btn-light:focus,.btn-light.focus{color:#272B30;background-color:#d3d9df;border-color:#cbd3da;-webkit-box-shadow:0 0 0 0.2rem rgba(204,207,210,0.5);box-shadow:0 0 0 0.2rem rgba(204,207,210,0.5)}.btn-light.disabled,.btn-light:disabled{color:#272B30;background-color:#e9ecef;border-color:#e9ecef}.btn-light:not(:disabled):not(.disabled):active,.btn-light:not(:disabled):not(.disabled).active,.show>.btn-light.dropdown-toggle{color:#272B30;background-color:#cbd3da;border-color:#c4ccd4}.btn-light:not(:disabled):not(.disabled):active:focus,.btn-light:not(:disabled):not(.disabled).active:focus,.show>.btn-light.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(204,207,210,0.5);box-shadow:0 0 0 0.2rem rgba(204,207,210,0.5)}.btn-dark{color:#fff;background-color:#272B30;border-color:#272B30}.btn-dark:hover{color:#fff;background-color:#16181b;border-color:#101214}.btn-dark:focus,.btn-dark.focus{color:#fff;background-color:#16181b;border-color:#101214;-webkit-box-shadow:0 0 0 0.2rem rgba(71,75,79,0.5);box-shadow:0 0 0 0.2rem rgba(71,75,79,0.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#272B30;border-color:#272B30}.btn-dark:not(:disabled):not(.disabled):active,.btn-dark:not(:disabled):not(.disabled).active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#101214;border-color:#0a0b0d}.btn-dark:not(:disabled):not(.disabled):active:focus,.btn-dark:not(:disabled):not(.disabled).active:focus,.show>.btn-dark.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(71,75,79,0.5);box-shadow:0 0 0 0.2rem rgba(71,75,79,0.5)}.btn-outline-primary{color:#3A3F44;border-color:#3A3F44}.btn-outline-primary:hover{color:#fff;background-color:#3A3F44;border-color:#3A3F44}.btn-outline-primary:focus,.btn-outline-primary.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.5);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#3A3F44;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled):active,.btn-outline-primary:not(:disabled):not(.disabled).active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#3A3F44;border-color:#3A3F44}.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.5);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.5)}.btn-outline-secondary{color:#7A8288;border-color:#7A8288}.btn-outline-secondary:hover{color:#fff;background-color:#7A8288;border-color:#7A8288}.btn-outline-secondary:focus,.btn-outline-secondary.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(122,130,136,0.5);box-shadow:0 0 0 0.2rem rgba(122,130,136,0.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#7A8288;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled):active,.btn-outline-secondary:not(:disabled):not(.disabled).active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#7A8288;border-color:#7A8288}.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(122,130,136,0.5);box-shadow:0 0 0 0.2rem rgba(122,130,136,0.5)}.btn-outline-success{color:#62c462;border-color:#62c462}.btn-outline-success:hover{color:#fff;background-color:#62c462;border-color:#62c462}.btn-outline-success:focus,.btn-outline-success.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(98,196,98,0.5);box-shadow:0 0 0 0.2rem rgba(98,196,98,0.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#62c462;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled):active,.btn-outline-success:not(:disabled):not(.disabled).active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#62c462;border-color:#62c462}.btn-outline-success:not(:disabled):not(.disabled):active:focus,.btn-outline-success:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-success.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(98,196,98,0.5);box-shadow:0 0 0 0.2rem rgba(98,196,98,0.5)}.btn-outline-info{color:#5bc0de;border-color:#5bc0de}.btn-outline-info:hover{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-outline-info:focus,.btn-outline-info.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(91,192,222,0.5);box-shadow:0 0 0 0.2rem rgba(91,192,222,0.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#5bc0de;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled):active,.btn-outline-info:not(:disabled):not(.disabled).active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-outline-info:not(:disabled):not(.disabled):active:focus,.btn-outline-info:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-info.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(91,192,222,0.5);box-shadow:0 0 0 0.2rem rgba(91,192,222,0.5)}.btn-outline-warning{color:#f89406;border-color:#f89406}.btn-outline-warning:hover{color:#fff;background-color:#f89406;border-color:#f89406}.btn-outline-warning:focus,.btn-outline-warning.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(248,148,6,0.5);box-shadow:0 0 0 0.2rem rgba(248,148,6,0.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#f89406;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled):active,.btn-outline-warning:not(:disabled):not(.disabled).active,.show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#f89406;border-color:#f89406}.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(248,148,6,0.5);box-shadow:0 0 0 0.2rem rgba(248,148,6,0.5)}.btn-outline-danger{color:#ee5f5b;border-color:#ee5f5b}.btn-outline-danger:hover{color:#fff;background-color:#ee5f5b;border-color:#ee5f5b}.btn-outline-danger:focus,.btn-outline-danger.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(238,95,91,0.5);box-shadow:0 0 0 0.2rem rgba(238,95,91,0.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#ee5f5b;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled):active,.btn-outline-danger:not(:disabled):not(.disabled).active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#ee5f5b;border-color:#ee5f5b}.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(238,95,91,0.5);box-shadow:0 0 0 0.2rem rgba(238,95,91,0.5)}.btn-outline-light{color:#e9ecef;border-color:#e9ecef}.btn-outline-light:hover{color:#272B30;background-color:#e9ecef;border-color:#e9ecef}.btn-outline-light:focus,.btn-outline-light.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5);box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#e9ecef;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled):active,.btn-outline-light:not(:disabled):not(.disabled).active,.show>.btn-outline-light.dropdown-toggle{color:#272B30;background-color:#e9ecef;border-color:#e9ecef}.btn-outline-light:not(:disabled):not(.disabled):active:focus,.btn-outline-light:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-light.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5);box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5)}.btn-outline-dark{color:#272B30;border-color:#272B30}.btn-outline-dark:hover{color:#fff;background-color:#272B30;border-color:#272B30}.btn-outline-dark:focus,.btn-outline-dark.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(39,43,48,0.5);box-shadow:0 0 0 0.2rem rgba(39,43,48,0.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#272B30;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled):active,.btn-outline-dark:not(:disabled):not(.disabled).active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#272B30;border-color:#272B30}.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(39,43,48,0.5);box-shadow:0 0 0 0.2rem rgba(39,43,48,0.5)}.btn-link{font-weight:400;color:#fff;text-decoration:none}.btn-link:hover{color:#d9d9d9;text-decoration:underline}.btn-link:focus,.btn-link.focus{text-decoration:underline;-webkit-box-shadow:none;box-shadow:none}.btn-link:disabled,.btn-link.disabled{color:#7A8288;pointer-events:none}.btn-lg,.btn-group-lg>.btn{padding:0.5rem 1rem;font-size:1.171875rem;line-height:1.5;border-radius:0.3rem}.btn-sm,.btn-group-sm>.btn{padding:0.25rem 0.5rem;font-size:0.8203125rem;line-height:1.5;border-radius:0.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:0.5rem}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{-webkit-transition:opacity 0.15s linear;transition:opacity 0.15s linear}@media (prefers-reduced-motion: reduce){.fade{-webkit-transition:none;transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height 0.35s ease;transition:height 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing{-webkit-transition:none;transition:none}}.dropup,.dropright,.dropdown,.dropleft{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid;border-right:0.3em solid transparent;border-bottom:0;border-left:0.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:0.5rem 0;margin:0.125rem 0 0;font-size:0.9375rem;color:#aaa;text-align:left;list-style:none;background-color:#3A3F44;background-clip:padding-box;border:1px solid rgba(0,0,0,0.6);border-radius:0.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:0.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0;border-right:0.3em solid transparent;border-bottom:0.3em solid;border-left:0.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:0.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid transparent;border-right:0;border-bottom:0.3em solid transparent;border-left:0.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:0.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid transparent;border-right:0.3em solid;border-bottom:0.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^="top"],.dropdown-menu[x-placement^="right"],.dropdown-menu[x-placement^="bottom"],.dropdown-menu[x-placement^="left"]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:0.5rem 0;overflow:hidden;border-top:1px solid rgba(0,0,0,0.15)}.dropdown-item{display:block;width:100%;padding:0.25rem 1.5rem;clear:both;font-weight:400;color:#aaa;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:hover,.dropdown-item:focus{color:#fff;text-decoration:none;background-color:#272B30}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#3A3F44}.dropdown-item.disabled,.dropdown-item:disabled{color:#7A8288;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:0.5rem 1.5rem;margin-bottom:0;font-size:0.8203125rem;color:#7A8288;white-space:nowrap}.dropdown-item-text{display:block;padding:0.25rem 1.5rem;color:#aaa}.btn-group,.btn-group-vertical{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover{z-index:1}.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:0.75rem;padding-left:0.75rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:0.375rem;padding-left:0.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:0.75rem;padding-left:0.75rem}.btn-group-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type="radio"],.btn-group-toggle>.btn input[type="checkbox"],.btn-group-toggle>.btn-group>.btn input[type="radio"],.btn-group-toggle>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-control-plaintext,.input-group>.custom-select,.input-group>.custom-file{position:relative;-webkit-box-flex:1;-ms-flex:1 1 0%;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.form-control+.form-control,.input-group>.form-control+.custom-select,.input-group>.form-control+.custom-file,.input-group>.form-control-plaintext+.form-control,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.custom-file,.input-group>.custom-select+.form-control,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.custom-file,.input-group>.custom-file+.form-control,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.custom-file{margin-left:-1px}.input-group>.form-control:focus,.input-group>.custom-select:focus,.input-group>.custom-file .custom-file-input:focus ~ .custom-file-label{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.form-control:not(:last-child),.input-group>.custom-select:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.form-control:not(:first-child),.input-group>.custom-select:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-prepend,.input-group-append{display:-webkit-box;display:-ms-flexbox;display:flex}.input-group-prepend .btn,.input-group-append .btn{position:relative;z-index:2}.input-group-prepend .btn:focus,.input-group-append .btn:focus{z-index:3}.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.input-group-text,.input-group-append .input-group-text+.btn{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0.75rem 1rem;margin-bottom:0;font-size:0.9375rem;font-weight:400;line-height:1.5;color:#52575C;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:0.25rem}.input-group-text input[type="radio"],.input-group-text input[type="checkbox"]{margin-top:0}.input-group-lg>.form-control:not(textarea),.input-group-lg>.custom-select{height:calc(1.5em + 1rem + 2px)}.input-group-lg>.form-control,.input-group-lg>.custom-select,.input-group-lg>.input-group-prepend>.input-group-text,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-append>.btn{padding:0.5rem 1rem;font-size:1.171875rem;line-height:1.5;border-radius:0.3rem}.input-group-sm>.form-control:not(textarea),.input-group-sm>.custom-select{height:calc(1.5em + 0.5rem + 2px)}.input-group-sm>.form-control,.input-group-sm>.custom-select,.input-group-sm>.input-group-prepend>.input-group-text,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-append>.btn{padding:0.25rem 0.5rem;font-size:0.8203125rem;line-height:1.5;border-radius:0.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:2rem}.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text,.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.40625rem;padding-left:1.5rem}.custom-control-inline{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.203125rem;opacity:0}.custom-control-input:checked ~ .custom-control-label::before{color:#fff;border-color:#3A3F44;background-color:#3A3F44}.custom-control-input:focus ~ .custom-control-label::before{-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25)}.custom-control-input:focus:not(:checked) ~ .custom-control-label::before{border-color:#757f89}.custom-control-input:not(:disabled):active ~ .custom-control-label::before{color:#fff;background-color:#9098a0;border-color:#9098a0}.custom-control-input[disabled] ~ .custom-control-label,.custom-control-input:disabled ~ .custom-control-label{color:#7A8288}.custom-control-input[disabled] ~ .custom-control-label::before,.custom-control-input:disabled ~ .custom-control-label::before{background-color:#ccc}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:0.203125rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:#999 solid 1px}.custom-control-label::after{position:absolute;top:0.203125rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50% / 50% 50%}.custom-checkbox .custom-control-label::before{border-radius:0.25rem}.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before{border-color:#3A3F44;background-color:#3A3F44}.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(58,63,68,0.5)}.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before{background-color:rgba(58,63,68,0.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(58,63,68,0.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:0.5rem}.custom-switch .custom-control-label::after{top:calc(0.203125rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#999;border-radius:0.5rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.custom-switch .custom-control-label::after{-webkit-transition:none;transition:none}}.custom-switch .custom-control-input:checked ~ .custom-control-label::after{background-color:#fff;-webkit-transform:translateX(0.75rem);transform:translateX(0.75rem)}.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(58,63,68,0.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + 1.5rem + 2px);padding:0.75rem 2rem 0.75rem 1rem;font-size:0.9375rem;font-weight:400;line-height:1.5;color:#52575C;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%233A3F44' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 1rem center/8px 10px;border:1px solid #ced4da;border-radius:0.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#757f89;outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25)}.custom-select:focus::-ms-value{color:#52575C;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:1rem;background-image:none}.custom-select:disabled{color:#7A8288;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #52575C}.custom-select-sm{height:calc(1.5em + 0.5rem + 2px);padding-top:0.25rem;padding-bottom:0.25rem;padding-left:0.5rem;font-size:0.8203125rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:0.5rem;padding-bottom:0.5rem;padding-left:1rem;font-size:1.171875rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + 1.5rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + 1.5rem + 2px);margin:0;opacity:0}.custom-file-input:focus ~ .custom-file-label{border-color:#757f89;-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25)}.custom-file-input[disabled] ~ .custom-file-label,.custom-file-input:disabled ~ .custom-file-label{background-color:#ccc}.custom-file-input:lang(en) ~ .custom-file-label::after{content:"Browse"}.custom-file-input ~ .custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + 1.5rem + 2px);padding:0.75rem 1rem;font-weight:400;line-height:1.5;color:#52575C;background-color:#fff;border:1px solid #ced4da;border-radius:0.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + 1.5rem);padding:0.75rem 1rem;line-height:1.5;color:#52575C;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 0.25rem 0.25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:none}.custom-range:focus::-webkit-slider-thumb{-webkit-box-shadow:0 0 0 1px #272B30,0 0 0 0.2rem rgba(58,63,68,0.25);box-shadow:0 0 0 1px #272B30,0 0 0 0.2rem rgba(58,63,68,0.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #272B30,0 0 0 0.2rem rgba(58,63,68,0.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #272B30,0 0 0 0.2rem rgba(58,63,68,0.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-0.25rem;background-color:#3A3F44;border:0;border-radius:1rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#9098a0}.custom-range::-webkit-slider-runnable-track{width:100%;height:0.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#3A3F44;border:0;border-radius:1rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-moz-range-thumb{-webkit-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#9098a0}.custom-range::-moz-range-track{width:100%;height:0.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:0.2rem;margin-left:0.2rem;background-color:#3A3F44;border:0;border-radius:1rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-ms-thumb{-webkit-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#9098a0}.custom-range::-ms-track{width:100%;height:0.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:0.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#999}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#999}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#999}.custom-control-label::before,.custom-file-label,.custom-select{-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.custom-control-label::before,.custom-file-label,.custom-select{-webkit-transition:none;transition:none}}.nav{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:0.5rem 1rem}.nav-link:hover,.nav-link:focus{text-decoration:none}.nav-link.disabled{color:#7A8288;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid rgba(0,0,0,0.6)}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{border-color:rgba(0,0,0,0.6)}.nav-tabs .nav-link.disabled{color:#7A8288;background-color:transparent;border-color:transparent}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:#fff;background-color:#272B30;border-color:rgba(0,0,0,0.6)}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:0.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#3A3F44}.nav-fill .nav-item{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 1rem}.navbar .container,.navbar .container-fluid,.navbar .container-sm,.navbar .container-md,.navbar .container-lg,.navbar .container-xl{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:0.32421875rem;padding-bottom:0.32421875rem;margin-right:1rem;font-size:1.171875rem;line-height:inherit;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-nav{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:0.5rem;padding-bottom:0.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:0.25rem 0.75rem;font-size:1.171875rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:0.25rem}.navbar-toggler:hover,.navbar-toggler:focus{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width: 575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 576px){.navbar-expand-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width: 767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-md,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 768px){.navbar-expand-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-md,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width: 991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 992px){.navbar-expand-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width: 1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 1200px){.navbar-expand-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-sm,.navbar-expand>.container-md,.navbar-expand>.container-lg,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-sm,.navbar-expand>.container-md,.navbar-expand>.container-lg,.navbar-expand>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:#3A3F44}.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus{color:#3A3F44}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,0.5)}.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus{color:#3A3F44}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,0.3)}.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .nav-link.active{color:#3A3F44}.navbar-light .navbar-toggler{color:rgba(0,0,0,0.5);border-color:rgba(0,0,0,0.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,0.5)}.navbar-light .navbar-text a{color:#3A3F44}.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus{color:#3A3F44}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-brand:focus{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,0.5)}.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus{color:#fff}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,0.25)}.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .nav-link.active{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,0.5);border-color:rgba(255,255,255,0.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,0.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:hover,.navbar-dark .navbar-text a:focus{color:#fff}.card{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#32383e;background-clip:border-box;border:1px solid rgba(0,0,0,0.6);border-radius:0.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:0.25rem;border-bottom-left-radius:0.25rem}.card-body{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:0.75rem}.card-subtitle{margin-top:-0.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:0.75rem 1.25rem;margin-bottom:0;background-color:#515960;border-bottom:1px solid rgba(0,0,0,0.6)}.card-header:first-child{border-radius:calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:0.75rem 1.25rem;background-color:#515960;border-top:1px solid rgba(0,0,0,0.6)}.card-footer:last-child{border-radius:0 0 calc(0.25rem - 1px) calc(0.25rem - 1px)}.card-header-tabs{margin-right:-0.625rem;margin-bottom:-0.75rem;margin-left:-0.625rem;border-bottom:0}.card-header-pills{margin-right:-0.625rem;margin-left:-0.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-top,.card-img-bottom{-ms-flex-negative:0;flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(0.25rem - 1px);border-bottom-left-radius:calc(0.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width: 576px){.card-deck{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width: 576px){.card-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:0.75rem}@media (min-width: 576px){.card-columns{-webkit-column-count:3;column-count:3;-webkit-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:0.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:0.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:0.5rem;color:#7A8288;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#999}.pagination{display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:0.25rem}.page-link{position:relative;display:block;padding:0.5rem 0.75rem;margin-left:-1px;line-height:1.25;color:#fff;background-color:transparent;border:1px solid rgba(0,0,0,0.6)}.page-link:hover{z-index:2;color:#fff;text-decoration:none;background-color:transparent;border-color:rgba(0,0,0,0.6)}.page-link:focus{z-index:3;outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem}.page-item:last-child .page-link{border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:transparent;border-color:rgba(0,0,0,0.6)}.page-item.disabled .page-link{color:#7A8288;pointer-events:none;cursor:auto;background-color:transparent;border-color:rgba(0,0,0,0.6)}.pagination-lg .page-link{padding:0.75rem 1.5rem;font-size:1.171875rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:0.3rem;border-bottom-left-radius:0.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:0.3rem;border-bottom-right-radius:0.3rem}.pagination-sm .page-link{padding:0.25rem 0.5rem;font-size:0.8203125rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:0.2rem;border-bottom-left-radius:0.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:0.2rem;border-bottom-right-radius:0.2rem}.badge{display:inline-block;padding:0.25em 0.4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:0.25rem;-webkit-transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.badge{-webkit-transition:none;transition:none}}a.badge:hover,a.badge:focus{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:0.6em;padding-left:0.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#3A3F44}a.badge-primary:hover,a.badge-primary:focus{color:#fff;background-color:#232628}a.badge-primary:focus,a.badge-primary.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(58,63,68,0.5);box-shadow:0 0 0 0.2rem rgba(58,63,68,0.5)}.badge-secondary{color:#fff;background-color:#7A8288}a.badge-secondary:hover,a.badge-secondary:focus{color:#fff;background-color:#62686d}a.badge-secondary:focus,a.badge-secondary.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(122,130,136,0.5);box-shadow:0 0 0 0.2rem rgba(122,130,136,0.5)}.badge-success{color:#fff;background-color:#62c462}a.badge-success:hover,a.badge-success:focus{color:#fff;background-color:#42b142}a.badge-success:focus,a.badge-success.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(98,196,98,0.5);box-shadow:0 0 0 0.2rem rgba(98,196,98,0.5)}.badge-info{color:#fff;background-color:#5bc0de}a.badge-info:hover,a.badge-info:focus{color:#fff;background-color:#31b0d5}a.badge-info:focus,a.badge-info.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(91,192,222,0.5);box-shadow:0 0 0 0.2rem rgba(91,192,222,0.5)}.badge-warning{color:#fff;background-color:#f89406}a.badge-warning:hover,a.badge-warning:focus{color:#fff;background-color:#c67605}a.badge-warning:focus,a.badge-warning.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(248,148,6,0.5);box-shadow:0 0 0 0.2rem rgba(248,148,6,0.5)}.badge-danger{color:#fff;background-color:#ee5f5b}a.badge-danger:hover,a.badge-danger:focus{color:#fff;background-color:#e9322d}a.badge-danger:focus,a.badge-danger.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(238,95,91,0.5);box-shadow:0 0 0 0.2rem rgba(238,95,91,0.5)}.badge-light{color:#272B30;background-color:#e9ecef}a.badge-light:hover,a.badge-light:focus{color:#272B30;background-color:#cbd3da}a.badge-light:focus,a.badge-light.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5);box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5)}.badge-dark{color:#fff;background-color:#272B30}a.badge-dark:hover,a.badge-dark:focus{color:#fff;background-color:#101214}a.badge-dark:focus,a.badge-dark.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(39,43,48,0.5);box-shadow:0 0 0 0.2rem rgba(39,43,48,0.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#1c1e22;border-radius:0.3rem}@media (min-width: 576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:0.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:0.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3.90625rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:0.75rem 1.25rem;color:inherit}.alert-primary{color:#1e2123;background-color:#d8d9da;border-color:#c8c9cb}.alert-primary hr{border-top-color:#bbbcbf}.alert-primary .alert-link{color:#060708}.alert-secondary{color:#3f4447;background-color:#e4e6e7;border-color:#dadcde}.alert-secondary hr{border-top-color:#cdcfd2}.alert-secondary .alert-link{color:#272a2c}.alert-success{color:#336633;background-color:#e0f3e0;border-color:#d3eed3}.alert-success hr{border-top-color:#c1e7c1}.alert-success .alert-link{color:#224422}.alert-info{color:#2f6473;background-color:#def2f8;border-color:#d1edf6}.alert-info hr{border-top-color:#bce5f2}.alert-info .alert-link{color:#20454f}.alert-warning{color:#814d03;background-color:#feeacd;border-color:#fde1b9}.alert-warning hr{border-top-color:#fcd6a0}.alert-warning .alert-link{color:#4f2f02}.alert-danger{color:#7c312f;background-color:#fcdfde;border-color:#fad2d1}.alert-danger hr{border-top-color:#f8bcba}.alert-danger .alert-link{color:#572221}.alert-light{color:#797b7c;background-color:#fbfbfc;border-color:#f9fafb}.alert-light hr{border-top-color:#eaedf1}.alert-light .alert-link{color:#606162}.alert-dark{color:#141619;background-color:#d4d5d6;border-color:#c3c4c5}.alert-dark hr{border-top-color:#b6b7b8}.alert-dark .alert-link{color:black}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-webkit-box;display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:0.703125rem;background-color:#1c1e22;border-radius:0.25rem}.progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;color:#7A8288;text-align:center;white-space:nowrap;background-color:#3A3F44;-webkit-transition:width 0.6s ease;transition:width 0.6s ease}@media (prefers-reduced-motion: reduce){.progress-bar{-webkit-transition:none;transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion: reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.media-body{-webkit-box-flex:1;-ms-flex:1;flex:1}.list-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#fff;text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:#fff;text-decoration:none;background-color:#3e444c}.list-group-item-action:active{color:#aaa;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:0.75rem 1.25rem;background-color:#32383e;border:1px solid rgba(0,0,0,0.6)}.list-group-item:first-child{border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.list-group-item:last-child{border-bottom-right-radius:0.25rem;border-bottom-left-radius:0.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#52575C;pointer-events:none;background-color:#32383e}.list-group-item.active{z-index:2;color:#fff;background-color:#3e444c;border-color:rgba(0,0,0,0.6)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:0.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width: 576px){.list-group-horizontal-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:0.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width: 768px){.list-group-horizontal-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:0.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width: 992px){.list-group-horizontal-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:0.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width: 1200px){.list-group-horizontal-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:0.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#1e2123;background-color:#c8c9cb}.list-group-item-primary.list-group-item-action:hover,.list-group-item-primary.list-group-item-action:focus{color:#1e2123;background-color:#bbbcbf}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#1e2123;border-color:#1e2123}.list-group-item-secondary{color:#3f4447;background-color:#dadcde}.list-group-item-secondary.list-group-item-action:hover,.list-group-item-secondary.list-group-item-action:focus{color:#3f4447;background-color:#cdcfd2}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#3f4447;border-color:#3f4447}.list-group-item-success{color:#336633;background-color:#d3eed3}.list-group-item-success.list-group-item-action:hover,.list-group-item-success.list-group-item-action:focus{color:#336633;background-color:#c1e7c1}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#336633;border-color:#336633}.list-group-item-info{color:#2f6473;background-color:#d1edf6}.list-group-item-info.list-group-item-action:hover,.list-group-item-info.list-group-item-action:focus{color:#2f6473;background-color:#bce5f2}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#2f6473;border-color:#2f6473}.list-group-item-warning{color:#814d03;background-color:#fde1b9}.list-group-item-warning.list-group-item-action:hover,.list-group-item-warning.list-group-item-action:focus{color:#814d03;background-color:#fcd6a0}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#814d03;border-color:#814d03}.list-group-item-danger{color:#7c312f;background-color:#fad2d1}.list-group-item-danger.list-group-item-action:hover,.list-group-item-danger.list-group-item-action:focus{color:#7c312f;background-color:#f8bcba}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#7c312f;border-color:#7c312f}.list-group-item-light{color:#797b7c;background-color:#f9fafb}.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus{color:#797b7c;background-color:#eaedf1}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#797b7c;border-color:#797b7c}.list-group-item-dark{color:#141619;background-color:#c3c4c5}.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus{color:#141619;background-color:#b6b7b8}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#141619;border-color:#141619}.close{float:right;font-size:1.40625rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):hover,.close:not(:disabled):not(.disabled):focus{opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:0.875rem;background-color:rgba(255,255,255,0.85);background-clip:padding-box;border:1px solid rgba(0,0,0,0.1);-webkit-box-shadow:0 0.25rem 0.75rem rgba(0,0,0,0.1);box-shadow:0 0.25rem 0.75rem rgba(0,0,0,0.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:0.25rem}.toast:not(:last-child){margin-bottom:0.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0.25rem 0.75rem;color:#7A8288;background-color:rgba(255,255,255,0.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,0.05)}.toast-body{padding:0.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:0.5rem;pointer-events:none}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform 0.3s ease-out;transition:-webkit-transform 0.3s ease-out;transition:transform 0.3s ease-out;transition:transform 0.3s ease-out, -webkit-transform 0.3s ease-out;-webkit-transform:translate(0, -50px);transform:translate(0, -50px)}@media (prefers-reduced-motion: reduce){.modal.fade .modal-dialog{-webkit-transition:none;transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);transform:scale(1.02)}.modal-dialog-scrollable{display:-webkit-box;display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-header,.modal-dialog-scrollable .modal-footer{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#32383e;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:0.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:0.5}.modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid rgba(0,0,0,0.2);border-top-left-radius:calc(0.3rem - 1px);border-top-right-radius:calc(0.3rem - 1px)}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:0.75rem;border-top:1px solid rgba(0,0,0,0.2);border-bottom-right-radius:calc(0.3rem - 1px);border-bottom-left-radius:calc(0.3rem - 1px)}.modal-footer>*{margin:0.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width: 992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width: 1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.8203125rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:0.9}.tooltip .arrow{position:absolute;display:block;width:0.8rem;height:0.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[x-placement^="top"]{padding:0.4rem 0}.bs-tooltip-top .arrow,.bs-tooltip-auto[x-placement^="top"] .arrow{bottom:0}.bs-tooltip-top .arrow::before,.bs-tooltip-auto[x-placement^="top"] .arrow::before{top:0;border-width:0.4rem 0.4rem 0;border-top-color:#000}.bs-tooltip-right,.bs-tooltip-auto[x-placement^="right"]{padding:0 0.4rem}.bs-tooltip-right .arrow,.bs-tooltip-auto[x-placement^="right"] .arrow{left:0;width:0.4rem;height:0.8rem}.bs-tooltip-right .arrow::before,.bs-tooltip-auto[x-placement^="right"] .arrow::before{right:0;border-width:0.4rem 0.4rem 0.4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[x-placement^="bottom"]{padding:0.4rem 0}.bs-tooltip-bottom .arrow,.bs-tooltip-auto[x-placement^="bottom"] .arrow{top:0}.bs-tooltip-bottom .arrow::before,.bs-tooltip-auto[x-placement^="bottom"] .arrow::before{bottom:0;border-width:0 0.4rem 0.4rem;border-bottom-color:#000}.bs-tooltip-left,.bs-tooltip-auto[x-placement^="left"]{padding:0 0.4rem}.bs-tooltip-left .arrow,.bs-tooltip-auto[x-placement^="left"] .arrow{right:0;width:0.4rem;height:0.8rem}.bs-tooltip-left .arrow::before,.bs-tooltip-auto[x-placement^="left"] .arrow::before{left:0;border-width:0.4rem 0 0.4rem 0.4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:0.25rem 0.5rem;color:#fff;text-align:center;background-color:#000;border-radius:0.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.8203125rem;word-wrap:break-word;background-color:#32383e;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:0.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:0.5rem;margin:0 0.3rem}.popover .arrow::before,.popover .arrow::after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-top,.bs-popover-auto[x-placement^="top"]{margin-bottom:0.5rem}.bs-popover-top>.arrow,.bs-popover-auto[x-placement^="top"]>.arrow{bottom:calc(-0.5rem - 1px)}.bs-popover-top>.arrow::before,.bs-popover-auto[x-placement^="top"]>.arrow::before{bottom:0;border-width:0.5rem 0.5rem 0;border-top-color:rgba(0,0,0,0.25)}.bs-popover-top>.arrow::after,.bs-popover-auto[x-placement^="top"]>.arrow::after{bottom:1px;border-width:0.5rem 0.5rem 0;border-top-color:#32383e}.bs-popover-right,.bs-popover-auto[x-placement^="right"]{margin-left:0.5rem}.bs-popover-right>.arrow,.bs-popover-auto[x-placement^="right"]>.arrow{left:calc(-0.5rem - 1px);width:0.5rem;height:1rem;margin:0.3rem 0}.bs-popover-right>.arrow::before,.bs-popover-auto[x-placement^="right"]>.arrow::before{left:0;border-width:0.5rem 0.5rem 0.5rem 0;border-right-color:rgba(0,0,0,0.25)}.bs-popover-right>.arrow::after,.bs-popover-auto[x-placement^="right"]>.arrow::after{left:1px;border-width:0.5rem 0.5rem 0.5rem 0;border-right-color:#32383e}.bs-popover-bottom,.bs-popover-auto[x-placement^="bottom"]{margin-top:0.5rem}.bs-popover-bottom>.arrow,.bs-popover-auto[x-placement^="bottom"]>.arrow{top:calc(-0.5rem - 1px)}.bs-popover-bottom>.arrow::before,.bs-popover-auto[x-placement^="bottom"]>.arrow::before{top:0;border-width:0 0.5rem 0.5rem 0.5rem;border-bottom-color:rgba(0,0,0,0.25)}.bs-popover-bottom>.arrow::after,.bs-popover-auto[x-placement^="bottom"]>.arrow::after{top:1px;border-width:0 0.5rem 0.5rem 0.5rem;border-bottom-color:#32383e}.bs-popover-bottom .popover-header::before,.bs-popover-auto[x-placement^="bottom"] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-0.5rem;content:"";border-bottom:1px solid #2c3036}.bs-popover-left,.bs-popover-auto[x-placement^="left"]{margin-right:0.5rem}.bs-popover-left>.arrow,.bs-popover-auto[x-placement^="left"]>.arrow{right:calc(-0.5rem - 1px);width:0.5rem;height:1rem;margin:0.3rem 0}.bs-popover-left>.arrow::before,.bs-popover-auto[x-placement^="left"]>.arrow::before{right:0;border-width:0.5rem 0 0.5rem 0.5rem;border-left-color:rgba(0,0,0,0.25)}.bs-popover-left>.arrow::after,.bs-popover-auto[x-placement^="left"]>.arrow::after{right:1px;border-width:0.5rem 0 0.5rem 0.5rem;border-left-color:#32383e}.popover-header{padding:0.5rem 0.75rem;margin-bottom:0;font-size:0.9375rem;background-color:#2c3036;border-bottom:1px solid #202328;border-top-left-radius:calc(0.3rem - 1px);border-top-right-radius:calc(0.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:0.5rem 0.75rem;color:#aaa}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:-webkit-transform 0.6s ease-in-out;transition:-webkit-transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out}@media (prefers-reduced-motion: reduce){.carousel-item{-webkit-transition:none;transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-left),.active.carousel-item-right{-webkit-transform:translateX(100%);transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-right),.active.carousel-item-left{-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;-webkit-transition:opacity 0s 0.6s;transition:opacity 0s 0.6s}@media (prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{-webkit-transition:none;transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:0.5;-webkit-transition:opacity 0.15s ease;transition:opacity 0.15s ease}@media (prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{-webkit-transition:none;transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:0.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50% / 100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{-webkit-box-sizing:content-box;box-sizing:content-box;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;-webkit-transition:opacity 0.6s ease;transition:opacity 0.6s ease}@media (prefers-reduced-motion: reduce){.carousel-indicators li{-webkit-transition:none;transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:0.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:0.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.bg-primary{background-color:#3A3F44 !important}a.bg-primary:hover,a.bg-primary:focus,button.bg-primary:hover,button.bg-primary:focus{background-color:#232628 !important}.bg-secondary{background-color:#7A8288 !important}a.bg-secondary:hover,a.bg-secondary:focus,button.bg-secondary:hover,button.bg-secondary:focus{background-color:#62686d !important}.bg-success{background-color:#62c462 !important}a.bg-success:hover,a.bg-success:focus,button.bg-success:hover,button.bg-success:focus{background-color:#42b142 !important}.bg-info{background-color:#5bc0de !important}a.bg-info:hover,a.bg-info:focus,button.bg-info:hover,button.bg-info:focus{background-color:#31b0d5 !important}.bg-warning{background-color:#f89406 !important}a.bg-warning:hover,a.bg-warning:focus,button.bg-warning:hover,button.bg-warning:focus{background-color:#c67605 !important}.bg-danger{background-color:#ee5f5b !important}a.bg-danger:hover,a.bg-danger:focus,button.bg-danger:hover,button.bg-danger:focus{background-color:#e9322d !important}.bg-light{background-color:#e9ecef !important}a.bg-light:hover,a.bg-light:focus,button.bg-light:hover,button.bg-light:focus{background-color:#cbd3da !important}.bg-dark{background-color:#272B30 !important}a.bg-dark:hover,a.bg-dark:focus,button.bg-dark:hover,button.bg-dark:focus{background-color:#101214 !important}.bg-white{background-color:#fff !important}.bg-transparent{background-color:transparent !important}.border{border:1px solid #dee2e6 !important}.border-top{border-top:1px solid #dee2e6 !important}.border-right{border-right:1px solid #dee2e6 !important}.border-bottom{border-bottom:1px solid #dee2e6 !important}.border-left{border-left:1px solid #dee2e6 !important}.border-0{border:0 !important}.border-top-0{border-top:0 !important}.border-right-0{border-right:0 !important}.border-bottom-0{border-bottom:0 !important}.border-left-0{border-left:0 !important}.border-primary{border-color:#3A3F44 !important}.border-secondary{border-color:#7A8288 !important}.border-success{border-color:#62c462 !important}.border-info{border-color:#5bc0de !important}.border-warning{border-color:#f89406 !important}.border-danger{border-color:#ee5f5b !important}.border-light{border-color:#e9ecef !important}.border-dark{border-color:#272B30 !important}.border-white{border-color:#fff !important}.rounded-sm{border-radius:0.2rem !important}.rounded{border-radius:0.25rem !important}.rounded-top{border-top-left-radius:0.25rem !important;border-top-right-radius:0.25rem !important}.rounded-right{border-top-right-radius:0.25rem !important;border-bottom-right-radius:0.25rem !important}.rounded-bottom{border-bottom-right-radius:0.25rem !important;border-bottom-left-radius:0.25rem !important}.rounded-left{border-top-left-radius:0.25rem !important;border-bottom-left-radius:0.25rem !important}.rounded-lg{border-radius:0.3rem !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:50rem !important}.rounded-0{border-radius:0 !important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}@media (min-width: 576px){.d-sm-none{display:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-sm-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 768px){.d-md-none{display:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-md-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 992px){.d-lg-none{display:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-lg-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 1200px){.d-xl-none{display:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-xl-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media print{.d-print-none{display:none !important}.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-print-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.8571428571%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}@media (min-width: 576px){.flex-sm-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-sm-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-sm-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-sm-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-sm-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-sm-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-sm-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-sm-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-sm-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-sm-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-sm-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-sm-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-sm-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-sm-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-sm-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-sm-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-sm-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-sm-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-sm-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-sm-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-sm-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-sm-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-sm-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-sm-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-sm-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-sm-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-sm-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-sm-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-sm-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-sm-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-sm-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-sm-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-sm-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}@media (min-width: 768px){.flex-md-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-md-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-md-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-md-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-md-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-md-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-md-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-md-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-md-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-md-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-md-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-md-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-md-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-md-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-md-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-md-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-md-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-md-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-md-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-md-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-md-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-md-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-md-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-md-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-md-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-md-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-md-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-md-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-md-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-md-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-md-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-md-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-md-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}@media (min-width: 992px){.flex-lg-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-lg-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-lg-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-lg-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-lg-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-lg-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-lg-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-lg-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-lg-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-lg-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-lg-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-lg-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-lg-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-lg-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-lg-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-lg-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-lg-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-lg-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-lg-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-lg-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-lg-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-lg-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-lg-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-lg-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-lg-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-lg-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-lg-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-lg-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-lg-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-lg-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-lg-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-lg-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-lg-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}@media (min-width: 1200px){.flex-xl-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-xl-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-xl-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-xl-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-xl-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-xl-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-xl-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-xl-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-xl-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-xl-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-xl-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-xl-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-xl-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-xl-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-xl-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-xl-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-xl-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-xl-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-xl-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-xl-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-xl-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-xl-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-xl-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-xl-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-xl-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-xl-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-xl-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-xl-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-xl-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-xl-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-xl-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-xl-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-xl-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}.float-left{float:left !important}.float-right{float:right !important}.float-none{float:none !important}@media (min-width: 576px){.float-sm-left{float:left !important}.float-sm-right{float:right !important}.float-sm-none{float:none !important}}@media (min-width: 768px){.float-md-left{float:left !important}.float-md-right{float:right !important}.float-md-none{float:none !important}}@media (min-width: 992px){.float-lg-left{float:left !important}.float-lg-right{float:right !important}.float-lg-none{float:none !important}}@media (min-width: 1200px){.float-xl-left{float:left !important}.float-xl-right{float:right !important}.float-xl-none{float:none !important}}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:-webkit-sticky !important;position:sticky !important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports (position: -webkit-sticky) or (position: sticky){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{-webkit-box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important}.shadow{-webkit-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important;box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important}.shadow-lg{-webkit-box-shadow:0 1rem 3rem rgba(0,0,0,0.175) !important;box-shadow:0 1rem 3rem rgba(0,0,0,0.175) !important}.shadow-none{-webkit-box-shadow:none !important;box-shadow:none !important}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mw-100{max-width:100% !important}.mh-100{max-height:100% !important}.min-vw-100{min-width:100vw !important}.min-vh-100{min-height:100vh !important}.vw-100{width:100vw !important}.vh-100{height:100vh !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.m-0{margin:0 !important}.mt-0,.my-0{margin-top:0 !important}.mr-0,.mx-0{margin-right:0 !important}.mb-0,.my-0{margin-bottom:0 !important}.ml-0,.mx-0{margin-left:0 !important}.m-1{margin:0.25rem !important}.mt-1,.my-1{margin-top:0.25rem !important}.mr-1,.mx-1{margin-right:0.25rem !important}.mb-1,.my-1{margin-bottom:0.25rem !important}.ml-1,.mx-1{margin-left:0.25rem !important}.m-2{margin:0.5rem !important}.mt-2,.my-2{margin-top:0.5rem !important}.mr-2,.mx-2{margin-right:0.5rem !important}.mb-2,.my-2{margin-bottom:0.5rem !important}.ml-2,.mx-2{margin-left:0.5rem !important}.m-3{margin:1rem !important}.mt-3,.my-3{margin-top:1rem !important}.mr-3,.mx-3{margin-right:1rem !important}.mb-3,.my-3{margin-bottom:1rem !important}.ml-3,.mx-3{margin-left:1rem !important}.m-4{margin:1.5rem !important}.mt-4,.my-4{margin-top:1.5rem !important}.mr-4,.mx-4{margin-right:1.5rem !important}.mb-4,.my-4{margin-bottom:1.5rem !important}.ml-4,.mx-4{margin-left:1.5rem !important}.m-5{margin:3rem !important}.mt-5,.my-5{margin-top:3rem !important}.mr-5,.mx-5{margin-right:3rem !important}.mb-5,.my-5{margin-bottom:3rem !important}.ml-5,.mx-5{margin-left:3rem !important}.p-0{padding:0 !important}.pt-0,.py-0{padding-top:0 !important}.pr-0,.px-0{padding-right:0 !important}.pb-0,.py-0{padding-bottom:0 !important}.pl-0,.px-0{padding-left:0 !important}.p-1{padding:0.25rem !important}.pt-1,.py-1{padding-top:0.25rem !important}.pr-1,.px-1{padding-right:0.25rem !important}.pb-1,.py-1{padding-bottom:0.25rem !important}.pl-1,.px-1{padding-left:0.25rem !important}.p-2{padding:0.5rem !important}.pt-2,.py-2{padding-top:0.5rem !important}.pr-2,.px-2{padding-right:0.5rem !important}.pb-2,.py-2{padding-bottom:0.5rem !important}.pl-2,.px-2{padding-left:0.5rem !important}.p-3{padding:1rem !important}.pt-3,.py-3{padding-top:1rem !important}.pr-3,.px-3{padding-right:1rem !important}.pb-3,.py-3{padding-bottom:1rem !important}.pl-3,.px-3{padding-left:1rem !important}.p-4{padding:1.5rem !important}.pt-4,.py-4{padding-top:1.5rem !important}.pr-4,.px-4{padding-right:1.5rem !important}.pb-4,.py-4{padding-bottom:1.5rem !important}.pl-4,.px-4{padding-left:1.5rem !important}.p-5{padding:3rem !important}.pt-5,.py-5{padding-top:3rem !important}.pr-5,.px-5{padding-right:3rem !important}.pb-5,.py-5{padding-bottom:3rem !important}.pl-5,.px-5{padding-left:3rem !important}.m-n1{margin:-0.25rem !important}.mt-n1,.my-n1{margin-top:-0.25rem !important}.mr-n1,.mx-n1{margin-right:-0.25rem !important}.mb-n1,.my-n1{margin-bottom:-0.25rem !important}.ml-n1,.mx-n1{margin-left:-0.25rem !important}.m-n2{margin:-0.5rem !important}.mt-n2,.my-n2{margin-top:-0.5rem !important}.mr-n2,.mx-n2{margin-right:-0.5rem !important}.mb-n2,.my-n2{margin-bottom:-0.5rem !important}.ml-n2,.mx-n2{margin-left:-0.5rem !important}.m-n3{margin:-1rem !important}.mt-n3,.my-n3{margin-top:-1rem !important}.mr-n3,.mx-n3{margin-right:-1rem !important}.mb-n3,.my-n3{margin-bottom:-1rem !important}.ml-n3,.mx-n3{margin-left:-1rem !important}.m-n4{margin:-1.5rem !important}.mt-n4,.my-n4{margin-top:-1.5rem !important}.mr-n4,.mx-n4{margin-right:-1.5rem !important}.mb-n4,.my-n4{margin-bottom:-1.5rem !important}.ml-n4,.mx-n4{margin-left:-1.5rem !important}.m-n5{margin:-3rem !important}.mt-n5,.my-n5{margin-top:-3rem !important}.mr-n5,.mx-n5{margin-right:-3rem !important}.mb-n5,.my-n5{margin-bottom:-3rem !important}.ml-n5,.mx-n5{margin-left:-3rem !important}.m-auto{margin:auto !important}.mt-auto,.my-auto{margin-top:auto !important}.mr-auto,.mx-auto{margin-right:auto !important}.mb-auto,.my-auto{margin-bottom:auto !important}.ml-auto,.mx-auto{margin-left:auto !important}@media (min-width: 576px){.m-sm-0{margin:0 !important}.mt-sm-0,.my-sm-0{margin-top:0 !important}.mr-sm-0,.mx-sm-0{margin-right:0 !important}.mb-sm-0,.my-sm-0{margin-bottom:0 !important}.ml-sm-0,.mx-sm-0{margin-left:0 !important}.m-sm-1{margin:0.25rem !important}.mt-sm-1,.my-sm-1{margin-top:0.25rem !important}.mr-sm-1,.mx-sm-1{margin-right:0.25rem !important}.mb-sm-1,.my-sm-1{margin-bottom:0.25rem !important}.ml-sm-1,.mx-sm-1{margin-left:0.25rem !important}.m-sm-2{margin:0.5rem !important}.mt-sm-2,.my-sm-2{margin-top:0.5rem !important}.mr-sm-2,.mx-sm-2{margin-right:0.5rem !important}.mb-sm-2,.my-sm-2{margin-bottom:0.5rem !important}.ml-sm-2,.mx-sm-2{margin-left:0.5rem !important}.m-sm-3{margin:1rem !important}.mt-sm-3,.my-sm-3{margin-top:1rem !important}.mr-sm-3,.mx-sm-3{margin-right:1rem !important}.mb-sm-3,.my-sm-3{margin-bottom:1rem !important}.ml-sm-3,.mx-sm-3{margin-left:1rem !important}.m-sm-4{margin:1.5rem !important}.mt-sm-4,.my-sm-4{margin-top:1.5rem !important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem !important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem !important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem !important}.m-sm-5{margin:3rem !important}.mt-sm-5,.my-sm-5{margin-top:3rem !important}.mr-sm-5,.mx-sm-5{margin-right:3rem !important}.mb-sm-5,.my-sm-5{margin-bottom:3rem !important}.ml-sm-5,.mx-sm-5{margin-left:3rem !important}.p-sm-0{padding:0 !important}.pt-sm-0,.py-sm-0{padding-top:0 !important}.pr-sm-0,.px-sm-0{padding-right:0 !important}.pb-sm-0,.py-sm-0{padding-bottom:0 !important}.pl-sm-0,.px-sm-0{padding-left:0 !important}.p-sm-1{padding:0.25rem !important}.pt-sm-1,.py-sm-1{padding-top:0.25rem !important}.pr-sm-1,.px-sm-1{padding-right:0.25rem !important}.pb-sm-1,.py-sm-1{padding-bottom:0.25rem !important}.pl-sm-1,.px-sm-1{padding-left:0.25rem !important}.p-sm-2{padding:0.5rem !important}.pt-sm-2,.py-sm-2{padding-top:0.5rem !important}.pr-sm-2,.px-sm-2{padding-right:0.5rem !important}.pb-sm-2,.py-sm-2{padding-bottom:0.5rem !important}.pl-sm-2,.px-sm-2{padding-left:0.5rem !important}.p-sm-3{padding:1rem !important}.pt-sm-3,.py-sm-3{padding-top:1rem !important}.pr-sm-3,.px-sm-3{padding-right:1rem !important}.pb-sm-3,.py-sm-3{padding-bottom:1rem !important}.pl-sm-3,.px-sm-3{padding-left:1rem !important}.p-sm-4{padding:1.5rem !important}.pt-sm-4,.py-sm-4{padding-top:1.5rem !important}.pr-sm-4,.px-sm-4{padding-right:1.5rem !important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem !important}.pl-sm-4,.px-sm-4{padding-left:1.5rem !important}.p-sm-5{padding:3rem !important}.pt-sm-5,.py-sm-5{padding-top:3rem !important}.pr-sm-5,.px-sm-5{padding-right:3rem !important}.pb-sm-5,.py-sm-5{padding-bottom:3rem !important}.pl-sm-5,.px-sm-5{padding-left:3rem !important}.m-sm-n1{margin:-0.25rem !important}.mt-sm-n1,.my-sm-n1{margin-top:-0.25rem !important}.mr-sm-n1,.mx-sm-n1{margin-right:-0.25rem !important}.mb-sm-n1,.my-sm-n1{margin-bottom:-0.25rem !important}.ml-sm-n1,.mx-sm-n1{margin-left:-0.25rem !important}.m-sm-n2{margin:-0.5rem !important}.mt-sm-n2,.my-sm-n2{margin-top:-0.5rem !important}.mr-sm-n2,.mx-sm-n2{margin-right:-0.5rem !important}.mb-sm-n2,.my-sm-n2{margin-bottom:-0.5rem !important}.ml-sm-n2,.mx-sm-n2{margin-left:-0.5rem !important}.m-sm-n3{margin:-1rem !important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem !important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem !important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem !important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem !important}.m-sm-n4{margin:-1.5rem !important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem !important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem !important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem !important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem !important}.m-sm-n5{margin:-3rem !important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem !important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem !important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem !important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem !important}.m-sm-auto{margin:auto !important}.mt-sm-auto,.my-sm-auto{margin-top:auto !important}.mr-sm-auto,.mx-sm-auto{margin-right:auto !important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto !important}.ml-sm-auto,.mx-sm-auto{margin-left:auto !important}}@media (min-width: 768px){.m-md-0{margin:0 !important}.mt-md-0,.my-md-0{margin-top:0 !important}.mr-md-0,.mx-md-0{margin-right:0 !important}.mb-md-0,.my-md-0{margin-bottom:0 !important}.ml-md-0,.mx-md-0{margin-left:0 !important}.m-md-1{margin:0.25rem !important}.mt-md-1,.my-md-1{margin-top:0.25rem !important}.mr-md-1,.mx-md-1{margin-right:0.25rem !important}.mb-md-1,.my-md-1{margin-bottom:0.25rem !important}.ml-md-1,.mx-md-1{margin-left:0.25rem !important}.m-md-2{margin:0.5rem !important}.mt-md-2,.my-md-2{margin-top:0.5rem !important}.mr-md-2,.mx-md-2{margin-right:0.5rem !important}.mb-md-2,.my-md-2{margin-bottom:0.5rem !important}.ml-md-2,.mx-md-2{margin-left:0.5rem !important}.m-md-3{margin:1rem !important}.mt-md-3,.my-md-3{margin-top:1rem !important}.mr-md-3,.mx-md-3{margin-right:1rem !important}.mb-md-3,.my-md-3{margin-bottom:1rem !important}.ml-md-3,.mx-md-3{margin-left:1rem !important}.m-md-4{margin:1.5rem !important}.mt-md-4,.my-md-4{margin-top:1.5rem !important}.mr-md-4,.mx-md-4{margin-right:1.5rem !important}.mb-md-4,.my-md-4{margin-bottom:1.5rem !important}.ml-md-4,.mx-md-4{margin-left:1.5rem !important}.m-md-5{margin:3rem !important}.mt-md-5,.my-md-5{margin-top:3rem !important}.mr-md-5,.mx-md-5{margin-right:3rem !important}.mb-md-5,.my-md-5{margin-bottom:3rem !important}.ml-md-5,.mx-md-5{margin-left:3rem !important}.p-md-0{padding:0 !important}.pt-md-0,.py-md-0{padding-top:0 !important}.pr-md-0,.px-md-0{padding-right:0 !important}.pb-md-0,.py-md-0{padding-bottom:0 !important}.pl-md-0,.px-md-0{padding-left:0 !important}.p-md-1{padding:0.25rem !important}.pt-md-1,.py-md-1{padding-top:0.25rem !important}.pr-md-1,.px-md-1{padding-right:0.25rem !important}.pb-md-1,.py-md-1{padding-bottom:0.25rem !important}.pl-md-1,.px-md-1{padding-left:0.25rem !important}.p-md-2{padding:0.5rem !important}.pt-md-2,.py-md-2{padding-top:0.5rem !important}.pr-md-2,.px-md-2{padding-right:0.5rem !important}.pb-md-2,.py-md-2{padding-bottom:0.5rem !important}.pl-md-2,.px-md-2{padding-left:0.5rem !important}.p-md-3{padding:1rem !important}.pt-md-3,.py-md-3{padding-top:1rem !important}.pr-md-3,.px-md-3{padding-right:1rem !important}.pb-md-3,.py-md-3{padding-bottom:1rem !important}.pl-md-3,.px-md-3{padding-left:1rem !important}.p-md-4{padding:1.5rem !important}.pt-md-4,.py-md-4{padding-top:1.5rem !important}.pr-md-4,.px-md-4{padding-right:1.5rem !important}.pb-md-4,.py-md-4{padding-bottom:1.5rem !important}.pl-md-4,.px-md-4{padding-left:1.5rem !important}.p-md-5{padding:3rem !important}.pt-md-5,.py-md-5{padding-top:3rem !important}.pr-md-5,.px-md-5{padding-right:3rem !important}.pb-md-5,.py-md-5{padding-bottom:3rem !important}.pl-md-5,.px-md-5{padding-left:3rem !important}.m-md-n1{margin:-0.25rem !important}.mt-md-n1,.my-md-n1{margin-top:-0.25rem !important}.mr-md-n1,.mx-md-n1{margin-right:-0.25rem !important}.mb-md-n1,.my-md-n1{margin-bottom:-0.25rem !important}.ml-md-n1,.mx-md-n1{margin-left:-0.25rem !important}.m-md-n2{margin:-0.5rem !important}.mt-md-n2,.my-md-n2{margin-top:-0.5rem !important}.mr-md-n2,.mx-md-n2{margin-right:-0.5rem !important}.mb-md-n2,.my-md-n2{margin-bottom:-0.5rem !important}.ml-md-n2,.mx-md-n2{margin-left:-0.5rem !important}.m-md-n3{margin:-1rem !important}.mt-md-n3,.my-md-n3{margin-top:-1rem !important}.mr-md-n3,.mx-md-n3{margin-right:-1rem !important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem !important}.ml-md-n3,.mx-md-n3{margin-left:-1rem !important}.m-md-n4{margin:-1.5rem !important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem !important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem !important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem !important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem !important}.m-md-n5{margin:-3rem !important}.mt-md-n5,.my-md-n5{margin-top:-3rem !important}.mr-md-n5,.mx-md-n5{margin-right:-3rem !important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem !important}.ml-md-n5,.mx-md-n5{margin-left:-3rem !important}.m-md-auto{margin:auto !important}.mt-md-auto,.my-md-auto{margin-top:auto !important}.mr-md-auto,.mx-md-auto{margin-right:auto !important}.mb-md-auto,.my-md-auto{margin-bottom:auto !important}.ml-md-auto,.mx-md-auto{margin-left:auto !important}}@media (min-width: 992px){.m-lg-0{margin:0 !important}.mt-lg-0,.my-lg-0{margin-top:0 !important}.mr-lg-0,.mx-lg-0{margin-right:0 !important}.mb-lg-0,.my-lg-0{margin-bottom:0 !important}.ml-lg-0,.mx-lg-0{margin-left:0 !important}.m-lg-1{margin:0.25rem !important}.mt-lg-1,.my-lg-1{margin-top:0.25rem !important}.mr-lg-1,.mx-lg-1{margin-right:0.25rem !important}.mb-lg-1,.my-lg-1{margin-bottom:0.25rem !important}.ml-lg-1,.mx-lg-1{margin-left:0.25rem !important}.m-lg-2{margin:0.5rem !important}.mt-lg-2,.my-lg-2{margin-top:0.5rem !important}.mr-lg-2,.mx-lg-2{margin-right:0.5rem !important}.mb-lg-2,.my-lg-2{margin-bottom:0.5rem !important}.ml-lg-2,.mx-lg-2{margin-left:0.5rem !important}.m-lg-3{margin:1rem !important}.mt-lg-3,.my-lg-3{margin-top:1rem !important}.mr-lg-3,.mx-lg-3{margin-right:1rem !important}.mb-lg-3,.my-lg-3{margin-bottom:1rem !important}.ml-lg-3,.mx-lg-3{margin-left:1rem !important}.m-lg-4{margin:1.5rem !important}.mt-lg-4,.my-lg-4{margin-top:1.5rem !important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem !important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem !important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem !important}.m-lg-5{margin:3rem !important}.mt-lg-5,.my-lg-5{margin-top:3rem !important}.mr-lg-5,.mx-lg-5{margin-right:3rem !important}.mb-lg-5,.my-lg-5{margin-bottom:3rem !important}.ml-lg-5,.mx-lg-5{margin-left:3rem !important}.p-lg-0{padding:0 !important}.pt-lg-0,.py-lg-0{padding-top:0 !important}.pr-lg-0,.px-lg-0{padding-right:0 !important}.pb-lg-0,.py-lg-0{padding-bottom:0 !important}.pl-lg-0,.px-lg-0{padding-left:0 !important}.p-lg-1{padding:0.25rem !important}.pt-lg-1,.py-lg-1{padding-top:0.25rem !important}.pr-lg-1,.px-lg-1{padding-right:0.25rem !important}.pb-lg-1,.py-lg-1{padding-bottom:0.25rem !important}.pl-lg-1,.px-lg-1{padding-left:0.25rem !important}.p-lg-2{padding:0.5rem !important}.pt-lg-2,.py-lg-2{padding-top:0.5rem !important}.pr-lg-2,.px-lg-2{padding-right:0.5rem !important}.pb-lg-2,.py-lg-2{padding-bottom:0.5rem !important}.pl-lg-2,.px-lg-2{padding-left:0.5rem !important}.p-lg-3{padding:1rem !important}.pt-lg-3,.py-lg-3{padding-top:1rem !important}.pr-lg-3,.px-lg-3{padding-right:1rem !important}.pb-lg-3,.py-lg-3{padding-bottom:1rem !important}.pl-lg-3,.px-lg-3{padding-left:1rem !important}.p-lg-4{padding:1.5rem !important}.pt-lg-4,.py-lg-4{padding-top:1.5rem !important}.pr-lg-4,.px-lg-4{padding-right:1.5rem !important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem !important}.pl-lg-4,.px-lg-4{padding-left:1.5rem !important}.p-lg-5{padding:3rem !important}.pt-lg-5,.py-lg-5{padding-top:3rem !important}.pr-lg-5,.px-lg-5{padding-right:3rem !important}.pb-lg-5,.py-lg-5{padding-bottom:3rem !important}.pl-lg-5,.px-lg-5{padding-left:3rem !important}.m-lg-n1{margin:-0.25rem !important}.mt-lg-n1,.my-lg-n1{margin-top:-0.25rem !important}.mr-lg-n1,.mx-lg-n1{margin-right:-0.25rem !important}.mb-lg-n1,.my-lg-n1{margin-bottom:-0.25rem !important}.ml-lg-n1,.mx-lg-n1{margin-left:-0.25rem !important}.m-lg-n2{margin:-0.5rem !important}.mt-lg-n2,.my-lg-n2{margin-top:-0.5rem !important}.mr-lg-n2,.mx-lg-n2{margin-right:-0.5rem !important}.mb-lg-n2,.my-lg-n2{margin-bottom:-0.5rem !important}.ml-lg-n2,.mx-lg-n2{margin-left:-0.5rem !important}.m-lg-n3{margin:-1rem !important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem !important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem !important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem !important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem !important}.m-lg-n4{margin:-1.5rem !important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem !important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem !important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem !important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem !important}.m-lg-n5{margin:-3rem !important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem !important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem !important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem !important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem !important}.m-lg-auto{margin:auto !important}.mt-lg-auto,.my-lg-auto{margin-top:auto !important}.mr-lg-auto,.mx-lg-auto{margin-right:auto !important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto !important}.ml-lg-auto,.mx-lg-auto{margin-left:auto !important}}@media (min-width: 1200px){.m-xl-0{margin:0 !important}.mt-xl-0,.my-xl-0{margin-top:0 !important}.mr-xl-0,.mx-xl-0{margin-right:0 !important}.mb-xl-0,.my-xl-0{margin-bottom:0 !important}.ml-xl-0,.mx-xl-0{margin-left:0 !important}.m-xl-1{margin:0.25rem !important}.mt-xl-1,.my-xl-1{margin-top:0.25rem !important}.mr-xl-1,.mx-xl-1{margin-right:0.25rem !important}.mb-xl-1,.my-xl-1{margin-bottom:0.25rem !important}.ml-xl-1,.mx-xl-1{margin-left:0.25rem !important}.m-xl-2{margin:0.5rem !important}.mt-xl-2,.my-xl-2{margin-top:0.5rem !important}.mr-xl-2,.mx-xl-2{margin-right:0.5rem !important}.mb-xl-2,.my-xl-2{margin-bottom:0.5rem !important}.ml-xl-2,.mx-xl-2{margin-left:0.5rem !important}.m-xl-3{margin:1rem !important}.mt-xl-3,.my-xl-3{margin-top:1rem !important}.mr-xl-3,.mx-xl-3{margin-right:1rem !important}.mb-xl-3,.my-xl-3{margin-bottom:1rem !important}.ml-xl-3,.mx-xl-3{margin-left:1rem !important}.m-xl-4{margin:1.5rem !important}.mt-xl-4,.my-xl-4{margin-top:1.5rem !important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem !important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem !important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem !important}.m-xl-5{margin:3rem !important}.mt-xl-5,.my-xl-5{margin-top:3rem !important}.mr-xl-5,.mx-xl-5{margin-right:3rem !important}.mb-xl-5,.my-xl-5{margin-bottom:3rem !important}.ml-xl-5,.mx-xl-5{margin-left:3rem !important}.p-xl-0{padding:0 !important}.pt-xl-0,.py-xl-0{padding-top:0 !important}.pr-xl-0,.px-xl-0{padding-right:0 !important}.pb-xl-0,.py-xl-0{padding-bottom:0 !important}.pl-xl-0,.px-xl-0{padding-left:0 !important}.p-xl-1{padding:0.25rem !important}.pt-xl-1,.py-xl-1{padding-top:0.25rem !important}.pr-xl-1,.px-xl-1{padding-right:0.25rem !important}.pb-xl-1,.py-xl-1{padding-bottom:0.25rem !important}.pl-xl-1,.px-xl-1{padding-left:0.25rem !important}.p-xl-2{padding:0.5rem !important}.pt-xl-2,.py-xl-2{padding-top:0.5rem !important}.pr-xl-2,.px-xl-2{padding-right:0.5rem !important}.pb-xl-2,.py-xl-2{padding-bottom:0.5rem !important}.pl-xl-2,.px-xl-2{padding-left:0.5rem !important}.p-xl-3{padding:1rem !important}.pt-xl-3,.py-xl-3{padding-top:1rem !important}.pr-xl-3,.px-xl-3{padding-right:1rem !important}.pb-xl-3,.py-xl-3{padding-bottom:1rem !important}.pl-xl-3,.px-xl-3{padding-left:1rem !important}.p-xl-4{padding:1.5rem !important}.pt-xl-4,.py-xl-4{padding-top:1.5rem !important}.pr-xl-4,.px-xl-4{padding-right:1.5rem !important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem !important}.pl-xl-4,.px-xl-4{padding-left:1.5rem !important}.p-xl-5{padding:3rem !important}.pt-xl-5,.py-xl-5{padding-top:3rem !important}.pr-xl-5,.px-xl-5{padding-right:3rem !important}.pb-xl-5,.py-xl-5{padding-bottom:3rem !important}.pl-xl-5,.px-xl-5{padding-left:3rem !important}.m-xl-n1{margin:-0.25rem !important}.mt-xl-n1,.my-xl-n1{margin-top:-0.25rem !important}.mr-xl-n1,.mx-xl-n1{margin-right:-0.25rem !important}.mb-xl-n1,.my-xl-n1{margin-bottom:-0.25rem !important}.ml-xl-n1,.mx-xl-n1{margin-left:-0.25rem !important}.m-xl-n2{margin:-0.5rem !important}.mt-xl-n2,.my-xl-n2{margin-top:-0.5rem !important}.mr-xl-n2,.mx-xl-n2{margin-right:-0.5rem !important}.mb-xl-n2,.my-xl-n2{margin-bottom:-0.5rem !important}.ml-xl-n2,.mx-xl-n2{margin-left:-0.5rem !important}.m-xl-n3{margin:-1rem !important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem !important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem !important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem !important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem !important}.m-xl-n4{margin:-1.5rem !important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem !important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem !important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem !important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem !important}.m-xl-n5{margin:-3rem !important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem !important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem !important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem !important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem !important}.m-xl-auto{margin:auto !important}.mt-xl-auto,.my-xl-auto{margin-top:auto !important}.mr-xl-auto,.mx-xl-auto{margin-right:auto !important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto !important}.ml-xl-auto,.mx-xl-auto{margin-left:auto !important}}.text-monospace{font-family:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important}.text-justify{text-align:justify !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left !important}.text-right{text-align:right !important}.text-center{text-align:center !important}@media (min-width: 576px){.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}.text-sm-center{text-align:center !important}}@media (min-width: 768px){.text-md-left{text-align:left !important}.text-md-right{text-align:right !important}.text-md-center{text-align:center !important}}@media (min-width: 992px){.text-lg-left{text-align:left !important}.text-lg-right{text-align:right !important}.text-lg-center{text-align:center !important}}@media (min-width: 1200px){.text-xl-left{text-align:left !important}.text-xl-right{text-align:right !important}.text-xl-center{text-align:center !important}}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.font-weight-light{font-weight:300 !important}.font-weight-lighter{font-weight:lighter !important}.font-weight-normal{font-weight:400 !important}.font-weight-bold{font-weight:700 !important}.font-weight-bolder{font-weight:bolder !important}.font-italic{font-style:italic !important}.text-white{color:#fff !important}.text-primary{color:#3A3F44 !important}a.text-primary:hover,a.text-primary:focus{color:#17191b !important}.text-secondary{color:#7A8288 !important}a.text-secondary:hover,a.text-secondary:focus{color:#565b60 !important}.text-success{color:#62c462 !important}a.text-success:hover,a.text-success:focus{color:#3b9e3b !important}.text-info{color:#5bc0de !important}a.text-info:hover,a.text-info:focus{color:#28a1c5 !important}.text-warning{color:#f89406 !important}a.text-warning:hover,a.text-warning:focus{color:#ad6704 !important}.text-danger{color:#ee5f5b !important}a.text-danger:hover,a.text-danger:focus{color:#e51d18 !important}.text-light{color:#e9ecef !important}a.text-light:hover,a.text-light:focus{color:#bdc6cf !important}.text-dark{color:#272B30 !important}a.text-dark:hover,a.text-dark:focus{color:#050506 !important}.text-body{color:#aaa !important}.text-muted{color:#7A8288 !important}.text-black-50{color:rgba(0,0,0,0.5) !important}.text-white-50{color:rgba(255,255,255,0.5) !important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none !important}.text-break{word-break:break-word !important;overflow-wrap:break-word !important}.text-reset{color:inherit !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media print{*,*::before,*::after{text-shadow:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap !important}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px !important}.container{min-width:992px !important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #dee2e6 !important}.table-dark{color:inherit}.table-dark th,.table-dark td,.table-dark thead th,.table-dark tbody+tbody{border-color:rgba(0,0,0,0.6)}.table .thead-dark th{color:inherit;border-color:rgba(0,0,0,0.6)}}.navbar{border:1px solid rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3)}.navbar .container{padding:0}.navbar .navbar-toggler{border-color:rgba(0,0,0,0.6)}.navbar-fixed-top{border-width:0 0 1px 0}.navbar-fixed-bottom{border-width:1px 0 0 0}.navbar .nav-link{padding:1rem;border-left:1px solid rgba(255,255,255,0.1);border-right:1px solid rgba(0,0,0,0.2)}.navbar .nav-link:hover,.navbar .nav-link:focus{background-image:-webkit-gradient(linear, left top, left bottom, from(#101112), color-stop(40%, #17191b), to(#1b1e20));background-image:linear-gradient(#101112, #17191b 40%, #1b1e20);background-repeat:no-repeat;-webkit-filter:none;filter:none;border-left:1px solid rgba(0,0,0,0.2)}.navbar-brand{padding:0.75rem 1rem calc(54px - 0.75rem - 30px);margin-right:0;border-right:1px solid rgba(0,0,0,0.2)}.navbar .nav-item.active .nav-link{background-color:rgba(0,0,0,0.3);border-left:1px solid rgba(0,0,0,0.2)}.navbar-nav .nav-item+.nav-item{margin-left:0}.navbar.bg-light{text-shadow:1px 1px 1px rgba(0,0,0,0.1)}.navbar.bg-light .nav-link:hover,.navbar.bg-light .nav-link:focus{background-image:-webkit-gradient(linear, left top, left bottom, from(#4e5458), color-stop(40%, #565b60), to(#5b6165));background-image:linear-gradient(#4e5458, #565b60 40%, #5b6165);background-repeat:no-repeat;-webkit-filter:none;filter:none;border-left:1px solid rgba(0,0,0,0.2)}@media (max-width: 576px){.navbar-expand-sm .navbar-brand,.navbar-expand-sm .nav-link{border:none !important}}@media (max-width: 768px){.navbar-expand-md .navbar-brand,.navbar-expand-md .nav-link{border:none !important}}@media (max-width: 992px){.navbar-expand-lg .navbar-brand,.navbar-expand-lg .nav-link{border:none !important}}.btn{border-color:rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3)}.btn:not([disabled]):not(.disabled).active,.btn.disabled{border-color:rgba(0,0,0,0.6);-webkit-box-shadow:none;box-shadow:none}.btn:hover,.btn:focus,.btn:not([disabled]):not(.disabled):active,.btn:not([disabled]):not(.disabled):active:hover,.btn:not([disabled]):not(.disabled).active:hover{border-color:rgba(0,0,0,0.6)}.btn-primary{background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3A3F44), to(#313539));background-image:linear-gradient(#484e55, #3A3F44 60%, #313539);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-primary:not([disabled]):not(.disabled):hover,.btn-primary:not([disabled]):not(.disabled):focus,.btn-primary:not([disabled]):not(.disabled):active:hover,.btn-primary:not([disabled]):not(.disabled).active:hover{background-image:-webkit-gradient(linear, left top, left bottom, from(#101112), color-stop(40%, #17191b), to(#1b1e20));background-image:linear-gradient(#101112, #17191b 40%, #1b1e20);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-secondary{background-image:-webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7A8288), to(#70787d));background-image:linear-gradient(#8a9196, #7A8288 60%, #70787d);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-secondary:not([disabled]):not(.disabled):hover,.btn-secondary:not([disabled]):not(.disabled):focus,.btn-secondary:not([disabled]):not(.disabled):active,.btn-secondary:not([disabled]):not(.disabled).active{background-image:-webkit-gradient(linear, left top, left bottom, from(#4e5458), color-stop(40%, #565b60), to(#5b6165));background-image:linear-gradient(#4e5458, #565b60 40%, #5b6165);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-success{background-image:-webkit-gradient(linear, left top, left bottom, from(#78cc78), color-stop(60%, #62c462), to(#53be53));background-image:linear-gradient(#78cc78, #62c462 60%, #53be53);background-repeat:no-repeat;-webkit-filter:none;filter:none;color:#fff}.btn-success:not([disabled]):not(.disabled):hover,.btn-success:not([disabled]):not(.disabled):focus,.btn-success:not([disabled]):not(.disabled):active,.btn-success:not([disabled]):not(.disabled).active{background-image:-webkit-gradient(linear, left top, left bottom, from(#379337), color-stop(40%, #3b9e3b), to(#3ea63e));background-image:linear-gradient(#379337, #3b9e3b 40%, #3ea63e);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-info{background-image:-webkit-gradient(linear, left top, left bottom, from(#74cae3), color-stop(60%, #5bc0de), to(#4ab9db));background-image:linear-gradient(#74cae3, #5bc0de 60%, #4ab9db);background-repeat:no-repeat;-webkit-filter:none;filter:none;color:#fff}.btn-info:not([disabled]):not(.disabled):hover,.btn-info:not([disabled]):not(.disabled):focus,.btn-info:not([disabled]):not(.disabled):active,.btn-info:not([disabled]):not(.disabled).active{background-image:-webkit-gradient(linear, left top, left bottom, from(#2596b8), color-stop(40%, #28a1c5), to(#29a8cd));background-image:linear-gradient(#2596b8, #28a1c5 40%, #29a8cd);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-warning{background-image:-webkit-gradient(linear, left top, left bottom, from(#faa123), color-stop(60%, #f89406), to(#e48806));background-image:linear-gradient(#faa123, #f89406 60%, #e48806);background-repeat:no-repeat;-webkit-filter:none;filter:none;color:#fff}.btn-warning:not([disabled]):not(.disabled):hover,.btn-warning:not([disabled]):not(.disabled):focus,.btn-warning:not([disabled]):not(.disabled):active,.btn-warning:not([disabled]):not(.disabled).active{background-image:-webkit-gradient(linear, left top, left bottom, from(#9e5f04), color-stop(40%, #ad6704), to(#b76d04));background-image:linear-gradient(#9e5f04, #ad6704 40%, #b76d04);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-danger{background-image:-webkit-gradient(linear, left top, left bottom, from(#f17a77), color-stop(60%, #ee5f5b), to(#ec4d49));background-image:linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-danger:not([disabled]):not(.disabled):hover,.btn-danger:not([disabled]):not(.disabled):focus,.btn-danger:not([disabled]):not(.disabled):active,.btn-danger:not([disabled]):not(.disabled).active{background-image:-webkit-gradient(linear, left top, left bottom, from(#d71c16), color-stop(40%, #e51d18), to(#e8241f));background-image:linear-gradient(#d71c16, #e51d18 40%, #e8241f);background-repeat:no-repeat;-webkit-filter:none;filter:none}.btn-link,.btn-link:hover{border-color:transparent}.btn-group .btn.active,.btn-group-vertical .btn.active{border-color:rgba(0,0,0,0.6)}h1,h2,h3,h4,h5,h6{text-shadow:-1px -1px 0 rgba(0,0,0,0.3)}.table-primary,.table-secondary,.table-success,.table-info,.table-warning,.table-danger{color:#fff}.table-primary,.table-primary>th,.table-primary>td{background-color:#3A3F44}.table-secondary,.table-secondary>th,.table-secondary>td{background-color:#7A8288}.table-light,.table-light>th,.table-light>td{background-color:#e9ecef}.table-dark,.table-dark>th,.table-dark>td{background-color:#272B30}.table-success,.table-success>th,.table-success>td{background-color:#62c462}.table-info,.table-info>th,.table-info>td{background-color:#5bc0de}.table-danger,.table-danger>th,.table-danger>td{background-color:#ee5f5b}.table-warning,.table-warning>th,.table-warning>td{background-color:#f89406}.table-active,.table-active>th,.table-active>td{background-color:rgba(255,255,255,0.075)}.table-hover .table-primary:hover,.table-hover .table-primary:hover>th,.table-hover .table-primary:hover>td{background-color:#2e3236}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>th,.table-hover .table-secondary:hover>td{background-color:#6e757b}.table-hover .table-light:hover,.table-hover .table-light:hover>th,.table-hover .table-light:hover>td{background-color:#dadfe4}.table-hover .table-dark:hover,.table-hover .table-dark:hover>th,.table-hover .table-dark:hover>td{background-color:#1c1e22}.table-hover .table-success:hover,.table-hover .table-success:hover>th,.table-hover .table-success:hover>td{background-color:#4fbd4f}.table-hover .table-info:hover,.table-hover .table-info:hover>th,.table-hover .table-info:hover>td{background-color:#46b8da}.table-hover .table-danger:hover,.table-hover .table-danger:hover>th,.table-hover .table-danger:hover>td{background-color:#ec4844}.table-hover .table-warning:hover,.table-hover .table-warning:hover>th,.table-hover .table-warning:hover>td{background-color:#df8505}.table-hover .table-active:hover,.table-hover .table-active:hover>th,.table-hover .table-active:hover>td{background-color:rgba(255,255,255,0.075)}legend{color:#fff}.input-group-addon{background-image:-webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7A8288), to(#70787d));background-image:linear-gradient(#8a9196, #7A8288 60%, #70787d);background-repeat:no-repeat;-webkit-filter:none;filter:none;text-shadow:1px 1px 1px rgba(0,0,0,0.3);color:#fff}.nav-tabs .nav-link{background-image:-webkit-gradient(linear, left top, left bottom, from(#101112), color-stop(40%, #17191b), to(#1b1e20));background-image:linear-gradient(#101112, #17191b 40%, #1b1e20);background-repeat:no-repeat;-webkit-filter:none;filter:none;border:1px solid rgba(0,0,0,0.6)}.nav-tabs .nav-link:not([disabled]):not(.disabled):hover,.nav-tabs .nav-link:not([disabled]):not(.disabled):focus,.nav-tabs .nav-link:not([disabled]):not(.disabled):active,.nav-tabs .nav-link:not([disabled]):not(.disabled).active{background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3A3F44), to(#313539));background-image:linear-gradient(#484e55, #3A3F44 60%, #313539);background-repeat:no-repeat;-webkit-filter:none;filter:none}.nav-tabs .nav-link.disabled{border:1px solid rgba(0,0,0,0.6)}.nav-tabs .nav-link,.nav-tabs .nav-link:hover{color:#fff}.nav-pills .nav-link{background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3A3F44), to(#313539));background-image:linear-gradient(#484e55, #3A3F44 60%, #313539);background-repeat:no-repeat;-webkit-filter:none;filter:none;border:1px solid rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3);color:#fff}.nav-pills .nav-link:hover{background-image:-webkit-gradient(linear, left top, left bottom, from(#101112), color-stop(40%, #17191b), to(#1b1e20));background-image:linear-gradient(#101112, #17191b 40%, #1b1e20);background-repeat:no-repeat;-webkit-filter:none;filter:none;border:1px solid rgba(0,0,0,0.6)}.nav-pills .nav-link.active,.nav-pills .nav-link:hover{background-color:transparent;background-image:-webkit-gradient(linear, left top, left bottom, from(#101112), color-stop(40%, #17191b), to(#1b1e20));background-image:linear-gradient(#101112, #17191b 40%, #1b1e20);background-repeat:no-repeat;-webkit-filter:none;filter:none;border:1px solid rgba(0,0,0,0.6)}.nav-pills .nav-link.disabled,.nav-pills .nav-link.disabled:hover{background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3A3F44), to(#313539));background-image:linear-gradient(#484e55, #3A3F44 60%, #313539);background-repeat:no-repeat;-webkit-filter:none;filter:none;color:#7A8288}.pagination .page-link{text-shadow:1px 1px 1px rgba(0,0,0,0.3);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3A3F44), to(#313539));background-image:linear-gradient(#484e55, #3A3F44 60%, #313539);background-repeat:no-repeat;-webkit-filter:none;filter:none}.pagination .page-link:hover{background-image:-webkit-gradient(linear, left top, left bottom, from(#101112), color-stop(40%, #17191b), to(#1b1e20));background-image:linear-gradient(#101112, #17191b 40%, #1b1e20);background-repeat:no-repeat;-webkit-filter:none;filter:none;text-decoration:none}.pagination .page-item.active .page-link{background-image:-webkit-gradient(linear, left top, left bottom, from(#101112), color-stop(40%, #17191b), to(#1b1e20));background-image:linear-gradient(#101112, #17191b 40%, #1b1e20);background-repeat:no-repeat;-webkit-filter:none;filter:none}.pagination .page-item.disabled .page-link{background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3A3F44), to(#313539));background-image:linear-gradient(#484e55, #3A3F44 60%, #313539);background-repeat:no-repeat;-webkit-filter:none;filter:none}.breadcrumb{border:1px solid rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3);background-color:transparent;background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3A3F44), to(#313539));background-image:linear-gradient(#484e55, #3A3F44 60%, #313539);background-repeat:no-repeat;-webkit-filter:none;filter:none}.breadcrumb a,.breadcrumb a:hover{color:#fff}.alert .close{color:#000;text-decoration:none}.alert{border:none;color:#fff}.alert a,.alert .alert-link{color:#fff;text-decoration:underline}.alert-primary{background-color:#3A3F44}.alert-secondary{background-color:#7A8288}.alert-success{background-color:#62c462}.alert-info{background-color:#5bc0de}.alert-warning{background-color:#f89406}.alert-danger{background-color:#ee5f5b}.alert-light{background-color:#e9ecef}.alert-dark{background-color:#272B30}.alert-light,.alert-light a:not(.btn),.alert-light .alert-link{color:#272B30}.badge-success,.badge-warning,.badge-info{color:#fff}.jumbotron{border:1px solid rgba(0,0,0,0.6)}.list-group-item:hover{background-color:#1c1e22} diff --git a/frontend/static/css/fic.css b/frontend/static/css/fic.css deleted file mode 100644 index fc12b00d..00000000 --- a/frontend/static/css/fic.css +++ /dev/null @@ -1,387 +0,0 @@ -@font-face { - font-family: "Linux Biolinum"; - src: url('../fonts/LinBiolinum_R.woff') format('woff'); -} -@font-face { - font-family: "Linux Biolinum"; - src: url('../fonts/LinBiolinum_RB.woff') format('woff'); - font-weight: bold; -} -@font-face { - font-family: "Linux Biolinum"; - src: url('../fonts/LinBiolinum_RI.woff') format('woff'); - font-style: italic; -} -@font-face { - font-family: 'FantasqueSansMonoRegular'; - src: url('../fonts/FantasqueSansMono-Regular.woff') format('woff'); - font-weight: normal; - font-style: normal; -} - -b, strong { - font-weight: bold; -} - -[ng-cloak] { - display:none !important; -} - -.popover.bs-popover-left .arrow::after { - border-left-color: #7A8288; -} - -body { - overflow-y: scroll; -} - -.bg-public { - background-image: url('../img/logo-epita-bw.png'); - background-repeat: no-repeat; - background-size: contain; - height: 100vh; -} - -.bg-public .carousel h3 { - font-size: 1.5rem; - line-height: 1.1rem; -} - -.flag { - font-family: 'FantasqueSansMonoRegular', monospace; -} - -.card-img-top { - background-position: center; - background-repeat: no-repeat; - background-size: cover; -} -.theme-card { - height: 10rem; -} - -.beautiful { - font-family: "Linux Biolinum",Helvetica,Arial,sans-serif; -} -.beautiful ol { - font-size: 133%; -} -.beautiful ol ol { - font-size: 90%; -} - -.text-bold { - font-weight: bolder; -} -.text-indent p { - text-indent: 1em; -} - -.navbar { - margin-bottom: 0; -} -.niceborder { - border-bottom: 5px #4eaee6 solid; -} -.navbar img { - margin: 3px auto; - height: 100px; -} -.navbar .clock { - font-size: 70px; -} -.clock:not(.expired):not(.wait) .point, .clock.expired { - transition: color text-shadow 1s; - position: relative; - animation: clockanim 1s ease infinite; - -moz-animation: clockanim 1s ease infinite; - -webkit-animation: clockanim 1s ease infinite; -} -.clock.wait .point { - transition: color text-shadow 1s; - position: relative; - animation: clockwait 1s ease infinite; - -moz-animation: clockwait 1s ease infinite; - -webkit-animation: clockwait 1s ease infinite; -} -.end { - color: #e64143; -} -.point { - text-shadow: 0 0 20px #4eaee6; -} -.end .point { - text-shadow: 0 0 20px #e64143; -} -@-webkit-keyframes clockanim { - 0% { opacity: 1.0; } - 50% { opacity: 0; } - 100% { opacity: 1.0; }; -} -@-moz-keyframes clockanim { - 0% { opacity: 1.0; } - 50% { opacity: 0; } - 100% { opacity: 1.0; }; -} -keyframes clockanim { - 0% { opacity: 1.0; } - 50% { opacity: 0; } - 100% { opacity: 1.0; }; -} -@-webkit-keyframes clockwait { - 0% { text-shadow: 0 0 20px #A6D6F2; } - 50% { text-shadow: 0 0 2px #A6D6F2; } - 100% { text-shadow: 0 0 20px #A6D6F2; } -} -@-moz-keyframes clockwait { - 0% { text-shadow: 0 0 20px #A6D6F2; } - 50% { text-shadow: 0 0 2px #A6D6F2; } - 100% { text-shadow: 0 0 20px #A6D6F2; } -} -keyframes clockwait { - 0% { text-shadow: 0 0 20px #A6D6F2; } - 50% { text-shadow: 0 0 2px #A6D6F2; } - 100% { text-shadow: 0 0 20px #A6D6F2; } -} - -samp.cksum { - overflow-x: hidden; - text-overflow: ellipsis; - max-width: 16vw; - display: inline-block; - vertical-align: middle; - word-wrap: normal; -} - -h1 small.authors { - float: right; - font-style: italic; - font-size: 42%; -} -.lead small.authors { - color: #7a8288; - font-style: italic; -} - -a.badge:hover { - text-decoration: none; -} -.teamname { - -webkit-filter: invert(100%); - filter: invert(100%); -} -a:hover .teamname { - text-shadow: 0px 0px 10px #888888; -} - -.authors a { - color: #3A3F44; -} - -.heading { - font-style: italic; - margin-top: -7px; - text-align: right; -} - -#eventsList { - overflow:hidden; - max-height: 90vh; -} - -.swap-animation .alert { - margin-bottom: 0px; -} -.swap-animation { - margin-bottom: 0.5rem; - max-height: 30vh; - transition: max-height 1.0s linear,opacity 1.0s linear,transform 0.5s linear; -} -.swap-animation.ng-enter { - transform: translateY(-25vh); - max-height: 0vh; -} -.swap-animation.ng-enter-active { - opacity: 1; - transform: translateY(0px); - max-height: 30vh; -} -.swap-animation.ng-leave { - opacity: 1; - max-height: 30vh; - transform: translateY(0px); -} -.swap-animation.ng-leave-active { - opacity: 0; - transform: translateX(120vw); - max-height: 0vh; -} - -.carousel-indicators { - bottom: -10px; -} -.carousel-caption { - padding: 0; - position: static; -} -.carousel .table { - margin-bottom: 0; -} -.carousel .table-sm td { - padding: 2px; -} - -.table th.frotated { - border: 0; -} -.table th.rotated { - height: 100px; - width: 40px; - min-width: 40px; - max-width: 40px; - position: relative; - vertical-align: bottom; - padding: 0; - font-size: 12px; - line-height: 0.9; - border: 0; -} - -th.rotated > div { - position: relative; - top: 0px; - left: -50px; - height: 100%; - transform: skew(45deg,0deg); - overflow: hidden; - border: 1px solid #000; -} -th.rotated div span { - transform: skew(-45deg,0deg) rotate(45deg); - position: absolute; - bottom: 40px; - left: -35px; - display: inline-block; - width: 110px; - text-align: left; - text-overflow: ellipsis; -} - -ul.list-inline li { - display: inline; -} -ul.list-inline li:not(:last-child)::after { - content: " ● " -} - -.breadcrumb-item + .breadcrumb-item::before { - content: ">" -} - -.excard { - transition: transform 250ms; -} -.excard:hover { - transform: scale(1.07); -} - -#tagsMenu + .dropdown-menu div { - overflow-y: auto; - max-height: calc(66vh - 100px); -} - -blockquote { - border-left: solid 2px; - margin-left: 1em; - padding-left: 1em; -} - -.jumbotron img { - margin-left: -1em; - padding-left: 2em; - padding-right: 2em; -} -img { - max-width: 100%; -} - -#eventsList .card { - border-left-color: rgba(0,0,0,.125) !important; - border-right-color: rgba(0,0,0,.125) !important; - border-top-color: rgba(0,0,0,.125) !important; -} - -.bg-public .card-body { - padding:1rem; - padding-bottom:0; -} - -#themesSummary .card-body { - padding:0; -} -#themesSummary h3 { - background: rgba(64,64,64,0.66); - border-radius: 2px; - padding: 0.5rem; - margin-left: 0.5rem; - margin-right: 0.5rem; - margin-top: -40px; -} -#themesSummary p { - font-size: 90%; - margin: 0.2rem; - text-indent: 0.6em; -} - -.card-sm .card-header, .card-sm .card-footer { - padding: 0.2rem 0.75rem; -} -.card-sm .card-body { - padding: 0.4rem 0.75rem; -} -.card-sm .card-body.text-indent p { - text-indent: 0.4rem; -} - -.carousel-item, .carousel-caption { - height: inherit; -} - -.page-header { - background-size: cover; - background-position: center; - margin-bottom: -15rem; -} -.page-header h1 { - text-shadow: 0 0 15px rgba(255,255,255,0.95), 0 0 5px rgb(255,255,255) -} -.page-header h1, .page-header h1 a { - color: black; -} -.page-header h1 a:hover { - text-decoration: none; -} -.page-header h2 { - font-size: 100%; - text-shadow: 1px 1px 1px rgba(0,0,0,0.9) -} -.page-header h2, .page-header h2 a { - color: #4eaee6; -} -.page-header h1 { - padding-top: 4rem; - text-align: center; -} -.page-header h2 { - padding-bottom: 14rem; - text-align: center; -} - -.page-header .headerfade { - background: linear-gradient(transparent 0%, rgb(233,236,239) 100%); - height: 3rem; -} - -a.list-group-item:hover { - text-decoration: none; -} diff --git a/frontend/static/css/glyphicon.css b/frontend/static/css/glyphicon.css deleted file mode 120000 index 14cd8c56..00000000 --- a/frontend/static/css/glyphicon.css +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/css/glyphicon.css \ No newline at end of file diff --git a/frontend/static/e404.html b/frontend/static/e404.html deleted file mode 100644 index a12ccc3f..00000000 --- a/frontend/static/e404.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - Challenge Forensic - - - - - - - - - - - - - -
-
-

Page introuvable Erreur 404

-
-

- La page à laquelle vous tentez d'accéder n'existe pas ou l'adresse que vous avez tapée est incorrecte. -

-

- Si le problème persiste, contactez un administrateur. -

-
-
- - - diff --git a/frontend/static/e404.json b/frontend/static/e404.json deleted file mode 100644 index e92fea36..00000000 --- a/frontend/static/e404.json +++ /dev/null @@ -1 +0,0 @@ -{"errmsg": "La page à laquelle vous tentez d'accéder n'existe pas ou l'adresse que vous avez tapée est incorrecte."} diff --git a/frontend/static/e413.html b/frontend/static/e413.html deleted file mode 100644 index 507830c1..00000000 --- a/frontend/static/e413.html +++ /dev/null @@ -1,48 +0,0 @@ - - - - - Challenge Forensic - - - - - - - - - - - - - -
-
-

Requête trop grosse Erreur 413

-
-

- La quantité de données que vous souhaitez envoyer au serveur est trop importante pour qu'il accepte de la traiter. -

-
-
- - - diff --git a/frontend/static/e413.json b/frontend/static/e413.json deleted file mode 100644 index 194d473c..00000000 --- a/frontend/static/e413.json +++ /dev/null @@ -1 +0,0 @@ -{"errmsg": "La quantité de données que vous souhaitez envoyer au serveur est trop importante pour qu'il accepte de la traiter."} diff --git a/frontend/static/e500.html b/frontend/static/e500.html deleted file mode 100644 index 2c68cc9e..00000000 --- a/frontend/static/e500.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - Challenge Forensic - - - - - - - - - - - - - -
-
-

Erreur interne Erreur 500

-
-

- Notre serveur est actuellement dans l'incapacité de répondre à votre requête.
Veuillez recommencer dans quelques instants. -

-

- Si le problème persiste, contactez un administrateur. -

-
-
- - - diff --git a/frontend/static/e500.json b/frontend/static/e500.json deleted file mode 100644 index 43ee1302..00000000 --- a/frontend/static/e500.json +++ /dev/null @@ -1 +0,0 @@ -{"errmsg": "Notre serveur est actuellement dans l'incapacité de répondre à votre requête. \nVeuillez recommencer dans quelques instants."} diff --git a/frontend/static/favicon.ico b/frontend/static/favicon.ico deleted file mode 100644 index 3da960762392e9c97016697e56d1aabd11690e7d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2238 zcmc)McTkj96b0~u3Llo(5Nsfw6_6sb^tRO9WrbZ!6uYsD1!M0hHn1S}1`2|pCLWDYc zB2?&wP$zHVgHUG?Lfiup;vq(ecX!AF`#>fRBmE$g^oLA30J7kLWDsPs!3Yi+3Tfyt z1j~m*su&4rk5Q2H91Ur&v5@u-hosL0Nc&ENq;CWyVG)pqO@gG~WQYe$g=F9~hzHGp zgop>vgm}m-1Pz;ypy81S9I*gFN(&JRf* z!<(A~?|Dh^nx71>$Q1Yx&jq{Sy)YGCQM=)}Xb(w;=i+pDEXjb!(oDE5%Y-{|i_U_3 zOg7wN4!~{sLAb8Sfg5pIc?hn=Wo0g0WAoq=n-AyJhvBli0M2m*5XK#W(;8kOoYoeR zVhGojK)9Y)3dapcAta6)kE7eB6L8pk65WWymQ%3bdKz7M@n>Kke-;kJKH)5E6VAbo zxBVP!wx5UXjtj6!ya?OGOR!G53>)6gE3n>q6#*Ea1}kEjdIO!) zZbFb&PFW7Y?px$G1bc47BK;1`((l5YSnQ?Tdk^OO?!#=~1DIqyfN{n{%7-xJGn0}S zXFj6&5e)Y~h7mE$dIDo&l=T#yvY){u`zZ`5^$$FU0qLal0v!*&fIcx$W(8#hI_6ZM zeNH9X9eRoOqyuS}`wDGyt0=3Wmsf?hL^rRRvKo5%)zHmb!i_h?%59!-iqP<}u&!WI7xZPJ)%mHYv1qFM404N5L&*{}9z1>?&UEue)YT zMlcpPc+4DS-GA*VtuE6psXs~dV{A%{7Ukg=p?Q_Ilq@)w-%Z$7xwc zF}8r4%%WRyXsN+lDLpn!9R>)%&p<^*hXy^-g$dvT$45>UmgtMHZxXsot@zv z@3+$}Q1**B(U-k1cUd{l;AXGj!d11K*4f$zb2z8f59ngo_~IZgQ`Hs@ORn9&2y4jc z_WY$-(~}M0@@iZ4ES+SoeRU!i#l~{0)O)r081rsk#f6zB-Z|fP~Me=_h{11n| IFMl-t21&Mmb^rhX diff --git a/frontend/static/fonts b/frontend/static/fonts deleted file mode 120000 index 0ef2f8d8..00000000 --- a/frontend/static/fonts +++ /dev/null @@ -1 +0,0 @@ -../../admin/static/fonts/ \ No newline at end of file diff --git a/frontend/static/img/comcyber.png b/frontend/static/img/comcyber.png deleted file mode 100644 index 7734af231f7409e704f4c8ac4515830cbec8f788..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155509 zcmXtA1yoc`yr)4zLb@ANq@_!G>4rr>x=XrCI%VmWZV-@e=@yVqr9`@<;SJw=Pmf2% zv+Uh_Xa2t&BUF@Ru+T}-;o#t~AhMEbaB%RSpMIgCfUg8}@{EGtP>kheB;g*Petu~$ zP5@td<|qqwhJ$0Jd-?_MQ7GyLzKH4qQItacjZTawfNzUC8V(})PQznyzuogQ z8Psp*a!5fB89zXLg%?`!N&Cdsjdwz10kz0Nmvn5@`diEX=S{SwUwJ*N`cyTm_1|k= zFOV&w%^rr*X`y?+)vYwG|!-U{Yqh}R1>}f z-43w-LU+-Ex{TbfhAFGu{;i=wopwUw6o&e_O(?}MUNOG#VXYTYJ)QyiIcmUtmxv*D zDD)*8Ha*HRf;|Fnz@8XUC`17f7Lbnkm4<}*5*cq6-|;5`8v+}ASiq<2 z;zo1am+Z~xKJa>o(&~nIsCaR;i9!-X@|0qyr#}OvpNAUBbD)uhR{ysA>q_2}o0T$_ zK(dZ^4E@_q)w4ilXCp{3QkT%S2~W?aOg6%PLS0t+oDZc9Jri#En(0!~?0FNKPbNa5 zYIJyw%KN34Zzq)g_Y*w(@zq39D9P~ZjS_-G0UUUBHD*!QCV8l6AL?j*eOBb=0>t1H z4wixiA45K_>Rzv$PT1n)vj;mqdUl1D+aF=*u!( zk2lDq-q~T^1ma)z1hmSNzJC`-N8fK+VO_T8b!(-lTL@y2FDaAeCS@STWas6Tp~o}w z^UIc{52A+**0$x@q$!{ax*zu2H*#@tNzmibP{zH88welRuuT8=O{7e)Ya-xGjEa3~ z*6mf3v9LDI#&9rE;>|pvDDkrN9%o|-`)i$|XGaTAQNKqPzs?*%cYE-@IsXPO z&CnHC4NXU|ztv~SZ9<CX@d} zSC^O))u=jiXBWG(FT6`beHQ6R9qeh9?)CB5cG*Xd9`UMmss1bIFWwVqsWPh3IrfN5 z%gS0|4=F2q6%rD{{r0W%dKY|TBu|ls7H8V#;fmmLt9u-{1DUpxbFSpiQI9(I3L6^S zCU-86)^?_qMQP$?g>0s+Ls1#4ssp?+&J<27=)o@ZdCRd47An1j21IjX3tzVr0tCm=}D(9$xl*M)C#J0MMA)z?dT zDX*ys9yhS(>>#Z{MC=@8nco-=!D*a^m;g zElknEqzn}MtimkDO)4?1VG8Xxulwa9aN-f^>^E_A>3sXo4llxVe5E6gIXWf=?|E3= zs)MsLmxP1_eZtV&KpCUlgr2atA5&97MWsleXvAqY2qGkjsi-V$Z4)JFYZjsl@UKLU z_1EjbW$kc?2Z_pCwC@D|_b9=p$LSHe;F0E!Ur}C44Z-2&;W5`Nf|HVxN=!-N;^%L+ z4q*!JvgN6>m@sH?SnHtu$1WrkJ+VWFkB%GF_k$Y?n#`5kL8;6!Go$%)W=3?=2O9}N zugxQHb#;}2t`>ZjBVO9-SFc_X`gXY5AZnGn&cNmE3Gieb(0tLr@1g&5B2?n#fASkS zG%Sp&(ZG}8;)e40qxbD@4!r1x)RSyphb=`NPtTyPlkl`*L>~+fR65MdQkIvr!Clt% zr`V6bsyAE&oGIPU`mx6Sef(zpFf=u-tgL?3&lwE-a%34IKU{9^=@Jta$vMhJ5{1Ax zx9Rog-~>ipt8;lamS4)6>yH#C`5guFbkla!G6+AMVNdow#j~<`?QLc6WE*q4{cx zdH(r9^PIwqW9I_gfxfMgln6;$GRl<(Ig;-sL#~8Ztsx7Cp43B#vIg1Yj`+oHo@=sc z6~o!vCpIn8cCJ`!9!DAT2mdk$kR{$doQvLtX&w#gvock;oxX~RQRI&!BO%#dtY;%3 zCDr>l|FvoljmEJxYQDu4qedrld_0yQQ0C^AGA_))XG2&{o~ZT9&CSjAaSvBXSqts4 z3Vukt_odV3;AEyzFBl|xO~)_04IR}H&}Nwvx(L>byFR=bb(uhfJmJ$-Kt9?P*1B(W zaOZD}Um_ZsW=E^OG&15B`XEqIP!0v>4l7l(PTfC&F{&D>n5ClZiSMa_q#CF9ijrP?gX05tZ-B*waRd zV=j}m#|sM!!JOL>+P=Bii;j&oAAf9;QpE>L*vigstnAMHXjM^LTYLOQM;vW<u9n89gHj;@-V!AdT?BkWE>v?_$0k|KJ8dv;b z^N!9#pgX_v;HUWU6{Ym-5tX5&mfb54%XDeZGzI?8yfEKz4bub@sR1HKZH4PMd2+UUuuFc@dFVrlXCW`E*>&9X^hjs zq9#~TJV^AKnuSG0$sewhjvRmYz9y+#VT3@e?H@7LiNLUZeAj@b`5(hbs*8Q`^aaYR zM&fJojAXcyJuejQ2HS=2CmT$Ttt(`@Z?wPIuFb0OYkW19VtvU2b+}Dh^_0W?s*7Umg1!fJ!&KH(Qwj0LopWi!NUF ztMd-)s_&(KSy>sM<2u~h-8Sz_7MA6G^zUZGp7ICaa{L!p{cdK?(+58dPBVGFm{so= zQ1f>{_M@Up$q!P*bOWO*7o*Ik%*xg_ucL!9tS7L~*a*Bw=I!-FYG%4_Je4s6wdVdy zgOg@@NM2PHW%*3Y<~X1VEA|6hPFrnp0L?j;h(d!zg+}sbXb@pgL-~_X=osP%*xDYgbtC-(h z7_zvyNRT6+Y-Vn5o|<*BwX9hzVftQIxAq3brvoY=C>Soe&82kA!~mnmMMt)>T2L}F zqDe@2;d4GI!*65sjK*WHveC+Vm?Bw-oxN*-Du*dvw&H#1>&Wjz2@aEsi;-jI@45ed z7ia40>vM5)6Jh1qL2yG@JMn5SG^oB*1IyX&*W!@;YH*ST1$a;dP4IUn(ez!44lgoR zn^TgKemU~hav~~!Ojoz>^insbee5{6cDv9o`Eiz=RM2KZ3Q+YG=%SqSB4 zC%*skgbg7nOZ;r1hm@2JZ*J1p)rpMfh$>U#43Q7YqcWDg4%P|=xgi&xM)#?$2Zc| zCj+w|^kDRPlg!@#_MvLmI+a>w<>k2I?3|pn=8Uw#>wQEYhSLLA7ZxD2@n4#nJSK@T z(9xURk66=-wph{*Pw=Pb=TkLL#zsfk`S@goDE(jQ4$8qKY2())?r*Q|AIJ^MPrhS> zc>oUJ^uXin?Cf*(3%b3%&C{Dn55XHUg>`foz=r5uU0wO1kv+fG$Fl_E1Y1|4f6?*p zUU+@D@M`B>TvSrrSr|-6Xv5y*KpY6lN{IfobL9|_$JC9&0QtUi#v!XWY%rjWEZ7vAne3xaP-?uQ9Q)xAFmVYRxZ{Ne)uX z7@3%yrS*1O#{V4%@_U_IDj`!uNb>nV(1FFoqY;5YBg>fJbG?;P(@aCSI|2(Eb}b$QHm0*fm0aKeWS#I>)F^mUq-O0MjJ~DSTT4T3 z8C=@a-MGKtn6~LEN5&Z7r9@GE-v_AtgNt^{%aD_> z#DZ~x#c4D&3mY3#vIN~(7i+Y&w7|}b=riW`wg=0sV$MxKU#D`mxWldjM;f-}ebk=9 zrKYH6P%;F&S!f4%zl=>)=Ysc014X}w_3p5UG==Bkdv2l4hoNdX+HtIo7l-1(|eEhPFdMq zD@03ID|G3=fLn>K?B)1=1-AagA=A?^RE^&$MZ$q5dmgnrY>jgAX2-{2i(Kud53mJy zZ8@EcIrv4b-LI@|95k-wR#ma8ul=2zi>H$*DJ>oHsxsw-C@W8-kEEl~u%{`I3!EDl zmCkqg-d;Ui`o{p+jXBna2CVg2nqI8Zk+leYw*9i%C|yfGEh|KcljfwtE)?ifKfg(97`eib%{bjNy%O^8}jm4xO#5y+^cyrqzrIlWs@Q4xK5iY_N7=h&>L z!=g1sHhsY?od9{d-o4l}Kp)arE^L20@|9FoF%n~P@-{YYC*rmU1g?n!**7Dx9m&?w zbf-cR=g6mEW3xx=ACYTI4_?)1nPSc7o6ncUYHedv7h6+X3rkDe&1@!$d+(yZ(;M+( zf3;nZiEm)zqu*&l=LhGeDx4q7%e@&69r5*zt$oJ1ZEcyMp?2K7ycTi`n=o1W?@T#9 zwdQ9@MOHvOIX`joH!&k4BMX4sfY}}_o_j&)s1ab&^|5+x>DPr<*co+gV8+57osOVm zfz`*qYtPp^5gvHE>Tu`2>affoxRH{QKCSwsBu)9*`1GtSGfT_x)m2I#k+rhde-~|e z{C3>^+~bXZaL0^~D^-1XjJ#ZXEM#~;IX*GreDYhWrM0#8PzA6$@WC2ay`rY3IKk(N zd%Rj>LthjA_?zJ0(OQn{YR z`fj&Z8mfgBGJ7aVD8ADb_(|RkUx6_pQ}EIm(1$tG*-6)|mDczCes@WpsxQM|rU($;3m@%={vFyDf9_Z2c^%#ESNIYBHhfS|p`AHj{wtMaX7d4V1RFaqqH zNK5YF``b%Gczw<^!?~&z{!txVX&D)!mzvPzXDFZMZIJ=BGE=1HPE)X5nw4e7H}&&d zWoB%Se#uyQ#X^WNGc(h6Ta{AzzL68)J8ispjf= z^t9#Q`3~T-$z}I@dO3CRy;6RDJ`eyI@$tACnj?H;1X56^Q4^E=^MC)Q78bgRKIr`_ zukN5HjH+Dd&N?LaJpVJPIboA9Bxzzo*Vo5z<-qtP4v^Bc7Bruq1eFN9`Lkii#M)C-v*}hjNJlkLU3L zG0Ls1mW3`DELEaO%fymsE9OgONv)fID{GT?7-Zur~}clO3PQ|R;ETUka%Cnl!n=0?C`P0h}J zH|MIr_<}Lv1}K|!WAnHn7_hSsNMq9jM(&^a0@Ey9`wW3OwttP{?WLcP3DuX6k$Exxe{zn zcULEhFPn3jL!I?B-+~a^jI$TYJiI@Cc(20vQdiDK))!5R~a>zccrAl2*?MZrom(=!-`$q#b zHtZ36EQE&PAat%NTUemp-}|OrUzR}Bk_j5@mZWLp4V|1|7h@k|LPJrWQwpU{pYNVs zH+k+cYL#QPu4JF_zl!`mTlxOwn>TbgXgF~LbJJ#1NNpI21!ATGM}`xKgGFCse-@|# zP=;Xo58UnvyDuvF{_cJDZ-1e6|0KN#SYhGP`G5dMC;0F?OX>nV0p_NHqT-vSFE8H{ z7vlsOviAa&!k7>NP@=b&&#g7<_wV1CCM6XW1wa`?*H|WXT>7Gf38N-|{%n)o1wtnn z$Hm2EQ)53ekNxdiDQ?p4jhEvK5;T%aXGDh@NYrNFuvozG-_DBRff68e zKFdULvqSPo9W#%m678=P-@aiMPe-gB zF_Ay7wycqd1@{?`ktV+mHuUkyyuQ9>cxUS5gx9$i2bB7*i@oJZwz(dak;7ZpZ}U?ALH9#-xO zh@<^GTp0i?!MS$t_VVcC-t3!ToHPsYoobdS_{d`!{MP_hg1!DMjIMX1roI+8o>QU| zRiS8JmKK{9>?r2r5|jt;=w2~x>+h8|QOv>X05_i~Hh-L|W)h$-Pk=p=B3fKm_i1<6 z3L%gm7({h-bqWg6fUx#-b;12|M5l`)+1e5+*jX$*vz@;K4ahlun|*GKnXkw z(kyhXsxGplEx6@fT?r^Bj2U-b1fFIOWnAT7(y}r&P0ge_R7_%{H7b9fZ18ACg^Bk+ zrgwM4<4Xa)s56DR>(XLrYfDf1cC^f9p1#0g`1u{@7q9l!D&TX3{1O}Jj!)b&DZpUdRBX!D%6bKB? z&d!h!0?i~WUqm2bVPQons6^(OMq;p{N=D{=mSqH7!PMNGR8!F$|JYhwO@gM!XAa;J zFe3l#?hY}x>7hTYcYh)mx)N6^EGl~im`_1@xsB$!s)k1I;fgmi8=HhGra5uk0M{g> z9Qg$V2JGFE%1V81EgB@SEk;Kbs$VURTE88Bw2)U)94VA1BB7)-;Ks(6lGc2(=G1Z* zc+fF0oJC|5r@@mLf)*MkoxW1ZHl|hg!~qW)RQ5oQM*-Xkht7K*0P0ZD zIO+T+=TooU>#aJkCBrtQlq$f1=;-Lr3XCNsC4;5Z@^W(O4F@XY9N!uap-4y|$x&3_ z{rlHT_TzBvol5EF)6>(;xrU_!4Nc7#G1947S^9XA^pNkioa)*iaxTsQ!K#3SG-m^b zl2<)}CiNU?J2fYViJZqrEo{tJQ>WI!q-Bhd}~uGs-#nv5jB0n+Ce08Hku z7CvMkm~kFY%GB1>blabQ2ZE=(jSw8LcQ`~uYF>S|vA6%#6^O{c(+&2~2S3jk525Uf zOZi80k({{h?m+zfI<`dxG@3tqdmD8VtahfJIlf}$b9)p*&fB*Bl#-`#wZ;jWf7d!u z?q09|kT#G3?{csxWn=S?r?#c)48%8Qz~TlOn^rqd3)E@ zem-ZtoP@3Jo;*3&f5&J>IDy>>#-b2qaa)^^#qNvpnPWTpglE7iaek#jgB0NrB-~5g zZTkOR0Pjn4-()ZcUY@1Z{@%%Fmg{$)URoL%9ApP%DLR%E)84})6-;X{@7q6zhrhvX zb#Zm&5EP6mE5nBGQVTHKG>SH@0_<*la}ytgrKP6B?>g>I7bExoiK7MM*e=v2<;%nY z`Ia1(Z3cysEH&8W1DTMQN4xJPGu%czl1i2miBq?L&Idf7Sx&~#phF95YbU8Q;9N&W z$^YkANoR)i7>V4Us{^f>g8X>i2K37Jqe~M`lCg@ZPETr__3t6d&ya%1DEgX^^O1(n z)3_{-Hs68ZiQf!j<16*DNqR^Cr>23g9n41~6i6vxg(jE-ai> z&!5!Ays4wDEn{S4^mkbu5bP=7eOz75r+Z};yEjJWeJQgJwIi-{^&K4_$HPPc5KcnK zJaSrAmCzx**h_?ol9rxs>gf16H}@SFpIVtX7MyAG&CWzJvE;dJLhimwbhm9mfKm(( z4}-AvBi}w+F4!bon$M;J3d&ybWW=O^r8g85J6HXI2_L-@?a!$B3*aQ`bMl!Q8wUZO zO)`IyAT4w1p`p2%AG`yAS$zEYm%s(@kJ(%9^miB|IUSMZI4+voQ}k$GWm{TQ+Wl|G z)BcNJ)aT>4qj2hH$@q#2imZ(#JE5(>1tHU+*~fscIR0r=8a;}-_$F(B~#b#|Saf#G>j-K;Z&F@apbC46|etU|83ygUjxAhtRsrFqN%6#-g<_;;+OOMx*YHa50m z_#Il{^zLXp$rHehL5+p({iP!=;Xt~>@5}*GfU+|5u%7Yr^Ygs#k>Y3wfpDKbNnm20 zzjz*|y-(()YgXUj1xP;%;+46%EPcYfZ3DqklOp2_z#)JX1st%nstP0t*>+2$mcU0+ zR2+jjR}~j$jE|3-?G#q+@ntE2RPp1G50S|WVt=QS)K9E{c)lq%6#Oj zDupF`0=4u2T|P04#Qyl@=y-nt~QHGB2h_(T{n3CU2ivm)D+%PIu?7{7tS zfd`hVAjkO1BG)oKw5-gAlR+38roeb|?E@YIm|jD@z4Xq`4+?p!a(0gZDq2^-?JM~D z)e(xLrkUitgEsq1IprCV6YD2d8)rWG_dGuWs~^^+zhFTWujvgQI)U+SU` zF9NBjM*=M1xQK{nz+JC(qqu7clxF36&qCM(3~~_>AaUt8HcU!cJj@^g22pygZb{?g zRRlG0PyPdiV8ic<$B>Np-@lE4Ky&0nubWj`LIb@QkO6%>|HBa(xtwMg_cmZq$*_2C zuYC?Qo+{e!zn!~Q=3LYxeMVmY$c;?N#B-Z2{wFax8Pp77D_T3!(nx@uZvPb}{a?VK zsHhnA_kCeu=URCE1OuR}U;(qpNwD)byYO6zGvI<*l$qIk;I`q&2a^3Az)P1~ToZup zgMxAcp3euHFFIJM1>P=KJ|c{aj8Eaei%a75HM>^%+u}8=LZ_W^iYmS4T3h`pZj426 zJI6EQfHq(u93e?UHLN2!Kr1V^0V@J(I;_X`$p!@Ie;;p}u{jeMcSU&g+E}zp z0qq9Wjg26Y3;@ogE}_w#F1+k3hzcY=B;iL*(gC zZeVr3NlZ#I6ZZe`;lntquQ(cP$aFTGG+}74TxU4?f;l|6=j>?^v9kjR&_>~&qUk1s zT5s;b(eGL$S3TPTGXTtDQ`6L%8jjy5NYBGeG;yCO#%t}4^_z=o!Vv2n(t+fgH{|?Y z+&f2eb8`cIQABAOXKZO8gi8ULw1cGl5~c??H@71Yw4;o}%z02b5S4-*Vq-_7he3Yq z)!qX_ik8k;>eG7o&l)=%rIiPXmca6sCq~9~7p>YOduEsfUT>-|q^>>G9E@ zhFWH(so|HLh=>zRV&F7EVaP`2=ILO@Is@|xkO*yjtklD^k06R|S~;v30Lep@eyg0n z|A+o_^Ts7-#;I&zzxj0RVj;#YF6t^}^1XvD{64m5Y-OJL>tQZsGz=}^M5cWKKGdQA zidgTtYtxWS*9H~bBc7$tGKOCGa#28G$^Ffk1@+?LNvkA8IdQHAjhKL-J>{%`zX1ZdB~%5p4sdOw*KAEqiGfrHEf%(ptKSku4K5!4 zq=k0Ck~A}8kcp$r&&%W7`A9%O&~`T73fdW-0A=Tl#}}X7y#rM;=l4scowg35?aUnf z6Jpue$5(IHu{rir;xwmdYMK>v;DF^epP1EDR<^(9Pi?`}1UMyLRA2J4Ss5frzm@0( zPx*`-@YEVgekCj?z23dUkm@#7Q`3x6Of`GfryFp{Qq+}*;7I`lxFVDFYjLH1uIIi` z)vr3E^A&`n=J_NE{H`K&FIA=E)$51ppJgLx)&F1tk{#4S(gaMMo&5kII=Q_EPYgtd zAYF;X)zZ*7zS(owygLA;2+&H>?N?4lDe@4Co!|xHm>L;bS};I|r5|9k6XCVqK_=Uq zH^1gtY6rKQzZ^uX|6q}kgDy6)_Km&~?7IYslhV?6dZOl0z) z#o)(Jmzl1u!^yu3_Jv4wP_7RXkmOtat;Ntnd&iCsL`?eBlx?A6?+Zk1iFb0?X^y5) z@j2wPGu&+inxI@y@m%(&KliB8o*CuU@C`+J<;4@n=feNAB-ZD>$)^*0^;Nqd-7 zw$w!$A`TNvHXSA8(uyJ}p8?)hpMhZy2nAGi0_uLm*8K<^(Ugr}f*9ora}|Aq{O}-p zEjPY2XpyAIQ5AxVPQwgX&W~Io=h_|6t&)*J1soN6J6B#d3_=Mi-*XIU>Ck6kJxHGd zUDt|>teW)f4ZL=bVGQR~1i+U9esJK*;nT*SJ=G%(^j}!@Tl@)HSQ8!36*ilZKeLRQ zNOaTbqtn(2>YL9oj&S-t+K&5RKw$F?mGQ0aN4CruliV?X|NhN{{;PMA*QN-=%-spNzHCrP0>L$!cfLj_oLg)GJ^ z2C^fRLa`KUYloYjnON|`HBX=Vc|NM980ZuR5YdR$FtE){9EXnQmCR*3H z8ULeKwoJb2;c9yZ{M?1C0PX&dTnXsNF$)tg$^n^I)A_UhyD!QH8udPK&A~x5>rNoG zF53d-v}D3$W!;Fy$s~w~kWfumH*#c)kuZuwK%myPSB^8y)ZB|SWjZ3!O!Z)?F%FDM zyAsY>?yRDs?aXU*QV^b`aM;)9V;sYRL`LaAFT3 zvD9G@h!<30L$NMPITVz}P2sizo8|krUKNzpM*scmWL^Hcq_VtMeRG(3n!7|u5jJim z;C5~~ZUR#2Cf{4a6Azz->r8v9ueckvx|LwF2l(Fpd*f-#PTXtXXn|$Pk){Ben^dhU z-ObLTALP>#QPw|vYs{Gi9O`~&heR@as!dC1uD-g92VW zeSV{~zdzMe0m|Oq9em28e$Wel($FWue-4y z62%P7%s-vmzn}g_FvqIyy*dSypVVQ_l9>8#0Dohwo5Oq{I7vW2b$=G3JonBn`u%Mv^moqxSLH zO)s&R<8v1~NS}S#N+^%WH_!EWvr!c9DH^M28uD09{@so8y-O8SlJYURo>|g#vOOz% ztKR8v7|uSF>YPDUHgUc&3${F<*_R^JzvcAtbo2esIfq|SY^*QPkY+WFyqY~?3ef zP*M^;HC0=|(qqe`4uz(@bZnXx`I%niyg$zYVwJRnu}sh>u#hMnOZ?_f9k0^t-I?;i z$0wxoW{)dV^bz^;@RF0CLy?@8yn2I#v| zJ2A3D?;sv{I_7tO5cH>25?)0V47=$4Adq!(Wf`phY)GG%&ybLq%596>FnaXBM^70C ze1)))t>I>Vh(qdAHQ90=q*Cu2JmyE;uMNVZ}0HSR|u9Vb|9 zO2s3o$MOnZoof?aV*W)RC!BV&(@tuWXJr_)G%7gCu>vQ`DWe z33RTf7Z$GP_xE7*Bx!qRxE(EiIh~K|CJ#4ZR8AL*6ro{YTpNc*NTbbGpoEBVW^mY9 ziMx6J2)&)$@p*0Xq9wN3is`SVsIB3%n3;@krl!SY&26OWV}yyda+|+7gR63Hi&Q?r z!?XkwI-vG?Eu+^|{$lQH%wlc0|L$Q-NoHd_sU9ri`bq=n#Nic4pWE(Ee-SX@U;BvM+}>)NGQG7{m-@O;0jka0 z`^CTqv$D1}wYIkIBdG;NVz*Y$jTqkfItz#KmHE3np`G!2S_}BT7<00-Gu4ikk2#&! zlM~lVR5=^{W6z6 zwrE>G(DhO7*1FthQ7Nmx^2*=-EF_!+IM(cQeWv*~2u6Q3^WnbUj10*tT^eKpy!JkQ zKQ#_dpR=Y!&CY58Q?K0?x1H+#j{^w_$%4ifOt#F$9s77;i_FFCA|aeXY&Ce75eYUO zQ)-Uk#cX-S7TnQNTDh0%P9=HJ?jUJyH)~wC5FZs8pJlHSP0>pEjAq;C&slC^8f+%A zusLb7y&9)QtU>VeUIsO(bOxnN@D9~iQ~d$sy4rR#G8ycn;^tDysJ=F<%OuvV)#c?; zAPyb*lB>}`NoUL=N1ql4t%5`nxcWz(k0Puof;$`liRDvRozAw$%+e%UjC&e8E=20< z>!AY#aRb-NkGm6dy8n>YCj$LJpU8S&l_DASGZQLh2v}Br4#JGdpHQ)#&i~YyF+r(u zz5p`b(IEoj-so(y@`8GCG@)$cj@y-^swQh|5Oo6qDMl?u8!x7cpQ%KYl$7-PP{aLj znIGhhJj*T&YD#t;iPgGm*o$x zLt%OtRULj9VCt_H&3>0tzEc*tP6ab8x9o4|OC0^Vh(0_Qx68Ak5S#N0%%GuYwN9)d zQ)x0Pamnwt1x5yH3WI$NgN2%w8xnsyN=IY;uy_MJCum?4jav4nu!1l+3C^^5j1^gX zY_;J;+TR@DK1u$FlVzkdurK%g7a7#-+4yTB4V!e00Aa{lqO?K^eCJm#x%esZ`^}ds zA|pYiHebn}k!Ca;4@VF!thNzkjMe^f9hy=)-QG5TP9*}XGyE;S3k>k7!YGh_5Y!mA zu8e~+m%N?b0p7-sX1{v@kYwoAZy2BjE*)%Z`(NBb6-|KTrUG?uN!mT@hkwd}{wv_9 z%?-<^L9SgysE$eh-bI7aIs1n*w=UzFV}PG>N(@z2q`toGcjv{TMnJ#6>)gM%d~0qnba&Sr(aVkcYTkS>Z~7HLf5D`i34!Z*0^a2 zpAe4Kh3>bijzeu~1(;FH?=!@vRlE<2bp}X_YpU{p+P(`$2zO-W)fsf!W=I!U|vY z=D#n>%EZwF`ax({b-@BAsn`t9I@!8ns_j2s-1y=_lJMdLHAier0_cSsK`rsm(NT|e z{qGZx&nZ_iV8gb$9e~I#+|gsV794hnnKSUt0xc0%&t-7frP*b7D*cWHv~43Kzv@%~ zd(6U&24qmtadFkC0c&t5Pi7bh#3C)~-DbH^spG!J9U=O|HO4vFzi+S|dqxS? z?NeD)Lv!gEMj;*X0-R`(0N=@^UYFNa8<>9^8yipmj)IChH#0L)!pIWN1dEPSKI;x6 zx+?D!k>6=&HIATX9`1>hPo_ze%ppZZDr!NYkD6h|%G)coJCS2!rGr+cS~pNP3tReT z{dpikx zCLg^7Zm-Vk_K<>TgeZ9lqe!Gwc}yRMY861i7KjhvlY=3Jj*jj$-np;}&utx%VhX|EygWCP|HB2o5 zKh(6|sBFdBwm{Q$x1i(aB|{WJVH19#`Rkia=EcE)ntTJ*V7=HW+Q?^xd8B6z2Y+7B zeO90zLa*%!)YFSqGl06 zDZvP0&gEo8L(3N?+mDr}sumjFN1dkUrLemuO%#n8>$E$ituT7^u{BHQjrpkgbW0$; zKD5h_?!GkL@UTMRwg+2ubRhvH`jnQf?HB>{FZALgMmA2^1@}z+{2pk`zv&V>9j{|V z^=GiQKcUbCLO3$tK7i$HerLC<(X=`tn@Q*dW`Ga^W#!B5liyzMf50~xg&y*QJGMQF z3Yt2KM@Hb7NJ|yyvka`SgLsg^#9u$6SwU0t_X!^`Pwdw^#;(tHNQnPT`1sp(!RM-^ zb_C-3-Ca_hOm~V7{OrX{O`PE$m>zz`87J~KcK`H?#w;l~RMdZ)FZ|<;mTA}vbvs0H z#XPq)F7m;JLn(yMT$l(_?>N&w<8#4=?$%dK*)i1h5sTW{Xp*#osz?k~bpuTsXtxoi zulCQ0Z$^=5xh<~P3w~ZRc&fu~IJT-}3YkrF0s*7^4(V2hLb`8}n3qAA(aUz?}xRe{(aOeIpsDo1{$x ze+r;4U9p3bDn6(gi~y3W?W0&c4RLjS8z>fF$lkP#)DN)Qe2fjG0eYQ&zH}^jlwbPx zF8ut!x=pjdk}R;m5h_z#KUvxnuEq&kyNX#GU1XBb)D(HVbFMPDN2psk)j67DUduJR z2?K&pMNKV;zdm&ugT_~nkKEka8rI!S1AG?<<3_5&_S-k9=k5sIp3*W**H;Ozmphk? z_TMTDORs#%CH~t$vqWL3z7ej2q_C~=43DC)jZ}g0TcCX~>t}@`1~GX~5#INoN6j~c z%%k9mNhpmIjfv8q6Jj{&=hq~V|3SHU_xp=1BW9-@OQcEy1`~#58SZZ4n;<(nI4Lwh z!3+J!hFW=(KV+3|Y)zs6T)j;bLjXHKf$-ZTJY^Mgvl@Ciynvva!%n^ShrFsHgp|4; zh9-NMp`dn-Pe^z=CC>(;eQ*M`JI?6boRdU;yo1J#o9Vj^tO)5R`OW>2K7dL-5)q=Z%<0bz0|{INje|C_s?&gGz#`BxrFhz&TYNmgMVLmJu5S zArtjCFEGcsctpmSh^m}!`}IxiGgz>Yn zT63{Z6;)*+e4i-H3Q-%k&U=mWJR!|d&&=2|SUyL8V|Xhg)L0KK zJ2FVa0I|hBRSxfCxYVq+i;Aik+RyA;=8L7zistMjogsh$ga`kScqhpnse%~pf%((a z?a`Z5gY!tu%{irrW{&4e%=0|d`>0sl8e&>fr`Y?trT*lw3l0pb| z#@#2Ju!T@lcj|>K*}g;63GqMSrc=jD^mx?YFpY52&6ywYn`8;eiqb1f=L9wyUk*lGvpJR02-hPP+Oq?OljZktqSYZvO6XW^@39$AgKhI z+KbM$oS`jU4}Ay>$k6T0p#=T`q8MpFl$TgK|5zEqH662j{aieYdK$iFf_luxTEjNg9g=&8jKd>xoMhE8^YclGiT|@RR0ZorAh5V6VY0v(vEI<+1f z0$ZfV_u#*5XovDld7{+f9qSysa~#L1t=Hs!NqNnxkM@q6bmiOEl@Q;zwKYLw7(^%u zLkiS51+DI>7>MvKgchV1gT;gXWheYl_C<#j%MEp!V|TJ*?c!%!w*qlqIYr?c zAGBP?_?131O{po^OBpxoYI>KRBbaQ#9UBJfE6m5JbjjL9%wtHLRPtm|KZoXAeqv&N z;i=RtGHoqVZQ4Q_)bDD}qS@D-j475Puh|Mi>hQZO(V&7wAQN6hCL9Rmum3(;9F2Y2 zl$|&mU%NCjU(sGe4e00SGCU-C9!CeN^Yx$?>g=`MkgSg-%sU8xJ;C`nR%_i%EI!)-l07=#|+9`$oKJ- zoUPL-m1vb;o|hDL;Bbz^r$vl6!(&G|%`k;T{CP~iK6d-1NO<3<+$^@K*PNfE&@&kW zDYlz(JuABzb(3<-Nj+=WU(%{$4o`d&u0M(Dmq}wow-{<7ZXB>!6C+n6I=1Iw^yHPXwdZT zq-Em0B}S`Q75e39Jn>fPnV~Udx||tvy#z~b><=5tnR}sWRF$8Lk>Te?@t&50SwtQR z7^DvD*~z8Sm-wxs&75XL7D_%BH#7*vZTi+rE{>LXpwiF*vOde^Gi=K4Fq9p*NVqab zH3Sg}RTE#{x3s&ZAydA5^jWX*nMIFxS=>9`c;N4PZ|i~wy^x9_pnYngIE0VYNX?9f z6LR+Ii02>*5YSLj;DdY~Wc+wbwx5eqF7mI!5??n^S3)z`Ata7_?UX4R9)v3Fg2dp{HaPqSrKWQLCO0jO>YaBljHp6@LDA0oWi z?r+F>JO%W;S+ak75}v$-oOei9Xv5Of{PxM!B^20KBLMdqV@ozUw^oS|kyA+sIZIcB zSF>3OB^=b}Y4VbcrrG-Dr&}NB;u*8#LVHylutVt%krPzQ&ZYJiQLCN4hxxiprr@v( zdY{4NJQwBAlR}J!AiYI0!8;+3`$p{_v3om(s&9;Tmw35zXLJ|oBlUN>5PR_(jUcl&s_(9y7<_x^;08pGA28kN!v#*5ed4KDv>i4+$KcTXMV#LdYl0V_vQR?~? zNpR2{M2;aZj#^bIe)mhC;s>~E>>{`FFdFHDsB!gPm)XjAu1?^vIPyJ{mZb; z?#$1o^<~SM{4P)TBcr7gN0TER$|ex`?q}V%S8O1OaSIDS>&0M+YP6FeMhiG%(uHx! zx4+AFs+MZ6T=WU^@YLxj&h|WP`8jQL1{s_EnRnnN1+&9e*zxv`Dki6!`eoW?hk#R+ zSbr}$8rtlZC1vjXiIV8ww%bDHR+4N3H@n5>>MQex#WGTVhYL^EzZkR80_tEI2O zDBXvyJ2YKz{0(!at?NTl=KkcxU`q-c&zfskva6~OjMU8zCepzW&fd&w`s)60flKMP zTQJN@Uaa|(RxZ)=p@Md)hS#MGwH_8x{+;2e>mL84H*{!NkUO)_@CT2~O_|2Et3=GS z%NAee?}#!Dxm5H)A2u5adiAYY{#=$A*&2r5muZ3V$`7ZLq`aRE+fbi?j^Z~7!4m_F z3%%%-W>lkE?fiP1`2j!Vj1rK~*N4={B^yZfMD1r9o#O`p8}D!T1|}x|PMZX(c0O)| z9ay7ZW-dbmTSHrYt{zvrBlq0bD6Y?3p7SA(-C;vQ0*37UopBPhffjGD7h?ifw~;u| zkIUs@35u6yDBCC{90DDouv+wY6i$=&W<+-#K+)zwTe06!hMr*H1F=gRPYIxj4(R7J zI;E~C|A-%+6st+8ONf(9Ec8KU==*O%+_=Z63ls|vdA$3a387S$H&A}da&#$vM17kWpxN(sT zZUH$dn4g%An&CUTm7pXV$Asy2=Ee(|DwXiW*N|NfmkqwS1-*?@`l3RUs_X3pP78y~ z`xx|2NAss+heoAzLP5`e7>ugF=yFW`y1HqXf+=S+ZbR0c5?(XmBy<~2#7=Cf1ibJh zAG99vCCewcp&rRS#D@yHT)Oc_y+vxd=D-%Y=#DPShn~$QMEai+RSKrJ2humT4{c4& z&DW8KKl<8%<%n_PaxaYQgkoX|c)XR*d*~HiU=F1ilErc=FeN%f6|3pi?9?pTUqt zm!Y~Ph?VHPBZvib{F92t`Uqfsgkv2WBNr8&e2gBt%Fy~1vQMF!BbKnp{1~>(FK{fh z76mV)F#1`;+AgGZUSgj}11z-SnOw@|VTIx9=iZGJT*lB;pSlfh@np*u=_#OkN5Kx- zHTiH!3@Ib0Bv9|rYtvUM(mYmWb!u9Ll0~b{l}h}Xw1f#X2=%KJ4)ZKgl3{zP)`Ubv z0U1*&)vy1c15-R?v)fW_L)lRPnK=#gu0rC9VL!(*1oI5!O2it$g`EXekMV>*$ zGpzkY*bfVj3I~QAV^ry1DBC@9G#UJe>(dJIwz%l~I1Ok*^F)*O_P3^Ir|HwS8+;@R z+~8PQ+?i-Qd^U7QNx`+!Z^T+!AdXWQR^?>>3{rbKZF0 zx9;C=qhmD679YVOSDX){dR^;0WM2mJp_xm~5rk5!a4#Vlj&w^8i!Y_6?u{yHwa)t( ze2f#)94h68mQc-yj;{3UQ$RMYoSNGW1P@xP^JUpzjrLflqii5A@e*7SAIRkA>uq~W5 z@2HABj;K|-e;?kz{*U*y;8NqxI6C}fv{?qZ53c^D=qT;k?*tyFH%qsq7c$zXD&yo|x1`Z-byE z2Rc=XDViPGchGR8tKhGHV1e~!hl^_G1l_hi&&jTyjlgr6D^^52;!3wKy{>VPHL|Hq z@9BUuNw1aIS-I(**@JN$X}nJQHUV|hylN|P8Q zqHkPUg&RF|KK(e*D*|13Qm0VMthC)CdA4=m9KTyW@3qp)I@Jr;`;qC}f)I&CCTGy2 zWBnh#Use_b{YRhIq0*6>4@DlJV1`bmPAdO>O9j5jQT5lHvL6d!a4uQYEJd$m`*$p` z4x(Se3(P<3VNnLYjKCvPKG$W^pyLXl`eMLNS_)yU&#EvF82dmbip6eA$25(hNYMV{ zes+OA%ZE6@Od;>e;}3Dt4@*O0gV3#MQ(i|eI%j(~bY0^$f14-?eefH>(NI~Ipxfat zvx&mQ_Iwv`@iz-&;;3_tXhU}G7563xoAzsac=lQtCF$|?*|CO+Ye!`8jse~j|4TU1 zXT8kCJiE0}1wfQM-Q%I!JHF{d`g_XNHXO8Ti(#_!0?oA}C}m)PK=%p}Eeen&YdT58 zhE7w&9En`fR)EJK%))VB!u>fm{}R!UI~!s3v)qnVlk?7q_%pyKk-kPUCfGbU44LZb zOAST3$L8y?8wKED^%`eq76+V9v>&wkK^<6-D#^O1<%!0aY~?FBbTIr8Z>L}_U@}YO zYIx{jNsh|O!Q%^$?d0{ym4Stl0n)4#q&9J=7h(?g*lXP zk3I%fI|qPsnSV^fLc5k!#cuMjxp?Y4`|5q|?c!3WeIola0*8r?kL(`i=ox_0*q z(BX$ptqiF`>KY7;jBMP^lYK}A z+n{8b0{26124y^Grf<>y%*xV{Ej2;nfF=@q>6IJDPSi*GyvLZ?AzR*QdT1}blfls= zakwI`ju>_g3(&q^1)5%@*xjTZ4WhMJjaBEBF$3KJxPR-`wy9fX>YWEud4jVapy% znG6cg@Eh0RN?x2@^1LkPgk(l3jRn=L{Y$eME~SW7MX%Cc69Grb(($-0#%$d^Pt6>W zQB|U1VQtUh-Z-jB75L9%RRgq@dJ>6)36P*6< zzfYTI&l(EQB)ej|!JWJDwQZC|YKEvPNfFz0yHxoLF|$|mgc zw#6Rxz2)$5jm zCZN^1f2N&EWbgO7;W-1nCh)hnR%nGt;XXjvS-Kz^{{vSG1(#5q8$kb*LDEqw#DGu| zEmHTRh|Af%&XuI1lqlj5aked`W)M1a={(t5XMiwO+dBt9^76FniO}?EG^FQe3uYDx zw?jaa_&;5QI}ST9p@_d=>Ob_-b?dX*v1ac*0T>;o*IL8@gdvH|^=y{q%=B4_RUFtk zRb$o}mxVQ~rFux>R6yD~DTY-?0nVI%;eIBwb{QvT|sq+;hOZR!DtAFOI7|kSt zHMlIU(+ie`Ub+b3UexJCC2&>@=oC& zV%K{d)yttaWx9qcpVk(qWA2-ISx91o|LafSp6kphf6m+c{QWV^`ZWe!O3(|!1!vgs zgqO_d9(O`QIuzua#5{y|Z2&?mgH)ggL>seCWlA`xZOrr~ozd^g)uj8>L{3A?u{;@- zCvMWSic-R#b(WCVA=Zm9S~kxls_0tXgugy@|EZ#@fiLQ&N4ak;d?SkQ!RNu<+#nVP zBZXUAr3qZ32R1NcNq~;ipX=bJXDlz4h!R4TAll|c$!F)@u;IkcC71b)J&)9Yv-Yf( zg!BiWoOdawF}OXNc8+`lDc(N^zHods@L6P^PnQw|8t}@1()j7f9p&NWjD=T((3YJ* zRg|z&{101HRVR=|s)S0@q&+S7Oyr}nZ-Dtvgn{5L0O2Wl|o zt1~${c+*GbE<0T_n!X{$Yy>Xmgan-`TH_|r4*k|hAmU#P^Dg3ba6ocDmz$o5FXf4h z_;K7@YN@V&hxtT|k_f=p?jw` zNTqc6ufU3)kcR^Co#AP%V@-Cw*8y^p2p2L)Nsn$x=qhI9YP6NZ>6;T-9zni_922&= zf&SJBz^;vAm{*yC+UP6JR_gN~f>()G0L+LTd1QC1+XqK?EDd%VGHa`f$nx~$2JU=a z**V2n|B-jddz()Pi2|oNw&ykdJ z??j(&S4E5ki-i%{am!aH`eEfrwXqRz82u$ILEKrV%{xd;)hBpVPcsNstEQxlhrX7u zvdXDHp+K2E4<;+COk$46(Ca`b1J$=QMF7R(K@*5|51K!3^2LYPLWXe*FapL#X>C}fh$?Z4W34!mW=bnc% zaA!KcFgky{gYWM<$Cv9o4X+2ZZIGfk_P{ywgn`qSMs+ikl*aF$F7azM`W%}4c~dZ8 zrGDh2MIe=-tviNVc5EOX+~5eMNpMWiI9hLzIe0gI$S>Fb+DVF$24A)@KZ#kJ6q_Lf zF!Z)6z^I{f@K4X!n6}S&8kXH`LKD%2A30*f?AoMkKDhgg0M88@+Du`^ZCM+Ui>K_2 z7&5C36OzaF1VJap zgoGUHU-;=4>pqF4-rj`4e`Rk^r@qRTx`5gzA$UAYN61HLNb7>oZfz)V|2;0w-J^y4 zQXj+Kz{@yYwnMc>-@^U!gQw?ysW!`R`fC=w=OT~P_x)>Ai_4kO1^4mnn2vLo_JsX~ zdxchAQr1-2lNCpin()R=b?TG>g58%-voiD*d_5mgQv5}KI&^e#N?9Lnq1M+Yu@WJ} zb4T3mIF^=88S4qL3*AVuY6HNdU(9q8d^60Y%MuUj)kiRdlKHzKC4lR6B;gHRf}X{K zT7G|JM`vKF-ozdXF!a)%4LY{>T1%9OzQ_)GCa;3>ju$_hSKLEl2df)T5t*MzWPmDe8MI(K+BF&fKuOhwB$UF2AL8xvB*TG^LA%4(-8S*R&PB?eJyR7Rb z3LVFOnqOghJzX|5-O**!^?mVqirMQPyP%-Ou`+I{ z5mHC^L<30+4f#(UykBZl|F)O4G&5(_xCPSJ4$Y69{HlBIDE{&978HFA>DFC`bu$o$OE#%YL#8GN(X%IewB0k*fs~ zK*OqS&$3*K-!aw&&HhJ7nkD zo64!|LyyG>@>fas2a?3H+M?| zvh43;>yls;Ad2a{%YAM2`X^MMe&@Vw_{ly|pAS_jLn}eT+`{9!1V(64++Ej?;`F9W zuOGcNocGe;g8xCa#koJHiSoMq1&X`dJNb{7&6P^b{!~RU=gXt%cT?sK;){(>Uxrbd~-BSidxJDo7CC2s@X-dI2o z(b#SV`75yFY%0|X1x@#-LU|3fV5DP)ecVCO6IFLqa)1V1{Gmbo-hIB4Y8BY_>pju;^ zceg1oaG}ug^E&>fOqRzKgwgNFH07)nf8t|a2pJYYecAnQv91jR5Lbt(WqE!m?(RokO&JVROyU(p!JcvJsac$A)B>ynM=Wm0#$m1XI*r%j>*9=MP}e1+C1Q>^%?FSaGz0gGc-fCi`iBhXGUVA~!`uI1P=6qK4r3P-uC5g5W zax$@Mg|yQdf~H^dY`|sopbFBCw6a?hQo>t$QKLVcQkR%T=5s>|13boG?<57Z_xq$_ zEvMvrUd@1Yn9NN{@`m1`cW>5A6 zS_nqi6?*Lx`W{9FGrbvrN_h%O7k`{}h4R}960~xI;BGZn^MJgK8Rj8|n)6pC4+muJ zv63>o4U7_&nq-ePY;8%HQns_Rwux%yNxp84b_7yG!`o-(`H-^bXNF?s!btboEV`-R_M8+{vF~I>wG1n$}KEPNJk@ zvIRW~&<+i;sPh_)VaXBBo;QW=?5Uw!sFlT>-JCw_$xpU-D%6JW#W@Xhg8LS|X@_^9k8-)0eh)PNpB^2o!5d49qrX zm>2GolKInA3#t54q@)1vBr2077itcERV>S%w&=1{#$q{#r*B*3l2j|gnJ(dKyO|8( z9K-*OryNc34fPX)>jY7^e(Ek!Pa~9}$(RgmLSNbWIWF2@W8Wg*vA&u3+E&AM43Bf@ zY9R67on|jjO08KSpY~XGlq&?$cQe9q2^qVBZ{u}cN#uIXanbgRZ%cU}2xpqu!wvyg zZF3^0FH_v{B`N0GpEFHKX@F%xOj7lUs_%stmp-)TB86lK3E>u<~p$C->ZEm2;i!$y|Zb6CG% zMF#s?mu;qw0;`HIz@u3BO&~=JhBS`X1(fpl0V8X~*eixX0tJvN0xD1z;8C`j#5Z=mCFFU$_LSdotITdKip*C zL8-uujkK?!^aY}vZfT=8w{Ur}xo{^_7vO$acClDYIIzRu6j*npKzbRMzNw814L_Oi z{lYk5x1kR=eMszvX3!G@+txH$-B}n@W>`puJEPyjW-3`&r!Q52^hKBgK2Wc&`2$?l z?A~^f^~@oiaHC2uGQ^-K?P?4yB0a2&t;Ff>&I}h!Psi)k4KkAPp@{A`E`XhJ<46v3#VI5@By{* z{M#yJHnpzFA>!(V$||llUHl%%|3<5dftG&8Q)R)*K)#8`E)SqP&s7Nhn-TSHb+m(K zCIO<=((>gXyfzblzHj5P%>U4}XmH<%*TQhS;372-d}m-3>RgaKqe?4r+#)|0VRPIZ zRInG+hgUWz;zArOR9voYhsxB!HrISNDZY#$Xsa6coCA($&&8 zM52bRr4V`WMS9o}8x|Y?C&*9qkLYnGy-Ojur5Z`35>+DH9(0MoE&OF1lNQI9XtH2z zAov1ex3}L~vW>RT&u=v+ID)o!+vcW=>49cgR)q-Gc|xtwsEO3DL`Mp<3{B$>H4C8B zEYn$z#vqt^mE^SPI*rTHcS-;IfVG0x<`%=y?NLo;4Je{7T+QR*RR{<~hK}k|f;i4B z+D{?B?6v^9O<;(NS<{i=sgQ0Hq+s_cjUfVNYv4N*qhh@-x!cewe5@r*;p!Q|cEGb_ zXmxcfd+Xtr$s%!C>S@pOkh=Pev!%eXm#1ZiAKA?5&ug2E{SiNqv^FRx5Uaz>2cE zxb$x}4S%;il8t$wKP_S%@*}9K(k21^ze`ZSe-zfnDBG^=oP^l@=Tq8Y5w`duG}GrN zAANoO*0=Lt;#Ts~J5YBLS1A;xLGWwk;uHI?%&j??^SQRAwtMrhY6Yx_RvrK9=sn!h z?)Ux~l>cmIOd0f8Z3aGyJpbuYNkdHA+7VvHbu->3N~9H@P`_7GZ=Sa^ht8#T>FBcq zexVlkH4yw^i(tctT8M<5i~x_MW#Ayfu}#!N(X6zR(h`_klG!u|m*k_tT%KU_)(TKw zXj$U}>$Oc06-z=Wi2@nnmICwZP$aYa4}%6IK_PZ+wm48*v?|)*a(u9g^u0|c@gJtn zz%W&p@kw3)!-FFjE7X`7sx`}W2bFBVv~I;wb^^&2t>PZ~fO=j&OxC&e_Gxw2_aOUs z!N|wSDM6Dk>5PDeJ7gng*hxnN-+fhpXWwv*f;3$?3laEn-)7Z|edN)T=wUGL{5nBg zeC$H~?$0383yy0J%p2iFR7H7|lLFF*KS5SuA%n$<0*OC4myuXY zRjjEMq0yw>3nuO?8Ci=G57-7lSG0wN`8dR)6#3O?57=aRvMhNJaq=kj&)bIhld%^J zLojhgcvSr0v}z$$5-pd!4Go`_NNsIF63GDBPYJu&lys>wQ~TE9+5#`RrrDosDz<@0 zS)_ng-!yqY)M8y}L;kFq)A}J$u5*k$y_&@(TbxpHTpD3bdu0{3fTZ}=(&VRcoKKoX}YQVAxL_2BYLKX&R zDfFiGBM-~H&&Xi%*oS4I$Sn&|QXe$F1ZOV%3iq5Uw$lr9uhht%{c*Er`i-MC5m^0DR zq}+W;!*@J|W(~*Q_A2Kznm+_gG)6E?0CEC6;faH|cIEzv8a{EUX`dZeTHNaZ$S3|8 z`sQKs^sYDbX0l5{(_um|dF>2#7_*KY5M(?t`)P$edG@S(;VR;Bab6U5e-*?TQyFAT zUCBt@Yq3;(dtG-tX0|Fzw#^2Fr!2MKtV;J^Rqd-0p~nlGQT}&|g3LIxh9l@50Em#0 za?pUenhHo`%RH-+Ua2Sc0S?Q~Go8l_x{;=?7fP}hJ^pe|N{!uI3g;>0o1rQq`-O*S z_&p9Gh46u&32#^#3m2U6m%YpR`Rbih9m2uc=>_fTGN%mM?ZFnR8^2@T{NA18q(kTd zA(3Z#9)@`*ez>RzP6gn`_#|fUl5M-263tI#E`e_F%S#vwMXhv|u zv%~(Px?UQQ+RnehgD+7ihNt*Dd=@P)ccrjG%o*yNws)-QdRoB zA!1Qd{={X~iVsLOG4yAfR}52D5WUCMeZj2BQFiKwJjta+)A3@G)%&j}Xo{3kbMK)wCl_=h4M;IyQpytnp&w`-j&n*>jc>rM}uR+ZGrEE3L!Ea?C4w~E;oR; z&iV!Y;;+O{imYC2VU#4un6)O{mTm#TI(g+%qp+mEjtkyRgJQ-$+YEfvv1@I}Y3io%<~ z?DmMr5zd5@ug5dL#O{l{xAjLypfM||&{pq$Pe_%}uONglJwfSXdSIzJTT{f1ktyEp zqE&zTg;Zz5WHP9|HZK;BEhEHN{0&LD#rVsw}i3nJrA-ehjdVQ;iCH(exxRAu3 zKmc^jJtHZc9QIk;uHYWWuAaMrtX_OiJ!6tVk*v&jaojK+lKA)q)MnR|a0HqLX5e*f z$?23&yezQ(Rf;&1l z#L!2M>&mr>sbtXp}e?vxowqeo859W4f$r96M(troSy?78XZ1cSz^(5M$&*d z@~n@h`b`NO1j@M6-xdQ~BB|P~0Aa+G0*O_yuj=eS;jZsQhdqa$o)A`LZDS^Wp^Jx( zI-o8)lL*<)`vRwrv$@#|CRWdiKY8wNvRz$#yv!ArU(s&>TozsTUtKrH@n&r)w3gx~ z!7bZIIO7>-$oW!q5km$Kc>}b6GR!$khs@-fV16iDRgcnV{6V5#f~kgEMo=Ss+E6Si z;;re}I*kCa`z7s1!oEvARsLiQ-+OJhJ6O}|EJc5-`^*q~Z03FbUde}2@ifcvDibX` zrDCHFLRhxn(nbsV`5PJS&wCq=*KA+&AvvfeRL6wtnP{fC_a!G-AZr0O^uVMhaPvH@ zG#0I5{CPHP^P{gREDJKDCUgCM_T0v^#uuL+&0DxK>}Ok1p~p~pqN3VSO2cZ1Afn6EoWPrx;Fj~p2aOH zB?5H?M)$644P(=1KvZRl``6Ae6E)%ONk+f70fA+HzQ0mbZRZjGC@;>NW!>M;9WnbC zgY>(_;lzSiO_QOt{Ux65W0{nihCauS)*b>o77^@#$>7~_vHlC<*6J@DMCy;$v&A8w zM284!N$Vy5$yWacQST_glbgt#2=Aj@|#HTaDM&h)n>C=)N`~jrMZRX$pUHs5^bJ+6?*<=u6k{XxgPoFHdM{ zE4Uk1Wlwm;zlvTRDevzAzv&!i)G*gg*7KN%;H2OvauJMR>86( z=P<%6;W5Ui4->EcG)YgzI24rm`tMtILMB^P}gYhn$WIeZFLSvtcV$<~53I-2fj26!v z+$s}6o)TvRnTVDOLe>E^9^v1_6eEzM+a%tP;?Ru53v?&vT~$ozG4bE*^(B6|G< zPm>Wdg;L@sTiY*1U>>BRK&iGL8~c=eJY}>Rv)7#;V?e^0=YFOgkJtRW&|HGBRs0tF zd%}vtk6cS+=L!aWe@iX>YuhIZy<5}<5-C?9Hs4|7@8H{6@=xcxhYWO*#(^o z!1AsvaN4je5%R~ffo$oP8&qKxUpJF4=1JsYL%beD(czZ1a0B|**9V{9yV<_vLe$PN znz$*m&9s`w#Ty4X#c|ffgy7X)>X*HkbRD4mv;oK!LL~AzLMZ$@4Y=_S`g-QoWgSb{ zD*T7=92ZIwm2vIKtbI*w^8yTF&C7Xf<=jyVb25H>83?V@rc~|tLImDn;3<*EDE@V? zf)@0#z?71fiJ&4tLhE|y`)VpUYT zhp2Fi4Gij~P0l9aLJ$g#I`HzU%=LP3%V)7zFkE--lG%zoLbtN(gJbTsQtTe07B3a4 zEGMT4y-LxmYAMRXZVJiLtdm5;7Z(9cV|v7yTIAGSySW<|D`r<+@3Qt{|1ujT3@<`d z=9(4udYtA<{Cwkk^r3&Epy>Z3dsHT6uZwORXO0v<_(IL!IC9^jg~Ib^p)`|9&=bE9 zt(MKhv@j=$jC-lPgIB$46^B&VXt6R|QT3{~$XJgS)sobFF%4l|`?e`lE z(hc}CrVQ-?9k&%adgs?UD4rEuA$bpG+@lVS)e&iDPP<3Hl4P~GMXR{^7^k>yG}Mh& zq}O!8T#?HUc)E@G{AbK{%UNJNvQPTw-vfNrqEM%KWTpz3wG)T9zX!ZR88UN<9fZbS z)O6apUla=0Q6$3oH#XN;;MG4w$n{Kmf3_-Mh@Noj%nYy8nHpXF6_Qr(``F;K)Zi%m zRpbRGjo#Io#ZmmC;J;+y6ZGqE%=67;R#SlY_yvnf!eyC#dkIQaCqj`x%%=In`yKz0_~AN*tuTBcAlXc+2SumQ#N6Jp18><3yG`MKBs)S zNv6)RoqrC<#SY!;WiZBqwq@ph|oW3S-?Cxxs-@!*zGH4^h zOt|nb6^-{1CLn4cTOd`7)7=wn`xc{w?mt0>i_~ z%PK;gWMytIQ#ebvVvplU_NOd^q$rI{ZdvtfC+bVRmpqRAW?xipHVOT7$x}vTLyyXx zU5%L+ha_n(P&A3(4b} z7n|msD21|narrPUV16dq=_JNw)u*x&iJEErkz71ivplRQ3K9~O|MN`jG=@DdNtp|{jgF|lA)qDl5K3%{aaPtNw9t8mT}Ph)A82tNL} zSXqq*mOs_ucShfBuzxI#n8`tPmp};NaicJFwA9o{Oic<(bA$O>Al0y`fIrP}5dL1C zR!m${mb`WCY)AHwH@y zFSb#C^7z~#g!Gqn}|i&Tc(gPK+#Jd0&dG z#&D*8dWw6y5^-u;H{GLU|27Y}9cMb+F3OIIL-Dpo%s7+ySHnWf^%ZeBK7(kR_gLR0 zMwKNdzTaJO3}y1vmX`Q>K;Av>?-B@rZmS$^VgH>UfjQDtT268Hw%#8?@`1!ei@~Eq z!b4}SJ68CAECB8#LsxU}eNJ%3))q#K6X|4|^)ZcjVojEidqtN1qLH*X6rXqBq=KVr zl1m*vYk>zaCAU&TvfH=wF&oc39ZxtV@ef67A4E?^N8Re_Ou1=v`1xW z$T|DhV}S2{>kZf>O8N1uHi?oQNLh`{wJVJoT^+c-Fc{!G3SGv zqdc&DHBUp#*%Cic_>NZOYyVnXKhb0!tp=&^-E4L{<{n7nl#qolaumGDP}f{a(|V`@ zHEw`?TFsaBey_IgXn%^rHY?jXYLYe9tP<_o_^ZR^kovw`z57gu7&%xoaZL7UQfB!^ z+i)ioiSob+NPj}*Oax0>5i3V)GK#NHRR7GOf?ewM0UcwbAeNgiw(jdC}~S5^J9TegLT0N z`*INN?l$X_*>atSshoISm=d&D^;qOCIK+?B#K^+I;nzsqv|-S1e^00h_TQ4G#8`<7 z(uuT*!kvU|X?5AO`)`SmadP~6yp2e`2@-`_qPaf4cG0fxKmj~-vA9nAS98B^UBWb3 zuLqDw{9+DP$s_fKvMxQRq=qrMv834sow&Xa@LBCO_Pg6gUDV8a;533)m*1W7D{dzy zHnIP*pAWxGZnBwDyFaP?l8tf!eK|U%>QO4JDU;FkluMe2YZ#z!&EhEZ{Ky?gnJM{I zC9^BS)8oc_*pzg)CrZLzrA}W$`HVM99=@VA*ymdzl>`Y}3VQbp2h`GNz*kgUxx~M{ z`FLp)W!HvkCv;f|OGtpx6W%ay1ib+j>eb)eS0!zW_YYM2o^C0W`=b^Euj=Swmjvel z6_=;JmxUxYMKA3=y;T#D9;o7VGu-vfsMgMo+_*WFyRtR_y|yP$(d>sio|9i0Hmf&F z6~Cfh*kt>B4u7id@!3#eU91xC^c%W-msIygj4=`WtECo9rBOvZbz!9S+^pK>m>~~n zIv*5$`aNP-+s9DA%$6r=ZC9N%;l1hHKysn3)rMn2gj;^M7%J!clzVdc+HRG$Fizn$ zXq%KRw>?LuKY<3BcK*-q0-*jnLaW*PbYeqLDpH6umzHLSe^>HxY0;*S!F>o5(e;{i?S2pnG)eY-!+t4-lXDATHj&6LaRKGxE^9$LO&OtCk zJXXT3ei4ISUKesy2vAYz5Vt;5KDeiT2np6$5r`)oH<5Eha09P`@}_orEKyGyST5%o z<>Eho{^x#H%Fp4ry{^*R(>VAA5Bqv~@`X4~`bC$c1iXJL?PnC~l ze?-$RL*ee+w57=XZIzTc3B)14?NpuX9N5!GMYiHX``sQu^(fdnJ1FXn?|PV@@fD{s zuRA&;Ch1uDE}?&1B2V{qbQ5=cGnTRR{2e6~`xT!h8xVZw{A-{NdO=KW6IZo-4lcI= zkB{gnWCdl)SJ*KDzNAtABa*KKkf^Aewx;b<(hMM_wXm-$zS8kjXZUNp&V7_ofE0|g19h3H z8rGYrn^Rs;!rLW1kPkRgUV2-;qUPr8pY|%ILXy28Xy@?B_jrOyBi_yrv28w=uLWwJ zJ|=fdGRYKH%LjPay1E2(<@J*Om?C}~FQ1MpH)+3lS$uLC?vVNWY}mj1tk%{0*rL?b zT79t}>Re{=vY@4(Cpq>?{5r(m1dU)o1E`Zwa~svEqq6jPQzN1Ur$%sL+!=-0eUeg6 z_2i>-d{{4t0JAX~8(WLHtVfD3gHyFTo~jxd`!M0GTh26()AY-?Z}j zY)CN*Bp!fb35jCavxXezUljty=w(f%KByGM(tT?_1toRfPNo-2c>5Es9WTVB43_EQ z9NHaxI<_V$dp9k=H2@CGqw`+s!mnO4VX7pvb0TUX`b@b;}p&bGrfBUa6t z;%Q-4Sp}Rt_FMfZ4dL5!Sipb5qlbCI*(!fjHzJKd z!#Xo$y0_f6|NpDO!!O51Vzl-?K>4B1;-!X3op_n}g=4g)c2U0nC+LpuAhvLt+>vKV zoqGqnS@X3J{#@_SN?Z79>{u>`6^#ylab?(8QLF`zP{G=5H0U(_0(G!zU)3VpTdjxh z53lya{}WpEBL&X?Pu`mbNtWH$eZPC}doTCO%G%f7d#1Yw1I&sU00aTb0LdXK$)pKN zrh*|a4A~Ki7}%d=f3PAHVaW=I9X95RLt@ypLm^pQBykZ5kite_Far#L!R$S~FST~< zxi9a%d;Q@p`CevLccW*z0Y|@xjLNFYdbw2Q{onsN|8tJtquAW%pfZOZ71^8YJdz{6 zqkbn7MEhX(GNQ8>d@hdL!FMtkX{E+_88H$Zk24R5Ek$y)Ha5DHsmZ!vSj;ECvxZQL z_S~^}B-yTRw){Blci_0m<|dgmg& z-a~D)_^Slbw?9@FB7cm+5nX*0`1yyj`;d~2%^kk}&DZYDVkA{KG-`Sd`|)QG6VrH? z&f{IX5SYUG0sgEzZOrZ#>d48VA|eN}%jIE_6nk?cBBT}0YA(rBO7?sjOGa!ApTVxV9QLPRpQ=+IK4g+LR26#}U}N{v1C%5(VA zLL=}8FCw}SUV@)Tl0hwGXh@j8kjzL=eH~p)iuGOU<>~%pSyG9g(xLRT;sZN&6))r> zY1J~QCrLOb130xkG6&l<7fzw`MG%nPUZFF8BG!w<_bKGzMdWr`k-?%u8p`^K77?lV z@>jk^t=9O-K8~O4@t**514z@IH`PC8_aTA*2KZke#_prt?()^Izsg^JyfQ5M$<6C7CX3uJ6Z}p6Ao^JbIpo z8*U6zfmE0Qok;MzT4|De^8m~1_4Omsq*VlYCW-VYf;KWdj9@LThwR!TVm&6rV|QOe zdvXcsb#ZpqgN&A3k<6`|0gM*exkv81zTf{_9lG(FGX~R1PFDx_g2k)#{;yuQqRO^UZI)2GaiV3x{nZ zmyRO~MfCa#-ulYzBW$BTb$j^hH?dAUiu>N{NaYL{k3)8Ok%6Jfk0Gkt205x$4ceU zlU}P8jH2Fc;m8$Gi$}q>(W}>Ruh)P4#--Cj?`&cnIfY)k9@>kD)VS`*?gP-XM-a^# zvfB<}1`BWD1l?mFA+vso{EheUi)C7;pA2w!uSfpoc`~=I2L&fA1QKwX2V|<-bSLI9 zmW9)(;+q?H^d=!GpdH{wV(vXUMM8c5fIsBm zdHjd3y~^MI!Y`7^I1gh1`B{Q#thKv^vF@lukJO1Tz4WC5@Sg&I?O`k+H*Rk5Z~pCH z+_lBJERSOydjwG&!(Y3O-dGK$sqW>_8nlm^oJP1kg!Yl)=q?FzGL1b8Os_OmoX+}l_-ey&KSd4Sz%V0T*h zxe}d;Ike?q`EIZnh<-+RL?TBWlAX)bKG;WlZi?rKv3e!3Y@71LBr{7#SUP!%qh}u{ z_vlA>Y<`By93??TID#@idWKrw?%~40NktrdBAZPT@v|Ds> zg@r2>CGGXad5J30zbz>Rxfsx|C@IM~4&%8TQ>7BeidmRH!Xr70QZ9#M2m3wG_Y(^5 zEba8!ZM(z=27(n z$QEdS>}T=EXM)k%&1(R3md}7?QGD-J?ETHq2T7$Tc@h&i5zk>{kb9nO?2&CA;O2`o zrxuXDPqtMHaQmT!JLn{Gl?i;;i{ZOWp-6dRg0aa-#w!yPN@FqXB>-PY_CrlVu(Rzi zy8REhj2BNa3KkRT|7X0`-JvTHLUP<|vSJnRggtwpey0nXvEM^)kRK~#=JYQ37wWzk595h=r+nqq9XGF*&^t+LO z4+^0~(^rMZkd`LsWVDY!hTTdqCM}^oI@)lZ(pc9dO->bM2 zi8eh_4ntW{u$By+a1$Bs;eQhUHk{!7|G>kS|Ker-i@*D;4{I0lYXr*l#)k%Bg~u@- z!pw7H4C@=)yz#@gM;8w%5z0bN%pfPH(0e<$7v2gKzDfV75AvRlxQ=cIbFhb8IsqFu zM~mE|X`}H;gx5oOU1Ya~bMqoSrEqpP@Wy9wC+6c~;_TlFJ~=8eos%5RB)Mak376U6 zXHK_8X1k5=B(6&RiUB~XV5Qy+*f#vzc!XjhEBBjz8<5N>)BavYOdWm2A!QC~< z9kooLRHO7CiNc;N49OyMr~PsGH_Kj=bt})d%rfnD25u%&BfBC|TnG~eO{n#V@%>T7 zB<3wlYV9ohU9M)wnew;L1`5!jr^aup-{ z7V!i>7g7dMwc&yu@FR&LqCxe#NVkW!oFL;R-bm=Uh!BNR(I1`&t5d+8B#K2;U_@A8 z!~lFHrToe1LzLqDJMVL2Ws}nY@g^5Ab_Qo}gW}~M^>Oh-iieN_l#QP&;dC0I3Oa4$EyAuO z(`%CLw(zqBI^}7ElVi-WsT2xKmr6{GjWIbhLt(6pvYqr!GbM_YvHw-g&QbBYVcKCd zJ~}wMS>v;97b)v5COO_5x!{J-*JPoZQgzBd_S>IS%_>FH8}^F4Eoj@`sS6i zfb2uYWmEI~y*5;LVRjj@dS#^MLr=^idmUuEky4`@X=7ElDgEf{xHC)G)oo(J^U&ha zpQK9i1bx^+q%GleyR;h3Ct}V@T)) zl0H~TqI^_HQDV{LHcql5TEEmnKC64|$PDXFfd#LP3}=~ykSGEuNQ8vB87PcV;8T2m zvX58wiSTG44sREBC0V1 z>A7xf92ncbhdceK<1jK9;4;GCJ9)b0DT-^C!*0gJcJNVg3_7exu^z?)#IEl_ml7-0 z2MG13m`28uCUkt3QvT!!bt$=W@haD@ukq;VqaXff`ltW+o5249H1E`fSa->P93gPu zeW<#RR;$G~|LS{zKr5RIqG+e)0Pr_gFtvlAu-vCzO5Z;y%EJy}rgjS&RrKrw!W%43kQ#g^du{dz<~Dc!%N<6XPL#Wx|C+Dv4AIOIc(che9?-E|Wn@ z8SccP;B_h0JM@&pPOd~x*_7Q5dEZ50urMJnktiGqs4CSNFf2M8E*ggvjJuq|N}ov# z*`G|C9(&qh&C0VF6_MyMngpzta4Rv%g)@2XNKGjefo>z@FHH0tOq_Ev=e1aOiX7`! z>9a54_^t>!jqv;?EGmAu5KoScF+Dbh>v`-q8|+kT)WTxo`5rovo){MqCGedr-LXju z8`m%@G_o`r5yN7kor;X$rbuv@fa#*CJi<-L;B;297=>MSR5*TOqrG8H%U8bkDkn}I z#eVp>^i#memtOkPtruVX;%zIqyd8WMek~DoJ5XK;@`Z2 zcj=uVgTu1#+wLSTsG6^F~aV_2!WOsHim_EjbqJSjF8;Qm)Xk} zX&E$m$TIzW8@ZNGkdBQMMX)xb*Kw4Nq!?$AsxIhR>>9pd)QMp>jQj ztLO)EA;ZZo8NqFdYLs~Wg@{rNRhsh&yAm77qG?*0)HK-O^I`zDi+F~pm`s(%IJ>;e z6Q@pcYH^XNu`>Bw4rN)Xjf9^o(JjwVymfQr1|#)aiS%pUhXM~tH5{x{D3#X)0ho#;vk z3EzQYlI#gageWDu3o)wO=rh;1cTXO)*oeCbL&bPVAvkZ3aUg7Fbcbov3so11yXuE` zgfG#c1^d8bO+Z({nSzc)3YhV`+;9pU*X{s!FrpiYrkn<@>re@9NyThsoVm(4jdq)z zYL(q;l}@)yLpikbWlCE&`yB~7OjAt4T)MwmFv-_nhMZ3bX(c8DM|L5}5$jO+NC;_3 zDev!8R&-v=MmP?_b`ax}h)foLcZ;w7@t<+>xBu3|7&`UWfqx3LZwF&pcL85503Uyt zUO5A7@6~zz^|xW?7QUeGH}rtuGdYl5Q){|5#Qv_H(|*>$aNSY&_a^;U5cFp zJgL~u6sanUg71;jE(*wMKk$>10x1I@s#M`P1f~*)6$~*9Qr)hD6o(cifeEco90@I{ zs0oKXvW#gD+xUIg+*C2?!#c@ga#w}K1o5?H?Xqv@nDpBCI#CBnyWU2SR_bRVEZQ$7 z0fd&zWH>rI!}8P=H`+ZmJwbW(G99JxJQEjx7C8{bzN7~`JM#EHM(9T{AWN`>F{2Ge> zC~b;w8DWthLn}hy3CV%9sY#oX@i?K|ESN5yP;9F#Rh6NwY_yDWT1MO_>CP&0$YtR5 z65)iKkO~Ei`(0`(gC7|Yii8Gc(2s1yb4h)b{m0{LL(R_NOwRFq$>!YAqb$$NFkUL* z*mi$1E)g9(WTl^QB1mplhC15AoO_e+`)G4Akd*m>yA7>_ZlhF2j!z&bXHm0@pnbfn z@8ey)5ajNtz5(Y~zwzCNRaE%P1nB9ZFqU-~{}FZ|WgbHDV71ZW2iJEH<8zq$!QmwA z{UXl8H?9mjk<@}O6DfOE2J8%ec>;goB&=S>+1(uAJ!Gm_q$aMC#UuQE#&(!02L(gO zpkQdzU-IP8u705NNUFh;WOu}^4B++=RAj`I3w7J1|27@w@s*hUAt z=x8BJz%+!uOXtW;6Sqygl zlA4{NX*tX{_tD0X&*eCt%ds#u#n%2lmsVDS7DJ1WG?(GmB#9ms`0)GGdyvFMhtE0D zfh3`0k-VFH6=za%L1|fL!&G*^;l`0eC zV?RA8NeD+qXvKYmvHo}9Pz#NbTkB}<_k|Z;I0F3Rs0uyE7bdzSzfXOz?;ClpdF9pD zdGF2hSo2GuWRN``+DF`P=t@MI4<(U_)VUbOvNM?C7!*p7E1=7h=&=d#J*3ye>NF9a z8}D2hB*>#3u^h-e4{uY<7Z@*=0`vspj1O%oYS{vo)*uy@F|j~Uq&k6g@ervL!L(h- zQ0I~$$t|F$J*rlQESedwL(%yCiKmoZdqVIiWXi%LJ%ErVZVxq}3~xV{%>+eU2)a^H zl@2Xokwvp$x=0aNxCb`w!GdUEC>xK0(X^zZDJ(o8afL*MWcVm(EVhmruoy`}XCjzV zvM|)7gQI;cblS2c`uik9B8ERVQJ@w=P_=WktqgPRYOJ(3VZo77Qq1MJace96kV$he zF<2JrK;rv1iJG3!hnU1|he+(yV}qP$lLc z9CYMk+cvW^vy{e4WV2bMlz5&;tJR`ft#WX1fbaYFP2kh*x_sxA*P&I%U%7%>IEJt@ z=;}VEQMzf9 zVj~1Tpp0SG^ze*eU)nT z8h+Th7-UGNn^e~n%Ss|bJ?um@k^?(SM_SCaYoQ=M5P=92r5*;IlWkdez8k;KViG;U zgNVpFKH@-xCaki=dZTFCH#CJzYD$L4^-x{KFRp_IP2@{eB&Em z$F}d=9{*>7|Chk1=FSBq0biAPfX=(V@3XM5z=;zlSYAHD)YMd}NVMB6wzjreU0vb& z_3P~H?0o1We#RIsUAe*D)=scc_j-6YE}`a@kW(`lCxhPK86Ca)VRRqK@3VO*jbW69 zuq?2h;6v*6kh>cJA2BtL&^jQ{a|Nt!3zN;`m8TG`8nW9Oz~4!W^%%y;l~hB}ln?@i zW~Oz3k&3pRrDJE%p*F(>I*9^k8=su^g9agjXM{)@AErcr5gyL~EM^SZ@LVS9Usf-1 zA@sxw32-3{%2N2+4~g{fS;iPvVhSrEloSYz9vG@fnOf>VFO)1I$?;=j!0#9G2(B3- z)Wb{?VP_EIWrX7df?uW3?IwDC6Wrbh8ic7;>%95a1)hKIV-Ga9Bz7A}yib)(^2Ost@D%t8ab3Pnw5|g1@nXELV_~DTL$T?`?zYekeXyK|l|n6tYl4j*Z85Bv@gr zX|Ic@?#9M_I2rWBEGP?gupJf`1b76dU8y7z>cJE zpCyLHf83=_sf z;Bg=nZK0@PQxg^i<5Ms$(ukqOQJ6G8670YQ7BFT!cB~vF?Lj=oD`K1Wkwql@>7G-d zCnPi7Mqs8Jb`V76&jf!J!GD%g^n?glFrkA|8Fm<>`4Aa*8b-)OhiLj4@`(Oa)?r*o z#HEA^^|-kBevr~BB%)A67R&t+cdgOYJxsmU_bL0JqxVAa@^^m7^Ur_mz7&bUHOv@; z=XqF`LMba%wCeRbTU*=A%uG`#6quTtVt040S?d`1!Jk(@E?x?|J{S=JRW`Y zQ9kpT&oVwf-mmzz8aq2XRI627*CpdP@e4FIHpblCEcJT*Lw(`4w)gm>Kl$27t%2#Z zFr7AHtb!~Q1MIZhzPBP0CA0~FD2<~gXOLs#$Xvdk8QpCo4t5c(dXQr-RiHw*9du!qKgE4Dd`G}qVW>?6EQk!CA_xl$ z+HIkdp=Kf~g<;_k{X(`?trJ1JK>NYy z?Zgand;*cl1)tGg7rlE6bFkYtGrgV8=f^zijV6zsJw>@(`q0)s-}lL8v#D;w7(<~@ z;L%4PPfM5CcMzHJY5)CK4sO(qboLQM0pD{4NSJ&`l&r_`%gC@!F2m zeF%XzaB8-~k*PpP>1%_Ml5##n*YkOEWt+8wCQ1%2e!)}4^bc9nwwvc@o}yX0{~ zm@cur8RDIJY{xG8yY*n=C!(lLVzMe)Zv*crBLqdGDH)#@l7>+9P;4rNjb_5{q0o_( zF!i`ict4gl6tu^#%2GBxWHfA&^wpC6=_>>5+Ic(#({2+L`C27@AHa|Sd=$WjfyIgn ztxO_=#o(Nw+W;Wqu7tkZZ?sV`A~u=qLs{V{w+Qn^A_&tAKw44f5o&8haV#LkeIMg_ z!KK;2G^+is_C5)HwKja`)gSR&zxmhc_1q6!JdPec%F@yjRE zMECLBbI(yKmEzXyo8SBf*RNm0^Za;+s!v zm~JPS>9-UzEE=P1A53W+Q!Jwnwh?Y8}R0qm>QWw(PZ4)De*xZ~3}^?hWxc#A>j z+hoppl8YF~JC7FuMrjLVVyE5Tb=w%`dQEQT#wp@q>2Oy+IMy5ENOB0Sioh3F8+@a~ z>964Z>{u41Y=%eXCh7SaOG?_V$6}>Oz0>1IE8BQl(+lx*Z6NC?RG2TaDYJM&Vxy^O z565V6#Fp%Nax7xO5TJg@upcmX$?m&6Mt; zj3302$1oJJI4^4gcyL$cm@`dG#2tj*R6>|w99s)^>RFn`p$=n3Nkqa>P57miIRUCOmO!a}pBjBGfh|;A6DLD2b^oAS@f3tpmAMwt+muNQIIF9v!#PPoGv%GwSXP$WmfXkP!P_NhHb*x&g2AmVH zxVV62S$LioKaTzVeL9^E*=&}Hi3y6uBE4SkeobS2p1@r3uBWiF_q%`?W2jUroIH6d z{{GwF{x+8{Uq&gFs-{tER++SGRQIaH z+tk}&p#ZwJk8yj*i5b-Vk$_z9wlUfV*9~UPD?!l^+F;x+rqc#rV_NkDFBBZ98g59c08YrfA z`ivHh#nV)BM2FHZB2vJ(?oqR{*j^`iLHvTNY0)&v0g8l4iF@*Yg3v zcD>EfsWJxew5HnbQq0&iIz7IB{T4U(8=Re=i zgamsSwW~$q^@vFKkX+Zpf>UF3FhP~cLbn6HhbfE&UT?-nwA+DwPrHGxSA)lBOknc( z0FOqa$vf{|=9#C?#jeKpIy7@|uurSiBA?H*xVXT|%FTErx7X{jv9`{s)2DHq3^Ow` ztgo*pHoP9ItE-$kbqdFESXfx(>eVavYdZClK<=fNzBCjvm0B%deDRCC^wO6Ef&1?C z{VpIUPMnMj#mdSGmoHz!3Kzyvhf<1ex68$g7ung_2B1}D0^_2^8@W0W(bTJD=Dsy-=@ z>@sAc%SlF~%ERET^v{e`jQd^M%Ept{klH$WtbOh!gbfVze1jH(>2iU;_52x1S%>-Y z5+6G<%Ty`P^QRW^F(I`gC}kZ=xePmv4(B)a>3W*yPcAT1%5!9*$XvO|np2=AZ3+a7 zb_pLXMa*~f`4(}TX}{#;SW^AoS6qvM_*{`v@F!H`;cKm>L3TPn+% zRiG=az8!ve&J3Eo@!6AEBqB8sVT5GI%Ati|QU@c*CRywm7^hBrFA}6i3}GFj&`*m) zW&gP+wJjl+A>xY(j6sb?Xdhjfq4&s>xQ{%6UOEY-GNRK&G#gOeLmX@)+bx8$`fdvk zSRt;p;d`&WiTwfLBBd1T>+7^yt+2~j!nU2%@2}su9lrfREm72jV;k{=*o<($Z3V{r&gfzbhC@N=da^Wp#Cpsi|o)nJk4u@dF8b zTCEQ6p1<&RqI-f!sjcnBrLeQR=CtuwTKDa5NVQAneNBCPM7N(SW;UK&< zqIkrQ%fPhPVb9JnDw+^UxT}oMpbBmKysyU<(yn1<^_Zl8e%c0foFo{pj_+bYi zhe=&IOlA+fivxJdj39(Xf@F?Ua1)bSB=};H=tv^iD6}>o3-doRBA5=_v$FUmL&fhh z=DYX=98LkBo>bJ8LqYctf%6nQRt9Zg%4=g06k<}-Su&0n774@4xC0RZhan>_F62Ip z2&c?M)QFjc!d~}G#(I6!#fpxOsDft(|?!WB0!9NGaLf-KAcyGc`5E`2&UV{*cs&hR&f5=W#q<&{Z@zPxpZoMvc;3D5`nA?nMfkm6(Di}K?-u(Ckteebb+?CxGFP@=`LmMqJ_<# z3dnLTBr|?16odDj4WtN)Mr=H9`r=0ebd^O<30x#y1RjF@vQNWT!DH89cDZ&Do`>)~ zr01e~ouF7~J=9&G{ot$Tg71aj2e%WxkI_D+SjO47irC)@8X9GxXO}^H$hGU>_l9#_ zqAYh~cu*z8*P6GhKA)Eok9#j5N+~ur)@irTV%s)LOUqoiZ~@Qr;?K>^n>U!Ao<<14 z;^HFb&!1;;agl|E1r`<-DVNLf)Yj6{B0D?V_p5+>60lx;@r&Nb4kS@kW(Yh`?)%Ym zdlbU!#bSw8t98dBVvHe^$xtko;%SBt;sw)ewzzcp#@#ls;A>>5jGA9YH|zLoH!!`x zz0(K(6u`K@KuRYJ3 zE8BeTBgfdRHnEiA^jw8v#-ZzZ*p{N_`CPnpfKrlk^AkKWTfy};SGTKdR9ieUQ|9U8 z3%t6~B&MWV;+w2bMEr$P3Bg7O#*G&x1r6#q6NEMTGAxWHH z1RaO=;q=@%pFF(?z(K3SzxejM@g!7yp0FcvjK(I2yDi|+5{gx2(?hUhIh3@^3Ac`8 z0@zARMH@j6Nl!?+1d8skRfrd1j6oS6OZ!;bqo{qP=h5u8IB3<8(Q}D93*UvTFD#>U22US7twZCb5X++|$2aDk_udKw`F z&p!Kco_OL(ve_(|OomJ*)1P|EW;uHFXgp+eAC4k$7I^zm2+-rY>M)?itv#bby}4sUZ6 z(`g0W25AicZr+4_AzRvv5Wqin2DNt!TJ;31HQaslGd>uwN*|RmK1|R{zel0EL$f@M z?m1*TjYOdtfUXW9&0}@@A;p74@rZDB7ntrgx$cxWEn4wwVuax2T!q(fY*EZO{Lg>( z8rODeOqO!Yj2HOYdpCLV=qzunZu7C_X}toda>2{l$qz~5sxzLBKk_BL7AqnI@SGQ|?=FAbk z{MJ=Y&Wz(&ik=^k%)YPjjlq^85K8J`Tv=!x788$>kgTX2J2FdKC0fx{~1K)bYk9tg4!X z#zXhJvMBRjS%ID;ip2%!br4;H>~s)L7Jcd?u)l-YSV{4G52}C&%SM(fw6C7$-Sb!Y z?5CeaYww=dz;?UM-rgS5)6>|tO}SjA(P%I?H_!6&5=V|4jo*WnO64}wVRiQQ_U@-A zR@8;OeLD`s;sJ$62_d+8^(v=M1!KI&k00ZeSH5${?n5cX!op%)Kz4U`+1}o|r?yQ> z$s2FJf9I}48)UhHS~!BgyWQtF68LxIWpyVkc2w3xk__}uoJCf5pivE0mBAc^Q7}>x z%1UL5_Z@3T=`Dnm2;ZYn-=$fZ#rAtC2rJI37%C1j<*SvNNJ>4YgyKDfVX|3=W78FK zw#DOP72dqELax_|bKkFSSGl@V!?rA1Jr9Fnu2SIp*KV;iQQ|A_-QdY1GyLUyE4ao` z&Sl6rioI3`r7Vi$MNHMh_uAr26BqF? zu1NhTNs`A}2b1nfNQOuy?*~oBws`f*Iu|z&xV~M(3wO3cN={CdnI6mW@`Y6v#tWRD ztMJN&RX%on4kZN}dv!K4cH9LQ-`fK&&R{l0{fFB5QSHLLEu)8hND(veig9_a-b(v_|wg z(CZ-EO-!MLIrA~(#tQ!4R=k0F5D=Di{50N;%iy}a{mvym_t!pw>v*bpA8j|0siCJ2US3> zT)E7_!N<9J^$Ksk`Q{yWd&X#v9Xr8u&pj9NCN8V1tJLd_durQyuE&Lo*KSigg76vZ z_$e?N@7hI-=Z>~^A8FBWcSR&B9{SiL$a)n~+fNbd!=X^g@!e#Da`;Fs1Nk5^Zz3g1 zdlYLs)W_$L!taa8#38%~jI=pHj_!P7m9rH5?N2?MqABMHbf^Ebn{# z`iTktthU7!Pve^aQ*QRW#OpAE6d&Q(JL)}Y20D$XV2IGhcw}c1R?x`XYE(z!8*r?^ z^|$T%@u;pbhJ$vGFMQ$*d-V<*)dtH`<9w{^u~TpH8_%EP%H|$l@4Dz_hv)PjyCQ=x z6dBRQ?;}+)bz`C{q94;6l*B-j5g9K=uSpz?Wg^^(L~cid&^CeDB;oW{UtlOhU#!6? zwc!1s%ad3;Yq6WI5hl&MMdW_3gXngkwh!Y|$mu!s%`1p{^}bJJ$?*wHw~J{t!@-{| z_V%je^VxeQ@q=;RHM-rtDDbeOTCH;P=1o>sZnCwth3mR_o`>goBTX0Y!|{oMdNI_2 zDBzg~HO=689)I|Ue-OVAcj7%Bd+Z}T^UO1`cg)Jl3KuV4xaaQU!iB4JyS>Bi6gfGA znq9_Uy@qbqVihijY69-QcqY>Vg)!*mlZb8yQQaAu#u6i3bJKR_lGx3TNVs;eV9Hw;}3@El@Lh?sJ~O-{!I;y$Sq#cYPJym5s;f8#R0`s`U=xv)aE z)#8@SFy(b{ENkeTr)Mkt-uEwZbh6C9{n1ta+Lwux{dRS5*jHX~*+CtHh7LNAgVi0g7_3fUwrY4jby>#%U}LVBp^Hk{Cyta;d$O&O;I_H!>LmzLjy6`-rnXr z-+7t+{r!6?AWBKT`K=#t{l?l*;Sf#+`}AXhv+T7C0ZD!*Xv$JS%9-1PUgyw+yM9b* z7)c74g`)u|P5wSu*mX9KkOJj)!wA&0Nn$@jyVW}9=EwQXr%#c!Ev8FZYCVs(=MQl_LXM7sEobZ@_%7uR0DN?D zg1`T>=NQX5eB#6mzi@7etYtBlbLe;;JzsNnuEM$baenLhN0=VVadW?k>*@ZOaAcsX z4JT&G{PIVS@uQpD=rEY+v872q_t+6WesYe>w+{Hkql>KU*2vh3pFMMgsj)m~7pEx~ zvRvNWM@dN*O(V=8DdMH9Mh2TNG4KO1xFr&TW~a+ey^+w`np8_B2F?{KWFnW6zP(HG z^AKuAbgmdIrtM}7tqmp04~9xbM84-@s{7!&s3Rv3xdOU&(6^cYFb-p|j-A5a-Uzx6 z(N6`hW#96!#AmZ~pkLl@Y=I7@**x%>E#f!Z5+V^<*<(Ij5@d6tg8?;)jc&#*v z;eiKy2;eJU{_^d%J~dydkuc&$y4k#JG}VpG5+n<{TN;mLhy;x3!Iv*aM0=Tb7z)VJ!tY9PoL)9 z^*ug+?g$2$DP=h^J;q;NSm%w^UEWyTrRN)FOIbXvnJeXK_B<}_)LE_+spK<#%}j!P zHFpg@4!~GKkh2xjr3^V+u~F+VmUU=*J{bgsO-BF#AOJ~3K~!6@I9{af`cw)T_F7%8 zY}a`1_$qG; zwHgEOmk`nvfLorzYSn_`ku2=oCNWYZ91DzwW)1(!`Sg!8}b>8j;A>>HOBw_-HWUpG&wU@;q}#B3dIsP4w_uq z*x}`CJNOt{J)aYkr6AjVz^+EzjsroYh;k_f87o-OZ6!G|ImSdj%YXZCz8}C-Lh!xo z+jLx?Bb7V_$0nb#F+j)D{K1c|@$cTa&gaf9lCu?8cB<4nE|t8)L92&jD~?Qz@jHL@ z4!3Gew1J6yj`jT}<~aO6-+m840FmV#n|h~1!Le!gT-NsL_`XlG)5DU%X!n@*X<*Zo zHaX)HXzn#}l?yX z>GKZoC_@)w5v>eUATb)Vzk^rZLr%?MpL-I2V+FmpbMLU0F~NrN(z_#n-DgB_1`@+?A1yz{SP ze0|>@zf82gqC5dpbI6;Qh7{w234*cJiA?eX15;H(1Rh89$7e@(A0mz=O}nOwIPYS< zU1P0KVX3{J+EpGp799ONA&Tp1!>>GXn&(b0)9mzE+pn|N?C|vQc{-lYvnLn$`nxwc zw>ZU{E4TQMpP%8k|NR>*yG?%SqsREqK6Q?N^rzqFAO7`c_=kV|1D-!I$GQ0lmMR5K zPL=udcW?6fGfTX3?G~qI#&~3AoKn{2xs%IW*sAe!M=Si|*(Ltf>(@9nRpRNT3I5Sn z-%f-s9maVKd>?iwd0X*cf9ert#ZU3cvruYaE{{@vBc9<)6L$K9_D)`S)+%siRWpa zI5NpgUww=J@mD{=cP?-6^wDX~ukSNIo~M|3jDP-(x0o(v`OQzBrJT!9$XM*u+Z3`k z=T~=mcV&yWZ`{ICfe+TWaXAn+O=*$SF0u7Ww2-GJ2}6BGNRlU2>iwu-(@!5X5`>?y zKuH=XhR(->MI)772!5`J>~`XU6>oNoh~3>eq!TfbRlE`DabDjK3dimiYGD~UJ&(V3 z9n-Ae))`_{@lexq=!4w=njUd%jg9|<*l*7xv*z*Y8uV31*DdbB4Ep)?^SzA>Cznqj^& z#@b#TB_*$3UgL?QbL28Ml|q(3eC>Tceqx^Af9(RFKX;5j`N8|R26{sAiyt}0>o>Of znbQlrySC5GgF27Qj`Q!{x<)0J;k(zjf*E?(Ta*jo_>+=`q*LZ)k z%2uPpE7!KUx>F}(TfBd(#$L0B6Pjl#rTEQ|!iOqX(e_52zW`3&E>w86EVI!a0Y z!+R?fGdBO{x8I{u$nq~5n7UWh%c zj1Uw=uu19&mGC!9PtuKqvW7+m4#}?{N{T$>eK*4XUtn;@Cb3#|g!V_;@r;DB;_fLj zZcISE$^WhA;$6Rlzj__Dcns_Kqe1xEUBX&IO62@9{`$>B5rtmQ<=XYt`#nB8bmVe5 zo`3#%zVPc`;5UEs@9^_K|MM&@Ejj4oi5{|tp zl@k(?;wXj0&>NcqWszy@$A3eLOc$YxZ-RtR#@R}Nr7Vtywh5lJSSwC&qP3S!7Yo= zcv|!OuV3ZZWQnCpk-s<}d{9M59t>WF|TL?7h}wi)T}N@~P1{mR?#yeRQzA1(1tYs)9xE~6Uq zFg0zA*r%X9a&xnH-O+_MtomOSkfjGqm}|5QFiHRXAbRWS_!I1pJ+i!vZS>UdG#sWLi(%=@UhFQp)ZK&*=@jB=29r_S#P+n3VqcpbV_TBTl;1tq zb@S%F@-_pD)5b#pUoN=`qsPxNc_uG==acM8!HisPhOXaG3DEH*LB5n#goBxi=EvcT>z6n z=j|U5IZ}oyKNR{CCm!Vvud^ll@Lc<+%fR7A8aq>d?)I%uf|G&nZvQ?p=*Pj^-!E1p zXuqu{_<8sS^Zgs+E@TzsD0x^=kLE`tpN)E61?R_@l_ueDqEAc$8f&9TJ7ZqT1f9dy z^mGDV#`g3LHV#S}8sw2AoeeUy7#XfVfnS>q~@Z^TW2NjJ^x07B}lwd53|o_n*n1FGTOS za(7(9-*yihTHD}HM&D{&gL=)EPT>`Yfs9>ZYU2SK^i$NlNi9E{l&A!-R zpO~o3D|xA7tE~@WRtPJ-XP9_xu0b#HJ=Lk5i4enI4mi0fI+Y(gBLJQ4Xhh&yqz}jx zF6eh;|00|3ybr|x)*$BWrf_gOj)*X^GU0B+_$2|bV}48j^Yvr*7L{*^R_N|YrTTYC zTV1Z*c#!E86xJFV~1a39+?KGw}(ekiF|lF zLslHL_H=4nokp)R2D`-lxeR++PiOP69M#CvVTlD&F?<@`8BPpGO71S@h!nr~RZ~2D zYz66BIBf#m^Vx(P{7A^##gw~bp~w#sp>W;MN3537R8VU*IWDXV<&UF*pD{{vYx5_C zCj(7X&Bxdw=dHuM4N{$Gu1Ji<9KlSyy`c%e(=-YF?7vi{O0h$`TKM|(%;yzL;5{Ur z5G?t}maVA4zzTLd=lInD+HB_pp_c(i#fg=T-jxmU+-xyC+@THap{n$UAn_nhPt@1L zG+(>Bu#wQ;)eg?*$N$K{qEb1H|T3?Dj*NyzDC~-0K}_nRfL(qkvBc@OH(adS{Ba z2_iq~4UdjZS9RUDqrh9lqL_)Y#Dp8C%}$YS%fbp-qw8g@=q5ZF=r2-85yzl@=~1a} zN0T!LLEPG?t z9`$MFh&wgy_%#sqxWpFKiDY3>WK!4NeK#80bk;7fpwP^a^Wu;?GCaIylp#yeeP8AD z$C@1`asa^UjDQ7|AWc3#S0wek9g2ilndaUu;qRtNT!x4ztiN#ftwM-ub5+m7va$gmrp&=4KwaJZ)0}~ef{8B$3 z)JC4Zv&}@}>3mcw5f)hTydiCM>}s&LhZNBIT|QA832=jr+r?!9<_C59c^_s z1r<~*Crpg(PzwbH#N7L(MQaCPB_O&|8JL#o9}N`^_J;pW6Y$S6H} z!V+p7m#mIE>p!XE{(Kr@>-2F=S+M_BY|e^u=vqek^d8H_&5OSGZ~2Rmd%*B3d~>Xl zT6s36pu$1)3d&o%?Ch*GMkPO^)Lc$Q;^$H%UGZXbRCE6?^wp~09)dnr7^D)PcEx3| zC=6TlD=cR7_+f5*M~>O3rc2jF+#Vz6QZ1FvEy8=34!;dK3JYz1S2V>aA5s8LAbh4({DN6!z5B ztqfJbKt@|esM^VP%~}6CiUWhZ(7>c4V} zlB#SKYss#rYnbnu37 zcFY#zqtEku?J6V}> z4~ZqE7_baiFe(Ix0AYEAEP<+bcGiO@9gQE zaAO^ZrsMlbK(rnItT1y|q2%PRt~)3dp);Y8sg$AoI`)&#Sp-F3lekV%Y677VN_h>@o67P5FLQna0;Dl_|50spEzr5EM|iPFZi>`+b$@?RShm zkk5M5Qk}d)=VlY^^<-i)<6)f0LKW?eucAj7F)7nF>(D+})rAGq*ON=3)fm$_)!&kC zs82DY-xs@ot>dLzGt4V8n=ZFdJ(gW*Sy+KeOz^c2Ok3VNqNLCy57wd#U$YD2fkdK{t0}a{?h(LLoBygym`wJw(tUsaYiP1ZM$932(~1`;XuuMoH)WYnU%@pDk!03`B= zGq?Mx+bhIYn``9RQq5M=59=X8!_Fs4qxaK^FXSl@$u%&$(S3uik}IUyUbZAb#M*85 zsOV`ClChPH2J0>{qQtgRot1JSJ2s?O+3D?yprPhWLEazWra(qb(GI%(_`|u?)fh#$ zbDwjj&X5xer)N&dkMOW8`Z>dBSS z!ay=B_U(=uMqV!A{;g&nSGpR#<-}k54526MEV&%-{+MCoQR4l1W%SniG%M=ez55~b z(u-@M_XCZH{($Mkk?0q94_Ws=X;6W0bF_jAB)~dp%o=ewpe>CrrDdnjh*H{16x8l_ zrf3*r-tw}`tG9s&snbqsFq8Rs)T%~7!q!d*JrG`KeA?i0`fg6$pE0B0>@FZS;PO<} z(-ursE&ic6N;d|}k2)UqB=qY=sXm{k(szW0sj6eQe zZZ1SqR~w7?Dd)h%Ld>fRlm6)#(RqOrN2{DBXmZ^g>J?|F(eA2=geL>t#3dbFU6TA6 z*VDhwy~`<+o`x_nA=l3;5hGoiYvbUe^FT@$k#UT{taYZnV;MHCEWawnpDczyPB%zU z5ClOgm#g?|%?fqe#Hi7~&T#vTuM3J8FP)zP?zlb|j%z+ng;pG^Hra%}f&1Ir!)x5@ zaszVPcBU`i4Ki|bb3NS5h_|V-@QHJ#1R;Z{?d>n||MV)|S=Kv1jabe~l|FCpuI+1L z^4XJK-j=nXT5qVyKGtr1JYe`=NI?3hYF5GBeYw?tP$#Lfl}ckA&`e_p%xsgaXbX+3 z^U9pb%PP|5axUH!G3wY8@V#i}l5B~EdLF*K z{lJe{r1BNTB~yxEl(OlbKlt);!G^?kDIcDyT9Tgp9c$P zlawKEf1Uvez<@?gOBtNLyylF;F`{w!){UAJPJ5@f*~>3+v;kGQc_!CTwwP2 z`gxsI6tw@^;=#>&;%O9MX#U%z9WEW2?MttL(a6b=kD4$Q0f=QJhV2{=<;p5+GW+x97{=3IZT-lraZ z=rK0?`Mzj-7+#^6^XyQf7r!)D7GsY2%clG3sbJVyBO2->23p?LeRS7lL@)MV%N4Tkk|Mp9I%ZxV!)OQkZ! zSN3JfjQqNh#hR5(!DQ&L7rye;=#CK5O}b~`&@>i&rY#E#JjG&PMuIOE-B#xYC};cy zjWYhxr^#+S$}}Eeyn+&|X^WeaF{$({@+8ad&)SJ9$2>V{?q%a07 z6_n!|ZmGdgLYq#)Q$>Zp`F+$CJt4#=ZEaT+?L8r+RrJARgIMtqQ14%*BOuCS`sWI` zpWDYWW~OWNYB-N1_XTIFU{IyX|6(-pk<>LrZuo6c5(Yhm`_9<0{IwUL(bRL0s!AUkUD739l4%QSk(Vn}!HR$XbVlXoTW&S%b#!T`u-& z`~BALti4;G^d|ePG4Uv^>Kfn(vRh#-J)7!Omyf;h3kRM-1r1qr!21!0?}jc1xH-?T zR3WtKmqmUUkzv-i-pM&9D> zV-M3s2gz_Gqn2zJu%#CGYtL76){T|mCy>YzDyz>Vc}vBzJF521BI(D#NPzq(5s=%~Pi2_@jRdaol?&(@G z?jF$CIN%2oX5Bw}-0Ti7r3Ds`%fKaxk_mn+$Ic#iyknLF9)D;4iUJaqKhw!;uY!2D z$?e+JdSBX)D%D&kLj$VArRO`moaF>_9xW3RHA_a+-Eqrcv;mY&ow4mD^i6{)7iXIA zQWz&-9!(;>}Y`D!ODooS7z zR|LmP^tR@-GSk(!OFlUG2*001a@SlfE#L5PIVLDk*vqpxdmfAQI^9fvE;%{Xr!&;2 z)%;*w$i#)Yd+5h(X{pa_o(Ml7IW3i_uq>nnUrRgA9xf?y*zD?3RGyPL69i8WUCg4| zx(zf ze)H@%IX#^$O}?6QF*jG&?4u#uGKJ9cMPk0uL$cjr?XPXqfXhE*hRLUBu&A^Bm>Ni##q`L|-GIjbKp|1K>a=S;tL?SE$X<1d0kTv*H)dzp5 z6~RbPPcf)j^zZ}y5{1&hn; zhPqU{^D2d(^UY{H;*V;Z#`x-!WzO@(SlOlATs1&k+-c%Zqi zORr3-)b0FkALcc?ou-##zh8NtYWudk=lT;n!NrVkhRs#X8m8L8(%ar8C|o@`%RF<0 z61qGGu|e!VXzA(JtO4B?0crs3G+m)$kr?N})s$Z5uaj{(?9!qdK0(~=#R6%3T=b## z)LFSNWAO%??eP5g1JBjA$l%8cS@tR2il*h*1IOtxRH1j`nBugl5y#F~<)+}0TmhG$ zpDm$ID;)}M=~|0*^eJRgmc3C$@bM(<2v+VWE9Jq34~*)+X!*6j?dGP~Rw;67k)t9C zq9?(SP-jfoJ36}T4u10!B$^R;-f02AdmX#V=;7M*i;lhvwj7{^ zQ-f;H%m1eZ=xmXup)Fs{D~SSee6m-GsY9SwWqH%9QTAbv&K6ZRTrL1oQ z8~U}YBm1xyy>OdjN=0^D*gJRiU`>VmAox#$_=cZV%qj5BF66RP9;2G_35a1bX?U%w ztSE4-IB=>q+zR0uY5G&-D9o8rU!QYZ4q5)9D_V6fe}R%Zl4fcTWFUl_cAR0urEs@|32OX zJdg4fbea z5e;RJt$A{;jAleb`l%~GE2zzBgb&H1L{o)3Fnry5_4+ywrhxIbb+xqv&9#{GxtYwr z!vqQl*?+}ip)DkQ5dS@LO7nAPDm zcB&2)cYjshFhwC-#m$fkK7ApRfGIG(~j1(GX!(qB^I`X*$`NU35t-NG@z9sGTdchJ$;yxoBm)3%fl3fCybJ=hwwn7|m zKf7u=ypg?sy(=aDHkegnm}h&kf< zwqQ~A{;rvkAkccZf6mw#jk?Cc-->y_1?jps9RCn~_7!Q#Ju5SFyP_=5{^1_KxuvB- zofbRdrdLCmH`jr-_7c;I_VRN#nXwqAaE8`=9Sk#kU&XSHo29$K)HbMjM!`$)S!!VzW zWtDR$U-wP3>R4v@#(n0M2r-tF-61x%IHW%g4kyloQSo`K#5^1kiu_bp# zgBRopR=`|AU8jw&p;57PRyEtQBd!1f9A`S!9~Us`n8C14yE97{5q3&!qw(~ z;uG!92JUR!awt9HKE5aJNBAT(|ZdaB`-Bi%_<>>t+N@Pocxt)_tzuR-3 zj+1Pw(*qXSPQO=(-_-uPcIuuO%5)+X3^r}P5X-n@g=Ba3t)(M+c!hZ;0PYC+Tp=>$ z=j?VJpp(sgVS_LMk~wd7qrYK#+`&tL!-qjUv12G;q}o!>hpN1_58qLhjb@x3gT^by zL@c35;h#8~)pMivJT!%!*bi1^)EE z6VI;no&JPAc^|1hd9uX7RUj5c`EIY>KJYM=7#;Wy7Z(Tb9y%uyGad=~WxjFr0FHXR zh=~~lay}Rbq`;celquHPl1;i4X|g-qiduY?t|^;WN0Dy-594TvLzucrtr6lPsn#rc zzg`gClrZ_@^lT{+Bmc)BSOG+oI;}*7`mj5JpP*1^CX{Q=R`sInlF44KR*Y2I*s2B!8 zk-%#?Ls|z~`WvklnB-%M`C!U|~-K+1#Cu&~-Zd<}&@vJpiD; zR6I+@jf2zxiU0K?Kn+auNg!7aVGh$Rnst zkPzf#sAoleytgZhtAK(p6R|?OkWEV$eId<0^|G&rEWLu?0(|KHvD9`Yq?u1p5PGFl|#Ebqc4pS_u~cFO|8X0>I!fgF!)Or?3jZ! zXZv&N46Ka1ZPfSI zBVqiBLS^dr<%m>-f#YmOr>w~jNReH`k=9`nrC*Pz;<2%@o%f3pg6|bddq|MTqRf1J zBj@M(eC*vV0v1_$R*M6gL{%yI6BuhWVTsfbjxEfBL#b@#f@U=}Trd+v? zx7^(2e=i4I|9yp@i)7kFq6Dw&S!i-HH8_WeV+1#tb+}#jb%g_vj;FZ`j@t#^5AmO! z=s&;pu8fH+)>FVXL5U?3XBS>i?{cP$F}HZSkcS95IvizgF?_cx6P{{*JgE2VzVe@L zRX~<8ZU`TSr}Vf}YY|_>MLhzWkQ+(U-(p}v{@sv7qtaqPX~ws%m^N2z%)Ni~Pdbb* z3-&CW_Gs8NXnR;O_`v?Fm_}=xUa@imHz#_Zvw`5|&8;Go7*u5&Eth9Z-Z|EckKpcn zh4$w5zVhgZJ?rQ~6}Z_PY$+X3#NZ&lcFioPGq0$+Sdfj>i8vtwI*5o0@zKg-$z68( z$Pzb{c@Le5^r$Cx-1PXp)C~L6Eb@Qw) zCI;2S+7v7_v@k->lkYr!oNa7%fD(Eoq|2yaswCnbb7Ft^@=K3s(EDDY&?N70hndZm zdy{+9Z25u3UtAb~7HG}P$cW!wss6mGmm;+=N`n@7vXmPAdZMdLd5gxRNly+z8a>q$e4^0>LBVTLT4@-3UNQ&&+TX( z;F^({24I1!Ix%Edoe^~hV$ zPXh=+wFY|tImwEF=3znKS<~Y3^5u!A>+>*Bj2nI$uV87GbMFpxjRj7DLnyI92q@rt zMqCI2zS~9CaxDe17*5+m0D<24oXt8vT5nnCKYej-gC9G!UnL~I7n{6baEq{UmtxA)iOfPCZu8WVBqy_ zoa2Z*RrVd}ZU%DoYy(9_^N`EI%rRy~x`%}D|9mpO%_R?QzVGMGU--6NFk0hYZf7oa z(_*RI;uKqWEA~{w#q?h~#^mO*r=XdM@3P1~gO@+n(s_+iEHu)`l(5c8KT)AF-g|mc z_a-fpiUkzTQb4viZjq);v2t>bA0Jaki~kTN4l1N($3?h(=3iUW0~+Z1j*d0PEy9QU z+vh?mJG8{s-Ev-8)80J+){eZi2uEUrj2-c~=mJQsJ4*MZ3#UrPO9u&3MBVd~3!a86 z9`PQTe};T9n+Ac<+U_y-<}(v7?(sL`Vc9mWE~dy!%{a5Y$;!1P6?VW5AG%|_7Nn%5 z!Mea316$z|A93-k`3L-KxwrY&Zx?F?uVZOcZu=tFFsMtBZ7(9Jg?jIkW9I0f1S7RE zcB-K*eHk@dZTav}`N0r#5M_mIsOVI`2g&(-rXnQGA_KgF3GuO6gL2W|+F6Wn(~aBy zGIb0E6a&f7lJ@Y6_DS*(@poR}Lp!yJrW>Y}>K3Gj0#`l-}K2IwYhBhuYG=#(!a7qS*e~>E5I9feyXH z3l?i#86GEr3`9YVft+?|oC_k>^^k}G2s{g}G)q4Kso|HU$>^|K`cT0|Pq$E`)rgiL zOKfdRR`{}71A8%4V)*Oy?E~2xWez;4uLthw4|}{lrx+y=2xb#)%p6sXXP8=dpuE2S#k=}rDbtZ~1l4hOVVqAS#>DQWPR;F&n zeSVaC0N<89CfYveQ88^iIx>|DKGZ%oKM$eK0Bvy7S|MN3*HZHv_0Ddx4A!p|b9-+J zpDqhkP=my%sv(m$sq%01lRIvD#-#NcBA8f_2_L<^)$@0ooD07!-3@Z1ialAGDG!-; zL^#__umT{X!H&d*_pR>1mC)^qpEuh1WEZ6CI=5wK6rFB2+ie@_Kj^ij&WBn-%^kXD zNY|DsmU?TvmiM;kzP3UMuB;JmPbtQmdw_;DjT$SV!zWHSSZ_a`MjM0754(2y_c zK^+qVqII||x_ez*+MG#C2)q*(lg)^aN8se-M1&BBO!^x%xTS;e_cyh!T8hEuqmX33 zGz@hbZ6c>O8HFr!94}yst%FZrnMOm7&@w+(3XsXJx7Ymz_5ow9=6i;L)#QFBuy_3;97^r+{ihVvx<+!fZzN%7zjWd$%Sbximno{6;!AbjfoDr8vtiKPvD0r z8ou~izl_^cLX)aqN8q7=q6#|wM1S*tGPTb=$Rx#DX=oXJyw+sVpL%e zsq$+5?k1}2`g`YW3k+G596}!=F71zAf7)7ot=n)jGJK-A@9rJFz+ZmT2Ls%q9cMbg z8o2!%<|*g5C*^rvA-jY#hhBqA_m{zm)Q??KSWRb2D@!H}8y?3V({_C<6}S?KO5{LA zmX|F{3bq!mHh{7V7OLfV#f;3!Er4I5+yZoZR#IltCl#H;g{cB>9iY z&gZ}3^4|PPys(dsaX?GPF9zgXvkLge%2CFyuZzFyTzKWVD*;S$Ns z!Ci^ev@r+@;^9STj!%~pX$o`8){t_FvoCY0^>!$m*YS&(vu7B4)y5-oRA_R@kuCX< zKFdl4PV3&|<6|;`L=ecJZYT2lAP4bu;C>`>h-}kC5{9(vrkOFePNnx9p@AlJy#a^{ z&AA3zw_3Cf=7zifI@s+6dEmWzNpK+Kb<}yTC4BZhwXkxCqC+~KQ16Lw_C`?!DYzQO zwsdIi?hIhMLc4?g;9Fbms9h(jUJpm^^NR zRB)F&&SY}oyuMlE#sn>;dwjEo1(ACB_$2k{PqCC< zW+Akzns)r~>Xl-(z8(lS;DpoAbjA31Im9eN5xT2D%`Rllr>)DYDWnZC9q4!8Idlw` zZyWX^7w)#a?K(3|bMa z<`fs$y}|o(H^A4zaZU2aO+nJL$~M}Zu;3EHb&K1>k`chp-B(LA;Y_W028oa>$(FI6 z#=P@)c@}&!v*e-84gy9%md-qow9CCao6pGU_NPF{6JozZ4cj8sqA)LaAG4)B3`f4` z-*M#{&fs#KB44fD{v3vJOIM&BCr9n33W|yxNwj?J`WO{e8gagYB~+EgAL;wge{a|E zu-bFv!n3%zh?oKqZ6mxdg!3gCiL6hRf0GP**sy)!kssE{f&?Xz!}k{lwIzz#p7COG zQ_Rw1&jh31`ix=uyiJDSDM&E30bM}YGYQX0tES@!9wwL+l55d(jvWIl_@wnXJBEyc zi17;f9?!lFx3q9q4RY0hHY(tvGIZ=NR7nvboTEZbSOn__wqwpWmDL`BmA4LeO!Vrj z)LQ(p_zlvb>>)L@Z}=xu{51!a>xx)9bbpusQO%)->Q9+_>$fC}A|pL#%7jH>^Exq= zNNeCq)37*XOyKDVYNF#dht_;+Ux)~YjNw2lE;g0hq;I8`ji))$DFhT2#pCYv9I`gm&ACLyZ*YRt1y; z$$>H9JgX5t<(Cy>eS3_e zEg+HqNHm;o;L9Ev?;6m4zFf2SH_fu?MfrR^;m#vk6@lm@U=#OcPzl$s4yv{Z8z4b+ zzzm}d`iqx1I7k=MKR(X7^*o*L`6WE|jMu@X>mHB?p+=K4bw8OdxdJIDw=ZWkKw6S( z<`>k3pkouJZHD6W9;(is?HWzt@qtt~@Nx}2q=Nn*Fg-*T_OQM??No5 zpcm98(>a^^1^rU8DpRIF`Il0?_&lK3p>I^d!icY5@b4ScX%S+F*6V3d;tA<@6>10x zbvN=VlmW&3o^**=@etal*P}!3ESRDZQ+qA>=@~>6b&U_(rTyp~YNZ(j*VX#x&;?kt zfKcH09y#M1^v5+4Vv7Y)cXp)hLF1rl*vviB_OHgiVhCtO+J(dv6Ju~1q-CQY$84Xu zIvWZK3Yw!_K9&}}h$-VYrIuQoz7!`ud^DARNb|2#ZDY>Sz8C76 zGxd_g=9^ctr$^<}_bBPg%KqB5J2eHV69LRl8Ml_+-V0RoHV|TU>?yax(9iSs4{@SL zh#l_bU}WH~6=;c7tr0HT?90JtMshL6A)!W(%}ig}7yj2V9l{R_y~~Xl@3WVzt0W2| zTcYY4^c`@LfBGjRB-{XDrOgfLy?5g;IX%xL&wkzSevy#GCMPoJbQa`49Ja0V#DBMPHjaSEiE%FbZ%E$28;_YCzjIwrH`yt zDl+k{LQ+yBAT|IMROYR7?Q$)TrsG71Q!n9KXZH(}kG^R_Eu{^jI@99BvNZhF8!_#0 zB-*hX;g2kCAqrn(N5%MaA!dGWJ*=l{I8wsN8g9Dw^al^7;Zo;EqouOXngz7Csk?(T zx@-w7z|3jW$Cy5S*Td6YgR)ol^L5ojnh1socGEvaxEsmN+(;zzFvu_)Nx1nVmwyGG z`24)q`SEfFh*!i8(sHDvAwnXbVO3>;eSnRv;gw#Ra3A8uPY{0KQMm(xepqc zZVBGcm*yIAE%!j7h49`X_~CMR#a(PcbjV=af|VFepMyJJZ{pYVs02*S89R3RoU4HE zu?Ome&`;CQEm?#ycbmJI0b*3gY}_1zy^3|?mjFl?*>RIk2ML-;HQ#&Y=^G zxQ}wktCLt~GJZZt-2wOaerOsx35NZM2udLV^Fb@B28zR`D9jA_kaL&KWh?3PZ(Xtr znA>vw6`I@CenzKtndHi>w->r40I(6=*xl;s5f|37(PsR7dnF=E0>n&P{&s{Cy(4*!#TRkohJ=$nlJpIc^f{T)WDbmZFYTdtU#XRmwK7F_4BOG6LPHsXR^;h+WFx$oHdCdzbJUt*O4PQP|Pg=0OpY&}7Ew0IK6 zi#_@nr+5EP3!v#CKkws(++LIMz3uxBn%^N?zD-R<^_k1_t;J@*D+B$+hfGl9mk?NF z?sF|$35EyRX~KUzgdaa)a4q*fz{Fuvt?}I;tUN2rz>~s6Ndlg+0@Hi^@7Mh9I=1#J ztnx&;HRn4@WsByl4gb}zRBBurTE@PvcoKCsH6aM4Gewy}Qd3D%BgUyEBq}2f*SQ7G zThHB3PM6s0%Kl5dbbt9tMiRz_tPQ$Z{s+@u%F2Z;7fr=s$<=N83G+lk6=C}IKh0v_b!uC8J*#>B^a z{a*MQD3b^g-aAjssG0JRSuzoG>V1G-WfD>H+K$#0B5!5)c}%4A2g!6C6%Pw8)%m*S$c zs6#|o^jaz^=421Xk=>T7DO#9_O5ZMlVBg>HP&XJZu9}c-l;#I%%tZGeJq9EDJ(SGc zY+SwL)VwVa-N6YxvIg|j?0I;hCx`>V3+a3KhA_vG#kyNAPm-ncE*G~AZu|ri_NNi?2m3P(fct&wbAEO zL1%5)mwC6#li>M)PRCyglct8BwO4xrYjjF;H-C>Odx3{M35x_=$m~?ZiDDS*o*P=llcT!7)N2V>l){1S7K$3bidj|jO)?;-+ z45_Mu93$**z`k^|u41qTfllMB@44kB!+(5q)5Zc-Br?2f@-cxW6s)v#jmHagyymhT zAE&GJp22h>Np7PM9PFZhc1N0UT!Ybh5kqJup}VIDXmH}6o>wbaEYU~~*(g5tPkHmR z@rjLETC-?xV~>C+2lPWNXvOQwt=G)Y^K;02TtHvMJsx?+W5_QUcP4AdE7A~EyC3M?#Y}{H?pVnCMFKuV zQ_GExTt^~V)WawAyz}^22Z34>X!n^2iA>1P&1lpPv$90s6)1jH@(0?7!J$E*+fjy^ z5S6qKt=yQaG4ED1hY04DZ14jeU%Y-+ikS>xTeB*I(ow=vHgi_Q!5uM$;yTje?=FIK z%e|y4bT|sg2(PxWs)vSrm4hOoC}ols5R6JzD$Jjb>T+9bsQl+iD{lW6x1|}Ut?sFzSSKJd zpD-91RlC_e@C)Go7@0BN=svW_C6aDz@)(5eQ;s^y_s0J(2Jntt=+V_^Z|igCQ?5BT8P1keagYZY3TZre4w=aD77TO?JL8jpEd_*|y=4&)0Oq%swzd{G^ae13ttpIZEtC#B_DIzia@f4Fza%pzID9V4BbTH;y$1xmlm(XBaTcpqTz6f)f7R2|ixiae z>@8@y6-K=0mX??W@h1=oOVy!i-~buEOGbgY2L}gIf-Kc%KF^1bDj@5I5ob=# zq{DZa8+@7^{zA{XNqME~z>i9!qx|>PzyYq0jlgZZ|4zuWJnvtBu5)(HrVWbHR1 z(L;oJq{x2svVvPDXlX=wL^MIxNm<$^gdg%g{pMBmGN+0G{}l3cBBVHRPxt<~Y#AoR zNq*JztpGJnlnm9|uhcW(b$*F}VjE$D>c}}M%?U2;FqxkGIdHO*XqnB^05&kIfOPl; z+M0Q}o?>lOm)=|^UA?5~;Wq;t-Q(zThEtd4#}g?j8Eb=VQ@MHR-p|!~(u}9wfXBA0 zJN~P?Q>YG8SS2>=6H1B=)3$1_0-fPjbtkoNF;8=`>ny1|%{%Z)J^qMtPBS;wJyXrf z*wUxRgW-c-kxMU%;Qx4`5FmYTs=e(~Rp%(Zthooe``AApD$IWWB_Ld33n{SatkW<3 zdyCu)=laznU;6gQY0`vJwe!12xQfBeQ?!Je!ganO@6skYaYn7z`Gs6(llt%t#mwaI z>+?xi*z1!0ig~)mx1hA_ftv$Zws72rAxe&=qm>4`&VUN(sc&8{%RB)_+4z6S1D{vz zA2~iZPAJ&H=-eaAW`1A)JF!rXsp;Waa;SYBz)~y%X2p-KEWo}-%==y3!~Ha5Y|0^A z`(UFfvX}*fz_~pk9JEGF&|G->rnj~u*w-s+bp(!A*^U0EQL}$t)Uj+5+c~rfCz=Bm#DKMI0>L8+N zL>+VR&Db-B5k&I@15gIozlTW{SQ3|wEc?EaD@n*b5sVB@gW!;wNsMq~iE|<>&=|;h#PM*6+ zs4kBeH{<~n5O0)mQh7XEVg>Fse~Cbb-HJljH1slP;zN6e z(FEMLW02PuN=y&LiJ2OAPvx1+#u-h=czDkUcZ?6Pe>jCE1UqsmcI1)_CT;c%rJ2aa z$;M0`+C5CdGB`MzA!g|8Oj!&M4ltUI@xabOCNgnSmdRb?1Eg((!KBR{lLL&Uv(lUu#IuqFhZXn4ftf-mLGH|>AF9@kMUCMflJ4XjtGku2B zF-EdUR?Btr$v7?7>)ZIeYY~JM5hW@#ET@4`ih5><%HSjjL3ZgJ$Ap%SYPA}V zJn~38Y1hCo40K)J^rwbx$2fa-hNqr-3Mu7H0TbiB1P-MX!^6Wo^2kRS8yo9>%yA-- z{MfN$Hx%1`rBm!X>mIig9DnVGO4lnr(zd}*{^V!)(&sG_TGV zd2O-8;pH3xczd}*#qqgsDo5Q7`H!!h@6t7z5V%V4{J9l|5|cbVvw{~&zI%F^TSn5H zTB))-m*nJ1l|sYi!g`&dgvD&B$@k8#a%{QGXKtOq)HN;^>m)6m;iS#XYK?_zlj(sZ z7fTHm%1zR?iByVMv&mz}m&xc8eCy;A!%3S@-8#;x)hZv^JHkSx#nIU!!)Xhp6kmU9 zjyorFBn+KbFRt>?-Z4%rl^9IgoLVYTsI?f$#3WZ;C^cGJ_H-u*uVGm#Lc>G}ff+cFb=ojcnvRemP9lp4e9T5=Ltwua&UVv& zVweUG-hU6j{x81FM?d($yKv%+C@i7tR{?PE2J~(Jx@_C#;~)R{7SoWXX&gLw@aosU zX`$=-jRnd6LjaI44B4}151;zfr~59-%*+hWJ@-AD&E^kn@|Lmp5aET>C>dVY0=b&Q z%8r!AnX-=-i=qiE!?+QRuuJwzGZHHer{0~5u7pOsQKp_7!?WYW+$Qhjn%N8>ouADQ zLY_T#4nx;L)3DnoJ0YO%dYoKbXEK-BG6z}$NkVQ3n^z57y?|dsXZZ%f1Hjfbp1-(8 zHg0larHUI${_OQxj!#xuYdAFhkl%dfMC7eB;N*4=y6+IHmGI0M&4DqL0HayOtd-iIB(M2~5C}}& zAP7P{&u^c~Z*U)x62uR8Y^;>q>Bj1^Z^3p9OSGS=o4T*Qrxi#n7AFXTE`a#H&)nQ> zcS!urnc$_acpT8jCQ;2AvR1h^>PT#y&|~kg)_mWm)oAkA(?|K!-~C-?&di`02D)V- zu9s_7z50h1RUo~kuFyzU*Qw`5(UrpV+ty+!-x2Zro{oJ5q+%97`TpDRLdle0?c!_4FR|Ki(6lH< zL@L-Zkl^2a;trfZ^2^_Rox@W(e(ggCIKEQl*ItG`*`y7GOx_7^M%7Z$;3?l{OBA9M>9Nn%P3!c zbDp_UlP^E8hnS)9zdUmiH;@>bAdrfmzH6Ef?H%EtSDHMSGx_}8Q+)UIGCOh!e&p5( z)|(EwxW%If$N9^n7dSjUMAFjv-=8{$BqV0){Pf|y7#b{=8tfa*a;aEjESq4Z+@v7l z{8ZjyIyJ#qHpScXYuqwA5Lu)v4W2(S%j{~Y?_P9+;Huw+(6Er2j_J0#H;Enwq{=G@ z86uU$bm~~m3Q~snc9K?pJQ`Wts9@I0K+s;_@`@aS5CY%#dGfgz_`9c{M-g_^pR0`8H`S`~lBL& zzLoz|3X#sB4dn4pzIDy-dK9M-UA)+3#$!5;%j()XfAzOd@PGfoA2Sz5c}=EeZSP%I z8#KT*y}<22vMs9Htva5aK$9W546mx|&f8S(>Oy1paGp#u#$!j$;07TIK{{q}%V?fU z<$Bb2&>Qcqxaz)}-bWRk1x#+Eg;e5(6*{RD`v=oly2kEYinL|2-gFsG+QdzreS>Lq zO)!$O8BW^VF`A7&XDG$TcMfsSRP^sX`BZxzM}j~qEJGt>o1|@nisN%&IL$yJBK|VA z$&P^}al;@Rv$$<6%XBUZe8?xPt~=ZbWZ#KWDaA-Sn%Vtx`*IWl9WRWAUyY>VD5bb> zdJxml2&Cfni5%nEIMtR%I%cq54~UsMmZ5=CWa1WM*(5PTCmk~>N|U|1Myu`-H%&}K zV`3mh+%|FifP`%lv-B+om8+$&1d2d6Q9^HbpGRx3Gv7mP3_x#>r`0f8b&Pr$B^7=w zftw#gA~2dYj9L*D3IqXMfr2sGkw|YJKgECZ3%|;~T|4-t|MrV~?z5j@WMl~2zQ#_4 zFo=f4-2edShIXU;0)O;J|L+w5N^JXmxBHmZHv#nB-ChmAYcE>so%+|=bS(>G*M5Q%uV43(!Ed`` zZA0{lU(IHV^B3m$v%mNnU-^^2q_AEhmWUHGP2|p7VAYANf|o07dc&J8`?D#erXz)h z*6UaAY}_iE+-AEC{8$p-ile#BEwijQk|odw~F45^3YTp{@PzlT(N}ek8Y`tJK_p`AUPoetVw%gDDQj$oI~!;szm)9a}&uczR};TZS_{yl0r#7fYO2t}vd7BZT5xCzqJW z#ChLTo>%8fELEHAA5L*>xkBCbyVpS11m8Zn$XYGW<0lrWVNi9(ICWtST?kBF@YLx= z(zeNcI|ezsTE+1~&aG7_He5_yP;R=sbZ!|zM1d@o8=PM)Lp;txGh}y6kkll$8S&z$ z7uNa2ox8cXTBcZUu~4Y=RUd(r_)>Pg{#&|p)aGil-CcgQjH#e)BbO1FG|H$z5+qW% z`LQUbvROl~6(I;v_|d)7UgK;U-x`nE%*|ioSAO+>;*!8{{z&(prwT!;R-lp_ zN0%XH;POspOkc{rNpW5n^770)=|qfs_Dpd5)G+C|O)eGZw;q3ygl#dBNg&&lk5Dmy+W*Qy*{EMe;j)*CL*&a6^(qUOc zyGj$Z{D4!dRo3b*O2Jyg!3`vVRIE2$UY=X0>i8%Ht2LL!N{c`$#xgdRrn6XUQEYm= zJXb^lIW6R+#WGD#F{+2Waj8fUDr&CJ#bTWu`6Pex@=TPB&<^z!0^VL&$M-|-*)c@Z z^C>ia)>@ENK4nKjG74ZkHn&Et<>Gh&g<6wp!yz5Fa6G>YBCRXZS3Pk!Dxy=Rrek`o zjqIz-eWqmF=ny3|l%~*|HH=ybB_&}jg`Xdb)=;a4RxP3Y0403zx86s(rjbY`DHcoo zyWjk6{?Fg}5B&TWKhLlK>tAH&j;VL<*p?yO0Dx#(rvmve{-F%Od#}H%5CYRQSzBA< zYhU|Y4jw$n;luZm%jK{vi+k_AkAnvf@yaVNbK$}Tn#~qU-G~iMVVGuD2-K%`Ad3Z5 zvvFgKL<86JSuC&f`dcTt_0TOGJ^Ci!cM687A^i{22n3{WU=U+-i^e* zf@agJP@rCd-eBr@csW=`_9-k!{v-pJ%-NDhhHU9k7Gut=xx2ql@ z1T{1kgvmkGicYcOYVvI_!#+sGu7L#q@`JaqH=p9S|Na!m*Qz9~NVl;Ko&WJ8huED@ z@*7VbV@Ed4zxvPtlu~@@tFQ9V&LKW?aDoS?hxj+o&+=2Z4s!2~Jja$R{P8On_~O00 znHq@WOT~Pt$v^$TUJ4D5KRt4h1H&mkb?XGrom=Cz`67?(8zmDnC^kLrpU(54y~8|p zW`(u7%SZN&aNAgx|M=25{@DlilTTRu&huw@^p-IWjb`|>BeU!pOz^?o!~Dh%7PvJj z_}M!qcazIUP<I*ev^P6$0CT3v~mj8(3be>tN~*Guu2d zQgqA2%ka3O4JM$qYQ*YgqznmT3H;n>bl0@%Xtff`_YuAq^>1`D-XihXN+oI5YW&q- zeVxyK>SI)E4c68Q?BBPW@v%`1Lq}{ffDne)Wct{0RobJtZ{%?L|C5Jr0Ii!2Q|(T4 z(Kl*Rbfem5X3lW&;zbT0KFpy*w~|VwNTpJI^rIhRX=#ZgM~<+(yhN+jx-Jk=3M@0) zVD-TfglQ8j%-+yzs@I#GJ-@`ao_T?<{ii?V=o`oQ(?9+_Mn{H8r&Fx17T82^M=>I$ zHRPUK5zWe#T`k?JL-p;tsyp36w9EfZxAr#0g#rxU#RxoHD?!|Av>7I~?I#6NBBkoy zSV9N}k}-xdNeZ{``DIAJ{elbRb4 zq8LtEq-+B}lo(o+Y^-a7niDXVj*+$ve5t58K55(NTAV{ENmvGgoESjEA5K0=ZPbejpZPIcBDoqE+3vj)lFV3Xt`P)~-o3c2&E3;={ zl<2kzzQa0yr{}aY+(4l<>zMU2DwN1rl5ijjo}}48)XETe;CbM-KyK(S*=&YfKF4#< zy}-Zu@Be4sch8;tvw!+?Jp922Xf>S;pc7G-eneqipHEWPG)%+5b#MG^-s#`?A$FTz z>EYaT08uJRug&N4?SW8Hs_w=>c&$4OzEr9(GjoPJ?zpqtU^qTL&SyXSSx%lj$!o72 zz0M{>74<5lGiW2@_-9YtK#QnGxm@KdfBcucbm{_czJ3f!^I)V1f`DW)fn{5l|N2r! zzcgbb8%ter|KI))3Jn+A(E0j_1=gD$ zmnu#E`t5mIe#ptSDz8)_Ua#@_dv@?wZ_Y(7w4)cu4-Kk}!a|ynGp}^_28oP2y zUY=bi8#DR*Jv(@1b`8@oc_MD|+_71vQZ|zVNoI?6^mg^3Hcgh*h2Z(QBK31Z9)0u^H}pad9Xf=R zl5cqU+gxFqVzm8y3qixYOg+K!)GI8#i$T3%LaHdehml8je+%uWu zYsVM3eKZ3KEL|gQo7BAk+t9IfNy;_|l_F^xl!ZsajC7RUgDK9eRvAp%=o$>fEaH}q zu0?u8$~Lf!XxLOt*GO6hrY^7zox!AqE(A%-U?3hM_i^!*Z>K*~z+6{qM6-3Qy>Wc!FsHvP#hMLk3fEYAuhMr6MiQM@h-f zp)^t{GI5)jspEM*>(z}l)#w1oW%aq}k5D%Vb(2KBeC4X6NBDln>V$p}5xtQ_stqQZ z4l0C34Xsj&s*ZRPmB~ei(^dl{#0E#u6Uk^Yq3g5M$Wh)n@-k?#ZWFNz<@MWm zH66<`Q8(bgl2S4;G07)C`AGnd9zDv7FTT+C9LusJN^jF%rj#O)NH97&hUdA|YBj3W zN;j+T-K-5d08+o%bxs&cf*^PoTm{$nrYI>%O-`ZCy@GPyg@Q}hK+mGt_D1NU@~GA7 zB;s-6vDlWAlh&hyh)M}LG6mI$=Gt(pUZ$K^YRk?lbptdV-E&a7xt0A-TQgyzz%i}XIZT_`Tm(peCO>8 z{Mx7QXZLUpsT7r#$K!8Z=r$eFofN3hB~)~SRbjGIxtKzs+9P1MV#T$iM<^9L^GP1w zJ;W_TX=Y0ecIT6P;qINBSgrDVFP`O>9^B7lCdU8s@;P?rlKk4kQD^Tz|N2orvUil9 zxnqhz!B2nv7@xXzoZH5-48%=-_xUq?`GGyeO`Y$aUPjXdU%G!cH8ULe)Syy~PT{d6Bs0XuCUMOqtE~_jPa|Xy?FE_v!t6i5$l&?_L@9)!VaKc+ zc3{Qh@os-yXSD5x{;F~K@L@d9rCcsEGc(hj?y8hxYHErf`H>$b2m)StBTOi z^DaN?22i`1;Gt<6&1QqSxw#0L6{z;jh1u@gkeN+2d!o|h_GC#Vi*R=WU}uD>28j_Hu^ zsnc+wRJU(LDbk* zzUH?YXm}xuRfnWybmy>_TR!uZCTbaP&G&xhKvD6GO zP|TK^OlA|DS*;-zoLQ?emX2|$+#(1iD>a8g!=>)}tkqrSN=?=qE-A}ksoG+x>JYPZ zT7JkvrA49c5I1$stksw;HYhedjxSdTrRq*C>`)U6)fQ4k4z7ht3tb3ePLmdbb)_>z zq}6P^c15V7Ls(ChTWUJ&xyg(c>S zbqrmjSZ}docz`>nNBF_nMc%qph!(J^Q+K_nY;FUHt`ucqu`Wy|q=!vAOs`XWZP)X1 z9W<7%3Fa$Jj$A5oa zwS^x@UMn^UmCmy>D~zUMJaJ+XFO)oSVu^?M4D<3_flSQeyJuDiLdkRIR+-4eIa{b< z=^C04JUz35A4(FY!I`xhKbT!-zTCtQBWv$Wp+>3c5lYE&&7t9i?5pF}vCx+9vVa z)?8E9IC5@@frQOuF3sF(iH74w_n}fWJ-^-CqpmMZ8hD{7}DbswJ+ZpKlqh ztTyPnzA9+@jlO$;(KJ9Km(P3`ZnOkR_Bc2@vyeKESS;4vM@ywr_jyVw48tHEkN)5HeH_QRX-$M304d*W z3QI~!qtSTB7t-ml)Y>+<2yNdTAwQK$py}GXcI`wvx?K5Qw*px&mM~0%OgaU~z6CBe z-58=#MUL;RRo*$fDVx9N3Q+E%HWN?Bg&3C2daG}`Xz(|_= zrt{1c>dY1!+&Y$FA`|E2N|l(YbNhIfZ=GCXG!^5%=^VMZNyP~`Je6au;WAUG@xYEj z+(7cRx953q*AOT;U#Ro&-cb~aXU>3yVq63)O9KN*tld-8M5BsER{10atk)fib%&4M zI!&$R^7`y5=B5!I)uzJ-ZkZ%*nv4x3IWlvJhU*~|)I5LFbjqGexrfeD?et5bWVb$0 zn=qogf;X%EeFlK7!g+61z6G0<+E#Q|y%ZV>kmLt*c)m}y(F6=sqefV(w80{Smd$~# zBXk38$3DdH7)BTnUdgT5iCby^oH7itk}(pQ%ner{y|a-v14ySjQA*L=1aMI^W&FJY zkn(#1Ae~C&hxJfOk!p{xeAg~r=kzRPyXi<{eZ55B`{eTj5wF^zlR8^q-zi%lS`CyP zN4U<$KDuqG-+PKvC|yVC2Dy;y&OH@Q4%I2%8O=#2(9O)7d`ziqMz!! z4jN0MNSG%32h-d#l;*|Rbt-LlRK%1hKDKw1ow)?>pBm(Jp~jCM7zf~dvCh816d&3> z%mEi(xwytX(|N`-F&^4IM9uMec<(T}5bPUDvs`sJFp?${GdQ+f;g0bv`-jt@kqn5CKtpHRa?2sS`a2@w%0!YaKiu@P; zPzutSRM)5f?q0(#M6$kKqExCdIyyoumBjPBZX`l?vGs_4T5*|hWD2o*sYl14|9Kr@ zyG?yqk~n5pnncMw@?@p`@%^l%!5xImCs+RSMGpP3T)IjCX;?(uAPy`8;!e zh4rS(skO)`5K2WLqc8H;Z_l%TD8;LnO03izthNK{<@t3^u2z}I#QD!>ODL&$?(7On zl@{lVb!OIT{LP#5q-~SAQiF+Xf@fz|S*SFbEj1Wgu?eK&*m4;^jHVc_)*Mc(R7qGm zmaef_bvU+E!O}IJJ-b5752?C7v&9By3pH*V&GO3JI*uRmjkhmRb$l+a*Lm!%c~H%h>znsH*;$(8bIM6IsnLaLy%GmUDvMJlBSd*lTO`)DoFGJ z$lBUE>+3}(#z)DdQ>+%&(YxaI=F=BZvy&C?t1kMw(Kj~}s%X=fnilCF9boDrh}hz4 z>5A&A10wy%qBKFWS)!UA#t8j3-z_!(BxY|kfwuo_xIV94SmLeuHIxEF(~wfJV=zmo z;C!KqZD@=Q4blt+cbI~_VNqzf92m_pQ>ak)dZtbG(Hh%TA(yX21fZdi8|{^Z625=2 zzzY`(gh~-Jb*9?`q*faaCs(T&y5K^o&Pv^7d_9h>YpgdtiYdrKmbSXI87!T#t(5bD>Z}YhN3!{oX3z95y8c zJMi!U6NPMpM>cLzZbVd;rnNWd9vf}KHYwJc*oMaW|rh)zv@(T=%9{ zAnOLO_74RpIv~*t7@DS$Os2?W(%805sZ^$3uU*qcQA#n8O<~yfbtS}ZFV<|DkDzI+ ztgKNe6q%ZwAd}6oy1Le8f8=>jcV1po94EM?G9z2>nPJgZ`Ipz5fONF zx_(9PjoG2FIssX+`D^> z+oy(kdv2Ad=8N31e+NH1m>{VsatWJnzI~B@^uE3P-N{Qlb7m1=wSl6S2iQVo^<;c) zx-bH8(5Rr1LXtuvHx8621%XuDJ)Y(M=|LXcImGF;D*xz?DIVH2#9dguE>S;IzM;cF6K&2 z-pVDpduo8Obd2R%3(L^>sk^2*wOnPs(&WA!d8C5nT8oEv4{`fg7RL{n$R@aRB8xy^ z>4MwGviO0d-12yM?+C}1$`tAjAKo|0<8Qs7S^dt)wlG+P;zKukoWBw$Mt*`3KbmR2c>ZQ5T`H3WOMb=p|4CVueA+u zsP@yg5#W2BfkJI9ZZ=i-+v)Fphp}xc5Y+*bFl1ke)kw|p+lX|`0_q}x8AQs!8 zux_FTB7uSdtp0GT3fUc=5{t#iWHO}F8M2u)=}eYXDn&dVCy_`XrR4S3U+2`R@-=1s zE2W6pCaFF9D6|4prFdf?qUngPfW84Bfm3E>b&W%ZZi!|wOS!S>ZdYat(28q>le^Gb zwI2I!I~byO)7K&wmDF^kVPaKFC_NIY`)tBWp_JI5thV%-Yzn?o0wuumS_Ec{W;{#M zsiBnKW8vHs=(stIPAP&=lCVw2(s542;s`rIN(-4t7|a%H92(CNwoj}dJutz`vn!OE zek8hYQ-y5VEmRLOh={oJ5zJw7L0L=)pM$uVy+GQgx*b2n@k0&_r->UnbuS=c8tsZC z>d2298VxVxkv&;_8M&mCQn*1#%+RU10Tn0eop1w~S*u~`Q65^$4=J@gTwl`kLYjVn zWmuq~;`mfrK3*WHdm&ys!oAe;S!=kAq+>L_kaEjoIAv4!LN1k?ScZldgv^)f+%uV{ z=u3`NL*}JLOeo?=G!zL!^1vt_W?Ksh+Krm4B1ToW2^|lohmPu;(xp;l6E=;O%f;2w zhT~B|&2_tLs=s>PILt_)MdmM~C^&lh0BuRW{rvVSqll17XLI#WiHTdSm;7QdpKrCY`+Q34k2|y%YXAG&Ib| zKK5~3*THdIJkMotaH#KdqJUZ#-w#kq5|1ak6qf6{*EtvEsw$8*16X>m03!^eAt$=7 zkxpgEWHV&5Su&XnnM{U6B1tS3i+#iM!_cmIhA@Le#>hz3wSTFGV^picnT5Grgp zZ*5RyU7+aeArWj&P3>wbebkpA-l|be58|5^dJy2t5Wi>Gm)Ly6iVavwSO#;eCEi%8 z@pjQ+SKMH3VHLOD;Mh_z;_?ese(!s4Gn|U^k$n?<^X)lWK^Qe0Ua<;k4>eTnAwme& z(Wzpvih+wxQ-#~IT!yAGTW<0Pubg8v8RPI|p6AZ55i@iiJGsDoxrMC@Qntz7e3Cbp zD|~;pz|p40-ca)N%nAw9;BVfV#|c9I=;iYyZG+ijgMqlk6DO89xm;zg++eZVB4O#w zmzoSEZ5}(e!1?t$^Q9(>l@?AAvQl&S*2zV5O>n8)9u5qc{WT6zf z>&_NxXjYsfrwaJ4&vLO!R+GdDi7SQb1QaU8a2q^2MuHZCmQuWMdVzE@PQgkd{W=*H zpb;f5>zd&7LV;74)@Za`f^G^klpUvM+>RRu zr7rOFY8RL52T|M5UA?Zu&gXXjKV*D-ltd!I(&7pz2Z)1`=+k>Z*9ljbQLV;}GZUIl zA`!>7Oqwm{h5)2P(`Pan?z-zPq?Gu+PY?uMeZ;aX9(m-Wc%Ij-HZ04+G$X)pU5_vf zZzh1ObQ%c*ZsK%8r4;#mo*g@Okjv#rr!&~L-S_Ki`a8lfq*AF|U!Wq8Ge8uU5t$su z^d5q_^Vc^6-7pZkf$}y_G1Qrzy+k}_Gc=Un!U1pT>FAu2%j>924r-;o6Qby~@~Wtx zT?ri#`WyGD*x-b_0JTXs>E(~bX01et9zc;Kn-yxQJem4BNRcf* zqHgy7w_RKya1pEv0|y;LK}<-72uKl95Fr^twhNFDK%f+-R;!#AHTDgrcxcxUcaIM+ zUv5%tdfYvcV=@!xjl~j=pIV~o`pk$J`?CfIMl$RgOmfF~mJ`cWKC*8FL(^!u0fR}4 zd!}-Dp``BlJhW>FQ`cyDA-nQP9@vqm)O0blBp=>8!fdI5sR zTYT%pB_7;8#Begs|N2sk`=>D-D&XPiVJ4C$N!#MtV;69|pw9+ga@aAqdHe&c@mAqH?Q12j~_uOmI#{(uO$0Pc1Wi9$-O+%mB4Pl5}Uf4*J zxIw3mVHpf$(>D}jqLd<=&1~5ZHBIa8mAxOEoSfVSV57r!uY2nzJr+CjK$d~2n^}Df zWCytCp7)VXr{56(I%6C=TwnAthZkRbkuzt`ToHB12_J$?1w=!t+*Fs9r zO{PXiI5as-VZF#mCc!OZ16)|Ea(bo2K-}W<_w6SgvnaJ(bfNM7-6P}^Hg7Bz3H`9` z=oM(~8?b>+K^TN+m?)A;l0>2juoaj>kp_&mh<>^3yH3-b0*qc$`=)(Wdg_SIh$J?5$xK-c0=i!1?80{*{K&zUG&1CV&Vbs5k1wVzDhR zs9LR3DwQaeN|ehbO2raG!^3>w10U!+tSYPrZ-t;u6=oM+!ijyD$y)V+XE!tXtI zJeo}&%E)dh1U21YMH&cQBLQSph)#eG*tF^Ewr(Sppq-SCe-$2I0oc0E*N$DH=6IZ3 zt5I=${`lwxrZNd$xm4_XpQTbfJ+sVOBeLEW8ZPE>!DJ>uq3*J8FvT~IFHmTBOlIS} zcyXP@N|UpNIuqGABdHjtS0YE+NXq8eN`*_M7TK7=@ue~+N-e%MTjON0$$X)TB^ACO zuu`t`+$llX@o0HLPZzf8_rR)t>Si1L8B^DI?ZOIP5K^x<$*7PxlG(WhByh3PVlgz4 zrpaK?A}M{UuG^jo1DkEMLTwDCkwQa+VGnE7pJ}zxo2s^z#5dzh{|C1^top#`a!rIi zpc956xsf4u?wDl$;w)=T7p8Y1oApR655sp2JdhI0G{_I-uUr4<07#)wpj0ZM>-uGX znWjlR9&i8Z08Iok$z-I#v|7!Z>A+f{OtIM)K%-+qWGC(IN^w%ma7g zpFJ7nQ{Bh~*LCJE%(A$&!hr+($>#=GTV3nkK;kl|CIGFtLYNyyFR%7({G0naln~Lx zv`%tpXN+t|>=c^?Pqh)REqW}Oq6biVX{@%RE7qz}%M8+Lc?4mIrt4dD4_zr7O{ZkW za0(?tOEI@@@$&g4YL3rnHbt%Fv3oGf*|jp3p|ezOu-@_z0$OK$4(}XcMe3vnvIxVV zR4DVA-2+@)uTg2a*rI)^>f)W&8!iTI5Rn_T*p=BwO>nW?;4j~rrxk<*Qt|Y;)o2cf z7xa*O(f6Dw)VNe>(ewf|At*IHcIJ{y=Mua!x6YoS6e&9z8s&#F8jV|Sl8u=ZHJA0K z$9Ou16ND6M4r@)1)8&w7)_qC=jKwsL)oPfo%b=a*WT{E1>GIsU6+)?c^33RQHT6~> z+qk28C?rD@%q$lPL)qQfbWJd~vd-R-0W7!4U=SjKs%EgN$0#;~_T`lu8dMKpDFnW5 zVRf4ax0wN=RG(#6^?}^xMnbi?0=eq|03ZNKL_t&y2=u(ZzG`H%-B)d?)>Y5JY;t0p zJv*j&{o*1kp$@eQvR2;6y?R%+QwesA#DUuw93F}eLpS&cf`FjM1-G3h)Jg2nb-nxd zjT8?-tJS<&`Uh>y=;|JGHtz4fj(sd6tIeYFR zhY#Py&`_S!C&GRKdYc6gAnIkp!7=pWO1D}NeW47|90aX%GVIU=8uW%YY^Q^$_SfoS z1e@Y0Hqlrpg(gE1jVjetj+W<;ipL|ep%bpy29JUsBQ68tZj)Ol_VB>|Dcm3=pN{ju z-U*6zhv~sIUp+d*CvM$I-3vIgTw=wMgu2bc`zEMq7kGGQo`YjKo}XFd$8Vcvwpim= zzkUQPgTDEMO16a~t(zj;XS=$}N6ihoP4HeQw;#^bew!L@fDka2iSdQQyQnxmCzh++ zHJRf>dxn`SHCd@S+&wu!q2Y4Z!~i>U39>Ph14C(YNt=OGif>$Ma_7DwKE8ht*LN7$ znc;!S49!N9hL_|=4vmwvbiRFJ0WXw&jy$#jig&6$Iv)>0*>_k8Ldo5`#u(2gSX{5* z%jjB|GMYJlsa~ZKA3zF-Idx)A4Iwv9{z?cuD;~M8ItV8t4NYy)KUCMsuKMz<`s`Gj zMEGr}sx3`~+cXXKX&;fxYWI!_M1GW)9)F(3+0z^0rSBSeC`2p)Q@b%66$Uf$8|p&e zOhsMp-@UqUFVOV9?>BJ}mFi$dXQ#aQUO2HDjRvh&H0Qj7pqduVa(?8IM|l7HAMAq1 zxpU`u;)y3HmrL);g-~sdGM^vVu#R^AuUR9wa2jK58f|3!%JV{0FCnsR5z5JvXBfz4 z7#$t%ZuDxq6VzrP2?La2^fX2F+#H%tXxZqk+Sca6E!jl9H?QnrJk(_zt~TLP&`xG}et6whYJz4!RJ`6{;+i>XaJ}Prh}5^;(nJ^(uvWi?nUA zT5BT1kndhx=d0(}dG+i?M(vP812(5F6_`p{ygs|iv857whBDkUna2;pt@h0>ko52* z>e{hh^t_WoT=tFbYD`F)@FGPCaLyL-B)k2!lz zoCE=I7XWv;TylloZ9d_8V9hMYQEF%<>Lk>ACOO{FN zvcx4wEeQ|=2?8XJ0WgC(dS?2bzPs)#kN5mXW@TkoRX66qfQnE?G#WEg-IZ09`F`*B zy?zbH<;~??F0B`6x{Brf8gH-cQE56{DcSs=izR-%-D0QOBxg4mmoCC{*)P>_S`M|A z%gx;?r^fO)p61$CIoxnWBS&JM3f=iUyLa{73wZ3kYx}IUW;mPV`uZ;Qrk~}ewZ>Em zOF1;kCDM%|xmpn|B&C6ID!CCnX&{w{P#PtJVP;(dzivaH(A|Y2s?5?o#=lOsRFwbd zDh&NLVY-v_5EAuxm=iP9wZ-1`E6^-`%)NUb#Uqo&JaGoSzD&w(F+7-mAPyv|wz^v{ zNqc>4f3?@uhsb|uU^&`>d@2Q``vtWjsTW`Tbxxf+6~b2Uzki9J{NyKo6v!v|CMczt znjB|oX}xO@i$J#;xXU+@Q*#){PU9^tK)?1+N{;tL%HQWW%ea zJB&z$(Q0v}TII$PR9g~ijp^O3V*S7`i=0Ey$@Ufz=d```nJIk|Qc!6AFk2@|RhI;3#-{bl;Gc(J%bLS`)3oI@!QY;o9$dvdH3&>)W1G)XFpMlmS z5($3uH^0Ksqenw-l>Jc5iWiQ@*#~X-jP`htq?>E zc7X{(w@FJg`fqLMs_g^OJv+0ggjnbfq}2ms1w}+eQhcT7VpK~k=4ZL+m9eE{*GwX{ zV$==ZgFxw3ZnXG~C+C?M$TE`8P;EI(3}pEJ)fI*_Nfyfq=8sPDT%pQWo_mV*Qk~U8 zl|T2)Jd6LP%%!zGj*sSPIxc_xD^K&ycW?8R3$uLfh4cI`uUuxiSi@*5+G5;JbQKj3 zTtpNC6Wvpfl-876jz4lVY4Pjlr?_xrfbZPcX1fWWIX=OA>$@DS)%gog%yMhD!lktW zzjkgCS82X;ZG$hKog$ww*(}%j!u%vB$8!AL*RQc&tfAV)zYFT==`!f{N_2hJUHpQM z{JrCOJbQYYGgG5nU*F;K(k3m(hgqc%Y*%aH-a-V6vCs;sG^X1^A*f}BsHgLo%^H@| z?9BMl2Xxm_5UP(5KzGA0AIEFR(G080D=aUs0mdh`mdJq- zjOjVth0AEiA(=^YWMT~EJy`cKJ$;n<`FRqF1dT?MVzJ1-gGX3EK2-=SdXWqa4Dh?Z z`=^+mo<>TEZ99DX+u!E>_b-Km{X~p!>3BS|P2eMbVTN~)Y9_GcTdUjUAFu*vZ zfEWg)y)|y%TISJ5&M`JR;_rw!xbq1AtQ5j-q7$h|8y@fuLEcb5+*ibQk_W+9-4I&$ z4zO3*(}n~L&mmPQu$UgCVE7Q@5xd?6nfQvV{c3}AN5^>T#3aYZ2Dxx_j4z&_qah7) zBcq%dO7PW3XK|I{Pd<5)TGM87Fw1}W#m6~!WQd$)&~#kJvPr)3=p1$1VQwVL3nwRV zUDX50^v_a)2aw|9Ag~SuDE+U5DX~%+7HX1$GC4Pv=JQiY&g2ZHGZwRhDUJ_kc<#g) zr^j-PXOp~ea-7p+d881G=aS40XQ(tC3NlVS~p-t{c}?%ukLm zGd9S^UYVxj#uoJLYPG8vbRbQk6jCXK=aMV!(#Q-^%?u;77l+HbFGX{@~69c(Qykup8|3dza(B5vwNP$ zm%sdFMn^}(Lb0{AL9tlCaU2Z8csK<_X=Z081E}l}yhC|-`#VU-!MgYq&h-y`y*T)= zmTCDxh=%|kZ@>EiU;XNDFgZEF`zny-hH9b%3JGBBZQzYfAvagR@UdxWNZe!^qgIaj zF}hVNA~MlYbUWVLX2club%?33{dghpq@bWBhM6R#TqfpFcH_pj)z~%~tFhhKwy|T|-m!7k_m6Sz_Qk$i6YqSe z4LH?nMt-q7#qTF!zaQMgh@@iC`L8~&sQQ1rZ?+GJxAgd|58h)b!o5GcZWvjT^#O%K z*Y_uk(!sRJw|!SDoWF^(jHrgBj~|%j$G3FZ;AC${13F`wpU3SApo5mj;}VoCd+%jXX;pgR8CXogROT z1)nLECgJk8HpS$grp*?An$Lxr-xJ{w$(O3;Yjl_n-q3VjHDCA|GGLNt3sQ#_@v;na zs>9D#6xN8n3O&e6sLe`_9g<0>4Cp?WvdPHgBeYew30NY8Hnm)S<<7VRKeqVB+-^ABYoecGwrWe?UY{ zIORMtZ@-;cY|JMPgR%9}1ThBbo0)Ok_nMiSK7IE+5ZHV0{djOcs~H0NLkx5mzAZl) zv(gNTdxqcoES1yZUMAyKPx1yxnhCw!6b2jQ*u0>94IS_VdrQ`+?~DwQl4pW~Ck=dE zUE#==Eb}Im&+MfLN{nIhRT1_I*A>JF2T!E9q8J6^7$s*-XwROn3ku>$a@d&VEc7$P zS!0&}v3B`}hO1V5O#XTb{%J8VBNsPDw@O4x-2FpFRXfs=D?z~Rf=IK^ESh+GSTGGp zrTt@~gk{O#vm0kbUHFIyn!I@&hqD?W0A*)US`fTiyQfb$WO~i)fcV@4^msh6RoZak;dOC>n~fbuHhbKkO+YH5H--J~W$+I7Q~>NTUOjFOF@B4@q$1CM_8DtiBsp|p zsW*uy_LeE9viEe(+WXFi>z}Pv=}NLLzT}-*xnc=FW`cRhh`C;l{cgyKv2Gvj(9yekMMvyK_@5Nfaf0R|e!i z!9>{OsdYn9cw+hL#n1QeNyWbwKda2C5!93N; zXYT3g>23>nm}X^aCNO1jNv+>MUds93NkP?}hmy1E@gNL{wV|WnZo}pHjewlecq3R$ zrqJS%(spMC^7!bqzh^W)_Ljn*R1Sf?4>)H7EfkZDs}_3aBO((5wKu38D6@A;mkprP zzC2;gir^E;+dHs<)EP$zo0?jb%3zI*+w^nVs7bt4)VxJqVC`YIUmZb4b&4W%-jWZ~ z-nQ?rsCDyXhin$cF!mwQu?)6@uXq$?qGzrfu)S)x-MZc*H)~`buhjH95*(IpSv&nB zM!Zk``Pv;GfmVyZ`RyQBVkYu+2wjiGQ#e152Mx^4^+VAFzGZZUPc;GO`f?MVtejj( zcF+C&0?0@q8>SM%>+RGRud{qx&nInYV}qos_TCrGQ#dni-p;!OSt8Mp4`sd3vJ# zm(5_J&DKEM1=KyElYM0Vc85&84@|xPXq|@nJGp6v2z^cwro=+5!FQaCIihf$Nd4id zxqbP=KS+Ng#QKJEBT1ADJX2K&Z19&-h0cs|Z1C_#zbuy}*ebuGaV(R>e|d|Q*fwKQ z(PS8`OI?a6cUF5eQuv27yGOddbbu-z+Tvp5zl+)DwL4Kx$&j%BM(cZW?5@4I3+{a8 zCs1EuaI~tDDK)q$bgX*~%+@w)QOI4Ye!9E){#v2NZ_Jx+NRe%7-_)yHaohyb{1QxR zb%F5ePL+GD}ij%?byx5;7k>^wx*pOdeFo)CCE>}w7E62i(>VQZTuJ;jvci-i8ZHVul9|OC$ z?oKU1O$|V|^&%xEys6nY(!U>JII$BG8z{zhcCp4Y*`T_vt{9tD*Cg^swCM6rOdYok z>JU#yhxSx93ENSGi!JuM+)z+Z+Rb)xj)#+Rpu;z0amJzlE}{Q2#Mn7FTD+cErKKYu zuyKl#4*JK@jq@X15=sC39j2g1G|<#n59_Yj7!2tP7Dy10nFug4T9I7~rqgfofSX|d zbN77u``Xj@z?IY9D_R;OB`>j&3 zn~{Cwx9I50xiwDTkGt|S4(su-NgbHTgh(>~izw}58p^lGaG28FV8myaf(d_1$OzmSa74yfQS@Fw;~>(z3lF3M`g_O?1NxM`ih)`I zr9z1^PxY&u#fl1^x-OBwwTP`JG|aT|7|8#UN2%qB*Swuxey!Yef6>K4rnLI{M>W&K z7H?K6p8DKbD9gL`o44O{1RUzjx<6bv34z!lOdKL9jQHRr+-jYfT%2sN`@@XMg;w%6 z=!Ip8t40n5&($}MNP_qgXvew)1ETjglHJ|i+#~}tvo_eQw6qKafw75+3Fhm!!zq8S zIb;KiEd+s~{0=*ZdzepY2|6G%j_9JcmGij;k52cu&G}+)v^h7DOy02oN*fBS>4O z*XG~-l}W-?lV0D&nGvO3Ug?FM+G%PC7k$sqz39nbAr;Np@nxute58o~BBDd8NwSZ# zY3wuSS=-v+KGJnPA)0UDg2pe;QEh?ZZF@s&KY^iYnj@-%8RR9dfnFa*oV$I>t0>&rrqw~a!ecYoF(&~#B6@`mtJ{$cxrJaWi! zj@qcYfHi|vdoXB7eX+yC#mlejcI~IG4$V!4R$E3!YJqZ-`+-dS4JH>x$N`YCIT>Z5 z!7x{iG;&i+rGS8NM`bn$Thc(JdOyb2?v~=_cBSy9q8Zn}?~)jTQYq~u0Fo?rJ6k+W zOk+@HKCb@#fd2Hsj4FLcUiVqDSj+{C61B$Mu>Di9&?e~IIqqosRCk@&3!54n9fObC zpB<^6p-Zr2%lnEq=Jk@fST1`jznsJEBap7!`)nq-pZfuCPaZgiF;&id=6^j z)5syLWbqqgsXD#kstc3X4{Rnf;o2X8KVGQE#yQVi;v(Z^Z%A%Tj3>GQPleFvZs zmF0i^LwNZ>G~x}Ew=aLf2+(8L4-7DT*s(6?T;2}RZ*Mc?q^)7TDKlzj>#uM+Ya)OC zq-N&UcTZtuZkNW$WbMPQS zKy%i9stBL-S0qT@+#;{meQn%NkGa0rdVct9UC1(r4@O<8o=q^KawPcePf&+W7|vs6 zkWGRt<(E3?05}WsWwu$$q_O5jVfYd8+|dXA_6Y^5i7$?rNR$jX#G$^oyL7Klhm6;Q zQ9Qide1qvtK%BWfA`P^F*4j?h`-+lRea#Tv;=-rLL7t{ZX(sLNFvI7brxCKA#Yolz zVNr4Uqjyp;L^|wOvKVO*cufop9a{3jA8kog;L3}-8Xbzw5(OsgCEB^>8WlrH8N2+Y zy}(QYdAX=+Wt(cVwzE|1cJTzw{1MHTkyFI6t0Xcho~7+V)-Zqay<3)oq)XpW)gy7@G?k!JCsU@#Fd>B&b7-lw+yE)b zKBiA0;Zlc}4p1ec7`bewb>f!bXi_f2M@-CMHm{ppsyxf{=!C_$sNgt(7oD(}x3(;a znq|rq$;St$*ynOI>r@MwbCzv(1>pdN0t}eVw)U`vOQy}v$?T6;qk8KUfUxH1dQ(CR z@O^wX@!5Z+C#?iuAKl_{Gy=xAQC72Pq^k$rw%*@-J^@-hCID1OmCd>gKYRAJuKIU_HXuB97*I1~LQ7oM~4-rm+aWZL5YsnQy2xs1)e!L&i4P}$aw zKKEyf3XGO>kxby|0egaod%IJFZ;i5HOPPIA@Iu=0zk%Q$wn(1O2SYb!YU%%Q-*9QC zhI8DSdnAlRy|{_hr3Q$PbaW$8IA)IdX(ws5sp%aX{Y8?_bKg35bYxdV?c@vM~jE91*2Epo#3$ zglU3s?j>^|1}abGXJm;#P!_nc52P*-z(Mpa+bg~}+vi{^xstDA>V}sW1SDWrH#Pk? zufFs=SXM-se7!h@N*C}(>SMOk0W+quVWvvu)0)J>lvPJo)9>Bdx6iL`8)8%4Ht0pJ z-xdb162j5MDe6-uFmpme60ae{f=cwDqcay|Avgo=@2kDJFlG%0&t! zri&6~vEWb;QcY3to61!zJLc5p79?ULiH<6To+pE8$!sos~p>ix!{`JuTqx?AU?Rt4L@5s|OG%{K!X^j|u^%^VN1>03m>cfx|0f`_cuSiwd*HpReQcPv8LA{k6INtX#W&AvpPJDwP~78Fg= za1+V*2Q{XvmM8qme_%s`c;A;Eilm~x%s1Na`CRV{uA2u;otJnYH>7Wg0*}4BfT2u4 zXKkmn#lG`tQuaMTk5``2;+O4;WS@Wlz7vTYk8!P4XAq7~QE#OohR>k)OE{IT-(mS!LxV6c?U23RCZ zl{+&hm86k7pkR}H_5GMC`h?g3Q`PFW#!+5IO%WYLT1gk@fOuxf92(06A?r=pSsmVI zLAiApQSuzyRRF#&A#3bF)*;3UoehyoQuU6Mt~U=;7rNY@Ft&gN$xIOt48`JzH^9{h z4nE$Fvlr(nakbav|CLtD&HR+B4060RHCh+Bk~CwHAK#_dMU5C*uV84=4l$}rSc>-C zw8~427iA6K<&>l`$_!47FZFvdugb>6#PoWS)-&}qOFuui0g61V=?6vbL)vjyjh&sz zvZWxFS67XEeVJGZ3%cLm`Gb2&f`!owd4po%XkvSrutH_GTdU-T?>K$8u?W+7TpvQD zkE@g`ca6$~bF^gJ716m^Lxz!a%J=(R`PZkv2tN;qNPPrUEXGE0<6(?Lo3Dr!{l6B# z)a4VCfQ+FLx}z`Dc#s}vfLL*;7w(lCX4uCEpDQ^v0AC3Wl^m5HSh_^ErWB=3?m*1C z3^0+z1#=e72^&a`^d68bF1Y>@wmTVy%Wq-BEgEWWZ|t+o6<&7%$`KMud+0w_Q3dwq zme5WM3FIfDZZ=LBt912t=ghMv;=vk%k3?|i;T{HSZAa1ILeB$_Vk=(WNPETRwP~ul z-m4@-0wQ^Ukf_rFuJgYKu!!lB5N1>`OXckLyaRU?7^lGm!hN=dJrkL%FY{DQuF`*n z4JAqC_*jw;7hJ-VI#|2j_I|!kyhyV_N;EH|)h`&=k5QvAKxc*goWJ#?z*ZA#;EC>> zQfZ!grik7bhF^7l(I!PeS&<3jl*mJ+XQRa#2)vIBt4=RqPccW9-$9NxP`!_v@BrPF zCS5;uSd;wLhrV%PzKzl+k;9eGLru+puK`%gzP~)!-KwqvgzNP(a#FHc5gz_UM&?h#h;a=)-D?ED1b61a-0^G%w>P&Nd<4*`y0DyDv zt&#eF%cEV;Gbcry7$~k7DgBB9K6lEFyHcjr*13toIm6c{8V)2N!Hp=_?SQWfqbYMl zkwR=X5fOl*D0m{!E&zY&c|X(3t`0C$O7nar$;{k}0dmrPAGES}?+C44PlAp9H+_5y zeUkUR;?>&c24Jy?h6zZX`627Sv zXvRrvc)ia-4@o!zaI0L*A^s@k({?Xa@gNK}yC%JL%G3I{=$k-7LgNIgF0XrP-;aiv zr7Ctwn7)?!g{8`|?3XoOnz5a=1!j3-(!;29!uP`hZnQXrWn;j z@$%vcR5aP`kD4T2t7z=*8j)xG;N=x&O{I*huKp)F{y`qJHyj7ASV{@7*))kC0zrMq zZr7c}l7xfLG?&t-o)E4&513%uizG<_cZU!eD%l2293|{G2Wk#C2!0DAD z`&M+xu8K;Ugr7R1U;jn0AA-Yrs_ccs=Jfz2G7uy4Xzu>(_Q;UTi3t~@N2UQ9{oJ&- zGM_ZD5X~Tfycw8u4ZEvcbn6XU_*}XcbK+fXg8flpDzNU#3Rp6ZB_uou}43(RyMrlJ^ zFKp&6`Fo2e7GQY(@xg{dH)@=PBRjOaKCiR+kjqIGS9SCefUW{hacUWQUgkS%h*B+W(SwCDrP!8JKt_T#NGx{eRJspPFdq zE5Y>%s!H`J(J51*R)*HJqFJxBtFuL3?8r1P?&SXHWn-Z-yHx$Xu5|?$t;{{}`dR~f z?^~Z+W}Y%_`9niP!@$AK7UA9B%ivr z(UfX;5S;l}R%#2wBo`X9nF5*b+66pg03%7MDVjHZs%bzF-}TVp`m~bm7UFw%@B9uV zU5~wHg4-v4dmpfEx}9=^vQrNxRtdfCAJN&zel(6bXL0!iecbVYW9yOVY0#HbO9)FNNJb+Jf0bdEMy8bwbyO1Zaw_hQ z^WuIzPTi*WoTvJ!#F`~-Z&L^OD6h@Zpd)B2etM%R2zEE-3$yyUVPxS{%Qo z-j9zrfS=xrpC(916~13Se6G^vM(zAbX5qLpZ|c(jp=Rbv6w+dgVdIh~%Tqh1z<`<0 zJ1Dn@H%j~__g~DpeM2UrN%s2sxi@JMdr zPWTXrSXZ#Xf7o~`Nkn`d0U|n(_RR2)EZI$9i9-!oYp?>CGUGfaKX-y2S#}*t)Q_?_b z&|c(Wk;X>(1rJ+IK#8qEo6xXL=MjlCF z9KXI8WjBvHmiOfD)`B1*5Gjv2=gnhQ9m+20tq+(N4iB*j-3in^lDgYx^MXSRa`5Dd zxNKGC+YZw#Z$7TpGWd!-{>C7{=43dTJ-S>HLhSa>k-tEnSeqA`HT_{az!INmH8eXA z<;*AJq{!lO>5G{ii61ZO_K0NfZHF@r18|oD+fdvpIB~Eqn%%t)c0J~Odq1TsU(f4G z4EAv>dk}IXO2cPGCwzgKjjj7sz~k@}SCzQ>&p+WbbD8rotE_@`C`G||MECO)m5!H_ zMOH{AoQ)jMCU{4$XyS#Rgkfm6_5Bjy9udebh6W=9#fe@>P`n~OI>Iub!opgr>wbYV z+CF$ElyQcn;>(k~Kz^}qn&gFK>DAAj{LgDy6xXC8aQxcqk;; z)<5Fe;@DUMz>v83L1Mjjy`tie*!UUVJ(y=_Da~HRf_?U-Y{VPw9RofUBRjUKO)0L- z1zXoE{5(l8W1iUjt#vV&scjcDF_=bBe-*FSQB%z8Gt_x~T!j_|@e>N}C9S}Wk)app zzvna=Y{BQV)tO=T)te}K1Kwo*68&}YaG(LZG=rWg@74g$*HVo!_|Af9=r3rU02$JV)TEHi@H8fJZ;`wv2c|QkplWB zkA3{<#;oBc8o96k7=$o;b}#^<7o6=B2bg>__#ERO1e#a6z)3TD!{@5Lk7be8YHeD0 z;gk-ya2xlnzL>YCq7)qIiU|1~OLX%+M@a~eSok5E4Y}pjeddlhwB4r0?TGLr>ZQGI z@pkPNOHrb&NbAv%;UXH*76#vD_R3y}B|228zm_yu6TpYcP)xT#2v6o)nd{eMqQ6@u z313!iwoL9iN(>t-y$Jh)#T`Tfud18CX)3fJuY{r7J%wVKlR zew-S>ck-q)_*nZZ&N1L;^?eM{;K!p5TIy>>`ds=7^b3E897BKf{Kp#@1QwmUY&<|I zx?wBez|@tIpo+DZ@8k;mSXL+(E!2t(E8bqg4dl=ze%wGD=EnZby;XhqI&OroM!VuY zMSk0c6x%61Gf00SSn-DdPi#TWWAf)Fs(U58tiOXBQtIRu;|8F&dzklzBmbMq-@CNL zJaI7821-&yLPoZ~SaZk0{jF4?+Go47Y?f`};1JQ!paR7IyeQKq`F`7a^Whcn7WWCF zGlX7r@FV3rgUoB7N}sqM{|=h5X18catJh?(UL9;CCi?cgK4_nD*>>7mgIZ^X>l?$o zFq`ci^uVNZ99&W$YV2_2aHaoPRvaeTUg12Riisy;fUCyJDE5ED ze{6(i?P)l)AaE%t*g~sVc}l{DyMO$-G}`fPub)_M`Kc{4+AB&cG@wc(6e|zc>0}*- zT1l;nh+MGkiV)@^SR;h+mPSyi3-x}Q3(Q2}2Iu4|aA27CL@>HSlA zH?ohcF_#4bMkyu3st}!6Z!Fe{YyleJ_MMdovD1!m=!^bF;Th566tM1)dB-Qv&s>y6 zu|z4V+3q`D*2K@vKTHAU9ub!j0MgVoG~f@iL9r92EJ#1u(~mXUctM_IU8^En0`1iP z8!=E2)&8VVT_4pyZ#63hOO=W}C}fC+1{$^MH7jzemxSysJ~D~12nbhgw>eQ7G^3;n zXUrC!hHz`^Zia^UYUfU)NP?4yNP4td-5)+fLuhWFTkFeAQfMIy$QOfdTx{*o%W8MD z!-QLXSec^F58p-MZrOv#oKlp3yz-5zO+ddRPxsl^%eq_%MB1SvPWcwH5QmzI!<KH0jqRh559%E?~k&ciusy0fgz69)RV8#W!pfb;q$Uiv$Ie0 z%D$3zw#pBGOO?4k8u;#7(TO1p+>cn|oF=UJQiT{p(ZpX;#vtt8o}CGz#MS8&6=me) z0EMOn8-cfx^or@3{IMG{8oA3?#($R>VhImjOwqj*yj2p=i0B zbDY-Yqu|y!OjC zyct7UbS62Uq|c>gs?$Ke$#FO!Z&oyZ$VmJLSL*oH*%=&oJx*DR0fyCrQ3l!G#WD!E z=M4?&1ZUU`{S(eXgUF_uk(JR{&n4+WInk8mYYIKsn|F@pSIj~B#hPYKnj-F_Oxrr2 zMTVNuo+Sg0t(kc_f(rBcTU23bnpfI`Bf1sBox-X;jHaF_5Q%c)HFFR4n1vxN+MduFpWx+ z?qaP4)8UJa)4|iBUXC_nU3+`~L^_A3&*9b<*~`ldIqG$6jM@<_Pc}!Zro(F;U02Q;WE{WOzQ-U^%7y$a2C#pGPRc%kyg0d3ozv@|J5Qw zh}utdhx@DS$jkLS5kJ?k8^#%4vV}fJIP%QOL)1Izcf&=geL$ehCuhsnES12FL^>K# zl5!FCrCn39ktMaCDkfAJp_B*- z{)J&c%QeEQUPIrrczB|MB5TH9rZJKTd@ESv*Nf+ibxr;r0}g{W(j5yW3cvYc-=Na& z2G^|;G0@?CZ{@6qHB~%|#&V}@%x0JP3HD4m+PGn9lX+=l4Gk>GovPMv(!MSR<3G9= zw;$ju*MQ(*PPEN^q*|wB*BW*!63mblY1_a&7@d=j>`SejZq^>t$4uFEm)_Oe|9HuV zzH#S~IX(T0>f5&#=Tr7nnY5cjrdX*$bs(a8rNL^ck$6&q+w-12M&O+jKq~>)S8_^< z(doh592Q960}^PoX|5zRHQ_7BM|xfKy8#*~ws*PF{HQMba>97$jI68@qM~^4Li{b# z3KZYzZzFL@dz^JDb>G4Oyb~yTNEm0<%8*)oUDS< z3J*I~hx^=nBwd17D%_O=*Br~-1&6IbHLZ^E5rUl+X^9D9!EO6UZmAS0T&A>1RS!X@ zDn*#TLfhj_XKB0WqZZCH={6C?(rhT2NG(NoD20}?0yG%8GHI!CyfGl+?Qa~5?wf%*(&Nj`YSVAm9yJoPNhgKW)5WR>>vmAK08oQMBoRYWs6bua((=Tda!d+ULH#h@ z;%Ln=}agh{7>h?*q(s= zq-(@518CzWl>Bv`FZL=q<`JyDaRWl5Ie4FqrlLNL=GpL{T?eBH>QXS%i04orx2U^7 z@x+l^EKVyr&8ha#04FVL@_+&raqMA0!6CEWYW~sO6`Grn#Oz>qes&5>#60)d>I*PO z8P6EHIK`fxdg9G6Wf(29jVit0gzBik&P+o*i1dG;e=aesyzwJm)DhFEFBiXDa*p4t zA47{4XqI|OKuelgTcLecP-z$~a4Ln5)QKZ2=L>1TwEGoT31M%yO}4=jtcx(s$ETLQbWUJ?w6pzqfcO0}KI>83d zyT~hxm5Ng(BKEj^T#>ph*y;%v=YoHC*(43Y3j(&P3_y=?SQ5WM++RZKGwVFrBD<4q1TuvqOOo>5SBDRElMt z4etkH{@2UEYUK9p-Q!|L3dpZ<;FW>v}p`Cw`3 z3(&iAUt;50qgbrwQ;d;+pB#NLD3IZU@ThCNs=7OZ~hXalqKD=oU`9t z6KpzcYxhr=^02WvVR*+S?s@w2fQz=S4;V(Expr8e8z7mB<%vxIB?D&+>vsouE;`%CT?&O@Cc+x=71?Ex zt$IOI@isp&obvc7YFJz4qZ3hdMKFb=JZr*k)EiYE8ZeKY*riSGt>!l-DPG50bILFB z(7k#Lq*9k1}K~f4e2K2!135w zi6P0PO1cI|R#eE2?qBz*TE4BeG5$~15^{tgP|S54y=!;6!0@Sd8Q8UQp>;x3R8)^i zdQTL^hlg?gPY35szJnm2`|p+wD^MMAeSLx2oW3iYI?;c2&#if7r`h2j84}pfW#KHs$majl!Crt`@NyCl1 zVoUGjZFoxy7_eQcOmNlwN9Dj7cU7`pHGme-dVV>5f)jX5DLb?sxG!7z&qm3r(R^9X z?h7nhgd*N3R7G|En~XI_g<;!bXOOkEes)nvK|oKCEwSX*iT+e-f3_@nA_eZB+X>4Q z8~VoJdHgp*8oSob_M2f-AuDS5Nb>!djHuG+ypaZ$@0p|&N+t8lv`KINqUisfkSrS_ zGy+M260K{0pMN?>G+rp`mp14A8rqRp{>O8cZHCP&M*uezZb#8`my6|L^tmY7zxbl_ zg;_?FF~&vnNb}Agyr1yRG&O^$4czQh@uSh^JAh~d1JEaq-y1+WM}MM9v3xeluhigR zLOzh|MF#5cmddf--rl|o{ssR5+q?N(VoAF>$b&Z}0bbDV{kc}I@x|T<=2GLt?JZl^ zbGaUZSpi47?EhqIo?t%BiUp{yILOCW#O%+DBI-X$ncfOeEOH_|kEHO892%SIESR8s zCTZG7zFdlLO2W<`^K-koso~}+@4=|Wfw=<=T=^Iq^__fDZi)V>W~#ETY9O`opchjA zIAP0(HejIbAaWx3v*fIr0JRh*$&qh3O1gOWIC6*Gc{Lb{C(QgK!-zR^FW7PDF|z9# z-&Ep82>l8~p356Fv!r>ek?xAK zQB&oH%S2N#%F-|1xW2Bp;`N+P&MC;`BW`lgwG{7OEKETk9}Gjlt0r&8Tr`IcFzl@l z4z#&NJvPp!LLsV2}&|DGC7HP^Oh_?y8YA? znlPM;t1C^?4vrrX1!Bbca&h42}8 z@dO42%E*K4wtK|@O?pf9UHRfE;4b`acfRsNd+|+lLzEo)TeST5r{T|y53Z!Id8c2% zcPwstJ3T!Uc#Gq(?Mj zH~yeMm*fV@$?{o`dJCxHANx={m(QKiUM35^44U`B9a3DgdG>IQK{S z2=A;*u(D?yMjWNfG5Dye($+E%`N@yrkzoRd2d%qlUeNJ+D)ec`{}cVt7Cmt-+I zyqJLr7iLDh-@o?_51T)_0&hkWTiayC(s7_jQ$$3>AngK>e0ya5w!OeBvdBv`^!Cp5 z=(wuBsp^c%o{yrd&v?o?si@VGX)LgYgSzME$Z%` z%$MhC-6U{hz(*bmIFdB9+>dmtdE05Yp0f|`A?5K*b|Ma`vQX3^uKwO^UT<4q<`x!n znU5pZ?;_+!_~L}$-`a**50=Co?ZXsDmB$d)5o}m4Sg_2iU))!@Byan(YFMUX$`_YU za>+|xDaVXU;Wuq-dv<;9YHR0N*IjcZBu9dOFh2b&8p-&QS6~eUH#uMd`zXeP0*Z7Z zrcKVDtGGbdtg$x5n_=fVcY#r{m^W&+^3?@;dn<3%Hz~`8X;QxEVk&vk<6E3)KF8|c zno%Io)%VV0e5V(;X-J6ZR_#ZK5LB{ZZ&9K*Y?BjBU4(6n(2;+Ol=vu#57eJ7NzmmA z5mNboEx_Hej0ac3(v9?N%zL=g)-*_h3k8r@4%R#gPPpl}`Hdq#Zif%N!FI(o95{mb zg;=k)5F1Q1YMSqWjkL9e=IH3i`*K#7!Q;x01!H4lJ8jKwufuUx0LtXStwcsdB_>5lBzJ2A8C1qhwI3ypyEX3F@5)W*)ds;4MJo z^>G2%HGAJ(7I1*_kUil4VV2K~InR4WKjyRR5z>}K8dc0C`Iy2xBMGfK3231ZqZICz zUL34Ft)Jmi(B+MxsWrEf|5Y+?4pUm(sxw8Q@N3lhuWj;jb*-`qMLhezzR4m6Ax2fg zwT+eCnH}N+w6(RRZ|U_VKfJz|Zhp4dVd~(aX)G`4cWFb&#qyjHrXC18j46r2O>N%t z=U<2N#xPusk*AIkY8pt?GE>w1hksmc1vdb(?Fs$Wg7v7u!!1;uE#ku1uqDf|T-mfs z^ITBvO}|_uQUX^VT^Ca~#-jSggPe9d>QxKmxwI>c3X?BZS3lVL-^+dlx^Q3Nfo!s56BZ5*+_EYhT->;s<`@sR#nTn5bC^6*uX)_w6HAo{2$*{< zQdq7`e(yBPhS7tA11MK$O)I3nt+~?Knl2_R1h0>mO(USj-9T=gB3y4LZpP))tcTa+pABZ#Xj#7p+zTW74l=T`SGTkBv*v8Eioj9l?hZd> z|16$C1e5y&B41itYbNBp(6V{o70m24_;>`~;a9o`RD${%3OA`Zdty-zTh|KAA)yo^vlkNJni51 zyOWH+H#PfW1@yr>L@aiGqG%9m%QXsZLnHG7d0kLf;l`jSRI6Wmd9a*H~N6U9k@Sb^b=i zk&Cj!>x6W2h842~F7UT1tUf7JANM>vRK9f;4Zq>PzQ!Xu&4nGxX@;#_J?3oXPH{=e zElb*XP_f$EVs@~@`)zZau+9AAb;x(yb=Y(^d&-8Xw;5x|-kgo#3=Fn^xn}_UNK&QB z6hI0fzQ#Gr=7=$?s6nD)`_&-f1O2A6P709BWp{tZ<>LBKqDn{Fr22u|eK5x48)^&t zJmf&8 zRS5<8!2O^u=9%0YRmr}wGmI!pu&Be^tVwiHJAHAcOboUx?axxL9fO1iws% zw#{{@%pZxnD*cQoMrlJ-nQtny?Erk8Ssxf^#lf9tviIm4;8qQ>Dz(xf9<&+TdBx#N zds`r2=+!GU$6@&nN(n`C28b9_n=r*0_!Ea^ z{qrTy^8*svIYZ?05K&`%Rxzj!mxwz`~L|q(X~*aCmrOm0y`i zffG4BJKNXa4;>f?)wX@=+3nEQ^OW_8(r&pMJ-*&X=kE3vkQ^XzssgL*Ku{(aI5hhE zgHW-grKQ_nuNUvJ7pZlor+pY})aP<DSNDMqY)9z{K$( z)^~kg87>?3L@UVJ0R%mtJ7S-QeNwx2x{*zb-G32L4JwmGp0iFGbSoO zSMEL)F4-cY@C1rkQQBX24IVC*y-g*`_EvuX1yWM&g}`7C9<1b0A+9wcDM~afS2y-? zTwRo9oBb0=7~0_%ir{n477tbPZ$U$*+IgP!!Cd<*kDr}n;A}xSLim@!4os-sJ^Vjc zm~c9w(MW?Mp=hZ{4pwh=aLkI=Bl5gYn9KDr!9f7pSy92jsOJ+3Y#xC<)c36i_m}gg zk;9u$Ye2?C=b}2zS8s3c+k0-L>Z>dG*49?=9k1R%P5p}fyFCaeS*_OVCf(N*07s+= zF6qvt@-V+eJKmpZIIZX8=LbGLaRKbb{raH8=s(!70mJc$iL2`|J=CZEvxdbKNlLfZ zt4L*9pegj)I~!UUjsiV!!a6G{I4LG14x96r3QY{l9hrj-%^93EUYHE-9y>VGokH{! zv;ij=o}AbtJ|-2UDe9wWV8=T3x};Ayi7jSnL)&m5Ql`b;iY7-_{?zii95y>9zf9Fw zRD*GzQ>=SW(=uW61?a}eL_&JklVQ}~!9^)Lk5(TY9H8OE)zBZ>Ew>F)6)v|hGB^<^X z%IKBT!4cWhokWE(H^O~xfx9;>$Jr$xWwbLse%4Ix^3@U7H$M58K_xIT-l1iDXNN+q zsuMIm&K4ONIcM1bNUe*DivF{LwpPxruTS*$QfO(V^K^86p!{u9d$Fv-hU*wT3os`G zQ){v)h5hDGej-I`SeweQ{FX5dc3gTn-Vl{YmW1L;G=UBW_y$6Gi^AxfJo{1|8$~~`(S%!h?j|);8OwXmjhnvz zOPL4|oA14xmcf)>!J;ReWz`~`om;8Jq8E$*Glw|2X>N*ej@7sFs;6Hp8*4+Qf@dY% zNM=LbeZkCIMn6+4-rv}ae_l{2Ivm|^zoMdi>TJrvPNPCcu1A-4C&GC8FR9E5j6@=& ze^t9%;UPU=C=7KgXa(~1mZj)pXXsYdbo#zZ|LM7glPp$?aC^68F}B5KD2OeK6E9Lx zivMnB_QjCvys>gEh1feM0H~*&pI32cc{v^AJTK>bdxPpU6@}}0tTA#b;9eo_bJlnH zcK4J8L8;LCkFBZ3dezk2JZyS8ZpuhpVrbZyoAAI&a30GV`$xeFAzb^-~V zlGQ5bt||BCd?b7fB-Gkyg-}^CxzvRKp^p}6QS||mvofMw^^4+q0_Ohc(81l>qEZXj zTqnuPAr+V~669ZxHB&b&DgMQ#%8zKO}1^j z&BkWi*u2?I=4RV&v+a7H?|aVgADA;|=6UY>x;_MjWErd;QGUs=WhIbhRU2<=7=c&H zT-6CYcA=)wChaZ5cG}p-hVgc;zbL*-*kP?^2^WRiMpB}?=ZLP76_bcfn?+u+i?-eva!GK7o zMG}RmVEW65wXyjFrX)e9#s&t&&YQ!f)UB;;D~+}9(1YRsa?WU%mL~`-raZcCi}V@a zCoWzKE;v|=061jWgj*!`=;ETFtt}D|T0oF;dmnrfDq?u-3ycd}TSXS67A;a*_DYVE zx!wvicYoXtU4>P!wXr#0&08$3!{B{5-PLLFek(9Gfmy*@xJ4#4XUMJUimY2FXdtqt zjqgQffHI+uCt%o`}57Eq&?;bk1(fd zn4N(bCg?=focY>_GuQ!tGy9+8;JmtpMoPaY|D-`Nrtadm2EBQpBPhs2=FH^KN{4T{cCo3pVJH_&GX6 ztdK=M8Kl{Vz%QP=hc&`$Zxjw=*`g{-X~z@U7%;B!LtHQRzfYE+7awC;W=Kxg)D^|) z`5I+YD0bfMy^>x=tIZ|=y>B69A^Q_d=)S~5H9_Fm$5)PO|GoIDfp*Mj-CF;J)U4~q zl*hm5Kou0F>vVYmFDeq*jmu|XWCD!N1>}jtDKBYe+2!ihR}(z;$_%Nf!l#8AnC-sO zgHvCA`z#fk{UCM8gd|UwVd3Q+TUo(NF@;$is`fpS?$Sdr>h9FmfP~KI$HL-#T4k%Pgosa-2a`0NW5I3K$%Nvf8q&0pCiOBfuK zEtXrP1Y?C4@ZKxcNWoK8Ca*H$AdJl8t@h{3J1f}Et@lKbTh4#2+HXlb>=h1b&sIs? zCKLLzv2_DemgGVvHwKnSciEh(-D~{|RqW7PZWjFo(Gx>gDt`u)$S%ARV^-j?M0ov_ zU$g?xTK+|oUMf}9CD?hwdPGBYpnTN^l(448Y)8-7R{f{efyPhBem4{wB37-Z%;rJ? z4L{<=EVRxPJX2MdFs}NOM>wd>Qn59L#hM;c?F_tBmL`6S)UY8=4dRUn>(4%oee*uB z&8)|nVB%(R-`Z|TN;p5a%CU>+D`yTIw`s5EjgXN;Ti! zr=c^=mem#)hZB!!@Z(cfraU}7Mf!DTYGB7WKL`wF{(^|zO&$8MaBx5~xYbLV@!$Y3 z_a6#hcYOP$12a;*vryK}?VqL$FT|4mZ(5va4^jUSN}lg7=_8M-sK%B@C1%fw3)snZ zlCR(0&WifWV;H|RwyXL2r z)okZaj{SjBPI#HO=DWS5GV=WYM7YXN?KdEs&_eAD9NGA)V}*EkFDl}bzQ{x)_ON1%_v%waUs&6Od?Or^iv_yin z`|zIS#RDP*5ko#|Awa)`R1qgYku!EaN`9yO^J*Bk$e8{6_W^(^k|%yvq81Nw+FPdu zW)8xoYY@B;8+LzGQ8Q30hlDS5LEuou_ZH(K%o`pC(kW_gBbZ|Qle7@z#IiZLRjwu~ zZJxy#t|<=MEfHRLN`N-97sV_%%vr^Rs>Bb*%qZ$rp`8Z(zFyLLKl80l2)TC%?6wO!5OOQ~GqzGT2sZtGJ zn{F$cf2k<-nHSE7f3ejpmAhRF(Wjo}RTn;^D_j$j-?b0HpdRdRR$1aZ5s^|U4f}bG zGH!FwaJEGFEKOZKnS7O!eg1-NgpunA|G(t#V^yWAbdS^O}KDUgqkd zt8U1Z>w>}E!3!B2@oU?z@gNouQ8+%&Sx)FTqtQSnEAi8ApEZ3X0Id4YqnX6pJ1({1 zd8=R`t+{OeIKV4iih8CLI+loNUwreOAvxbXe(U~}j2T4w`HDQh8j~Jd1lmmip-?ka ztAE(FN-fTe9=`yAevI1MFlA_%6{VUF@6Kx$<5g6VtmbfYcXY+UcHV&$sUtn?ocoab z2BWCubLjc-T3R^#hb!f{+An8*b=d_pFmRM(lzv$kopfnTKF_BPGLFOm>b8B{C^Ai( z+cMKKxv9}|gXGtdCnS>4`b?tp9AoC)GYDx4D_X0))uE7Ntc3pxqba6nf8}yZlXsrc zr^RTLeR$GVJ&th{1>~cdVo*s2-88ILnG!?f;QhXV?Q_J!dS(IATV6FG2ayt0H(1h^- zW1+l!B>XNbTO!yTdG^w2?J6*V73Fhsd{u!AX5(OqhAM-RURM-9r<92UuBrA=w5m9$ zg-U5&cG)_BnUFt6T!7YLKM@cV7OSoJ);zOi?{-ZnNib~&dk ze{=a46*C&x913)rFX5}Z-tiU)hj|c|7(Uxo!8^;g2$?6e7{yl4t{$-f1Yk04D)pD^ zO>AL(lrPAkpNIntpV$4a<=?9>fLuCXyFb1;@&^Q82WP4cmOYTx%gMj^d8l8`etlg% zcL@iPW(oM^h!gqH-EPmFxcnE8<^5!9W_E70%I@RyhR?HbNaXvtja;|9miM!{NCgS$ z{_6E6^>JYFowScxJtcg^oTO{L#@&JeBL63j35JDFAj%M1_P>#e0xQ*z2+hBG8D!6W zHxj7_43S*qA@+BKCUomw1Jzvd&F2Oh9#7lg=&3t@^#v4S(xAk=^MM1JQZCJt4DGxn zY$=X7_(dXVHo{$$zT}sz-ue_As30;XZJ>$b{FoFYJQqs3&H|2HaITD5LD8mfc1duc zY};%WLzP`rS5X|TDVa72<=J;Yj0lH?M4+QlQ(n74~8RQIC^e;-t+F1OO759QKay z+c$?HLPbi3K0eX3>Qzjvth<>EKyW`1k-3Az)ESJ{S_h9viw^gf@4=HpQUhFm=WG`` z@7?G)u!>Au9P{^Aka6*Z_8XH-ZjtF4_~`P)7?L1+0WCJzD{`86VUV#!BBdfxd*qaJ zVZ)S7uu3bLFWIXz&zVw|pYvBmhSiZz=#-o7pFwMCS&r$_Qcg?y(Pe#*h#gA8$LM1k zzbuL%GB(_0y1z`9i)CSFAzBF=WPGPxrW0A$#ciE7Q2C)wKEiQMYBqmV{ckDEjTqfI z1I0^TnO&;CX5Fw&Awq{dMtIs#E!$6=cr7J`!r3OTmOxTr(S>^)LAl5!Bwsg|>#SzL zpyP-@b(_0SEkdq-M2%c-f*`2eOiV3z54&@{lrFMWC{|sv8A5N=_R_9aPJnG6S9T?P z?jG;X;+La1YP?ps1=j@+O8NIjcLm}hl(}^@)l@-l;^U32+Ja40uj85|jPa@L+>(wd z&5nf{Q^J_;#gyCIhwFbuq2Xd=aQSlxB)Iszy?sHf4{4d1y93dv)4XOoeArh+Z-?Ue zeBAqEu`by;IfN-GDfiC2!8Gk%#7t{0s#2oz+yh0d;zNb`ZT#6p9n>pW7#fRO9t+%>Fj*nNSppFrN&Tk6qZ8LiU2y^_- zNxME?^bzUJyf%KUW11Y72oqdu`Z1HnldkX_YS{H9gkhqR+-R!!elu;WAmWf~EJ~g) zPOab-*Mp<>9$^5VK|iwv!sl;qoj?iy9aq1Bl-BqW#||FFzEM3VMAqPn@gu~|{S1d+ zxWA#Q$a+#?R*&TB!oz3r@ODRwLE-&ehcWTPD*ZMY(WYN{N$i(h{pr8hmuI-h2y_Z_ z&{27EcuW0fZOkR%KV@J4k^Y2$wW7e7VK!_C7L=k?Dd)pzvJZ53%1E8?MmKHZ zgydjE*uJO86Ll?D*c#|1Ej0(e`Sq&IbT+CfKyHPWY!Hq@e{p}i*&$1sKV z+aq(y3uQ*^3Vv=Lp0}Z8&yI=HQ#t^e%|nXI-fst(l7Eg|Ge>N~@GR+a|NZGKt%k13 z#`M(^ppI4YKa`#xSK-E9-1h+i0RpfK7Y{$ay$CL;j@IeTvz@8CeUl;jHgY-iDR515 z%uox1q#<##DSZa{SguL;3YY4kTUv1fh zeZd_PF)3^kf&w*2KLA|3AlkugfKC3eh&$@5NAzKc7f7@60fi z9y;mdSJMSTzF1%lIy2kE@6&@@&?Mm|?1?;C{Lu4TL-jpq7g-Ms2Dgj8L?|7@d3lWC z2>3*FRs|Ixx$0l`f{pB)F8o#sT7USV5w02n?`t@ymq@Czvhpcq7;I~d3)|7rk;Uhg zGU;=E<9+V*`$6RFK{@#L&h2JykReXOjT7M__Bj8@V*PEX@&~1ei5I4o3#b^;`W}1# z3^gtV`P1Jio-iqMh43$jup?kaFqWQ%iC1R$7L)Qacr(A7pq+O4OW&7f`lb7+QBm_p z;L?7LQkfN=mf2M?6xYuCQe+hztuv9Q&p}-x;wxQexM893y(5`dikiJZQUgpd`F@2o4cZLcYX&wQmH5W;lxM5Yfss!$yNVS6!N% z16xqiiaWk7LWQJqhJH8F`vMgy2Y!O!)OdYK|8_x^-SGtfW47X3Q?ohT4xQ3t_ zJ6%5f%eVvy(g{j|D{?>`Ah@;dEX>X6^DOk+#pU4~DKj(kVg3q$-F*)VRcOxkC~7ir z)->UCtyPFHMY7wSExoG;ePP^*vKkg&wDQjnCiwVJGU(~(y!{hXJ5Tn~5y`T6SAq!z zl|@1?HZe}`ZdQf`r@*!Vf-E9L2lSHz#a>AXxMD#80gw~fJcIuw$>n(LYXZjyy0F9h z>yyu5F%gsR2exssZG5%1?^iH2p1W)>9L!Z#T+V4m72k}a^cqdzSb)mn|`_*a)B;ytf zoEN2{us9?ZX=6Si7!5Y`cxko5mBBLpV6Ny6NwdXhq#wyRFT8H+T z4Q#FY2?$gN1_yN^N?SkO+38!=tVaF7i=J6uKO-6i24X&KE4hW3t-)D5E&my6=&bb9 zy{EyLb6Y;;<5*yc!q_^9^ERQUYiehqAN3TWZX^%F-8f_RJL^~0X=#)LA0o~E*ruXT zzrhpHeG&1QBsFk$PIBfxgZy@Lb7PSq=J!D?9vky>f9xy3_6Wz)V@JXv9Lqw>7M;&PPScLya=1rq8EC)TAyjvoH7xo8LxMS-z;b zW`z}6Y`xG^!KH6ORztSX{zJj3>#yC*h^Zhteqq}J@ma`8^F5hXWfXxl=^cEA?t`{U zn7>_Lwmv*b7Ir9Y-}@RdUU!>fhD(R%T^YS zE&cLeE%d#nyFzW~b4XsOg*TzAlNf$=TWt6EBjJm0pna#IyQ06JP)Cg(51CSP+|x{0 zVtoANei@f0?fe@~e78-Pp#<95@yW;v);fJ6lam2sgK(I~eEU~^kL$usNlk6-)%gX` z_7G_mBgc?ASOv+M(&K7}8A)VywDurCedfs7Lx8&aq2svYW`YMorF^~#GrZ3&2(7Dq z)!6s^Y4>%vT8Biv0&YRP|D@^1`?0a3zL)!-XWZ?jTCsF+O^qPHF#umAi`ymR{QUg; z7FA7a-ALtXQ?t_nxIATjv!9JVCWdf3{SV<@tQrSXdE?(kZydbmZl?Y5^6di`1!m#ovy=5)-%)mTUweNl@ili3I$k842Eortl}zHYH__ z5j9R?OuVW#gDuDiH3oxz42@~rX{C9B6vWgPpy09z1fc@@uptwo zLB1n)fv{QJ`BjFTGw{xeP*ze*TKje(0vWH0lIE_PrRK&qtY6g2VX0`mZg%p>Gq@d{ zEJBPoE(sU6~8d%VuUV7jjK) z?a$5Xmrj9rU?u+2G`Czscj6^gs{ci}@8T}aeQnD;Cwu2!I7VvRaRCo<5!>Jd(pH8VSV28s9f<^#xOrZ+b?d;e+a>FrNsuL9&Q+$`IwW8H%yxx;-P=GdC< z);Pxo{~8o|j$pb=XxY-56(-aeo}A>)ud|(qF-BA)m>qJ5#}y&s%XnP75U*wRR2;yDS^Htl_EL4%w2#({8}Q6 zRw=l1_Sz9p=B3?o-0;bB_A5qhi9kg$j7*mCf^B4c?{~6bdgzJXuR3{2N|o7zQ>9xB zX&X~r>9$RY;%eW};sr-46lRd5w4ncjr;^Tyx_a{l7p9vFC^Xn8n2TyWV{>u9P*Iz( zXz=9IMk!X}9K+EtgG+Vve9%ctA8X4N$S!yY0ho3~29`dOXkX6eKs~HRKPz&ymi8-K%q4?8? z*+3+rR3_;0xMhD(vE;dVTHR-sJJcf$78Elqyft+>bahhx7!U6h|7kg+bzlYS5-U(e;0KyrCm9%k-BU z&1a_U-$((qd~8eCEwUF1KZMnBuf;QUDM+#O%Syc#z6Q;CF`{CCRfR3P@Wi6rp>Asw z-b~uG%I)4r<42Iv(h*@Hy69XPGSjuKCb?Dz)HJjiTYw(@%V|UIQmj8ZS%Mf1DGC$b zldQAs;MlEE5jXlYr{~6JXU7-;gUXowX5sR!F%SWZJLh}=Kj*JQ31h~I{IcY~m8bNH zdDDhDzQ^b@M{_x3WcN^{tyT54wLJp^u>UCv0b>w=rT;fSPqGVmT$2MNBmk2E5XIlu zSNtNS^m_Bj=lMaNi}sH4=Ak=1-x(n3cOud#T#`jr%3L-Snyy;bDUlE9`J6h z@yfJBs~8KAkqYimh&dLtg!(*Y(S${ov5k!9H7OGzQx1-)%Shuwfzs%|(7};8$V*4b5W{}imu=#hXx;7D$D$hHj z+@9?MGBv62#8gTwsl?Vu0#T$JJl9-6YGbyjkj)v>36)fA?1q}pI37fU#)z%9^IE-@BP)) z&lvo#(9pmNnn)?n0*K`SE#i~+L^Z!-3qEkL_khp5TqUkmdt%L@(K~*keBVXS@o*2i z+8)z`{1?0Fb7yG0w@WG_-affZaiuKW6 zk`}>XXZf0Z<0voJk)zsucsLF2X6ErqZF9R|;oy+3R9kP{sj}p#;}>8KgY0O(b2J0E5E4jGWjgOGa=fE1Gvqy*FykIWFy#}LjGUsjRio=C0B&ha&@Oe5rqhjP zR+sG^H^k03DaZhuGznC$iWbjlmj9_B$$mQN(UqJbvy{tcrin@@7pp$ZXdykCTxqG6 zb0tN2n!CANsAFSj75*}%I)^x>yItKlE_@P7rax52hyc6p=?0(!|x59rw0?p6+ zyhPj(-`t)jy#Nzi+vvMHm*PJcOn`~&@iFMah%j2rXFAUfh{ev@x4jF^C5ZjDF^NN)eerCKWlqd zKI+D6^BrxKz`z=cVe;=RC3Jewic2m-P@?m}C`1EwE#hlRC(j&U%sO7Dx4%&k6Ep2gQ`2|N}Rv{S!3`a^e=&u+e z1VUrdcP2V$Oa=KODh_cMN2l9Okqv{x;kJ^GJ+mdskuw;p6b;HhFx`Out0#y(U({cBp?qcMkgs~^>L?u@u5Jmo85a4^E;A)RgFK>D%b2Ux2h`JmqjnAl^ z*)n4Me@=`@L6(*`gs;zxK-dG&kD*iAGek50#eQw!iS~eA#>)+YIyquYMt*j6b#!Hg zhLx3-j-LMPGiQ65$f65_PILFsEb24Qulaeb4d0hDA4TsImqcS@k=MEU*qgysE`-&m z4lXfvV5Bb-8QB&lPNyQH1EGN1Vaymgzb}+P$WP zTmx_B<=%xTTcAf@-%>lAUs~dFn`=37qfrZewFaB7BuvheHQhB;12;Iuk)j|>X`{RI zOQPeKTBMS^Y1qFeJduxVEseT7?a#Fp-mO*sQs|XBg09YaQB+o!RCVP4`{a6zf3xz{5 zJaPz-dcd3jXg(? zMXRmsHoRrWKo5$d{A!*azo)0rd$65!i$%tLIVNV{e4q*u9BiE53!DJd)}Vmi<3#;r zOjnhql`!;<$hb8J)As?i;h>K+%)!>j+oI3!hix1_c$H|t1aS55XY@qjTCx`-TQp!p z1+rYQ5Q2Z%XEdj7yLadr8*IVjFk~G(USam_B7=L4WBDckk>AP5$xBA41hvP%S4(Vc z^`{MMd&5j@FP2vX8{~!n^ok?Y2M*3TXO$NJ4)8zt>O#lE*m2_g&ul!+_b}MnjQG+t zpq8+bl(nytu=&h|=tB3g#D&gf30nPOVl{+d|VV{A%@|75xhC^^ZeY3(BxZ+LYuxS zuFfym2w`|Ok|AsaIy;-1y+mqX=R_ipl}xPQoXHby|Bn5vO6GWY9 z5R!@x6>~K=`AhCJ_{FhM6~mby&UdyFb;Ub8&yTqJIF-?DEO{6j)FNRh?&&dw z>vQF55-Zan(^hO8jC2X(KVAy0+a?8Gm2eymQX1b~S+}GZ4GZKn(e=vRiiVg3X z#(>X#dA<@44RPBrB(lsKNd~8gTE}0mie|g@!*lMqy@=;sg32)j|(><%_9KEO0sl` zBf2V0t`rOzQ@DH_wBX6e>{#7 zC*y_-QFtE|q^1`a2N4;)vu6Lu&n_+kL8ITZC#C>x`Q;^(uCDHvNKwa@wHP~`4cJBv zIzUG=aDA;*Lci&|9=K?a=UtOOC7SzuD0S)gx>ApH7i`>Nz4^>v-7>5Xs}pa>8&bxCsG}(@YIo7`u2oM{T5kG+~kxu zn1z1$dlyEu$W)r$}6^xEtleA(Xn%9Bj)Cf$lJr)P5@B0PZY=HaweoK-9$y&r+nx*#T9 zU&pmtiQXfV^|t1~V*^C^-spf$6{(UnRyRo1$9Ucqd&aKNid2KWp31UA z6OmTk*>tsSW#PxLvwpjfP^pfrX{DK)d4zkn{A*pNY4D6b9AHVQj1$gXW*3$`&4KLO zFGDP}3*HbowLyaFR6%Y-4`wJd@2814 zN4}1*2?v3iE`MaFGtS$>OHCt6i>(StC>@sKJWH9LQ+`SZcFykskJ!Tl1L%e-GHKB; zimb20d5u*vVlmN|;W+$a_Vx#PV|)PG>3-EO4~z!2U@V{~bPvGDc(3{}Zyz2mRv2!a zsV2-GH?~q}5jV2bpkelF!zSc)arff)kBw~;M}D^p?>%%%-dR_(vui8)I{DN;a(9od zSAOdH@5UHp;GFO8j~tY`YkhN}=*t+vq59})QbL59t{7nhmv}7 zc^ry2Ei!{7NnN@qEBBj!{15*f^+XPzG|RH!(Kime%W->Ophl?bYQ=iOLHQ3NfL zF|-;Z($DXsv9B@3NbWmCclq>WGr`|&bB#WP_>gtZ+pLw3Y<-wYNM;;B|f=<>CM z|JA=Utljh`CdG)T*<72BpCN};aK;-an>&rRO_TW3-3R}H7M?DX9lBrafsOY;} z%{S9(+4%~YTEJ8VzDvr_+=iFxCOh)57(!)x=ZqU(KQhY0E- z$?w8+Y?KHBZ=_1;`Hx@NNU$y;r5N{9FQt62E|LE?+K6=IvraL%Gn}7^fN2zwv3<*P zChBoss!?mNZPO>1W8;y3bad2zcjslp>jF|P>Kr%>oCLe*hWo{dc8pUAzhlInDW%Z% zbu&4-JUP5{W$devM%G)1h@+P_bd{&bMvlhVwKyJFD0QXUWrQiABWO0f!am<4l<5_0 z@JLi1z$fQPMqr}0%!d<sG~6)q=U zUMhHZOUAB_cg9PCMuv&3JO*(hDY;r&VuM(zCPoq`HuqEHo<_=E%uo~9S)3e@oZNwn zDsPVf4RiHm!YnsVR3$6s0iXQNYg-> zE0t&BeEYy^JqH_wx80Yx&CsTwuiVIu~AajtL&IHhc@=~=Icr93_2>~ z3>N15&L>*|=Yl^E%cW%H?C=%$}y+}OX5Kd2r4>`l=b*)dCG!GJwza3bFuh;@pJlO$kCRO8=_6&*dn+Nv?`&yB}oS5h*QiI_wsj1KEc1s#)X*=AlhwT0$rEI=-k~8O1n3-+_DQFc-T^92#9v;1>TekmBK}=bicM= z_9FUth)U#tT7cu9zDKDHmml7{+?h{OB?umOAp=L-OgE++ zm$-O%J2OSnQ89$bwL}09-~sRjHGp1%R@TnaG9ECQ01>W|-<6|cW1UVGDt*jDm%ywl zA4U4!;ePMc?|jRZI%zAk6a$yc70a2S`aW#g;bl5~86APlPY?@ds0ulW0Lb~FMGJ$V(hoXMd@Z*o_r-4aVuFH9JaQ$SNoX)OD!k4C*&BC-RRo-?T^ra zY$2-3nqkWVRG_%OZ}zkmi0Z1EeIk5mt`4K7j5R-xzT5S&H+Z4w)A!cmA91WLRg(JW zeR)$K4wq-e#~nH5@9UvG{|BNR*7a)FYjtv-E;2n0)%C}TfQYKqHU}x@uHWn4U?~SR zy!uT9(b}|k>AN1RA|P4Ppu;ZX-tfMW{ZCtM?BU^|9{i_iYqNvrB)8lU=*e>2A}qF* zj)_LTi4^#t-WhgJ>$SqA(iJ~Tylb>a<9a8?Rs86)H#A#zRsP`^o04MNr1E{lnp!fr zL=9~Z3L_wD;7#UC>@prHm<)y%6YKPDHQ-)7i~t+O+^VK2>nY;Fo!a*J4li?=9-Cu< zDn{m$=o>QI07h89H(@bAcw9b{o%ux`wov{sFo_%HhSjH~({5~tfn@%-}crn@& z{g5s9O+xn*@y{};5B58Bn9|S4E#M$_hkx(gf5F4I&R6NFIlGT@(;^s%G(d=+`(+QS z@5wQofV;7H?QcU|V3D- zfba7A>RX}(){SJ66qi0X!O6X@k$m=G8b0D#FHzR%-bwXjO}ce%Ernqlw0S6r(J8Xv z$R10^K6#)hDLUXszgvi1URr8qY%~QD7#$r)nk?Ue=jmQI09t;4Ebt9vtZ289Bf5ez zKF7%oJhae_cmnZ}Xma-LO5`ja2rV5O71O z;-LIAH-3l6uA1E{B?PM<4{wbG0xb0loh$I~cA7)JgHYlX^eb*WH^WMyn!R2^7+U83H{eD~iebYZMVelGOzOI2<`B_QI z)62`_yyZ8-de;*|%;r2Ck&ZbBR8>YWqua)xoC);5GE9Lg_AC;Rz zVI}&(xS3~80veZN|s7qZZSq5_nTq7J=fR&OLCM+fv zbaqX0OOqhNYCa36nBg`42$K#i_Tcyk;6MWwJS{BUStgyL8l?nhnxiiMQI>Rl&F%d) zUGPoI0--Cox=!J>ZU_AxB6(y*j{-xJj)h(&P2ENANvV zn5#HyI&BwCf#x~VX0+CQUaJ*R>8nPLNcx=uewCvnikAHES*2&H)ruaembk$*-T)o_ zbr%aePyz2+HJHCS88*#xSsuoVYgL@qZ4$xjBhPiEfFbT{_6U$o^-qi zrFocE+r)kFeDExsvh+q8PeIe<`&r*yct2mf&0hFUwmO}&zD^wb?Lb_&u`a&;{=%| z=F4MjU;Kh1%NBFBdeV4<*K|54;i131`2N7)Y!q!n9lW`zlT|7HrdUoq;-OMD>*3vT z?8!Q6LObbiFq$YAba?B{BYNLXIMwoBm@Ee@0h> zzKN7tz5GxZEgH8lky@r{r}+oRsB2F-r^-vVcQ->vwvPlnld#~fD%5vUJdu;rpJnKf zT68fw+Mtsow=y(Y5fR1AuCuXpsP1Xppv)2tgekNloz>mD)!yMwXy9UZdlng8XA|H<)0aHv=V1|dcbEiDr-uhouNr!L_OyD*8-(h`k0%gY!ajNL&*iFhi4nIP4`*sc4MfXQ{qK}>OMPb&Jvd_U~ zTfNNvdNj&|Hnl-X31s3SVPXY91tkj)k9eud+TE4j*W+;oyS2x-ZsNMywW=KWN29Wolmv?^+?B?JLgAt|0_F_Ue5`s6kzI?u zb{;f4q%74NA{21xFF>0{wo6?R!%#8dTOot0*7}WhJvxelKvt|pg1k$TyltB{k8Bw^ zUwd>Z9A&JE|1^eS(Q-l3tbsn#u|=jxU?f*?Wg0G7q<+q=FN#=eWubEK^NI>PvY^xOfD4%a?s^}}wh zSqK0L4yOxzd1&G#0Q*fpkiUn@dkJyno+VY(3&;?F?3~+9j_eSIM>qSU3apF((aXJ$ zCyE$0&6K54YZJe_CIxK@fxmFFf+~I4-%MJyZPB#5Fxd6-`3`2vXOg67;}m1bAZZIOp|w9=&?zdLSF5`i|9my0!?j>&ty zS_te8G;)Yv&_Xqmg{8vNG+>jK;S^KtgmMhcS^^3sBTBHOCK$ho988y4jJcX%p=1Py zC;>q(gyDm;1OuKpm%DJf;CtE~8=Ek|iH4@)9`?!cz)ov%15`{-lU|({UR@8W#5;AL zpYbU6O{36dXVbE?i}Lc~0eX*3_74z30r2f3n?7 z`T6nU`Hn2!pCRtN!>Epl!T7ioHXS0P@))D(G})<}I5<#oj?W<2-mRnc3!u)007Y z;Y>+Idv7-+!bn-XEH&122S127N)0P3X-Efe97knRvWDfe)D7$W;$$pSkZHhr z-aGcqo@j@vAOBlP4Kp_#rF_L|P9>10%p-*LFSoMu&~1rLfUGVX0vtlo*IOUek8vYqY#P zZk~`fFOgoA-b%dC{TsX427YgM^r-W@M_UfjmhP8_kXRrt(H!WO}ZKX7y9HPsu*Yo?27gKM>a@taeWMw^a|?+X%E zaD~;U)VJ%Ful4n;z4=Cp2>u7NMEJ&fHBxB`V?1N)?fd|uYPB79KaREiA%g!u zR;gjEIsK;U<0OlxUmDxk6%MRwx#+Y@{(HzYFMqsY`IuvK(nRFNlCi95Vp2v`k_}JP z-i?^G&{Kl9?G@tX`2%yLl@ZwUa2%zsMYJq}>A=oN+K!NMNxhZ00b(+#IF%|Yg5;A0 zNsN$jd!@CJTgLPYbSYH(3{VJ4q_dJX>mnAWW%c`4hFM$z9hKVYE|z$8DutY`!jMCb zW6es6y83w}ETy9R>Y|Va20vI>!es`^r$bb&IaM(~FL9g+T3d=+ANAq!-A{;-q<`^z z@V{;leHvgn%Tx$;ZrC<^8 zstzo$MIc4(pMttPB5F4T=jlD5r6JANFjtLOuidZf3=O-i02bhWFRvIhU=2QanB6F4 z&?j5|)+*W}(UaJr9XAh;Z5N0WM8C?QJ*}j~B3qFrATS8fGJBjZjUaQc1@(cYZF6#R z_P|5L?N-2WR-DSCJ$8a1++<#xy#}+`aPL zho!&b%EB30xcMdZ&nBOZ(^xwLs9seV7giT!BQ@#EhAAOIhQlTgeJQ<6xEn#b%jpR7 z`#l4u3@W20vK6}H)iBXFww(3Y+SmhMs{KCewc=&5C=;1#az$Er=JV&6Ph(*!bp;q( zq*~Ksr#F)3=-Xw2kPdZ%QzOVtZxG~G5+}koRwAo?p|(9J)(ne(pLj5s?|Ras zv&kOX=OBm_*_7DY+U|1*KdV3oOlialoVV^MI&@q~7Nr0Xn*L>HaSD(*z%CS!1~`}r z5Gyrt{h68h>gx-eD7{={_pN?VwgRZ?6DY@w(FKp zRPPgZ`AIE~R^w|Htfi7fT;RjdV;@EB>&YjypxHjp`oF)0sf2OPQ6s)Pe?<2+@1-Xa z40TDgs*WkTl6Guou zmh<)@M4CFbj=!$S?Hg5r`H(2Yt(#t2-EWrj$87Z)5`pfoa%9noVJ8fBG|4sr8}z&^ zNxh$6`^l|lcyA9GHECnGxc#>kU-*<ldAj=Q_bJw6AN8+Lw(8Ve9l zp`VP%J{U4$^ZGro0#=QtIOcZl?(SgE3q#Fn-PrZ>Zzd*x>v0WnRMZSx~9=4kr~*ci!<5Gsdyh7y6hEgt77!?=Dhm!6Xq$SZyGL-pwyvl}-V+xuK zg#ur{rQV4>IjTC7o29Ikiky4)~N_15O$fTC~Kp$Z_*8$V}4V9~s!I`Q|yz zyNY4HFSR|*=1^vc$o|6Ah=ZB@|FLiHlp`)1!}{V!mu(OCsjA4s=^d^)ylBYkK{-b~{Uwn0KbjSzCPVN$#wHczna= zwCuE@znMmI%j>-4-t~UH+_sV6_Vv}a?C!cC0U=`d#{0k9`sGD{6ufMwu{~hr77TPI zH~kn&>U8a6!NF+XySjuNx?eq@KWMaDJ2*(rx&akk`ut*>D%x_ZG3Ss{E_LeY%QwW6 zV)ABt?tB=6Y5dHYY?MZ2jNUViPUuM5g;UCfHPFIZmF^5RwmSYeE4Ehr9>G^D{N6nk zljsu2PcC%m#29jZSj@dfUB}i>3B!mZA$2^?tAyGp+~j#0onKtQ4u$5)xC#bVkU8%> zh@YiT&UQ*lgeWl+Bq;Z1xGHhqX3!Uh9v5%y^2R2*CKs`ddYH!>JoUZ6teXa&XDu=} z0xQ0M3(Sq9kE^HOGIrxT!^-}6+un8-iDO^OS}Gu;_GEBjq1bBt zV6e`DIt8K@>lSnQfTo!4(p*(6g^=I2cwkwF?tB|YeH&*uzo{|o+BNjDN|oK%X8*EQ z8t_mNGITuOcM7DEl&V$#y+2#kvcGO$bHxBUQAs>Jyq+_U8K9Cgm)Y>zK?eR zI_>!coYfBw8)c`oEYQXpANJzy_uf`DbJG_%hF=Ey%-;Uy`>fQ|NQ_gzYiS8yO^+3x zZ1#mDCVKwzc~Vr6-b3ZbX?@F+pbq4AQIVA3Icx0rht{0>(S2xq$aU@hWOIMdl!IsV zx}yZ9`a`Q{vYC0MyAE>L0V@6&JD3rM9E;9IVV2oOx%h-HB!pq9!BVM7Q&msE_oz7C zYcEx-!yw+6>{GdVn&Zo|ShgVlpI%-ErO+HK{rmo#JwJ1tTWZdMtij z73?ewQBpfDabHwM@#(0?0r-j}6jz?aPBE(;nv>Tp+t~0)ZgRf&&8EQO(D}JYRynH? zt5+wMDf>T1y>@ne*cr4^5?VaJ%I}0(O5;yGB%o;*=P!^cKHf9zxm`{`L%`TqJ<7X2X-FB^K^M1la_ezP&^-aU@pai;Q{%7-{z^NE`iB9!ou`O5I+c27sn@ri?*{vBtKLS$i6 zW1}kVE(`yG_mQ+2){bQOug22@aYeMGGn!0v&Fm-h72a6bfB_?{6Md_n|_62 z*j;hr^=^!~$$Yot^0R?ik`B`<Ob|nLK|QpfsFXyT2jzkRwu%c30jXzvMN6oDbqSVT-plU&8Y!8L7_11C zGggfbBArxd&P&U!0azRjH{&d{6?^s`;)AzFWI2T^^DmKm3@p&?C8bogSqzD<${uW1~7@Wi>2Qj&ibH zEKP*MBKU+aOr^s6&5t+199Nn1fc9FaQ61Wj>oQbic4o&lLftPBR7dDFCr~Ahd9Y=3 zD{Cap**lx~NSJ})Smrb6-5cfQR}r$l{hN>fJDU$-##H)OvGxbABy>GrZcPCnZy)t0 z?&=ac|LQ{lO*_TA#72*D%o4^@?@Gfn##PUvBR*SA)azMcZ{hPw@%ic?DIP+Liwz0O zp2$e}T(7@ZZNzNz5o?2j_iKOzjKrZO3k)8sq_fKO=z+1eKbD%^8ZqUQqSmk|u5UNi zeOdD-c)apm)X?Ci*L%w&p?TCZs$|KwC3l2b3taI0x9rF~Ew#9e^L`O60!17_r|YQq zbn1E%crdj|gVfOJv4wTt9d|(CnGfUV4s+L2!}`3Ly?-i?kX1uT97SDpGrfh;_?fwz z*oA5fXq}hp%^4Pr0{!nE0dLfNv2ZVdhyeKHeiIc!6j(r<%|nQSPe2ekv_pv=*@8@t z5*~YJtCb{O^fQw28{Xi5PgC|b4W;T)$BZl7Lt2di9BJdt71j%Lu4>FE=vebZ>P4A$Wr$f>-Ez zVNf4N8g1AO!PY^R^D|dVK`8!c?TJmIayuHB(GCTuEo--v^Ss_Q?9m$;5%Z>oas_=4 z&(CWl5rMcTf7NnzA}Vg*Yt5AI<_Z!K8~5I3ZQA!)(&4XLy^d?o$${6er7`VYPb3c{N&?q`G(k`? zcJ1lD!gp+s%efjfP3qf1MOC8ZMJYc-$sAg@KXchFDRV<9W%Km7P6KQdI z5*UzxQYQ!KL6H|9W8fJIN{_Jq%*^Pc#jK69yfs()gx`CjmaL@nRhznCbg{4+(b%)% zfB|0x=cy|#a$)+1JPqc@G7Hg~b~+|C37%k9_Ah#Kok<6X)b#?tw6Xu3Xn|JUT)^;7 zyq9G~vVY*K791MoE1m@16n1)Q{St{5?RRU5pQIXBG;Rih`q@(@Q)iKTJ{Jvzb8&}8 zOp;|YHwLZWcyi52eH-{Kt$2q48_)xs~)vKYVPg()jU(D{IH4}JeJw|wM&)ot(J`*{1kE^wvg*T7mX}zWFP@^U}ai)R^0xJ`Kc$zbl~pX0wjwH7OU|kTB-eMNy?v$3o0H;5nN~b7 zP#76G+M}lDTLhrnB~SbfQV<|UZP{pR!OtI`knq|~luE-D=FL$A4wtl;*iS2v&oU^0 z40HDQs*q2rbTr6FsLD*+@4Qd%Vdfr1YxXXc={|=>=56JI0_1y^rIR*wSKXCy@Lu@| ze_wL*=;$Q}7A>f~8^|EIE+2ZB%kdPtz|Hf`V@+{2rkYpwyTd)d-;Bb(T`aB#q#=ZO zIS0ECT#qbS^9<~M_V2$4Rzj}rL!>M%X#i1J4GJmX&)5ruk>x9w5n6+QJYc;$^+op_ zb$SW*j3O|&yaL)T1p`Q?_7~#dHh^XmiW!X=qq%ndGy~Vab1q)pal-NNbULTiW=*>g{^Ykm*%-o z=Wb;6c;?GKY?o!PfkLI3q+=Lo7cb9&eJk?}A|kA~TlwMLvDJUnA=!*=>mRxj>I<3} z8<$-p+*Gkz6fl;x)9R*ZLj@8QNwZeT($%0$Q_q5?T4t-+M(79kojmW1QNuL+VW;g- z%*dpk9Y=~1&~X&>NDfx&mnB?Tura90}C*!yeYu=3`S5SMKXy)07`Q6s|QFtStD?A?87F>>M0w#YabNiUPzm0MNd&qU*s$SXs}# zQF9u}xcQ05e!|V8iLC{V23sMmDX)ep0!~5f;f3C(4D^9n6KQ@oMO$R)v_h+2N6}WJ zEYIAPVB3lG6h&h=b>X@xiCy|Zz~TDpljg5{MNNs^q06MEOtq3IArTRf>S8|gE>!^< z8Cv-#O1!Grs60BL*@%>2Xy8cDQKea%U`J~YkpE#t%d8=UL;lE-^Si}H&??i! z)EfT}`$%cBv_hY51Zgrn?Q{jfdi~D|l19;k=-8yFr&sWu z?8>$BPOYx)Spf;ssm7`{4gRYjr_8Iy>9@w|epW;$91OaCjK*`QMqT z1M_$5OyK2YWo_MaaPtKz?9xXNnExhB9aNB_$4ZVIxMl-kC4gSl5QA#7WDxD+tASa) z_dd3X_JFNEPPvsnOdmZ>z}tPfG7pEf8FR?xXS6P;UI(ePsAvffGVBvNoFhcwJMy~| z4oD21)D-P}HFK4?zM_>Biq&8T(`PC$ay`n>Rf4|hj5E}UF+Q2k1toVR*#6Qfu*&rN zrzJGTq_?3XYj-#IozKDml@UOz8Zayl|kS++W&K>!iVm721Bgojqm2auuo9TYj6V||>`sYPZb#RF_ z5L;DJTKYl8)s=%QtHM&VAW5Hjs9{Q|4?w<8M0)BO!@@M{EvKrjGQ+GhJFZ6=I&S|2 zxUGAP3{zxa_+69@N}GYtRT9VE|0vlVY-GV!(C?-)J#%kT-|20Zop8a{y-aqW$96nu z1i==R1}e`!prVLC1zghvq||o%B;>7n^o=!3A9og*HI*Z+fA*SE;GS;q zCLjoZIy^ZWBtalAe)1ppll>4??$_4z4cFL{9LEAj0@=1O75}m<){Gu?EUEE%{pC2l zTRwR)u2VjL4ip>Lj7|Jxv`L1g6f}mIFIhBJTu`+PZ$=%8sf(9vqpDm|Ze}=+&Yts| zF_jhhW2JIGyPP(djxgtAV-pB$-e=>m-X0$B|M1c8xKwDeG~ifjx&44Tj!ricaioi=`7O6(FeIT3*?yl8l3e@!TpNAfI(Y088r=+j=6qL%trgq16gbe2R_{fw zfWvb=xKQYy`}_xyh1U3C#;ly25@78D2n15Y%ac6fbh#DGwm{BLxC1d!T;`mnA zJ@yY%u-C5Z>XG%G>%*>q>FkJ&V1L~=A(&VptAAq*HVt`MS$!Y{K(taZ83x4EN>i$~ zAOQBtl*ux{l-Id^9mLJ8#)zGfnOT8Su;;Z^VvUXf17`HrP}NN{-}c}K{wYdKBvul+ zq$nzga`?mQm~rs5y;T>KrhW3J1hD2$|5~DE#f+0V6@U4Vunh8PRlyozfhI-w`j>&j z>vYIT-teV2fF#RdxsOKJ3-$tH%fjDcG?d14f=7s70I9}mS&b#5!Yel|QPnPo(;TU& zKyo71Ru_=6(Xc8`NkM=SdSA}le)T-J5HO!PHGEk&P=tjP^kBelh@*z4Iu448)2*a2 zz~S)M)20q(`iSx#(gk{R~b&i zt4=q`+xauF(M;)UFI}H$)c1gnj?ezq@H?8^D=coi@Yc|Ksk@!Y&-Q~R*u`XZq_d4M z5>?p+1%Wc6xV*fazWLY%0{8i&25e81*YQTDZ)I;Kjbiq<%`X2G+2ZIE{Zz+DZfa02 zFP$_Fc455T#<$gDuD98#O>rgPUvIvc(fz`ASt%%l)$bE_x|3E{fj(PzQbu?L9jU=u zB#&Pex8XJRsh1n$hr{R=#Nrg^-py)d;P3+bz=tFsa@ z!tndnP{d(p0MO=W-w7OAgY8$HH~4l*orw}%tC!Rdl)#VJ;qgVWQp4qcBH^0T{; zgWR3D@?@NxQz8_gwA_p_*ZJ@DH!qY}3C@J(@wfO+lk1nbxG50Hh!+jNP}yuZJJTCG zI^f`O%w9;uX$%*rT&(g##L=eE?d7gsInN_8au7-#xfom>UZbD~*=|Fwg5$$8Y>2`N z`3U0VRHaXi7@u_U+9jmmP;qHU&L$u-_n{W0WS?5|O9_3X#l^B`tA0T{u5E^EeN&F$ zHu6u(Jy(=WqDEGX{aor}&+O>@(2pl{OOZ$Je9lN&xOe}7p6EzB2;Ry{kwhUD8N?k1 zkL>u1;k1zZw79)JIX9R2^OKL2jYDtA$$xnlYujq_d$KXzmquJNa8 z5dQAjQk;6&iJic$dBJXnNhV+qJnHOsy~pnkN@CwLZHno-@BonMcVD=fML^FAvFhn_u`q$!-AnVDvQhoOw* zFBf5gFd!X{bhYK;S5s5P-6#+t{d|8xlcVT5MC3WWu%KBTE%f%VQ=~c~=L56sMx}AB zRBMwROaEm_cD;~n>o01cIqJo#VC!y&s?n<>W%sSro$L^F)vtql--72rnJzhM$JKUt z5rj^K_j#S{<>KO-_DY6jyWH_Sff)ZA)|z(5^3`|X2IFBP2Bd3u2voD8i=R*kVpx8w z(SQQ13MqFJ_0OTDWJh{JV8N?Ib}NnW>0<+c(;FQ&B9M?*Fa?u%fbJ13o|{*h!Qp|3}(Pon8~k#J6^n+Fp-i z*~dgII1Y){wK*_2lMkpCXxfl76pbzZSml2Zm}Bc_Ale> z?T>kzei6!3_-hW_#PI~(n^LTYG=wNKOK2tK;9$TCMmLkd38vRecg6aS*LfIy#wz=& z;lRscGdi2sHI2j65|5w12Lf&w*YV)&VUZ823z=y7q#ZgNx-k=il~dSw@ul^k5O7nv zhjD85OeWy(+HFoN{$AfYZ!g_Y=Z9&cb7;S=omg%QMJ(~M{n_JuX}l&U%i0dkBy&N- zTvsPef)&?nz3mQQVWy|2BPJ{=u_36$0>2*~9_phd+t()nT<6g*_-wTW@E)i9(wD|JZHIC3s78tRPj316TakqHuw@8Q_~sULlF8)Rw(esMX+uKMo|FSPz;TwWqodoB4UqvqEcE&f{!l;PMh5 zs$d2NaQC;K%;r_I_tcD!9VifZx$N7$(MsPlX;>cKyCLLd z@5NB+?teIHa9?|F$qGPYM)k2|89dr?^d<*auSASnYN$-p8c)iX$=t9{svw4aL7wE{;Vx17SLvl=$yu zS?lJQst=f#qs0znWaJuCs%))gH1tp97za26FE8_2SRMc)w}J6=wYbA$<5@6rRj+Qu zw^SJPlbY_K=#7QY)EHBVlIhNXOvhKUmn;X7G})p!LX&^1fqJ!$8bXSQKfvf<#Ko^g z{aqFq#TbrV=G%RHBJg7cff6Jwr(L;sw&6|?LfpZ5xptaU1F6PVy~1!}Hdr2XUV`LzCG zT;S~s`|nfh5}cT?OpM@R3qA14!cJA%^4N{2`d&`HaVVV$b9fQF7RGloV832O!I@nS z7s`Y5m9%cnp9b@UST}rjy5~)og;k*0=sA@A9u-uL9@RtxZ>hu;dMZ0d#sJA3gQcZv z$K@aeYp+>fP!@h1!h& zWrF}gMki5juCD3W7QS*f4aQq;JWFlf$Ur2tz7;aVUrMP99vZAWo&nDW598+3I( zysePS-fv1bR^<6Di-tn)&ZVcYlzy)!nXBH#Ia#Xdb;H~9596+;-(2ZsT;VNCEdf#f zr|^o3a7Dj-(tPEhZ=@omTQq2w+xOmA8U34=nn6W zijbqX>*Ca4BL|~4Q0mJmH~p`9PaSYdg7le{=u^paWRtbENxwuU#EhfoWsu=nkqZib z9C6)StwzGmMB$oBl3B|p99n1*Wm~bq^bKYCmHmjlpR!ly&^K-_)A7cB-i37-%-a0z zny94|B54hu7Zd=7 zI_<=A&-^Jkyg!o9JSw;L6Cwd*HgIG>Uzy+1k`C0uh#qmPb{^Q+``+83K=5L{-EzG< z8~yNs*Kv6%aGSMJdeH`=dfinG26I$sDJ;&Zr;VmAbwZ-2{N2XTFQH_vqfwRl+&WO4 zi>T|M&sqNEdE2}T*n>Lde(xBh_WHac3d3~&t9PMa^Sj@SC;%(S?FY(gd;b zua;Uk_V#Chj61nBFCf#(Z96HXOq=l!Ao{;s+*B_9tktZ|=rd1HY$N6!lzYx~-et?} z-C8|H*D z*pEj=Lk~z?Vo$6wel{Q=>-9^SA{wVtbwDz2V1OY}diBaRnQEtW|I#H=f?+z3}_v9B|Om4ejBZ%BHQ++_e1r zT)Fnh&@G)ruLa`|vUK5()Ts)?1knKN{5CrVyGi-{dt_rm;VSalFpI_#P4iEw5ljJ6 zq{19Bf9GF8>prL+foNKKIK__{1O7jhRZla+rtjEU6tay3L~Lz(c>J+!NcPGK3rnN* z992}pH!qkMzg+{|e}XYdD*XB@WPpgfoRBc=;he8EdR$t@+5wE>9gjt9tt7lU;jHNo z`t{TPyb!K(*KBJEy~2wc(kL4IN*7)zMl^x3a$YoIN$;CvfHg8dT{?+sQlbB@LobX( zRcMkjElB*s++<*1eMM0g)c$cBwSb%Ut1Q!61h#|t!*{rFwO6k4PrcjyT#YE521l_O z4Hy-$rJAtiNQRnZ;SI$^QgX1xO9Bv%Arb!C1Y$eog~kI8aFMvzD_pu<@x;dDPY{w@ zcnE=~{a$Xnqw!ruaOGruMKwc(!zIDhbLz<4Np1HeB1@MDC3?O#W0EXYqU!X_Oz`ZH znTJQ3HlyLc_k?-O>&JWN0c$4*W>NMG6M#Gdz#b!PSJlNWef7(nK0enYiAz>_#Jr)N z+P6b@zuQTTX!>?@fvLcI>!j{G+xOAWuYUF zAjh~#(^S}ulCSKji7A7l*pXvBSi#Z~2Nmt@1mS%>yStQyg@rh`FRTg}z}jyzhnt<1 zRT(A)!54Ascko9u_QefnC?Py*=fyfHH z{XWbe(l9l#(xw7PPrbTm>l#qoR%n?mf0il#*RVW|pQUl%Y)y)R_-l3gJ6U5hz^8q& z0fw#!MfKKIc9O+m?AG(++QVPzMo5Gn+5srmhE5E2IMtWb;OVa|aXf6x(1ftS3+gZa zlh~Rf^)E6);rn+C<#GQlWJ^UFv_-HHhD8-6$oF6+;qCY`7sIWrG)+Q6`u6rGXcr(H zIPzaJyyt%&=|PA&vZ%R*D*hO8R%*kLh89Da=q&lbrs_K8UoI4)%oa7YB%^k{b9p#y z%FC&VJyLlq{N4#8Xm(w9Uj^{%pCvuPA6Z-vr-9riB(AJ#Sr2PFJF{=!fUQ{Y&`y47 zX*lrq02XNyJcK3=4h}jEWl_?9dwc(LEKF}&n&s30z5g@LX;6u*F438;-%`6Unz9tG z$4j5p^i;wt9h83gb74ZrYd|cuR{-hLtjF&pIU@<&=Tx3pyl7SkY{{Aa2&c3brf!msx07T4}2mZCSly!(9+=l?6FX#qqcsq)$go~bbXJh05A{7P(^Z)qAryX5NfXAgGVkeP;4_5#p(6@v7UhHd z>@C+17bVsirig~QT~IV1!Z#}0EIoaXEinf2Q>&ZA?#dp-WT^>*CWlCP?JhhtvTNz9i-|Fm(!rHq+17}>4ugrejP&eWgRUk zR@A2qAcz<^KXfTzKcjX8%Ohi7<=T?OU>pYd0{C>tp+p{wRdx zyv*sutZYiky4y#MK}Aqc>+&TaCbnn_a3c{q;P~Ee40qnI^@s0bnJufBe?u1+2{S3Gu3~O=Xhe8%limR)UfujUe z81?tJ1>lr{;s?pL&*dFkMjO+-TohRG`7gRP-<&pc$==qL97^eSYw|d*0hZ-K10lX! z-N`*>75M42f}*FB2zy%{~|lw>mJI zO`T|M$X}2`)+6QnS!ssm5Y}lm)J)tj+8MP8);w03VseSK{DsD<*cCpN-gvN|o1~7= zfW8VDZIu}Cdp(Bw|Ne9Cxa~%VZ*e8Cayo#GT%w}IlkVD(GMO!I>mYG*IG8Ea;)hva zjXT0K!i_rPcOuBM%9sAfdyic>-8{d=({w^Ap~Tr-*vuQLR;N3Y-(gh-C<2M&<;tP; zDK61Ort{uH;oS-z&9Nw4jpm!_t)VW4GqY0mNW%j1PWyS7+m zQ4MsiFgL+#VAE54x5Wo>hi7B2m;85B()5Pvx0R1E4xQmWVw=WWOQtj6nswA~y0%Sj zZ~OF2oJOQKcijUEi@^s&Ldu>mE5VX)uT!VHIB#Rg*}1ZFGrp)Xa?lP0Emd9h1d_5c z`O2-|7R!xstMpppnDm-8vruTLsd=2XNF7=lp7a@s+wITXP9`TlT{pwCjN|kcQ|84*G3e}hQV(J_?yuOY#(+;y=p}o4599t92&0c0gRX0q zjT3`ji%elej67MeD>Ui6N9mhLgP3if`B5fys`qXTthkQPZHR+*GU5 zc;*kw@?5Z)zK^=`!ewipYHy#^t+tuDHK_qzM_rV6<3DBq@*E$z+QV}fO&}nl;_xA~ zv`tR}mETzEd_HBu_=04bL)7WF{Lh8k+tilh!hdR_N{2IO>VPi3+V&%1s;`LbNN=wI zEDGVbRW7QWgFByPuqo`3Tc($Qp#s~6Q=i8|tr1{Z3`BaM5PD_I%%~vskrJY~jxqUG z1dxP;gv7+=kO45^mA|I3ey5w{&VY)J=g5sj$X$rS%hON`*tpDk1e_uK$j|=%nwPNb zC+PK{AI{jaGxl+)JN*++=ds7tul@aH;Yw?(4OO+3m&_v`B!ygv~1OzH}{;|3MDRuEs`H3IC|bx5T; zJsT_QZ(syfsR|3$jycF(1zs?i062Ghcb86(rpUp|>)oTFTa76O3`Yi{umB#?mVETk zh1bg7`rBBEaYq1&<)osq!6*>gs6o5n-l&X=7jLM8FDKhrf^EjGdCrA{^F~OgvCWCITlgjsn6Na6Gi%7QvHLpE(n zso?R2K1Xwy>AOB@nT`0!!`=sJUIX_7gLcUKN6+ci)!@~$4hu6hy3|u8S68`tts#)Y z{s9gEayK?MlKvn?gF{0K!zJJk8QR%T({nKP@wKRv@99v+&xxLj8(D$Lo)Y~EaHEF;W zbf~}-73aeS#mh2J9_?+$7kT*vzOPmFM@zIW7JBxmk(tksY5y%odaC$i7EIf%>a8y? zGDY&qnodR3d9RAQvk=Gi*v?>7dcWT44T^m3N6aJ>BDn>9u!SeU{bN$7*^rcz%<0XUu??p)zg%zcc>B zlatDtOd$KqJB~zH(}1m7ucfO^m(T5z^vJEv$4{c$a$pO=W5bJrd)& ze_PGY&EvE?0R=@V^N3jB*vGGnmtJc~)raO|X`E&V5*E}Y8vCY@jV}gT-T{SfD#rch z6bZ_voE5G0FIo9fe~Xh$X!q*1N0yqn7wYA2OSq~IUy6mLWPhwiJGH5Q=~nOf>xz*X zW@V!idUG==X2Ahhi`of>obq@PS1;D1Nf)W~539FLQY{f~Ii*B?`fSBz&XyfPC$Wt< zob^rDuFZi+_}|sN>v|gJ!|MiB($1pEEGRbKZ?_PTC>rZf1D0Zv>$`xUB|_Z7+SYdH z;3nT%ciDmr*u{*D$N-QiJbB`BTghgW`B_@EUgehS<UTCi^JnV5nm>Op8o9vCp+?^;Sn}u&11<}BC@$80v=hox ze{<}F;wDCsI;BJ2yNivHN2ri(3F*UqYDk22hMT8*gZ0j!P3+EAPY9vVi*D1Tu@1Ig zivtxdQrhcB6b-r#;PtB?_=*hp(1mMMY62nyZJ5}VU~Yc?v7Pw9_X6w2N?1z1fbR6B zz7V@59(nd0Dt19FBdxL`@Tede`gFc3VWJBQi}oba``UmZ;F< zb^KegbvHGF`zn-2gPu`bS_+#!rU4TLJg%SEBLw%f2?o&0V9cK9vcQLQ$U2`qZv z-S|CslZfYEC(rLACQpu+-OaAm(gRQ7ASeMIkC>U*i@ly@H31&s%*TO$8Wg>CVG=Wk zM!TDcQ7m0y8|Z^zdxQ1Z8td=(r>8rieY5hD#m6o`sW9RcY^xkT)}D+4KHne{FfPFS z0m4{dn%*bJa#pJf&CsR`_zVr5+yQKej`mN>*C%(N>O7kt?%#G&N8CHOPY3#-uGh0b z!@nbb6R=@57;q2&k=!TTHPoq-=o#f7(5(S96BLiiAQT9b+#(K~3^#h&qtsmydXw+f zM0>s7pEG3gTijVP4d$`pYFAuvJM(qiH;s;cW#x)%f6#J^8}gPd`+Npd4>9}MGs;Pj zGvoNk`SPOAq|KpL45d?GFrleKB~2B0-qKs>k#&1@GQyV(tRPoD_74gFKF_M5AVlaW z{H?+d%z4(Ek1a{~+?;eW?Ex192ZuNya;$>yN8dJSsw@X5r;60cotMDrvMU1+D$QJ} zKBjgZ?D~9NgA7sxK6?> z>yt*u{P*LZQlj@Ag`R4SZQd3?kV2tO=Khu6BqolCzY_7YJHOd}V`GGIS^83F|cyzrNOlDPwO+oe3BEGW(k=1AzX&5uO<38=MFNe zv-2gaL}1swf&pd4Ra+|0Bh+V9B9e=iNuRh(YR#&D%r~!?f7Oc=(dF0hKR_3ua>WD2 z9mg)Dsx5e*eahgkd7WA@@yLKAHnlHy8}(^QfU5U&!<}f`X{)0Cy++_L*>0^B+}6tH zv{j6lD+i3ViQ~a0p%wm1c3c2dK4Ret&`Jra=qTZkyM@kq|D+Mh&G)x^K=#>HaDh98 z@Me;y_#yyYTqFND?Oz@p*A!is8g^Sx^91FOTe^eg7sW@>i&mXAeTalN_-|gm1cA@9 zj)Y(5y3?#5jZlHpgGORnbz|{H$~k#qIT;(sJjcx-ZyV2AR4R+igiUwq3o}%by7c)Z z)pwm4m~LJC2U16r9?#Oie2i1Dt~&eFvNJlXGhpH@^JTK0k&llLmyq!Hwv(oq9oeS= zlf=ZtFaKR)K)#hVHT5JQO|;j*PB+FCc-#fDAYu*bF3h~Ve(E`{%aJFN634TQQs@_E zyOD00&b}L8bnNW#oV>gTSTtW$)c7<|%GK|Yr&BiXfLbWg;ADaj^=YM$FL$hPc=!mZ zc6m?$V|W;J(%&CG{2>jc^spORcfM#gyW42$RCs)4Yo{1VB3w-1@iDB8#j^Ia@Ywh6 z$~#yU%7bZuyj(w)Why#)k|6ZL(ZTpzHm@osvCHzpj2!22oJG!j;et);MW0(p#+WP) z7dw3WvfCj_=}7Fu%1U4COBN;}Sj{rC3%*Gjm$wCNg8K(Cf{E)A#ATUW=<-cZr^}8E?NF!2oHmHOEH6 z|Dw_(mSr9$_Cz=F!gs^q>h*BKt%w!|9U%lk*-U?ft@gA+(jqwY;4LfWeKVKbY*r}0 z-#Bsf7tGjQ#0i30Be2?=h83E8Ki{0_+>R^Elgs+@rJ{LMogEWhmsQ;FIlyjgp8^Lb z=Gm`pb?`1d{c0|a8hZQ6hj4~6Vw{eT8!clTnT3(DsLJj$R~E8_3b4F40VV=fM%}q# zVLmSbByBaWvkH#+t*uKhYd}Wsa(Ccn(e_7$+2OIVolyql57~fH9Vk(O*qsA)8JA|_ z^wqs0hXCZUw7Kmh<6nhY(ua%{`RZ7_wZFFv`P87kK#v?jw`15lC5^I>C7DHk9AQ> zP99eivS@BP-;{py2F!2%N;I|V#|8duVZ#a<&o!_`Pb3!bx@>&n%`9PKXO}1cQrbAT z#M7qFEGs8hUY=q8&#$qm3Gk0)VP~BV{I>;`v7q%r@H*tvD9(6!Ist;9$bEYcOjyqP zJr@HDLCs`?m&r$(GK&I}N{uh4$??K3=|guri(SdjdhuNw<5wrBB2aIh?+$TBuKf2c zMB9V;IRAEE9;~yJ=WV4cmJrDDkx>$tJdvK~qZ3_*gqKc{U>UGeFK^Qau3K)pcnhR;sZ#v%>;0;Ee#&{AVYZQZ~cJ+74(-ReL^ z)UCv{`upx2-4KfYlIpb*dzIc0*zNePQd52tqG;wwtQ&Z7G?pc34JV_BPLk{Y9aSA9n|~Y}2b-A{aq#eX^}tk?=pH6fs%R&SrOM&dJN4MvaUli-MraGL zHKQGNK#AA$qv2&(QkQ16b@zQth%lwA2I23UBsPpeVmN-Yt6HF}e7o2sj;Nui;-YLB z+G>u<_799oFc(i-yfmEL)A<1%#%S*#l<5d314pUTd-8uYU1MCI@7wMdmTfLu%dX{? zjb+<*t!3LSuUa-%%l5MErDZ+W{-4kDu3m)ieP1}w<2*2K`j8UUx^uQrf4n?OJ2d%$ zo28n|Q%zmnsTY}>)nbC^`1n{_R<`%x8Z(ZDr}1-Voinw5_4JC{cAryl_omfPN;2pO z@nC>k>oTVuxj_)|I0k}NC0*?gu(#<6Hn7h{68J{R9g`Peg{(O*Z@Q`x%f0n<_a1$v z1(_^nOFK#An&&)b4(rYFwoUk5mUUI>@u5q#Cj0Xv3|iom_leby)}ZB>I7%V+CH3|n zUtZbrzh6tzB*PS!p;!LIUAdBw#@}({MQ~YT%roel{hS3inC!%4w-wTTWRL<&GWhUi z$W&*nxY(@YNZx_%ZT~vvVmC=q4nK6pEhjn}DV14I(!FU*9T^$f3A7Se5@hV`m}Jnr zyu50fnwU}j7f&zM2zMIgU)FcrKX@o$YqA)~JwzL0M1JBSl5t-rR6{)^NaWrKzs`dX z9KtCoVEcl2YOZ{B5vMa-(sYsi3?jYsM3QH}Zx|W1h)=UPJyp!L{dI8t(>R?;JsFJmMKv^V zj*gB1i6x4d-#t4u(z5OY9@evW)R>YbxhK|si|1xkMeA){Vg&l~zWcMm%ZIHl!7$1g z#qT!ugKuu=wepMHzDJkZk<8u$ukZ7y(w9m2gRt@=P;jw*=x7*LOU-Uv-z|Fv8r zMuC>$(nM+s7HTndjx1-!QY-twNXCwA^30N&h?sK~5^gX?VfG3L@i2LFYHz%MuKHfD z$U(LMC5FMpWGU~QWML&V99s=S9W>;6m8F8o>7zne*L&wbv>*_G7 zxx*3?jDQNi!kkAXS3^HHtypu+;wX_1;i`i+@)M&uo&&H7z`4jlCj}iFFU`hgP~wF1 z2(^_1#~Z8nuP|LU%q>Sz0q@(>dQsBWnW-J~Atv2uL~?)AREqTfJe*>Nh`r6)vz` zUT9=&UF>dN&Q4aF&n4DHY)(&qc@y@RJVcEnlgU;6)%*HGCHeXVJ1UTXpIV(u-=c7k_7eU>NVbbZ0r6f z1RA>S;0f!RYD+5r4v|O> zNKKWLmq*^)!v=M>OANTcK^9%WfQx1#C1enUnAjH!O5vPk4#);nnP>N`5Mj0t2g=!5 z1CyOKnRBu<|Hb_gg7gp;Im~|(OB|5mcTKaa|KqlyKHc!DB|F`i>|x)AC3jv7S|8!t z<|!TD7+Qz*sizElmlFw|CXw$t(}(-hlD2ou;Z}>xd0~$HG=W1iUSEG~tPM!B#&Wz9 zCx_=*q8Yk@tDF6Mt^8GDmgApMO=Ohp*xN>%8v}R?Sr`JYdV_n;wY!m2=FY4HG0wX~ zMnK>)HsPk73Ln<{dtm_+;j6UbptJh7~ueKe&JvSGVs-E(q+IMDRL{jL^Z(SJPZj($`n8w@1k= zK}QLj<`~behJtz_;&l!O0D>(SKPWA=Qxhlwr_wAK_MdSf@Hw)Oa;JsfMk3@*vNPql zm3=k}6Q|{>T`p%7&VlW0$;3`eQ^?-<2?hOj{W19NjlhZClc&-LtNNhoswvI=PFdc` zaHH7RorM^{c-&KxHd~wp9d;%w7LgTM5^CC%YD^BUiHi|utHA#Yyf6O$#3Qc-bUC}i z$DjD{|4NK|dxF`x-6?JnKeX2oU!5znHQvAkEk8rn*bhcqE<#vT64Sxhv(g&@N|}O= zj%+hceO`Mfa7ytIQ4_>u=6=oZp#>hC@-{XM?(I3i#XgpJ1s)m_bHXHi@1i{T6M~$n zb^+0U2ACE8VFXXP1Ep85;`9R#4Uvqu;LFc%Hd>$P z(GCl(gH`?HQql33B*TxBTSAjlgB)9s9C=qxW;lvw5X4fswNp$RwVil#ii&+Myz9T` z=nY?)MS0F5YhKT1Rhg`>(mT7XX#PLHTCsYuOw6+$I0f0 z@u*3CHZDy^_*jw;pRo=HZ}w+W9P0l*b+T-aoL-)AN_-E`c6c>nMR zk;tAvZopC%6JD1~OC3>`LCtpFh2c1&-d-rXVOa`Nl5nNm4 z%UbBzsVQYR z4x+RFhvlijX#-=GKuhVRRyf7XEjoEJLH=X)=m$+{K+*fNKbg^ zZ$FCS6SsX$qns3fN6{|2GXJ|Z&CJXg4g6EIKfr|ceI(B(m4O5V4bVz10=c6V_osiO z4ay7epJO@vX(J;UJM?8u4jU6ydMpM?5D8R;t^poVV=iI%gXLL}ajn?;{;$QHjM*vt zoSv&sQ4yO)^+cL%f_c@4OMjzLh+cjlq(3FSwHDc)QNfd*oVVtUcKN1B)08x08{D8+ zu|5lKTaQDdJuILm+&0FM?I~jUSXmP8Px#E&o@lWo;;rRZ5G*p)bRblfOziyp42qb**vO&`-McI~C1|J{DKT()ghz zqo+qqqsUbQq0)+^N3{&e_<_*=6_{OhYxa6a0lRCX z*-3gb>@gJ!*(cQMFo8+{Y-#r_?5wrW!83Ah?kryiYM6d6ES%khopI@7E-TAS@9B_C z=8ywrb@l#{l#1FFsi=>@NE8U-yU*`TYKK~M?Sb?V)MP>w`jyEIAHBW#&OHbD$0Nlg zl>f=;j!sWINS}4|8W&TDBoC`w|N&3@wN_2 zLpfGEe4`V3y)o+D{DN)x#xFe4BlW&z_kS-3qP^3JyT0p1eI~Fec<+relwt!jV)~fT zq##tf{TgMa^Fd~};2D0<@&x{(T3Bmx;3x4gOw#Jo2`Qo$2b9KwwP|bg)$b^DaauaM zy`~jOY+OP@LNFmKb!=T_)M)@jMuPg!+zHZ-hf`!=QZX?!^n0cij3FF(T6SXZHZSoo zy8u#mko)vx^O!+EhDsq$Ba6X@hV&I556|4uF(ltexR*jmQW6sSixHF(20}zgaH5hl zEka~LL3#NDOD5Mq%@$65_w-s$b6k2E9xuQimtwUy5lXiQ_B~nH-J} zZ(7k05lw07DPYgWJ~K2jLdwtZ<@6NE*`;3kxd|JP*RxnzN$J<;^(zek zHMCW+gTZL0-xC=4;nivpX{XA^Eg9Elt7EGnNSlw*9xyq0MQQWQY-|i-f>f#b)7GS* zK_%&nZRHH$0hB3(BM^P#yS9z-dbgpesuRzJF3{!;?|Y659q`Dyjdd|)=lmsi>)u)W z{B{r`_UGA`->+v2X+=3dP5*=5+|7AkxQQz~2-SeY*ri7ju`2H?5PqnGclWfR@YpOI zBVc0eTkpU+c5uGZr}{Z7oJNgNhABjCsI>{LDz8vEy(}(DK{p)u0D^g5b9%%zfZFD( z^kk)^e4IZVC#Q@XZuNY{!c9x3>W+zt`KLnY3b=}00r$(*-e~J~B-OqGGak}a)`q}y z+XwwZg&;f_95S**h(cO~Aj5PKQgK#1YAh5?6e;+yLSPY3KFxD!O3Rp_B#GQoRmc!I z?USe(KEGfWGR*2~O1Tt#>P*p34lX2HE(VmaHP59VExHQ2_B8g*m~kr-I+^3itAr;3jWH&T!qm)+tqMB?kd=YVtU;i0D66alt`cl) zY@&=fIdyq`N3Lu(^QTUTtW*Q+0s_9v{m*fxmN_Ho_^m+^0WN&DE!pk}S3h^c8NZ^@ zO=J~)M5mRhrlh)p`9_Z*IwbAPcEm6`G%OH<&L_tyNziV)w)!(R06&>HLe^Xlo@{7h zf~%VX1HL}sO-SeS=YjEYM9hKYrB;`)CCo(QcA+$0S}KN0g%?RT?rWrZX&ULK>%BBO3| z3$*+!?=)YJBWdKEG35dkxN4_(8EZbn@RHPMPi$a1wd($xkd>U|N>hSKH7VX-%$R{O z3CdA6@Myts8yx%a(9ghHWb^Kc=0*rhBEQQ1KXr9=On1lLUJ6zEdYMFV1qGBg`@U8K z8xc0%mLk4gRle&?{7yD~aHuCJ4San zHy>!mD_YOKZF;W^W+DI2#2XKN&P2BnJ|}%aJNI3GDSG0B*~t#_SC|HGkPdK1ADe^| zAmhqo;tY=WZ)RZQvBG^fC*m%D3i=EoH{{%_b)QnxC49$>Och2T$4O3NqJ=%KogWj) zRp$7ErxDe6_0V6`{)3|-Zi*eR$2wu$vs~DkgS4!Tlp8s_=^6^XP*!sQ3>#eeYPA@# zu(7w@+hr&*pucoGkpxl7+`k9`$R0RGtE&9^T!{m8fqXNw?9?w$5tua8#d^a-Lx$s- zC&R3TQ7R-rp(sYTJApI_zhajw@yKymNP<+>!h^#q!S0Ld%2HuAF%wY zlzwkdN6;5GcqA>lLANpni1NrLLPyzL(~T+?7OyDU#J!Ko{tHbhrds3&2dNyifP6IJ z(zOmOH9@^iK_O%+LoP@GRWbL;-kwB4;wuQJ=-H}~LE+9sOkZYK!uq;YZ=w2`fAFsm zpgPMaDoVlq zxuJnWO})6j{tL)4VV{tRrh>q>AQQ!jk(@*j2w@e7n?R4ijr-KGYMgvp@=I)ij7Z*b z@0q;wGT&_Va(^j_gy!*7_WsY~f3<0MWJQ-zIv!egmiQCxBkj!{5RQLSQB|++HoA=V zgP$cc?@>D&a@FrvCs6@SJ>ku9v{csoeKN*~T>f|L!XyRJ6JpBF7YG%1f_WHB8ujsL z#(nkuDR!)q{Iz&x&cv2)$5XtJFaHINQeSvS^PDXG0YT#+kV8(&0(Q$0FRT|h9CdFw zs_5u^GM9YURsvj6z*4H-oF_C(ThRBZ)W+cja*|Z0tPD<@Cj2_^IM_H>RHFo`U@{{e z?rv|LFE+cKwwkuLjlsDOh&Dxsx$lx>UBDwZpZLMXO#%iTfX>0r_GiG?87x!q*DU&# z-MC!nQlbRbnZRM+eVJ=|V|t}lUV^E~Vc*%7c)r@2tuFhCMo{6tS#kSm`z@YlJtY2g zrz>i-NoM$JReinDs~%pPeq5SJc$35elL||%<&3DUyvTIedMjvrq zCY(sFNGws&_qUiEZSTo~?1rD=S0($sNUGA46e-J{JKWMObw8#id7=O3_wkSf-7-`B z<3Q_y1f>jlf;1o-js6k|s1p)`${Lphh+Dse1kW0CLBbFZ?^?uq*e3}Is_TP=jQmib z$^w+Zq1D#wnw6OTt-GhAV}j!7c(aU=kx$?nM8tcD6ZCNhG9weNXKY+tmvPPo6%DR0 z!0!=U7zw}%f)d;sS+{bpL0ct=Odi?Gi@SS!32A9*rs7JL*46@r%$MMX2e*uNgC%I} z%`7v`xqj)h1}2da;hx$iYX|5~@!B$OsAbp-gT2u`RW<(9{5xOi-3T2>=!X>SJ>Qekt}Q~-C|9ol_eRNGt=&qKQv==H+}v0u zCt}>7n7%$qe}Dh(0j`ponz*}r6TW@cyCh8uJmNJcfES^J^)ljiD&4Ifp2U}xmvadw zN>j>NSR7dWL{nG4^b}y!u1m&e9|0{dAUR~czP=(tl9t7*S8u>+pV^X(dlYqg(Pn<* z8SJ&#_?bT0b?zMLEQr}Uc?a1+=Ch=}<=wkwOJ?nlX4g>^c|Y`9#3K7#)z0Yij|QSKG5WUqJcvJ@9Cq_n zBMfKp{=s7oOBn?R-MC_D*{GD1gQKoKWxnVgoa+;`LItUCui;-oO%f*cIWUneYHkh# zW=4{de86JRkaY-j;z?XuW#yk_WZ)5T7+D2l{;j(8b$fau4GoP!n?9IuLa?TWYkrG zG>$Yo@}b6tou?jDc)`Cs;yXJOsEJ^(;Gax8@p?P<4==?skOdeIRlgl4GN}cx|EWX1 z*8sgaR|nc-Uk?>OQ_x|}RKwhNojRFchB~rDd=bta__AKzA)#VX62|LtEQsaKNAF{& zri6l1$D-hjJQ=@yJj6o}*}Hfi+dR(>7fEzm_%oj`h5HjfjB6+7dg#V0}fcrtr z!g=lASPpnS12U{Rqu}t8LawHyMIR)(-WWGPx!6hG^=fhUM^8i}vL~V>Qmq-1d<&%f zNc&EYVv3V|=n}4O?O>gTR0bonWb69j@aPEGx8xr!7p+Ty0|F73nXOkT428I$tZZ1f zW!f@%sorLs(u)?W02q9N3n!IP+jyV~m6%UlR(2FR{u6$(2jne|ng{olBQ@acV>5 ze$v|+P#8}u-MF0oX?(^URohNW_q+VK7jvl0W`E?)iv|(iULBx2{e>?ppJIl3@l+Vs z?2)ZWo(7*6CSJ_Wq5_aOC$(fGo@8f}>fGSCbPDPV_oZ zWSY|4Gv@2Jyje($66v^dd1kB>X-cp)@xenGMoS+lk!L|idN+8c3$kzI9+b43K=1z% z$W~;)XE#*J0porWy*%IMbVxWdq`1!ilE1Qxk&l+3(#4@^%J-v?kt#&pIDL+=SA5!^{AoSMgqjCx9T3H@D%!ry7 zw7lx@=%~fzc0aY%Hi%*F|tGJcxjR0L17OwYP^g-8R+lZ+tp4HmOaQQO)~=)s=fi zU#2Tczv|M7RNq#WkejQZuFiRM6goKl`*#Sa?(CbBl9Illy>poRY7H49S@`#_D`tc^ zfDO&R=JgwQo7dw{(tBkBL+K{Fl}~;z5iZnXSi|w^0V3PgPn7P>2$DUaVZy1C^!b*n zu4XX8_kSB#TYeCQ`ECDH_j$bVyA=ipG_=m!#r>CWg(dvWhxRLB=6~&1o&!){6&%vv zaLQu^x$PJStNM>Vv+`MUzeR|7tjgTH_YZW22dXcdm#f_6P*WQlgeR#gI;lB7~0((DfaElpBw^QEGp|3sP}J?cRU-+*+$;?{nad-Z2L2I5BZ zXU=hDoFd_{6$I}~`dgR*MEs}3lx90y%ktLO3LF^@nfyh;K5RLRA0eM?d+kGoFF0p9 zuatG)x7hVuUj1Z#eReB z#Z0@Tq9TeW&o>b?RYtX1peV?7{ZEP<9fUd#jdObbQi1qZP5{8Fd*4oWNHj9&)>f~Q zL4cZsO&+`l0U=-6Ci(-l8F8GQorlN9DB0OvkTMD)OUh+5^uP)A$-x12Fz$V6d;1E~ zUI!rJVMNr^)5#zC=gGFvflKk>`d~*P)Z>T7i5FzJvhsmzTjH=7uS*8cbQMB!4I z+7m&I1XeX-!39kSX@WE>zy`r6V|;vk*oSG#jfsvqg{QLlIr2_BRH&=39+pbyom-C+ zl+u7o%^(InU|ikL=ZtFqEW!%2yLuq-zLka|*9hlacC z8#GSea~rAyAnDlsR%^3S5V;w%y20_X@vx`xdeQR%4U(7lskq40-mh9APO+vz)V$vo zJ7Fv%d$Na1JT(;9gvYf`mFoNg5n$ATMWF?hi-3TIf40pjPr=Tfl$|{-ZlX}aPel}9rWuW_P95dSlWxA35=_d-0L>!rL2fvfqIx+VIZjkQExek# z2{2`ASt9{8A!u$+s@h{gB?Z#7V6<6G)LB*M{Hn2x1y!q|pb6t-ZEZqC)TCwyD&EnT zhe{;gr*Tj2F}&9i)%MRUTVuEPkG;PPxGoj% zd}m4bGxh5B$hv}#yKJ`E@c43P%beh#Gvet{@hWKobEIAPrn~SDW=;B$5jOm;%=i5Mb+9(2GUGDA%L>CxHEN_L_r&n!B-zr4L9^e$UNqIr0FW zG!fuB{A&&YX=rMSHD3u%n@gHj^)I7-bs9dq`P7E6<8tm7Fr@m&S<&(4%WdEQUYqvK zgupIpbgyU6dCRp8{5oJ~rt0u|e`#`nl?wXju`KQp$f=D5k9B!BP^KrRr9lCMoKG(G zABED5*@q@4X_%Ohqxwaytmwd^2ocRkT(1fd=J6d*O;4-20qv|; z3|PzZ&fLg-*S1yxBoNWIwfh(dx&1X!A(bwx09j}G`vrn-HC`@Y)q;(uRLR2!} z%KPTe%`f&9(O<`RWXK9sk-n|*ONrbcKQ3Lr$Q7IwGA}IDKC^`{u8C3{Y=}^H02?VHE zSzB)ddcN&OXN=p){M8Ue+{F+@z;55=j(IpWKYtddjYd*Vj-c6$fBD8qTWmS)_efE| zQ^kowkLm}n4AXtZ;+j!3A1z_X5=N(KVYJn{qxedUdBJi_cuI@HUDn-&p zex23p<2vOkiX9}4XNGUEz5AlmcAc{)_}P8(VZ}i$Fez-R5fdv%KfNoL2QY9KsyZ% zhIG{{1-rbes)~KSRsj$VPKfugkB^SHdO2{dEo^GF#vRqcv%*5i@QVMipZxlYXS2{L zqUgXPo5tL~=C{b=m8`@ zz{e_CA9>(`)Tlr%oz3`bZ*1P&RX}TMYWj~UpstRckx^)ipslS99&wDo%U{)`^(0L< zZieVj{W+abTtE3G7a^>*1`jPZ9hM!unWSsu`R(-DH`GUCP;BmQ#+d0x`-iQZD zkr+*&W?FPKFhsu7Q>Txm<3a%RE~3g<;BfUAcnA0%pjUI^OK{JGQ5hu8fy{YVdhk8wcF#=h)ilWFZuSle>v#VDW~f$HOCi3>poIc+7%r*=gEKN#4*unL zRQ^pL_sgI*qvW9Dl0_EUH71Q$ST@Gn9nuK|jBT1(FG}LjU*`;v6)->i5dl@4GSh;K z*yc~!fLzG9RD6aZ)AWbgO{W19K3M0}ok0pF4rX7(yBiJ&M~82f532RYx!B57inPbi z%50Lo6w~i~L*6bJ`wA9Q$E33Bq`#uI z83l3|i#LdWVn7ZHuuj| zud%Tcnw;5GvZ0H!26x(?ui>@YnYIcxZ4=SYfRlQRyn3@fdeK6?pts=X54rJxPm%Y) z(ohuy&$uiN$u#@$nUm$EcaMn>_0@I|h4@?R?K^q}1#UP6AJXcc^wu~0okP7wLMgS+K5I&Q-!vP)4Ct_j(9oai=fj9W~}Qw zSZ_?%>+(Y7*5@@DF&XeUHQ5a1zYIA4D7I#I>i7F&v$iB4?IZ=IxcvEH=~;_R3eB;4 z&rBctlhtlZ}kf|3!p6oFU_2GYWuPWs)2wd114b(+ zrQ=V!dYXN4LhZrYd)lg#T?r7~dC#$%Yp4Z-$(PH-!+05g>g-fqW`s1?>$c2DRz`-~ zvcB`(Guj6pym8n~mHfB+p1a&bpnLiJjpe$_TNq}X(4EMCa&VzYxc#kNh4qn4jmhrE z-h$i3zbfm!fz&?BE7VCrE8I!npb|Sp6ivVd*XyGS#m4=EhK>&uCUSh>R?UQokC9K| z*vJxJJ%aj=YG=b4%g9l%h$3MC*|UhO;QCg?6kahAUu(93omp7^#x|NWJ4tV)jASU0 zN> zA>blc(bJQclA_7UA;ulQR^jZPX6}A8!T9-~pDxwey%!Vhh}$)o+59`1Ro}Dbqiy)b zCn&zqTnfS>_y1DuDwRO6AsJNcMKoU(^y$s>T~ph7I;bdn-07VSwILAE=ihl`@rMi? z;B_$GKYtGgnP*3D(7L{S@}`KcXXVG7k z4Cc-p;U+Ek0}UelBFwG(ke1mLRTUWM|th z1mwKLL<~@@uzY{*GbLlB2zniPh)}aP{E>!%^p2)jDTA?yGv$Lky6UGySN(UIaKIZ8 z4F=}xP@O@Cd_=4fagY$% zY5581C}eZ*$eWK8vB%E?=Tp_>y#gysC^6{QCr#*pi_g820uuH(|Fx}oYYof1sYtAZ zS}fLlDJkc~%GHGp5a6||0c)s{*PO&Jw($IkcB#uJHaHbIfZu7>r-`RI_cV#sbkU06XTu5EZ^vW3&PHT)YS470^5(mZ_76gKn{~%0YRaB$(BSf?t z5rwq$HZVH^w!n&@n5x*^0YM}n;0=HJI}x92_|_JgD(fgut~I12EtU|=IfdCTSXfwj zw*DVK7)`Zv>u9L@y^+#M(-90>*Zw#`6wr>~t83^nZiZI`@B4QTU}98$@lNb8N}MWU zG-@8{ILplNy{6Dq$v((^YzacEjp4_C_}--BwpUXY1Xd_+RF_ zFKkM{TW>>9=DYZX*YxXl*#9i6^u_w?yWT?zEpnLbvCr#oG>eN?eq3NO`H9~6GcM?} zP{j2-;ZVy#{m>p2++g2VWtGjXAeQR=!sdyC+%S*2Jwx2-mhLyo2xT2CnRzQ>w!k8C z*s8MmvY}~5og1g0akvEHNLI6Oj!uv816K+;@PUVIv7>v&?sk=Qk=St1V|_Pe5Zv<& z({4Ef1HiK5bK*PqvH4pp2%e26E)EVJ6jtDp4mdlkVv1#HYxY19nV6FkQ(oTjd^Ku5 zWX%{z8!5^|=_Eq19cFStIP##dneeJL z2@OwQBWtj5qbmcqsoD9Q!e?n=N|7>CWbVdE#5l=qIc$^rbN(1Zy>H3Hm;iE|-k^2& zcez$L5$6vBW!PGPgc?UPMtr;In3QlGU$c^<>$R6c-6%Cuk&fW0fGjZ#w%PNIv6llV zL3SXDT3Vpn*Mb(Z#s zJ2uD~Yes!rs5Yr*B~weuOtNAobQ!5{y`JY=Z!LNJyEXVq_D^*6mhvRc!9gBkVmz;h zfxc$FRJvR2*IeMXv+-YMg@)pts~pr&F*i!UYZTVY9qN$e&SV=i%c$O~{P6o$DEVrU zS;ewiwP|I?RYy)MgGbu=uZ_~$N2-Km5<8PD*_$4d#5-D}XuUyNY;vsV(irrfr@=7A zd{Lj=>IC>m+GDBk*S(p7Bj&94A{kO0m(0>~ZY((E3xNm-nUIT>hlkZ{ad^w|Vhc5( z4?4cl#^76Jr5zFOqSjMNc`Dy*$juSN?)+y5AbD_JVoGS5~CZf{(Nyp#}k^L5AoMBEZ#oQ;D;eVd7Igd%Hl^-Otw4fKDT>I)NKEYcU~= zFh#Wcbusb0jlf^_v;nbQc=Blyg{gl$i(Z1_HvDe*h0$h%Ot?GqcqiZ7mlyv%9)1OV ze|GiuJU0K%Q@iWao3#y$={{$UpPOnYl{QWxHJgu9OrApS{HfY0;i_0@iZF>%3!E2& zjf1>10@81e(CV{t+H1ABQ3d#Z81)E-Mj4VasS24;x?F3%lQuB2j5vrOw-OMWvrY$D zugJTwX|y!p0I^ZJ{_Kc%G=2CU`!DHy90g@ zCWzJ*MfTL@%cFi!`H2=4^%#@-Y|Rh`FTTRQhWEq4i3MmDt!uPOCh(75AwKybcIUli zT!_UL7Al?|LAYukPXi|c>#ukG*kQTC5W~lVg|pT{vk+JB2*%kpRi`ammhJi%IzA(P z6{f;+du>@yC|dc3DfVgf*LB2-Q|A*kBj;Wc7kMlJRZN$i^>#ud4bLi%h*Us)NC9Y2 zHCAZ}Xz8(v5cks#e`6g2CMH_inz1L-vJHfcN{T8;9F0ulpY9zenzx%xXWm+!O4`Uz zv{*%5UBdYL1i5v%+iDQ4*AsC$jh7oub`0(AXKZ`AlkP>2mcVXGC=a!31NE@vk2C_S zzI=fg-BMwK(y#Z}NMSHHg2BBx!OVFHD?HeUu6k0+Znhd31w`C#>a86%ZpaSp_WM?X zD1um$R+dy(L-o+-0nkiXB5*5xjwy^VZrZ1+^@6C$9(J!#ztGqhuU}X)%>K@T6MS9E zsM2F?xI-A9KK#l5SupKxCEzI=Zs1kM@=*Xwp5!is133rJ*$Dkl+(zuR9YgI{xd;z& zso-E+4$w9CW1d!=mzK>+QI?R(8qWws6a-7)jEyX0sDD#UtV}uz;Q(o$`hmz;0)7k|#*{dcUnsxUqvtVoz(1(88QleR88 zH_=7itK(4FlymwN9p1M9C!c3#U7N+A@sTD7L{r^`+4sJdRMbvXW;XowI9>E>NE_tl zxVWm-k8MW!uo*=vE7?E8Q>TKo1g#!soA#|l#KOEv!M;r)6>)}$FL)u=!nqqqOeJ;! z0%46K)>~!4%vLzOszNecaY6o5N&qGH<3nI*vS|gXICQVkAu0mF6EyPA;Gk~_gh`4< zf%8fFRV7EB?Ac?v3H^z@FdZi9$Z2!?IV3#f%E=}%;(05ghuwo!f)jh={celWm;sJJxwzWGGIQjVn-fVfU2KNx#=kH^a-u&KzAqy+ zT#6Lfz>9S2sK%W5IrMj$^Ui;*M~j{Hp=8qY&t0GC+lR^_vLh&}oeirx(K5CAR4onx zlM$TJ%4epZqZ_A?$`4Ns$#FIVku=Qrdk}I=tt&tg(8r5ds}h8mU`Yjw})9AZ@K!|^9`tm3YM!2}*PMcXs3o~{SNh$Q(y7&7ev ziX_S@voe^94(-d5m+}I;Udh0cNOd)?>O3y2SqL`45`uqh_hN%ra(l@olh26No$6Oo z>++)Q8sBxcjsp9f0g<4(;4@D1SmFSx8NOxe5W(-`)5T>!s&U-KuMMH&~6 zobQUiG0PvytA!g{CMKD<9jr~XZ=d)4O|6pl>x7r?zTCY$M56kW3%y{K{%7i)eek{O zb?x^L;OuwQ;nVu0lE!vC_Y1*3OPQ!y~Y{Ud@tm%hL=(>BlLQ z*hG7nSP-ul_q$4)_(A+f&Mk3!}>Xhbwt+lLWbCKJ1Ot9wUR#s0f3>fgMAe z8m()q$zooi*xOc^Z5)Ww+`DeU0ciLPR(eF8mEdxYJpgzcz4$HrzK^)Ka3ygqW!5nZ`V zdr>J)EjKVD0Ln+n01^8%^m}t7?b-Da$9nHEkH#qyio;zOe$=&CP z`N5E!mTFNc@w+;KCH-=_vW^6u%p7fa@^=yCIgN;N$rw?o z^c=|TU(EH}AOC#rJW(C6dbi%8-SMBj)*qT2kMmWJ4Zph_pNaFV4euTitN+NdwF}Z9 zRkY(7>oPX!!i>m|o<2}x2sz17zw8;(U?MrK7--3jJ`ph+IueB4I`xB{=qz+xKZ9%?Msm7X>g&drzA%D23mC@gs$0SBnyEYgO62sn zs*`Yh&>vs!Do_Mc*Moei1&Rq)KYLoqzN1v`{QXLgtpj0_Gr!9&vXXVvUnS^ZM3Iji zj5ouk*E(9wm0?nS<+WT^`jMWjVRAL$X12~wo*Cll=}(3N~XoebcMAa5QgiYmn~Q9)9L&m*Ny{Nf+LKchpqq}!U3kZM<~^!}QUzT#3}4=`tQV5_3C9+l>1pr}FDQjWz=*Kssr68k8AHOn zL#qwkh7``IrG>`&EOZniA6OqfkQh)o_Bt42sFnLJp<3RwVrjrOR4dbn4@Nu*NtKQ? z6LOm?euy(P1j;kfJZYTDyp{%AK(X723PF^Q?|8JPs*=DaRlT6N3JW_5<0O}Zm!aX*u{Bxh zTyIP5nn$OD9;&5go}M5_?yrXgo_Ar!JWJfMh4>r8zZ{VwpTn8;cBUF+EkZ5esbry} zKZLl7O2hu(Wio#7qWwyZ_93VS9xGi$izY-)#PT6yryfy4<&Rm(`odg1%4inngKS8R zZ^5r(F;mE zlke5cfBo<))wR}@V%suBe``o6sgiU)1{D{bBZ0i2)eYC46Z}9Tf%Ap3;B^ZEfi1IZ?PNxpp5*0g~r%438UC}5z@)M|F14LCao;4ndQNn zLbjb@Yi4cihQzQ*lOs+V4nhWvGTrDS$8S*^T}YQ+`gDUuXp`Pdo3=R9<=zWVNQxvG zB$R%~?J>OAo9HdAN!oXzFCv8bm%8n%!rc!&!Uh*71YgLW>1#sY9YRiV?jCb!^P$cB zrwWVU`fKWCS-&lGRbvNQtfu2T<=gfEQCBq${0Q#OH@P!bDU2dxN2*QfUzd2cX@)-R zrtz*XY>!oAHu|^Ea!KrceK@4~U!VG_`BQGp90!y%^}^?vu(jq?zNW|v83D76ZzTfJ z@osiz8rfgYd;IrEPhSQ}pC-g^^TO(qgsfQYI-9!jhtQPqws~jnnXzZ$Zrp^YJ#0+t zM{c*up1NXV4+03}X25Rp#c*tTL9`UOIa%HCi)q%pw5ZXW-x`L*y`11AjCL~f5?n55PuE~KJKV6=HzkJdq`ny|vtA%s)$rz^im=kodg2DZ z5e0WueG;`uz5Rnfp6lLe4i)Qn5_iELCqN`O^uK2^-EIb(xsmDAlGnNS3VFTz&>vmz zzUa(f^oXIzo8YA*GhYII1Urp|D_TJx)>K3=5Q@#(Y!}>W#$=ej;Hx;C9A(+_k;C4E zZ)@}PfmY#0{+o{@7?6SeWCf#|K!%u?Y-%XXnyAx z!Q=}FB*3Qy2OfJ88y@}6tcTve^)PQ+53Q#91Kpcagm}tDBIP2Hc9BfEI6o3c@B35eJvW83=cDMmFpYuX zX~YvYn8v}GUr{*MnBP9GWvP5^h5V*6EwfLO5GgQFUsHsJTHm?dR9k|U8%j`HRfup% zpuo}*4*BhBqow9TUL1z=`rEK~AA)b)rX;qY z_CRxNX0uFZM0t^4lrwj!?BC>*BNV~1bX1jwu&6wYMHOKzsVYQmWdwCK5!BZdp}Zsn z%MdUP4VJ0FG6XC`d?-RBJMEjM_8x}w<`Kw&A*g5^6pevwC-cJ>2<6H*QCa$N=;AqL z>AScmFQnURCzkDf*3ONko9;o=J3$z3Kp+7=bJ+FNPjJ^G56>D1eXZNVd^Ax^A-#^L zo$avYc4oV+mnV}$j{! zc{*-mWHN=ZsZ`GIG7(E78uQI%v4n$I%0VLKA? zAcPjJ#KuRz6HKCjKmr5+PCon%EdR-mW*r+?`uQ;8ZbXHQdY*Fb!ysSC$QW=IBtx9MhOFsc!+bN3+Uecn;eibp|O9%EQ@;}#k?}O;r`Ajfb0t5sS zU|}pIB=)|yi`C!#lm*ALC}h;~MEXuG%oW@ z$P|Df-cTW9mntw`;xYRoOfB7W=*jf9C7W`VyRJL`0BtY-XYc?51OyV`!;{IIXZPTS z+y2(z<1r!2Bc)8y79O|nX12SH+1{dgD=1!$R2cI~MbiMG0UC!^5`kFJ1bulk#PVk7 z9gPsn>cI+&J{v?4n}&C~AKuBca68Yy>pTPZ#2KiGSf-A?1WD<~3g`FZW&0a|#z3aH zK!$i#6&36v!W-IjVoH`pypv~MaekN0UJi(FHjY&MiQvzP_rGl?6#I1JHJ2hm&) zt#OH;?AWjvTKytu)m5LM;Y?6NBaj0Z;SF4b>^leV?E7$g&O!DJKuslbb?+%#`(7crgYt#S|H0Kbc~$EQ`G6E-LAa z>^YwHYAeWTsiBtFpPlsu7Zz{A(Z75!Nc0O35J-UE9^U(lZ)4>@Jw5B#kBM;Sx_h7v zO|j~WZ{g)b2iU4VeY{N!M>irZH*wed9CO^|a23BkBm45ho9PTJY=MO=Fv9{Y9ZYaA z%b0&H0?2kit^(37$Vr2eY2RV(sw=Al*Q2{b;YN&eotcUM08czRx+ zKJq=Red_UG&;JFfj0pxMrE7 z+2brP(Syws?N>8vDD&!@xCjiCNmS2XMP=U49A~5~;Xr6ZU^oZH21xJ$GDW{C3HK$p zw)L#|@js4U>T3@?`UEyU_T6BR1PBNuK!9t~Rv!E_bUgDfS3Gau?*9taJpJNgoR2Tk z#-_^|M-`=I8HXx^ixMVSDN=3$nR*$Qu1OAAWa=f1k-?PYNVvY_H}r6hSO~-&HvtA9 zq=Pg~5itj@8|4~HDj{sRata2IgV+>+Nz%m>IE^aZ7)NPnjLOUlgFpP*#jRU*q^|TE my6$@rZ7)0%JoEq`d;A}S56~teIY^WM00003n0K!OH$x8UyX5L|-m;_hwR>YS(r?TA&>tQF0b%;rHQu0r zO64gIZRpk({3Fg4;pMwS=P?;<=m>K9F$^p$ZQ>I(mwCYJFaaFQA=!{8k~6uumm=aY zAFhMoV?R0}7q%iEK0YrLtpSRo2=e9Y=eX|WP(ZHOCTb1_3<#4dJ1)kRgESwnOBufB z$IMN396KAz1_(rtFQA*)Npb%T$rxEXxL&$N7V1S9n&aeTZbAyE~2R!Mk zRB(8>V6)-VJBmi(U|zA%W-7-@Frg(q^>cS2JAGn9x5LUN`MZ^%yy0!SB*5+$;(BUv2|{Q9Z;mh6*dKOEQv z0)eD?k6pZWS+5RuoqmYO$$if4D@CugAQ;3MGWdbqP-MjM@WadL7G zIf<=IkRT?&Fn=F08#s;K0P|sXpyAi#Y)W=qHj%rPm#UUE<9{e$cZW%`5&2><%;J6^cww=POKq{a7C*R=Lw~0nf_ZJUq=^nLLl&f z^@GdNSK+|?{*}!dbKmiQh7`q7&Ngy=%lCFV(PB}~^ni_W6h(ti1mMP^YS+5V`n%!K zPfvR}OE`pIK;G*N(iU|@_nd*ou-cA*n+A3tdJ=pk#82)H7SkMiwe{LB%nHo+S%3no zh2fLj3rXg}>lYn+5hXu`*%m2DxUkyJ7|<$1;lfU2&Mw||l0#q`8s+qi=Jg~dbs%Gi zprp|xYJ{>bX|C+(+x+$(VEwmzRV$T|!xK6;7#;+s^IH?u)LGsy+a;p?@p}U#ia4E7 zI6i?H5hWCDSt$d<8r*>=Nx1Ep5~;QT9D${do;^1(DWj4+_R! zhwpxaGC{RuH)aOOuEFKOT+*dP;yi3@y!g{OmBJs67&*d}1nH-Knzj?<9fb2o``fdP z{ey!Y+zlNC$h)hb5bMz^Nn44Q2{W$3Ee9v~zmgZ@0^^VfszuO$ETnc?r( zkAn)AgURiVjX;U0NPwxVP+X=|=qx2qCnJm_vf%ViNV4tQq~OQf_kqjS-+p9QpPZCn z6TOkrq39RxIRDQYQO$J__+_D686<~Ha1rw&9@!M@NdsN#)ppWhaDoPP4X(6DT02MS z?qI<=_vEG`caA&;1R3^lrf`A zS927@L=RVR4OnFrnx~-y%w~eJyJ~OY91LY%OnVRC&&XkX)s5Iex-XGvQ%qSE<>HuIjmH?qY+LTiCd?$47g(1EpR{! z=K)h(Jag@2A2YIh_)~BWM&T)6MaMDUeO*h=x86}lzyq5vWOl8;4X`>zhlk&ZW@p5h zD?S=q3Ekfj$tcnGA7~30V^LYm46<3P@!+q!>fgl^Ch=zpi|$Z=SnVI3iUpuolRx<``4!Hjte zcjsEd5dfi{#)%J`ij04EJ=DA@`VX*Cjye9QOkMh^*F3bagTeKH9m{j`YAY?LiX@#w zp?-BJ_kD9Co%Hq@ ziea(~6U7UJpUGp;xSQ}+TNFWyvV6otTo{hJ8%h^kH2)ew+gN@NZUrK-sFpAv76wEU zi3bmOi;HwFQbFgz-Ku@?$|GOFdJU5=ju6O^DYI>V^SYh}H1a^l!5xrEw)0vWZcq$| z-}l(fdzU0m#ldVs)tNdE*!{56=u$E8>P~(diW@lP0s>^99-szyOzai+!WVcr8k6~w zNk-XdJVQq$_8^h+tJWW2ihG4}A9Yq5J3AQvNn4^x2JUkgMhlz~9MIfZOlCA=>w)a1 zRY}wUg$as}NqIyX)k$f65aqkcCrGZ^b((f)0LLXT%!o&c6e$h~*#iO%A7F$8!;Olk zvti4ftY_}Kb`VUUAj{;en~H41AnK;g^hA#PIiVVdT=Da$1D_~4C{VL~;eTr25b$(< z!YO%hxXuleZYLZf6GXDmkJmVtJ)tZ`e;eH%Sv`#i9r)uf4ljvU#4vn%a|hY)G^@o2 zsvDdjS~ayT$(&wvn4<|)yGX)R;D7ULX1n(ABA2zr0XoKjT{P(?>&VV{3{R`$)sI-$ zN#gh&BVtzaaEH@cVM$<~A!vafY1QqOAtuD0saG?9e+G(u-{un2BANNe#n+*u8?j}s z#r2=G!7>k!K`&J5@ke99rR;zg(_WKySZJaEgt^<-M#%cY;Fw)WCI$TlZRr>|`MDDl z%2$f?OQ*UD4BXhctn|LLbrtOdC)m3{*)67m@+WL5TasZi+6S~pX>!oNY>TGV`4w4niv0OTg4`) zfoXm?LJjQ*Vly-WkeUbJ2?i=eEvvv?U@**hud%dv>F)PIp?5Am7#Fw)xF)QI@u>4^BzvR$> zINgn!hg$isTN$1NjvwmcWXr~nyFwBpZCoR>W3A}Eg$Nr4AEsw;C&UJX`ooTLcn8K^ zRuQjJq&<>>6ipBT4Y=p1Y^NFUqK%gMU+`M%9bp48!w`IXjHEY&>-?I2n}#8uJk+q4kE(ebsn)f&v8F%R~;{ zpEnihu3>lgfnYQPr+Nl*igX*N_lOL!*GWi|CzTo{8F@%&CuDR z!gK{h&m=lSgbgZ&mN@uN02lp0wSpJ9#5V9UCIv%-x9C_6L*E7mgL8L)&a(o6#8*u^ zEtM)KMM~mvGg_$0Z&)wQjCM%JD_XTdj0yjgO6+4(GF(7^vFYQ%D+?DV0bkj|fF^*? z6d$8^PTMu#zDcJq+;ya^mx=5}29Qcn-FxIhS<5)O5j{^pVa?t0~_cJnEHB zX6nLjZX}l8AY$k3fEtBJCWvdyO~Ma!R!Fprh&S~uU&R=b`2K*XL3}g_>dU+d=`U0B z`=5f8$Wn2(nn4D*4n9AwJBg~~daDc)pPCsrK$R8i`x{e$3JuH$m25Vh*1H?b53PE=TrdwHWN^HZ!=PD+FkqlG>ck{f9!?I+Z<#Rm|lxYH9ExKSHt|w2}$+~y3-==K7GRK0}{;2u3-A-aim?R^HKk|&5*sbAilpK%DmsG!-&>D-!p`D4YeynU7nM~acW4~zztaRq(XaK@{%5HA2piE(J_So{U?#kM|b0^ zOZ^BlO4-$8@QVpa0`A^^ zJgCWMcdyqq5GqEV3{YYA5{y#6s-dEcw3|tQ_tfje;v}Ft9=@UIm_aaJaE<*mcyjZ* zdj4=P5~raC8Ds`9xZ`=|VHvMC0AU(FJCwTSe}aLw$`h)u3E5FccNvENO>#KGVa;oR zC^!_p@mj_RanM(3#Q^*~Bl8nvVok48j1c|1PoaDjZ82*UI>BYRfj8Y6)V(KJo;2sPZ+oazFIU1x&SJiyJ z^8&j-S>;y5MpUe?jp-pv5$sFhs=g<31DvOS0lv&kR_Zf-Wke99@a9dDhK`nnMfnr5 z5wKb5oZZUHRm!fTBqe+f!gVNE`<{>lgmuAIRjZp$*XI_&%Ll7txB}bB?+7)aM>#7G zWy%=OFkJ%%O+F+sVkXN47nAAZd*OGK0UJu(&DMz7_3`5AFAVnyqrMX9MHKFRJ=~dV zTydQ<>fg3B}b@b6|V0~Nu5+=;8;nigm4THLD|D1a8w>j&wb|R;mBlRQ#F6b^Sb>9 zXncSsL5M35rdOVN=HX7@sF)tkb8iu++JZWq4OcZfqo#h*!^nY&RzFUImx~75-d0c3 z$nqg~nC-efAoRabW zdR;;OQ{m_YNedt$r^2O{2lxuNxoO~sFL+03u)fw42+>c=DC8XZ&tZ%iz#B1eMguK> zXoOZG^eL1G=FlcIGXS#RS1risIJQFGPaS`~kh7lL?c?$qfsUP;urkIk?-+@yRGC*l zR%sC(X9Vmhgz+MfBUSTi0EbnO;V`a@VH!fl1*JF5wNe{=@ie`6A95@IRhbSq7@uo3 z1vNt#PoqO-5HohD5>cr_#d#N92oeX}h?d}Ex<%Fq6)bK(1<2DiD7IuXQKzJeeV=_| zt{bjaeL30J8pmpMF2YoK;{^ouzgr(@5dF$nCqmB@LB3&ygr*Ew1!RcygRy=Nz$^KU zLqR$abL|rIfTeyp8N5rJRw^sBQY=2o&4S~{lEfM8*f~_;)_npM>NV2R|Eot~{w`Ie zgnUSi%nGJ>^2(KrDsr>jqqATMV7*2JgiJ%L^Fkt7F|d3|!G0w*i44_}JWaEwZS7lEwA0pc^Fv9~DwEAOQQmLm-xh|K3arIJ- z+<&nB(QvgC3NS=Lpd6AlsbuelXxb>;%*ZIe=Ph+rXj2+!A;rTXWE&lh9{3;t8LZf; zl#niUihE6mBvzM*i7Dn66yd;x`A}P-fJDqM$V^=3K%@;(#>5YyitgR;j;sHFC zDFp0!K}ur7qk4s32}rI*+M}kd-!PmCUoz0lBc;ipQpHf^{6<4ar*J+dtX%q21+PUi z)@KBLvlTxhTnEv|cgrdEKxe@0Wne__)i$iyeV1#EBxWf@c%3c9Y`IYFZ`0OlYAQnlnRPK-ax{U{aE>M3g>&g7(bXv20lcB@anD zyqb}GUZD{6b8K&e>Up|?jXc%xVPuoMm1Pd9Strbo?dT6Kp5#UdsmrqM+ISrm0W!DH z{h-mHv0GPxiZ+iFq2CQopFO{ky>cE=SQoLb6Hg{tW_l`SyAOxNjDwHix<&PQmmA5t zVXuZB4s_SPzd3e+)%DluX526=mjADr%APDpIOf+O3W5|#+oznk~p`PgAs zP>rs!^Qs;RR7{|592{`G7W01SQAa{glZygbMpNFy-{qT>KbWJiHKuA_tOA6a!s~ z_?s{M(9ox4B4!<+nj?YQ6o^s>OMZCZ$FEwnZMJa3C=5r>!fT;? z!%uGwcIh0=L==wrnwphVtltcDBuB0vJ$0c3-*dg&AcO_wgamdX*Dab=9ox zGi0{o8`jdQ+_nDvIbzJAGpIQQSs38t!oMgI`pVd_kkFZFLBwh)jOjX!p7&R7+Qw<$}eBX$S7E_5yttyI%fmz0QA-=8dJe`c%iN(N)gSJLv^ zE3rP|58;=gU1djFBlTW`yYNizhX9$Rh>GxWQdW>GvRr){MJtJ{wK;Y_6Aop}CaO3Q zmylxnWh;lD8)tp|J4=e$20_gx=_9EILZ;O+6r_CCNaLbv9yFlqen7u)zSBZXoMO*CeD5pdUa?wQZ!&s%A2ZBCD~5!o zFV<6^Lu02xIZ=e(o!($F+~X*2GEq6O*5Q93DyC61BUF}7!^T9N&T&tK#Bh8b?ClB+ zIh_3|+J3{p0;x9Ds3*c|B;5f&%gLo%(x*HzbEkW|ud{#V#q^s0PkCO;9h~?uu^}Eg z@Q;{~KEmE*SG);VFs&)9#P-5W;7iA&UOYUJt725j4KRO3pIKn#YjZ%Tox{$2=&wDi zxjNNhGY&^lb1-R976d%Sve}78jWq`e1pP*D4&sPkzTeo#q;vH(RMRRP52m?q+aNEM z^TG)&t5sjVf(|-Ay=6~Q`C=*4(nhXT z(r0!)FBLZWH{v+~bVr!UN||ZjnkE{s8Om)aq@<{61kTtPrj040MY-JZ=2I3eEn9~a zgUEReS%K96=V!=X8EGT9!x;tw{adH@SP2_fD)6Pjl zU8c?Nb&(6%RZ9!W`7i-tT}brdEi#sQ$%n*#ieHlJyVV--4*_Fbt8Y|v4yZqaTcjx%J)l&IrG_h zreCj3s|T#=jXh+eKJ_-_pcn^n)aT0^i&id02*zKaaw0^gfU7lM_I>yDub*MDv_^pn0RCGqySPrY~=td+GW zJkW_R4KS-KLj%96Yyi5R#2V#3VCM(F!abK%%nU)#ZyN$G| znMrD|uZr%Qbdlihsh7R79vsuI8=i-!TxB5UR#QO_3^pu-y*;n^uO?n5f$%~7^2_Vp zIRUGGyVEEPuUImU?yy#zfh)C&#I_Wp1mf-NKs~gFAE;Qqs9;Gj5YGFWxAmzOX(wh4 z%_bW8%Nlj0S@#~))p^-Q&;2P)THVIy$_17@Trp% zjd}i{A9-sUP}3?6!J#JQ$Mp*toodK&(<}A4e|#DOu1tOeRAY!ES|ck$<(X}!vpHmV zOGnI}OYVJW=0Ch51AU}L$DI;165tG1cfI6s2&0t_dntxM>xu{mmg>jtUj9NqJv;d;ix;>IymC~{rb%OLpu{c)UtODVG}-8*33 zctg(Z+qdh#o6Js2<%Tb~!72Wk5BmV91OM-N{c1<(Ke9jIJ@ZSW4BmX1ocNqfozk{G zBE}P_mwcx_Q4}73O?;o_IMg)tscQu!({GXLx>?A0}QgoIr%;mRr~f`37udzUAYg zpkfh?0ot=I(zQkc=DFnMZwCw4Rc(kPFplj0B?OR` z3z@{pOF>H61J+!`x_q%56pG-;8} zH(JZuiz4_l2KY&=f9O=#ZSeSoE)S09GEXE4r+fd4-Vnm;_>fVPet-1FRb}Wb8|DNx z+^CzavSm!Uav)Eor^46OH$*5I7`8Vj&QEBCGEr;B-}d9?LWkaCBG-(%pa$BJl*Pcn zGpf(}_wn&*eeB=Au~_zzw0nr;V^dZeYj?P^j~cgcmK_Ux4VGji}+>A!YJ#*@40ut`b@VvLYnW%@mcT8_E12cLg)nx(`LR^6U-bU=}ub*bga z>gkyiX)^oKV_H3%ECigc59M6nlvQ$a7Mn>EY_adHyBej1i4EGf6vP+DG|pT~@D>0w znIMR_wD~SDzTsATq^f;xAoTN2IB{;S?HO;2n+$xiBt}hh1nqhxCKbr`NZDdLWYf&? zasE`!wAr(ynk&>r(WQ@8t5-Rk)Fct;quqUf77(cF8Q5d!isq4*)KI~BFWW)sW2XB> zUF4{g7Bor?$=&ikrsi`?X@42G(=|uz?aOJpAVQ*%t5ZM8th=qqUD~DBF)<0e6K|-0 zHOoWfUaRy13md#YiSMAZ40tAw5-gcqxFZcxP`zFBG?hfK(MCY}VN}7rNI6O``1ogSlGhX!lPTOT z?yJ2$l0WPE6KTg?3ZT&w{{6@J?c86vsR}fm*N)nZ5JL+v(1ZsudK|fqi?nN=`>8uz z)xV{GwtGNo>>u+m)0XC#NZ%F+#688^CBa<|=|Ye+`sQZDkRIzA>9M=EK;(TNdP(*N z`QTnJwvbHOXf=ir!L!7F?$bH5eOlH~>L?nx|Fo^a zZ^}}(<)s>Tfc?!)Kzz>`Ibz>@mV=;8 z>zlax4oU2R4;dEz1gt{;eir3KM;8 z@Ot)~3b!mh7hszRSF`->*SO)nUk8wOF4BD`XY;vP0OKrSu!Qp2d1G-y)5rh*;fw1p zx?tnE2Pe<-@Tf1DWXmv&r1%Q#8Hf2mWV~VAqI; zy=5a}O;cR`<{UTWKT^Nc`KveF>4TvHkMbmdaMMn{l$_LwyEppui*&4!O-)&vpu1R^ zc|zW#mvkC@_sxvY&xZAb%(Rhp-OvxvqtG_j*E-^s=9At9)+|0@Q0*pGo$2N8-Fcq{ z_;`-kboN3|%x+k-qjN|CtGxPHSSQZHH(HPw9ih<8kI*$3N_fIaH$Vz7M1N$g=z` z!1020#dBx;f6a5L@(=na-LC<3EZ@XZP9E4~Le8eosDCARn^D|$Z$Vn|1fc6-<6%1^ zo(SWRC>d6N5cvFSQGlChPj|URooGqwQUI+C`u?Tqj;_mCR@3ZLX6v+T?p)dyU_Shm zAMg6yUMiOq09&Jv6wx+SV(|?H4(8;g1}Y^@)W$}La?F`s+-ovy6(8yCf@k4yigsYb z(W~R-C*&9xF$}-jj$%pgOgt^l+D>A97aV|vJ-{k3&g*^6^GW-7BF19`RChZ*757&G zJKXD{jfKCPW%}=+JlVi7sqcPL5pC6)@X=NmL8Rx{H!*12;wtPI55|ys{ZdxAl`uX9 zG|ExtLT#LJ{!d<6mjteP8N6+&>+TJ!ug~)mK+rQ^Pqoe*+TW14{xFwrbHqS4H6HyX3Wees+Fr#n z^A|lQ7Qpu6KRE6zb@b3vIX*=TX^$iB_%g&wHnNbC8QMh5V!L)JkuMVq_Jk_&>cY~F$+Ec$tBe_WLE%7{ij;B0R{rII?M$Y*s zo}ZU{eu#y4#|8f2I2Opr=;EOVp64gJQGX&@5l>PiuWC?+*9IS6g|+Qg`TeZMGf_JLTgw@||uTIXP3!01`%?%U^i2PCt~&Lv_v*I@@TzD>xG8 zTB?iS!{B-||0P)G#_>#nRY#wmFf}ov5wTzQ2B$X^een~PRlyuZ?c;Q!x*}=b3_XqK zIy=(|517&SO?=YtB(sFdr@&t@83hrg7=|gWS&eeOW}WQSh7hmK3l~hl1M%PmVlqFr zKbF50(Y72veixEcQ7)kw^`nwHH*+l{>&DeWDJEdCa9=3fO&a!vukDwwg_H(aewaYGYVW8*e zeiyM97VmmuZ>1JHm$`uHHg$b-{fRDOI?<~z-7365JAG+m`$HeVi?QnQ!L$0w`-X+N zl{hn>$UWKGU#?J1DkhfJiZ?Lm53&Aiv&CEndir`9J=*ldP%fB1>{+^3f8XN7I(x>m zAiNT)4901zJ0kZqIATR&D|swA=o(~hl2J@qEcZ39KJJ%VM@Lvi;K#QV@oQk|7mURj zWMscq57f)|rr^9<%9&XYgM4MC*MC+pX~u&=b6)1?6VSd#13o9#o*ehnv-5$DTp9_K;leM_KgjCeiyjc^5+ z%{BPDv&n;PNzQ7*NzWn$1CtiXmw(jZ4R&jVzXdh5jDtJ_HbIx&@)UI!i9)NpO{L=H ziMbM(W{iW#=0G`@Y%8`F!?yb|r^sJwx%z*&1d4%ydk~=l zTnf-t{#*Etg^hGk`9jWxE|{kp*d3%0+^>x)0-H^LI~y>DK04@sc}pws;vUukOYS2h zw3Air&6<+Rgb~};$uW6}!%|TbM65sG_?4hyjTa}R>aTpCQG2R9dgk17yPa<>D2IYhFghJ@(aoItb&dib9Psh{`e5hm>(#B9<;V#jx|?Tur)k zEfHb^JRmQNn?F(1l4uT6k(?iPYTe)hx9+^;6#aB*W&N)jGdV2#tr}T>OdDgw4tV35 zm0ycHW9<*mEe>+MbIQ`8OJ6=;D{1WRZohU~{ONYrkao9UG0__PEo&(miA&XSDn}a} z#L=JrDLf!4?q8+)v>U>AN*|gBRi_}LxX_nPVwg$9XBc|tT9A8I((a00q1}{Ag|95C zhePDwqA^;h_Sj4AGZPtI>ho+FOOMM)&Szo762FC#-j91~_xNx9lgTXn|~BHxj~xPlfKh-x}FYg?OBJ zY*k7KoC9aIGKzaV^u(V08)`+p7i}A@I+y!u6C9{5L}R0X3yo5oMA)UF_p_x3VP7$* zZ*nXve;g;xfwc(MiqUI1)#>W4q&+C}Rfa=Uldl9$Cv8+P*B)fMMYi98mI zzMe3bu&|1FGDY{h9Y+RRo%day+aAkJY9H^}7Gj{$XX0?pX9@v{%_bW{y`o_o1*E+c zKzZ5$oGS)zk!MiSk(>#{Z|0>mtEMAe*0RFUEa@amC<-AK=%o!u#Ch+n0vZU5et*oi z@O^lpP8?nGi6;$xH!=W?v`~Y=h(Y8(v!Wc_vZWUe1M*R}2&Y&6J^Mv&p{5PD?QrEKG zlNx%s*2iTbZ-FcA^fUL|e6lDm8|zW;T}riZkWP=;FYUxo*zp)=gsXez@a?fVm5 z!G_4^lTO6EiqUp)bu=6aCv8-K4Xiq7=t-uJ){G|3`?fk__p?!vt?}mqk2ca43Fx!_ zvA}bZrQrq-g{HK_25$eUf6>D6b};3spe&rxh2b0xtMlF6u>>=lSQqaU>cGEPQ`r?n zskTUjJGIsv>2j8oru2V?qEfeAA6jUNtW$g9FSL#wi89kDZIf3yn0zO0aT^rq2kr!8 zrZsD6#DHTX_N&9&;@S{iRn@+kd51O!!3#d$5eVKZ6{#KFk>B!>R?K9YnM}VZWj32r zTroKjQ*?Y@9t-no3AZY4XgRem-m0g0w9Z>rU)v5;}IWxc!Gr{6zmu$nHiK* z`|DQaW|a!p9t+{<#MG=$&Zi31etyjX0;qku!~E#pC{Qe47C$F~|IQgfYo=A-j-2Es zi?V{fnNImho~jNeHz|z?#4%$htw@NwNTBNwgRGod5W9ORhvh(4(9p=xgneVyx0!V^ zx~BnZx*)ky4D*8LV{4I{Z(R!*7$7;sENuB|hu`=tZS^(Vh6KX>3{%upJmBZ9}t*#dQo zX>MT!8a6)24SZ85ZdMeU06XGfih}auJu^kh+T%>}qzx7yE)~kbU7BstyLh!`1M!B! zl9(cf{)4Mi3<8N@D6d{FR4#?TMRE*zNXSAax{t7gaV9o1f|d`e*<9?Ct<0t+uD@bY z;5PKQzw00h6&i^cH>Ym3{o*b! zIe$Bwf$6##)4u6&8QaR_*Gzn#A8AJQa}w|Wkht?cS1Sx8MK?hH0iVRi3#TC!m(wCi z!rR1|8n6QHNk4IR-letkHoH@XX?qBY3o*U(ewZA`O=y|26>p+#8vL>rJK-RCfT3Qi zhWvJtLol)*5*>Qex^A~{Zz`$Y}lTRkt?YQ?mBtQ!tJ0b{(7hm(}z227PR4G}2PcVuDuX(EXH zwtEp&W-ri`d$Gqf{ry%`1qKi8xN6^M%VB-Ms=8g&x?f)&H=sG@kD-gKN{pgzIjs+` zqb%M*&l5A1E$?q8W;(`*7Mg^N77=wv+)sHznf+(nWf*VR)^4^NT1tDq2~U5E2kr=? z?8I6e4S;irNt&DDL5%8%-H}rgPJFexsg@Pg)b+hOJ+%RP?q4L{igqZh4X|;4l4Vp zZcg+ir{ny0pIV0nRL^H$2EP9MfOEaX+(hi_b8Y+0%D8?hapkViB3W9gnC8>BqVA?V zj;``F{n}NdNdXZDD9>8!aG2LrVWYS2%<1tLQXz~SB8hF8$6q$8nMq%JNGMvYp~rvM z)gYn!ij$E3$MSVfBCI<;=>W9APxydTAX{GG7@RChDG8MEOK!B_Wn&k8^S zyY}Z(aV9};>WeadfJmgLqf9*a3f5L%NmC5E0O}tZr>?F)wg!niPO5Iacm})%n1%IQ zhU0bSZg0C`YbO7Ce(9Y-kfGUc=OLm z53v`{@S4(GSrt?SIL5G1U)-acHpY{+O#Rl&t!7fl^+b0-*31^%4hwj?9s4OrFjC%M zM+->cM$KBpFCOA6*$9TRLZ75%WaishO!Ix~dE50dm$Fa-m-NOeT>a8!q^rG^e)U&M z!r?16ma%w9&7v4h{ah{OxiLD)1m+`o?_s{_Q^lEGpV|2_3vK!3`fF4nnK1me-TIz| z#6_%3a2?k{uQX#~yGy_CVK0B{cg0I(y{c~Wr!13YZ8PV3&pP{DnY%M17~J%@v%-D$ zOQvd*Yo2~FadEc8$AFj=FUFpp$2)oEtrhxi`bbYZRHKjJ{^mN12aJ6x?T2?k;>S<) zGVBk{RAupDo%w_7D!XB`q^~-LQ~13wyto~t%Qj&hSchsBn2uV8QnX^mIj;V$ zx8p%9T^GxkVSYTN6|p7w=8#qDY}=3FzVaX(CXc7ug9CHdM%E%R9v`HT`J(Gu79VsR zISOCdoxx5>@~V?cP+XnC{!9aRNTCw};*hi`aFjY!Pd5AmT<&Td(O+Pxs6wi`5t_=C zxVhmyyz0~IGkuDvwO`iN+}$%H!fDa?vh%e~U%GiC3yjX@?dG^n=oiP}7w~?)GP6xg zjuY}xxA6;;FlQHggGJiSR_UhZ$8*(*fA`|0_Dz(9RMP@CrWeFS3^y`g5`1R&g!NJ* zLu}tp{y0MK2GfdtB3yBx^4U9uPDhz|4( z^7b*c`nZWDrLVp{(HhcwTE9Rcp0c`hShrNzk-vBH`B2tNf_9*1I843#7P|I%^8q#E zW8guri?82;bL8F@(1FfuHD6CV)@sj~@;GTKm2<#|hZ!Yf~Lq z{vBXhp=fw!dhf%RR7ipGxt*;gBcB+&A6I(K)HStsb_4NNT#F5^_j+g$wfFwZ!s7(v zps^xMeL#OiQ`Ok0UF?rfac5c8zd(9~Z4_h~-&!?CMURjLF%4!0^IJ`yx8-X^Zled0 zg(Oe3f6nD1JfflPNAE=p{p!Y|sH@?MV+ zuc+p2tj}4h&HpShwzOEAyriMoZ(+ak!%V?R4a6~b)fg%z{8MH+#Ugn&FWC8|#`Vo^ z6x)ZZF}_N-&_L)!-vq&luVF>jIaDH^DSceCZQrwWvU+@=R5$gMts7OX+0$quwoArH zfus*i^{?qxO4R6a1@nxK#VViDxee?*HEp2A*j3BV?cho#de~!+&|*j6e83sRx@d2? zKXN`mu!YjC^LOVm|GlKN`(@9PlR?DOSR_@}D5#0z?)@a0#R^*GW_EP>*OA3`debaxogYa<{{(a%|aFWSdek@WzYpM{%I5S+2MQ2MzTL z-4S!W&tG8T|ILp2V@;YqA7PX2@m{EglZac3e7`6!JhcE(iwy$_AY~%YsGBeaQE|Ga zRU;^PyM+@zTyxD!E_r5m3^3+wp9Kx8p(}<27qJ@Z_EY@(L>9BaU1FyLe~cVE5>2#RPkqqPiw2Mll?2W+U2 z6LlcON(nwXRp(+T=Gn7((s<(aTI2Wa!8X<=ys@rwF;%-v7NYvrD|vw@_%O1gn!`6 z=n44G7US3FCROXe*w%3rE&@$Wmy7Gc4Bvs@UuR?&1b7f(m>&0hzX8|FXv59tk*4XD zJ=E*dyNTD%Fr8esl=mzwtvfe%N&SpjU474it9m*k{r$SXJ1HqtwtU>;J(%?F85vPL zj+%AOmtm&#rT!lPy+A_0YjM^Qc!>u;n!}7EZUxvQ?YLtJeQ#o)J``Xx4}X3w@G0;p z&=RM?X4Y~E_=C#9C+*%x0*ZFR=Cvy2XjCQj!75hA`&j{~Dks_F=CR8sFyZk2BzqFH zciYR$e&VHNKSs$RQ0lXIIEc@+FNo~a=72@#b}bpuUe7f8*{V&f+Ey6Z94BCRc_sh) zW`!0)AKf*N9&NH%v1yyW$=6${{C3itMvK&wfLnNA=?LH~t~qiy_b-KO?M3R5FOMGn z9IhJS<*E_?0!AZv*KB>q-y&oGq-ZI}x8GOPfz0iq&dWJ` z8H0L8SbRR%xC%C{ZCIsM2ajjBOOTl0=J3v~S#r~PyfSklomyo@WrXBdvbHak+r=7i)c~jHfoaQO-+ipd1X~TUj6PjP5o`LX?GE?ey1m4 z%PIXk(=IDrS;}96aVId&*15eB=-%gSItha7&~v|XQboMl1bHfYr@7LJZW@tbEj_kVafPd!z@ z%%f{aedf^)CiD=djZmbH8>S6?n|WV+3p^N9?admWO5&jh|~e*eF4*k zZwJm}-j|mFQ-EGZT|2Nn0(D+{+eX+?04{ff9qHQ}6NYqWXvZAf!bM7=n`WuWA$=l_=Q-{mV2sVT^4Dg~{{SwdD02OL||O29T*#RM$cwrIxTn&KZU zTT{S_%{$fji{xFcJ-&os(~d%x{IpgJpBkh|vWouEXzEcanO68=R*`g-CMD)=e zcnP?JIqyHs%wvj}Ii^8KJ$jO5+VBvm!?azh%*Nze2fT~r{djms`twr{fKlz@QGT7}TMaEgpS&m5&Er{fLF{ErZl#WGsk6=kTx`at>YB zLPiSvoV^bOIIMjuMt0Rh=+Auo1Laj-ZSPv`g~vB*xA05B4tli7j`((`4anz*4O^-7 z`t^+E(3$jR*|C0tO+h{cqAzon%x318Uzs@uW-n3ydtGdZJ-Rl?X~SXOm%-~{-}Bfv zXA=lq4O|4|V{qU}x}n!Gp;+v@w!)V6%G@qonkG^`D$7nwJxfX+dhKH#_`fBPoD{n+ z)~!|@5m-iQdiXX8{VFBNDT$28&!t&va>TbQs;J__U)JIC`D;#B=z`nD4;!}f@rn&v z2>slVeVF&oS8A_c3O(bavP}8;q-N+02OBOfK+=ubOJ-rEzs7Y#RqxM!AFewl`qOsQ zzhT-iRpu{)DTBOB9Xbn`47_TX+oo{2)C;j`jq+mm`}A50;?VtJ_RAk~>%w<}(YRuj zVlx^h@_ka#+045=wD8c_-Ue-tO2pEoWhP_$cGl9Oe=Ylkt%ar0X`7H#l$7z=iVYN3 zR7G6ZysQj{cgYQgY0xx2yj4o2N8j81KnG5S1AoC)as#v9SGjMmJ4TVZ;|V>4sY4a1 ztLqPd%Ya*f9nMqG2TGwDtM7?caj8%BN3^nFQvGjJbpA@GT_@}3_|dg>aO zF(wA#QZK^R^@_|(iw>gNOdjtLu6^cpX8rpEyk4(*WKzbk5CxC#TE((r+@3nLTa&3f zcGi>w6w9JTlQhQm>!PJeU$5EBPaC(ZyaCawvrDkHUX?nw?SIuW~Ouc zz;0Ta^XfOhuwiFm^p&Y)@xjk)S-ZVZOT8xy@1>>c5Mr$HH^{TlS3`}8+H_O z`mASo{=;u-0(Uf|%F{(`b=t3N$o6Uu``UnQNlNrEre_CIlk}uX{bJQdyp>haZ&!kg zB|om=mxAqDp2Xxa10%2V-Y74HvJ%ZHi|dUX;3{Ul_cpWN&*l1K;l6iOaXg{dCiX|Z z3XysRfxu#53_`pWTT{747IqRz2?5(S!K(kMY-zDF^*dOZfAGU9PQLr^y!Gub_yZR4 z1!<}o({@NQ(~>!RL~kv(d-MC1$_!rVgNmx?mP#-F9Yy@-+Z9^&>)T{zFt%?OeGAlJ zz6MH*YK~(zd`U*iW3jA{xbNMQx#2jt;W)VO9c@D@p}`0Bl|yQix&&77=+}P$W&n4h zvfLPGpG+)R`>RsrF<(eHaqg8o`07$-{rdxU7MDfd25raxbeTG&GtQw~n$7JEcx+7o zU30P+*ila?;q% zc5OcuMX`6qPEip>M0)SNlRy$e`ey5#-ydgovr7skn~*Z^^USj;vuDnn_I>+{w@!g> zW!cQLGhoy5(+K7@1ILAc+`=N>oVAdi55K~!CF`qk_+A*L{px;&Q;Q%tt?JlVyOkUI zbTI@BolL62s0+J;*B8EV_IjmroX1sqXy)m?RNzWr9?$-I0Z&|34CYgQslgI@S>P@~ z-2>dpn=9s^D6azzsMbo`YT7lQ4^nr+;RB~1m_+qe?P{7J*HOfht$TUm)7h-syc_IR znJ}ih^;uLxOm=l=w!#{!SD6fE`HiZo!l15gD_pg#w$W|FNS~%*K ztMap`5Vo(a9$;Qg$>s5qmX*t_6&o2c<$VT?eVuhX_d|rO4vm?pAy>E=qN?ws)nww% zi+dOw?-*)PFM$iYv<8nid=Vf;h0;0B=c~@zr#OUo8%24MDRWu`fPCCQcxFy5kkCs5 z_AxzDnJNat>PLb5fkw4+S%-l+P!zd9-^S82{Ll?Ih>uxAM1AT z>HHO}+qe^K7764~y`99uon%GSq~a`L+GeNeo!c}>q-X0U7*tYoap%S7Fn{G1Fo#Lr zR27;1GA^k)ImeZ?z{dccnKEY_3X6DRpvIFYE}_>Peb3aDQsNw=0KCZ5Rf~a%!1;is zO8TIL>7EmMmN<1>R}`5X=I{YHyieMZRJHo3n*@5LtEzu=evy;I+4&sG&ST@=H2z$_ zojEHvQ#F{pHI2J3?P;KQso1M-! zCC8JMTM(ugaz)zForPetSN91 z4r99i!`rK_Metu_`q=ulXIYuq`!%4SUmAxpO}SNAo22ZZS(cd9{_u%c^Nz2}xFJf)PDj5_;GZ z)tuNfVVDc;&e|aqc^Z>ATm!NI}Mt9HPtyNC|E0A&P|EgMXys|`eCFt`6+w;eZz@(MYelgGg$IXH6j zEsqsgHjxn#%P3H<*uEMa+4?7&u~|m6IJ`pnqY8`_9R3_7|2})*{v3a_d1JL zeq12y354SaQ}v=#^_xOObWIwL{{WqtJnJRKUp|ZRmzN9bHPgj%On3SD)+)HCy9Rv6 zTdOw#V}QHxtKh5LnJJ71&BN_B5InWYhR!>lV`mNyvq2?T}+y(0D`Bk2<2O9^sL|0U4lBmJ!fwP z#sRmWD0@!Ngq?RR<(L7k&;GBH)`3}=qCbM?7~Gu(+%v*dWL=+Ob( zVJv~FDAFt$F#FZWs~3oAO#1n8p8LhbQ-fjRPcZQ(YFC<~ySoL0`cd9q^D(d-m_}F~ z=1wE2CMYU^9qXhwyU+-fJFQ8Faya|zc1lx2tpvF8d<`lq(Mok5j&NtktD<-Ic)8|+ zZX`w<&TuD6iP4c<)~zkme_a$l=QxlOy0fsRImaDK4S|Wc-JO{D)5APHB(3&H=*NP( zAK35i<^k3N1Cf>6Y7BWbQA+)A6Qm!6b&F)e7_UdFqfYtKPVB0*RGVRFS5YK`^eumINrzcBHq ze*x6qM8d_O4v@oJt0$qV3xW56W|j8bFsQy0Y$opLkW8l2izyJnrb>xC#s)1qQB@9j z7PHE)>vyp=EekE|;1LeV#|0i|v1faoBEL;JTus#^30>5jclP<{(6%WZo28%_sh3ZR z+BT|3|E}#=x@KGW%Blinr9tCXQsY_ksWb2g6Mq_0yDI}oF!uwy517ZawdVq_0#{ep zZr6`6GogEfGPEr1tGqvX4kz0W9W5WwPv%ez=OOBJ=$Y`8x@S@jYhD>)sN5@y+#YV| z*MsOV%>D=uG@_@y_Twop(hVBb~)w)x=Z**7rIc+VB?y3R*$Fy}TfER$? zb!seX+o4<&B+F_qtqKsnnvp3kY<;YPwc~O#{K9icNr(wcbMMVv%Gjx2Lv=5^Dj+dA zp0p1qVXI(Y8z#hZ-kB}@=1TfVezQ1unEPT)`u*C9}yHhx{LwidRwl*)f+ zA-M8iT}X_HtZ-9apT_&YFM&wAG%;0ka=JZy`qv8XxU}K{M(4F}MW+^x*s$|Jcx~w! z2O+jv0J;;%26BPDz!KmeyxxUO8R7AZ=>Xt9mO5;4qL5qyp;| zSgN8d@l6_*S?;n52J>U6ZmXF`ckzQdjPCL|@2p<|j72)konnw;ZMM6IJE4aXp0aQD ztXR5Rld5vTS!eLm()Aq8D+r%+obX90y=hzdbLCPduwTEn1FJ!-X3|wV{kz!T1NG@2 z&?XK$=?55g@o%MGhtGA6th65N>DMel?BW0;lH|HjtG1(_&pH@!O z`-&gH~O~W1=Mc>RvmWm1tO0NH&iXaT^szS>14OZ{x;lZ7A5_AbsHP@@xf0GvK1pf$^en`%EuBEw z*subb0v-<+p3{M|nl%hdlON4nN|Do50-f#?G!j&6=rN2CC1USU2~Ri-;385 zMrqpZlC?1EHLhs-XaQ_NQ8wz}y&c%8Dq^QL>FS)o;{YD~oPM2}^4Dz_$Ug>wc}2(o z^kactf;!yQc`5I#-vO*ZQ65EByE*=R8j)@%DItaHfUm3JTjBI_KUry2oTfDsuKBK{ zwIk#?aAD`RG_Ri+mL@-(x1?sSaYe8%Ba7L~H*(Dd-7DPO;9i~he$g8Cr)P!FF;Mft z(L+$L(W!iUAFv8o18f2It3o@VJu~8Pp!w3i_3HKfRSCmw0D4){y8Jnd_cy62_%3pr{b?vLPm3hQ^gm*}zg1Wtk4-sX&Is zOonH|)gj*KmWea)cz|cBE{B-`=w*>#Qop@}02c7>hMk~{LORXa%06L@y4zKW=b=(t z9Yk~?!aFC`eHb+=CtNR_PDzJRWb&Wm%U=kneDYua6!VWTnawHbT_yUSxrXj%@>UgHRSUH`OC_zvd; zsXq5SUG>RGjl#UglhohcAV2TylnTle;7VP!Qa2^^aMraBClZM|dQk_9vxF1OD}niq zijU#E4rdT$w^q2h^z1zT*|ZBy(`xR~p{i^@n9khQo5IrEbr<#^F*;I4D1?ns^g(_u zIPw5xD?+@95W|qUwudV4Oz(#7IZPR`i76w}0$@Jwn~-MwV1ByDkkF4ucXonzH^QAA z;m)%>z#QJ)xE_TUfa~gtAQ*P=2&ZJJi4zN1tBr**!ma735s780ad8%}mrgBOaek*Z zVQKF3KbMn}Us&T!N<{?@7H!(aodYhYa8CP_ggDOYa0aPIvhn(~3a%w&q8eKa*diSq zO@D>=AAO2(U)d12d3L1cUn)!dpgH~T2Mofd zG14@eHb~~*-8zJ&XMe8Q!v2gb-BGcIBf6@vd*2}zZ3+*dUv^F>QW9dxEpVIwGogUR z2DV5E;8t6CjD82~_RE0TfxiTSd37fP&`*U%bu0$1W|A5;Sg(zcys*v%o zDRsOnNm^CH7Lr}F%BOm~(s9Y{@t#sMR*M;*riJ&NH9^}Z4fuEW@BsRZg)2FdTTpvU zMMAK6(@u7#Wzf1&{R%gC{YAZ*{Mk%A!7=HIBAFkvSqJb4utvztawirQ(j4d?0_Zh} z3_!0auuD*fQD@!Hv<<(xoz5?^@(Sa;TI~RsD7%#+w;K^=Rj1eMBP-v*(SoAD;avKy zWrr2TMn&Loxv9HhYXYCoM`lhQ@zIfZy(f?qLn-+Oi`hg$k*j6^hpJFelSZdx_0htut;KvN1=_dSOfzWxP|CM00{)#x_6RHFwc!#X*q!d~3`Oh-O` zaw9iRhEK=W90A8bmy$(hsb zq3<~zIlog|DI}cWR7u;n0*Wfvuc8nU9m6X#7jV?ANtOD^GGXQP62U`!^5mN}?z}co z`BcGt5`6lU{Q0KI4N$lRl;;DEMP3hhy+MvkHFc;(U;~ByP!34_Wwh;e!I8A`H@d3U zh*FZ33T`JOeVELkno5;?Q4AN5linMpF&aK!Is5$t!N#P5#Zv1cGZa90yz*>3k)c&p zsi9CzQtGzaWMwp~U5<_2>TfmN)A}ulyZQ8~Bit|%K6|=GjIW_`uPB(`IJql=allo9 z)US#HR;!c%yk78mYxowVa#Y%iQvQKem~;GlDywfbiB6{Sl&VOus0i2?RQ7tdT0n&H zSgmDiTY%Jx_%$OTc5NYv^uCEYMV z4%uff!Z{0p&gr3FR&}MUe+6iUfAQXRTuJQsthN`Ps(dSXl>^sEc*uMb$he9QV}LIq=sB zFqw4?rd661%sP;pEkS0VO3Jf;a&$SG@+Gi=>z{_tCmMiWJHY&D_}mZX6S{yl9vBS5 za)O+mZihBY`UOFDNK$;$xq$^#ukTXY&xy{-&{&PXXHu-HQ-Z<8*ShnR~* zbvqY30X={XH37^4OvcJ9hpu}HI`=E)%&wnsCGa}X@07+a*h};DbDz~0&~r1TQ=vhX zGro#y0MDrp;BoeC9Uj*}^*W>k9uWyqak7G0WHdxX%dj$wRS(5er~y@h1fBZ+&4vX9 zTss~%{$1Tyr$MFCwd3K-$@1qLCtA?7@xT}$F>H(9cLLs?bq#D>MUb5#izOHoeo}R( zBZE$CkCu958q84W_z0;ox7uY4xWz63TUBL5MX-6X<_R$xLiFX!$^RGGCc^0xuoJH9e6_Bt*qRToOdb zLqwDWb+aWD$c3oMz8eZ~gid{zvhi;>BcH6+Qo6yaA4?;jl%HQc1J{o4gAktq%}!aH zA&_dQvcj)a6;vyD+;!Wot|(CCkV#~!%f9#dDkre5CZYfUAOJ~3K~x66T7Xy`!)=2q zuBEWrWiE7EgtUdLdYaV|`=izsLAn`u8z`vm?`EjnL%@6-d^N=n><^aUqO+ zB8rZEX8`}9qSe!c;PSKE@ypnoXqptuyiL1tIz46Y2UV4uM$>BV8Ksl~GOi+UJZX;i9w(ZoAzX8C zs_mc1nmSd+B^>RQ+m0et<`$a-ZF`giZo}!XJn9Lo*9aC5$Ho``v&4SHhM$-gE z9xsK3MHD%TN^DY#*+g`N9lOPh-D;-D?ZM^tlJ9iMid#X>C{~M^mc`(vC@0Da*GvGq0d@zZM~|SuI4{ZK!IfN2|xDQRs5x@pwZH7n7bA5oDJMA~f>Ib9SKIge2`D8xiYU@@D>cNF2)D@w&gMG|SZk)2-OyHX4`PLtdc+Ap{Y28&P%}iW(ZC zCNzOlqeQ>`a~KmDfz=|dOm452!Xg(%PFJ}AY_nR3j_ASo9L>uw;awdQ6+x8U zPF7yNY+G+9!e%Y~a8wkETrTn*L1U!}Y&I*=k#_7>3l_5pr^|!G<)*+b$BRi- z@M!{7QBV~Ho7K#m)!TUZvtKxPBwKDUlZl>ZH0Gfz&S!A<_E_{h+lR9A`S7n*eDLQA z_8iJY^Z7v2h>ecm%3hrrGw?imv~C)B^r9_$m^x<>Kd;^+!N6;)NxG=Zw> z^JcN|>(Vtm{Q8IN-?5kbZ@G#wR}En9^0hqh%KPLN6ylFhj*E@v<@;~toDQvd@YN6a zW6?@*dzk#++qq}>00urdnLk#nM|izleo=3xK5`eDCNP^q8L0@Hl^K65;)%CDMl3` zKJRQMjk<;=^^!`6wTc2q^9tyG>tht;3Qc1i+F6*HQYa95Tl--#&>@$!|U;IZkP6aGv&YRO3mQP$N$Hn z^dnNUqHDaKy5%Y!zHTsmMnB1-HJd@xc>K<5xn)p4OeVDiLlSAX^3IRHGxn{|@pxr* zw|YtO+&r)!qXu70+op{IfHZ6IDqf%Q3xBWOgv;fY`_Jj(>H+;2d*cw2Vq^5-lVg)t zSj1neH!}6R-&nJKkK8k=$|Kia!PuLI@#(J%828SXq#wx%VPLzTc?Ppyew-sY`8@F2 zN6cHiO6HIEYYeW%0JPWI? z!P=LZ!~64B@c#Ujq#enXu ze5TI+2YaNQyDsU;gsU#b;r3usl@R7H!fNKZ9~SW9%)cvC+3q9{_#1(7T>aQ#X1rhk z`e~=D9+ive>*wIghgHnx-oOh8(I;H0GMiZ?A<9mn)6KelhcE>lNH(*H!#R0)eR^JZ zO>j-0E_`$<84r%Fb)I4dvF0dyXZ(hi>5iX8z6NpU#$2l_s!T%rr`fB{Mf4wXCEVLSQwUXp$65 zjNQi8gBcWgJRy*7w_4E3N`@l@kybNJljBhph27~{c)UK$CY3WA)o1FR!@1*<-rV~7 z7p&WP5L5*r1ZIBhMAltUxY9T!Mdj*$MXKsZcAx1`>2HMsH z2{BPLN>1cpMiyyDj)X|k5jHDXIl5NLLBzQdXLG*LVcS6s}%bGtL}p=VjUaXZ+o z#79dF#qF10%+d`z_;B`oxdwpf$OztkOAijgt(3w zFTBE4kHWVv8i0OU!Q4LqBgRG{#I*=99))IMbHM@kp1y#8a_<~sdh!F{Whs8i?;6J=GVU9 zU}{E5>Bwv@-AJQ9$7(k5-IDeE_x&F^l9P|kW~EoV<~%sKA47X}7djnFZ(BI+Dl^Ym#_mgm}8dgyP z$ucxe;M06qF!9_yH?nkl4#;}aZ3PEep_qXxY2pIf;4;&XX$^sOiKhBl&hbSH=QJ&MAkjy3MpIXS?6GCuBpB{|6uf+ues&YnZ*{5W@^-X{%<*~|yC=QH-L&u|pE^m(YyOZVQymHm42z=(m| zvT8lpEP*}(jKA$FmTlh7hMoJs>*IlugXq!z41G@vgvku{2#Ac570FB%>esK&fb-Ac zP)Pw5EMZ5}OZ74NGcPE*CsCO(t_Qn|SG_LEL?5Z^nN9E8i?yi^XC_2qD$< zLf{i}KZ-zEXdmZyYRNO#T#ChH;_0t{=hfK@Da?{{-m^;^UbucB{myE|v{6@b*)#8f zPYXJSw32b@qIe#(kpIcQy*%@8{_m@~5OGY+bCZ96R3VNCaSvBN_9io4sFrH?x{+aG z_#?$&e$}JR(6lMQ8$h#=#TAY#$VP_CBLUZcdA!93l+(>)L;4bJxAEPwjXeG7YzhmV z5EBVj3(Gd|=8iYN;p6$M!0V-X!(@i_>IlGprvJdKCF|wk6BP*vKKgwrV?UXRNmUur zvl9*KCBU(&s9-!V!%jy_FkZ`IL?O57DuCLvFjI z7q~n$PK>8_n`Zp8dXrQ+n$+S3MQDc={h(jIc?Yc;r||4OH_)_cLvXuGNUI=7sh`Mw zBLJc7MKn#5?FL^S-F6ssuf=R;!K#gD zn#S8>M{{<^HpTrB!6hD#(P{`v44kI<^k?bo#HBwIKsk1xOPPS+j9sNkEV^Wcrm<&V zDsRr113=UIN#OHgQWeZ56JAZDWupc}HAn`lh27hC^WSIQB<*l!5HnHQn)fpl8ZNh6 z_CNTdBQbR~=08#Ovsa)Hq3mu!(=iT3z@!Bkz-0aaI zedT)6nO2Y2i`VVJD34d}bC25_&_tEs{e{40w=%HXnKVg?W9qMqc>c%vQo|Az z0g-l=Z`#c*Z+$~GfHN|EHS4g1%%*pz~|Gzqo1E1ulzaSs}Sb%`}pVk z8E9HR0Iq!4kkC&HefK{Eh=Vo7tCs z6wD_6)lMo0-k7sUmtcZa;<~iw^ZCH5(YsAE8pg-4a@Rpt?oE>tq^5-|?1dY5u{%AB zmJJf=+@c}BA51SJqtxq*l{3@#fw)#R3s5L8)u!-jFhAVG)<}v z(~st`e#c&1p5oa5_AQ$5(0^{mtgDw*RV6#GfVs=ouzO!x;9X6s$``*aVD+|LJb2v@ zram^BD;}I2aCi%qri0asL13c)t#g|eJb2&DSS^--!(c{s9=|SL#lgdwq2r<*lX2_V zbsTi~C@8qy9vp=Za7YO~wn06H_3H(|{=*qyGLf2*#gg?~x#XPAJagBzT+p>W>v!yB z)1CwTy=D{nx%p*>y6Nxe@p|dfrUm0}9*)E53Skhxo4iXAHOYK!~XOmymJ4o zJU`|Ju6g1xyLavlT1X;fKb7PfDTPUrv~Ax(-uvkfzI*;rCXO1(?$pC9U$(a7dJX#C zzdE(!=<6{`utsP!XWA^GT>^^*y2QKf!RsZV5 zB^;@+c1CG#?l#t5>fym_xUw01G=@tY*GVe0+Xt8Fe`^|7OyYie0QRz z(enRyy!ON+z+CVdfL^6^C>4>t zJ|8XWC-Uf(7nSJ3zVs}%rKXqRC9j3H83I~TUA-esN_q8Sqd`&FzUKfhEnN!2D>V(8 zRuZ^0EpWi7szQ2JHWS|Yf{v}4G3M$)tl7GowcGa;t10z^tzmM4bm}^MB;Yuf92d*Ccs{C^*iQBW8dh4w9*^3wgcg}hx(K_O|GS?u1qFQkvE0u$f; zk~U2naryb@@bUw9pN|n2pU3t6 zFW~zA7m$85hou|0^Xy08vV7xq9n_C`8C`4P_IT;sx;dR&H!ra|w(UR2?tKSCed#=2 zrhYqzu5DU!)4+Z_d(RDweBythiii`5GZ)7&OS(k&{qGBTp+jpPyXi`vy8Rk%P0PUP zc9*K<5Ww~Q&*!@S=LgNL!qSb~8TIT`aty@GMT+{i!|4r^jR({_<#Cw91Jm^Wtq&7q@t0VfobNoC2FJ!OWxmDJ}S^Bkeks)2OUNzcib_juf(3RzON zygej>1tEoi2X6(xF{q8*`ZZ4I5S%Fci9CDxu7S_8`kHXn;*jK^OXsxHmik2>$Wicr@7=676qnX6M|)%wo46+*H^sO zOeWmfd5oX-IUQOy;hIa%W5wnjx-(?3+EtVf;sIt=3tD;#xLmyU)lAwpYs|2Iy?Ais z6(q&Rl)~J~r8;}@Y8I~96mViSsVWE3kC1*e2TTe%`2`3eXxXs7&chtjFHJgVHm;XU zYUXzGbS4o2Uaya{S~caYR!u{`^5yS~c;koPS-I~Bq%@H+;kHNsBID!v{jZfwpSy%d zhF-|QtXv-ZWLAicy;ySgVUDtMS=Y8i+pW}#jb_~Ni|}b0O_JjQxb>oQnDXr(6uDeM zs%o_iQ%+gnCUCkvWEU3Eu~|dn{ALA{irr@6_1lIJ8)@gxw`XuhN+OyNr03>=B31qV zXpZ7NS3KALdDr}ADvFudkLR!C>&0tzhf=vGv+^C}JBm(Met0voP}lto{V)9ZiUH`A zMnnHAKYw@`hCOr+8n2GB>FzhqLpTxqKt32aj=zGn>lJ*&M71P;`mizhS*TOg1ZH2Az*j)A)7u zX8C_dZmIU~QbA7ywJiicFIdX|K54>~F*otRbwfysi;)g)@+4;d%Jou9(l~|gy}Gh$ z)kgAEm2dx8gxBlkysjO%s7L3Ls&F7RGmBYs=7&1PDaZeQ@4*OHdzQE&voT^DpOHHeeQqo;f$k9`EUkpnl|MAkyqew zxyr<@`777+^5;JV7&+;{C(Te;EG*l&okLmKTz&C*O#a{-cI-J=tacXy)okX9^Upz1 zVAp{|Y}=a}&}i6gR%Xomhp97uA>Zp`;+@xXd9O~`A|qL{kg2*lNU&)T~V0y z&F@^&r7aV_{EY+Y*;uXS5Q?VM$iJ>(Nxj%8Iy6ne>Gm*Z z)mAW@DRQ|vl2^bvZJLo39R(g=NVsC>7AXLvW#!^`kX7_&ui2f-FY{MQpM_xcnCY}8 zI=zOW4~^x=my4kZZ)MWR%dkb**|Yx;vsP{a;Da&O(7$_o zX%}_4!0G17bG!29UBhvCy!^0a9Y>BF1(OosbiH05xdjd=D1-t>@#S;{IbO+ryWAdd zyFwkC3X6)>;=#@=$Go@8qMbDkbe`=$-pdN6}`=KLeo>@H^sn{UX0 zUs{DGA%RZwdU@lkpZR>wd{UAUu$axdN4XBl=|}i%&V1ryqIq}Ry>#w;CgNx=-ke-0 zD5QBxeUjp0Q5B_xwB^$@IVP^4tH@RCAXQo)Rh7l-Hgo4QZxCU#l9H65d-Im^9-^cg zzVv50<)vw0GV#aqb-3Ifp1A!Q+B9zr`2|qmphcqwj2|@;kJrnZZ94d~1yZX6<=z%-4-_*hJ5yY`Y{nU8_DspA*%f2dSMF6 zHX|vpYST6*zxNd`x0~d+n34=+APT_;9uIE+<@Vt5c%^#SVrJfwRV-P*4ZF?CS5qFL zbGue@FBLjK^D*Y?fjoW3NHUJ*@YURfa=qx;{!FUEp+YxHGYVOqmd`!Ye;_NrkW0?) zz%5r^BF}_?3R;A$^@748u6#Y@Liqpy8+=JbK~(-j=B(aQGKrg>Ljcvp#hu&Gu5mqH z`f)z}C%(g=XQnggnduCiJe^x#{|b|;a?fSw1~FEmT>pzw_a5MKIQebOHqwsfa^Ijn zJT~k?%vLk*+yXA0@D2+$?V?ZnmLx<+@b~83EM6@E{a{uOD|a0rCc?(;7o9^wQmj0G z@(Q@R|G((jMrx6MU9&}^Qjn0~^?BtP6nvICT|rKlxO z@Q2O#eA9v92oY2D9g&N$ciZNy{CHwW?4-qHV)gEWjQ`?S_N5yP{Rys9rNMdv(-z{BFjNOXM;pC|=exX%^M27#XGv7XP6Fbt5u>VL7 zE$S!GwoyGItQKCMy^uG5Sqv77+yp}4@_4zVYddzmH$gHQO7Q{w%Zg3h|MDjw1a7aF zK0RG^R9jE5hJ-+&xHPysMT)yyaSIf8_u^IvUYtUa0wq9kZ7FWSp|}=@;ts`~m%iUS z@BX>x+?}~I-+sGyXJ(he;QLzBJ!0U{bR~~i6g_Ke3ngV57xm~MGB1r+kBuhfgtzC0 zZ7dMGta5TSM`pq@jH=yRZj$CM_6w~rr{Z64b{e#tMhQalwK7Zxv|WRhvTU&SmP>=s zX`VYcJBBjZzl;~ikUeEwy*9k2q!(k$N{iPPtd%36J>s8rS(TA8w=1er_V+fQsm=}W z$wO@Pr8zJ4@tg#Wd}S9=!dQ}yj2p>lN#dw9JcVD%$P_B5>H(t^Q+ru^JA(qgzdyF6 zaqLCJ3;ScdM6WwBClNEp5kTqG6BJN^_Z!Ga_>+QOFTB_Lo=B#`FGQ$kb zXn1~bB^@E9cOTVv);}Gsby^7up=-L$p3ldtB;}Kw3KV@FydE}c#@-h|F^|kZ(IC{R z1=TJmy!;H*7h1Yl01s12#JKAjcdb_j%(b6rxQAw}MHI3gs*YhyCJ6Zk`QRZKlMm zi{&I@Lb|-lQz4$uCA;^wHFQAzp6oq30o6zLuea~>O268U^;34g*J(HX@wHP-g!}Bl z<-%bx&bc&`zF&T#$~`Fmi2v(@1-8PEbKt?S>w3UCD@heus{|rQVER}axzq7jAiLee zN=v{+nlU=|Y>VVSH!w!=ctMKkx2Dp%lBkhNNv)PBE^it>;mx)@W@oUz3Q_~}$Ew7H zmYwx>%^WHYt=(o-t#zqY+UrZ;g;W60Hac!18b0X%t3bdialLj>ncAe3NKL9f4Rc|(Yt))}2N3@iJ__F3@ z_1!z4u!zm;CXIsCk{7!X1#>qK)kLk&2efB79Qp@K#@~K#a;R=qrLyL*#Du=U{=;2* zxa^ZuymA+p$S4;6mJd{lO2Z?Pu6#n$A6!k^}3nGn5@h8Ae zFsjq_I&PA^*-1T&pWA8T6koWc>(v@Ugi@1xdwnDZWdyJ{R`Ak2T+%HRDiQV9T({+` z86D;#(~cGCK<_=GU!LBhRG$IEhAp4t#2 zzTJ5&@)h5csQTUZ-&U-8XdL&#>RaLE63@NGI4f{5;OIt_L>gM_ek>%0_QEeu=}nVF zD7oJ1?G{x%x!~{(-XnrB4GjcR=RrK@7#Z9fh`e)7f@-pXr{RJh$PnxKwB@DKvtpHY zb86tIi@Nf1H6y!7dX&UNGR_V=r-`l9eTAk4c|87xlFHlKO_V{mY)X-4z)y?QpvRlr z%Z{>_Jf_#cdp`IOv(iQx(&2lwOF?tO!W~B4=pTmmp9t0ShExr7U8v=M z{(MUy8FoXAZ<#+ZFo?+a)x7KG#o7{-GkJIv`urhxJm4jTSvab~B>aHGV~<7Zqsg!P z#lP(YU3Fhnc@^WBgtO;3GKZvGh>nkR)bcU}!!{n*gk7wJ36-}?>{UF0X zU~f~lN1|gA7}?pPT50v>(JGF^y`9oSwL4!`vm0}8>^vq0C7ykCf4Js+_G99vLa+rQ zcBlDnla`$coc9*BRnx+Vy4TBowG>RIiYRHV2vjJwH9jTfaOCLOV^3L^JLTgs?SQg9 z0eM!rkRB1)hXGqV6#|#5C$Z97?rY|7-3>l$+ILD~o%f00C>EsL1}jCS!m0|bI~|=D z3OIX{w{HVEv*R+fl=tx`T>)e4hMjqz& z@k2zK?jSDUtX3UUQLQ$zP#zERu~DM}@uNBzFN6;ut;yL5 z8_GMV5DK@_qJ{pY>|ya!M;1>q0h?ItwI8hd@cx3L#AL3Fcve`UFGbMJQTNnW;ZYsB zNXNBht{rEI8m2tv2IP}G=6Jz&i(*udR%@s6n9a=esvan7GdT9l}*ouF}}XerY&WKfqL6@*SUmWb{@SR)v!*Ig3u)2 z@!>J1Jp6puX^{?huE$MP*R$ovvR{B{=My4|Iw?9-c<3+QBf_?lKzUPWek%%Ql@ROI z+G*^h;Lg;r{{2kCR>TX4j@FCh(fIB$m=Zwx*_sx&2T@edfY+k@peilK;9I*EBLZy_`tg8M_?y0&k{b6QDmFbJz{=Fb$Nl}SC#D)qeaQ)=qp5;qTwhVfJ7aI0|&;ipvZXDS?!68g&keoeaF{4fGu6;nnaR{Sv`5a5SC0$f;j!jhv)T#m|T+ySTV> zILzTKYm%u@BZT0eEjD*tr{W7WjdwZC>5kyNcI`MJs7&=`I`6K?tZa!l^qi5G{hI@7 z$TEtVe~IROnKk3yGOK^3Url-BW(p%_cGMUtnzE7+kYx%}DpvOy8Y468EN&r!iJxL~ zZH9k4A7T6UxCGl*h2mIHEgIw;>ciPby72dvN`vbO&gUkEyh^N0#O*=9NYD`@$E`QPhA z%UsCfSx5rv^?wLBVa(T2n_=KSjPh5TV_^vNQmDo}AHaK#?F4IfZ z#D#ZNujuln>Dl8&FxrFZ-I;!EE6bAj%Y^H-B++kS4zS8=tLqgZ07QxU-b4C{+@1GHF^i4L=Qn3tJx9s-t(D$6$&<)SdbG7=`I6t>5TKG+AvH^RWvlF7>B`wh;ufes z#IoLC5yIV-k#?ervBTgQc?a>4rEYvnj$);ApyJ)9TPod5!8fvOS7x{Dv3) z+o{NFOuS~veHQ!!)WC79vZ2YQw@N!-aNoj##i`;tnxPIxQ8EVAfABlT>t4msIFs|-AudcMADL_`t$)DS8Yw5$0pgppm zuo7~-4TLEu935TN>ZUN5e}$CHM+@pUL3Ccfqp0ASDb-deHoV zq#E?Tj$;D~<|k1QnhPrp{A*EC;YDL&jAp&nnd^+^Z#%uokuRApZ5`J;yL#w#^JEQ2 z58}62UPB$0vmZsA&9eLSE;&nH7lJm!)YR$JH>5%{G+GiY!^M1jQFl_~_wZ4;Nsd;F zKbrg=UAx09qwWx%u`eF{-Z6k1&KA%d>Hd1VOGFoi!CC{dSV+>w%cCXcQ*`9~XL6#r ziveCB{9R5bPr0*kSKjx5qvi@@*LwAKLfpcivG!HqD5%lvo+!3Sb5|}5)`-F?-&Az* zi&TKA)nfv@Y7A$*PHp7G@W6xYYDMRXqgZ+)@d3~7yJGkqJ68(zm(G_$*?Ys5`763c z(5nUUew8ncb?@2Se)kU@&$^z3&1feDoJWq$*`NrN@80*uN=`- zpL)a0-7*({MatZwbNyIw{=2RM`l=?=Om`waoak?%KCuX%_1;ARYesNHSe-r4^jIv0 zG($O4@4vgYIZpYu&Q(H9_?LnxC@bPkK7<-hM{p=tZ$IPLyQcYWPuE+m6XY!YQ-CX! zTz3W7H{8|WrEmYt-xqYnTQoFqy7BPZ0lN(T_|veWu!1}?-cxnATfUhs1&iX3^m42< zYVDSdgs-bFi!uvL608YRmU`!hqtc#7c$i(`WfL{y_Pba2@Qv<48VB95yB-yp=GI+X zcljqQbPje>s#N{D5%m`KW>H68u(2$Z1Js!%iW9sgUGwC`Rp4RMABWufyxKsiyVjno zKTv2v7+2y=bi1Y{Q0Juab{iO0H=fK|((M>j{=b50PW3pxZLX6kFKU&N%#n-gsnpyV zywfb6I$o96ZHdj)nU(glw(<0D6||GbDaw^=0Z2H&3TD=25imt!9F2e|+ljcD@%P1z z?pf={FAoixRu%d4>P$EK{gDf!rbMfb9&Oq{NvAyuG?Jn+$En=;2Ub9h1G-AKVNBgr zjnHr2MQl+t(fBvP=3}GAaV-yozu2hy*o2!rkjTjcOashO@66gTX(#-(V?8BU7)`)S zKc+grlE=Lsx~eBRXRbRB?(WshI+7eABKrSKijs3}s{P5{B6S>yxX_j`+faTt_7e}Y_eU{$P#uLgwr%VkDcDtVloc1bT16P z6Zw%C9M*do+yKl47=~b>^3Tm&yNYeDfQ??NbAWa!w-qKez>#+@q&~UmOBfH~iV3^N zGdqN14yi5C0ApH*ksn+>#YmWK4G3Dj`#$ zE-u2^;IUudaNd?v-M|*bn2fN>sdhU$SP1sV=d`ev5?YXMxG3BfFkjbWeFXWl$RhY4 zwZfP(u!m=(=IU@G@FGCUw*g=X)%$)$G|Lf8*BXYCYQmfQcz@lk-SPf;F4ufTzqA3R z0dWD3Qzp6-$~I`mUrKM6l#nSO!#Lk&3G>}GbzF{qf^C}F@RovKPd_}X^NQ2R^ya{_ zFK+&a^Pi>TYf+#2`-S=JT!wh|@uU~7!9*EUKcxx5yPE3AI8#X(r2-)cJLQ893E-jt zn;xlxMQ!3*;2fpXGfKT*pVRg4*9ZJL6~2>33yX`jRBH-2mw0d@xY61-@nF5Jr_;Z@ zkv5+`mJ0txkTX7L#|T8G3!mE~BCdUr@#?_}oWU-2*#?}8sB3xmytX3qmF_Tj3@wxK z=JdW6>PO7MTtnvyl}J`mnaz^?=Xq}LJA1e)aV^0O*=ZVdmUh8F>wt1k*R^l#9P=T7|ckv01H< z+>oL)i!~8=&c$+So6$93u*YYJa>~i=yHoBwh1Li{=&Z|Dh@oB)| zs6!C18IoDjw0?#NEI(Y^FeCJtG25SS;cDnnf7;%BPAptPD`aQ2%wu1WfRsYMpuqnaCdM z8ypTEXf*=4tezSvEs8pJ8rh1j(iB}9!8nbXMPgYY2O+g*G~<=5o(MjneXmi|vZ#*4 z1MQW(4>^u{)8Ep|B_Fg)i{Xj4$H;^60nP2D8$;jWuGILI(}7e(!j~lkY-rzSD2Wm5 z-$(b8L0RCILe2ee3N(*tlk>zqlb>FAS(+(*20f{H9N<8~&|IL52h0CU3)iTwhHmR# z2L+9Yo1veInJIICg#Q~HvI+SCB|xX5rb|pSJg%%m(-gkQ|C1J%N9o`aarec0&EbpT zZvb0J%xlyZfHA!^V!6OQ{^vL}i0G8T3^<K^`D)GU&Qk5zcFQy6=!1TmJ_*$_;_n^x4(Rl4Q94BOl2x0j~f!gTJ_a!pK`xNkU z-UbuQ;U42QRm3Nkjmw=?8Td4;fx0L*DVuWao zwrVg4M$5o90tHTo*~Su7?QqcgsUp07Yg$hb_1M##B0>sb6jVTD@g*Zab-OtAn20?U0UtQ+q6Cif{%eevB8UCV8@*jE! o$25XpHUcwHohD=HK0QC7X`IB9OX3muAt9c(a%!?w(q^Im16A_*@&Et; diff --git a/frontend/static/img/fic.png b/frontend/static/img/fic.png deleted file mode 100644 index 7e8d3a983de113302f1f13de31909477fe55bb62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11868 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 WiY~F7ZIilUAc7I zd%v~i-Msdh_t6KRdt0A;;eCDYp7-s8p7(42q4)cvUGK@Wr-{2G{@64{7h|IVtO%!r zD&c{zFndOxsuq5N{ttpy(f(40;AR-s$s?L_`=UK zi?zE2ge&MgLO;MN6yp2D52a?b<2PcAy%3)XI0S`QCq@b$WX5mz$Xgz3ibdv*=NLUtBq}l_(RQ1htn+Y%!Nkhe}IMtEmztqzTPmR!e z!Ua8c!+4R+tlDLBFg4QyG@YJbNr@>7&0%FB`cpfl4LVs2ij$!({`;9j8|_7)pb>qX*g?#SuE5n3teL- zj8Yq}06kp+eU-U?2 zm|WzY++rbEE`3Fh#5bd#*jz}f5<8$;5nq&u<#n}x^=cI5-V??2A3Xq%*EtS){(W4W zEIk&|FC&<{bLWOI*5?eYtuEN2M_2FmqC)Y2N2^%9eE!Osi*S1gZ+3>(gerTloQE1z zJ{_7Lqk4ZyBlQ=8bU{OEN%@j(>{&cOJ4PTLd%7EnPCmIY8gnL#l&vZ~wnQINk<#}D z;xL=3K2GOIk79B%Rq56mqUFJ|NlraHO8R*Ug<{?0wteD*I@cgliqCLA6j*$7`uS_Z znWS3L<#oDq0T7UWg0h@3{R|(gM zfKHJ1h?^H=En0|fNd`94;?YpiG99J6pKj~{&qoln#lrqTnAYxXE$`?!G}i-4%tHuv zZK&`?AtXp7Yk(bI=d&;YCb{c6)gC$gT(mIn5jgJEB?nKB823pu%Z@@41C2un!`~HVewvuOJ|_T7&nWlqO;Ta z&7u!^I}3D1=Lq;eGGWHmyBRMW<0&N*dk&!-3Mb3llz6=2O z+vUsmi7s5!wrv^D!(>yIj56yI*@}%;`v1O^m>n#_q0Xp#u-$>0yP1P=;J$x777zWB zm)C(o9mVWj&fptIHtGB)GH|5YET*dd{kSr|k^}zzy+Q`$@AvdEp-BcN8JJ{Xl7UGE KCK>oYW#AuVF%ZH4 diff --git a/frontend/static/img/icon-dark.ico b/frontend/static/img/icon-dark.ico deleted file mode 100644 index 2a3982232accf21851d0cbcb1a7d3c1fa9060f53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10366 zcmeHM&59jW5bitZR&Mur1s!On2?19ZCX(%di)@2EGHwFxR(u8*S^ETTeSydr1wp+F zbrFdOii#*`X5tOvKtF@uS3l>c`~FNOD{)Hgb52!#RdwprsqX6(#RUJ{y*tJ8x#FEy zi{hoCC@>Uv@gJDN=X51Oe(>6j;=Om@E>1ppzj$)*cJbv$_lqw+`?~n*n{SH;4<8f{ zzyGfI;in&qpMU+O`0bD1i$5PfDwcmgF>{l09aTFUh@dG=a8j)_GNouE34FTW3^d*C zMyv?ceOc}+HQN!nMll(<&c$0-K*MKhgCSH~aft%JL;ciVq8X+;nF6*RBsOVQo=4Q0 zY)RB~D4$w_J+!3E=F!IhG;y~plCs~;=fv$NNa za*B1|4>T;SYDer3gxQh`!1wKlOU63*BwRj;xV!afzibidj;;H6v9bXJ1X7qv|6880%rYkIVz?NaO*-laeNCL0>EvVO@XMnLgg$1e)^Lpu=UcyN#1k&s-;{D^` z6PXbIxuCd2IFMUGit6YrCIUm+Ig$Z1oACa|z(oC5t8|sU- z1$9af428`HWduT7z?r_-CGn9xqPSg|O+2Ln#7b`^EN53S7N}i&d;UZr_T5B6IN_^&DI(rE230Y&KCGjNvpzF_zcu59(%(b zoYHI|U9=agOax<4n#HLyc&?oJCktM~eZSzQUtY?)0r*$ARN^hk2DSGRlsei@Xq#PC}=*Te`!;hYzodiH0^iNf$8KVJtwJH<8S}fiP7z`G4 zVgL-gSSp^eIk9^6r?7#s=C%xrt*nLOcy&=-=c-iOcbaAie0eXWka(&;x{n)wSFT z*-mT5;;_(d^H*J`x5q33-XBd=vEjf7M;l=JojGMWh3bVMTnnkYdCCz@JSti~OVs?oC477Vo6+odo_1j<;T@RR=+EW?&A`MPcBj2^&Up zcN1P#;4mUQTURRaq9%d2M4kg16Nafm=fW`p=N*>PWBK`qCNG4m*~mR*EIW`9A4=1? z2OAJfQ;uhlIM5NFP0K4Y!1c!+)FbK3xB`BVer}`d``4o?X83W(0Gh}&$A^6%Ubj(* z2r_5*!hp#%(~?jCz#eFtmE6C#KmAIj3as%!7VGe4CJyuuGDd?b9PPX)xU0dc{*p?8}rkiCC+ zq$DVl7yzam$U0+B0og~U1+a1>Hw90J!~x^S2#)-+!PBgTPec*<1I9me z8gC1b6)yXJYJ5548yYYzd*a&*InI;_)9!}JSth#3LO%Rd5qOPch(j-KhP<#ogjYQ% z%=-M$gVLtS%y-S5NG4T#z00As17S402v2u{nW2d^mLz~ox_wbe1!V!?21sgR`q1;& z{i~fZIRgAIO@4_+@Rk@VUWMedkBfE-CKvMrPy`jb>ouL{3foo^04y9I3);U=w!wm& zmno&y^%&I06Wu{DF;>{dxfigQwA-{-$Snmla~XJ99(n|qgCisfL4FUfi0_K^AI^Yu zlgr0HEiR8G(*OQ^Su6JU^Jjn;&yWH6`#t}Le??arxXQp)2Cg!2m4T}a{GT%LFFhK* A*8l(j diff --git a/frontend/static/img/icon-info.ico b/frontend/static/img/icon-info.ico deleted file mode 100644 index 8d15559341cc8b2e7b2243a8d69e8c2c023660f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10366 zcmeHMUuzsy6rX?}Aa`t&P1YS)Q7DuK>IW$JTqyKe@L7Bi@*w(9mgKDu8p#K6A@~+# zaeOMY4*2h(D8bQM#hB5=G_9_4KZCz>?*Ey|Zg%IT;NH@?XU;vpbI<+VbI+Y5QM81A zTU*O`z7V~2C5l#}C_)!);XjnDC$X_%{A_e9`g8y7=<)uY=!gA}qHp&nyhJ;2d6XZ9d(6Qmm&%gFALrYBSTo)nfQGq$D5su z51m>I5nxw^`pQ=BK{vm9gG9L`#}GR7;0)3Sj9)`zAqKVEVm%x0k*Q85%x~`&Xh%H8 zuK0n;%+2GJEUl=85gto0&6i0Byfqy6$RN$we7b?4IuyFz^xuBl95 zpehU2M-3nUV#l1|C5BC20y~-qK26ZDymVO;y z*8sY1k9{TDtVaI^<~NhMzR(x>$6@#l^w&L-m#+GrxmJGZe3FF8f(12c7%`CJyLVMt za2{eJD|PRX8X{8TLzvdC@;X_K^s|S~{rkJhm3`LfkA06^82i?`K`3e=0dMLd;Hx*^ zeZ2u@RJ7QqLHX@Fk9~2ImOSa};}Q*zh3^3hwIQ)8q-1eUeWTjIEj96o_%al^dPO9r zQ5|V&SS&X;P9C?(G|u!Gcex*;^E9wFyIM&eSv0P-MXJYxE-oxy{;EcHH2qh2#EqAY z0gzG2mSB+^Uho-ixGVRBctefnYCL#y@z5M9(s3S2l4wNAN6LE0FAV|E8iiQlVTISX zK|dp1ZYJBIb=Wtfb+vm3!zrsbAd!I1-*v*9tYka&7?|R*R_KzEFrE*=k!MJUs$SG$ zDD|?%NLde+N6c5`9$t(*Q>TYAu+oP=rtrgXDFD4g4o*KDr0$g@Xb=%?i3v=PXHbQv zA||syr^`{jDk!Scz}V66)QUd3wW`6=NzI)hNyKt!ri)Kw353sQA)c=8!%&rRIifS1 zh65aINNJM_Kuup2&YV`1#9xrrIw263y{;^zTU54G9g^G{K%iaTYv6@#4y5`4-2=cp z*g#B7?{A{0dR9h!sYVLu@~bP+503ip)UrppxRe@Kx~KW1bl)3=lyuF)Z6*6EIQzHUZ?#44uZlk5oZUx22V_AS9b71 z!ltsKgV228U&ssp*fGxzSnsqIGp2yWl7Qc3`!#G;{uT^Rf60Ky2SA@K=`*R^o(}RX z_`=s;+pkhEwJ&eaxJl#ya6i5G{uhL9xR9DqPNzPg6qKITyU$skBT)|7R?e{*Ba4QR zo-@lNwdY_SxDa7~sF(laEDP UFtA`?!N7un1p^BP{!a}22L>?wp8x;= diff --git a/frontend/static/img/icon-light.ico b/frontend/static/img/icon-light.ico deleted file mode 100644 index 812ccc6184a196d8e17bb266acaad59a6dbbb799..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10366 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 diff --git a/frontend/static/img/icon-secondary.ico b/frontend/static/img/icon-secondary.ico deleted file mode 100644 index 313f7b40e5d01faa535544222d71d891eca5c5cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10366 zcmeI2&u=706~_m`AAnQ@Zn+_GwW`f(725*!EX&GkU&cW~Nqh+hE<{3(I1!TzM{@Dz z7)v0I2t{&`5{X!Z*&IUbfnbLv#4{w?b(Yn-`)}a${l4nN;)475u z|JT17?Ehwe@bb$y2fx4h#^8;EKMW>s{c-T;zZ?y2{q3)VlfO>~@7;cXaQcrAtS&zQ z3kxh4a;hG{=8C_%N2NNIxt?%mhzZGL9?KSNmSC?8#(u6DBIgpQ3P{~Vt;D3`<3lgt?ev8T)!ZB7s#)+Imr`yc2iX^`fcUm2eXV zQBURqXC-MQgSDADmiYVDNh zs#k2;HkG2pGT{OUO$#^;#YvRP3O>(F^(ySzl~nxKBc?_dtVLp|CnFmv0f0jJ2UkG%M!Ucy+^_+S6Ef7LoYui#x=U#SfMU{)aR~*D) zW6gPWdU9|uYey1J3IcKwQwBg#xdM%eoO{L4B+VXe&pw~?mFY<#l&mG#>a%S94yuotKVHWLf9!5rVU7cXrP@L#s82+o>&jmrs?38vA@O;ZL=)2h;9W ze!Oi*#aHtep(GvlCtX$F$oX)?_C05iFZuc%GBImqF*)xZ`Z3psZm~UcdE8(wr$SvVd-`-i*aQvFP84eC`Y@_!%A6BGRrrK)4Ig` z>cP9}yQ_D*kaG3v_r$jPj>y1e+QQk$Q{e-WRTBXd!^|XxIyai8Jc;AJ+MFCrXYB?! zOq7AAJxEN{Rk;SX7=b#k-h)OO_II?r+PsNa^=j-i7$~8rY=QJ(aQRM$Fa1ynfUqw? z==*o*H%T)$QauftC;``I_Kt+LJ3(B%3+ZaJ6@6;8bh+Td=zJYZ)Bbyb+q|!p*p!lG zw}r&@v%e>NZ+9UNUyFs?ajuryBdyn{h-$1eqm)#Kd&~?gB3mNF@+0lpkcbjgt9Yut zKf1EpzRlWY&&^opY3aE+FRIHxOAN04b+(mt57pzdww>O^^+h62xH8Vy9E?J(ax*HP z*k+xdXj=-O>^VWIgm3-!)`ob#eNW+6oP(ukFqU{`3uN&f<_c@CfiNby2qILrS5~Xc zM&d#w9K_l<_2QyameGD#1Qh=kh+2rvqr7sAB}EMQSW0iy&lOJ2j01ySNIr-|ZhCWALr7AzAt%NH3@miJg+L7!4F_1p@TvmJ%*5OCg zP`xla*aCS~XQ060llD#AaMs8xxLBFx^-<>!G4M%XCmo7X*3^wlA(DQ&dj|LHebRL+xvsYZ%PaV)e(KDFL?1z$Il(Qp=3=b5HgdTms{I z4hD~Py2cG*4b}9A_Dar3(SF1b)3vrRy;M>VP$l?rWJccq4Qu0K5_ULyet@=9< zw&?C~kBspE;}Fb|7SZoCiSIL*YEB&u1_eo4Tiu-rh3tSz=Mr37y?$uL6dUu?S4QS# z2(7t(Sj`8HWGlk27ff`5YD40+PJ}Is!(EQ2{389Q5s@hJ=z65z+|_XS(8h2mikd#7 zPOv~3OQ^v8Q!qj%kJUaw#_7vLWe2biaP)?dj2){ckncals#i;vjzuPu+Y%PMKP;lk zlJ_*&<*eXF??V12%cBsVh!mhc0#6dbgO=38N=H|Ww($tzk2I%_=HPu9?7lHgaBX%h zoEStPtby=Bg)TVr&Ktshh1wt>wq2ZF9r<dpO~;~nv$Fy-yXtewp-6JPMC*q1j%02QZ=Ots=JcMSZ1JgVS$Zl2(Ev{U=+_0xdW$ESZCM1^E}nlEMq=0N2>PK%t4= z+k%mURDCdvX8_jO>~I~?1VZT_yM@sdQ)m{W6d|w5u(L+_rfHMtb_Y#L z|FQELZ+_Mg73c#QZfirB@v{;3Bc=u2-3B#&IaH|*qO88qw#nZ1E-R<4I!|(pDQn+Z zKHN5Vk*v1YU1M$w(@{@CFQ`oEuIKvJX{I=~*_CBY)9|ehw>JK1JtbJ`KicQpQkF!Z zceB7P?DvLI7#5HdB#$vnE6@G;yoU>F{>V3997Xo4(bXZ5Tcvw8phI5|$#*6$h zhLU_z(8cFSS^|?CuSopx3k7;T+4P%F(kbZP*A=!6N=M0uq>57A8Q*Obz%es49gDQ$ zbJ6*UBPDFn-1wXVtpxSr1o<%<;}PeA@)yL&M8~dMgl3&AE6(``ZL`6@{!x8<2`u)N zj$n^^3)cx^&K0yOro`r6(i5MIjd@LYo7!ujiVsDi=A1PRqB z>=PV#sS}iVN4I(pNvLo}mP(g1#vN2I;r#h+t7`zr$X2PPa7bejc9F17y4mJmEU&b8 z{R(<+z04e=^*l(bx23=@T@Z#7Ds$v;NUDulu$R$_ZwXSXc=J3R4(ob2B%73mxXRz&Eb|sB@p4dlF;-q#v$-Z)Q6y#vjCe! zMbQ$je<=8V`B+hKIO_AGcngGVa=p%b4!&P*P7kLi&(E_U>?0-*{`LHHxBpP+WJ;3XfHT+!dLHt>omsu4t--7Rc#vq~4TBu~H-qeb2J4?xbe}Sm s&tlys^dEUX1AIz1|95O3_5T!H;4U(7k%5a0Tx8%P0~Z~#-t0Ge7)v#a>v8%gY|tdLYJ$@$ePMfDO^;E^(k|kKjqNnDEDP zEiA{uzAM&xI6>+9!t;S7#_=NMzNjA09N)4LX>=-<`hc(;v*9sB?3f%+J9S+miuvJi zhA0tgjqlG2+tH~UIcREpD#@WR*e+ky3e9M$Ay`+ z0%jjYN0?cMgTqc2dyuwu`1JTCDV4w$OtQ{Nmh{`)f_+($lS;`>}mcY*G%~g zZ`Dg&@LG@;S&DJqYSwRDAC9PGbdI6#l*beXMfx=IVcNOwgh=&TaDxo5g{xm#+J6Sg ztEJ`7QXlj~Ad{_5e8Dsn$m;UbW3Uz!DizOPk$#P@C2$f?O>us)*mF(Wdw3Mz4S#9^ zw?g`Yn$_h$hR7ROF?_~rp^ZXtHNKVzpdX&U|4#LZ&S00B!;y$o-@~-}!mpD(tUS8= z`9-l5?wcB4OB_E&V@TuWpI^D@r+G@eTe&abpJfG|t&$|!N*H;894eIRn(>1tU@>{g7O*D#ZPE;3CdAxjb?`jG3!0PYz=x9=I&FpTq~PAQZLQ z>UCtxL!|xE(?Sg#Dpc`mt!kGLkiPRc&!95tU5aH@YxoHisr?Pk&ngEHdQ`nCdx*f{ z88o7xfZwRu(4+3>LsW*Nd1fjnA(LRjV3$ECeiToI2Sz=r2ubb{;z=dD1_^+*Le^53 zZCKHZ9Ry;98N8tQx_7Qr&ps2H;LX++9xTFrq8BGfc!Z2VR0n^aC;}P)s?g0cL4R==-JeAcTD$g5njC}(Z z$lzIWV8G_a+n}%?nKC`P=?DIXy2Hc$-35Wmn_vpc67V-W(&lh?LcB#v~QwG zSZ?LZRKQ*EJrsKwzxw#gH3^+{?WVtSl!oxxM{i5~a1Hwy{>DDw5|V&M(DIWoi6)8Q z61Er6(BHhNOnLWS0u_~Pp+QM@IMBIEzDtskD|eZlCg>N9Ui|mb!O1QQRyM(bwRL5% pRUjVT-D?^RZz<;{}e*-W9hd=-T diff --git a/frontend/static/img/icon-warning.ico b/frontend/static/img/icon-warning.ico deleted file mode 100644 index a2e4a3560dcdb0ed269382f37ca9ccb9b37a52b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10366 zcmeHN&5j#I5FRABGjY7uuDx^Sx`*75p8z3QC>IVZapMBgynwZ@un&MG9|@9?IY1PF zg{4G@MGTnmCqxETQ37Ol`x*GEs=KGBd+eE=y}@*p>FTQbs%yUPu4zY!qL=XJP{rSh1CmsLNJ314@)q zOEYNGt5apDs&#-vPX3$L__+PlGA9VQQA^Hm1dk65et@me zVl(wL0VBZCj;@`J;QKuHUW*KlH#Fr;!t@l6NYk`20RuG`|K!^1*{9u`yfD+LwUO$3 zaitk^i<0&Hs~#N3`xoprTgJ{V98kDXBOdkEK{s$tAmM2*AZkr3@LFR3MT$?;^{=ki)H+tQWHo!+P-9+rDgm%AQW)Fwk*h6<5`-Y@Dh5pV{$T0c`B?zfOi&T zM~o3j9w-C}@gSfWNBsfnm$%#$k9Rk`U16{BGx3X`F(-Aizk{uQV{HmDch4tidzW z6HINUgh=ce$d^83T~ZuM;Yz4{Y}k^`L5qkO+cM2IQg}yvsxBt|1s^)el?W)Z?iZp& zpfA6P#r+HlMK9f#%>cY#7F_=^*3}(@tksK@GzS-~2cA+eZI&8IdQ9e6U0YAKo`-j1 zk@t4Ie(Q00eh=RRe&f#S$g=1vE#>dw1Nt0%LU)Q0*mW_k4D&AhfW8LRWx>vZ)iNj4 z>Z|}GFRnYMR}gm4hcGLpPSFiyB{^=Ea%UbP{wHH{dS{0@A{_d_&mBjI{&pg3acXQm z5>QAV)u~jB#WQ(oWS0u)LVT!!8-GkWgqJM{`p1Npz7ij2`fhyeEmlb1LJnU!Xgrin zdg$LOLVT#suutS-UgDj)=Ba>#OXf3Mo3^xl|S&P?&Oty&=t;qHsPG`?AnbIorrE z6C*vh1)!IuR{Zdyh!e&y$Y7cdDS?aU*x0X9t+e!+(Ar~JfE+0|c%>eR8WFEZqI2yw zZ`sIT=RX}k6u62uTWC7H8w!H^T^!pv|uzSh`0B?_zg;WFJmo}yr;Owp_X`w2! ztQREYMVvjdD&Aib*KeUG)*Wr3vIZYDj}tmIr<|AfO(Wncz*D-Vn0jJ#RRwDl>|lg6 z)rwQo_;CgOY@hS9c#ywRkF6q;+MRF1TSp@>zE}hdY2A+-<0S!e)_RzD1N^En9zTwq z6sVF>X4k+MWfr(ZKeuMD@$TSXlc;}*WW~1E85rOc! zv+rRXYWpb{NBeITn7_0wYw>cuvoKwS>S1LMi?=UQw%3jD7Mix)N_805KC{aOwxjC{^a3|YfR9yC!}`UQuwgD(3%eTl^@40B z4Uys|_ZPX=QCSIZ-ZkMCgi-43&YdqrI;{bCW;#r6D{h#c`-MC}m|IR?w|0(En9RnQ$9RnQ$9RnQ$|7`~T E1vvrgF8}}l diff --git a/frontend/static/img/srs.png b/frontend/static/img/srs.png deleted file mode 100644 index c25b6af4baabe95f6a119456dda46d7a4c0ee4fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 160574 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 - - - - Challenge Forensic - - - - - - - - - - - - - - - -
- -
- - -
-
-
-
- - - -
-

{{ title }} {{ authors }}

-

{{ settings.title }} {{ settings.authors }}

-
- -
- -
- - - - - - - - - - - diff --git a/frontend/static/js/angular-route.min.js b/frontend/static/js/angular-route.min.js deleted file mode 120000 index ae04a29f..00000000 --- a/frontend/static/js/angular-route.min.js +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/angular-route.min.js \ No newline at end of file diff --git a/frontend/static/js/angular-sanitize.min.js b/frontend/static/js/angular-sanitize.min.js deleted file mode 120000 index d0410452..00000000 --- a/frontend/static/js/angular-sanitize.min.js +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/angular-sanitize.min.js \ No newline at end of file diff --git a/frontend/static/js/angular.min.js b/frontend/static/js/angular.min.js deleted file mode 120000 index 5eba27d2..00000000 --- a/frontend/static/js/angular.min.js +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/angular.min.js \ No newline at end of file diff --git a/frontend/static/js/blake2b.js b/frontend/static/js/blake2b.js deleted file mode 100644 index f741df36..00000000 --- a/frontend/static/js/blake2b.js +++ /dev/null @@ -1,2594 +0,0 @@ -(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i= 0x100000000) { - o1++ - } - v[a] = o0 - v[a + 1] = o1 -} - -// 64-bit unsigned addition -// Sets v[a,a+1] += b -// b0 is the low 32 bits of b, b1 represents the high 32 bits -function ADD64AC (v, a, b0, b1) { - var o0 = v[a] + b0 - if (b0 < 0) { - o0 += 0x100000000 - } - var o1 = v[a + 1] + b1 - if (o0 >= 0x100000000) { - o1++ - } - v[a] = o0 - v[a + 1] = o1 -} - -// Little-endian byte access -function B2B_GET32 (arr, i) { - return (arr[i] ^ - (arr[i + 1] << 8) ^ - (arr[i + 2] << 16) ^ - (arr[i + 3] << 24)) -} - -// G Mixing function -// The ROTRs are inlined for speed -function B2B_G (a, b, c, d, ix, iy) { - var x0 = m[ix] - var x1 = m[ix + 1] - var y0 = m[iy] - var y1 = m[iy + 1] - - ADD64AA(v, a, b) // v[a,a+1] += v[b,b+1] ... in JS we must store a uint64 as two uint32s - ADD64AC(v, a, x0, x1) // v[a, a+1] += x ... x0 is the low 32 bits of x, x1 is the high 32 bits - - // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated to the right by 32 bits - var xor0 = v[d] ^ v[a] - var xor1 = v[d + 1] ^ v[a + 1] - v[d] = xor1 - v[d + 1] = xor0 - - ADD64AA(v, c, d) - - // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 24 bits - xor0 = v[b] ^ v[c] - xor1 = v[b + 1] ^ v[c + 1] - v[b] = (xor0 >>> 24) ^ (xor1 << 8) - v[b + 1] = (xor1 >>> 24) ^ (xor0 << 8) - - ADD64AA(v, a, b) - ADD64AC(v, a, y0, y1) - - // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated right by 16 bits - xor0 = v[d] ^ v[a] - xor1 = v[d + 1] ^ v[a + 1] - v[d] = (xor0 >>> 16) ^ (xor1 << 16) - v[d + 1] = (xor1 >>> 16) ^ (xor0 << 16) - - ADD64AA(v, c, d) - - // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 63 bits - xor0 = v[b] ^ v[c] - xor1 = v[b + 1] ^ v[c + 1] - v[b] = (xor1 >>> 31) ^ (xor0 << 1) - v[b + 1] = (xor0 >>> 31) ^ (xor1 << 1) -} - -// Initialization Vector -var BLAKE2B_IV32 = new Uint32Array([ - 0xF3BCC908, 0x6A09E667, 0x84CAA73B, 0xBB67AE85, - 0xFE94F82B, 0x3C6EF372, 0x5F1D36F1, 0xA54FF53A, - 0xADE682D1, 0x510E527F, 0x2B3E6C1F, 0x9B05688C, - 0xFB41BD6B, 0x1F83D9AB, 0x137E2179, 0x5BE0CD19 -]) - -var SIGMA8 = [ - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 14, 10, 4, 8, 9, 15, 13, 6, 1, 12, 0, 2, 11, 7, 5, 3, - 11, 8, 12, 0, 5, 2, 15, 13, 10, 14, 3, 6, 7, 1, 9, 4, - 7, 9, 3, 1, 13, 12, 11, 14, 2, 6, 5, 10, 4, 0, 15, 8, - 9, 0, 5, 7, 2, 4, 10, 15, 14, 1, 11, 12, 6, 8, 3, 13, - 2, 12, 6, 10, 0, 11, 8, 3, 4, 13, 7, 5, 15, 14, 1, 9, - 12, 5, 1, 15, 14, 13, 4, 10, 0, 7, 6, 3, 9, 2, 8, 11, - 13, 11, 7, 14, 12, 1, 3, 9, 5, 0, 15, 4, 8, 6, 2, 10, - 6, 15, 14, 9, 11, 3, 0, 8, 12, 2, 13, 7, 1, 4, 10, 5, - 10, 2, 8, 4, 7, 6, 1, 5, 15, 11, 9, 14, 3, 12, 13, 0, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 14, 10, 4, 8, 9, 15, 13, 6, 1, 12, 0, 2, 11, 7, 5, 3 -] - -// These are offsets into a uint64 buffer. -// Multiply them all by 2 to make them offsets into a uint32 buffer, -// because this is Javascript and we don't have uint64s -var SIGMA82 = new Uint8Array(SIGMA8.map(function (x) { return x * 2 })) - -// Compression function. 'last' flag indicates last block. -// Note we're representing 16 uint64s as 32 uint32s -var v = new Uint32Array(32) -var m = new Uint32Array(32) -function blake2bCompress (ctx, last) { - var i = 0 - - // init work variables - for (i = 0; i < 16; i++) { - v[i] = ctx.h[i] - v[i + 16] = BLAKE2B_IV32[i] - } - - // low 64 bits of offset - v[24] = v[24] ^ ctx.t - v[25] = v[25] ^ (ctx.t / 0x100000000) - // high 64 bits not supported, offset may not be higher than 2**53-1 - - // last block flag set ? - if (last) { - v[28] = ~v[28] - v[29] = ~v[29] - } - - // get little-endian words - for (i = 0; i < 32; i++) { - m[i] = B2B_GET32(ctx.b, 4 * i) - } - - // twelve rounds of mixing - // uncomment the DebugPrint calls to log the computation - // and match the RFC sample documentation - // util.debugPrint(' m[16]', m, 64) - for (i = 0; i < 12; i++) { - // util.debugPrint(' (i=' + (i < 10 ? ' ' : '') + i + ') v[16]', v, 64) - B2B_G(0, 8, 16, 24, SIGMA82[i * 16 + 0], SIGMA82[i * 16 + 1]) - B2B_G(2, 10, 18, 26, SIGMA82[i * 16 + 2], SIGMA82[i * 16 + 3]) - B2B_G(4, 12, 20, 28, SIGMA82[i * 16 + 4], SIGMA82[i * 16 + 5]) - B2B_G(6, 14, 22, 30, SIGMA82[i * 16 + 6], SIGMA82[i * 16 + 7]) - B2B_G(0, 10, 20, 30, SIGMA82[i * 16 + 8], SIGMA82[i * 16 + 9]) - B2B_G(2, 12, 22, 24, SIGMA82[i * 16 + 10], SIGMA82[i * 16 + 11]) - B2B_G(4, 14, 16, 26, SIGMA82[i * 16 + 12], SIGMA82[i * 16 + 13]) - B2B_G(6, 8, 18, 28, SIGMA82[i * 16 + 14], SIGMA82[i * 16 + 15]) - } - // util.debugPrint(' (i=12) v[16]', v, 64) - - for (i = 0; i < 16; i++) { - ctx.h[i] = ctx.h[i] ^ v[i] ^ v[i + 16] - } - // util.debugPrint('h[8]', ctx.h, 64) -} - -// Creates a BLAKE2b hashing context -// Requires an output length between 1 and 64 bytes -// Takes an optional Uint8Array key -function blake2bInit (outlen, key) { - if (outlen === 0 || outlen > 64) { - throw new Error('Illegal output length, expected 0 < length <= 64') - } - if (key && key.length > 64) { - throw new Error('Illegal key, expected Uint8Array with 0 < length <= 64') - } - - // state, 'param block' - var ctx = { - b: new Uint8Array(128), - h: new Uint32Array(16), - t: 0, // input count - c: 0, // pointer within buffer - outlen: outlen // output length in bytes - } - - // initialize hash state - for (var i = 0; i < 16; i++) { - ctx.h[i] = BLAKE2B_IV32[i] - } - var keylen = key ? key.length : 0 - ctx.h[0] ^= 0x01010000 ^ (keylen << 8) ^ outlen - - // key the hash, if applicable - if (key) { - blake2bUpdate(ctx, key) - // at the end - ctx.c = 128 - } - - return ctx -} - -// Updates a BLAKE2b streaming hash -// Requires hash context and Uint8Array (byte array) -function blake2bUpdate (ctx, input) { - for (var i = 0; i < input.length; i++) { - if (ctx.c === 128) { // buffer full ? - ctx.t += ctx.c // add counters - blake2bCompress(ctx, false) // compress (not last) - ctx.c = 0 // counter to zero - } - ctx.b[ctx.c++] = input[i] - } -} - -// Completes a BLAKE2b streaming hash -// Returns a Uint8Array containing the message digest -function blake2bFinal (ctx) { - ctx.t += ctx.c // mark last block offset - - while (ctx.c < 128) { // fill up with zeros - ctx.b[ctx.c++] = 0 - } - blake2bCompress(ctx, true) // final block flag = 1 - - // little endian convert and store - var out = new Uint8Array(ctx.outlen) - for (var i = 0; i < ctx.outlen; i++) { - out[i] = ctx.h[i >> 2] >> (8 * (i & 3)) - } - return out -} - -// Computes the BLAKE2B hash of a string or byte array, and returns a Uint8Array -// -// Returns a n-byte Uint8Array -// -// Parameters: -// - input - the input bytes, as a string, Buffer or Uint8Array -// - key - optional key Uint8Array, up to 64 bytes -// - outlen - optional output length in bytes, default 64 -function blake2b (input, key, outlen) { - // preprocess inputs - outlen = outlen || 64 - input = util.normalizeInput(input) - - // do the math - var ctx = blake2bInit(outlen, key) - blake2bUpdate(ctx, input) - return blake2bFinal(ctx) -} - -// Computes the BLAKE2B hash of a string or byte array -// -// Returns an n-byte hash in hex, all lowercase -// -// Parameters: -// - input - the input bytes, as a string, Buffer, or Uint8Array -// - key - optional key Uint8Array, up to 64 bytes -// - outlen - optional output length in bytes, default 64 -function blake2bHex (input, key, outlen) { - var output = blake2b(input, key, outlen) - return util.toHex(output) -} - -module.exports = { - blake2b: blake2b, - blake2bHex: blake2bHex, - blake2bInit: blake2bInit, - blake2bUpdate: blake2bUpdate, - blake2bFinal: blake2bFinal -} - -},{"./util":5}],2:[function(require,module,exports){ -// BLAKE2s hash function in pure Javascript -// Adapted from the reference implementation in RFC7693 -// Ported to Javascript by DC - https://github.com/dcposch - -var util = require('./util') - -// Little-endian byte access. -// Expects a Uint8Array and an index -// Returns the little-endian uint32 at v[i..i+3] -function B2S_GET32 (v, i) { - return v[i] ^ (v[i + 1] << 8) ^ (v[i + 2] << 16) ^ (v[i + 3] << 24) -} - -// Mixing function G. -function B2S_G (a, b, c, d, x, y) { - v[a] = v[a] + v[b] + x - v[d] = ROTR32(v[d] ^ v[a], 16) - v[c] = v[c] + v[d] - v[b] = ROTR32(v[b] ^ v[c], 12) - v[a] = v[a] + v[b] + y - v[d] = ROTR32(v[d] ^ v[a], 8) - v[c] = v[c] + v[d] - v[b] = ROTR32(v[b] ^ v[c], 7) -} - -// 32-bit right rotation -// x should be a uint32 -// y must be between 1 and 31, inclusive -function ROTR32 (x, y) { - return (x >>> y) ^ (x << (32 - y)) -} - -// Initialization Vector. -var BLAKE2S_IV = new Uint32Array([ - 0x6A09E667, 0xBB67AE85, 0x3C6EF372, 0xA54FF53A, - 0x510E527F, 0x9B05688C, 0x1F83D9AB, 0x5BE0CD19]) - -var SIGMA = new Uint8Array([ - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 14, 10, 4, 8, 9, 15, 13, 6, 1, 12, 0, 2, 11, 7, 5, 3, - 11, 8, 12, 0, 5, 2, 15, 13, 10, 14, 3, 6, 7, 1, 9, 4, - 7, 9, 3, 1, 13, 12, 11, 14, 2, 6, 5, 10, 4, 0, 15, 8, - 9, 0, 5, 7, 2, 4, 10, 15, 14, 1, 11, 12, 6, 8, 3, 13, - 2, 12, 6, 10, 0, 11, 8, 3, 4, 13, 7, 5, 15, 14, 1, 9, - 12, 5, 1, 15, 14, 13, 4, 10, 0, 7, 6, 3, 9, 2, 8, 11, - 13, 11, 7, 14, 12, 1, 3, 9, 5, 0, 15, 4, 8, 6, 2, 10, - 6, 15, 14, 9, 11, 3, 0, 8, 12, 2, 13, 7, 1, 4, 10, 5, - 10, 2, 8, 4, 7, 6, 1, 5, 15, 11, 9, 14, 3, 12, 13, 0]) - -// Compression function. "last" flag indicates last block -var v = new Uint32Array(16) -var m = new Uint32Array(16) -function blake2sCompress (ctx, last) { - var i = 0 - for (i = 0; i < 8; i++) { // init work variables - v[i] = ctx.h[i] - v[i + 8] = BLAKE2S_IV[i] - } - - v[12] ^= ctx.t // low 32 bits of offset - v[13] ^= (ctx.t / 0x100000000) // high 32 bits - if (last) { // last block flag set ? - v[14] = ~v[14] - } - - for (i = 0; i < 16; i++) { // get little-endian words - m[i] = B2S_GET32(ctx.b, 4 * i) - } - - // ten rounds of mixing - // uncomment the DebugPrint calls to log the computation - // and match the RFC sample documentation - // util.debugPrint(' m[16]', m, 32) - for (i = 0; i < 10; i++) { - // util.debugPrint(' (i=' + i + ') v[16]', v, 32) - B2S_G(0, 4, 8, 12, m[SIGMA[i * 16 + 0]], m[SIGMA[i * 16 + 1]]) - B2S_G(1, 5, 9, 13, m[SIGMA[i * 16 + 2]], m[SIGMA[i * 16 + 3]]) - B2S_G(2, 6, 10, 14, m[SIGMA[i * 16 + 4]], m[SIGMA[i * 16 + 5]]) - B2S_G(3, 7, 11, 15, m[SIGMA[i * 16 + 6]], m[SIGMA[i * 16 + 7]]) - B2S_G(0, 5, 10, 15, m[SIGMA[i * 16 + 8]], m[SIGMA[i * 16 + 9]]) - B2S_G(1, 6, 11, 12, m[SIGMA[i * 16 + 10]], m[SIGMA[i * 16 + 11]]) - B2S_G(2, 7, 8, 13, m[SIGMA[i * 16 + 12]], m[SIGMA[i * 16 + 13]]) - B2S_G(3, 4, 9, 14, m[SIGMA[i * 16 + 14]], m[SIGMA[i * 16 + 15]]) - } - // util.debugPrint(' (i=10) v[16]', v, 32) - - for (i = 0; i < 8; i++) { - ctx.h[i] ^= v[i] ^ v[i + 8] - } - // util.debugPrint('h[8]', ctx.h, 32) -} - -// Creates a BLAKE2s hashing context -// Requires an output length between 1 and 32 bytes -// Takes an optional Uint8Array key -function blake2sInit (outlen, key) { - if (!(outlen > 0 && outlen <= 32)) { - throw new Error('Incorrect output length, should be in [1, 32]') - } - var keylen = key ? key.length : 0 - if (key && !(keylen > 0 && keylen <= 32)) { - throw new Error('Incorrect key length, should be in [1, 32]') - } - - var ctx = { - h: new Uint32Array(BLAKE2S_IV), // hash state - b: new Uint32Array(64), // input block - c: 0, // pointer within block - t: 0, // input count - outlen: outlen // output length in bytes - } - ctx.h[0] ^= 0x01010000 ^ (keylen << 8) ^ outlen - - if (keylen > 0) { - blake2sUpdate(ctx, key) - ctx.c = 64 // at the end - } - - return ctx -} - -// Updates a BLAKE2s streaming hash -// Requires hash context and Uint8Array (byte array) -function blake2sUpdate (ctx, input) { - for (var i = 0; i < input.length; i++) { - if (ctx.c === 64) { // buffer full ? - ctx.t += ctx.c // add counters - blake2sCompress(ctx, false) // compress (not last) - ctx.c = 0 // counter to zero - } - ctx.b[ctx.c++] = input[i] - } -} - -// Completes a BLAKE2s streaming hash -// Returns a Uint8Array containing the message digest -function blake2sFinal (ctx) { - ctx.t += ctx.c // mark last block offset - while (ctx.c < 64) { // fill up with zeros - ctx.b[ctx.c++] = 0 - } - blake2sCompress(ctx, true) // final block flag = 1 - - // little endian convert and store - var out = new Uint8Array(ctx.outlen) - for (var i = 0; i < ctx.outlen; i++) { - out[i] = (ctx.h[i >> 2] >> (8 * (i & 3))) & 0xFF - } - return out -} - -// Computes the BLAKE2S hash of a string or byte array, and returns a Uint8Array -// -// Returns a n-byte Uint8Array -// -// Parameters: -// - input - the input bytes, as a string, Buffer, or Uint8Array -// - key - optional key Uint8Array, up to 32 bytes -// - outlen - optional output length in bytes, default 64 -function blake2s (input, key, outlen) { - // preprocess inputs - outlen = outlen || 32 - input = util.normalizeInput(input) - - // do the math - var ctx = blake2sInit(outlen, key) - blake2sUpdate(ctx, input) - return blake2sFinal(ctx) -} - -// Computes the BLAKE2S hash of a string or byte array -// -// Returns an n-byte hash in hex, all lowercase -// -// Parameters: -// - input - the input bytes, as a string, Buffer, or Uint8Array -// - key - optional key Uint8Array, up to 32 bytes -// - outlen - optional output length in bytes, default 64 -function blake2sHex (input, key, outlen) { - var output = blake2s(input, key, outlen) - return util.toHex(output) -} - -module.exports = { - blake2s: blake2s, - blake2sHex: blake2sHex, - blake2sInit: blake2sInit, - blake2sUpdate: blake2sUpdate, - blake2sFinal: blake2sFinal -} - -},{"./util":5}],3:[function(require,module,exports){ -var b2b = require('./blake2b') -var b2s = require('./blake2s') - -module.exports = { - blake2b: b2b.blake2b, - blake2bHex: b2b.blake2bHex, - blake2bInit: b2b.blake2bInit, - blake2bUpdate: b2b.blake2bUpdate, - blake2bFinal: b2b.blake2bFinal, - blake2s: b2s.blake2s, - blake2sHex: b2s.blake2sHex, - blake2sInit: b2s.blake2sInit, - blake2sUpdate: b2s.blake2sUpdate, - blake2sFinal: b2s.blake2sFinal -} - -},{"./blake2b":1,"./blake2s":2}],4:[function(require,module,exports){ -var blake = require('.') -window.b2sum = function(s) { - return blake.blake2bHex(s); -} - -},{".":3}],5:[function(require,module,exports){ -(function (Buffer){ -var ERROR_MSG_INPUT = 'Input must be an string, Buffer or Uint8Array' - -// For convenience, let people hash a string, not just a Uint8Array -function normalizeInput (input) { - var ret - if (input instanceof Uint8Array) { - ret = input - } else if (input instanceof Buffer) { - ret = new Uint8Array(input) - } else if (typeof (input) === 'string') { - ret = new Uint8Array(Buffer.from(input, 'utf8')) - } else { - throw new Error(ERROR_MSG_INPUT) - } - return ret -} - -// Converts a Uint8Array to a hexadecimal string -// For example, toHex([255, 0, 255]) returns "ff00ff" -function toHex (bytes) { - return Array.prototype.map.call(bytes, function (n) { - return (n < 16 ? '0' : '') + n.toString(16) - }).join('') -} - -// Converts any value in [0...2^32-1] to an 8-character hex string -function uint32ToHex (val) { - return (0x100000000 + val).toString(16).substring(1) -} - -// For debugging: prints out hash state in the same format as the RFC -// sample computation exactly, so that you can diff -function debugPrint (label, arr, size) { - var msg = '\n' + label + ' = ' - for (var i = 0; i < arr.length; i += 2) { - if (size === 32) { - msg += uint32ToHex(arr[i]).toUpperCase() - msg += ' ' - msg += uint32ToHex(arr[i + 1]).toUpperCase() - } else if (size === 64) { - msg += uint32ToHex(arr[i + 1]).toUpperCase() - msg += uint32ToHex(arr[i]).toUpperCase() - } else throw new Error('Invalid size ' + size) - if (i % 6 === 4) { - msg += '\n' + new Array(label.length + 4).join(' ') - } else if (i < arr.length - 2) { - msg += ' ' - } - } - console.log(msg) -} - -// For performance testing: generates N bytes of input, hashes M times -// Measures and prints MB/second hash performance each time -function testSpeed (hashFn, N, M) { - var startMs = new Date().getTime() - - var input = new Uint8Array(N) - for (var i = 0; i < N; i++) { - input[i] = i % 256 - } - var genMs = new Date().getTime() - console.log('Generated random input in ' + (genMs - startMs) + 'ms') - startMs = genMs - - for (i = 0; i < M; i++) { - var hashHex = hashFn(input) - var hashMs = new Date().getTime() - var ms = hashMs - startMs - startMs = hashMs - console.log('Hashed in ' + ms + 'ms: ' + hashHex.substring(0, 20) + '...') - console.log(Math.round(N / (1 << 20) / (ms / 1000) * 100) / 100 + ' MB PER SECOND') - } -} - -module.exports = { - normalizeInput: normalizeInput, - toHex: toHex, - debugPrint: debugPrint, - testSpeed: testSpeed -} - -}).call(this,require("buffer").Buffer) -},{"buffer":7}],6:[function(require,module,exports){ -'use strict' - -exports.byteLength = byteLength -exports.toByteArray = toByteArray -exports.fromByteArray = fromByteArray - -var lookup = [] -var revLookup = [] -var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array - -var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' -for (var i = 0, len = code.length; i < len; ++i) { - lookup[i] = code[i] - revLookup[code.charCodeAt(i)] = i -} - -// Support decoding URL-safe base64 strings, as Node.js does. -// See: https://en.wikipedia.org/wiki/Base64#URL_applications -revLookup['-'.charCodeAt(0)] = 62 -revLookup['_'.charCodeAt(0)] = 63 - -function getLens (b64) { - var len = b64.length - - if (len % 4 > 0) { - throw new Error('Invalid string. Length must be a multiple of 4') - } - - // Trim off extra bytes after placeholder bytes are found - // See: https://github.com/beatgammit/base64-js/issues/42 - var validLen = b64.indexOf('=') - if (validLen === -1) validLen = len - - var placeHoldersLen = validLen === len - ? 0 - : 4 - (validLen % 4) - - return [validLen, placeHoldersLen] -} - -// base64 is 4/3 + up to two characters of the original data -function byteLength (b64) { - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function _byteLength (b64, validLen, placeHoldersLen) { - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function toByteArray (b64) { - var tmp - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - - var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)) - - var curByte = 0 - - // if there are placeholders, only get up to the last complete 4 chars - var len = placeHoldersLen > 0 - ? validLen - 4 - : validLen - - for (var i = 0; i < len; i += 4) { - tmp = - (revLookup[b64.charCodeAt(i)] << 18) | - (revLookup[b64.charCodeAt(i + 1)] << 12) | - (revLookup[b64.charCodeAt(i + 2)] << 6) | - revLookup[b64.charCodeAt(i + 3)] - arr[curByte++] = (tmp >> 16) & 0xFF - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 2) { - tmp = - (revLookup[b64.charCodeAt(i)] << 2) | - (revLookup[b64.charCodeAt(i + 1)] >> 4) - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 1) { - tmp = - (revLookup[b64.charCodeAt(i)] << 10) | - (revLookup[b64.charCodeAt(i + 1)] << 4) | - (revLookup[b64.charCodeAt(i + 2)] >> 2) - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - return arr -} - -function tripletToBase64 (num) { - return lookup[num >> 18 & 0x3F] + - lookup[num >> 12 & 0x3F] + - lookup[num >> 6 & 0x3F] + - lookup[num & 0x3F] -} - -function encodeChunk (uint8, start, end) { - var tmp - var output = [] - for (var i = start; i < end; i += 3) { - tmp = - ((uint8[i] << 16) & 0xFF0000) + - ((uint8[i + 1] << 8) & 0xFF00) + - (uint8[i + 2] & 0xFF) - output.push(tripletToBase64(tmp)) - } - return output.join('') -} - -function fromByteArray (uint8) { - var tmp - var len = uint8.length - var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes - var parts = [] - var maxChunkLength = 16383 // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { - parts.push(encodeChunk( - uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength) - )) - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if (extraBytes === 1) { - tmp = uint8[len - 1] - parts.push( - lookup[tmp >> 2] + - lookup[(tmp << 4) & 0x3F] + - '==' - ) - } else if (extraBytes === 2) { - tmp = (uint8[len - 2] << 8) + uint8[len - 1] - parts.push( - lookup[tmp >> 10] + - lookup[(tmp >> 4) & 0x3F] + - lookup[(tmp << 2) & 0x3F] + - '=' - ) - } - - return parts.join('') -} - -},{}],7:[function(require,module,exports){ -/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -/* eslint-disable no-proto */ - -'use strict' - -var base64 = require('base64-js') -var ieee754 = require('ieee754') - -exports.Buffer = Buffer -exports.SlowBuffer = SlowBuffer -exports.INSPECT_MAX_BYTES = 50 - -var K_MAX_LENGTH = 0x7fffffff -exports.kMaxLength = K_MAX_LENGTH - -/** - * If `Buffer.TYPED_ARRAY_SUPPORT`: - * === true Use Uint8Array implementation (fastest) - * === false Print warning and recommend using `buffer` v4.x which has an Object - * implementation (most compatible, even IE6) - * - * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, - * Opera 11.6+, iOS 4.2+. - * - * We report that the browser does not support typed arrays if the are not subclassable - * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array` - * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support - * for __proto__ and has a buggy typed array implementation. - */ -Buffer.TYPED_ARRAY_SUPPORT = typedArraySupport() - -if (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' && - typeof console.error === 'function') { - console.error( - 'This browser lacks typed array (Uint8Array) support which is required by ' + - '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.' - ) -} - -function typedArraySupport () { - // Can typed array instances can be augmented? - try { - var arr = new Uint8Array(1) - arr.__proto__ = { __proto__: Uint8Array.prototype, foo: function () { return 42 } } - return arr.foo() === 42 - } catch (e) { - return false - } -} - -Object.defineProperty(Buffer.prototype, 'parent', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined - return this.buffer - } -}) - -Object.defineProperty(Buffer.prototype, 'offset', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined - return this.byteOffset - } -}) - -function createBuffer (length) { - if (length > K_MAX_LENGTH) { - throw new RangeError('The value "' + length + '" is invalid for option "size"') - } - // Return an augmented `Uint8Array` instance - var buf = new Uint8Array(length) - buf.__proto__ = Buffer.prototype - return buf -} - -/** - * The Buffer constructor returns instances of `Uint8Array` that have their - * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of - * `Uint8Array`, so the returned instances will have all the node `Buffer` methods - * and the `Uint8Array` methods. Square bracket notation works as expected -- it - * returns a single octet. - * - * The `Uint8Array` prototype remains unmodified. - */ - -function Buffer (arg, encodingOrOffset, length) { - // Common case. - if (typeof arg === 'number') { - if (typeof encodingOrOffset === 'string') { - throw new TypeError( - 'The "string" argument must be of type string. Received type number' - ) - } - return allocUnsafe(arg) - } - return from(arg, encodingOrOffset, length) -} - -// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 -if (typeof Symbol !== 'undefined' && Symbol.species != null && - Buffer[Symbol.species] === Buffer) { - Object.defineProperty(Buffer, Symbol.species, { - value: null, - configurable: true, - enumerable: false, - writable: false - }) -} - -Buffer.poolSize = 8192 // not used by this implementation - -function from (value, encodingOrOffset, length) { - if (typeof value === 'string') { - return fromString(value, encodingOrOffset) - } - - if (ArrayBuffer.isView(value)) { - return fromArrayLike(value) - } - - if (value == null) { - throw TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + (typeof value) - ) - } - - if (isInstance(value, ArrayBuffer) || - (value && isInstance(value.buffer, ArrayBuffer))) { - return fromArrayBuffer(value, encodingOrOffset, length) - } - - if (typeof value === 'number') { - throw new TypeError( - 'The "value" argument must not be of type number. Received type number' - ) - } - - var valueOf = value.valueOf && value.valueOf() - if (valueOf != null && valueOf !== value) { - return Buffer.from(valueOf, encodingOrOffset, length) - } - - var b = fromObject(value) - if (b) return b - - if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null && - typeof value[Symbol.toPrimitive] === 'function') { - return Buffer.from( - value[Symbol.toPrimitive]('string'), encodingOrOffset, length - ) - } - - throw new TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + (typeof value) - ) -} - -/** - * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError - * if value is a number. - * Buffer.from(str[, encoding]) - * Buffer.from(array) - * Buffer.from(buffer) - * Buffer.from(arrayBuffer[, byteOffset[, length]]) - **/ -Buffer.from = function (value, encodingOrOffset, length) { - return from(value, encodingOrOffset, length) -} - -// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug: -// https://github.com/feross/buffer/pull/148 -Buffer.prototype.__proto__ = Uint8Array.prototype -Buffer.__proto__ = Uint8Array - -function assertSize (size) { - if (typeof size !== 'number') { - throw new TypeError('"size" argument must be of type number') - } else if (size < 0) { - throw new RangeError('The value "' + size + '" is invalid for option "size"') - } -} - -function alloc (size, fill, encoding) { - assertSize(size) - if (size <= 0) { - return createBuffer(size) - } - if (fill !== undefined) { - // Only pay attention to encoding if it's a string. This - // prevents accidentally sending in a number that would - // be interpretted as a start offset. - return typeof encoding === 'string' - ? createBuffer(size).fill(fill, encoding) - : createBuffer(size).fill(fill) - } - return createBuffer(size) -} - -/** - * Creates a new filled Buffer instance. - * alloc(size[, fill[, encoding]]) - **/ -Buffer.alloc = function (size, fill, encoding) { - return alloc(size, fill, encoding) -} - -function allocUnsafe (size) { - assertSize(size) - return createBuffer(size < 0 ? 0 : checked(size) | 0) -} - -/** - * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. - * */ -Buffer.allocUnsafe = function (size) { - return allocUnsafe(size) -} -/** - * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. - */ -Buffer.allocUnsafeSlow = function (size) { - return allocUnsafe(size) -} - -function fromString (string, encoding) { - if (typeof encoding !== 'string' || encoding === '') { - encoding = 'utf8' - } - - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - - var length = byteLength(string, encoding) | 0 - var buf = createBuffer(length) - - var actual = buf.write(string, encoding) - - if (actual !== length) { - // Writing a hex string, for example, that contains invalid characters will - // cause everything after the first invalid character to be ignored. (e.g. - // 'abxxcd' will be treated as 'ab') - buf = buf.slice(0, actual) - } - - return buf -} - -function fromArrayLike (array) { - var length = array.length < 0 ? 0 : checked(array.length) | 0 - var buf = createBuffer(length) - for (var i = 0; i < length; i += 1) { - buf[i] = array[i] & 255 - } - return buf -} - -function fromArrayBuffer (array, byteOffset, length) { - if (byteOffset < 0 || array.byteLength < byteOffset) { - throw new RangeError('"offset" is outside of buffer bounds') - } - - if (array.byteLength < byteOffset + (length || 0)) { - throw new RangeError('"length" is outside of buffer bounds') - } - - var buf - if (byteOffset === undefined && length === undefined) { - buf = new Uint8Array(array) - } else if (length === undefined) { - buf = new Uint8Array(array, byteOffset) - } else { - buf = new Uint8Array(array, byteOffset, length) - } - - // Return an augmented `Uint8Array` instance - buf.__proto__ = Buffer.prototype - return buf -} - -function fromObject (obj) { - if (Buffer.isBuffer(obj)) { - var len = checked(obj.length) | 0 - var buf = createBuffer(len) - - if (buf.length === 0) { - return buf - } - - obj.copy(buf, 0, 0, len) - return buf - } - - if (obj.length !== undefined) { - if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) { - return createBuffer(0) - } - return fromArrayLike(obj) - } - - if (obj.type === 'Buffer' && Array.isArray(obj.data)) { - return fromArrayLike(obj.data) - } -} - -function checked (length) { - // Note: cannot use `length < K_MAX_LENGTH` here because that fails when - // length is NaN (which is otherwise coerced to zero.) - if (length >= K_MAX_LENGTH) { - throw new RangeError('Attempt to allocate Buffer larger than maximum ' + - 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes') - } - return length | 0 -} - -function SlowBuffer (length) { - if (+length != length) { // eslint-disable-line eqeqeq - length = 0 - } - return Buffer.alloc(+length) -} - -Buffer.isBuffer = function isBuffer (b) { - return b != null && b._isBuffer === true && - b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false -} - -Buffer.compare = function compare (a, b) { - if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength) - if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength) - if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { - throw new TypeError( - 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array' - ) - } - - if (a === b) return 0 - - var x = a.length - var y = b.length - - for (var i = 0, len = Math.min(x, y); i < len; ++i) { - if (a[i] !== b[i]) { - x = a[i] - y = b[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -Buffer.isEncoding = function isEncoding (encoding) { - switch (String(encoding).toLowerCase()) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'latin1': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true - default: - return false - } -} - -Buffer.concat = function concat (list, length) { - if (!Array.isArray(list)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - - if (list.length === 0) { - return Buffer.alloc(0) - } - - var i - if (length === undefined) { - length = 0 - for (i = 0; i < list.length; ++i) { - length += list[i].length - } - } - - var buffer = Buffer.allocUnsafe(length) - var pos = 0 - for (i = 0; i < list.length; ++i) { - var buf = list[i] - if (isInstance(buf, Uint8Array)) { - buf = Buffer.from(buf) - } - if (!Buffer.isBuffer(buf)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - buf.copy(buffer, pos) - pos += buf.length - } - return buffer -} - -function byteLength (string, encoding) { - if (Buffer.isBuffer(string)) { - return string.length - } - if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) { - return string.byteLength - } - if (typeof string !== 'string') { - throw new TypeError( - 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. ' + - 'Received type ' + typeof string - ) - } - - var len = string.length - var mustMatch = (arguments.length > 2 && arguments[2] === true) - if (!mustMatch && len === 0) return 0 - - // Use a for loop to avoid recursion - var loweredCase = false - for (;;) { - switch (encoding) { - case 'ascii': - case 'latin1': - case 'binary': - return len - case 'utf8': - case 'utf-8': - return utf8ToBytes(string).length - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return len * 2 - case 'hex': - return len >>> 1 - case 'base64': - return base64ToBytes(string).length - default: - if (loweredCase) { - return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8 - } - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} -Buffer.byteLength = byteLength - -function slowToString (encoding, start, end) { - var loweredCase = false - - // No need to verify that "this.length <= MAX_UINT32" since it's a read-only - // property of a typed array. - - // This behaves neither like String nor Uint8Array in that we set start/end - // to their upper/lower bounds if the value passed is out of range. - // undefined is handled specially as per ECMA-262 6th Edition, - // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. - if (start === undefined || start < 0) { - start = 0 - } - // Return early if start > this.length. Done here to prevent potential uint32 - // coercion fail below. - if (start > this.length) { - return '' - } - - if (end === undefined || end > this.length) { - end = this.length - } - - if (end <= 0) { - return '' - } - - // Force coersion to uint32. This will also coerce falsey/NaN values to 0. - end >>>= 0 - start >>>= 0 - - if (end <= start) { - return '' - } - - if (!encoding) encoding = 'utf8' - - while (true) { - switch (encoding) { - case 'hex': - return hexSlice(this, start, end) - - case 'utf8': - case 'utf-8': - return utf8Slice(this, start, end) - - case 'ascii': - return asciiSlice(this, start, end) - - case 'latin1': - case 'binary': - return latin1Slice(this, start, end) - - case 'base64': - return base64Slice(this, start, end) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return utf16leSlice(this, start, end) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = (encoding + '').toLowerCase() - loweredCase = true - } - } -} - -// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package) -// to detect a Buffer instance. It's not possible to use `instanceof Buffer` -// reliably in a browserify context because there could be multiple different -// copies of the 'buffer' package in use. This method works even for Buffer -// instances that were created from another copy of the `buffer` package. -// See: https://github.com/feross/buffer/issues/154 -Buffer.prototype._isBuffer = true - -function swap (b, n, m) { - var i = b[n] - b[n] = b[m] - b[m] = i -} - -Buffer.prototype.swap16 = function swap16 () { - var len = this.length - if (len % 2 !== 0) { - throw new RangeError('Buffer size must be a multiple of 16-bits') - } - for (var i = 0; i < len; i += 2) { - swap(this, i, i + 1) - } - return this -} - -Buffer.prototype.swap32 = function swap32 () { - var len = this.length - if (len % 4 !== 0) { - throw new RangeError('Buffer size must be a multiple of 32-bits') - } - for (var i = 0; i < len; i += 4) { - swap(this, i, i + 3) - swap(this, i + 1, i + 2) - } - return this -} - -Buffer.prototype.swap64 = function swap64 () { - var len = this.length - if (len % 8 !== 0) { - throw new RangeError('Buffer size must be a multiple of 64-bits') - } - for (var i = 0; i < len; i += 8) { - swap(this, i, i + 7) - swap(this, i + 1, i + 6) - swap(this, i + 2, i + 5) - swap(this, i + 3, i + 4) - } - return this -} - -Buffer.prototype.toString = function toString () { - var length = this.length - if (length === 0) return '' - if (arguments.length === 0) return utf8Slice(this, 0, length) - return slowToString.apply(this, arguments) -} - -Buffer.prototype.toLocaleString = Buffer.prototype.toString - -Buffer.prototype.equals = function equals (b) { - if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') - if (this === b) return true - return Buffer.compare(this, b) === 0 -} - -Buffer.prototype.inspect = function inspect () { - var str = '' - var max = exports.INSPECT_MAX_BYTES - str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim() - if (this.length > max) str += ' ... ' - return '' -} - -Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { - if (isInstance(target, Uint8Array)) { - target = Buffer.from(target, target.offset, target.byteLength) - } - if (!Buffer.isBuffer(target)) { - throw new TypeError( - 'The "target" argument must be one of type Buffer or Uint8Array. ' + - 'Received type ' + (typeof target) - ) - } - - if (start === undefined) { - start = 0 - } - if (end === undefined) { - end = target ? target.length : 0 - } - if (thisStart === undefined) { - thisStart = 0 - } - if (thisEnd === undefined) { - thisEnd = this.length - } - - if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { - throw new RangeError('out of range index') - } - - if (thisStart >= thisEnd && start >= end) { - return 0 - } - if (thisStart >= thisEnd) { - return -1 - } - if (start >= end) { - return 1 - } - - start >>>= 0 - end >>>= 0 - thisStart >>>= 0 - thisEnd >>>= 0 - - if (this === target) return 0 - - var x = thisEnd - thisStart - var y = end - start - var len = Math.min(x, y) - - var thisCopy = this.slice(thisStart, thisEnd) - var targetCopy = target.slice(start, end) - - for (var i = 0; i < len; ++i) { - if (thisCopy[i] !== targetCopy[i]) { - x = thisCopy[i] - y = targetCopy[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, -// OR the last index of `val` in `buffer` at offset <= `byteOffset`. -// -// Arguments: -// - buffer - a Buffer to search -// - val - a string, Buffer, or number -// - byteOffset - an index into `buffer`; will be clamped to an int32 -// - encoding - an optional encoding, relevant is val is a string -// - dir - true for indexOf, false for lastIndexOf -function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { - // Empty buffer means no match - if (buffer.length === 0) return -1 - - // Normalize byteOffset - if (typeof byteOffset === 'string') { - encoding = byteOffset - byteOffset = 0 - } else if (byteOffset > 0x7fffffff) { - byteOffset = 0x7fffffff - } else if (byteOffset < -0x80000000) { - byteOffset = -0x80000000 - } - byteOffset = +byteOffset // Coerce to Number. - if (numberIsNaN(byteOffset)) { - // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer - byteOffset = dir ? 0 : (buffer.length - 1) - } - - // Normalize byteOffset: negative offsets start from the end of the buffer - if (byteOffset < 0) byteOffset = buffer.length + byteOffset - if (byteOffset >= buffer.length) { - if (dir) return -1 - else byteOffset = buffer.length - 1 - } else if (byteOffset < 0) { - if (dir) byteOffset = 0 - else return -1 - } - - // Normalize val - if (typeof val === 'string') { - val = Buffer.from(val, encoding) - } - - // Finally, search either indexOf (if dir is true) or lastIndexOf - if (Buffer.isBuffer(val)) { - // Special case: looking for empty string/buffer always fails - if (val.length === 0) { - return -1 - } - return arrayIndexOf(buffer, val, byteOffset, encoding, dir) - } else if (typeof val === 'number') { - val = val & 0xFF // Search for a byte value [0-255] - if (typeof Uint8Array.prototype.indexOf === 'function') { - if (dir) { - return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) - } else { - return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) - } - } - return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) - } - - throw new TypeError('val must be string, number or Buffer') -} - -function arrayIndexOf (arr, val, byteOffset, encoding, dir) { - var indexSize = 1 - var arrLength = arr.length - var valLength = val.length - - if (encoding !== undefined) { - encoding = String(encoding).toLowerCase() - if (encoding === 'ucs2' || encoding === 'ucs-2' || - encoding === 'utf16le' || encoding === 'utf-16le') { - if (arr.length < 2 || val.length < 2) { - return -1 - } - indexSize = 2 - arrLength /= 2 - valLength /= 2 - byteOffset /= 2 - } - } - - function read (buf, i) { - if (indexSize === 1) { - return buf[i] - } else { - return buf.readUInt16BE(i * indexSize) - } - } - - var i - if (dir) { - var foundIndex = -1 - for (i = byteOffset; i < arrLength; i++) { - if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { - if (foundIndex === -1) foundIndex = i - if (i - foundIndex + 1 === valLength) return foundIndex * indexSize - } else { - if (foundIndex !== -1) i -= i - foundIndex - foundIndex = -1 - } - } - } else { - if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength - for (i = byteOffset; i >= 0; i--) { - var found = true - for (var j = 0; j < valLength; j++) { - if (read(arr, i + j) !== read(val, j)) { - found = false - break - } - } - if (found) return i - } - } - - return -1 -} - -Buffer.prototype.includes = function includes (val, byteOffset, encoding) { - return this.indexOf(val, byteOffset, encoding) !== -1 -} - -Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, true) -} - -Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, false) -} - -function hexWrite (buf, string, offset, length) { - offset = Number(offset) || 0 - var remaining = buf.length - offset - if (!length) { - length = remaining - } else { - length = Number(length) - if (length > remaining) { - length = remaining - } - } - - var strLen = string.length - - if (length > strLen / 2) { - length = strLen / 2 - } - for (var i = 0; i < length; ++i) { - var parsed = parseInt(string.substr(i * 2, 2), 16) - if (numberIsNaN(parsed)) return i - buf[offset + i] = parsed - } - return i -} - -function utf8Write (buf, string, offset, length) { - return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) -} - -function asciiWrite (buf, string, offset, length) { - return blitBuffer(asciiToBytes(string), buf, offset, length) -} - -function latin1Write (buf, string, offset, length) { - return asciiWrite(buf, string, offset, length) -} - -function base64Write (buf, string, offset, length) { - return blitBuffer(base64ToBytes(string), buf, offset, length) -} - -function ucs2Write (buf, string, offset, length) { - return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) -} - -Buffer.prototype.write = function write (string, offset, length, encoding) { - // Buffer#write(string) - if (offset === undefined) { - encoding = 'utf8' - length = this.length - offset = 0 - // Buffer#write(string, encoding) - } else if (length === undefined && typeof offset === 'string') { - encoding = offset - length = this.length - offset = 0 - // Buffer#write(string, offset[, length][, encoding]) - } else if (isFinite(offset)) { - offset = offset >>> 0 - if (isFinite(length)) { - length = length >>> 0 - if (encoding === undefined) encoding = 'utf8' - } else { - encoding = length - length = undefined - } - } else { - throw new Error( - 'Buffer.write(string, encoding, offset[, length]) is no longer supported' - ) - } - - var remaining = this.length - offset - if (length === undefined || length > remaining) length = remaining - - if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { - throw new RangeError('Attempt to write outside buffer bounds') - } - - if (!encoding) encoding = 'utf8' - - var loweredCase = false - for (;;) { - switch (encoding) { - case 'hex': - return hexWrite(this, string, offset, length) - - case 'utf8': - case 'utf-8': - return utf8Write(this, string, offset, length) - - case 'ascii': - return asciiWrite(this, string, offset, length) - - case 'latin1': - case 'binary': - return latin1Write(this, string, offset, length) - - case 'base64': - // Warning: maxLength not taken into account in base64Write - return base64Write(this, string, offset, length) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return ucs2Write(this, string, offset, length) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} - -Buffer.prototype.toJSON = function toJSON () { - return { - type: 'Buffer', - data: Array.prototype.slice.call(this._arr || this, 0) - } -} - -function base64Slice (buf, start, end) { - if (start === 0 && end === buf.length) { - return base64.fromByteArray(buf) - } else { - return base64.fromByteArray(buf.slice(start, end)) - } -} - -function utf8Slice (buf, start, end) { - end = Math.min(buf.length, end) - var res = [] - - var i = start - while (i < end) { - var firstByte = buf[i] - var codePoint = null - var bytesPerSequence = (firstByte > 0xEF) ? 4 - : (firstByte > 0xDF) ? 3 - : (firstByte > 0xBF) ? 2 - : 1 - - if (i + bytesPerSequence <= end) { - var secondByte, thirdByte, fourthByte, tempCodePoint - - switch (bytesPerSequence) { - case 1: - if (firstByte < 0x80) { - codePoint = firstByte - } - break - case 2: - secondByte = buf[i + 1] - if ((secondByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) - if (tempCodePoint > 0x7F) { - codePoint = tempCodePoint - } - } - break - case 3: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) - if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { - codePoint = tempCodePoint - } - } - break - case 4: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - fourthByte = buf[i + 3] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) - if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { - codePoint = tempCodePoint - } - } - } - } - - if (codePoint === null) { - // we did not generate a valid codePoint so insert a - // replacement char (U+FFFD) and advance only 1 byte - codePoint = 0xFFFD - bytesPerSequence = 1 - } else if (codePoint > 0xFFFF) { - // encode to utf16 (surrogate pair dance) - codePoint -= 0x10000 - res.push(codePoint >>> 10 & 0x3FF | 0xD800) - codePoint = 0xDC00 | codePoint & 0x3FF - } - - res.push(codePoint) - i += bytesPerSequence - } - - return decodeCodePointsArray(res) -} - -// Based on http://stackoverflow.com/a/22747272/680742, the browser with -// the lowest limit is Chrome, with 0x10000 args. -// We go 1 magnitude less, for safety -var MAX_ARGUMENTS_LENGTH = 0x1000 - -function decodeCodePointsArray (codePoints) { - var len = codePoints.length - if (len <= MAX_ARGUMENTS_LENGTH) { - return String.fromCharCode.apply(String, codePoints) // avoid extra slice() - } - - // Decode in chunks to avoid "call stack size exceeded". - var res = '' - var i = 0 - while (i < len) { - res += String.fromCharCode.apply( - String, - codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) - ) - } - return res -} - -function asciiSlice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i] & 0x7F) - } - return ret -} - -function latin1Slice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i]) - } - return ret -} - -function hexSlice (buf, start, end) { - var len = buf.length - - if (!start || start < 0) start = 0 - if (!end || end < 0 || end > len) end = len - - var out = '' - for (var i = start; i < end; ++i) { - out += toHex(buf[i]) - } - return out -} - -function utf16leSlice (buf, start, end) { - var bytes = buf.slice(start, end) - var res = '' - for (var i = 0; i < bytes.length; i += 2) { - res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256)) - } - return res -} - -Buffer.prototype.slice = function slice (start, end) { - var len = this.length - start = ~~start - end = end === undefined ? len : ~~end - - if (start < 0) { - start += len - if (start < 0) start = 0 - } else if (start > len) { - start = len - } - - if (end < 0) { - end += len - if (end < 0) end = 0 - } else if (end > len) { - end = len - } - - if (end < start) end = start - - var newBuf = this.subarray(start, end) - // Return an augmented `Uint8Array` instance - newBuf.__proto__ = Buffer.prototype - return newBuf -} - -/* - * Need to make sure that buffer isn't trying to write out of bounds. - */ -function checkOffset (offset, ext, length) { - if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') - if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') -} - -Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - - return val -} - -Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - checkOffset(offset, byteLength, this.length) - } - - var val = this[offset + --byteLength] - var mul = 1 - while (byteLength > 0 && (mul *= 0x100)) { - val += this[offset + --byteLength] * mul - } - - return val -} - -Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 1, this.length) - return this[offset] -} - -Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - return this[offset] | (this[offset + 1] << 8) -} - -Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - return (this[offset] << 8) | this[offset + 1] -} - -Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return ((this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16)) + - (this[offset + 3] * 0x1000000) -} - -Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] * 0x1000000) + - ((this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3]) -} - -Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var i = byteLength - var mul = 1 - var val = this[offset + --i] - while (i > 0 && (mul *= 0x100)) { - val += this[offset + --i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 1, this.length) - if (!(this[offset] & 0x80)) return (this[offset]) - return ((0xff - this[offset] + 1) * -1) -} - -Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset] | (this[offset + 1] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset + 1] | (this[offset] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16) | - (this[offset + 3] << 24) -} - -Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] << 24) | - (this[offset + 1] << 16) | - (this[offset + 2] << 8) | - (this[offset + 3]) -} - -Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, true, 23, 4) -} - -Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, false, 23, 4) -} - -Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, true, 52, 8) -} - -Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, false, 52, 8) -} - -function checkInt (buf, value, offset, ext, max, min) { - if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') - if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') - if (offset + ext > buf.length) throw new RangeError('Index out of range') -} - -Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var mul = 1 - var i = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var i = byteLength - 1 - var mul = 1 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - return offset + 2 -} - -Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - return offset + 2 -} - -Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - this[offset + 3] = (value >>> 24) - this[offset + 2] = (value >>> 16) - this[offset + 1] = (value >>> 8) - this[offset] = (value & 0xff) - return offset + 4 -} - -Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - return offset + 4 -} - -Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - var limit = Math.pow(2, (8 * byteLength) - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = 0 - var mul = 1 - var sub = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - var limit = Math.pow(2, (8 * byteLength) - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = byteLength - 1 - var mul = 1 - var sub = 0 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) - if (value < 0) value = 0xff + value + 1 - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - return offset + 2 -} - -Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - return offset + 2 -} - -Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - this[offset + 2] = (value >>> 16) - this[offset + 3] = (value >>> 24) - return offset + 4 -} - -Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (value < 0) value = 0xffffffff + value + 1 - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - return offset + 4 -} - -function checkIEEE754 (buf, value, offset, ext, max, min) { - if (offset + ext > buf.length) throw new RangeError('Index out of range') - if (offset < 0) throw new RangeError('Index out of range') -} - -function writeFloat (buf, value, offset, littleEndian, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) - } - ieee754.write(buf, value, offset, littleEndian, 23, 4) - return offset + 4 -} - -Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { - return writeFloat(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { - return writeFloat(this, value, offset, false, noAssert) -} - -function writeDouble (buf, value, offset, littleEndian, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) - } - ieee754.write(buf, value, offset, littleEndian, 52, 8) - return offset + 8 -} - -Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { - return writeDouble(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { - return writeDouble(this, value, offset, false, noAssert) -} - -// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) -Buffer.prototype.copy = function copy (target, targetStart, start, end) { - if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer') - if (!start) start = 0 - if (!end && end !== 0) end = this.length - if (targetStart >= target.length) targetStart = target.length - if (!targetStart) targetStart = 0 - if (end > 0 && end < start) end = start - - // Copy 0 bytes; we're done - if (end === start) return 0 - if (target.length === 0 || this.length === 0) return 0 - - // Fatal error conditions - if (targetStart < 0) { - throw new RangeError('targetStart out of bounds') - } - if (start < 0 || start >= this.length) throw new RangeError('Index out of range') - if (end < 0) throw new RangeError('sourceEnd out of bounds') - - // Are we oob? - if (end > this.length) end = this.length - if (target.length - targetStart < end - start) { - end = target.length - targetStart + start - } - - var len = end - start - - if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') { - // Use built-in when available, missing from IE11 - this.copyWithin(targetStart, start, end) - } else if (this === target && start < targetStart && targetStart < end) { - // descending copy from end - for (var i = len - 1; i >= 0; --i) { - target[i + targetStart] = this[i + start] - } - } else { - Uint8Array.prototype.set.call( - target, - this.subarray(start, end), - targetStart - ) - } - - return len -} - -// Usage: -// buffer.fill(number[, offset[, end]]) -// buffer.fill(buffer[, offset[, end]]) -// buffer.fill(string[, offset[, end]][, encoding]) -Buffer.prototype.fill = function fill (val, start, end, encoding) { - // Handle string cases: - if (typeof val === 'string') { - if (typeof start === 'string') { - encoding = start - start = 0 - end = this.length - } else if (typeof end === 'string') { - encoding = end - end = this.length - } - if (encoding !== undefined && typeof encoding !== 'string') { - throw new TypeError('encoding must be a string') - } - if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - if (val.length === 1) { - var code = val.charCodeAt(0) - if ((encoding === 'utf8' && code < 128) || - encoding === 'latin1') { - // Fast path: If `val` fits into a single byte, use that numeric value. - val = code - } - } - } else if (typeof val === 'number') { - val = val & 255 - } - - // Invalid ranges are not set to a default, so can range check early. - if (start < 0 || this.length < start || this.length < end) { - throw new RangeError('Out of range index') - } - - if (end <= start) { - return this - } - - start = start >>> 0 - end = end === undefined ? this.length : end >>> 0 - - if (!val) val = 0 - - var i - if (typeof val === 'number') { - for (i = start; i < end; ++i) { - this[i] = val - } - } else { - var bytes = Buffer.isBuffer(val) - ? val - : Buffer.from(val, encoding) - var len = bytes.length - if (len === 0) { - throw new TypeError('The value "' + val + - '" is invalid for argument "value"') - } - for (i = 0; i < end - start; ++i) { - this[i + start] = bytes[i % len] - } - } - - return this -} - -// HELPER FUNCTIONS -// ================ - -var INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g - -function base64clean (str) { - // Node takes equal signs as end of the Base64 encoding - str = str.split('=')[0] - // Node strips out invalid characters like \n and \t from the string, base64-js does not - str = str.trim().replace(INVALID_BASE64_RE, '') - // Node converts strings with length < 2 to '' - if (str.length < 2) return '' - // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not - while (str.length % 4 !== 0) { - str = str + '=' - } - return str -} - -function toHex (n) { - if (n < 16) return '0' + n.toString(16) - return n.toString(16) -} - -function utf8ToBytes (string, units) { - units = units || Infinity - var codePoint - var length = string.length - var leadSurrogate = null - var bytes = [] - - for (var i = 0; i < length; ++i) { - codePoint = string.charCodeAt(i) - - // is surrogate component - if (codePoint > 0xD7FF && codePoint < 0xE000) { - // last char was a lead - if (!leadSurrogate) { - // no lead yet - if (codePoint > 0xDBFF) { - // unexpected trail - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } else if (i + 1 === length) { - // unpaired lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } - - // valid lead - leadSurrogate = codePoint - - continue - } - - // 2 leads in a row - if (codePoint < 0xDC00) { - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - leadSurrogate = codePoint - continue - } - - // valid surrogate pair - codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 - } else if (leadSurrogate) { - // valid bmp char, but last char was a lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - } - - leadSurrogate = null - - // encode utf8 - if (codePoint < 0x80) { - if ((units -= 1) < 0) break - bytes.push(codePoint) - } else if (codePoint < 0x800) { - if ((units -= 2) < 0) break - bytes.push( - codePoint >> 0x6 | 0xC0, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x10000) { - if ((units -= 3) < 0) break - bytes.push( - codePoint >> 0xC | 0xE0, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x110000) { - if ((units -= 4) < 0) break - bytes.push( - codePoint >> 0x12 | 0xF0, - codePoint >> 0xC & 0x3F | 0x80, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else { - throw new Error('Invalid code point') - } - } - - return bytes -} - -function asciiToBytes (str) { - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - // Node's code seems to be doing this and not & 0x7F.. - byteArray.push(str.charCodeAt(i) & 0xFF) - } - return byteArray -} - -function utf16leToBytes (str, units) { - var c, hi, lo - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - if ((units -= 2) < 0) break - - c = str.charCodeAt(i) - hi = c >> 8 - lo = c % 256 - byteArray.push(lo) - byteArray.push(hi) - } - - return byteArray -} - -function base64ToBytes (str) { - return base64.toByteArray(base64clean(str)) -} - -function blitBuffer (src, dst, offset, length) { - for (var i = 0; i < length; ++i) { - if ((i + offset >= dst.length) || (i >= src.length)) break - dst[i + offset] = src[i] - } - return i -} - -// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass -// the `instanceof` check but they should be treated as of that type. -// See: https://github.com/feross/buffer/issues/166 -function isInstance (obj, type) { - return obj instanceof type || - (obj != null && obj.constructor != null && obj.constructor.name != null && - obj.constructor.name === type.name) -} -function numberIsNaN (obj) { - // For IE11 support - return obj !== obj // eslint-disable-line no-self-compare -} - -},{"base64-js":6,"ieee754":8}],8:[function(require,module,exports){ -exports.read = function (buffer, offset, isLE, mLen, nBytes) { - var e, m - var eLen = (nBytes * 8) - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var nBits = -7 - var i = isLE ? (nBytes - 1) : 0 - var d = isLE ? -1 : 1 - var s = buffer[offset + i] - - i += d - - e = s & ((1 << (-nBits)) - 1) - s >>= (-nBits) - nBits += eLen - for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {} - - m = e & ((1 << (-nBits)) - 1) - e >>= (-nBits) - nBits += mLen - for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {} - - if (e === 0) { - e = 1 - eBias - } else if (e === eMax) { - return m ? NaN : ((s ? -1 : 1) * Infinity) - } else { - m = m + Math.pow(2, mLen) - e = e - eBias - } - return (s ? -1 : 1) * m * Math.pow(2, e - mLen) -} - -exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { - var e, m, c - var eLen = (nBytes * 8) - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) - var i = isLE ? 0 : (nBytes - 1) - var d = isLE ? 1 : -1 - var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 - - value = Math.abs(value) - - if (isNaN(value) || value === Infinity) { - m = isNaN(value) ? 1 : 0 - e = eMax - } else { - e = Math.floor(Math.log(value) / Math.LN2) - if (value * (c = Math.pow(2, -e)) < 1) { - e-- - c *= 2 - } - if (e + eBias >= 1) { - value += rt / c - } else { - value += rt * Math.pow(2, 1 - eBias) - } - if (value * c >= 2) { - e++ - c /= 2 - } - - if (e + eBias >= eMax) { - m = 0 - e = eMax - } else if (e + eBias >= 1) { - m = ((value * c) - 1) * Math.pow(2, mLen) - e = e + eBias - } else { - m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) - e = 0 - } - } - - for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} - - e = (e << mLen) | m - eLen += mLen - for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} - - buffer[offset + i - d] |= s * 128 -} - -},{}]},{},[4]); diff --git a/frontend/static/js/bootstrap.min.js b/frontend/static/js/bootstrap.min.js deleted file mode 120000 index 47696515..00000000 --- a/frontend/static/js/bootstrap.min.js +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/bootstrap.min.js \ No newline at end of file diff --git a/frontend/static/js/challenge.js b/frontend/static/js/challenge.js deleted file mode 100644 index 2a012242..00000000 --- a/frontend/static/js/challenge.js +++ /dev/null @@ -1,887 +0,0 @@ -angular.module("FICApp", ["ngRoute", "ngSanitize"]) - .config(function($routeProvider, $locationProvider) { - $routeProvider - .when("/rules", { - controller: "HomeController", - templateUrl: "views/rules.html" - }) - .when("/edit", { - controller: "MyTeamController", - templateUrl: "views/team-edit.html" - }) - .when("/issue/:eid", { - controller: "IssueController", - templateUrl: "views/issue.html" - }) - .when("/issues", { - controller: "IssueController", - templateUrl: "views/issue.html" - }) - .when("/issues/:iid", { - controller: "IssueController", - templateUrl: "views/issue.html" - }) - .when("/rank", { - controller: "RankController", - templateUrl: "views/rank.html" - }) - .when("/register", { - controller: "RegisterController", - templateUrl: "views/register.html" - }) - .when("/videos", { - controller: "VideosController", - templateUrl: "views/videos.html" - }) - .when("/tags/:tag", { - controller: "TagController", - templateUrl: "views/tag.html" - }) - .when("/:theme", { - controller: "ExerciceController", - templateUrl: "views/theme.html" - }) - .when("/:theme/:exercice", { - controller: "ExerciceController", - templateUrl: function(e) { - if (e.theme == "BlueMoney" && e.exercice == "JackSpearrow") - return "views/defi-SE.html" - else - return "views/defi.html"; - } - }) - .when("/", { - controller: "HomeController", - templateUrl: "views/home.html" - }) - .otherwise({ - redirectTo: "/" - }); - $locationProvider.html5Mode(true); - }) - .run(function($rootScope) { - $rootScope.current_theme = 0; - $rootScope.current_exercice = 0; - $rootScope.current_tag = undefined; - $rootScope.notify_field = 0; - $rootScope.issues_known_responses = 0; - - if ('Notification' in window) - Notification.requestPermission(function(result) { - if (result == "granted") { - if (localStorage && localStorage.notification) - $rootScope.notify_field = localStorage.notification; - else - $rootScope.notify_field = 63; - } - else - $rootScope.notify_field = 0; - }); - }) - .controller("DataController", function($sce, $scope, $http, $rootScope, $interval, $location) { - var actMenu = function() { - if ($scope.my && $scope.themes) { - var tags = {}; - angular.forEach($scope.themes, function(theme, key) { - $scope.themes[key].exercice_solved = 0; - var last_exercice = null; - angular.forEach(theme.exercices, function(exercice, k) { - if (last_exercice != null) - last_exercice.next = k; - last_exercice = exercice; - - if ($scope.my.exercices && $scope.my.exercices[k] && $scope.my.exercices[k].solved) { - $scope.themes[key].exercice_solved++; - } - angular.forEach(exercice.tags, function(tag) { - if (!tags[tag]) - tags[tag] = {count: 1, solved: 0}; - else - tags[tag].count += 1; - if ($scope.my.exercices && $scope.my.exercices[k] && $scope.my.exercices[k].solved) - tags[tag].solved += 1; - }); - }); - }); - $scope.tags = tags; - $scope.tagsl = Object.keys(tags).sort(); - } - } - - var refreshSettingsInterval - var refreshSettings = function() { - if (refreshSettingsInterval) - $interval.cancel(refreshSettingsInterval); - refreshSettingsInterval = $interval(refreshSettings, Math.floor(Math.random() * 24000) + 32000); - - $http.get("settings.json").then(function(response) { - var time = $rootScope.recvTime(response); - if (response.data.start) - response.data.start = new Date(response.data.start); - if (response.data.end) - response.data.end = new Date(response.data.end); - if (response.data.generation) - response.data.generation = new Date(response.data.generation); - if (response.data.activateTime) - response.data.activateTime = new Date(response.data.activateTime); - if ($rootScope.settings === undefined || response.data.activateTime === undefined || response.data.activateTime <= new Date(Date.now() + (time.cu - time.he))) { - $rootScope.settings = response.data; - if (response.data.eventKindness && refreshEventsInterval) { - $interval.cancel(refreshEventsInterval); - refreshEventsInterval = null; - } - else if (!response.data.eventKindness && !refreshEventsInterval) { - refreshEvents(); - } - } - else - $rootScope.settings.activateTime = response.data.activateTime; - }); - } - - var refreshIssuesInterval - var refreshIssues = function() { - if (refreshIssuesInterval) - $interval.cancel(refreshIssuesInterval); - refreshIssuesInterval = $interval(refreshIssues, Math.floor(Math.random() * 24000) + 32000); - - $http.get("issues.json").then(function(response) { - $rootScope.issues_idx = {}; - $rootScope.issues_nb_responses = 0; - $rootScope.issues_need_info = 0; - $rootScope.issues = response.data; - $rootScope.issues.forEach(function(issue) { - $rootScope.issues_idx[issue.id] = issue; - $rootScope.issues_nb_responses += issue.texts.length; - if (issue.state == 'need-info') $rootScope.issues_need_info++; - }) - }, function(error) {}); - } - - var refreshThemesInterval - var refreshThemes = function() { - if (refreshThemesInterval) - $interval.cancel(refreshThemesInterval); - refreshThemesInterval = $interval(refreshThemes, Math.floor(Math.random() * 24000) + 32000); - - $http.get("themes.json").then(function(response) { - $scope.themes = response.data; - $scope.max_gain = 0; - $scope.max_solved = 0; - $scope.themesUrl = {}; - $scope.exercicesUrl = {}; - angular.forEach(response.data, function(theme, key) { - $scope.themesUrl[theme.urlid] = key; - this[key].exercice_count = Object.keys(theme.exercices).length; - this[key].exercice_coeff_max = 0; - this[key].gain = 0; - this[key].solved = 0; - angular.forEach(theme.exercices, function(ex, k) { - $scope.exercicesUrl[theme.urlid + "/" + ex.urlid] = k; - this.gain += ex.gain; - this.solved += ex.solved; - this.exercice_coeff_max = Math.max(this.exercice_coeff_max, ex.curcoeff); - }, theme); - $scope.max_gain += theme.gain; - $scope.max_solved = Math.max($scope.max_solved, theme.solved); - }, response.data); - actMenu(); - }); - } - - var refreshTeamsInterval; - $rootScope.refreshTeams = function() { - if (refreshTeamsInterval) - $interval.cancel(refreshTeamsInterval); - refreshTeamsInterval = $interval($rootScope.refreshTeams, Math.floor(Math.random() * 24000) + 32000); - - $http.get("teams.json").then(function(response) { - var teams = response.data; - $scope.teams_count = Object.keys(teams).length - $scope.teams = teams; - - $scope.rank = []; - angular.forEach($scope.teams, function(team, tid) { - team.id = tid; - this.push(team); - }, $scope.rank); - }); - } - - var refreshEventsInterval; - var eventsLastRefresh; - var eventsLastTreated; - var refreshEvents = function() { - if (refreshEventsInterval) - $interval.cancel(refreshEventsInterval); - var refreshRate = 1200; - if ($rootScope.notify_field == 0 && eventsLastTreated) - refreshRate = 30000; - if ($scope.my && !$scope.my.team_id) - return; - refreshEventsInterval = $interval(refreshEvents, Math.floor(Math.random() * refreshRate * 2) + refreshRate); - - if (!eventsLastTreated) { - eventsLastTreated = $rootScope.getSrvTime(); - if (!eventsLastTreated) - return; - } - - $http.get("events.json").then(function(response) { - if (eventsLastRefresh != undefined && eventsLastRefresh == response.headers()["last-modified"]) - return; - eventsLastRefresh = response.headers()["last-modified"]; - - var maxTimeSeen = eventsLastTreated; - for (var i = response.data.length - 1; i >= 0; i--) { - var event = response.data[i]; - - event.time = new Date(event.time); - if (event.time <= eventsLastTreated) - continue; - else if (event.time > maxTimeSeen) - maxTimeSeen = event.time; - - // Determine the kind of event - var kind = 1; - - if (event.txt.match(/<\/strong> qui vient de nous rejoindre/)) { - kind = 64; - } else { - var res = event.txt.match(/(\w+) le \d+e<\/sup><\/strong> défi [^&]+/) - if (res) { - if (res[1] == "résolu") - kind = 8; - else if (res[1] == "pour") - kind = 16; - else if (res[1] == "tente") - kind = 32; - } - } - if (kind != 1) { - if ($scope.my && $scope.my.name && event.txt.indexOf($scope.my.name) >= 0) - kind |= 2; - else - kind |= 4; - } - - if ((kind & $rootScope.notify_field) == kind) { - var notification = new Notification("Challenge forensic", {body: event.txt.replace(/&#(\d+);/g, function(match, dec) {return String.fromCharCode(dec);}).replace(/(<([^>]+)>)/ig,""), badge: "/img/icon-" + event.kind + ".ico", icon: "/img/icon-" + event.kind + ".ico"}); - notification.onclick = function(ev) { - $location.url("edit"); - }; - setTimeout(notification.close.bind(notification), 4000); - } - }; - - if (maxTimeSeen > eventsLastTreated) - eventsLastTreated = maxTimeSeen; - }); - } - - var refreshMyInterval; - var refreshMy = function() { - if (refreshMyInterval) - $interval.cancel(refreshMyInterval); - refreshMyInterval = $interval(refreshMy, Math.floor(Math.random() * 24000) + 24000); - - $http.get("my.json").then(function(response) { - $rootScope.recvMy(response.data); - }, function(response) { - if (!$scope.my && response.status == 404) { - $location.url("register"); - } - }); - } - $rootScope.recvMy = function(data) { - if (data.team_id == 0) { - angular.forEach(data.exercices, function(exercice, eid) { - angular.forEach(exercice.hints, function(hint, hid) { - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].hints[hid] && $scope.my.exercices[eid].hints[hid].hidden !== undefined) - data.exercices[eid].hints[hid].hidden = $scope.my.exercices[eid].hints[hid].hidden; - else - data.exercices[eid].hints[hid].hidden = true; - }); - }); - } - angular.forEach(data.exercices, function(exercice, eid) { - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].submitted) - data.exercices[eid].timeouted = true; - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].solved !== undefined) - data.exercices[eid].solved = $scope.my.exercices[eid].solved; - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].solved_time !== undefined && data.exercices[eid].solved_time === undefined) - data.exercices[eid].solved_time = $scope.my.exercices[eid].solved_time; - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].tries !== undefined && data.exercices[eid].tries === undefined) - data.exercices[eid].tries = $scope.my.exercices[eid].tries; - angular.forEach(exercice.flags, function(flag, fid) { - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].flags && $scope.my.exercices[eid].flags[fid] && $scope.my.exercices[eid].flags[fid].found !== undefined) - data.exercices[eid].flags[fid].found = $scope.my.exercices[eid].flags[fid].found; - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].flags && $scope.my.exercices[eid].flags[fid] && $scope.my.exercices[eid].flags[fid].value !== undefined) - data.exercices[eid].flags[fid].value = $scope.my.exercices[eid].flags[fid].value; - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].flags && $scope.my.exercices[eid].flags[fid] && $scope.my.exercices[eid].flags[fid].values !== undefined) - data.exercices[eid].flags[fid].values = $scope.my.exercices[eid].flags[fid].values; - else if (data.exercices[eid].flags[fid].nb_lines) - data.exercices[eid].flags[fid].values = Array(data.exercices[eid].flags[fid].nb_lines); - else - data.exercices[eid].flags[fid].values = [""]; - }); - angular.forEach(exercice.mcqs, function(mcq, mid) { - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].mcqs && $scope.my.exercices[eid].mcqs[mid] && $scope.my.exercices[eid].mcqs[mid].solved !== undefined) - data.exercices[eid].mcqs[mid].solved = $scope.my.exercices[eid].mcqs[mid].solved; - }); - }); - angular.forEach(data.exercices, function(exercice, eid) { - angular.forEach(exercice.mcqs, function(mcq, mid) { - angular.forEach(mcq.choices, function(choice, cid) { - if (!(choice instanceof Object)) - this[cid] = { - label: choice, - }; - - this[cid].disabled = mcq.solved || mcq.part_solved || (this[cid].justification && this[cid].justification.solved); - - if (!this[cid].disabled) - this[cid].value = $scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].mcqs && $scope.my.exercices[eid].mcqs[mid] && $scope.my.exercices[eid].mcqs[mid].choices[cid] && $scope.my.exercices[eid].mcqs[mid].choices[cid].value - - if (mcq.justify) { - if (!this[cid].justification) - this[cid].justification = {}; - - if (!this[cid].justification.label) { - this[cid].justification.label = "Flag correspondant"; - this[cid].justification.help = "Trouvez et validez les choix du QCM pour avoir des indications supplémentaires"; - } - - if ($scope.my && $scope.my.exercices[eid] && $scope.my.exercices[eid].mcqs[mid] && $scope.my.exercices[eid].mcqs[mid].choices[cid] && $scope.my.exercices[eid].mcqs[mid].choices[cid].justification) { - if ($scope.my.exercices[eid].mcqs[mid].choices[cid].justification.value !== undefined) - data.exercices[eid].mcqs[mid].choices[cid].justification.value = $scope.my.exercices[eid].mcqs[mid].choices[cid].justification.value; - if ($scope.my.exercices[eid].mcqs[mid].choices[cid].justification.values !== undefined) - data.exercices[eid].mcqs[mid].choices[cid].justification.values = $scope.my.exercices[eid].mcqs[mid].choices[cid].justification.values; - else - data.exercices[eid].mcqs[mid].choices[cid].justification.values = [""]; - } - else - data.exercices[eid].mcqs[mid].choices[cid].justification.values = [""]; - } - }, mcq.choices); - }); - }); - $scope.my = data; - angular.forEach($scope.my.exercices, function(exercice, eid) { - exercice.solved = exercice.solved_rank > 0; - if (exercice.video_uri) { - exercice.video_uri = $sce.trustAsResourceUrl(exercice.video_uri); - } - }); - actMenu(); - } - - $rootScope.refresh = function(justMy, justSettings) { - if (!justMy) { - refreshSettings(); - refreshThemes(); - $rootScope.refreshTeams(); - refreshEvents(); - refreshIssues(); - } - else if (justSettings) { - refreshSettings(); - } - refreshMy(); - } - $rootScope.refreshIssues = refreshIssues; - $rootScope.refresh(); - }) - .controller("ExerciceController", function($scope, $routeParams, $http, $rootScope, $timeout) { - if (window.scrollY > 112) - window.scrollTo(window.scrollX, 112); - - $rootScope.current_tag = undefined; - - $scope.$watch("themesUrl", function(themesUrl) { - if (themesUrl != undefined) - $rootScope.current_theme = themesUrl[$routeParams.theme]; - }) - - if ($routeParams.exercice) { - $scope.$watch("exercicesUrl", function(exercicesUrl) { - if (exercicesUrl != undefined) - $rootScope.current_exercice = exercicesUrl[$routeParams.theme + "/" + $routeParams.exercice]; - }) - $scope.$watchGroup(["themes", "current_theme", "current_exercice"], function(newValues) { - var themes = newValues[0]; - var current_theme = newValues[1]; - var current_exercice = newValues[2]; - if (themes != undefined && themes[current_theme] != undefined && themes[current_theme].exercices != undefined && themes[current_theme].exercices[current_exercice] != undefined) - $rootScope.title = themes[current_theme].name + " > " + themes[current_theme].exercices[current_exercice].title; - }); - } else { - $rootScope.current_exercice = 0; - $scope.$watchGroup(["themes", "current_theme"], function(newValues) { - var themes = newValues[0]; - var current_theme = newValues[1]; - if (themes != undefined && themes[current_theme] != undefined) - $rootScope.title = themes[current_theme].name; - }); - } - - var cbh; - $scope.hsubmit = function(hint) { - hint.submitted = true; - $scope.hinterror = null; - $http({ url: "openhint/" + $rootScope.current_exercice, method: "POST", data: { id: hint.id } }).then(function(response) { - var checkDiffHint = function() { - $http.get("my.json").then(function(response) { - var my = response.data; - angular.forEach(my.exercices[$rootScope.current_exercice].hints, function(h,hid){ - if (hint.id == h.id) { - if (hint.content != h.content) { - $rootScope.recvMy(my); - } else { - if (cbh) - $timeout.cancel(cbh); - cbh = $timeout(checkDiffHint, 750); - } - } - }); - }); - }; - checkDiffHint(); - }, function(response) { - $scope.hinterror = response.data.errmsg; - hint.submitted = false; - }); - }; - }) - .controller("SubmissionController", function($scope, $http, $rootScope, $timeout) { - $scope.sberr = null; - - var cbs; - var cbd; - - $scope.ssubmit = function() { - var resp = {} - var check = undefined - $scope.sberr = null; - - if ($scope.my.exercices[$rootScope.current_exercice].flags && Object.keys($scope.my.exercices[$rootScope.current_exercice].flags).length) - { - resp["flags"] = {}; - angular.forEach($scope.my.exercices[$rootScope.current_exercice].flags, function(flag,kid) { - if (check === undefined) check = true; - - check &= treatFlagKey(flag) || flag.found; - if (flag.soluce === undefined) { - check = undefined; - if (flag.found == null) { - resp["flags"][kid] = flag.value; - } - } - }); - } - - if ($scope.my.exercices[$rootScope.current_exercice].mcqs && Object.keys($scope.my.exercices[$rootScope.current_exercice].mcqs).length) - { - resp["mcqs"] = {}; - angular.forEach($scope.my.exercices[$rootScope.current_exercice].mcqs, function(mcq) { - var soluce = ""; - if (mcq.solved == null) { - angular.forEach(mcq.choices, function(choice, cid) { - if (mcq.soluce !== undefined) { - if (check === undefined) check = true; - - soluce += choice.value ? "t" : "f"; - } else { - if (choice.value) { - resp["mcqs"][cid] = choice.value; - if (choice.justification !== undefined) { - if (resp["justifications"] == undefined) - resp["justifications"] = {}; - treatFlagKey(choice.justification); - resp["justifications"][cid] = choice.justification.value; - } - } - } - }); - if (mcq.soluce !== undefined) { - if (mcq.soluce == b2sum(soluce)) - mcq.solved = new Date(); - check &= mcq.solved; - } - } - }); - } - - if (check !== undefined) - { - if (!$scope.my.exercices[$rootScope.current_exercice].tries) - $scope.my.exercices[$rootScope.current_exercice].tries = 0; - $scope.my.exercices[$rootScope.current_exercice].tries += 1; - $scope.my.exercices[$rootScope.current_exercice].solved_time = new Date(); - - if (check) { - $scope.my.exercices[$rootScope.current_exercice].solved = true; - } - return; - } - - $http({ url: "submit/" + $rootScope.current_exercice, method: "POST", data: resp }).then(function(response) { - $scope.messageClass = {"text-success": true}; - $scope.message = response.data.errmsg; - $scope.sberr = null; - - angular.forEach($scope.flags, function(flag,kid) { - flag.value = ""; - }); - - var checkDiff = function() { - $http.get("my.json").then(function(response) { - var my = response.data; - if ($scope.my.exercices[$rootScope.current_exercice].tries != my.exercices[$rootScope.current_exercice].tries || $scope.my.exercices[$rootScope.current_exercice].solved_time != my.exercices[$rootScope.current_exercice].solved_time) { - $scope.my.exercices[$rootScope.current_exercice].submitted = false; - $rootScope.recvMy(my); - $rootScope.refreshTeams(); - } else { - if (cbd) - $timeout.cancel(cbd); - cbd = $timeout(checkDiff, 750); - } - }); - }; - checkDiff(); - }, function(response) { - if (response.status >= 500) { - $scope.my.exercices[$rootScope.current_exercice].submitted = false; - } - $scope.messageClass = {"text-danger": true}; - $scope.sberr = "Oups !"; - $scope.message = response.data.errmsg; - }); - $scope.my.exercices[$rootScope.current_exercice].timeouted = false; - $scope.my.exercices[$rootScope.current_exercice].submitted = true; - }; - - $scope.wantchoices = function(kid) { - $scope.my.exercices[$rootScope.current_exercice].flags[kid].wcsubmitted = true; - $http({ url: "wantchoices/" + $rootScope.current_exercice, method: "POST", data: { id: Math.floor(kid) } }).then(function(response) { - var checkDiffWC = function() { - $http.get("my.json").then(function(response) { - var my = response.data; - if (my.exercices[$rootScope.current_exercice].flags[kid].choices) - $rootScope.recvMy(my); - else { - if (cbd) - $timeout.cancel(cbd); - cbd = $timeout(checkDiffWC, 750); - } - }); - }; - checkDiffWC(); - }, function(response) { - $scope.messageClass = {"text-danger": true}; - $scope.sberr = "Oups !"; - $scope.message = response.data.errmsg; - $scope.my.exercices[$rootScope.current_exercice].flags[kid].wcsubmitted = false; - }); - } - }) - .controller("IssueController", function($scope, $http, $rootScope, $routeParams) { - $rootScope.current_tag = undefined; - $rootScope.current_exercice = $routeParams.eid; - $rootScope.issues_known_responses = $rootScope.issues_nb_responses; - - $scope.issue = { - id: parseInt($routeParams.iid, 10), - id_exercice: parseInt($routeParams.eid, 10), - subject: "", - description: "", - } - - $scope.isubmit = function() { - $rootScope.sberr = ""; - if (!$scope.issue.id && $scope.issue.subject.length < 3) { - $rootScope.messageClass = {"text-danger": true}; - $rootScope.sberr = "L'objet de votre rapport d'anomalie est trop court !"; - return false; - } - - $http({ - url: "submit/issue", - method: "POST", - data: $scope.issue - }).then(function(response) { - $rootScope.messageClass = {"text-success": true}; - $rootScope.message = response.data.errmsg; - $scope.issue.subject = ""; - $scope.issue.description = ""; - setTimeout($rootScope.refreshIssues, 1750); - }, function(response) { - $rootScope.messageClass = {"text-danger": true}; - $rootScope.message = response.data.errmsg; - if (response.status != 402) { - $rootScope.sberr = "Une erreur est survenue lors de l'envoi. Veuillez réessayer dans quelques instants."; - } - }); - }; - }) - .controller("MyTeamController", function($scope, $http, $rootScope, $timeout, $location) { - $rootScope.current_theme = 0; - $rootScope.current_exercice = 0; - $rootScope.current_tag = undefined; - if ($scope.my) { - $rootScope.title = $scope.my.name; - $rootScope.authors = $scope.my.members.map(function (cur) { - return cur.firstname.capitalize() + " " + cur.lastname.capitalize(); - }).join(", "); - } - $rootScope.message = ""; - $rootScope.sberr = ""; - - $scope.notify = { - info: ($rootScope.notify_field & 1) != 1, - team: ($rootScope.notify_field & 2) != 2, - others: ($rootScope.notify_field & 4) != 4, - solve: ($rootScope.notify_field & 8) != 8, - hint: ($rootScope.notify_field & 16) != 16, - tries: ($rootScope.notify_field & 32) != 32, - rename: ($rootScope.notify_field & 64) != 64, - } - - $scope.alternotify = function() { - $rootScope.notify_field = - ($scope.notify.info?0:1) | - ($scope.notify.team?0:2) | - ($scope.notify.others?0:4) | - ($scope.notify.solve?0:8) | - ($scope.notify.hint?0:16) | - ($scope.notify.tries?0:32) | - ($scope.notify.rename?0:64); - if ($rootScope.notify_field != 0) - localStorage.notification = $rootScope.notify_field; - else - delete localStorage.notification; - $location.url("."); - } - - var cbt; - - $scope.tsubmit = function() { - $rootScope.sberr = ""; - if ($scope.my.newName.length < 1) { - $rootScope.messageClass = {"text-danger": true}; - $rootScope.sberr = "Nom d'équipe invalide: pas d'entrée."; - return false; - } - else if ($scope.my.newName.length > 32) { - $rootScope.messageClass = {"text-danger": true}; - $rootScope.sberr = "Nom d'équipe invalide: pas plus de 32 caractères."; - return false; - } - else if (!$scope.my.newName.match(/^[A-Za-z0-9 àéèêëîïôùûü_-]+$/)) { - $rootScope.messageClass = {"text-danger": true}; - $rootScope.sberr = "Nom d'équipe invalide: seuls les caractères alpha-numériques sont autorisés."; - return false; - } - - $http({ - url: "submit/name", - method: "POST", - data: {newName: $scope.my.newName} - }).then(function(response) { - $rootScope.messageClass = {"text-success": true}; - $rootScope.message = response.data.errmsg; - - var checkDiff = function() { - $http.get("my.json").then(function(response) { - if ($scope.my.name != response.data.name) { - $scope.my.newName = undefined; - $rootScope.message = ""; - $rootScope.recvMy(response.data); - $rootScope.refreshTeams(); - } else { - if (cbt) - $timeout.cancel(cbt); - cbt = $timeout(checkDiff, 750); - } - }); - }; - checkDiff(); - }, function(response) { - $rootScope.messageClass = {"text-danger": true}; - $rootScope.message = response.data.errmsg; - if (response.status != 402) { - $rootScope.sberr = "Une erreur est survenue lors de l'envoi. Veuillez réessayer dans quelques instants."; - } - }); - }; - }) - .controller("RegisterController", function($scope, $rootScope, $location, $http, $interval) { - $rootScope.current_theme = 0; - $rootScope.current_exercice = 0; - $rootScope.current_tag = undefined; - $rootScope.title = "Bienvenue au challenge forensic !"; - $rootScope.authors = null; - - $scope.form = {"teamName": "", "jTeam": 0, "members": [{}]}; - - $scope.AddMember = function() { - $scope.form.members.push({}); - } - $scope.RemoveMember = function(k) { - $scope.form.members.splice(k, 1); - } - $scope.Validate = function() { - if ($scope.form.teamName.length <= 3) { - $('#teamName').addClass("is-invalid") - return; - } else { - $('#teamName').removeClass("is-invalid") - $('#vldBtn').removeClass("input-group-btn"); - $('#vldBtn').css("display", "none"); - $('#jvldBtn').css("display", "none"); - $scope.partR = true; - $scope.partJ = false; - } - } - $scope.JValidate = function() { - if (!$scope.teams[$scope.form.jTeam]) { - $('#jTeam').addClass("is-invalid") - return; - } else { - $('#jTeam').removeClass("is-invalid") - $('#jvldBtn').removeClass("input-group-btn"); - $('#jvldBtn').css("display", "none"); - $('#vldBtn').css("display", "none"); - $scope.partR = false; - $scope.partJ = true; - } - } - - var commonsubmit = function(registration) { - // Remove empty members - $scope.form.members = $scope.form.members.filter(function(m) { - return ((m.lastname != undefined && m.lastname != "") || (m.firstname != undefined && m.firstname != "") || (m.nickname != undefined && m.nickname != "")); - }); - - if ($scope.form.members.length == 0) { - $scope.messageClass = {"text-danger": true}; - $scope.message = "Veuillez ajouter au moins un membre dans votre équipe !"; - - $scope.form.members.push({}); - return; - } - - $scope.form.jTeam = parseInt($scope.form.jTeam); - - $http({ - url: "registration", - method: "POST", - data: $scope.form - }).then(function(response) { - $scope.messageClass = {"text-success": true}; - $scope.message = response.data.errmsg; - - $interval(function(){ - $http.get("my.json").then(function(response) { - $rootScope.refresh(); - }); - }, 1500); - - }, function(response) { - $scope.messageClass = {"text-danger": true}; - if (response.data && response.data.errmsg) - $scope.message = response.data.errmsg; - else - $scope.message = "Une erreur est survenue lors de l'inscription de l'équipe. Veuillez réessayer dans quelques instants."; - }); - } - - $scope.rsubmit = function() { - if (!$scope.partR) - return $scope.Validate(); - else - return commonsubmit(true); - } - - $scope.jsubmit = function() { - if (!$scope.partJ) - return $scope.JValidate(); - else - return commonsubmit(false); - } - - $scope.$watch("my", function(my){ - if (my) - $location.url("/"); - }); - }) - .controller("TagController", function($scope, $rootScope, $routeParams, $location) { - $rootScope.current_theme = 0; - $rootScope.current_exercice = 0; - $rootScope.current_tag = $routeParams.tag; - $rootScope.title = "Challenges " + $routeParams.tag; - $rootScope.authors = ""; - - $scope.tag = $routeParams.tag; - $scope.exercices = []; - - $scope.$watch("themes", function(themes) { - $scope.exercices = []; - angular.forEach(themes, function(theme, tid) { - angular.forEach(theme.exercices, function(exercice, eid) { - if (exercice.tags.indexOf($scope.tag) >= 0) - $scope.exercices.push({"exercice": exercice, "theme": theme, "eid": eid, "tid": tid}); - }) - }) - }) - - $scope.goDefi = function() { - $location.url(this.ex.theme.urlid + "/" + this.ex.exercice.urlid); - } - - }) - .controller("RankController", function($scope, $rootScope) { - $rootScope.current_theme = 0; - $rootScope.current_exercice = 0; - $rootScope.current_tag = undefined; - $rootScope.title = "Classement général"; - $rootScope.authors = ""; - - $scope.fields = ["rank", "name", "score"]; - $scope.rankOrder = "rank"; - $scope.reverse = false; - $scope.order = function(fld) { - if ($scope.rankOrder == fld) { - $scope.reverse = !$scope.reverse; - } else { - $scope.rankOrder = fld; - $scope.reverse = (fld == "score"); - } - }; - }) - .controller("VideosController", function($scope, $rootScope) { - $rootScope.current_theme = 0; - $rootScope.current_exercice = 0; - $rootScope.current_tag = undefined; - $rootScope.title = "Vidéos de résolution"; - $rootScope.authors = ""; - }) - .controller("HomeController", function($scope, $rootScope, $location) { - $rootScope.current_theme = 0; - $rootScope.current_exercice = 0; - $rootScope.current_tag = undefined; - $rootScope.title = "Bienvenue au challenge forensic de l'ÉPITA !"; - $rootScope.authors = ""; - - $scope.goTheme = function() { - $location.url(this.theme.urlid); - } - }); - -function sready() { - if ($("#solution").val().length) { - $("#sbmt").removeClass("disabled"); - } else { - $("#sbmt").addClass("disabled"); - } -}; diff --git a/frontend/static/js/common.js b/frontend/static/js/common.js deleted file mode 120000 index c978b8f5..00000000 --- a/frontend/static/js/common.js +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/common.js \ No newline at end of file diff --git a/frontend/static/js/d3.v3.min.js b/frontend/static/js/d3.v3.min.js deleted file mode 120000 index 58337036..00000000 --- a/frontend/static/js/d3.v3.min.js +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/d3.v3.min.js \ No newline at end of file diff --git a/frontend/static/js/i18n b/frontend/static/js/i18n deleted file mode 120000 index 0bb28e47..00000000 --- a/frontend/static/js/i18n +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/i18n/ \ No newline at end of file diff --git a/frontend/static/js/jquery.min.js b/frontend/static/js/jquery.min.js deleted file mode 120000 index 3065bbb1..00000000 --- a/frontend/static/js/jquery.min.js +++ /dev/null @@ -1 +0,0 @@ -../../../admin/static/js/jquery.min.js \ No newline at end of file diff --git a/frontend/static/robots.txt b/frontend/static/robots.txt deleted file mode 100644 index 1f53798b..00000000 --- a/frontend/static/robots.txt +++ /dev/null @@ -1,2 +0,0 @@ -User-agent: * -Disallow: / diff --git a/frontend/static/views/defi-SE.html b/frontend/static/views/defi-SE.html deleted file mode 100644 index 62bc3774..00000000 --- a/frontend/static/views/defi-SE.html +++ /dev/null @@ -1,130 +0,0 @@ - - -
- Vous n'avez pas encore accès à cet exercice. -
-
-

-

-
-
- Rapporter une anomalie sur cet exercice -

{{ themes[current_theme].exercices[current_exercice].title }}

- #{{ tag }} -

-
-
-

-

- - - - b2sum : {{ hint.content }} - Débloquer cet indice vous fera perdre . - - -

-
-
-
-
-
    -
  • Gain : {{ 1 + settings.firstBlood | coeff }} prem's {{ themes[current_theme].exercices[current_exercice].curcoeff * settings.exerciceCurrentCoefficient | coeff }} bonus
  • -
  • Tenté par : (cumulant )
  • -
  • Résolu par :
  • -
-
- -
-
-
-
- NSEC – Réinitialisation de mot de passe -
-
    -
  • . Dernière tentative envoyée à {{ my.exercices[current_exercice].solved_time | date:"mediumTime" }}. .
  • -
  • Votre demande de réinitialisation de mot de passe a bien été envoyée !{{ sberr }} {{ message }}
  • -
  • Oops La requête a dépassé le délai d'attente. Vous devriez réessayer dans quelques instant…
  • -
-
-
- - -
-

{{ mcq.title }}

-
-
- - - - - -
-
-
-
- -
- -
-
-
-
- -
-
- NSEC – Réinitialisation de mot de passe -
-
-

-
-

- Vous êtes la {{ my.exercices[current_exercice].solved_rank }} équipe à avoir résolu ce défi à {{ my.exercices[current_exercice].solved_time | date:"mediumTime" }}. Vous avez marqué ! -

-

- Bravo, vous avez résolu ce défi à {{ my.exercices[current_exercice].solved_time | date:"mediumTime" }}. Vous marquez ! -

-
- Se connecter -
-
- -
-
- Solution du défi -
-
-
- -
-
-
- -
-
-
- diff --git a/frontend/static/views/defi.html b/frontend/static/views/defi.html deleted file mode 100644 index 7ea96a4f..00000000 --- a/frontend/static/views/defi.html +++ /dev/null @@ -1,149 +0,0 @@ - - -
- Vous n'avez pas encore accès à cet exercice. -
-
-

-

-
-
-

{{ themes[current_theme].exercices[current_exercice].title }}

- #{{ tag }} -

-
-
- Rapporter une anomalie sur cet exercice - Voir les éléments QA sur cet exercice -
    -
  • Gain : {{ 1 + settings.firstBlood | coeff }} prem's {{ themes[current_theme].exercices[current_exercice].curcoeff * settings.exerciceCurrentCoefficient | coeff }} bonus
  • -
  • Tenté par : (cumulant )
  • -
  • Résolu par :
  • -
-
- -
- -
-
-
- Téléchargements -
-
-

- Attention : puisqu'il s'agit de captures effectuées dans le but de découvrir si des actes malveillants ont été commis, les contenus qui sont téléchargeables peuvent contenir du contenu malveillant ! -

-
- -
- - -
- -
-
-
- Faire son rapport -
-
    -
  • . Dernière solution envoyée à {{ my.exercices[current_exercice].solved_time | date:"mediumTime" }}. .
  • -
  • Votre solution a bien été envoyée !{{ sberr }} {{ message }}
  • -
  • Oops La requête a dépassé le délai d'attente. Vous devriez réessayer dans quelques instant…
  • -
-
-
- - -
-

{{ mcq.title }}

-
-
- - - - - -
-
-
-
- -
- -
-
-
-
- -
-
- Défi réussi ! -
-
-

- Vous êtes la {{ my.exercices[current_exercice].solved_rank }} équipe à avoir résolu ce défi à {{ my.exercices[current_exercice].solved_time | date:"mediumTime" }}. Vous avez marqué ! -

-

- Bravo, vous avez résolu ce défi à {{ my.exercices[current_exercice].solved_time | date:"mediumTime" }}. Vous marquez ! -

-
-

-
- Passer au défi suivant -
-
- -
-
- Solution du défi -
-
-
- -
-
-
-
-
diff --git a/frontend/static/views/home.html b/frontend/static/views/home.html deleted file mode 100644 index f3e0b28c..00000000 --- a/frontend/static/views/home.html +++ /dev/null @@ -1,27 +0,0 @@ -
- Attention : puisqu'il s'agit de captures effectuées dans le but de découvrir si des actes malveillants ont été commis sur différents systèmes d'information, les contenus qui sont téléchargeables peuvent contenir du contenu malveillant ! -
-
- Félicitations et , {{ member.firstname | capitalize }} {{ member.lastname | capitalize }} ! vous êtes maintenant connecté à l'espace de votre équipe {{ teams[my.team_id].name }}. Vous pouvez changer ce nom dès maintenant en vous rendant sur la page de votre équipe. -
-
- Les membres de votre équipe ne sont pas encore enregistrés. Passez voir l'équipe serveur pour corriger cela. -
-
- Votre équipe n'est pas encore enregistrée. Rendez-vous sur cette page pour procéder à votre inscription. -
-
- Il semblerait qu'il y ait eu un problème lors de l'attribution de votre certificat. Veuillez vous signaler auprès de notre équipe afin de corriger ce problème. -
- -
-
-
-
-
- {{ theme.name }} -
-

-
-
-
diff --git a/frontend/static/views/issue.html b/frontend/static/views/issue.html deleted file mode 100644 index a7bb9647..00000000 --- a/frontend/static/views/issue.html +++ /dev/null @@ -1,80 +0,0 @@ - -
- - - - - - - - - - - - - - - - - - -
ObjetÉtat / PrioritéGéré parMessages
{{ issue.subject }} (challenge {{ issue.exercice }}){{ issue.state }} / {{ issue.priority }}{{ issue.assignee }} -

- Vous -  à {{ text.date | date:"mediumTime" }} : - {{ text.cnt }} -

-
- -
-
- -
-
Rapporter une anomalie sur un exercice
-
-

Rapprochez-vous d'un membre de l'équipe serveur afin d'obtenir de l'aide.

-
-
- -
-
Rapporter une anomalie sur un exercice
-
Répondre à un rapport d'anomalie
-
-

Votre rapport a bien été envoyé !{{ sberr }} {{ message }}

-
- -
- -
- -
-
- -
-
- -
- -
- -
-
- -
- -
- -
-
- -
- -
- -
-
- - -
-
-
diff --git a/frontend/static/views/rank.html b/frontend/static/views/rank.html deleted file mode 100644 index e5218d9f..00000000 --- a/frontend/static/views/rank.html +++ /dev/null @@ -1,22 +0,0 @@ -
-
- -
- - - - - - - - - - - - - -
- {{ field | rankTitle }} - -
{{ team.rank }}{{ team.name }}{{ team.score | number:0 }}
-
diff --git a/frontend/static/views/register.html b/frontend/static/views/register.html deleted file mode 100644 index f8f7c32d..00000000 --- a/frontend/static/views/register.html +++ /dev/null @@ -1,135 +0,0 @@ -
-

- Félicitations ! vous êtes maintenant authentifié auprès de notre - serveur ! -

-
- Oups, il semblerait qu'il y ait eu un problème lors de l'attribution de votre certificat. - Veuillez vous signaler auprès de notre équipe afin de corriger ce problème. -
-
- -
-

- Félicitations ! vous êtes maintenant authentifié·e auprès de - notre serveur ! -

-

- Votre équipe n'est pas encore enregistrée sur notre serveur. Afin de - pouvoir participer au challenge, nous vous remercions de bien vouloir - remplir le formulaire d'inscription suivant : -

-
- -
- -
-
- - - - -
- Veuillez indiquer un nom d'équipe valide. -
-
-
-
- -
-

- Membres d'équipe - -

-

- Chef d'équipe -

-

-
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- -
-
- -
-

- Félicitations ! vous êtes maintenant authentifié·e auprès de - notre serveur ! -

-

- Si votre équipe est déjà créée, rejoignez-là ! -

-

- Vous n'êtes pas encore enregistré·e sur notre serveur. Afin de - pouvoir participer au challenge, nous vous remercions de bien vouloir - rejoindre votre équipe : -

-
- -
- -
-
- - - - -
- Veuillez sélectionner une équipe valide. -
-
-
-
- -
-

- Vos informations -

-

-
-
- -
-
- -
-
- -
-
- -
-
- -
- -
-
diff --git a/frontend/static/views/rules.html b/frontend/static/views/rules.html deleted file mode 100644 index 347b9000..00000000 --- a/frontend/static/views/rules.html +++ /dev/null @@ -1,128 +0,0 @@ -
-
-
-

Débloquage des challenges

-

- Au début, seul le premier défi de chaque scénario est - accessible. Les défis de niveau supérieur sont débloqués en - validant celui du niveau qui le précéde. -

-
- -

Le classement

-

- Pour figurer dans le classement, il faut avoir réalisé au moins une - action : qu'elle ajoute ou retire des points. -

-

- En cas d'égalité au score, les équipes sont départagées selon leur - ordre d'arrivée à ce score. -

- -
-

Calcul des points

-

- Pour gagner des points, vous devez résoudre les défis qui vous sont - proposés. Plus le challenge est compliqué, plus il rapporte de points. -

- -

Coût des tentatives

-

- Vous disposez de 10 tentatives pour trouver la/les solutions d'un - challenge. Au delà, chaque tentative vous fait perdre une petite quantité - de points comme suit : -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nombre de tentativesCoût par tentative
0 à 100 point
11 à 20
21 à 30
31 à 40
41 à 50
......
-
-
-
-
-

- Par exemple : -

-
    -
  • À 10 tentatives, vous aurez perdu .
  • -
  • À 15 tentatives, vous aurez perdu en tout  : {{ settings.submissionCostBase }} * 5.
  • -
  • 25 tentatives vous coûteront en tout  : {{ settings.submissionCostBase }} * 10 + {{ settings.submissionCostBase * 2}} * 5.
  • -
  • 50 tentatives vous coûteront en tout  : {{ settings.submissionCostBase }} * 10 + {{ settings.submissionCostBase * 2 }} * 10 + {{ settings.submissionCostBase * 3 }} * 10 + {{ settings.submissionCostBase * 4 }} * 10.
  • -
-

- La dernière tentative (lorsque tous les flags sont bons) est comptabilisée - parmi ce nombre de tentatives. -

-
- -

Coût des indices

-

- Pour vous aider, certains défis vous proposent un ou - plusieurs indices. Ces indices vous font perdre des - points, la valeur de points perdus est indiquée pour chaque indice. -

-

- Ces points sont perdus, que vous réussissiez ou non le défi. -

-

- Vous pouvez débloquer des indices même si vous ne disposez pas de - suffisamment de points (ou même si vous n'en avez pas encore) ; dans ce - cas, votre score sera négatif. -

-
- -

Bonus

-

- Plusieurs bonus peuvent s'appliquer en même temps, dans ce cas, le calcul - du bonus est toujours effectué à partir du nombre de points initiaux du - défi. -

- -

Prem's

-

- Un bonus de +{{ settings.firstBlood * 100 }} % est attribué à la première équipe qui résout un défi. -

- -

Bonus temporaires

-

- Au cours du challenge, afin de booster les équipes ou certains challenges, - un bonus peut-être attribué si une tentative valide est envoyée durant la - période d'activité du bonus. Restez à l'écoute et observez les challenges - portant cette icône : -

-
-
-
diff --git a/frontend/static/views/tag.html b/frontend/static/views/tag.html deleted file mode 100644 index e76d4d6b..00000000 --- a/frontend/static/views/tag.html +++ /dev/null @@ -1,16 +0,0 @@ -
-
-
- -
-
diff --git a/frontend/static/views/team-edit.html b/frontend/static/views/team-edit.html deleted file mode 100644 index 9cbc44d9..00000000 --- a/frontend/static/views/team-edit.html +++ /dev/null @@ -1,103 +0,0 @@ -
-
- -
-
Votre équipe est composée de :
-
- Passez voir l'équipe serveur pour compléter ces informations. -
-
    -
  • - {{ member.firstname | capitalize }} - {{ member.nickname }} - {{ member.lastname | capitalize }} - - {{ member.company}} -
  • -
-
- -
-
Changer de nom d'équipe
-
-

Votre demande a bien été envoyée !{{ sberr }} {{ message }}

-
-
- -
-
- -
- -
-
-
-
-
-
-
- -
-
- -
-
Gestion des notifications
-
-

- Ces paramètres ne seront valable que pour votre navigateur. -

- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- - -
-
- -
-
diff --git a/frontend/static/views/theme.html b/frontend/static/views/theme.html deleted file mode 100644 index 50b0215e..00000000 --- a/frontend/static/views/theme.html +++ /dev/null @@ -1,49 +0,0 @@ -
-
-

-

-
- -
diff --git a/frontend/static/views/videos.html b/frontend/static/views/videos.html deleted file mode 100644 index 32077719..00000000 --- a/frontend/static/views/videos.html +++ /dev/null @@ -1,10 +0,0 @@ -
- -

- {{ theme.name }} -

- - {{ exercice.title }} - -
-
diff --git a/frontend/static/welcome.html b/frontend/static/welcome.html deleted file mode 100644 index 4107e50e..00000000 --- a/frontend/static/welcome.html +++ /dev/null @@ -1,185 +0,0 @@ - - - - - Challenge Forensic - - - - - - - - - - - - -
-
-

Bienvenue !

-

- - Vous n'êtes pas encore connecté en tant qu'équipe sur notre serveur. - -


-

- Bienvenue dans cette première épreuve du challenge forensic ! - Votre première activité consiste à accéder au site dédié à cet - événement ; ce guide est là pour vous y aider. -

-
-

- Important : La clef USB qui vous a été donnée - contient des fichiers permettant votre authentification auprès de - nos serveurs. Ne la laissez pas sans surveillance ! -

-
- -
-
-

Installation du certificat client

-
-
-

- Le certificat client est envoyé à notre serveur pour vous - identifier et vous authentifier. Votre certificat et votre clef - privée sont contenus sur la clef USB que nous vous avons donnée, dans - un fichier .p12, protégé avec le mot de passe qui vous a - été fourni sur papier. -

- -

- Choisissez la procédure correspondant à votre navigateur ou système - d'exploitation : -

-
    -
  1. Mozilla Firefox
  2. -
  3. Chromium/Google Chrome
  4. -
      -
    1. Sous Microsoft Windows
    2. -
    3. Sous Mac OS
    4. -
    5. Sous GNU/Linux, FreeBSD ou OpenBSD
    6. -
    -
  5. Internet Explorer/Edge
  6. -
  7. Safari
  8. -
-
- -

- Si malgré tout, vous n'arrivez pas à accéder à l'espace de votre - équipe ou si votre clef USB est illisible, n'hésitez pas à nous - solliciter ! -

-

- Bon courage ! -

- -
-
- -
-
-

Mozilla Firefox

-
-
-
    -
  1. Ouvrez la fenêtre des préférences du navigateur.
  2. -
  3. Choisissez la catégorie Vie privée et sécurité (Avancé dans les versions plus anciennes).
  4. -
  5. Sélectionnez l'onglet Certificats.
  6. -
  7. Cliquez sur Afficher les certificats.
  8. -
  9. Sélectionnez l'onglet Vos certificats.
  10. -
  11. Cliquez sur Importer… et sélectionnez votre certificat client.
  12. -
- -
-
- -
-
-

Chromium/Google Chrome

-
-
-

Sous Microsoft Windows

-

- Le navigateur utilise les paramètres du système ; suivez les - instructions concernant Internet - Explorer. -

- -

Sous Mac OS

-
    -
  1. Ouvrez le menu des préférences du navigateur.
  2. -
  3. Cliquez sur Afficher les paramètres avancés.
  4. -
  5. Dans la section HTTPS/SSL, cliquez sur Gérer les certificats. Le trousseau d'accès se lance.
  6. -
  7. Dans le menu Fichier, sélectionnez Importer des éléments… et sélectionnez votre certificat client.
  8. -
  9. Choisissez un trousseau.
  10. -
- -

Sous GNU/Linux, FreeBSD ou OpenBSD

-
    -
  1. Ouvrez le menu des préférences du navigateur.
  2. -
  3. Cliquez sur Afficher les paramètres avancés.
  4. -
  5. Dans la section HTTPS/SSL, cliquez sur Gérer les certificats.
  6. -
  7. Sélectionnez l'onglet Vos certificats.
  8. -
  9. Cliquez sur Importer… et sélectionnez votre certificat client.
  10. -
-
-
- -
-
-

Internet Explorer

-
-
-
    -
  1. Double-cliquez sur le fichier .p12 présent sur votre clef USB. L'assistant d'importation du certificat apparaît.
  2. -
  3. Cliquez sur Suivant.
  4. -
  5. Cliquez sur Suivant.
  6. -
  7. Entrez le mot de passe fourni sur papier puis cliquez sur Suivant.
  8. -
  9. Cliquez sur Suivant (le certificat sera automatiquement placé dans le magasin Personnel).
  10. -
  11. Cliquez sur Terminer.
  12. -
- -

- Selon votre version de Windows, votre système peut ensuite vous - demander de définir un mot de passe pour protéger ce certificat. -

- -

- Microsoft Internet Explorer : Aucune version - de Microsoft Internet Explorer (nom d'« Internet Explorer » - jusqu'à sa version 9 comprise) n'est supportée par notre serveur. -

-
-
- -
-
-

Safari

-
-
-
    -
  1. Double-cliquez sur le fichier .p12 présent sur votre clef USB.
  2. -
  3. Entrez le mot de passe fourni sur papier puis cliquez sur Suivant.
  4. -
-
-
-
- - - diff --git a/frontend/static/welcome.json b/frontend/static/welcome.json deleted file mode 100644 index 15f5719b..00000000 --- a/frontend/static/welcome.json +++ /dev/null @@ -1 +0,0 @@ -{"errmsg": "Vous n'avez pas les droits nécessaires pour effectuer cette action."} diff --git a/htdocs-frontend b/htdocs-frontend deleted file mode 120000 index 4346ea21..00000000 --- a/htdocs-frontend +++ /dev/null @@ -1 +0,0 @@ -frontend/static/ \ No newline at end of file diff --git a/qa/static/css/fic.css b/qa/static/css/fic.css deleted file mode 120000 index 5f8e4077..00000000 --- a/qa/static/css/fic.css +++ /dev/null @@ -1 +0,0 @@ -../../../frontend/static/css/fic.css \ No newline at end of file diff --git a/qa/static/css/fic.css b/qa/static/css/fic.css new file mode 100644 index 00000000..fc12b00d --- /dev/null +++ b/qa/static/css/fic.css @@ -0,0 +1,387 @@ +@font-face { + font-family: "Linux Biolinum"; + src: url('../fonts/LinBiolinum_R.woff') format('woff'); +} +@font-face { + font-family: "Linux Biolinum"; + src: url('../fonts/LinBiolinum_RB.woff') format('woff'); + font-weight: bold; +} +@font-face { + font-family: "Linux Biolinum"; + src: url('../fonts/LinBiolinum_RI.woff') format('woff'); + font-style: italic; +} +@font-face { + font-family: 'FantasqueSansMonoRegular'; + src: url('../fonts/FantasqueSansMono-Regular.woff') format('woff'); + font-weight: normal; + font-style: normal; +} + +b, strong { + font-weight: bold; +} + +[ng-cloak] { + display:none !important; +} + +.popover.bs-popover-left .arrow::after { + border-left-color: #7A8288; +} + +body { + overflow-y: scroll; +} + +.bg-public { + background-image: url('../img/logo-epita-bw.png'); + background-repeat: no-repeat; + background-size: contain; + height: 100vh; +} + +.bg-public .carousel h3 { + font-size: 1.5rem; + line-height: 1.1rem; +} + +.flag { + font-family: 'FantasqueSansMonoRegular', monospace; +} + +.card-img-top { + background-position: center; + background-repeat: no-repeat; + background-size: cover; +} +.theme-card { + height: 10rem; +} + +.beautiful { + font-family: "Linux Biolinum",Helvetica,Arial,sans-serif; +} +.beautiful ol { + font-size: 133%; +} +.beautiful ol ol { + font-size: 90%; +} + +.text-bold { + font-weight: bolder; +} +.text-indent p { + text-indent: 1em; +} + +.navbar { + margin-bottom: 0; +} +.niceborder { + border-bottom: 5px #4eaee6 solid; +} +.navbar img { + margin: 3px auto; + height: 100px; +} +.navbar .clock { + font-size: 70px; +} +.clock:not(.expired):not(.wait) .point, .clock.expired { + transition: color text-shadow 1s; + position: relative; + animation: clockanim 1s ease infinite; + -moz-animation: clockanim 1s ease infinite; + -webkit-animation: clockanim 1s ease infinite; +} +.clock.wait .point { + transition: color text-shadow 1s; + position: relative; + animation: clockwait 1s ease infinite; + -moz-animation: clockwait 1s ease infinite; + -webkit-animation: clockwait 1s ease infinite; +} +.end { + color: #e64143; +} +.point { + text-shadow: 0 0 20px #4eaee6; +} +.end .point { + text-shadow: 0 0 20px #e64143; +} +@-webkit-keyframes clockanim { + 0% { opacity: 1.0; } + 50% { opacity: 0; } + 100% { opacity: 1.0; }; +} +@-moz-keyframes clockanim { + 0% { opacity: 1.0; } + 50% { opacity: 0; } + 100% { opacity: 1.0; }; +} +keyframes clockanim { + 0% { opacity: 1.0; } + 50% { opacity: 0; } + 100% { opacity: 1.0; }; +} +@-webkit-keyframes clockwait { + 0% { text-shadow: 0 0 20px #A6D6F2; } + 50% { text-shadow: 0 0 2px #A6D6F2; } + 100% { text-shadow: 0 0 20px #A6D6F2; } +} +@-moz-keyframes clockwait { + 0% { text-shadow: 0 0 20px #A6D6F2; } + 50% { text-shadow: 0 0 2px #A6D6F2; } + 100% { text-shadow: 0 0 20px #A6D6F2; } +} +keyframes clockwait { + 0% { text-shadow: 0 0 20px #A6D6F2; } + 50% { text-shadow: 0 0 2px #A6D6F2; } + 100% { text-shadow: 0 0 20px #A6D6F2; } +} + +samp.cksum { + overflow-x: hidden; + text-overflow: ellipsis; + max-width: 16vw; + display: inline-block; + vertical-align: middle; + word-wrap: normal; +} + +h1 small.authors { + float: right; + font-style: italic; + font-size: 42%; +} +.lead small.authors { + color: #7a8288; + font-style: italic; +} + +a.badge:hover { + text-decoration: none; +} +.teamname { + -webkit-filter: invert(100%); + filter: invert(100%); +} +a:hover .teamname { + text-shadow: 0px 0px 10px #888888; +} + +.authors a { + color: #3A3F44; +} + +.heading { + font-style: italic; + margin-top: -7px; + text-align: right; +} + +#eventsList { + overflow:hidden; + max-height: 90vh; +} + +.swap-animation .alert { + margin-bottom: 0px; +} +.swap-animation { + margin-bottom: 0.5rem; + max-height: 30vh; + transition: max-height 1.0s linear,opacity 1.0s linear,transform 0.5s linear; +} +.swap-animation.ng-enter { + transform: translateY(-25vh); + max-height: 0vh; +} +.swap-animation.ng-enter-active { + opacity: 1; + transform: translateY(0px); + max-height: 30vh; +} +.swap-animation.ng-leave { + opacity: 1; + max-height: 30vh; + transform: translateY(0px); +} +.swap-animation.ng-leave-active { + opacity: 0; + transform: translateX(120vw); + max-height: 0vh; +} + +.carousel-indicators { + bottom: -10px; +} +.carousel-caption { + padding: 0; + position: static; +} +.carousel .table { + margin-bottom: 0; +} +.carousel .table-sm td { + padding: 2px; +} + +.table th.frotated { + border: 0; +} +.table th.rotated { + height: 100px; + width: 40px; + min-width: 40px; + max-width: 40px; + position: relative; + vertical-align: bottom; + padding: 0; + font-size: 12px; + line-height: 0.9; + border: 0; +} + +th.rotated > div { + position: relative; + top: 0px; + left: -50px; + height: 100%; + transform: skew(45deg,0deg); + overflow: hidden; + border: 1px solid #000; +} +th.rotated div span { + transform: skew(-45deg,0deg) rotate(45deg); + position: absolute; + bottom: 40px; + left: -35px; + display: inline-block; + width: 110px; + text-align: left; + text-overflow: ellipsis; +} + +ul.list-inline li { + display: inline; +} +ul.list-inline li:not(:last-child)::after { + content: " ● " +} + +.breadcrumb-item + .breadcrumb-item::before { + content: ">" +} + +.excard { + transition: transform 250ms; +} +.excard:hover { + transform: scale(1.07); +} + +#tagsMenu + .dropdown-menu div { + overflow-y: auto; + max-height: calc(66vh - 100px); +} + +blockquote { + border-left: solid 2px; + margin-left: 1em; + padding-left: 1em; +} + +.jumbotron img { + margin-left: -1em; + padding-left: 2em; + padding-right: 2em; +} +img { + max-width: 100%; +} + +#eventsList .card { + border-left-color: rgba(0,0,0,.125) !important; + border-right-color: rgba(0,0,0,.125) !important; + border-top-color: rgba(0,0,0,.125) !important; +} + +.bg-public .card-body { + padding:1rem; + padding-bottom:0; +} + +#themesSummary .card-body { + padding:0; +} +#themesSummary h3 { + background: rgba(64,64,64,0.66); + border-radius: 2px; + padding: 0.5rem; + margin-left: 0.5rem; + margin-right: 0.5rem; + margin-top: -40px; +} +#themesSummary p { + font-size: 90%; + margin: 0.2rem; + text-indent: 0.6em; +} + +.card-sm .card-header, .card-sm .card-footer { + padding: 0.2rem 0.75rem; +} +.card-sm .card-body { + padding: 0.4rem 0.75rem; +} +.card-sm .card-body.text-indent p { + text-indent: 0.4rem; +} + +.carousel-item, .carousel-caption { + height: inherit; +} + +.page-header { + background-size: cover; + background-position: center; + margin-bottom: -15rem; +} +.page-header h1 { + text-shadow: 0 0 15px rgba(255,255,255,0.95), 0 0 5px rgb(255,255,255) +} +.page-header h1, .page-header h1 a { + color: black; +} +.page-header h1 a:hover { + text-decoration: none; +} +.page-header h2 { + font-size: 100%; + text-shadow: 1px 1px 1px rgba(0,0,0,0.9) +} +.page-header h2, .page-header h2 a { + color: #4eaee6; +} +.page-header h1 { + padding-top: 4rem; + text-align: center; +} +.page-header h2 { + padding-bottom: 14rem; + text-align: center; +} + +.page-header .headerfade { + background: linear-gradient(transparent 0%, rgb(233,236,239) 100%); + height: 3rem; +} + +a.list-group-item:hover { + text-decoration: none; +} diff --git a/qa/static/css/glyphicon.css b/qa/static/css/glyphicon.css index 6d65cb92..14cd8c56 120000 --- a/qa/static/css/glyphicon.css +++ b/qa/static/css/glyphicon.css @@ -1 +1 @@ -../../../frontend/static/css/glyphicon.css \ No newline at end of file +../../../admin/static/css/glyphicon.css \ No newline at end of file diff --git a/qa/static/favicon.ico b/qa/static/favicon.ico index 060d10ef..b92aceba 120000 --- a/qa/static/favicon.ico +++ b/qa/static/favicon.ico @@ -1 +1 @@ -../../frontend/static/favicon.ico \ No newline at end of file +../../frontend/ui/static/favicon.ico \ No newline at end of file diff --git a/qa/static/fonts b/qa/static/fonts index 5431051e..0ef2f8d8 120000 --- a/qa/static/fonts +++ b/qa/static/fonts @@ -1 +1 @@ -../../frontend/static/fonts/ \ No newline at end of file +../../admin/static/fonts/ \ No newline at end of file diff --git a/qa/static/img/comcyber.png b/qa/static/img/comcyber.png deleted file mode 120000 index 0df83a18..00000000 --- a/qa/static/img/comcyber.png +++ /dev/null @@ -1 +0,0 @@ -../../../frontend/static/img/comcyber.png \ No newline at end of file diff --git a/qa/static/img/epita.png b/qa/static/img/epita.png deleted file mode 120000 index 110ea62c..00000000 --- a/qa/static/img/epita.png +++ /dev/null @@ -1 +0,0 @@ -../../../frontend/static/img/epita.png \ No newline at end of file diff --git a/qa/static/img/fic.png b/qa/static/img/fic.png index 00ba2748..838a2cc9 120000 --- a/qa/static/img/fic.png +++ b/qa/static/img/fic.png @@ -1 +1 @@ -../../../frontend/static/img/fic.png \ No newline at end of file +../../../frontend/ui/static/img/fic.png \ No newline at end of file diff --git a/qa/static/img/srs.png b/qa/static/img/srs.png deleted file mode 120000 index a599744d..00000000 --- a/qa/static/img/srs.png +++ /dev/null @@ -1 +0,0 @@ -../../../frontend/static/img/srs.png \ No newline at end of file diff --git a/qa/static/js/angular-route.min.js b/qa/static/js/angular-route.min.js index 407db24d..ae04a29f 120000 --- a/qa/static/js/angular-route.min.js +++ b/qa/static/js/angular-route.min.js @@ -1 +1 @@ -../../../frontend/static/js/angular-route.min.js \ No newline at end of file +../../../admin/static/js/angular-route.min.js \ No newline at end of file diff --git a/qa/static/js/angular-sanitize.min.js b/qa/static/js/angular-sanitize.min.js index 7e14fe0a..d0410452 120000 --- a/qa/static/js/angular-sanitize.min.js +++ b/qa/static/js/angular-sanitize.min.js @@ -1 +1 @@ -../../../frontend/static/js/angular-sanitize.min.js \ No newline at end of file +../../../admin/static/js/angular-sanitize.min.js \ No newline at end of file diff --git a/qa/static/js/angular.min.js b/qa/static/js/angular.min.js index 86b88964..5eba27d2 120000 --- a/qa/static/js/angular.min.js +++ b/qa/static/js/angular.min.js @@ -1 +1 @@ -../../../frontend/static/js/angular.min.js \ No newline at end of file +../../../admin/static/js/angular.min.js \ No newline at end of file diff --git a/qa/static/js/bootstrap.min.js b/qa/static/js/bootstrap.min.js index d074c9db..47696515 120000 --- a/qa/static/js/bootstrap.min.js +++ b/qa/static/js/bootstrap.min.js @@ -1 +1 @@ -../../../frontend/static/js/bootstrap.min.js \ No newline at end of file +../../../admin/static/js/bootstrap.min.js \ No newline at end of file diff --git a/qa/static/js/common.js b/qa/static/js/common.js index 4e3fce35..c978b8f5 120000 --- a/qa/static/js/common.js +++ b/qa/static/js/common.js @@ -1 +1 @@ -../../../frontend/static/js/common.js \ No newline at end of file +../../../admin/static/js/common.js \ No newline at end of file diff --git a/qa/static/js/d3.v3.min.js b/qa/static/js/d3.v3.min.js index d2407e47..58337036 120000 --- a/qa/static/js/d3.v3.min.js +++ b/qa/static/js/d3.v3.min.js @@ -1 +1 @@ -../../../frontend/static/js/d3.v3.min.js \ No newline at end of file +../../../admin/static/js/d3.v3.min.js \ No newline at end of file diff --git a/qa/static/js/i18n b/qa/static/js/i18n index dab94408..0bb28e47 120000 --- a/qa/static/js/i18n +++ b/qa/static/js/i18n @@ -1 +1 @@ -../../../frontend/static/js/i18n/ \ No newline at end of file +../../../admin/static/js/i18n/ \ No newline at end of file diff --git a/qa/static/js/jquery.min.js b/qa/static/js/jquery.min.js index 022463c1..3065bbb1 120000 --- a/qa/static/js/jquery.min.js +++ b/qa/static/js/jquery.min.js @@ -1 +1 @@ -../../../frontend/static/js/jquery.min.js \ No newline at end of file +../../../admin/static/js/jquery.min.js \ No newline at end of file