aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoelHMikael <53561102+JoelHMikael@users.noreply.github.com>2022-01-18 18:57:53 +0200
committerGitHub <noreply@github.com>2022-01-18 18:57:53 +0200
commita259127b9fa0349c73340c882f6525f27f7caaed (patch)
treead18984d3031ce6bc7ccb549415c58d77672a53f
parent8f711465194f6779271825bdb2413658880f4c18 (diff)
parentedf044c1e1e0c751229549dd9d14062b230149be (diff)
downloadLYLLRuoka-a259127b9fa0349c73340c882f6525f27f7caaed.tar.gz
LYLLRuoka-a259127b9fa0349c73340c882f6525f27f7caaed.zip
Merge pull request #1 from JoelHMikael/MYSQLDB
Mysqldb
-rw-r--r--404/index.css3
-rw-r--r--404/index.html16
-rw-r--r--Cont/404/index.css3
-rw-r--r--Cont/404/index.html26
-rw-r--r--Cont/Images/back.pngbin0 -> 3528 bytes
-rw-r--r--Cont/Images/help.pngbin0 -> 2347 bytes
-rw-r--r--Cont/devs/index.css18
-rw-r--r--Cont/devs/index.html26
-rw-r--r--Cont/index.css181
-rw-r--r--Cont/index.html63
-rw-r--r--Cont/non-main.css26
-rw-r--r--README.md29
-rw-r--r--database.js57
-rw-r--r--dbparse.js260
-rw-r--r--index.css66
-rw-r--r--index.html55
-rw-r--r--open.js16
-rw-r--r--package.json29
-rw-r--r--parse.js285
-rw-r--r--parseClasses.js69
-rw-r--r--ruokalista.txt7
-rw-r--r--scrape.js14
-rw-r--r--server.js222
-rw-r--r--update.js21
24 files changed, 990 insertions, 502 deletions
diff --git a/404/index.css b/404/index.css
deleted file mode 100644
index ceb8016..0000000
--- a/404/index.css
+++ /dev/null
@@ -1,3 +0,0 @@
-body {
- padding-top: calc(30vh);
-}
diff --git a/404/index.html b/404/index.html
deleted file mode 100644
index e6771ad..0000000
--- a/404/index.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<html>
- <head>
- <meta charset="utf-8">
- <title>Page not found</title>
- <link href="/index.css" rel="stylesheet" type="text/css">
- <link href="/404/index.css" rel="stylesheet" type="text/css">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- </head>
- <body>
- <div class="float-block">
- <h1>404: sivua \(path\) ei löytynyt.</h1>
- <p>Voi myös olla, että sinulla ei ole oikeuksia sivun tarkasteluun tai että palvelimella on tapahtunut virhe. Jos epäilet jälkimmäistä, otathan yhteyttä joel.kronqvist@edu.lohja.fi</p>
- </div>
- </body>
-</html>
diff --git a/Cont/404/index.css b/Cont/404/index.css
new file mode 100644
index 0000000..664d7fb
--- /dev/null
+++ b/Cont/404/index.css
@@ -0,0 +1,3 @@
+body {
+ padding-top: 30vh;
+}
diff --git a/Cont/404/index.html b/Cont/404/index.html
new file mode 100644
index 0000000..5b01684
--- /dev/null
+++ b/Cont/404/index.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html lang="fi">
+ <head>
+ <meta charset="utf-8">
+ <title>Page not found</title>
+ <link href="/index.css" rel="stylesheet" type="text/css">
+ <link href="/non-main.css" rel="stylesheet" type="text/css">
+ <link href="/404/index.css" rel="stylesheet" type="text/css">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ </head>
+ <body>
+ <div class="float-block">
+ <h1>404: sivua \(path\) ei löytynyt.</h1>
+ <p>Voi myös olla, että palvelimella on tapahtunut virhe. Jos epäilet jälkimmäistä, otathan yhteyttä palvelusta vastaaviin henkilöihin.</p>
+ </div>
+
+ <a class="back" href="/"><img src="/Images/back.png" alt="Takaisin etusivulle"></a>
+
+ <footer>
+ <a href="https://www.github.com/JoelHMikael/FoodJS">Lähdekoodi</a>
+ <span>|</span>
+ <a href="/devs">Ota yhteyttä</a>
+ </footer>
+
+ </body>
+</html>
diff --git a/Cont/Images/back.png b/Cont/Images/back.png
new file mode 100644
index 0000000..01b9bc7
--- /dev/null
+++ b/Cont/Images/back.png
Binary files differ
diff --git a/Cont/Images/help.png b/Cont/Images/help.png
new file mode 100644
index 0000000..51d84df
--- /dev/null
+++ b/Cont/Images/help.png
Binary files differ
diff --git a/Cont/devs/index.css b/Cont/devs/index.css
new file mode 100644
index 0000000..1cce621
--- /dev/null
+++ b/Cont/devs/index.css
@@ -0,0 +1,18 @@
+.column {
+ display: inline-block;
+ padding: 0;
+ margin: .5em;
+ box-sizing: border-box;
+ vertical-align: middle;
+ overflow-wrap: break-word;
+ width: 100%;
+}
+
+
+@media screen and (min-width: 700px)
+{
+ .column {
+ width: calc(33% - 2em);
+ }
+}
+
diff --git a/Cont/devs/index.html b/Cont/devs/index.html
new file mode 100644
index 0000000..69116c6
--- /dev/null
+++ b/Cont/devs/index.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html lang="fi">
+ <head>
+ <meta charset="utf-8">
+ <title>Developers</title>
+ <link href="/index.css" rel="stylesheet" type="text/css">
+ <link href="/non-main.css" rel="stylesheet" type="text/css">
+ <link href="/devs/index.css" rel="stylesheet" type="text/css">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ </head>
+ <body>
+ <h1 class="shadow">Sivun kehittäjät</h1>
+ <p>Jos muokkaat/lisäät jotain tähän projektiin, voit pyytää serverin ylläpidosta vastaavilta, että nimesi lisätään tietokantaan.</p>
+
+ \(devs\)
+
+ <a class="back" href="/"><img src="/Images/back.png" alt="Takaisin etusivulle"></a>
+
+ <footer>
+ <a href="https://www.github.com/JoelHMikael/FoodJS">Lähdekoodi</a>
+ <span>|</span>
+ <a href="/devs">Ota yhteyttä</a>
+ </footer>
+
+ </body>
+</html>
diff --git a/Cont/index.css b/Cont/index.css
new file mode 100644
index 0000000..80e5dc6
--- /dev/null
+++ b/Cont/index.css
@@ -0,0 +1,181 @@
+* {
+ margin: 0;
+ padding: 0;
+ text-align: center;
+ --info-width: 13em;
+ --fadetime: .3s;
+ --box-bg: #222;
+ --box-shadow: black;
+}
+
+/*** bg etc... ***/
+body {
+ background: #444;
+ color: white;
+ padding: 1em;
+ margin-bottom: 3em; /* for the footer */
+
+ font-family: verdana, sans-serif;
+}
+
+.shadow {
+ text-shadow: .124em .125em black;
+}
+
+/*** dual layout ***/
+#foodshift, #food {
+ width: 100%;
+ box-sizing: border-box;
+ display: inline-block;
+ vertical-align: top;
+}
+
+/*** responsivity ***/
+@media screen and (min-width: 700px)
+{
+ #foodshift
+ {
+ width: 58%;
+ }
+ #food {
+ width: 41%;
+ }
+}
+
+/*** the ui blocks ***/
+.float-block {
+ display: inline-block;
+ margin: 1em;
+ padding: 1em;
+
+ background: var(--box-bg);
+ border: 0 solid black;
+ border-radius: 5px;
+}
+
+.float-block p, .float-block h1, .float-block h2, .float-block label, .float-block select, .float-block input {
+ margin: .5em;
+}
+
+/*** the input field & choose ***/
+#input[type="text"], select {
+ background-color: white;
+}
+
+/*** the send-button ***/
+#send {
+ background: blue;
+ padding: .5em;
+ margin: .5em;
+ font-weight: bold;
+
+ position: relative;
+ right: .125em;
+ bottom: .125em;
+}
+
+#send:hover {
+ right: .25em;
+ bottom: .25em;
+ box-shadow: .25em .25em;
+}
+
+/*** Footer ***/
+footer {
+ position: fixed;
+ top: calc(100% - 3em);
+ left: 0;
+
+ width: 100%;
+ margin: 0;
+ padding: 1em;
+ line-height: 1em;
+ box-sizing: border-box;
+
+ background-color: #0d0d0d;
+}
+
+footer > a {
+ color: #b3b3b3;
+}
+
+/*** The shadowed elements ***/
+.highlight {
+ border: 1px solid black;
+ border-radius: 5px;
+ box-shadow: .125em .125em var(--box-shadow);
+}
+
+/*** the info buttons & their animations ***/
+img.info:hover {
+ filter: drop-shadow(.125rem .125rem 0 black);
+ transform: translate(-0.125rem, -0.125rem);
+}
+img.info {
+ width: 1em;
+ height: 1em;
+ vertical-align: middle;
+ filter: drop-shadow(.0625rem .0625rem 0 black);
+ transform: translate(-0.0625rem, -0.0625rem);
+}
+
+img.info + span {
+ position: relative;
+ vertical-align: middle;
+ left: -1em;
+ animation: hide-at-start calc(var(--fadetime) * 1.1); /* this hides the flash of the child element in the start */
+}
+@keyframes hide-at-start {
+ 0% { bottom: 200vh; }
+ 99%{ bottom: 200vh; }
+ 100%{ bottom: 0; }
+}
+
+p.infoblock {
+ display: inline;
+ position: absolute;
+ top: 1.5em;
+ left: calc(var(--info-width) * -1 - 1em);
+ width: var(--info-width);
+ z-index: 1;
+
+ background-color: var(--box-bg);
+ --box-shadow: #111;
+ margin: 0;
+ padding: .5em;
+ border-radius: 5px 0 5px 5px;
+
+ animation-name: fade-out;
+ animation-duration: var(--fadetime);
+ visibility: hidden;
+ opacity: 0;
+}
+
+img.info:hover + span > p.infoblock {
+ animation-name: fade-in;
+ animation-duration: var(--fadetime);
+ visibility: visible;
+ opacity: 1;
+}
+
+@keyframes fade-in {
+ 0% {
+ visibility: hidden;
+ opacity: 0;
+ }
+ 100% {
+ opacity: 1;
+ visibility: visible;
+ }
+}
+
+@keyframes fade-out {
+ 0% {
+ opacity: 1;
+ visibility: visible;
+ }
+ 100% {
+ opacity: 0;
+ visibility: hidden;
+ }
+}
diff --git a/Cont/index.html b/Cont/index.html
new file mode 100644
index 0000000..95dcb32
--- /dev/null
+++ b/Cont/index.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<html lang="fi">
+ <head>
+ <meta charset="utf-8">
+ <title>LYLL-ruokailuvuoro</title>
+ <link href="/index.css" rel="stylesheet" type="text/css">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ </head>
+ <body>
+ <header>
+ <h1 class="shadow">LYLL-ruoka</h1>
+ </header>
+
+ <br>
+
+ <main>
+ <div id="foodshift">
+ <form method="GET" class="float-block">
+ <label for="index" class="shadow">Opettaja, kurssi tai luokka:</label>
+ <br>
+ <input type="text" name="index" placeholder="\(example-input\)">
+ <img src="/Images/help.png" class="info" alt="Siis häh?">
+ <span><p class="infoblock highlight">Syötä tähän kenttään yhdeltätoista alkavan tuntisi opettaja, kurssikoodi tai luokka. Älä syötä useampaa edellä mainituista, yksi on tarpeeksi.</p></span>
+ <br>
+ <label for="day">Päivä:</label>
+ <br>
+ <select name="day">
+ <option value="0">ma</option>
+ <option value="1">ti</option>
+ <option value="2">ke</option>
+ <option value="3">to</option>
+ <option value="4">pe</option>
+ <option value="5" disabled>la</option>
+ <option value="6" disabled>su</option>
+ </select>
+ <br>
+ <input type="submit" id="send" class="highlight" value="Löydä vuoro">
+ </form>
+
+ <br>
+
+ <div id="shift-result" class="float-block">
+ <h2 class="shadow">\(index-type\) \(shift-header\) ruokailuvuoro \(day\):</h2>
+ <p>\(shift\)</p>
+ </div>
+ </div>
+
+
+ <div id="food">
+ <div class="float-block">
+ <h2 class="shadow">\(food-header\)</h2>
+ <p>\(food\)</p>
+ </div>
+ </div>
+ </main>
+
+ <footer>
+ <a href="https://www.github.com/JoelHMikael/FoodJS">Lähdekoodi</a>
+ <span>|</span>
+ <a href="/devs">Ota yhteyttä</a>
+ </footer>
+ </body>
+</html>
diff --git a/Cont/non-main.css b/Cont/non-main.css
new file mode 100644
index 0000000..d8003ef
--- /dev/null
+++ b/Cont/non-main.css
@@ -0,0 +1,26 @@
+.back {
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.back > * {
+}
+
+.back > img {
+ width: 4rem;
+ height: 4rem;
+ margin: 1rem;
+ filter: drop-shadow(.125rem .125rem 0 black);
+ position: relative;
+ bottom: .125rem;
+ right: .125rem;
+ vertical-align: middle;
+ display: inline;
+}
+
+.back > img:hover {
+ filter: drop-shadow(.20rem .20rem 0 black);
+ bottom: .20rem;
+ right: .20rem;
+}
diff --git a/README.md b/README.md
index 3f86b3f..5ac073c 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,30 @@
# Food-app
-This is a site under development that tells you when your lesson is, when your lunch break is and what the school lunch of the day is.
+Readme coming soon!
## Setup
-You can add a link to this site to your startup folder to always get to know when your lunch break is when you turn on your computer in school.
+If you want to set up the server, you will have to get a SSL certificate or generate one yourself. If you want to run a dedicated server that can update, you also need to add the cron jobs from crontab\_add. You must create a MySQL DB and give its login info in ../dblogin.txt. The database should have the following tables set up:
+
+CREATE TABLE shiftnames (
+ day INT,
+ id INT,
+ name VARCHAR(128) NOT NULL,
+ PRIMARY KEY (day, id)
+);
+CREATE TABLE classes (
+ course VARCHAR(6) PRIMARY KEY,
+ class VARCHAR(4)
+);
+CREATE TABLE shifts (
+ day INT,
+ shift INT,
+ course VARCHAR(6),
+ teacher VARCHAR(4),
+ class VARCHAR(4),
+ PRIMARY KEY (day, course)
+);
+CREATE TABLE devs (
+ id INT PRIMARY KEY AUTO_INCREMENT,
+ name VARCHAR(30) NOT NULL,
+ description VARCHAR(128),
+ contact VARCHAR(40)
+);
diff --git a/database.js b/database.js
new file mode 100644
index 0000000..30396fe
--- /dev/null
+++ b/database.js
@@ -0,0 +1,57 @@
+const mysql = require("mysql2");
+
+class Database
+{
+ constructor(credentials)
+ {
+ this.connection = mysql.createConnection(credentials);
+ }
+ query(query, values)
+ {
+ return new Promise((resolve, reject) =>
+ {
+ this.connection.query(query, values, (err, res, fields) =>
+ {
+ if (err) reject(err);
+ resolve(res);
+ });
+ });
+ }
+ execute(query, values)
+ {
+ return new Promise((resolve, reject) =>
+ {
+ this.connection.execute(query, values, (err, res, fields) =>
+ {
+ if (err) reject(err);
+ resolve(res);
+ });
+ });
+
+ }
+ query_raw(query)
+ {
+ return new Promise((resolve, reject) =>
+ {
+ this.connection.query(query, (err, res, fields) =>
+ {
+ if (err)
+ reject(err)
+ resolve(res);
+ });
+ })
+ }
+ close()
+ {
+ return new Promise((resolve, reject) =>
+ {
+ this.connection.end(err =>
+ {
+ if (err) reject(err);
+ resolve();
+ });
+ });
+ }
+}
+
+exports.Database = Database;
diff --git a/dbparse.js b/dbparse.js
new file mode 100644
index 0000000..2be3f96
--- /dev/null
+++ b/dbparse.js
@@ -0,0 +1,260 @@
+
+
+// String searching
+function getCharAmount(s, c)
+{
+ let n = 0;
+ for (let c_i = 0; c_i < s.length; c_i++)
+ {
+ n += +(s[c_i] === c);
+ }
+ return n;
+}
+function getNextChar(s, c, i = 0)
+{
+ if (!(Number.isInteger(i) && (i >= 0)))
+ return -1;
+ for (; i < s.length; i++)
+ {
+ if (s[i] === c)
+ return i;
+ }
+ return -1;
+}
+function getNextLine(s, i)
+{
+ i = getNextChar(s, "\n", i);
+ i += +(i !== -1) * 1;
+ return i;
+}
+function getToLineStartingWith(s, ss, start = 0)
+{
+ if (!(Number.isInteger(start) && (start >= 0)))
+ return -1
+
+ let i = start;
+ do
+ {
+ if (s.substring(i, i + ss.length) === ss)
+ break;
+ i = getNextLine(s, i);
+ } while(i !== -1)
+
+ return i;
+}
+function findExpression(data, expr, start = 0)
+{
+ if (start == -1)
+ return -1;
+ if (!(Number.isInteger(start) && (start >= 0)))
+ throw new TypeError("Start must be a positive integer!");
+ if (typeof expr !== "string")
+ return -1;
+ while ((data.substring(start, start + expr.length) !== expr) && (start + expr.length < data.length))
+ start++;
+ if (data.substring(start, start + expr.length) !== expr)
+ return -1;
+ return start;
+}
+
+// Normalizing
+function parseCluttered(s)
+{
+ if (!(typeof s === "string"))
+ return "";
+ return s.replaceAll(".", "").replaceAll(" ", "").toUpperCase();
+}
+
+// Class parsing
+async function writeClasses(classData, DB)
+{
+ classData = parseCluttered(classData) + "\n"; // newline so that loop can find last value
+ await DB.query_raw("DELETE FROM classes");
+ // parse data to dict
+ let i = 0;
+ while (i < classData.length)
+ {
+ let separator = getNextChar(classData, ":", i);
+ if (separator === -1)
+ break;
+ let lineEnd = getNextChar(classData, "\n", i);
+ let key = classData.substring(i, separator);
+ let val = classData.substring(separator + 1, lineEnd);
+ i = lineEnd + 1;
+ let res = await DB.execute("INSERT INTO classes VALUES (?, ?)", [key, val]);
+ }
+}
+
+async function parseLine(data, day, shift, DB)
+{
+ // "preprocessing"
+ let i = 0;
+ let courses = [];
+ let teachers = [];
+ const toRemove = " ja KAHDEN TUTKINNON OPINNOT 1., 2. ja 3. VUOSITASON RYHMÄT ";
+ if (data.substring(data.length - toRemove.length, data.length) === toRemove)
+ data = data.substring(0, data.length - toRemove.length);
+ data = data.replaceAll(",", "").replaceAll("ja ", "").replaceAll(" + ", "+");
+
+ while (i < data.length)
+ {
+ if (data[i] === "+")
+ {
+
+ nextSpace = getNextChar(data, " ", i);
+ let nextNextSpace = getNextChar(data, " ", nextSpace + 1);
+ if (nextNextSpace === -1)
+ nextNextSpace = data.length;
+ data = `${data.substring(0, i)} ${data.substring(nextSpace + 1, nextNextSpace)} ${data.substring(i + 1, data.length)}`;
+ i = nextNextSpace - 1;
+ }
+ i++;
+ }
+ nextSpace = 0;
+ i = 0;
+
+ const getElement = list =>
+ {
+ nextSpace = getNextChar(data, " ", i);
+ if (nextSpace === -1)
+ nextSpace = data.length;
+ list.push(data.substring(i, nextSpace));
+ i = nextSpace + 1;
+ }
+
+ do
+ {
+ getElement(courses);
+ getElement(teachers);
+ } while (i < data.length)
+
+ let values = "VALUES";
+ for(let el = 0; el < courses.length; el++)
+ {
+ values += ` ROW(${day}, ${shift}, '${courses[el]}', '${teachers[el]}', NULL),`;
+ }
+ values = values.substring(0, values.length - 1);
+ return DB.execute(`INSERT INTO shifts ${values}`, []);
+}
+
+async function parseDay(data, day, DB)
+{
+ let i = getToLineStartingWith(data, "RUOKAILUVUORO");
+ let indexOfShift = 1;
+ while (i !== -1)
+ {
+ let endOfLine = getNextChar(data, "\n", i);
+ // Insert the food shift name
+ let shiftName = DB.execute("INSERT INTO shiftnames VALUES (?, ?, ?)", [day, indexOfShift, data.substring(i, endOfLine)]);
+ // get to the teachers & courses
+ i = endOfLine + 1;
+ i = getNextChar(data, "\n", i) + 1;
+ if (getNextChar(data, "\n", i) === -1)
+ endOfLine = data.length;
+ else
+ endOfLine = getNextChar(data, "\n", i);
+ let unparsedIndexes = data.substring(i, endOfLine);
+
+ // do the magic
+ let lineParse = parseLine(unparsedIndexes, day, indexOfShift, DB);
+
+ i = getToLineStartingWith(data, "RUOKAILUVUORO", i);
+ indexOfShift++;
+ await Promise.all([shiftName, lineParse]);
+ }
+ return 0;
+}
+
+async function writeShifts(data, DB)
+{
+ weekdays = ["MAANANTAI", "TIISTAI", "KESKIVIIKKO", "TORSTAI", "PERJANTAI"];
+ let deletions = Promise.all([
+ DB.query_raw("DELETE FROM shifts"),
+ DB.query_raw("DELETE FROM shiftnames")
+ ]);
+
+ // iterate over the weekdays
+ let i = 0;
+ for (let day = 0; day < weekdays.length; day++)
+ {
+ // find the start of the shifts of the day
+ i = getNextChar(data, "\n", findExpression(data, weekdays[day], i)) + 1;
+
+ // find the end of the shifts of the day
+ let end = [
+ data.length,
+ findExpression(data, weekdays[day + 1], i)
+ ][+(day !== weekdays.length - 1)];
+
+ await deletions; // wait for deletion to get completed before proceeding to write new data to the table
+
+ // do the magic:
+ let shifts = data.substring(i, end);
+ await parseDay(shifts, day, DB);
+
+ i = end;
+ }
+
+ const courses = await DB.query_raw("SELECT * FROM classes");
+ const results = [];
+ for (let course = 0; course < courses.length; course++)
+ {
+ results.push(DB.query("UPDATE shifts SET class = ? WHERE course = ?", [courses[course].class, courses[course].course]));
+ }
+ await Promise.all(results);
+ return 0;
+}
+
+async function getShift(day, index, DB)
+{
+ let shift = DB.execute("SELECT name FROM shiftnames WHERE day = ? and id = (SELECT shift FROM shifts WHERE (day = ?) AND (course = ? OR teacher = ? OR class = ?) LIMIT 1)", [day, day, index, index, index]);
+ let additional = DB.execute("SELECT course, teacher, class FROM shifts WHERE (day = ?) AND (course = ? OR teacher = ? OR class = ?)", [day, index, index, index]);
+ [shift, additional] = await Promise.all([shift, additional]);
+ if (shift.length !== 0)
+ {
+ shift.push(additional);
+ return shift;
+ }
+ return undefined;
+}
+
+
+function getIndexType(index)
+{
+ if (/^[A-Za-zåäöÅÄÖ]{2,3}\d{2,3}$/.test(index))
+ return "course";
+ if (/^[A-Za-zåäöÅÄÖ]{4}$/.test(index))
+ return "teacher";
+ if (/^\w\d{3}R?$/.test(index))
+ return "class";
+}
+
+function randInt(start, stop)
+{
+ return start + Math.floor(Math.random() * (stop - start));
+}
+
+async function getRandomIndex(day, DB)
+{
+ let indexes = await DB.execute("SELECT course, teacher, class FROM shifts WHERE day = ? ORDER BY RAND() LIMIT 1", [day]);
+ indexes = Object.values(indexes[0]);
+ let start = randInt(0, indexes.length);
+ for (let test = 0; test < 3; test++)
+ {
+ let i = (start + test) % indexes.length;
+ if (indexes[i] !== null)
+ return indexes[i];
+ }
+ console.log("Warning: row without class/teacher/course in database!");
+ return getRandomIndex(day, DB);
+}
+
+
+exports.indexType = getIndexType;
+exports.cluttered = parseCluttered;
+exports.find = findExpression;
+exports.getNextChar = getNextChar;
+exports.classes = writeClasses;
+exports.build = writeShifts;
+exports.get = getShift;
+exports.randomIndex = getRandomIndex;
diff --git a/index.css b/index.css
deleted file mode 100644
index 76b5df6..0000000
--- a/index.css
+++ /dev/null
@@ -1,66 +0,0 @@
-* {
- margin: 0;
- padding: 0;
- text-align: center;
-}
-
-body {
- background: #444;
- color: white;
- padding: 1em;
-
- font-family: Verdana, sans-serif;
- text-shadow: .125em .125em black;
-}
-
-#foodshift, #food {
- width: 100%;
- box-sizing: border-box;
- display: inline-block;
- vertical-align: top;
-}
-
-@media screen and (min-width: 700px)
-{
- #foodshift
- {
- width: 58%;
- }
- #food {
- width: 41%;
- }
-}
-
-.float-block {
- display: inline-block;
- margin: 1em;
- padding: 1em;
-
- background: #222;
- border: 0 solid black;
- border-radius: 5px;
-}
-
-.float-block p, .float-block h1, .float-block h2, .float-block label, .float-block select, .float-block input {
- margin: .5em;
-}
-
-#send {
- background: blue;
- padding: .5em;
- margin: .5em;
- border: 1px solid black;
- border-radius: 5px;
- font-weight: bold;
-
- position: relative;
- right: .125em;
- bottom: .125em;
- box-shadow: .125em .125em;
-}
-
-#send:hover {
- right: .25em;
- bottom: .25em;
- box-shadow: .25em .25em;
-}
diff --git a/index.html b/index.html
deleted file mode 100644
index b12164d..0000000
--- a/index.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<html>
- <head>
- <meta charset="utf-8">
- <title>LYLL-ruokailuvuoro</title>
- <link href="/index.css" rel="stylesheet" type="text/css">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- </head>
- <body>
- <header>
- <h1>LYLL-ruokailuvuoro</h1>
- </header>
-
- <br>
-
- <main>
- <div id="foodshift">
- <form method="GET" class="float-block">
- <label for="index">Opettaja/kurssi/luokka:</label>
- <br>
- <input type="text" name="index" placeholder="sahe // ÄI1.2 // B203">
- <br>
- <label for="day">Päivä:</label>
- <br>
- <select name="day">
- <option value="1">ma</option>
- <option value="2">ti</option>
- <option value="3">ke</option>
- <option value="4">to</option>
- <option value="5">pe</option>
- <option value="6" disabled>la</option>
- <option value="0" disabled>su</option>
- </select>
- <br>
- <input type="submit" id="send" value="Löydä vuoro">
- </form>
-
- <br>
-
- <div id="shift-result" class="float-block">
- <h2>\(index-type\) \(shift-header\) ruokailuvuoro \(day\):</h2>
- <p>\(shift\)</p>
- </div>
- </div>
-
-
- <div id="food">
- <div class="float-block">
- <h2>\(food-header\)</h2>
- <p>\(food\)</p>
- </div>
- </div>
- </main>
- </body>
-</html>
diff --git a/open.js b/open.js
new file mode 100644
index 0000000..f04201b
--- /dev/null
+++ b/open.js
@@ -0,0 +1,16 @@
+const fs = require("fs");
+
+function openFile(path)
+{
+ return new Promise((resolve, reject) =>
+ {
+ fs.readFile(path, (err, data) =>
+ {
+ if (err)
+ reject(err);
+ resolve(data);
+ })
+ });
+}
+
+exports.file = openFile;
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..cad9a81
--- /dev/null
+++ b/package.json
@@ -0,0 +1,29 @@
+{
+ "name": "lyll-ruoka",
+ "version": "1.0.0",
+ "description": "Server to serve information about the food shifts and foods in LYLL",
+ "main": "server.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1",
+ "start": "node server.js"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/JoelHMikael/FoodJS.git"
+ },
+ "keywords": [
+ "food",
+ "server",
+ "database",
+ "school"
+ ],
+ "author": "Joel Kronqvist",
+ "license": "UNLICENSED",
+ "bugs": {
+ "url": "https://github.com/JoelHMikael/FoodJS/issues"
+ },
+ "homepage": "https://github.com/JoelHMikael/FoodJS#readme",
+ "dependencies": {
+ "mysql2": "^2.3.3"
+ }
+}
diff --git a/parse.js b/parse.js
deleted file mode 100644
index 7c47423..0000000
--- a/parse.js
+++ /dev/null
@@ -1,285 +0,0 @@
-/*let i = 0;
- let foodShiftNames = [];
- let db = []; // first level array: days - second level array: shifts - third level dict: course/teacher - fourth level array: indexes
- while (db.length < weekdays.length)
- {
- i = findExpression(data, weekdays[db.length], i);
- let end = i;
- if (db.length === weekdays.length)
- end = data.length;
- else
- end = findExpression(data, weekdays[db.length + 1], i + 1);
-
- db.push([]); // add the day
- let shifts = 0;
-
- do
- {
- let teachers = [];
- let courses = [];
- i = findExpression(data, "RUOKAILUVUORO", i);
- let nextLineStart = getNextChar(data, i, "\n");
- foodShiftNames.push(data.substring(i, nextLineStart));
- db[db.length - 1].push([]); // add the food shift
- nextLineStart = getNextChar(data, nextLineStart + 1, "\n");
- while (!((nextLineStart - i) > 2))
- {
- i = nextLineStart;
- nextLineStart = getNextChar(data, i + 1, "\n");
- }
- let parsedLine = data.substring(i, nextLineStart).replaceAll(",", "").replaceAll("ja ", "");
- let parse_i = 0;
- let nextSpace = getNextChar(parsedLine, parse_i, " ");
- while (parse_i !== -1)
- {
- courses.push(parsedLine.substring(parse_i, nextSpace));
- parse_i = nextSpace + 1;
- nextSpace = getNextChar(parsedLine, parse_i, " ");
- teachers.push(parsedLine.substring(parse_i, nextSpace));
- parse_i = nextSpace + 1;
- nextSpace = getNextChar(parsedLine, parse_i, " ");
- }
- i = nextLineStart;
- db[db.length - 1][shifts][0] = courses;
- db[db.length - 1][shifts][1] = teachers;
- shifts++;
- } while ((i < end) && (i !== -1))
-
- i = getNextChar("\n");
- }
- return [db, foodShiftNames];*/
-
-function getCharAmount(s, c)
-{
- let n = 0;
- for (let c_i = 0; c_i < s.length; c_i++)
- {
- n += +(s[c_i] === c);
- }
- return n;
-}
-
-function getNextChar(s, c, i = 0)
-{
- if (!(Number.isInteger(i) && (i >= 0)))
- return -1;
- for (; i < s.length; i++)
- {
- if (s[i] === c)
- return i;
- }
- return -1;
-}
-function getNextLine(s, i)
-{
- i = getNextChar(s, "\n", i);
- i += +(i !== -1) * 1;
- return i;
-}
-function getToLineStartingWith(s, ss, start = 0)
-{
- if (!(Number.isInteger(start) && (start >= 0)))
- return -1
-
- let i = start;
- do
- {
- if (s.substring(i, i + ss.length) === ss)
- break;
- i = getNextLine(s, i);
- } while(i !== -1)
-
- return i;
-}
-
-function findExpression(data, expr, start = 0)
-{
- if (start == -1)
- return -1;
- if (!(Number.isInteger(start) && (start >= 0)))
- throw new TypeError("Start must be a positive integer!");
- while ((data.substring(start, start + expr.length) !== expr) && (start + expr.length < data.length))
- start++;
- if (data.substring(start, start + expr.length) !== expr)
- return -1;
- return start;
-}
-
-function parseCluttered(s)
-{
- return s.replaceAll(".", "").replaceAll(" ", "").replaceAll("<", "(").replaceAll(">", ")").toUpperCase();
-}
-
-function parseClasses(classData, DB)
-{
- classData = parseCluttered(classData) + "\n"; // newline so that loop can find last value
- // parse data to dict
- let classes = {};
- let i = 0;
- while (i < classData.length)
- {
- let separator = getNextChar(classData, ":", i);
- let lineEnd = getNextChar(classData, "\n", i);
- let key = classData.substring(i, separator);
- let val = classData.substring(separator + 1, lineEnd);
- i = lineEnd + 1;
- classes[key] = val;
- }
-
- for (let day = 0; day < DB.length; day++)
- {
- let shifts = DB[day];
- for (const [key, val] of Object.entries(shifts))
- {
- DB[day][key].push([]);
- let indexes = val[0]; // use courses: the classes are paired to them and they are unique with a higher probability
- for (let i = 0; i < indexes.length; i++)
- {
- DB[day][key][2].push(classes[indexes[i]]);
- }
- }
- }
-
-}
-
-function parseLine(line, toRemove = " ja KAHDEN TUTKINNON OPINNOT 1., 2. ja 3. VUOSITASON RYHMÄT ")
-{
- let i = 0;
- let courses = [];
- let teachers = [];
- let nextSpace = 0;
-
- if (line.substring(line.length - toRemove.length, line.length) === toRemove)
- line = line.substring(0, line.length - toRemove.length);
- line = line.replaceAll(",", "").replaceAll("ja ", "").replaceAll(" + ", "+");
-
- while (i < line.length)
- {
- if (line[i] === "+")
- {
-
- nextSpace = getNextChar(line, " ", i);
- let nextNextSpace = getNextChar(line, " ", nextSpace + 1);
- if (nextNextSpace === -1)
- nextNextSpace = line.length;
- line = `${line.substring(0, i)} ${line.substring(nextSpace + 1, nextNextSpace)} ${line.substring(i + 1, line.length)}`;
- i = nextNextSpace - 1;
- }
- i++;
- }
- nextSpace = 0;
- i = 0;
-
- const getElement = list =>
- {
- nextSpace = getNextChar(line, " ", i);
- if (nextSpace === -1)
- nextSpace = line.length;
- list.push(line.substring(i, nextSpace));
- i = nextSpace + 1;
- }
-
- do
- {
- getElement(courses);
- getElement(teachers);
- } while (i < line.length)
-
- return [courses, teachers];
-}
-
-function parseDay(day)
-{
- let shifts = {};
- let i = getToLineStartingWith(day, "RUOKAILUVUORO");
- do
- {
- let endOfLine = getNextChar(day, "\n", i);
- let shiftDesc = day.substring(i, endOfLine);
- i = getNextChar(day, "\n", i) + 1;
- i = getNextChar(day, "\n", i) + 1;
- if (getNextChar(day, "\n", i) === -1)
- endOfLine = day.length;
- else
- endOfLine = getNextChar(day, "\n", i);
- let unparsedIndexes = day.substring(i, endOfLine);
- shifts[shiftDesc] = parseLine(unparsedIndexes);
- i = getToLineStartingWith(day, "RUOKAILUVUORO", i);
- } while (i !== -1);
- return shifts;
-}
-
-function parseShift(data, weekdays = ["MAANANTAISIN", "TIISTAISIN", "KESKIVIIKKOISIN", "TORSTAISIN", "PERJANTAISIN"])
-{
-
- let i = 0;
- let db = [];
- while (db.length < weekdays.length)
- {
- let day = [];
-
- i = getNextChar(data, "\n", findExpression(data, weekdays[db.length]));
- let end;
- if (db.length === weekdays.length - 1)
- end = data.length;
- else
- end = findExpression(data, weekdays[db.length + 1]);
- let unparsedDay = data.substring(i + 1, end);
- day = parseDay(unparsedDay);
-
- db.push(day);
- }
- return db;
-}
-
-/*
- * DB structure:
- * WEEKDAY - list
- * FOOD SHIFTS - dict
- * COURSE INDEXES - list
- * TEACHER INDEXES - list
- * maybe: CLASSES - list
- */
-
-function getIndexType(index)
-{
- if (/^[A-Za-zåäöÅÄÖ]{2,3}\d{2,3}$/.test(index))
- return "course";
- if (/^[A-Za-zåäöÅÄÖ]{4}$/.test(index))
- return "teacher";
- if (/^\w\d{3}$/.test(index))
- return "class";
-}
-
-function getShift(day, index, db) // day: int, 1 = monday; index: string of course/teacher; db: parsed shifts
-{
- if ((typeof day !== "number") || isNaN(day) || (typeof index !== "string"))
- return -1;
-
- let shifts = db[day - 1];
-
- let _endOfIndex = parseInt(index.substring(2, 4));
- let type = getIndexType(index);
- if (type === undefined)
- return {};
- let type_index = +(type === "teacher") + (+(type === "class") * 2);
-
- let res = {};
- for (const [key, val] of Object.entries(shifts))
- {
- let indexes = val[type_index];
- for (let i = 0; i < indexes.length; i++)
- {
- if (indexes[i] === index)
- res[key] = [val[0][i], val[1][i], val[2][i]];
- }
- }
- return res;
-}
-
-exports.build = parseShift;
-exports.indexType = getIndexType;
-exports.classes = parseClasses;
-exports.get = getShift;
-exports.cluttered = parseCluttered;
-exports.find = findExpression;
diff --git a/parseClasses.js b/parseClasses.js
new file mode 100644
index 0000000..170b63d
--- /dev/null
+++ b/parseClasses.js
@@ -0,0 +1,69 @@
+const open = require("./open.js");
+const parse = require("./dbparse.js");
+const fs = require("fs");
+const readline = require("readline");
+const stream = require("stream");
+const getIndexType = require("./dbparse.js").indexType;
+
+// What a mess.
+async function parseClassData(path, DB)
+{
+ const separator = "\t";
+
+ const inStream = fs.createReadStream(path)
+ const outStream = new stream();
+ const rl = readline.createInterface(inStream, outStream);
+
+ let lineNum = 0;
+ let courses = [];
+ rl.on("line", line =>
+ {
+ let lineList = line.split(separator);
+
+ let type = getIndexType(lineList[0]);
+ if (!((type === "class") || (type === "teacher")))
+ lineNum = 0;
+
+ if (lineNum % 3 === 0)
+ courses = lineList;
+ if ((lineNum % 3) === 2)
+ {
+ // Remove the weird "R":s in the end of the classes
+ for(let i = 0; i < lineList.length; i++)
+ {
+ let _s = lineList[i];
+ lineList[i] = _s.substring(0, _s.length - 1);
+ }
+ addToDBFromLists(DB, courses, lineList,
+ index => { return getIndexType(index) === "course"; },
+ index => { return getIndexType(index) === "class"; }
+ );
+ }
+ lineNum++
+ });
+ rl.on("close", () =>
+ {
+ return 0;
+ });
+}
+
+function addToDBFromLists(DB, l1, l2, l1cond, l2cond)
+{
+ for (let i = 0; i < l1.length; i++)
+ {
+ if (l1cond(l1[i]) && l2cond(l2[i]))
+ DB.execute("INSERT IGNORE INTO classes VALUES (?, ?)", [l1[i], l2[i]]);
+ }
+}
+
+async function parseClasses(path1, path2, DB)
+{
+ let parsed = [];
+ await DB.query_raw("DELETE FROM classes");
+ parsed.push(parseClassData(path1, DB));
+ if (path2 !== undefined)
+ parsed.push(parseClassData(path2, DB));
+ return await Promise.all(parsed);
+}
+
+exports.classes = parseClasses; \ No newline at end of file
diff --git a/ruokalista.txt b/ruokalista.txt
deleted file mode 100644
index 7a80431..0000000
--- a/ruokalista.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-Tämä viikko: ctl00%24ScriptManager1=ctl00%24MasterUpdatePanel%7Cctl00%24MainContent%24RestaurantDateRangesFilterHeadersDataList%24ctl01%24RestaurantDateRangesFilterHeadersLinkButton&ctl00%24MainContent%24LanguagesDropDownList=fi&ctl00%24MainContent%24ShowDinerGroupDropDownList=97f76449-f57c-4217-aede-b5f9dbf2b41e&ctl00%24MainContent%24RestaurantTypeDropDownList=17dbf3bd-e822-4b36-965c-afce161f0704&ctl00%24MainContent%24RestaurantDropDownList=a7349553-5535-482e-8248-658a55dcada3&ctl00%24MainContent%24DropDownListGetWeeks=1&ctl00%24MainContent%24ShowMenuDropDownList=1&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl01%24MealHeader_State=1&__EVENTTARGET=ctl00%24MainContent%24RestaurantDateRangesFilterHeadersDataList%24ctl01%24RestaurantDateRangesFilterHeadersLinkButton&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=ksY8K2gvD37M2qSnF5wpUXuIm%2BDs5fj0gLFpEbeBL8hlzqfpPEquHIhyZ5fxmNkbU9Y4rabeHc9mEzH20nYjVLEvMfvDtK3d%2BDtgS3U%2F0N0o2jogx4K1gLShDCKqrLkSlCjtg3uSnVMvjzE6KRPMkEpOzjOspWeYuTuZGCMOTb06kEZ37tyb33ObIgPvICE12%2FRsDXlHNR3SKiAqeyHP5EaCX%2BcNd8VWDqsrnrmEA1UorGozoxG%2FYpQxlm1w62jHK03o3FEE%2B8gIqt5br2EQBrgv3P0elakG3DQWnm3lcpo1gJEwC9FaJprycnnCQ4jXMME054YEdy8HfUD30ppABFkRFw95G5hKMvmkIaj5gJO2tgcJMUBPFwRKaMkF%2By4rUHQ2IKRx6Fe815Y1YClQjZs7prhrVMclkobqv3HCwFF%2BkfqZC44F92rVR%2FBH8j331YjyIgZKs8OCFTcxx7KU59Xph5vIF7T2fp2Ay2A2J%2FotWTyTm6DJqeOcrznRwwLKaohC6iml742sUNVj86p7c5xee43QjVN%2FjCOKzIusv87CvJ1%2F3o81HNL0%2BFDwtDRNBN3PkdkjhXUM2WVQMaQ942t1%2FbWGL2x7VedEsVQwuC8qB47ugxgVcBvMEHqe6tOWH3qbVF1kRSCn4EGrwfaL9K6DWBsIUOix6qZtHFQmE1JW5ZA%2Bf8XNSwg9YHBfEzjmK9TfiU6cD9TgM95jSE7RTSxcs5EF9IX9r9mcxMQaIN%2FFVZQsFWXYrOgK9yOmiEfGjWirTmwFfYPVMV5jp8kLqpckTFfcyLQfjhvy1ZE2FCpXqUD73acVd6dLWZWoR1Vo2tO1uLmlPyIl%2Bu7%2Fxv3XpGbqNCobz%2Fy3Z7xFHjtOX7G9DI0ql66rGS%2F4BODk%2BtgOH6%2FqInT6vvE4UCsUA2N9UYyeIffka9lB4XpmUlbsOw%2BNhfXBk9F%2F1%2BbK%2FpEZctlw2TOqVZRj1Qlp5yCgZqugGJa8AYTACwHipBX%2FKvi6N9kON%2F%2F6H7yJCKZL%2FqCsE%2FToQ0jq7OqYl7pqBmhrBc7N0FjJJGpthM36IqexnvUO%2BF6o3KzDsfaAQ4t5wSf%2F86mNqvoUQcg8iIJshdFSaALs12haQVMrFT1SLhFsWsyCUwMNeWDgkGogbGkWOTQdZxLCq%2FbNt0GG4ExguXW8SCXdu379IQ3ZgqfYC4tiJ9muDbdMElA2qgt%2BEev6PXiigEpSm5CqwWBgsVABExvCk2Gkz9shKTQxKJXIK4Fqb%2F8aRlH0YuYy2DG6q3eIDsWw6ZM7RJoamDv7MU2EWZeLMuQb0gOMNDbLr161IgGBzUJPNS%2B%2B%2BW%2FTdDG37t19iun6hHd5pw08PMlbvUERyY4c%2BJvHAz5pUAOicL5ELVlq7rj0R3IoV0ekAY9O5X3QKeApVKC%2Bthvpi3yL35NHJr2t6pwUTswcJnKIFSRN71nx86JdKPIprC30OHJDfpGRBGwUvfs%2BdTe%2Fx94lCno6gzyKYQauACS3ZsnutRFAar6Zmvxh7aMnrGrC6%2BaWWGB7R9OMPC23vtL6F1MHvSZXvB%2BxGWB9Xh2oB%2FSMiFtTDfxPr%2F%2FVH35IMatN%2FPiqUv6mV2%2FjD8Cq2wmJ%2BjgFYMy8ACjGD7CGpMH%2B%2FDiQrRp3mZs%2B9V3BurolGX8JINAoum8STmvUheV68LTjaOXouG16EiowKVmFdTtkGccp13mHjQqaFaFZWzRwBuokOM4jtBoubynrGTGcnfdsrRkLZ1MCKwG28fM7QhQxLpe%2B%2BMnHXZEFYJNXkqgVDNk986qQ23H3LcJ46pt5drBHsrr5RZDqo8VSOdozL6CH%2F19Uizmi7IhjXN22Kj%2FbosEeZU5Spdj9Vna5nxaWSc%2FEI88UsAQLAXq1NrM2DnF88S0f1TtaGWbjWNE4Skcy8EJA1RUMgIVMwShbpxaMhGv1ITBZt98%2BpQb%2BfT4z2xlplQLl3Cym74uH9MfjMDsXtZLrlXb%2F0%2BZMRVSfAc1YYGH7Br4KdbVjiQPo6ZXLRSxuBOcGKNuoGAya6ZjF%2Bs2DJIHVk4OUpWFy1ecxgUteBbdHLaWLgCEx0a03yVH25y875DKpWWUJYjQ36mzn2ooDWgbgWnF1X2U%2B8uQEvPBGFtThlfIrinNonwgaWz22MQdVSs37Q8QRdz5kDLGaAC3B1TaSEycEp9ypc48lZQ%2Ffj2AJv0CQk82MpJeJyVdRMK9afUskhK4MSZyKkPK3ENBBRgUsE%2B%2Fe29Bj%2F75Evmq7fWALS6MgDh3UeBkBwRbfaxySgOyQugjz3AJRPnT1fdD%2F3jB6M3qfCIEMBl6gL3nLYnDBYlQWtxrgkpds%2FVjAnZHRI%2Fv3HfFSID5nSyJpfRbQlsqvAA%2Fv2yAiolu1w%2BJL9dMBso02%2B8w4hodVJ85XMiuQqJJBg%2FROfUZdbG8MXnxc%2FM%2FLuDwwDBYuFL1B2BPkG7rdD8q7UkS6aJ78NN3w0W36xPJXyDZG1606U9WBHEqGA6CgGPUYVyO%2FAcg9YU8%2ByFIFjDY%2FALtLhgocH3mcKHclmbLuOH1i6SBalmQl7V65YVNzkypnOUOIMCn8vke5mn8UhEad%2FpEC8v6B4Rlm5Q2XznFrDEYqWxAXuPFsx0X6dSGSz9V8WftwMfXCzsrCIySAfCMeu5QYQUMjDCE6d%2F3GeFmI5yslKAlmjc5Rwaq3UT3%2FlXisXwqLx4Pg5QWAysLWQuBnP0VY4Ls2m7gZAkRXShzCuvn00LupVbe%2Fuu8hUKcsAUTOjHp4uTqVNolYRbrbB%2BIqBIzQHO4%2Boen3oe73VvPPzxWGvGNi8vMHjlcuJ5fsrFzVZTY2cQEsm%2FO1d%2FbtD1iEzSrBgE3vkVR%2BTN8fFn%2FR04DDSBqUZQor%2FVMYcssc4i4F17m3xl2nR2RjaAvDxEyf9WEdzbMdrHlsPEb8WYvw6dZkP%2B%2Bs1KpbtHccLpX78EZs7SbFB07m7Ba9DZfOJ429P%2BQ1EUK%2FJHh7GXyGmqf4L8ufMAY9l63mtK83BEwOeMtdPGFHLXiuPKtIHUGcGTd5%2B4MNGrTXH5xLibZ57jUP5p4JdSixf0%2BaIaq73RzEw5jZVCN97o1UAfvZf7cTRz%2BzfW%2FS%2F00eyu5P3SlFo8mJ%2B7cmSkBQYO2MSNPqgJxkYQm9XInsVyjVOgtIggZz0KzX4CElGLzwO3pjXpRBvN2ly7Aew5flmOzY6pFtWI4RSIbLDhf0kxAbHF8uEm7%2BZkdNx3XDYYEBwThtfT5NqAQi3trdtjo3nsE6798zcLmoHa17Z%2B%2B%2FtObLJksD0Iy9GlEeAWcHQsPVHbvZI%2FBLMJzJSTjnRReO6fy1M%2Ba1IaG2773HpWppDf%2B2lLCr9A6bSMVcWdJGBzPDjXvBP1%2Fa9C2guY8LKT0Ke17CXBSxK2lWOWvVxbghjyARxDtC8TW10JlKyGLaiyL9RCVXMgIeZzrnlb5P%2Fvjyr8Gk5jliYqZ959TpzCgbHqtOOwbnjDjnWLw%2BwpC38%2FMyUuwV%2BpJ%2BlDAm92flm7I%2Bc2%2BdFqVQzBb%2FHni2LRgiecGZbbE0JWHZ0QsfYtG5VmiHzOT2Xf7%2Fj6Ib25LajhYC5Grt6fWu6KOBHN3P4DqtV0yrm%2FupEsoLxrT0%2Fvc%2BaK9i9HN%2BMXmK6gIQmW33ZSajzotD0aKCUe%2BpXhKD4VDFUtPPjoi8O3Fo5hLEIaqoP13WCFA7Mn5AYxDe%2F6I6t7Lepp4lKlTaBPHRAaAfJp1fO8oP1xknyjzvxJLwa8UrHRt9MaBVhdS7Hv%2Fa64ytkssjzybs5PwiF1Gr5cpfM5mYWn8wHaI1BviOeGTMfwa4uVDFh2GbYb5Zh9EgOYA4%2BkhGsL6QuDjkabmfej5zmSnqAoD6HH3NZL6NmrYp%2F3UsWyT5PYxIVw%2BvXziNJldCrwPdjN%2FxHNRri1wAdn5c3tQTLPGOjubdrStRPzNtSYDKjO6nwtpck2u%2BZyafDgI01wrs9FmCBGbvsnKrdM0Sz3S2RzMbVhOiCqXDgQi1JXGbV6D4ZZsexxZU50m0XPdpaICE3mL5E%2B4tNIBUI6kN3B6c49pw9PNc1p2Zodsmy%2BAdnMUiaGOZs6qYYbo2MwH%2FLE%2BwSNdHeDPkqCtTVd3kiffVwlSSdyI%2B7ZRIFfGg7oWKXyJQ8cZxPxQJPNpoJAkLHw5yRiZ%2BmlhGWCBYdLzRYObWRFylVi4297CCgsoQYkxRQa9TxwcXVqgaszKTBiulCq8zh%2Fr%2BgdddbxYB6kmRRbxZZEyf3kbnLHitZH4XzB%2FlyvHGfEhOJXG6lQpZKBNKzhAw2gehIQmDF3ybhzIBmAffWnsUHk2X8Ws%2FdYjpn9WohhTMFqZzKGMnIa8REsOGh6aF02Rf%2BFL%2FJrORs90CQLf7KHi6WkTkYXG6g8KCUYRL0ZOwNfn4yu8YLmjEgFJId2BGUUzfRcM7zyaEDr5aCukpeEvoPM16Et%2BYYafEnfrsi3VwGf%2BfwMyJC1ZqoKpmu4v0QPKOOuwckQriWryYC%2Bft1L7AK3DJmSOCb7CgQs2AQhFZ0NAYxFzpG5ImmtaF6d%2FZjGB7n%2FDuFtNMfA2ypXBPD9BflPZDNz%2FQ6aYvLUedJbBnGPZDTHT3Lgel19%2FnHyV4dSsYp5%2BQwO8k%2FXMvq%2FmivEnKWiR%2FQJzEeG2XOKDZwePiZiCkiWWCwtHc2hx%2Fxg4FFyY5XfLPlPG0jcq5C2cbdupbeHBRpFoX6YPPPp%2BU1nRai8wrHX%2BIBUNavZ8ymXtwInZ6MLUzeUTHb%2B1TtPuOiYMtOoxQlR4fgXvCtJUXEcTWbVVAEVR5%2FOWSq6FF3e%2BbofNiWx%2BcozgrqQUMYLNpr0vlinvpJjt9eaEPdw0zt%2F0LLFHCOn6eq%2BXfg2HctKVgI8p1h4kxYXUhxIY573pb3pmJBi%2BgjrVp0O8Zb77WY4DQ05GozujexS15WZroYXUmy%2BcE%2BtY2ZxZrF46PcXKm9MrxYFVz1NSU0WEYqY%2Bjut9gGrUnme8K4rxqaFGmogFpUcHe3Je%2BbXYz3JeS1VeGy1FJxv%2FBH%2FjdC6Ro5%2Fb529oiGASonw8SwwF6gT83tgwjsgmypX3IFCTsyF2AIXY5eE%2FpK8sbduUj50AqL3qrXY%2F3u0KT38Etoh%2F6MzneRGVbet0uYuuAq%2Bqo8EoWk3p7FnZu7gQJ9LxSLiMVHGd6c7ZTiL1pg29dbCQ0olPh1WIC9uhnJ47s5xJypF7CxoOYzBySk6NJpfgtWDO%2BleA2NMD4yWoWTi8hydANZYKu1%2FHYPHc9FuHZYhSwTC0dc3FYzmaOIAK7XgWJWzeC2GR9p1ktyad1DhG2Q5xskmbNqmzyoknrk7gytePL0H%2FSicL1Pkx13QWUrV5h97VEwCVJDYVSzcSsBFVMAID4msVVsJGiTol%2B4wTxAnSnru%2BVhET72z8OJdIpk6ehj5hTTHYgq6cWI46T8rEIQDd2MCbx1dzcpBncA3FBBrlToQjGHo7KNTOmIV4ZWmvuHNUD%2BzX72h52RMn67gmgl%2BgtRyPW2y6PEEBkfTGdZw12mmC5FR3tCRaSi7o8eDiTjrMt2yaFcU%2B%2FMplHIFYtvTBmMzQW4%2F4c6xd4KR8YuH7i5XH9BE2u79IuLlieNLp3eUrgCD6ZdhEEFcdhI3T4Z4NrwPpEzlyvZ6%2Fk9TS7JCU5boaGJfKWgpCn5%2Fujl9O%2FzgySbgb7lYX72ACgN4cONCBBuVBuOseqRbyH4jyXBLFCSFI9Uhw%2FSomE2iGLZcAyl23vkOwlyZ8sH%2BiH1c1Borck7eZKhgqhRF0qgib47YdDrGu%2FIRhYR4fBXR3qAMs2BUT5GRsjWfmcFsrf1ixZyOA%2BAEvxeF2vpYvuT5THoflOz23khvD1uY1wyd%2B1PluTG%2F6Q7n4oQnGBo3l9ceXx5Zla8fgrV8N5mWSC9WDzD%2BF7jQAUjm%2FEx2JS84pTRQlzCcOythVpSmvkimQsIiDHvt1N4OKdtcVYvAnzlHfWvdBpkDUT%2FBurtFHrYLLJeTHVdWUQBzzQLPhKgz2Cwxdf3X0LbVMmuFM3Bor248j0RVFpW%2FXHOh5jpYenAb8rCox%2BN9bFXPs%2BjN24FeYXh1ufikCzf7bWDiQV3RQAsDCixRoeXJjvBVmnALjmdOgD92UjAavbK%2BOZYHLNVHFtN6Do%2F%2BFpNI6vjqPK1WTt4c%2FeSD%2FGyF71GA%2B%2FIGa9ftv5Pdyz4sZDuPLYffgghsMINO%2Fi1df8THkYUcLpSNf02IH1lJ5E6BQkVpqQR8YlJF0%2B9UYiqR2DB5gZD49ZZcCujtTIzJX5vgxL8LZDPpFKMLAnLJ2lXMmDJJYmk%2Bsojv7DC7BsWBSoni6bNRXoemYLRSxeUkSYiTn1TDiWqbBuLgOP7zZi2qnqqhAsErnMf9F2pCK3w6KzugN6wEQHelXABODDwYMcAD0WMCDAgJlDwBSyvqwdFnin2G4FF9XD%2BiSD95RQ3IZYiHdPZyHbGY0XMLSpaB87yKQzys6eu%2FN8NnpME3PZuKoepmYQsit%2BwQVR78544Y7UmoMU87DOAhQymdNU%2FS6pEhIMUTRwUoyvnufhuDqK1hkfzjWhpv0C7AsbGqpaAjfOi0AkAGOdzWRBxzTjmPscaLBOYsqXDDMa9kjgyAy6HG1c6734vuaV6qNK9JcXhyrlbUbgvlgLw%2BC3uqhdO0BxaVD0dFH8LZ8drrDqaMCs%2FEuapnedEnX72DPMvWEbNNmsR%2BtixM7VF5XAmLleYhJHvbPUCS1V56EAxmtNloJHtS5TmPb5pptpeWKFbkiTYHpgG5KZEExEGVu1Dh%2Ba6Jv9%2BwwGuh9dr%2FCIu5LExac%2BBVhfZcTf4dJuXZ5QwiSqyInAm9yUgg%2BirtbKr1iK5Ex1%2BKpDoKVbBpvKPeoHp0QWgEAIFwtcD6%2Fbe3ri77qLArUhCB%2Fd%2B%2FQl2s9VNyyozCrThjunjrCnnGxgUYpq%2FvoIRHbJYbWM4%2FXpJesYS5GFYixfIAVAsp5em%2Bx%2F%2Bl%2FIpzY1%2BvcDVLqlTdtxh4b8FRKFe%2FPZES5cJb3JWwuOUAN9%2FXQio4OlIppRTvWW6%2FkbdqBtMkDkp9TdRp1%2BQ6djM0BumxB0KXxd71XENDMaAhhbLZX%2FL6cFvCL2MY1cv1AjDVHfXLy61sGv0vAWta%2BWrTUqLVrXqgAclI11gzfArHuv99Ue6QqEet2D8VyayGw9phXPXosaNDM96mA6hyME1gxrHBme3pLHZ42mPCClQxHTLqC%2BjnQCEyHxgPg5mgPQke%2FuE2Chx7IIAPmTW2PcY%2BOxA%2BAFW1thKxNEqbFYWxv2gI6lqYo2%2FA0ILsFjuafUzcnI%2FLm2tzWYfiAxGUBKWOvCP7sOClSIycdlOaGbl%2F%2FI1z8iAzc8viFgJ1lZBpy1AaAOuvtmxbTHDgRuuvcmoxuW%2B%2B7rXLf86xg00qE3O5p38uI1rx4w4t%2BnhZtUMoSXdU8sOBgR1Bu0SD84s0AWlqPchcluMutSZ7crKc3ryfBam0Pu37ob7AcCVPdEjI1Ha9ZK2MdMvm84uRgxQ8mYJ4miReP3T5ZwmD5r5XiOz%2BW8kYtJB4t49jQcB96V5Myby7GYENXlbBFw30BVP6b0OEoA0QW0M1mOd2iyQqmDZcRuff8CzcTy583ns%2Bs6gPnp2J0fliG%2FcBb9k%2Bip8O6hi8MP2TfzEFrVZzxF8w3NwUQ%2FpKNa7z8O5SBGrwSRLPTAskVTIRVM4eMk3MFokdUlwgJRKQX02kJ3MJzlFf2%2BqpxyECM6uTeIMPWgvn%2BZ6bYrRUgpkpTXFSRvQki8lajW%2Bk%2FBEGdsxCr3z6JNv5KhYYz0QKR4ozjFHbxYyIHbss7maV8nqhW8zOh%2BCPiQe%2BXLu7%2FYaJtnHLGvyju7IOdXNEPtoSoOJ5ByIILvR4zNvyH%2BdaDax5DmpW%2BUsO84yrJK7Lp2Y%2FnBnxe%2BPBMBfYn7hQpYtkYAfEjoXOgIpWWoxKhkR5FvMDFqs1Ki1yzK8Gq0ojPJG165mVPRHwn4Otv2QadVdbQNffnJksHv%2BNc%2B3Gg4H9SVSWb1xA36O%2FwdSqJ4y0G%2Fk54rLIDHk0OqstVIwNtJp5Zb0m9vEY%2Fqkz%2FXIWOBnHz4zIS%2Ftmy6uCVEhxxq2qPoKIJpv%2BEWoKD52OpT49LOK1G43BQXmnyQeKTGs7Jn81En378MeLFnrVPSBJP6KMUt75GRLU3kxDQZDkg%2F1pR%2B1beN%2BivEfFEJ%2BwSB5O66%2B9aCmlHBn7%2BiThhG7Tpjg1lCTLKKFylyF8GF6uyCt8ZcSIxWeMN8u3ear3lKyAQwqQ%2FRGEw3BXHuv0bQezHtuz7sk0lxnIUxhpyQhTIAly64rv4lDig1Ir6mNgdtdsJIrLDKMos2PsQki7qNBcNBZAi2%2F8NW0p5mKLz1YzGCWFdyNfBy4VG3bmFRGhTRI6GTXAk20MPU5cSxm%2BiGPpY%2FVYBhVTBAPo1FDT9JW66Lr96CN5RTz4K38%2Fknb%2FUwnWu327m89DqFrt3dBgA91U2glgo8bmFiWaamh9Cocd13f9vbfZmzW2qHxIQiwCfZhXS8eB5pvCzCfIWHlvpw%2B2AB9eQZ6vhf37i%2BSAvVrdZ8yL4%2BPBWIJKrnr83AzZ9tUclk20XcIEQZJBT%2FI8ipmWwh2BJQLveaVWwDTJ02kIV2FxxTDY30ePoITv%2Bm2zgXvXcKxSOCzy3dz%2BwUXZITyvYUi9V4VRiioUq0CLc8wYGmrleHqXdanO5qGszfAj6Y9Gml54zuEccl%2FQrw79lSn6L%2BQx%2F2Dt5o2RiN%2BpAw8LUL4qg1O%2B8WcBY0NjRbswFzZ1q4Gyg7m0jCsY18Jso%2FbNNUb%2FuSKuQWn7rsO8clGg%2FxgIFfSzRbU7OuaZEcR4X5yYvu2yxs25PM%2BSPS8bplKt6kiMp8J2zW33NGmAzAZ4u3DWu%2BvS58Tu%2FquWqapjcf9NEfVlQxUppToMZD54oUdwV3FZ6%2BE36P3bhJxFIDGK4IDK5Nu5DKJRMIDMB%2BBOx9325NV3jDNmBPHZdFqBGKD1WGZXtRIUby4z27p%2B6t%2BV1olZI86CLzHmEfhDhynfZIOMdGUZlt3NEo0x4tuZaoVgnuLguxUh2jTq4fatFccEobnWtIFj9qsJyNGSTQi0nYV3lIThEkqNJ%2FpyLcm3Sezbz1Sp4Uo0ei%2BolW%2BTVk6pkTFX4sjcjpZU%2BpUm228vxYWUCBGFDtilgYhYWUnrVb22H4uNZCOwYDz4F8aot8SPAOL3LhUtAeeMo%2BQAg61VFXHiM3Cv0Q4AxF2JUwBSYk7rhfV8%2FbcXAUcJpk0%2FDM9yDqZetmdeGNRGkuuKSBs8IWVt4D3%2FO8GgFE3XaGLsF8NjDdpRxP7tJaWeY6QuA%2F76k5xZHl6oM%2Bno22QtPxtWo%2BedUwBWFNJy1A4aLUp9pL4csH9fBSuEgz3vVUQg6wjYWJXqwqcBYhy2rY0FlB3dQMgmAjUstuf5CYDcg7uy5kUon2whpGltKeFLz3D6I3cYqYtrfqDW0zYiGZkmA3kBV0abIR0GDmMN6TRPnB6m26e7zbY6w%2FmzdJ9topuZ4%2BozR%2BdA5Ib53IZrakCtOf%2FNWqk9YxvedK1YzfGtQ01CSpoyGPUvr5%2Baxgk8yMabbuUYRlIVnhMHqjHN73hmqQAXndw0CiRvo19VFpGTv3o7u1tXbgo3XJKFrezlwRsgwV2fjKuhwv5aPrcLEsXvVwPBykh9EaYCGnJ%2Fu5nrlk%2FIDY2dIeQP0b4hJMH45cL8dLsUENph%2F6H43%2F%2Bgzgz2NFIEu5Lc0lGoFt6xlsVDyiiXIQiVOht3zG7jiDUHMmjtCq6Z1vW1A3h6evKveEKKz1ySsF%2F36sv%2FO0MiuwbNdXvzTLBBWwP9V00n3C6SeK9ygOBcfCvLWb80OXDsUMeKSBZckzJV7oIfpwan5spraqfOEvc3WXGFHcXLimFZBR1L5HDDFMziygSJYZ9qjsXTiBR4OkQ3uDFgyN1cyUx0mABoTF0CW5VurXaqAHvWrkoLQKy5VY1En4g7vwCybvBO6dTsg6J%2BpKQ6%2FxIj1UHSiQEavHLhQ5bTQf4CKQ3tyZmje2WrOLboyHdIfNQgND7RM3bn%2FbYohPSe%2B9qX9GfeH1tvFq9L4xp2j%2FG5aH%2BHDw%2Brizlt7rCNEYufWo4RY94zFuoUFODAosnTWK18T7uaaiLxeqKVlYSnwmEpgrq%2FYbKFiHdc%2FGz5ZBCVGnyBUBqdz1mmmpRFH5FaiTjrAyP4cNtrxKRsSz5E8S%2F1SR3wIxMdUnMae2hjzRei6uemXHz2%2Fl%2Btm4sAkgR0oQg6OpizDFQ0JK7O6Vj5RGTBUuowLgD%2BDcKNenTOk3Jgh%2Fz%2FxcW4lx647ZpBY5CIFkNoe%2F1MuEkp5lPbeyj7TgbV7RsQv0PhYrpSzOWr1jr3IWg3V8NC7eMf%2FhqHMV6PdmC0jmptRG7NqC0mchkn4BxaRMF4YtmpBa8iDWLYRXtZ4h1%2BOWI8IrhYo6foM87FD4MFzw9LXZ%2BV%2B8wnBf6YMJyhSO1tw18qkborSPZ1zNYxq%2BVE3%2BR%2FeU3ihU0ndMXq3Rtf9geun%2FWL1lJQz7XeMtiYhwONtH0d4k2flDz%2Bf26YN4RUb6wUUnmYIQC14jg%2B9Uz9ZBtb8vLceJTriHEThDV49n%2B3HwJsnuA7MhXuGa0%2F%2FQbFfMe9tQ8yraTfk13TsHNCQJoYez%2B9eFjzvhipeu6%2BvD8FrUgtPt7qiUZodmAeD348vsF61Kb%2BjLxiNIBINZlKtNzDnt12Ty4DvVmzalW7WjxWn82%2B3dsi3aVGftTFJDVbatng66RBYk%2Bvg3kmqJ8P0wclsYrJs%2F3iPiOE%2BVLnZguzGiumw6kZgvMShcgNKbSZGs28CFkglxjP0I9oMvnOsm2dCiPkarLTKpK%2B6Z7f9pxFzB%2FgJJ15SSnJDZ1twmePRhEHHia78W%2BCSotYV3T0CnqyHaqyGJDYH4ZwLnIIx%2B9OqLCTfsqLseQ3QAz%2BmdS2BvPHNRdI3SGEfaRcWRI%2FU7FnfLPBk65zJQFJLxjQA0frfQmxkMchaDbB%2BTS5BXGUSJMiw5wb4DIuhN2v%2FHM41EW5NunIzvspcwKK1rL5naVa%2F7v1ddwC%2B4MfYJmkHePGwwGcTH5cb9%2BOllPlkSNq%2B%2Bc4LM49dCfCIshdhi3CHT9FRssFe7zCZ4Ovmm2t9XeEmBWG5txy7Zd9MpTJXH%2BEcELjiyDZuFrQ9HZT49vPnlv3IXdUVyqxWVvMZZIqDx9CBpdDrObZiqh7T58JkpSx7Sla166iJKwDJQjECm1tg%2B08huP%2BRP%2Bgi5DjHc%2BqN8tSalGWALFDSfn5XJjMrFU%2Fsb0QKNget%2BEQjljZavKaiFpZbvb%2FmmU4zQpnIiAUnr6WXit0qEI3q%2Fy3wWHw7pNmJGqekUs2NNg2wGf%2FQy5yW4IP9txrtspX%2BbpWA7YILAgdAg4fMfQDfzc1ibNIGRA%2BUvWFEINqQNE5MYdB3Tq8DRvQGTJWTvUDF0odxlNBJ9tK1CoZjlMWD70kPBA4g%2BZeRCCyhs1SN13Q9um0ciVcsWwSTCuaHPyU8aCiztbiz4RtSQ3X9cfPgzkU3IkPSUPN6rMq5SZRkNJjqfleThPfB8%2BU1FBXrfg7euFvNfBUv7RuII7uyv0UC8Rvz%2BtdS0j%2F74sFPphM8WWePUkcf4eHW4wFF7Q%2FB8CKK1wDJZVGammdaof%2FlMa1AnyeZEV8zU2YU04GVDEhvxjvXcXU%2BDzG7s4Tan%2FP18UFltAHdbJEGGGLE2Rr1sYZgtJ34JzAtHYzZsmJnjttrBMWWnlNulrLc8GxXfoi20YXDPMi5x3HDgNvfptBBSsjuYNxXo9KHkugabz6B9Z77B1dvOdcjaPnyK2pvcUTWtIQ8RfivwjjwaSXaGAoAuy0GsS4ff1idOMq7WMnzw%2F1YumFR2OnUsrmEm5%2FsgKstf1ylJX%2Fz7kHgcPS3k80b12ZLL%2BaWwHKsg%2F%2Bcu44cddflgK8EUSY5XjZ7eagj3Kl%2Fa9y7Vt2zK4%2F4IbypEpuR7%2BZZNotKKfEHYGQ6Bi6s2X2pv6eDCZrdvfmyt9VP%2FVQOzxGVBSlXLSJO28E1Zd7jHjjYj08SnAWUf6E%2FyEM3patPrvSkDHLhPWX5MC3rD5pEGYdqN4LlT0mHp%2FZLZT3G%2FVY%2B%2BYp6j%2Bzi1SDt7dgDpco4%2FPEVT3b4AkQPPByVcAJgTpJ3Y6828ontCBLvVeLu23egYCdgaCr%2BeV52V2f785kdHeLvvlWd%2FFz%2FMKzUsIGQ5Gbxap2NMLiwN1fX%2FSOfi3XEZ1ReZ%2FI0p6rNEt9auGFoGoucBZ8poGcjWFhEf4XsU1I4QgYhGKNsF7owSZkDZyW8zhVs32jiBYH9dq4Ez5ZRmuX4DXxFFo0qp1IJu%2F0LFIriemZqXjFkR5BbrG9nQz0%2Fx5Hm2nFsqxILZ%2FCO06%2B7v%2BlnNt%2B41GBvl7E7Uddzoj9smVFPGut2jxSYghNliKRVuyjWHsKvQK9dhbRUYVgqd82Ul9KKwxMI3Fn2CpgEm1gEyNfezJ1QyiY9SNdAom6xOZaL%2F6wIgLSLnQev2ycCt064byeVnhBFP6hiIYY%2BQyOcJ0d5XNN4ZNgwiBGvJHYvoBEc5DQyWf%2BtSyaFxxyg8VjzVL28ckKnTFofUCvc2fjcYcwxUHfFlnwpHt0sMT%2B6P5k8m0tjaSbPH1hSJBDJbMprrITPH2E7zNzi4Bl3zNCsrOsbyErTWPmCVfq54tx%2FQ%2B%2FODzsS%2BkfvTnbvQshx2kl3Zov2QWj%2B01%2BzW9ONZMWBlR1l3vyYKk8TXzUx8iaVEcQdgIfjc8EZIRir9lrv%2B%2BpfoJKHy0NujhS%2BMvBDUnZg4Bjgj9U%2F1LQ7W7IwRwNnqUUmOL2qDnJN3G8SB1zxz47Y2GWNuCss1R0MxCIsA1TPJ5N1zXiv6NRW284rFZgWKG35pDI3Gl6lvxB8UqZ2tR4TF7tlsZINLA4FoCml2KpIwazVbE6QoEKwFjnmSXUlxNHOvCEbx%2FoqDdKwGANxND0%2BFJA%2B7dgu9MWIX4zJwpU875DTfaB7nkxRlIaPq%2BBRlPFAm3M3eN0cnnPGtCAr1IuIrLymJynOuPdQ7swTaJaQS7ECOqWvEbAXNDTAUbWKQKqtgx4QNR%2F5wxickm0PD6N5mHgzp58iyhmGY6lbZso3VwXmcviDHA2BQcX51dWrkHPXpDLwPj24Pi5ua3GFodKbqDfB0JVxMFLvfB1nvrHHV6dQeih5BzX2qSXd%2Fp215M9coJDDJii3Zz6EfghCa2gHEgShiu3Yf023TeKICz1XyJo3nglI3v0Wg3d5wdlReHQN9TcPH%2Bffzp3Uiq2OuSvjnwvqBcRlfAfF53sPz3eJrO%2F76C1zFswKolMZyVpXnx6swP2qqKY7nPGtELuqfYwJC1AAF%2FLMD0jbSH4XDDHngztE6VTkkNVx3bzSDKzVAt8CP9tZg2ryEtGVFm9n46kcx9Nyg3sDLf0ymUrsfPl%2Fv6dfSAxAHr8X8WeLdhYxxsHS%2FHFS3D%2B5Wmk%2FLsJuFgKIngJnOAkjvOAy3JdabczwU9LjDDUx0BVPIdKg57pdaTyF9tmlWY3%2Fko8faH9izwKONA4XRVZl7i0fnnH1SnnvRqQ9TeqE72BOitUZirrzj7blr4rEvcauOFDkkM%2F%2B0yd0U0%2BAjTJcbcXP2nuEWE0nZSmppJmVvFjyegQcplAz4y6wzsY%2BYjeZBOV6LlhycQyttX9VuF5yl7VE%2Fm%2BDn5S0TXGuDy0Kt%2Fuk2oOQJUAR9QkKjENekMUkuXopTlL4xF0Mqe1OfgdHF2yJdASVraJEKpFEUBv0gZJv9FDGkgZKh6t62xRVvVA0dUq8nw9FwuTA6Zr3F2FhLopVyO22BtDaV4OKglKoZN9xeZgTe3gQ7OQ4AH4v%2FcIRBscsyW98wpdYUZ6ExRloPNJhAGygGD8BVDl9NZC0toVN3Fb2ZQTGhft2RTEYFzupyljPYFjqcrJlLoXPGsuxgpv1ZGGLgH%2B2IgQcBJ%2Fvr82gvnYgl7NdtrjaPmGhpPfA9EX4s4GN%2BEvmrBU6SO%2BqzPHOaYD3VIlLxZ3jgAlfAgwt6hu54ZXfPF%2FRIOJeodmCM9F8kmECuFLtgQoq%2BxVaMlzrAhukbey6ILzo8J56XkfZYNMHVAN76x2jQ4cRPafxhvJz4Vj2nzFlCxj7bXHx7zCz9bBVQmcWRjdQChcN7XvMKJfUYzIOmu0KFxcA4iV6ib2TIZFfXv%2BeNLw2scmYPBxRZa51SOqHhKn5TpaytrTZ4AFEu%2F6hlnsgjRQUSC7ncof7WLz15ePGckygyi%2B4SJaSxmZ4MozdHwdH77QK2Nc4aZGTKzadROtGwBOaLWPX6wNB89RVmemjPWWnPCAa2%2BjsU9LdTriIndsOcSqJ%2FZmz2B2f8mis8ob7WuLM8IH4U5ZO4ORcGMIVaNIvowsQ9NWiPkU3yavGq4PSIqcEUZ%2FhhynNq%2Fchf9HrRLj0fjstaZqT7LR7VmYBdsU0M6vkr%2BivygDPNnTS%2B8FOM5ZwCj7zxF%2BCUXa3fzLyWEQkdF2B%2FiYqAvGvKbZec5GczIndydr%2Bx0KqDaMOZ8UnRITaYMSYCaaOBcNzDRkZSg3a0TaHdt5LzJgoUEvPnK8hhTC5SVRHM4dDcPFhS%2B0rJlJvFQ4shHX0TtDSyXbGGsbHShLd2pN8Zo1xffjHKZkBbsC5mIUKozrLdxHtsw%2FrAq1jmrV22i5tkIKNMSHny%2FNHjmuEphp5HqzasT04IWJZ%2FqeEOQ7JB2WeEYxTGhu%2B6PrDI4t2QzNlJkTfflClQ1GwZ0yGhLnqcNv%2BxXmPqZvR74oIOKLjb0686YCIPm6nopwlgJLvoyflCNzomlRVG82r9j94mUdcwoNCtm7FywpLdUJTWTfgi8nMLJd4Ao5nT%2BqaGfsvPQ%2BHQGfiIbcKH0KRs1k5%2BJ3RUT837zfbByMUc1%2BGWvyBcvDB4UXpa43WUCGN14wjgc9SRqrZJdsovnQkbTgwlb9lhgilXc0w3VXuLZFUV91atMHp6kzB7%2FajWvB0yN82eaKOZonOhqqFIvXu%2FVTayBwG%2FjrYOoYKYaCFlI21L5LZpBXTf22RXRYR6XULcceT%2FPhi7sLC%2B0hcX4xuYAtbmtYWxl8XroK8g5lxKExVxfPedFRugGxj0L9Hu6%2FrZ9QnthTVBBkk8R3cZs0nMXPZMfXyLsWAyzxx%2FP2%2BM9H5Ee36wv2fINjTpTEZX6Gox%2FMQUNmi4HaMbd9ilwPPNE8BLDa8onQOpX%2BylWYlw%2FNcC6JhFg%2Brdc7QdkaO9MQaVD%2FGcM5jU%2Ft95BbGyldIqXr5ihhJLkXDqNowpuxEH5pEwfbBraYpBeLEAETYqLx498GB9NndoaMdL5cZPWy1O6RwRAhlR42i%2BC2CKSFU6TZ0bnNhJ%2FG%2BtcmA%2B1mcEX18EQXlPD%2BzFmHX3eMgR7PHmkW03BKovuZheqGbvKbegO%2B9ThipQHFSb%2FSUib%2F9kxSQiqPdEKvS53x5%2B5VuFbDubjmtSEa0gT5qbi%2FqEGpmIjL4Hm0W0O02XLHmpFTas%2B4Ns7mDN9YF49ImHwoIP%2F8gLCqFhISUA1IRVTAUsoKU8VfNt5cEolh%2BjvtHLJ9wDvIDeRCHJ4UeL%2BAb5lWs1q7owzy%2FQnxN6r3LKC9poGoziTN%2FUOYoV0seffbYc8BuZJ032K68vefLsb1Z7JEnrSt6GYxMTH98J545rlp6sGYoo61sQvMpEzj2SNgJxlZz0CoRR2zx11B9Yla7FcSeOvtp5zO4vpS9mCfu2AoP3Uw5PrJJ1M7UuAV7H0iwndFBJ0eJPfzYc3we3AASrIA7ZBuTz3tp6%2Bylw69zD579DTPuQ%2BDMKjlfWHQeGA24Bq2smcgztC9RnCOk8B6NZYVv%2B%2FszQJByclMi0c3tsmamM8tcXjAWp7niIZpsgZEfrRflQfL6LcpzX6s95YA6IBaHBG14tBFugLvZzlEkUE07oMHSvZa0DkxHHlYlbh4csqKfZTHdJdwkrsOHW3Dy71PAajR51iAnLB%2B2bdXywGwZonzlQF8bEesHG5EefhXkGcsjpA%2BrQaV8lGiZgVYkKsT0OWsDIStZfSidYgMF%2ByB1woh2jimRBHGvlSMmC2gDBq832i7Te16wjFdGS5rlPgNVKzWGxYKH23wLGcPJTx8sZQ9AwatxJvIgsEOhqZ%2FYzHJVfMEHORwEBfLY512RKUbtjXAwKRX%2FuuvkNgHkvEUoJatLwMpn67D15sK6Ny8%2FjT3Y5HFXeb2BaWAkno0bWUI3Jn12%2F3QuWCIxB9%2BvHdFj45%2FBZYibAHOGUn5ysXKanu%2Bh3yOy%2F%2BQ%2FfZY%2BcxiUiYhuxFEVDG6hR2mxkLaHAOUfS7y893ZFQ3O48aKk3DYY8d9XLgE70bGs4EJo%2BxbTspbnVK90r1ttT1pY88y8GU%2F5zxGRkJ5DOEVACeNFG1ER31nAFDwsiQz9R48AjzyhttZ5WSK%2BIRdSGCs1wBSpEyk0qCOrgKNR6hbRZy4tFz3MLd%2ByZVT0fR7F5sfJc2nP%2FxEGjE%2Fk1Jr4ZWIC6gq4OaPig%2Fgn24pvszTq1jCoH0Rqhmy7qsIzGKw4z%2FOg6lNyI3aAVFLKaqphalE%2FTIwaQSsn6L4glGERBDHMyKBO9MQLzVcuzOF40vkRh4uWCXd5VGrgFRnKE0%2BB%2FwqDxpVim0mNzgyjCM03G51%2BECFYQW17rr9JUq6ubRRDRC5y%2FvjACLfYBqA%2F0VFDMN8VlYAiOglpdSMGKYtI7gR41rj2F4ue3Z9AGeRTyznm%2Beo3bg2wwr6C7GDo5VXnYHlIuIY3PGIBHVTAuqEUvKTrCovTJHV5jrVWPxZagKbMPLz91lKPTgknIPRJ889CjHMs2pXHlKKlovSoVRgUURzQufZRtahmUkeOUOXWys7%2FPOso2CwB42h4lH1ITLOXM6EuQta1im9i8lFycVjQjFLiPu9QOj8mQ2tnN7TG%2BxKM2V5mdGgCNSLCBZESeHQ5ZxfcsYLearcALJr4fnvRaYxhlR48k7tL8z%2FXfsTzh8I%2FuqwRrULjq7ki%2FbGx4BeJ5yGGYvDQYLofUuakW%2F58KJ2d6tJVXJxAE46dG0fgetDqAqCU4322RqT%2BLmefzA6F%2FArjsDbiaruntvVpezs49IvtVLswmdmw8OPv42E4W5ltCw8gMix2Mv20weFIXoVkozI8wVanw8tGquqYKCqiKfB2K0ntScVYjY8d8SybkWlPjMjSjW33aZTAkViKXNi7z00at6xxDzTdJmQMh9r7GMRRLsKpB584ivF%2BuDkvXApyr8JQ8Wvy1NoTTI5Wgrf22Q5d%2FfnW87csFH9z%2BA8hGSKvZ4VseTZW03ZuBRihVVZcyiZVofLSRCQtNW8qUQ4k8lEoehMvIcrqff%2BsAwuUP1OwgOSgIShUcZyz2X4pcNvyFygHm1Ms1yrPrFO3ph69QAfziTn9%2B7KfmZ%2BKA2nOCWNCkKylOY4YdYkfG5pkD6xCRa05c%2Bl6HHaAiMH0BQXpIeI%2Fg5Pymv9u88scDuXfmzVgawA5NreZ8OrqHHrBQRbE%2B4y%2BxxsiUOS64Wpa4bVZBbieegjkMHPSHbSIoKrFT4tOG41u4Y5LY2IeQxryF2F0jeosMM%2F%2FXd%2FVRbCGSLoV8JqidcGqwC1o67mUgreyPv5bS2pS%2Fu9dEtc0fPV0wrjAO95baKqtyevz7uIP02gT7YBxNzFixEJoFuhJ9Jv47mhHmJrArzYv8h1ibDrEdWWp6nP2J5YNqtYHJZQSk0G%2FAD5%2BNJkJEdAdpcgchXx5JSsO5csZNaUDfHERSg7RzlFaa9LuJXwz5T2V7Ia0WUuXBZ1JMaFsWtTQOkDkoq3CNfi8prO7bLx%2B8yVvTuWFi3IE%2FsxYJnOrhKxMnGIDpU9RRH0PCyJy4mdd7sarLSAN%2F%2BiKxPdgYupbIpNF5D6j92%2F5dfwm2OGarGme9ysDrQ%2BUVJPUP%2Byvi4PwUZ6k5Ts%2F21ZrSz5US5RJRs6JKfjYfXR8AWolIQfLQ8oLYkfR5sA7X7fJvTEHCqPb76ixD0EoLCd0%2BjspnzftnfyuNKAGlIXcAYswuKeb8pHSwin%2BHTROOswOpFa2fc0FrVDq%2FFI0w1P%2BkU7KDoANrejWG3tQEfT3Il%2FmwpJ8f7IoIh3euzUcH%2BDqmJNfZGtiUdXZmhZl1dLVH7o5XJ0FZlBuU8pmYEMekMc%2F3tahgSgSfOXcJg8%2BMrBELaLnVci89WthX5Z9VRkv3xppQP7CId0S13r44DEKpS7fwfyKrGsqWPlJZL0KmEyMztYZlU9og0xDGjLWabRamQ5Eg5dcwJE4yolYB99VLm2vfL8hz3NV8ROjlFGdadrZI7nh2ikwNdha1oo%2FgW5HWAKMEAEtCgKQtCUXCxTdzWCrU1oTZdLATUsX8PcvOTj2YiBjLvK9R%2BfSoLYU1fa4CiDus7PiHwcBQ71aka0bwj9%2BeRZmNSpvubw50oreLAQS0CDoh7elKp8Hw2SJe3EnaEHXJ6iwdEMpdZQdjCpzHU79NQQL4XpaZkQl998L2MJYb7dnVREdGyUoNY4aaT1R4ll4mSTigk5%2FIe6cZSlZvQda5G8YiimMl9LDVrBgGmgMrtCJhnIL5rb7lJGAxUeB2XBtoW5jKyfkoaGunzjaYZqK0pt3QYpvc4sJDapenvtKn98oVSUXtfz%2F6G4fomYBMrybuVuCXoRivCIsDGl%2FHjkIxtonTKSLYm4XRjQRWjHGWkfxm%2BUgN3kx39TIoAZ%2ByhXg77o2T02JJE3tEzszmB5FHwmk3goUVzEx27%2BGoLHeLZTo4kbylIUrkPQIQQ%2BynjJwpghvACi3znCxBNqeWC3IDtpAbj5OBGiTF8TesqVR37y%2F2L9gt3AEBpbvXFDCwrNTT8OgiJajq9HjLY2kdRLlRJ3jbrC2VNWghXocbu7ITypnrB9tyYLT0EmNgT8J2Fa03kO97viqhKv0lUceopfhsQnT0XeldxHeOqiEQMQ4RYwWhHdJ0p0PspGQa1Cvfu1ZRkpi2r2FPI0vqcxfxRKr3FOVqkBhJAE%2FLV2CKR%2FtjkwPOou%2FyXzYADOubRlX6DSXrAx%2FKL4KH9QuyamhUbf%2BLR6N0qvVpHhLuCrfbbly8G2TSApcdZjvXSo4UBEdD4ijY6w%2B85ewXB9jI9%2BUAl8SLa4HNjsq0Z64YL5EQfm2mIsd9sJvSGYPlkdApCwodmj79%2BazQIUI1nJtzH1NySAYuSLURIOMsE4dARv8ZqsrR9%2B3RSDkQ4XV0bu2wbVOf82i4pDT9W%2Bdf3s7P9GVRsVG3QrouZ5nw7fUrbKaj0d7mVIxrOn8CSIbPMFl0gwi9BjDqZRMeH%2BTbGtvaoaLHavm73E63Z2LhZS53qjGd%2B3Cjn7MOvKndp0ofIt5Fg92%2B4OpKHQfy28Wucv%2FHuPMuC4ZAkB3YfkPQ3abu9GSGl2IXEvn5Unupmr%2FaH0mFY4wJWq4yyH1zVtH4R5wDddsOZUQ98Skkss%2FCyYpffSHiQF0ZpepdO5x6pHJA225zZk%2BGube8SncqaAaav5weRbLWaoi8hbf0CbImq5YhkkG7ByHCf503AMGQvzlL7wW7llbhqiTWeFPDFatzGoma7FVDlC93kLrBnPAyiPw0jrztF5u2vTCMiWrodOiyGSeqg0qlf%2FcuWKjSplThC8ItKEhokidf5kKkXeLBwmb6JBMpJ4AWwGvtdPNn8KPwDI16WXiWonU1dmEcUgTTRJeYOzJDpd0ay0zNUHdLfDu3zlNPcOrqfpph1Z%2BSfERYzXw%2FoSLlR5HfB8CCE3gjqsoH8HhJAKJzMSfstu0NvRQNyGap74vOER1d2y1O8Xtl4NeyXP0YQVVtQs5J3UdVUMabEtwqr%2BKaEO3WXPKWAmHSaGfaqGCiN25CZabbhcvOd%2BIy08OFjsCshphN%2FcQov%2FwW5vizfhuHOjthLPaiTGqVAYHcBHM6C4TbCjHCLkpRlmb8BNerlTW7GQ75ExUHL7L%2Bjru9zjSmWYlSI3PQ3%2FDDGHL%2B0aSBQVMCRGDAIQKfzJIuZhm5BxS0eX%2Fd3rfGQNg4nRUHu8PkYWfnvRLkM1PcH34Nv4RBTbKCKjqbhrDZu0AEfi%2F4M88aVo5yXdQZ2h4GpR4Km2tOcu5jPH5KyQVxsRmUYBLvVuL08SZAHTMycLHLY%2FU%2FysV2r9Y6E8sUTd53SVDHE5Y2wrD2dcvtPy1wfUK9Uph8Rn8ps3%2FgwzowxJPvxXpigNSGAHyPB9xF84CX9sy5JxA7uTxhxIJjbwTs%2FVbXPmxGvIIzQ2xcjD6roV%2BlptoC7jvWZF5yOKnCS%2FdPQJFTC%2FmqHUW%2Bdo37qOBdb0rZZxtrchwmRnb0q%2FpTsfoLk3cBuEWf7MiIs8GKRPNlEdCeO4p68lc4rBmw3OPZd%2FK9VE%2FZdiCTw30XaIMm0ONcHZppAHprHJBbRNh6dhqdIo71kkhFL6NTD5%2BwOI4IyOxxhhbqHaEVmTnxrm1Dv1EuormAhfufvyIGO0%2FF8xyVrF0bztXZkVzIv0j%2F7IlJdaW6Ne1Vk1qbFfokaMpuayUmOv2xPjyVIM%2FXOI4BN3gsmdovZZr6WebuC7c74MYVOPkMx4f22wKBl0OyI4i4zkmocr8%2FASFIKEu1mzkKQ4hU6WLr4rln%2B5WirJjqo90%2Bur%2BMBY78my4CYTLe9cUkC0ykaEw3Ad2b%2FQjnP8FRK06iAc9t6W7htAjwTHpzrIssOrHF3N9jru6uqfgwdX%2FtMpI3SM4jUMYtVcajw9sz9uV79CkXjdnjTr7ch1oOMW2XjlsPGzpr0r3J5d%2Bl2EVcDH5Vi4bT6cZ6twj%2B6glf1HUASBbRlluyKljjxAeKGu%2BuZq1BxSX8sRL2wrLSPeHcarRqyJ9HacmjqNBPJ7tos1vqn98aHMVMOhZ%2B%2FAvzz3M4zMidYyOZoVt%2BjErcALmOpDwkl71mfEwMQbbJGSSr4tJw2oI%2BZ8%2FEjjLvkHjJ9ke5XorkWXbQcGr37e%2Bkf8WfQ01kKn1rFe0FchNmBNiUW5bZXN%2Bk03IGfL%2BollGqs4q8LUrCpxQfuYRyYY2bgAiBaitnMgtwvJtbVBjwKp4YGD0fpzde85f9Uo7TSV4zl%2B5LSx1M3RDByamgrV9luAU1%2Bdh3doreVGzHbcu783kVOlWXKHE4fNA9LbamQOJzWlPIoYz4DfVxgQcwt6%2F%2F8cxD%2Fih5H41PepInwIT0GWZKCsMy3nUVCuay5wlkfXqS%2BytvQ5e2uxrBqar4Aphk9X4%2BTeaS3tb20F6sPXzqsqC0iLlCDgQuwg8B3HsSty8%2F4Q6rmUDgeOVuzAHeQF6Yk0TtbD11K3meodo7toc2SKuOFnH3QgYtw7UbXdHoF4WGtyS9BRS9c9UvlQ0nuO0CLrsltEplK84KcnIO%2Bwsz2Ih1%2B4dnFqjga0zNXkH3KLMn%2FUFuD%2BCV36Jdz5dPrYpkutzJIrGxO2JP%2BUZBl%2Fksx4%2B8vBOsoAywggnLW1r%2BNpBH2MAFzFxAAkP9%2BIhA9hpCPmhDmMahYhNxm%2BGiVoc%2BQ8rK6MGYXOoNg%2FIRBjq9Ok%2Bd3sWV7CaqfQVgdClZAEl4nT7Vf2booaSRXDWuUXkuQTMPZ%2Fe9ggnXlmvZFd7Yw3bCzlD75KKTysiLtbg5yzNXHFr6AwmIfW4USrIcPLwOVupG2Y%2BS1UJidCD5ICDMKiteiCLqWNYoggP9UiL9kSLdA7bfzUZFW0dpyRpkK9uiUrWlEVg%2Bt3Bxs7PBYk4%2FKcQGS78VC7CMpHhnX4MJUgUuDb9ZwreYFet2U4k34vn8RXCHp%2B7xgDvtZGKGqn5Sj8mVzfqcReLZ6Ey%2BePpFl5iRhh4YU4pXYOEZV2fKnPMt8nRNXOtkjsj82CMFUjbaQaiwpwaRSsfVcQqEP6kpQW9zmHvkhcMKl%2BrHmjPvLjotl0fMGNhUhm87Eax7vyVPVT2dPfXhxuoWuOpfd%2BW%2BSgIimZJSlWBuV1rm%2Fdxfrg%2ByDloT1RX81Csoi5dS796VW0Fi4y5eTx45jHKYypMm96dTAjq1aBTQhOkYDHL%2FyTyJiNz0sSKWaSF28hMUm9To1WCxM7uxDLounu7PmLJyncmGDsymOAiBIUaBBhAMkVAO6h1CJYloUpQtEOdFEu%2BseNIUzKPBhQZLVC0TNiJ0Dl%2Fu8u11zyl9x%2BzD3JhtbO9iL3B2HCmxsczlyEVxNv4OA3eXAaImASJFymeuuKItRZtMFoyQb%2BpSHkz5xJGZr%2FIJ2UKR5pR1pvA%2F8UCzNIjNkDK1Ocph1EPX4EtuI33X3DrSEvHCHpThBLKw7Twp4vkEEKJXwp5ZdvTGMQ%2FYhp2klAKi8E0vToPXnZcGyj72Kq9cUZ2QNTEqORxHEuqRlBPUSpDzo7PlIB%2FvXZIsZTeR%2BxAsxajtxh3ZT%2FBviN4fQ24of%2FxfH6BC6ev8gzaVc%2BgucxcqVlwLxN3JNcLsMkTXsNYUPxmnZiyk%2Fxh3aiZkjEZjEh2SdTpSFuODWxzBfchurLNTtu9lRFcoDvRk4R7M5JOnWEonTjSSe5yCxz%2F6P0EPFE%2BoLEm5Fxz6LSpVu6oKjIvMnUKtETmfL0hW%2BKVoLRQe7k4vMA8jLKygbuuqec6SVxGp0klqrCfuze%2BW%2FVs%2F%2Ffpt0L4HZ6%2B1HC7vu1OU6sgb2T285BPHAU1SbsARGTQQHRyEv5eO%2FwAeJOklXQDxAlCsbQbGZxxqPiJSFo6zwayQDRzUm2x%2F%2F76%2Bgidg3r4rkQCHwMNI8Va8c1F5o9zDaAiqOIo1GaSXJxcEkUItH3zfG0u8YhiVdlT99j0SW1narXvYBna8lwbwAX1XmzM1KYJ%2FqgGcMTxc3b7QbOwLxOHk%2BSHaZCP0fPqWVtGKRNQb8rK4rHqp7qAHG9Z919Ip836P4j31KZeEIVRhImSb1pVAOJVsp5bMwyZfx3VVLbpmnaTA6lezBEh73ZogIpGdydK%2B1ASxTZSjGVDxvBP3AOJdYqODvd6qlAdKFRIx34FlEPIr7LMFOWCAqVkVtuZQaasd33R6nUNbAn1Ge0vHvfnpGPAhEr03HY1UIwO%2BK%2BUqJOLeJl5Y2dTiPoNJ4sG3qgFmwArVvAZ2AiXQGP5ZLjxtTi9JWVvtmig0EE36MH5lBPMpXJbufO9M9RxlfbHn7qdJr6fUmv2naosGN29xXht5Q%2B6lxiwEihdox0CNz1XuOf%2Bjete7NHkbJKuqj8kwr6Reu%2FOo7rJF03K8Gi9zy1HWZrEPK9u1UpVXJlTVCbIj0yXemj0y6ZDehNgE2BSlwhg7wlbB%2Brzi0d%2FeICQjpa0SS9wI3AlN1gcEEJgJrKia4WNInOnLA0S%2BmZOxNPEeThxUmOqAOML9rD8SxYsQxWIPGYHrGd1YBGO5JEKlaaJVMUoqh%2FmEKGZVwAxfthh6EvksLe7J90tq0DoqE2cuP7aHbf2r3VrCD8d4s2Ejke0AGN9Phfwx5n5Q5sPEuD0SpDcCJzK8G5BoBKvxgvAO%2FQsH7tgsCSQyaGQ9ovuGgHVfnvq5qkQoBV23PNkdinZSZ0rIdTjFDjRqGd3tZEZHkS3QIRVCZqo5B5lh%2F5JK3ENsBzm1De1L%2B%2FgIajydOk434zqpf%2B6l8BxxG6oXDbG%2FoCKsexB6iReIbE2E50mp1AfHYP60ySluiE6A0LXfpR5QjFbEHiLc4a9oWLTK95ODcwmDJIWq2USUPbJnGQJGNX0jY9rmoep4fBKrgogUcGUOHFlFcBdfG40kkwgkfj0ADcq2ho7YM5oDPZ%2Fd7h0%2BmVH6CR%2FmuwfYxwHDOqM%2B5U4Mm7gdV1fSVVXq9cIPgrZgDWDssBbpE94y%2BbZ%2Fdk9LEPqcb3Nj5X5Ccb1atMeMZySjRborWiG6VnCYSKd%2BKCcvRPCEnbOd8JYVLSSdD5cz7p6jfgJivbWxdKG1VM8A3hxyr%2BfnaOUFCnBARECzOK2kiSrFMebmNEWvTyW81KuLfVux9q7SVAW7si7%2Fs1s854WapKPZoZJcbTeGSXL01XsccEK14jsJ4etiNoFaEyU0HjhUL1Io4QhCD5F2ckx9Ddh07p00SYZDnsQPAKqDqbpt2%2FpUkEIPfGiZSrog203ZQjbMV%2Bd8ytcSQKKbnyJ5N07732j6u7E2ydH5E%2FpgQYXAHDSMOgawBJcY7hwr0pvUlsw87wCgs5w%2Fgi1JZZxPdmg3bpHNXVxhW5wMq6dvc041WjsLezbeL4mUSPA0TLxOst1CDNi2oapu6zcNycUkWLBsAb6j5M%2Fw6AwNKwnZ1068shS%2BIAmn1%2B51c0hBPIBTMKF5k6e4Gm2d8Sjt%2FkZBVxZA2d1yb522oeG%2BlIsjfFChe%2FCNsvoNg0ST9BfM7fdIIbpQTczzTCzGS2ad4jykiWI5a4pktov89wUfzMMtVZ1zo%2BDShO0pxqcCBlO8WyNH3c5Sz2lyLO1WfrmdiLNeqWSiRkmGo5qDliYO0EZ%2BkNxXd3xNdDYEut8ZgoZ37jNC0yEmKT3qBLdWCkVJHXmOBpCNhgn%2F14fTgs1pZMrFYi9mClhvEf5RCaVeiKd5DKcQ3X9Iy5ziYI%2FoouZ%2BE%2BVnXsyOjfiC78tfnMHS4ox51vSWBFdnME4QlNztWrZxDseq6Koa2H%2F%2FBeS364a78EP3U514sGqmRZjGfjMBBPv6Ae55M4T7g%2Bwk9Pzr93bPAjeYY1jXCcf4KgeYFNwjIaR6Hl%2FMjufvt4yu%2Bu6MyCvPzl1k5CdWpET5PvCqqUayEg5IV7U84jWtPICCxDFbYXwifl9PoikfAZpr%2BYDU28AupvGaEvDjaUp2zi%2Fsq3jEGvFrn39XXdrnuy6vvIKMjTIEYQFy7ROS6jhJSx0t8m137Wm23UGm9Rv3yurHn7WoDclKhcrUrp7jk%2FmD96hEriZOuqtUBMfvydxQEVjjov4BMPWf0SWUatfDd01LJI%2F9ssFTuywjN079ogoEafbD2KJSX1ROnB8MCMMPclCKDdQiLeIwIQtg5%2BtK%2BQ5PE6ZaROIuGkgpfGL7oGIBcj0ak2zdPuMpHD4nf5g6o8434SRolHAxN0b%2FCmJQNsjMAxyMXi7iwep5IkM7fJ9xWBiDN0H%2FbmWSw2tgjZBttlvoK%2Fy7sSjwYfhnffH7yHJQFhXRmvqKIi9BHklGTBDAf4vNy5jNYZzBwqp75atHRT2u4rSzEBecCDBzQoLrhPjZxosM2up5FWTe1y8TsHgH2CBJ%2BksP4nqfidvp7FL8UrthnZBs%2FFqm%2F8b%2F7DsujFxl8KilNx%2Fq1J1iJ3jQ8TPnuqdW3TsWDrMuyOyVto0PjRDWS2rjWoqS3002vmRxhOzu2t3JyJRSb3tWYwDN8UBo6kTVMZbjxA0SFRda0s6lxBrdqVNyJCe%2F0DFtryykM9lnBAdSNEi%2Br6ZaZwkdUPcQNbuCeqjYzb6cX16PVvOOZSzCaEjgBeW5iJ7YPGeyvk2vGZ%2FDtNgzRqdOBPQlgqkspwMzfY6HPJzXzG%2FuGZWgq7KWbKksyAtPyPuIHrcYI050DVaJILO6VvWvG16r8UfAgln5tmZZJKysOKdZhBSkicWSZL8cmRnUYb9Qu62eyAnUuCXesmq%2FZJP%2BwlG9oUixNeCU1sdLRspmosubOXgJZzXHvuZQjpfVJpKE2K8fqBwy3uTwspb%2FXyMyo9do7MYGpTh0YGm5BvPK%2FThhI9u82ACTSKlAe3gWqLxykU0oWSBIL48w2mcFM0502VCtuEcbhL4m8ULAWVtgod09RR12MpBnFG0vqes5KoPGT%2FpSVlpkvoBmKg2nd6AEYBzxJZI0L7FimrEVLVQLlQh6ggYfvmTKF3%2BAcT1Yp2c2D7Llt0ogDbB%2FSSTtG2wiqr21sV8DiLbZSHXNX3o6U8joifCi9rOxMfTUyoeBDIaoKYWN9iBgscaLvT6L9id4h2H7A%2F6muoN07w9E3C63zKeZA%2BvQ%2FqSUf26KEH6EdVn3VFxTLvISDTJuuuKtmNms23jmM2JBIjRUf88b%2FXMO8bLJgp50XjFcvB0or2r7nxyhwQz%2Fj84DoYKCIq9JxGSn%2F0wiClbBtusDukQYebVA2WMiQd5RApEJjgdgLdaPNaj%2Bav4xrqTy6M3HZA6cndcosvRoKFGQTIUURR4uLUI1Y0loFEBqjTGHQFuyRqr592rDobgfeUWbop9FTfkrEEOVjSHDQ0dGJxIY4unLvM40SfU%2F9FgqQiyuNofJJDDAr2%2BgubVQA%2BlPD83ZwV7c7V1oBzYQE6agvQ55MBXjC8OJACIMwwHJiBP0ghdPWrH6YRWjtbBLczOe7Gq8GllH91aXZaXvG5ANpJ87G5YyAsHiunNj1n2WDFaTKZSfCfGDMV%2Fp4UhKTfOx87wx5FZ9JJLpxRcYXFHhZpmbawqkwyNXwPJXyqzsKkbkdY%2BTiqOAV%2FO2aTTFYRg0Z44Tr7vWqTr1rrMxS3fQJTHOn%2BDDnbvWoOOTkfdMqG30pxskQc%2BVZZeytScJ6SLZfYVS4Si9RuiLl0xZPFAm9RORLI2wQlkCY1Bt8qXiT%2FxijCa14u3ljEGOzl%2BRzfU9aFhTctOvtaURPUevx1ZaG7yeLvcpTllY2GZWKFZkqNK4Q%2Fy5H3Ec4TO%2BcA5Oc%2BBgTH4uwy1vdx907gipZYwA73IWz6WZ5zHFJghsOwkM%2BgWed5Sl7nXPClKDLy2Sk4Lie64nPiuE3Nj084aZV%2BcJd5W1M5XeXliESrkNp8F4HudFlVlgKbxPDewCdoC7LfCX8CQd23lWDJGbsPi5EsEuDntOEu9n5a3r%2FqgNrv91zuSVhkp79gulXQB3n0IZSPDPI15cC82uTYn9k%2FRg0Y3YgP1HD1104hNb43zEembdB0zDxzk2wDep25m1ZLP7FT2IcNLZ9JS%2Bp%2B2mAQXA9nDwwuxpD9vU2cgnRlGrMqiKd0QJHl5wSTXUHVBkjg5oQUPgYSkXaW41vEa%2BXxI7XZzxXgeX%2Be7sowDGs6GhqcsWRpvFtvd3WY7hz0E9d%2FukK%2B4C%2F23Ulld%2Bc97HpqFPj%2BWT4uoe7sA4SX6tb6UKnju34utXoNx%2BfD83mb9rYSC05apZdFvbMDPmBtpb0IgxZ%2Fayaitq%2BE6QiHx4ZGuwP970ocvOCO6Cipf4%2B0DgbVSig0%2BS4WnvxnxxWgPx%2Be3LsFMjVWK8%2Bm3tF7L8hQDFeURkVbGuqJce16MRp6xl15vl9%2FTGCnhK62697SsQYz7YSCVD3HTS2ASPGDyR0B8mRqeK2JehZ57R%2F%2F3TrlMjrxOpGHYoXwc7TnJ6XeNVhCsQWQb0zMFeiWui57f1mafy9z1zAvP8Rdpga2H%2FjZegEuOtnetPAhc88IOfLIpwjue3LoaQXqLePa4Oqr86wBElQAshQ3CBauMm0R9kXqAft3tjeHx8iDmQotVdqDpajnJFCJU9oIbIVJ45Io%2BDqkvqq6RM20AdPbHtBueAp4%2Fz9pEkPKMSGUcDcDxoEL0%3D&__VIEWSTATEGENERATOR=3FEBCCBF&__SCROLLPOSITIONX=0&__SCROLLPOSITIONY=0&__EVENTVALIDATION=qKURSTfR0s8QnX%2Be760iTUjGbYEnGHjOb7GaybE%2BMO%2F3wvSPfyANtVA2pgdYEK7kwrl9n9Vv6pywwrWi30HlxCkQ7WRfbE0U0ozAeJ29p%2BigY37fHDhxb2Y2TFh5bhmoUyd7hzVwjhEsPO%2F27JY8UvmXy4y0%2FcWKAKyQUroBuuW5IRQrsDaUv5yyfFj6%2FnMnVWTRwYHhwkj9y5e282u3YbJZ48yG8%2BHvmL6flEEaeW2PB%2BKNDd%2BKoBZUJMVKh1zcUPQgOuJTCU7baNwQVt%2Bh8%2BSeJvvMCZTnmjKQfQE6AqQXdJL27gJa1NoTvW1lNCnCy2OkYjZrAM8S6F8mVjXdOsNTHj1xfIPqTKN54nzdFqOmSL5Rmu0rOcKXt4t3%2Fk%2F%2BXurS8XH8lJvPHQ3fF1l13NuVFh7Z1erwkj%2BS6mPQ7UwOX1lI9QS5zYNermZomvVhxLxR5pjhZIC3zRIqKiguUUyMRXQM1w%2B1%2Bi3AO8gP1waQ1uDCA%2Fvo3J60jkojV2cq1jhToksi9OGWIuuCRbQuLNWp4yWybD3ONhIYve8YCCb1Y5ts0NjU6XMgGsD29iwbAO%2FR2phJg6T5OkjOUfmt2CjZVSebewPY%2FgICdsLYN1xnAHbESBzmvMQUYCLaldZ2vAnnyM4KZGSWHVw06YZQ%2B4DNBoT6SWJngxZxKPG6qbBmGtJALlgmTeK%2BEZul0sL8SXGzsvzzN79jRZyfROXZ6cnkVSPBGkzWSK4Fcv2Uq5og9vP3vCufYp2FcRs9Facqei37QoUYxWHkb4vzbf%2BLji2Sk%2Fk%2BAyj1QZhtDVPDN%2BM23%2FniFmcT45%2BzIu1Fz3MstEWgzvSI2hd4RpLzvJM5mFRuy0KdgqOpWGgQIJbUVd%2BOS9oyFuRWQ2qb8drxn2RtCV4zLwIc6pPecC13Azr6mUnVeg%2BwHsP6ah9s6j6WGmpPHdpaKnw0uwvJIZfRQwRfADl5ztduh%2FusXuJRZBM3cTvVeDzdIoUe29h1k9DW3usr4xEUkq9gf%2BieYPkODMoC%2BIJu0LCkxVtANI2PgPhXCpcrmTYp2NqGCarJn4VVrxEavCm%2FOMvNsIntAxWN4KacS%2BYr5y4ww1J1pj344jiTrg%3D%3D&__VIEWSTATEENCRYPTED=&__ASYNCPOST=true&
-viewstate:
-ksY8K2gvD37M2qSnF5wpUXuIm%2BDs5fj0gLFpEbeBL8hlzqfpPEquHIhyZ5fxmNkbU9Y4rabeHc9mEzH20nYjVLEvMfvDtK3d%2BDtgS3U%2F0N0o2jogx4K1gLShDCKqrLkSlCjtg3uSnVMvjzE6KRPMkEpOzjOspWeYuTuZGCMOTb06kEZ37tyb33ObIgPvICE12%2FRsDXlHNR3SKiAqeyHP5EaCX%2BcNd8VWDqsrnrmEA1UorGozoxG%2FYpQxlm1w62jHK03o3FEE%2B8gIqt5br2EQBrgv3P0elakG3DQWnm3lcpo1gJEwC9FaJprycnnCQ4jXMME054YEdy8HfUD30ppABFkRFw95G5hKMvmkIaj5gJO2tgcJMUBPFwRKaMkF%2By4rUHQ2IKRx6Fe815Y1YClQjZs7prhrVMclkobqv3HCwFF%2BkfqZC44F92rVR%2FBH8j331YjyIgZKs8OCFTcxx7KU59Xph5vIF7T2fp2Ay2A2J%2FotWTyTm6DJqeOcrznRwwLKaohC6iml742sUNVj86p7c5xee43QjVN%2FjCOKzIusv87CvJ1%2F3o81HNL0%2BFDwtDRNBN3PkdkjhXUM2WVQMaQ942t1%2FbWGL2x7VedEsVQwuC8qB47ugxgVcBvMEHqe6tOWH3qbVF1kRSCn4EGrwfaL9K6DWBsIUOix6qZtHFQmE1JW5ZA%2Bf8XNSwg9YHBfEzjmK9TfiU6cD9TgM95jSE7RTSxcs5EF9IX9r9mcxMQaIN%2FFVZQsFWXYrOgK9yOmiEfGjWirTmwFfYPVMV5jp8kLqpckTFfcyLQfjhvy1ZE2FCpXqUD73acVd6dLWZWoR1Vo2tO1uLmlPyIl%2Bu7%2Fxv3XpGbqNCobz%2Fy3Z7xFHjtOX7G9DI0ql66rGS%2F4BODk%2BtgOH6%2FqInT6vvE4UCsUA2N9UYyeIffka9lB4XpmUlbsOw%2BNhfXBk9F%2F1%2BbK%2FpEZctlw2TOqVZRj1Qlp5yCgZqugGJa8AYTACwHipBX%2FKvi6N9kON%2F%2F6H7yJCKZL%2FqCsE%2FToQ0jq7OqYl7pqBmhrBc7N0FjJJGpthM36IqexnvUO%2BF6o3KzDsfaAQ4t5wSf%2F86mNqvoUQcg8iIJshdFSaALs12haQVMrFT1SLhFsWsyCUwMNeWDgkGogbGkWOTQdZxLCq%2FbNt0GG4ExguXW8SCXdu379IQ3ZgqfYC4tiJ9muDbdMElA2qgt%2BEev6PXiigEpSm5CqwWBgsVABExvCk2Gkz9shKTQxKJXIK4Fqb%2F8aRlH0YuYy2DG6q3eIDsWw6ZM7RJoamDv7MU2EWZeLMuQb0gOMNDbLr161IgGBzUJPNS%2B%2B%2BW%2FTdDG37t19iun6hHd5pw08PMlbvUERyY4c%2BJvHAz5pUAOicL5ELVlq7rj0R3IoV0ekAY9O5X3QKeApVKC%2Bthvpi3yL35NHJr2t6pwUTswcJnKIFSRN71nx86JdKPIprC30OHJDfpGRBGwUvfs%2BdTe%2Fx94lCno6gzyKYQauACS3ZsnutRFAar6Zmvxh7aMnrGrC6%2BaWWGB7R9OMPC23vtL6F1MHvSZXvB%2BxGWB9Xh2oB%2FSMiFtTDfxPr%2F%2FVH35IMatN%2FPiqUv6mV2%2FjD8Cq2wmJ%2BjgFYMy8ACjGD7CGpMH%2B%2FDiQrRp3mZs%2B9V3BurolGX8JINAoum8STmvUheV68LTjaOXouG16EiowKVmFdTtkGccp13mHjQqaFaFZWzRwBuokOM4jtBoubynrGTGcnfdsrRkLZ1MCKwG28fM7QhQxLpe%2B%2BMnHXZEFYJNXkqgVDNk986qQ23H3LcJ46pt5drBHsrr5RZDqo8VSOdozL6CH%2F19Uizmi7IhjXN22Kj%2FbosEeZU5Spdj9Vna5nxaWSc%2FEI88UsAQLAXq1NrM2DnF88S0f1TtaGWbjWNE4Skcy8EJA1RUMgIVMwShbpxaMhGv1ITBZt98%2BpQb%2BfT4z2xlplQLl3Cym74uH9MfjMDsXtZLrlXb%2F0%2BZMRVSfAc1YYGH7Br4KdbVjiQPo6ZXLRSxuBOcGKNuoGAya6ZjF%2Bs2DJIHVk4OUpWFy1ecxgUteBbdHLaWLgCEx0a03yVH25y875DKpWWUJYjQ36mzn2ooDWgbgWnF1X2U%2B8uQEvPBGFtThlfIrinNonwgaWz22MQdVSs37Q8QRdz5kDLGaAC3B1TaSEycEp9ypc48lZQ%2Ffj2AJv0CQk82MpJeJyVdRMK9afUskhK4MSZyKkPK3ENBBRgUsE%2B%2Fe29Bj%2F75Evmq7fWALS6MgDh3UeBkBwRbfaxySgOyQugjz3AJRPnT1fdD%2F3jB6M3qfCIEMBl6gL3nLYnDBYlQWtxrgkpds%2FVjAnZHRI%2Fv3HfFSID5nSyJpfRbQlsqvAA%2Fv2yAiolu1w%2BJL9dMBso02%2B8w4hodVJ85XMiuQqJJBg%2FROfUZdbG8MXnxc%2FM%2FLuDwwDBYuFL1B2BPkG7rdD8q7UkS6aJ78NN3w0W36xPJXyDZG1606U9WBHEqGA6CgGPUYVyO%2FAcg9YU8%2ByFIFjDY%2FALtLhgocH3mcKHclmbLuOH1i6SBalmQl7V65YVNzkypnOUOIMCn8vke5mn8UhEad%2FpEC8v6B4Rlm5Q2XznFrDEYqWxAXuPFsx0X6dSGSz9V8WftwMfXCzsrCIySAfCMeu5QYQUMjDCE6d%2F3GeFmI5yslKAlmjc5Rwaq3UT3%2FlXisXwqLx4Pg5QWAysLWQuBnP0VY4Ls2m7gZAkRXShzCuvn00LupVbe%2Fuu8hUKcsAUTOjHp4uTqVNolYRbrbB%2BIqBIzQHO4%2Boen3oe73VvPPzxWGvGNi8vMHjlcuJ5fsrFzVZTY2cQEsm%2FO1d%2FbtD1iEzSrBgE3vkVR%2BTN8fFn%2FR04DDSBqUZQor%2FVMYcssc4i4F17m3xl2nR2RjaAvDxEyf9WEdzbMdrHlsPEb8WYvw6dZkP%2B%2Bs1KpbtHccLpX78EZs7SbFB07m7Ba9DZfOJ429P%2BQ1EUK%2FJHh7GXyGmqf4L8ufMAY9l63mtK83BEwOeMtdPGFHLXiuPKtIHUGcGTd5%2B4MNGrTXH5xLibZ57jUP5p4JdSixf0%2BaIaq73RzEw5jZVCN97o1UAfvZf7cTRz%2BzfW%2FS%2F00eyu5P3SlFo8mJ%2B7cmSkBQYO2MSNPqgJxkYQm9XInsVyjVOgtIggZz0KzX4CElGLzwO3pjXpRBvN2ly7Aew5flmOzY6pFtWI4RSIbLDhf0kxAbHF8uEm7%2BZkdNx3XDYYEBwThtfT5NqAQi3trdtjo3nsE6798zcLmoHa17Z%2B%2B%2FtObLJksD0Iy9GlEeAWcHQsPVHbvZI%2FBLMJzJSTjnRReO6fy1M%2Ba1IaG2773HpWppDf%2B2lLCr9A6bSMVcWdJGBzPDjXvBP1%2Fa9C2guY8LKT0Ke17CXBSxK2lWOWvVxbghjyARxDtC8TW10JlKyGLaiyL9RCVXMgIeZzrnlb5P%2Fvjyr8Gk5jliYqZ959TpzCgbHqtOOwbnjDjnWLw%2BwpC38%2FMyUuwV%2BpJ%2BlDAm92flm7I%2Bc2%2BdFqVQzBb%2FHni2LRgiecGZbbE0JWHZ0QsfYtG5VmiHzOT2Xf7%2Fj6Ib25LajhYC5Grt6fWu6KOBHN3P4DqtV0yrm%2FupEsoLxrT0%2Fvc%2BaK9i9HN%2BMXmK6gIQmW33ZSajzotD0aKCUe%2BpXhKD4VDFUtPPjoi8O3Fo5hLEIaqoP13WCFA7Mn5AYxDe%2F6I6t7Lepp4lKlTaBPHRAaAfJp1fO8oP1xknyjzvxJLwa8UrHRt9MaBVhdS7Hv%2Fa64ytkssjzybs5PwiF1Gr5cpfM5mYWn8wHaI1BviOeGTMfwa4uVDFh2GbYb5Zh9EgOYA4%2BkhGsL6QuDjkabmfej5zmSnqAoD6HH3NZL6NmrYp%2F3UsWyT5PYxIVw%2BvXziNJldCrwPdjN%2FxHNRri1wAdn5c3tQTLPGOjubdrStRPzNtSYDKjO6nwtpck2u%2BZyafDgI01wrs9FmCBGbvsnKrdM0Sz3S2RzMbVhOiCqXDgQi1JXGbV6D4ZZsexxZU50m0XPdpaICE3mL5E%2B4tNIBUI6kN3B6c49pw9PNc1p2Zodsmy%2BAdnMUiaGOZs6qYYbo2MwH%2FLE%2BwSNdHeDPkqCtTVd3kiffVwlSSdyI%2B7ZRIFfGg7oWKXyJQ8cZxPxQJPNpoJAkLHw5yRiZ%2BmlhGWCBYdLzRYObWRFylVi4297CCgsoQYkxRQa9TxwcXVqgaszKTBiulCq8zh%2Fr%2BgdddbxYB6kmRRbxZZEyf3kbnLHitZH4XzB%2FlyvHGfEhOJXG6lQpZKBNKzhAw2gehIQmDF3ybhzIBmAffWnsUHk2X8Ws%2FdYjpn9WohhTMFqZzKGMnIa8REsOGh6aF02Rf%2BFL%2FJrORs90CQLf7KHi6WkTkYXG6g8KCUYRL0ZOwNfn4yu8YLmjEgFJId2BGUUzfRcM7zyaEDr5aCukpeEvoPM16Et%2BYYafEnfrsi3VwGf%2BfwMyJC1ZqoKpmu4v0QPKOOuwckQriWryYC%2Bft1L7AK3DJmSOCb7CgQs2AQhFZ0NAYxFzpG5ImmtaF6d%2FZjGB7n%2FDuFtNMfA2ypXBPD9BflPZDNz%2FQ6aYvLUedJbBnGPZDTHT3Lgel19%2FnHyV4dSsYp5%2BQwO8k%2FXMvq%2FmivEnKWiR%2FQJzEeG2XOKDZwePiZiCkiWWCwtHc2hx%2Fxg4FFyY5XfLPlPG0jcq5C2cbdupbeHBRpFoX6YPPPp%2BU1nRai8wrHX%2BIBUNavZ8ymXtwInZ6MLUzeUTHb%2B1TtPuOiYMtOoxQlR4fgXvCtJUXEcTWbVVAEVR5%2FOWSq6FF3e%2BbofNiWx%2BcozgrqQUMYLNpr0vlinvpJjt9eaEPdw0zt%2F0LLFHCOn6eq%2BXfg2HctKVgI8p1h4kxYXUhxIY573pb3pmJBi%2BgjrVp0O8Zb77WY4DQ05GozujexS15WZroYXUmy%2BcE%2BtY2ZxZrF46PcXKm9MrxYFVz1NSU0WEYqY%2Bjut9gGrUnme8K4rxqaFGmogFpUcHe3Je%2BbXYz3JeS1VeGy1FJxv%2FBH%2FjdC6Ro5%2Fb529oiGASonw8SwwF6gT83tgwjsgmypX3IFCTsyF2AIXY5eE%2FpK8sbduUj50AqL3qrXY%2F3u0KT38Etoh%2F6MzneRGVbet0uYuuAq%2Bqo8EoWk3p7FnZu7gQJ9LxSLiMVHGd6c7ZTiL1pg29dbCQ0olPh1WIC9uhnJ47s5xJypF7CxoOYzBySk6NJpfgtWDO%2BleA2NMD4yWoWTi8hydANZYKu1%2FHYPHc9FuHZYhSwTC0dc3FYzmaOIAK7XgWJWzeC2GR9p1ktyad1DhG2Q5xskmbNqmzyoknrk7gytePL0H%2FSicL1Pkx13QWUrV5h97VEwCVJDYVSzcSsBFVMAID4msVVsJGiTol%2B4wTxAnSnru%2BVhET72z8OJdIpk6ehj5hTTHYgq6cWI46T8rEIQDd2MCbx1dzcpBncA3FBBrlToQjGHo7KNTOmIV4ZWmvuHNUD%2BzX72h52RMn67gmgl%2BgtRyPW2y6PEEBkfTGdZw12mmC5FR3tCRaSi7o8eDiTjrMt2yaFcU%2B%2FMplHIFYtvTBmMzQW4%2F4c6xd4KR8YuH7i5XH9BE2u79IuLlieNLp3eUrgCD6ZdhEEFcdhI3T4Z4NrwPpEzlyvZ6%2Fk9TS7JCU5boaGJfKWgpCn5%2Fujl9O%2FzgySbgb7lYX72ACgN4cONCBBuVBuOseqRbyH4jyXBLFCSFI9Uhw%2FSomE2iGLZcAyl23vkOwlyZ8sH%2BiH1c1Borck7eZKhgqhRF0qgib47YdDrGu%2FIRhYR4fBXR3qAMs2BUT5GRsjWfmcFsrf1ixZyOA%2BAEvxeF2vpYvuT5THoflOz23khvD1uY1wyd%2B1PluTG%2F6Q7n4oQnGBo3l9ceXx5Zla8fgrV8N5mWSC9WDzD%2BF7jQAUjm%2FEx2JS84pTRQlzCcOythVpSmvkimQsIiDHvt1N4OKdtcVYvAnzlHfWvdBpkDUT%2FBurtFHrYLLJeTHVdWUQBzzQLPhKgz2Cwxdf3X0LbVMmuFM3Bor248j0RVFpW%2FXHOh5jpYenAb8rCox%2BN9bFXPs%2BjN24FeYXh1ufikCzf7bWDiQV3RQAsDCixRoeXJjvBVmnALjmdOgD92UjAavbK%2BOZYHLNVHFtN6Do%2F%2BFpNI6vjqPK1WTt4c%2FeSD%2FGyF71GA%2B%2FIGa9ftv5Pdyz4sZDuPLYffgghsMINO%2Fi1df8THkYUcLpSNf02IH1lJ5E6BQkVpqQR8YlJF0%2B9UYiqR2DB5gZD49ZZcCujtTIzJX5vgxL8LZDPpFKMLAnLJ2lXMmDJJYmk%2Bsojv7DC7BsWBSoni6bNRXoemYLRSxeUkSYiTn1TDiWqbBuLgOP7zZi2qnqqhAsErnMf9F2pCK3w6KzugN6wEQHelXABODDwYMcAD0WMCDAgJlDwBSyvqwdFnin2G4FF9XD%2BiSD95RQ3IZYiHdPZyHbGY0XMLSpaB87yKQzys6eu%2FN8NnpME3PZuKoepmYQsit%2BwQVR78544Y7UmoMU87DOAhQymdNU%2FS6pEhIMUTRwUoyvnufhuDqK1hkfzjWhpv0C7AsbGqpaAjfOi0AkAGOdzWRBxzTjmPscaLBOYsqXDDMa9kjgyAy6HG1c6734vuaV6qNK9JcXhyrlbUbgvlgLw%2BC3uqhdO0BxaVD0dFH8LZ8drrDqaMCs%2FEuapnedEnX72DPMvWEbNNmsR%2BtixM7VF5XAmLleYhJHvbPUCS1V56EAxmtNloJHtS5TmPb5pptpeWKFbkiTYHpgG5KZEExEGVu1Dh%2Ba6Jv9%2BwwGuh9dr%2FCIu5LExac%2BBVhfZcTf4dJuXZ5QwiSqyInAm9yUgg%2BirtbKr1iK5Ex1%2BKpDoKVbBpvKPeoHp0QWgEAIFwtcD6%2Fbe3ri77qLArUhCB%2Fd%2B%2FQl2s9VNyyozCrThjunjrCnnGxgUYpq%2FvoIRHbJYbWM4%2FXpJesYS5GFYixfIAVAsp5em%2Bx%2F%2Bl%2FIpzY1%2BvcDVLqlTdtxh4b8FRKFe%2FPZES5cJb3JWwuOUAN9%2FXQio4OlIppRTvWW6%2FkbdqBtMkDkp9TdRp1%2BQ6djM0BumxB0KXxd71XENDMaAhhbLZX%2FL6cFvCL2MY1cv1AjDVHfXLy61sGv0vAWta%2BWrTUqLVrXqgAclI11gzfArHuv99Ue6QqEet2D8VyayGw9phXPXosaNDM96mA6hyME1gxrHBme3pLHZ42mPCClQxHTLqC%2BjnQCEyHxgPg5mgPQke%2FuE2Chx7IIAPmTW2PcY%2BOxA%2BAFW1thKxNEqbFYWxv2gI6lqYo2%2FA0ILsFjuafUzcnI%2FLm2tzWYfiAxGUBKWOvCP7sOClSIycdlOaGbl%2F%2FI1z8iAzc8viFgJ1lZBpy1AaAOuvtmxbTHDgRuuvcmoxuW%2B%2B7rXLf86xg00qE3O5p38uI1rx4w4t%2BnhZtUMoSXdU8sOBgR1Bu0SD84s0AWlqPchcluMutSZ7crKc3ryfBam0Pu37ob7AcCVPdEjI1Ha9ZK2MdMvm84uRgxQ8mYJ4miReP3T5ZwmD5r5XiOz%2BW8kYtJB4t49jQcB96V5Myby7GYENXlbBFw30BVP6b0OEoA0QW0M1mOd2iyQqmDZcRuff8CzcTy583ns%2Bs6gPnp2J0fliG%2FcBb9k%2Bip8O6hi8MP2TfzEFrVZzxF8w3NwUQ%2FpKNa7z8O5SBGrwSRLPTAskVTIRVM4eMk3MFokdUlwgJRKQX02kJ3MJzlFf2%2BqpxyECM6uTeIMPWgvn%2BZ6bYrRUgpkpTXFSRvQki8lajW%2Bk%2FBEGdsxCr3z6JNv5KhYYz0QKR4ozjFHbxYyIHbss7maV8nqhW8zOh%2BCPiQe%2BXLu7%2FYaJtnHLGvyju7IOdXNEPtoSoOJ5ByIILvR4zNvyH%2BdaDax5DmpW%2BUsO84yrJK7Lp2Y%2FnBnxe%2BPBMBfYn7hQpYtkYAfEjoXOgIpWWoxKhkR5FvMDFqs1Ki1yzK8Gq0ojPJG165mVPRHwn4Otv2QadVdbQNffnJksHv%2BNc%2B3Gg4H9SVSWb1xA36O%2FwdSqJ4y0G%2Fk54rLIDHk0OqstVIwNtJp5Zb0m9vEY%2Fqkz%2FXIWOBnHz4zIS%2Ftmy6uCVEhxxq2qPoKIJpv%2BEWoKD52OpT49LOK1G43BQXmnyQeKTGs7Jn81En378MeLFnrVPSBJP6KMUt75GRLU3kxDQZDkg%2F1pR%2B1beN%2BivEfFEJ%2BwSB5O66%2B9aCmlHBn7%2BiThhG7Tpjg1lCTLKKFylyF8GF6uyCt8ZcSIxWeMN8u3ear3lKyAQwqQ%2FRGEw3BXHuv0bQezHtuz7sk0lxnIUxhpyQhTIAly64rv4lDig1Ir6mNgdtdsJIrLDKMos2PsQki7qNBcNBZAi2%2F8NW0p5mKLz1YzGCWFdyNfBy4VG3bmFRGhTRI6GTXAk20MPU5cSxm%2BiGPpY%2FVYBhVTBAPo1FDT9JW66Lr96CN5RTz4K38%2Fknb%2FUwnWu327m89DqFrt3dBgA91U2glgo8bmFiWaamh9Cocd13f9vbfZmzW2qHxIQiwCfZhXS8eB5pvCzCfIWHlvpw%2B2AB9eQZ6vhf37i%2BSAvVrdZ8yL4%2BPBWIJKrnr83AzZ9tUclk20XcIEQZJBT%2FI8ipmWwh2BJQLveaVWwDTJ02kIV2FxxTDY30ePoITv%2Bm2zgXvXcKxSOCzy3dz%2BwUXZITyvYUi9V4VRiioUq0CLc8wYGmrleHqXdanO5qGszfAj6Y9Gml54zuEccl%2FQrw79lSn6L%2BQx%2F2Dt5o2RiN%2BpAw8LUL4qg1O%2B8WcBY0NjRbswFzZ1q4Gyg7m0jCsY18Jso%2FbNNUb%2FuSKuQWn7rsO8clGg%2FxgIFfSzRbU7OuaZEcR4X5yYvu2yxs25PM%2BSPS8bplKt6kiMp8J2zW33NGmAzAZ4u3DWu%2BvS58Tu%2FquWqapjcf9NEfVlQxUppToMZD54oUdwV3FZ6%2BE36P3bhJxFIDGK4IDK5Nu5DKJRMIDMB%2BBOx9325NV3jDNmBPHZdFqBGKD1WGZXtRIUby4z27p%2B6t%2BV1olZI86CLzHmEfhDhynfZIOMdGUZlt3NEo0x4tuZaoVgnuLguxUh2jTq4fatFccEobnWtIFj9qsJyNGSTQi0nYV3lIThEkqNJ%2FpyLcm3Sezbz1Sp4Uo0ei%2BolW%2BTVk6pkTFX4sjcjpZU%2BpUm228vxYWUCBGFDtilgYhYWUnrVb22H4uNZCOwYDz4F8aot8SPAOL3LhUtAeeMo%2BQAg61VFXHiM3Cv0Q4AxF2JUwBSYk7rhfV8%2FbcXAUcJpk0%2FDM9yDqZetmdeGNRGkuuKSBs8IWVt4D3%2FO8GgFE3XaGLsF8NjDdpRxP7tJaWeY6QuA%2F76k5xZHl6oM%2Bno22QtPxtWo%2BedUwBWFNJy1A4aLUp9pL4csH9fBSuEgz3vVUQg6wjYWJXqwqcBYhy2rY0FlB3dQMgmAjUstuf5CYDcg7uy5kUon2whpGltKeFLz3D6I3cYqYtrfqDW0zYiGZkmA3kBV0abIR0GDmMN6TRPnB6m26e7zbY6w%2FmzdJ9topuZ4%2BozR%2BdA5Ib53IZrakCtOf%2FNWqk9YxvedK1YzfGtQ01CSpoyGPUvr5%2Baxgk8yMabbuUYRlIVnhMHqjHN73hmqQAXndw0CiRvo19VFpGTv3o7u1tXbgo3XJKFrezlwRsgwV2fjKuhwv5aPrcLEsXvVwPBykh9EaYCGnJ%2Fu5nrlk%2FIDY2dIeQP0b4hJMH45cL8dLsUENph%2F6H43%2F%2Bgzgz2NFIEu5Lc0lGoFt6xlsVDyiiXIQiVOht3zG7jiDUHMmjtCq6Z1vW1A3h6evKveEKKz1ySsF%2F36sv%2FO0MiuwbNdXvzTLBBWwP9V00n3C6SeK9ygOBcfCvLWb80OXDsUMeKSBZckzJV7oIfpwan5spraqfOEvc3WXGFHcXLimFZBR1L5HDDFMziygSJYZ9qjsXTiBR4OkQ3uDFgyN1cyUx0mABoTF0CW5VurXaqAHvWrkoLQKy5VY1En4g7vwCybvBO6dTsg6J%2BpKQ6%2FxIj1UHSiQEavHLhQ5bTQf4CKQ3tyZmje2WrOLboyHdIfNQgND7RM3bn%2FbYohPSe%2B9qX9GfeH1tvFq9L4xp2j%2FG5aH%2BHDw%2Brizlt7rCNEYufWo4RY94zFuoUFODAosnTWK18T7uaaiLxeqKVlYSnwmEpgrq%2FYbKFiHdc%2FGz5ZBCVGnyBUBqdz1mmmpRFH5FaiTjrAyP4cNtrxKRsSz5E8S%2F1SR3wIxMdUnMae2hjzRei6uemXHz2%2Fl%2Btm4sAkgR0oQg6OpizDFQ0JK7O6Vj5RGTBUuowLgD%2BDcKNenTOk3Jgh%2Fz%2FxcW4lx647ZpBY5CIFkNoe%2F1MuEkp5lPbeyj7TgbV7RsQv0PhYrpSzOWr1jr3IWg3V8NC7eMf%2FhqHMV6PdmC0jmptRG7NqC0mchkn4BxaRMF4YtmpBa8iDWLYRXtZ4h1%2BOWI8IrhYo6foM87FD4MFzw9LXZ%2BV%2B8wnBf6YMJyhSO1tw18qkborSPZ1zNYxq%2BVE3%2BR%2FeU3ihU0ndMXq3Rtf9geun%2FWL1lJQz7XeMtiYhwONtH0d4k2flDz%2Bf26YN4RUb6wUUnmYIQC14jg%2B9Uz9ZBtb8vLceJTriHEThDV49n%2B3HwJsnuA7MhXuGa0%2F%2FQbFfMe9tQ8yraTfk13TsHNCQJoYez%2B9eFjzvhipeu6%2BvD8FrUgtPt7qiUZodmAeD348vsF61Kb%2BjLxiNIBINZlKtNzDnt12Ty4DvVmzalW7WjxWn82%2B3dsi3aVGftTFJDVbatng66RBYk%2Bvg3kmqJ8P0wclsYrJs%2F3iPiOE%2BVLnZguzGiumw6kZgvMShcgNKbSZGs28CFkglxjP0I9oMvnOsm2dCiPkarLTKpK%2B6Z7f9pxFzB%2FgJJ15SSnJDZ1twmePRhEHHia78W%2BCSotYV3T0CnqyHaqyGJDYH4ZwLnIIx%2B9OqLCTfsqLseQ3QAz%2BmdS2BvPHNRdI3SGEfaRcWRI%2FU7FnfLPBk65zJQFJLxjQA0frfQmxkMchaDbB%2BTS5BXGUSJMiw5wb4DIuhN2v%2FHM41EW5NunIzvspcwKK1rL5naVa%2F7v1ddwC%2B4MfYJmkHePGwwGcTH5cb9%2BOllPlkSNq%2B%2Bc4LM49dCfCIshdhi3CHT9FRssFe7zCZ4Ovmm2t9XeEmBWG5txy7Zd9MpTJXH%2BEcELjiyDZuFrQ9HZT49vPnlv3IXdUVyqxWVvMZZIqDx9CBpdDrObZiqh7T58JkpSx7Sla166iJKwDJQjECm1tg%2B08huP%2BRP%2Bgi5DjHc%2BqN8tSalGWALFDSfn5XJjMrFU%2Fsb0QKNget%2BEQjljZavKaiFpZbvb%2FmmU4zQpnIiAUnr6WXit0qEI3q%2Fy3wWHw7pNmJGqekUs2NNg2wGf%2FQy5yW4IP9txrtspX%2BbpWA7YILAgdAg4fMfQDfzc1ibNIGRA%2BUvWFEINqQNE5MYdB3Tq8DRvQGTJWTvUDF0odxlNBJ9tK1CoZjlMWD70kPBA4g%2BZeRCCyhs1SN13Q9um0ciVcsWwSTCuaHPyU8aCiztbiz4RtSQ3X9cfPgzkU3IkPSUPN6rMq5SZRkNJjqfleThPfB8%2BU1FBXrfg7euFvNfBUv7RuII7uyv0UC8Rvz%2BtdS0j%2F74sFPphM8WWePUkcf4eHW4wFF7Q%2FB8CKK1wDJZVGammdaof%2FlMa1AnyeZEV8zU2YU04GVDEhvxjvXcXU%2BDzG7s4Tan%2FP18UFltAHdbJEGGGLE2Rr1sYZgtJ34JzAtHYzZsmJnjttrBMWWnlNulrLc8GxXfoi20YXDPMi5x3HDgNvfptBBSsjuYNxXo9KHkugabz6B9Z77B1dvOdcjaPnyK2pvcUTWtIQ8RfivwjjwaSXaGAoAuy0GsS4ff1idOMq7WMnzw%2F1YumFR2OnUsrmEm5%2FsgKstf1ylJX%2Fz7kHgcPS3k80b12ZLL%2BaWwHKsg%2F%2Bcu44cddflgK8EUSY5XjZ7eagj3Kl%2Fa9y7Vt2zK4%2F4IbypEpuR7%2BZZNotKKfEHYGQ6Bi6s2X2pv6eDCZrdvfmyt9VP%2FVQOzxGVBSlXLSJO28E1Zd7jHjjYj08SnAWUf6E%2FyEM3patPrvSkDHLhPWX5MC3rD5pEGYdqN4LlT0mHp%2FZLZT3G%2FVY%2B%2BYp6j%2Bzi1SDt7dgDpco4%2FPEVT3b4AkQPPByVcAJgTpJ3Y6828ontCBLvVeLu23egYCdgaCr%2BeV52V2f785kdHeLvvlWd%2FFz%2FMKzUsIGQ5Gbxap2NMLiwN1fX%2FSOfi3XEZ1ReZ%2FI0p6rNEt9auGFoGoucBZ8poGcjWFhEf4XsU1I4QgYhGKNsF7owSZkDZyW8zhVs32jiBYH9dq4Ez5ZRmuX4DXxFFo0qp1IJu%2F0LFIriemZqXjFkR5BbrG9nQz0%2Fx5Hm2nFsqxILZ%2FCO06%2B7v%2BlnNt%2B41GBvl7E7Uddzoj9smVFPGut2jxSYghNliKRVuyjWHsKvQK9dhbRUYVgqd82Ul9KKwxMI3Fn2CpgEm1gEyNfezJ1QyiY9SNdAom6xOZaL%2F6wIgLSLnQev2ycCt064byeVnhBFP6hiIYY%2BQyOcJ0d5XNN4ZNgwiBGvJHYvoBEc5DQyWf%2BtSyaFxxyg8VjzVL28ckKnTFofUCvc2fjcYcwxUHfFlnwpHt0sMT%2B6P5k8m0tjaSbPH1hSJBDJbMprrITPH2E7zNzi4Bl3zNCsrOsbyErTWPmCVfq54tx%2FQ%2B%2FODzsS%2BkfvTnbvQshx2kl3Zov2QWj%2B01%2BzW9ONZMWBlR1l3vyYKk8TXzUx8iaVEcQdgIfjc8EZIRir9lrv%2B%2BpfoJKHy0NujhS%2BMvBDUnZg4Bjgj9U%2F1LQ7W7IwRwNnqUUmOL2qDnJN3G8SB1zxz47Y2GWNuCss1R0MxCIsA1TPJ5N1zXiv6NRW284rFZgWKG35pDI3Gl6lvxB8UqZ2tR4TF7tlsZINLA4FoCml2KpIwazVbE6QoEKwFjnmSXUlxNHOvCEbx%2FoqDdKwGANxND0%2BFJA%2B7dgu9MWIX4zJwpU875DTfaB7nkxRlIaPq%2BBRlPFAm3M3eN0cnnPGtCAr1IuIrLymJynOuPdQ7swTaJaQS7ECOqWvEbAXNDTAUbWKQKqtgx4QNR%2F5wxickm0PD6N5mHgzp58iyhmGY6lbZso3VwXmcviDHA2BQcX51dWrkHPXpDLwPj24Pi5ua3GFodKbqDfB0JVxMFLvfB1nvrHHV6dQeih5BzX2qSXd%2Fp215M9coJDDJii3Zz6EfghCa2gHEgShiu3Yf023TeKICz1XyJo3nglI3v0Wg3d5wdlReHQN9TcPH%2Bffzp3Uiq2OuSvjnwvqBcRlfAfF53sPz3eJrO%2F76C1zFswKolMZyVpXnx6swP2qqKY7nPGtELuqfYwJC1AAF%2FLMD0jbSH4XDDHngztE6VTkkNVx3bzSDKzVAt8CP9tZg2ryEtGVFm9n46kcx9Nyg3sDLf0ymUrsfPl%2Fv6dfSAxAHr8X8WeLdhYxxsHS%2FHFS3D%2B5Wmk%2FLsJuFgKIngJnOAkjvOAy3JdabczwU9LjDDUx0BVPIdKg57pdaTyF9tmlWY3%2Fko8faH9izwKONA4XRVZl7i0fnnH1SnnvRqQ9TeqE72BOitUZirrzj7blr4rEvcauOFDkkM%2F%2B0yd0U0%2BAjTJcbcXP2nuEWE0nZSmppJmVvFjyegQcplAz4y6wzsY%2BYjeZBOV6LlhycQyttX9VuF5yl7VE%2Fm%2BDn5S0TXGuDy0Kt%2Fuk2oOQJUAR9QkKjENekMUkuXopTlL4xF0Mqe1OfgdHF2yJdASVraJEKpFEUBv0gZJv9FDGkgZKh6t62xRVvVA0dUq8nw9FwuTA6Zr3F2FhLopVyO22BtDaV4OKglKoZN9xeZgTe3gQ7OQ4AH4v%2FcIRBscsyW98wpdYUZ6ExRloPNJhAGygGD8BVDl9NZC0toVN3Fb2ZQTGhft2RTEYFzupyljPYFjqcrJlLoXPGsuxgpv1ZGGLgH%2B2IgQcBJ%2Fvr82gvnYgl7NdtrjaPmGhpPfA9EX4s4GN%2BEvmrBU6SO%2BqzPHOaYD3VIlLxZ3jgAlfAgwt6hu54ZXfPF%2FRIOJeodmCM9F8kmECuFLtgQoq%2BxVaMlzrAhukbey6ILzo8J56XkfZYNMHVAN76x2jQ4cRPafxhvJz4Vj2nzFlCxj7bXHx7zCz9bBVQmcWRjdQChcN7XvMKJfUYzIOmu0KFxcA4iV6ib2TIZFfXv%2BeNLw2scmYPBxRZa51SOqHhKn5TpaytrTZ4AFEu%2F6hlnsgjRQUSC7ncof7WLz15ePGckygyi%2B4SJaSxmZ4MozdHwdH77QK2Nc4aZGTKzadROtGwBOaLWPX6wNB89RVmemjPWWnPCAa2%2BjsU9LdTriIndsOcSqJ%2FZmz2B2f8mis8ob7WuLM8IH4U5ZO4ORcGMIVaNIvowsQ9NWiPkU3yavGq4PSIqcEUZ%2FhhynNq%2Fchf9HrRLj0fjstaZqT7LR7VmYBdsU0M6vkr%2BivygDPNnTS%2B8FOM5ZwCj7zxF%2BCUXa3fzLyWEQkdF2B%2FiYqAvGvKbZec5GczIndydr%2Bx0KqDaMOZ8UnRITaYMSYCaaOBcNzDRkZSg3a0TaHdt5LzJgoUEvPnK8hhTC5SVRHM4dDcPFhS%2B0rJlJvFQ4shHX0TtDSyXbGGsbHShLd2pN8Zo1xffjHKZkBbsC5mIUKozrLdxHtsw%2FrAq1jmrV22i5tkIKNMSHny%2FNHjmuEphp5HqzasT04IWJZ%2FqeEOQ7JB2WeEYxTGhu%2B6PrDI4t2QzNlJkTfflClQ1GwZ0yGhLnqcNv%2BxXmPqZvR74oIOKLjb0686YCIPm6nopwlgJLvoyflCNzomlRVG82r9j94mUdcwoNCtm7FywpLdUJTWTfgi8nMLJd4Ao5nT%2BqaGfsvPQ%2BHQGfiIbcKH0KRs1k5%2BJ3RUT837zfbByMUc1%2BGWvyBcvDB4UXpa43WUCGN14wjgc9SRqrZJdsovnQkbTgwlb9lhgilXc0w3VXuLZFUV91atMHp6kzB7%2FajWvB0yN82eaKOZonOhqqFIvXu%2FVTayBwG%2FjrYOoYKYaCFlI21L5LZpBXTf22RXRYR6XULcceT%2FPhi7sLC%2B0hcX4xuYAtbmtYWxl8XroK8g5lxKExVxfPedFRugGxj0L9Hu6%2FrZ9QnthTVBBkk8R3cZs0nMXPZMfXyLsWAyzxx%2FP2%2BM9H5Ee36wv2fINjTpTEZX6Gox%2FMQUNmi4HaMbd9ilwPPNE8BLDa8onQOpX%2BylWYlw%2FNcC6JhFg%2Brdc7QdkaO9MQaVD%2FGcM5jU%2Ft95BbGyldIqXr5ihhJLkXDqNowpuxEH5pEwfbBraYpBeLEAETYqLx498GB9NndoaMdL5cZPWy1O6RwRAhlR42i%2BC2CKSFU6TZ0bnNhJ%2FG%2BtcmA%2B1mcEX18EQXlPD%2BzFmHX3eMgR7PHmkW03BKovuZheqGbvKbegO%2B9ThipQHFSb%2FSUib%2F9kxSQiqPdEKvS53x5%2B5VuFbDubjmtSEa0gT5qbi%2FqEGpmIjL4Hm0W0O02XLHmpFTas%2B4Ns7mDN9YF49ImHwoIP%2F8gLCqFhISUA1IRVTAUsoKU8VfNt5cEolh%2BjvtHLJ9wDvIDeRCHJ4UeL%2BAb5lWs1q7owzy%2FQnxN6r3LKC9poGoziTN%2FUOYoV0seffbYc8BuZJ032K68vefLsb1Z7JEnrSt6GYxMTH98J545rlp6sGYoo61sQvMpEzj2SNgJxlZz0CoRR2zx11B9Yla7FcSeOvtp5zO4vpS9mCfu2AoP3Uw5PrJJ1M7UuAV7H0iwndFBJ0eJPfzYc3we3AASrIA7ZBuTz3tp6%2Bylw69zD579DTPuQ%2BDMKjlfWHQeGA24Bq2smcgztC9RnCOk8B6NZYVv%2B%2FszQJByclMi0c3tsmamM8tcXjAWp7niIZpsgZEfrRflQfL6LcpzX6s95YA6IBaHBG14tBFugLvZzlEkUE07oMHSvZa0DkxHHlYlbh4csqKfZTHdJdwkrsOHW3Dy71PAajR51iAnLB%2B2bdXywGwZonzlQF8bEesHG5EefhXkGcsjpA%2BrQaV8lGiZgVYkKsT0OWsDIStZfSidYgMF%2ByB1woh2jimRBHGvlSMmC2gDBq832i7Te16wjFdGS5rlPgNVKzWGxYKH23wLGcPJTx8sZQ9AwatxJvIgsEOhqZ%2FYzHJVfMEHORwEBfLY512RKUbtjXAwKRX%2FuuvkNgHkvEUoJatLwMpn67D15sK6Ny8%2FjT3Y5HFXeb2BaWAkno0bWUI3Jn12%2F3QuWCIxB9%2BvHdFj45%2FBZYibAHOGUn5ysXKanu%2Bh3yOy%2F%2BQ%2FfZY%2BcxiUiYhuxFEVDG6hR2mxkLaHAOUfS7y893ZFQ3O48aKk3DYY8d9XLgE70bGs4EJo%2BxbTspbnVK90r1ttT1pY88y8GU%2F5zxGRkJ5DOEVACeNFG1ER31nAFDwsiQz9R48AjzyhttZ5WSK%2BIRdSGCs1wBSpEyk0qCOrgKNR6hbRZy4tFz3MLd%2ByZVT0fR7F5sfJc2nP%2FxEGjE%2Fk1Jr4ZWIC6gq4OaPig%2Fgn24pvszTq1jCoH0Rqhmy7qsIzGKw4z%2FOg6lNyI3aAVFLKaqphalE%2FTIwaQSsn6L4glGERBDHMyKBO9MQLzVcuzOF40vkRh4uWCXd5VGrgFRnKE0%2BB%2FwqDxpVim0mNzgyjCM03G51%2BECFYQW17rr9JUq6ubRRDRC5y%2FvjACLfYBqA%2F0VFDMN8VlYAiOglpdSMGKYtI7gR41rj2F4ue3Z9AGeRTyznm%2Beo3bg2wwr6C7GDo5VXnYHlIuIY3PGIBHVTAuqEUvKTrCovTJHV5jrVWPxZagKbMPLz91lKPTgknIPRJ889CjHMs2pXHlKKlovSoVRgUURzQufZRtahmUkeOUOXWys7%2FPOso2CwB42h4lH1ITLOXM6EuQta1im9i8lFycVjQjFLiPu9QOj8mQ2tnN7TG%2BxKM2V5mdGgCNSLCBZESeHQ5ZxfcsYLearcALJr4fnvRaYxhlR48k7tL8z%2FXfsTzh8I%2FuqwRrULjq7ki%2FbGx4BeJ5yGGYvDQYLofUuakW%2F58KJ2d6tJVXJxAE46dG0fgetDqAqCU4322RqT%2BLmefzA6F%2FArjsDbiaruntvVpezs49IvtVLswmdmw8OPv42E4W5ltCw8gMix2Mv20weFIXoVkozI8wVanw8tGquqYKCqiKfB2K0ntScVYjY8d8SybkWlPjMjSjW33aZTAkViKXNi7z00at6xxDzTdJmQMh9r7GMRRLsKpB584ivF%2BuDkvXApyr8JQ8Wvy1NoTTI5Wgrf22Q5d%2FfnW87csFH9z%2BA8hGSKvZ4VseTZW03ZuBRihVVZcyiZVofLSRCQtNW8qUQ4k8lEoehMvIcrqff%2BsAwuUP1OwgOSgIShUcZyz2X4pcNvyFygHm1Ms1yrPrFO3ph69QAfziTn9%2B7KfmZ%2BKA2nOCWNCkKylOY4YdYkfG5pkD6xCRa05c%2Bl6HHaAiMH0BQXpIeI%2Fg5Pymv9u88scDuXfmzVgawA5NreZ8OrqHHrBQRbE%2B4y%2BxxsiUOS64Wpa4bVZBbieegjkMHPSHbSIoKrFT4tOG41u4Y5LY2IeQxryF2F0jeosMM%2F%2FXd%2FVRbCGSLoV8JqidcGqwC1o67mUgreyPv5bS2pS%2Fu9dEtc0fPV0wrjAO95baKqtyevz7uIP02gT7YBxNzFixEJoFuhJ9Jv47mhHmJrArzYv8h1ibDrEdWWp6nP2J5YNqtYHJZQSk0G%2FAD5%2BNJkJEdAdpcgchXx5JSsO5csZNaUDfHERSg7RzlFaa9LuJXwz5T2V7Ia0WUuXBZ1JMaFsWtTQOkDkoq3CNfi8prO7bLx%2B8yVvTuWFi3IE%2FsxYJnOrhKxMnGIDpU9RRH0PCyJy4mdd7sarLSAN%2F%2BiKxPdgYupbIpNF5D6j92%2F5dfwm2OGarGme9ysDrQ%2BUVJPUP%2Byvi4PwUZ6k5Ts%2F21ZrSz5US5RJRs6JKfjYfXR8AWolIQfLQ8oLYkfR5sA7X7fJvTEHCqPb76ixD0EoLCd0%2BjspnzftnfyuNKAGlIXcAYswuKeb8pHSwin%2BHTROOswOpFa2fc0FrVDq%2FFI0w1P%2BkU7KDoANrejWG3tQEfT3Il%2FmwpJ8f7IoIh3euzUcH%2BDqmJNfZGtiUdXZmhZl1dLVH7o5XJ0FZlBuU8pmYEMekMc%2F3tahgSgSfOXcJg8%2BMrBELaLnVci89WthX5Z9VRkv3xppQP7CId0S13r44DEKpS7fwfyKrGsqWPlJZL0KmEyMztYZlU9og0xDGjLWabRamQ5Eg5dcwJE4yolYB99VLm2vfL8hz3NV8ROjlFGdadrZI7nh2ikwNdha1oo%2FgW5HWAKMEAEtCgKQtCUXCxTdzWCrU1oTZdLATUsX8PcvOTj2YiBjLvK9R%2BfSoLYU1fa4CiDus7PiHwcBQ71aka0bwj9%2BeRZmNSpvubw50oreLAQS0CDoh7elKp8Hw2SJe3EnaEHXJ6iwdEMpdZQdjCpzHU79NQQL4XpaZkQl998L2MJYb7dnVREdGyUoNY4aaT1R4ll4mSTigk5%2FIe6cZSlZvQda5G8YiimMl9LDVrBgGmgMrtCJhnIL5rb7lJGAxUeB2XBtoW5jKyfkoaGunzjaYZqK0pt3QYpvc4sJDapenvtKn98oVSUXtfz%2F6G4fomYBMrybuVuCXoRivCIsDGl%2FHjkIxtonTKSLYm4XRjQRWjHGWkfxm%2BUgN3kx39TIoAZ%2ByhXg77o2T02JJE3tEzszmB5FHwmk3goUVzEx27%2BGoLHeLZTo4kbylIUrkPQIQQ%2BynjJwpghvACi3znCxBNqeWC3IDtpAbj5OBGiTF8TesqVR37y%2F2L9gt3AEBpbvXFDCwrNTT8OgiJajq9HjLY2kdRLlRJ3jbrC2VNWghXocbu7ITypnrB9tyYLT0EmNgT8J2Fa03kO97viqhKv0lUceopfhsQnT0XeldxHeOqiEQMQ4RYwWhHdJ0p0PspGQa1Cvfu1ZRkpi2r2FPI0vqcxfxRKr3FOVqkBhJAE%2FLV2CKR%2FtjkwPOou%2FyXzYADOubRlX6DSXrAx%2FKL4KH9QuyamhUbf%2BLR6N0qvVpHhLuCrfbbly8G2TSApcdZjvXSo4UBEdD4ijY6w%2B85ewXB9jI9%2BUAl8SLa4HNjsq0Z64YL5EQfm2mIsd9sJvSGYPlkdApCwodmj79%2BazQIUI1nJtzH1NySAYuSLURIOMsE4dARv8ZqsrR9%2B3RSDkQ4XV0bu2wbVOf82i4pDT9W%2Bdf3s7P9GVRsVG3QrouZ5nw7fUrbKaj0d7mVIxrOn8CSIbPMFl0gwi9BjDqZRMeH%2BTbGtvaoaLHavm73E63Z2LhZS53qjGd%2B3Cjn7MOvKndp0ofIt5Fg92%2B4OpKHQfy28Wucv%2FHuPMuC4ZAkB3YfkPQ3abu9GSGl2IXEvn5Unupmr%2FaH0mFY4wJWq4yyH1zVtH4R5wDddsOZUQ98Skkss%2FCyYpffSHiQF0ZpepdO5x6pHJA225zZk%2BGube8SncqaAaav5weRbLWaoi8hbf0CbImq5YhkkG7ByHCf503AMGQvzlL7wW7llbhqiTWeFPDFatzGoma7FVDlC93kLrBnPAyiPw0jrztF5u2vTCMiWrodOiyGSeqg0qlf%2FcuWKjSplThC8ItKEhokidf5kKkXeLBwmb6JBMpJ4AWwGvtdPNn8KPwDI16WXiWonU1dmEcUgTTRJeYOzJDpd0ay0zNUHdLfDu3zlNPcOrqfpph1Z%2BSfERYzXw%2FoSLlR5HfB8CCE3gjqsoH8HhJAKJzMSfstu0NvRQNyGap74vOER1d2y1O8Xtl4NeyXP0YQVVtQs5J3UdVUMabEtwqr%2BKaEO3WXPKWAmHSaGfaqGCiN25CZabbhcvOd%2BIy08OFjsCshphN%2FcQov%2FwW5vizfhuHOjthLPaiTGqVAYHcBHM6C4TbCjHCLkpRlmb8BNerlTW7GQ75ExUHL7L%2Bjru9zjSmWYlSI3PQ3%2FDDGHL%2B0aSBQVMCRGDAIQKfzJIuZhm5BxS0eX%2Fd3rfGQNg4nRUHu8PkYWfnvRLkM1PcH34Nv4RBTbKCKjqbhrDZu0AEfi%2F4M88aVo5yXdQZ2h4GpR4Km2tOcu5jPH5KyQVxsRmUYBLvVuL08SZAHTMycLHLY%2FU%2FysV2r9Y6E8sUTd53SVDHE5Y2wrD2dcvtPy1wfUK9Uph8Rn8ps3%2FgwzowxJPvxXpigNSGAHyPB9xF84CX9sy5JxA7uTxhxIJjbwTs%2FVbXPmxGvIIzQ2xcjD6roV%2BlptoC7jvWZF5yOKnCS%2FdPQJFTC%2FmqHUW%2Bdo37qOBdb0rZZxtrchwmRnb0q%2FpTsfoLk3cBuEWf7MiIs8GKRPNlEdCeO4p68lc4rBmw3OPZd%2FK9VE%2FZdiCTw30XaIMm0ONcHZppAHprHJBbRNh6dhqdIo71kkhFL6NTD5%2BwOI4IyOxxhhbqHaEVmTnxrm1Dv1EuormAhfufvyIGO0%2FF8xyVrF0bztXZkVzIv0j%2F7IlJdaW6Ne1Vk1qbFfokaMpuayUmOv2xPjyVIM%2FXOI4BN3gsmdovZZr6WebuC7c74MYVOPkMx4f22wKBl0OyI4i4zkmocr8%2FASFIKEu1mzkKQ4hU6WLr4rln%2B5WirJjqo90%2Bur%2BMBY78my4CYTLe9cUkC0ykaEw3Ad2b%2FQjnP8FRK06iAc9t6W7htAjwTHpzrIssOrHF3N9jru6uqfgwdX%2FtMpI3SM4jUMYtVcajw9sz9uV79CkXjdnjTr7ch1oOMW2XjlsPGzpr0r3J5d%2Bl2EVcDH5Vi4bT6cZ6twj%2B6glf1HUASBbRlluyKljjxAeKGu%2BuZq1BxSX8sRL2wrLSPeHcarRqyJ9HacmjqNBPJ7tos1vqn98aHMVMOhZ%2B%2FAvzz3M4zMidYyOZoVt%2BjErcALmOpDwkl71mfEwMQbbJGSSr4tJw2oI%2BZ8%2FEjjLvkHjJ9ke5XorkWXbQcGr37e%2Bkf8WfQ01kKn1rFe0FchNmBNiUW5bZXN%2Bk03IGfL%2BollGqs4q8LUrCpxQfuYRyYY2bgAiBaitnMgtwvJtbVBjwKp4YGD0fpzde85f9Uo7TSV4zl%2B5LSx1M3RDByamgrV9luAU1%2Bdh3doreVGzHbcu783kVOlWXKHE4fNA9LbamQOJzWlPIoYz4DfVxgQcwt6%2F%2F8cxD%2Fih5H41PepInwIT0GWZKCsMy3nUVCuay5wlkfXqS%2BytvQ5e2uxrBqar4Aphk9X4%2BTeaS3tb20F6sPXzqsqC0iLlCDgQuwg8B3HsSty8%2F4Q6rmUDgeOVuzAHeQF6Yk0TtbD11K3meodo7toc2SKuOFnH3QgYtw7UbXdHoF4WGtyS9BRS9c9UvlQ0nuO0CLrsltEplK84KcnIO%2Bwsz2Ih1%2B4dnFqjga0zNXkH3KLMn%2FUFuD%2BCV36Jdz5dPrYpkutzJIrGxO2JP%2BUZBl%2Fksx4%2B8vBOsoAywggnLW1r%2BNpBH2MAFzFxAAkP9%2BIhA9hpCPmhDmMahYhNxm%2BGiVoc%2BQ8rK6MGYXOoNg%2FIRBjq9Ok%2Bd3sWV7CaqfQVgdClZAEl4nT7Vf2booaSRXDWuUXkuQTMPZ%2Fe9ggnXlmvZFd7Yw3bCzlD75KKTysiLtbg5yzNXHFr6AwmIfW4USrIcPLwOVupG2Y%2BS1UJidCD5ICDMKiteiCLqWNYoggP9UiL9kSLdA7bfzUZFW0dpyRpkK9uiUrWlEVg%2Bt3Bxs7PBYk4%2FKcQGS78VC7CMpHhnX4MJUgUuDb9ZwreYFet2U4k34vn8RXCHp%2B7xgDvtZGKGqn5Sj8mVzfqcReLZ6Ey%2BePpFl5iRhh4YU4pXYOEZV2fKnPMt8nRNXOtkjsj82CMFUjbaQaiwpwaRSsfVcQqEP6kpQW9zmHvkhcMKl%2BrHmjPvLjotl0fMGNhUhm87Eax7vyVPVT2dPfXhxuoWuOpfd%2BW%2BSgIimZJSlWBuV1rm%2Fdxfrg%2ByDloT1RX81Csoi5dS796VW0Fi4y5eTx45jHKYypMm96dTAjq1aBTQhOkYDHL%2FyTyJiNz0sSKWaSF28hMUm9To1WCxM7uxDLounu7PmLJyncmGDsymOAiBIUaBBhAMkVAO6h1CJYloUpQtEOdFEu%2BseNIUzKPBhQZLVC0TNiJ0Dl%2Fu8u11zyl9x%2BzD3JhtbO9iL3B2HCmxsczlyEVxNv4OA3eXAaImASJFymeuuKItRZtMFoyQb%2BpSHkz5xJGZr%2FIJ2UKR5pR1pvA%2F8UCzNIjNkDK1Ocph1EPX4EtuI33X3DrSEvHCHpThBLKw7Twp4vkEEKJXwp5ZdvTGMQ%2FYhp2klAKi8E0vToPXnZcGyj72Kq9cUZ2QNTEqORxHEuqRlBPUSpDzo7PlIB%2FvXZIsZTeR%2BxAsxajtxh3ZT%2FBviN4fQ24of%2FxfH6BC6ev8gzaVc%2BgucxcqVlwLxN3JNcLsMkTXsNYUPxmnZiyk%2Fxh3aiZkjEZjEh2SdTpSFuODWxzBfchurLNTtu9lRFcoDvRk4R7M5JOnWEonTjSSe5yCxz%2F6P0EPFE%2BoLEm5Fxz6LSpVu6oKjIvMnUKtETmfL0hW%2BKVoLRQe7k4vMA8jLKygbuuqec6SVxGp0klqrCfuze%2BW%2FVs%2F%2Ffpt0L4HZ6%2B1HC7vu1OU6sgb2T285BPHAU1SbsARGTQQHRyEv5eO%2FwAeJOklXQDxAlCsbQbGZxxqPiJSFo6zwayQDRzUm2x%2F%2F76%2Bgidg3r4rkQCHwMNI8Va8c1F5o9zDaAiqOIo1GaSXJxcEkUItH3zfG0u8YhiVdlT99j0SW1narXvYBna8lwbwAX1XmzM1KYJ%2FqgGcMTxc3b7QbOwLxOHk%2BSHaZCP0fPqWVtGKRNQb8rK4rHqp7qAHG9Z919Ip836P4j31KZeEIVRhImSb1pVAOJVsp5bMwyZfx3VVLbpmnaTA6lezBEh73ZogIpGdydK%2B1ASxTZSjGVDxvBP3AOJdYqODvd6qlAdKFRIx34FlEPIr7LMFOWCAqVkVtuZQaasd33R6nUNbAn1Ge0vHvfnpGPAhEr03HY1UIwO%2BK%2BUqJOLeJl5Y2dTiPoNJ4sG3qgFmwArVvAZ2AiXQGP5ZLjxtTi9JWVvtmig0EE36MH5lBPMpXJbufO9M9RxlfbHn7qdJr6fUmv2naosGN29xXht5Q%2B6lxiwEihdox0CNz1XuOf%2Bjete7NHkbJKuqj8kwr6Reu%2FOo7rJF03K8Gi9zy1HWZrEPK9u1UpVXJlTVCbIj0yXemj0y6ZDehNgE2BSlwhg7wlbB%2Brzi0d%2FeICQjpa0SS9wI3AlN1gcEEJgJrKia4WNInOnLA0S%2BmZOxNPEeThxUmOqAOML9rD8SxYsQxWIPGYHrGd1YBGO5JEKlaaJVMUoqh%2FmEKGZVwAxfthh6EvksLe7J90tq0DoqE2cuP7aHbf2r3VrCD8d4s2Ejke0AGN9Phfwx5n5Q5sPEuD0SpDcCJzK8G5BoBKvxgvAO%2FQsH7tgsCSQyaGQ9ovuGgHVfnvq5qkQoBV23PNkdinZSZ0rIdTjFDjRqGd3tZEZHkS3QIRVCZqo5B5lh%2F5JK3ENsBzm1De1L%2B%2FgIajydOk434zqpf%2B6l8BxxG6oXDbG%2FoCKsexB6iReIbE2E50mp1AfHYP60ySluiE6A0LXfpR5QjFbEHiLc4a9oWLTK95ODcwmDJIWq2USUPbJnGQJGNX0jY9rmoep4fBKrgogUcGUOHFlFcBdfG40kkwgkfj0ADcq2ho7YM5oDPZ%2Fd7h0%2BmVH6CR%2FmuwfYxwHDOqM%2B5U4Mm7gdV1fSVVXq9cIPgrZgDWDssBbpE94y%2BbZ%2Fdk9LEPqcb3Nj5X5Ccb1atMeMZySjRborWiG6VnCYSKd%2BKCcvRPCEnbOd8JYVLSSdD5cz7p6jfgJivbWxdKG1VM8A3hxyr%2BfnaOUFCnBARECzOK2kiSrFMebmNEWvTyW81KuLfVux9q7SVAW7si7%2Fs1s854WapKPZoZJcbTeGSXL01XsccEK14jsJ4etiNoFaEyU0HjhUL1Io4QhCD5F2ckx9Ddh07p00SYZDnsQPAKqDqbpt2%2FpUkEIPfGiZSrog203ZQjbMV%2Bd8ytcSQKKbnyJ5N07732j6u7E2ydH5E%2FpgQYXAHDSMOgawBJcY7hwr0pvUlsw87wCgs5w%2Fgi1JZZxPdmg3bpHNXVxhW5wMq6dvc041WjsLezbeL4mUSPA0TLxOst1CDNi2oapu6zcNycUkWLBsAb6j5M%2Fw6AwNKwnZ1068shS%2BIAmn1%2B51c0hBPIBTMKF5k6e4Gm2d8Sjt%2FkZBVxZA2d1yb522oeG%2BlIsjfFChe%2FCNsvoNg0ST9BfM7fdIIbpQTczzTCzGS2ad4jykiWI5a4pktov89wUfzMMtVZ1zo%2BDShO0pxqcCBlO8WyNH3c5Sz2lyLO1WfrmdiLNeqWSiRkmGo5qDliYO0EZ%2BkNxXd3xNdDYEut8ZgoZ37jNC0yEmKT3qBLdWCkVJHXmOBpCNhgn%2F14fTgs1pZMrFYi9mClhvEf5RCaVeiKd5DKcQ3X9Iy5ziYI%2FoouZ%2BE%2BVnXsyOjfiC78tfnMHS4ox51vSWBFdnME4QlNztWrZxDseq6Koa2H%2F%2FBeS364a78EP3U514sGqmRZjGfjMBBPv6Ae55M4T7g%2Bwk9Pzr93bPAjeYY1jXCcf4KgeYFNwjIaR6Hl%2FMjufvt4yu%2Bu6MyCvPzl1k5CdWpET5PvCqqUayEg5IV7U84jWtPICCxDFbYXwifl9PoikfAZpr%2BYDU28AupvGaEvDjaUp2zi%2Fsq3jEGvFrn39XXdrnuy6vvIKMjTIEYQFy7ROS6jhJSx0t8m137Wm23UGm9Rv3yurHn7WoDclKhcrUrp7jk%2FmD96hEriZOuqtUBMfvydxQEVjjov4BMPWf0SWUatfDd01LJI%2F9ssFTuywjN079ogoEafbD2KJSX1ROnB8MCMMPclCKDdQiLeIwIQtg5%2BtK%2BQ5PE6ZaROIuGkgpfGL7oGIBcj0ak2zdPuMpHD4nf5g6o8434SRolHAxN0b%2FCmJQNsjMAxyMXi7iwep5IkM7fJ9xWBiDN0H%2FbmWSw2tgjZBttlvoK%2Fy7sSjwYfhnffH7yHJQFhXRmvqKIi9BHklGTBDAf4vNy5jNYZzBwqp75atHRT2u4rSzEBecCDBzQoLrhPjZxosM2up5FWTe1y8TsHgH2CBJ%2BksP4nqfidvp7FL8UrthnZBs%2FFqm%2F8b%2F7DsujFxl8KilNx%2Fq1J1iJ3jQ8TPnuqdW3TsWDrMuyOyVto0PjRDWS2rjWoqS3002vmRxhOzu2t3JyJRSb3tWYwDN8UBo6kTVMZbjxA0SFRda0s6lxBrdqVNyJCe%2F0DFtryykM9lnBAdSNEi%2Br6ZaZwkdUPcQNbuCeqjYzb6cX16PVvOOZSzCaEjgBeW5iJ7YPGeyvk2vGZ%2FDtNgzRqdOBPQlgqkspwMzfY6HPJzXzG%2FuGZWgq7KWbKksyAtPyPuIHrcYI050DVaJILO6VvWvG16r8UfAgln5tmZZJKysOKdZhBSkicWSZL8cmRnUYb9Qu62eyAnUuCXesmq%2FZJP%2BwlG9oUixNeCU1sdLRspmosubOXgJZzXHvuZQjpfVJpKE2K8fqBwy3uTwspb%2FXyMyo9do7MYGpTh0YGm5BvPK%2FThhI9u82ACTSKlAe3gWqLxykU0oWSBIL48w2mcFM0502VCtuEcbhL4m8ULAWVtgod09RR12MpBnFG0vqes5KoPGT%2FpSVlpkvoBmKg2nd6AEYBzxJZI0L7FimrEVLVQLlQh6ggYfvmTKF3%2BAcT1Yp2c2D7Llt0ogDbB%2FSSTtG2wiqr21sV8DiLbZSHXNX3o6U8joifCi9rOxMfTUyoeBDIaoKYWN9iBgscaLvT6L9id4h2H7A%2F6muoN07w9E3C63zKeZA%2BvQ%2FqSUf26KEH6EdVn3VFxTLvISDTJuuuKtmNms23jmM2JBIjRUf88b%2FXMO8bLJgp50XjFcvB0or2r7nxyhwQz%2Fj84DoYKCIq9JxGSn%2F0wiClbBtusDukQYebVA2WMiQd5RApEJjgdgLdaPNaj%2Bav4xrqTy6M3HZA6cndcosvRoKFGQTIUURR4uLUI1Y0loFEBqjTGHQFuyRqr592rDobgfeUWbop9FTfkrEEOVjSHDQ0dGJxIY4unLvM40SfU%2F9FgqQiyuNofJJDDAr2%2BgubVQA%2BlPD83ZwV7c7V1oBzYQE6agvQ55MBXjC8OJACIMwwHJiBP0ghdPWrH6YRWjtbBLczOe7Gq8GllH91aXZaXvG5ANpJ87G5YyAsHiunNj1n2WDFaTKZSfCfGDMV%2Fp4UhKTfOx87wx5FZ9JJLpxRcYXFHhZpmbawqkwyNXwPJXyqzsKkbkdY%2BTiqOAV%2FO2aTTFYRg0Z44Tr7vWqTr1rrMxS3fQJTHOn%2BDDnbvWoOOTkfdMqG30pxskQc%2BVZZeytScJ6SLZfYVS4Si9RuiLl0xZPFAm9RORLI2wQlkCY1Bt8qXiT%2FxijCa14u3ljEGOzl%2BRzfU9aFhTctOvtaURPUevx1ZaG7yeLvcpTllY2GZWKFZkqNK4Q%2Fy5H3Ec4TO%2BcA5Oc%2BBgTH4uwy1vdx907gipZYwA73IWz6WZ5zHFJghsOwkM%2BgWed5Sl7nXPClKDLy2Sk4Lie64nPiuE3Nj084aZV%2BcJd5W1M5XeXliESrkNp8F4HudFlVlgKbxPDewCdoC7LfCX8CQd23lWDJGbsPi5EsEuDntOEu9n5a3r%2FqgNrv91zuSVhkp79gulXQB3n0IZSPDPI15cC82uTYn9k%2FRg0Y3YgP1HD1104hNb43zEembdB0zDxzk2wDep25m1ZLP7FT2IcNLZ9JS%2Bp%2B2mAQXA9nDwwuxpD9vU2cgnRlGrMqiKd0QJHl5wSTXUHVBkjg5oQUPgYSkXaW41vEa%2BXxI7XZzxXgeX%2Be7sowDGs6GhqcsWRpvFtvd3WY7hz0E9d%2FukK%2B4C%2F23Ulld%2Bc97HpqFPj%2BWT4uoe7sA4SX6tb6UKnju34utXoNx%2BfD83mb9rYSC05apZdFvbMDPmBtpb0IgxZ%2Fayaitq%2BE6QiHx4ZGuwP970ocvOCO6Cipf4%2B0DgbVSig0%2BS4WnvxnxxWgPx%2Be3LsFMjVWK8%2Bm3tF7L8hQDFeURkVbGuqJce16MRp6xl15vl9%2FTGCnhK62697SsQYz7YSCVD3HTS2ASPGDyR0B8mRqeK2JehZ57R%2F%2F3TrlMjrxOpGHYoXwc7TnJ6XeNVhCsQWQb0zMFeiWui57f1mafy9z1zAvP8Rdpga2H%2FjZegEuOtnetPAhc88IOfLIpwjue3LoaQXqLePa4Oqr86wBElQAshQ3CBauMm0R9kXqAft3tjeHx8iDmQotVdqDpajnJFCJU9oIbIVJ45Io%2BDqkvqq6RM20AdPbHtBueAp4%2Fz9pEkPKMSGUcDcDxoEL0%3D&__VIEWSTATEGENERATOR=3FEBCCBF&__SCROLLPOSITIONX=0&__SCROLLPOSITIONY=0&__EVENTVALIDATION=qKURSTfR0s8QnX%2Be760iTUjGbYEnGHjOb7GaybE%2BMO%2F3wvSPfyANtVA2pgdYEK7kwrl9n9Vv6pywwrWi30HlxCkQ7WRfbE0U0ozAeJ29p%2BigY37fHDhxb2Y2TFh5bhmoUyd7hzVwjhEsPO%2F27JY8UvmXy4y0%2FcWKAKyQUroBuuW5IRQrsDaUv5yyfFj6%2FnMnVWTRwYHhwkj9y5e282u3YbJZ48yG8%2BHvmL6flEEaeW2PB%2BKNDd%2BKoBZUJMVKh1zcUPQgOuJTCU7baNwQVt%2Bh8%2BSeJvvMCZTnmjKQfQE6AqQXdJL27gJa1NoTvW1lNCnCy2OkYjZrAM8S6F8mVjXdOsNTHj1xfIPqTKN54nzdFqOmSL5Rmu0rOcKXt4t3%2Fk%2F%2BXurS8XH8lJvPHQ3fF1l13NuVFh7Z1erwkj%2BS6mPQ7UwOX1lI9QS5zYNermZomvVhxLxR5pjhZIC3zRIqKiguUUyMRXQM1w%2B1%2Bi3AO8gP1waQ1uDCA%2Fvo3J60jkojV2cq1jhToksi9OGWIuuCRbQuLNWp4yWybD3ONhIYve8YCCb1Y5ts0NjU6XMgGsD29iwbAO%2FR2phJg6T5OkjOUfmt2CjZVSebewPY%2FgICdsLYN1xnAHbESBzmvMQUYCLaldZ2vAnnyM4KZGSWHVw06YZQ%2B4DNBoT6SWJngxZxKPG6qbBmGtJALlgmTeK%2BEZul0sL8SXGzsvzzN79jRZyfROXZ6cnkVSPBGkzWSK4Fcv2Uq5og9vP3vCufYp2FcRs9Facqei37QoUYxWHkb4vzbf%2BLji2Sk%2Fk%2BAyj1QZhtDVPDN%2BM23%2FniFmcT45%2BzIu1Fz3MstEWgzvSI2hd4RpLzvJM5mFRuy0KdgqOpWGgQIJbUVd%2BOS9oyFuRWQ2qb8drxn2RtCV4zLwIc6pPecC13Azr6mUnVeg%2BwHsP6ah9s6j6WGmpPHdpaKnw0uwvJIZfRQwRfADl5ztduh%2FusXuJRZBM3cTvVeDzdIoUe29h1k9DW3usr4xEUkq9gf%2BieYPkODMoC%2BIJu0LCkxVtANI2PgPhXCpcrmTYp2NqGCarJn4VVrxEavCm%2FOMvNsIntAxWN4KacS%2BYr5y4ww1J1pj344jiTrg%3D%3D&__VIEWSTATEENCRYPTED=&__ASYNCPOST=true&
-
-Seuraava viikko: ctl00%24ScriptManager1=ctl00%24MasterUpdatePanel%7Cctl00%24MainContent%24RestaurantDateRangesFilterHeadersDataList%24ctl02%24RestaurantDateRangesFilterHeadersLinkButton&ctl00%24MainContent%24LanguagesDropDownList=fi&ctl00%24MainContent%24ShowDinerGroupDropDownList=97f76449-f57c-4217-aede-b5f9dbf2b41e&ctl00%24MainContent%24RestaurantTypeDropDownList=17dbf3bd-e822-4b36-965c-afce161f0704&ctl00%24MainContent%24RestaurantDropDownList=a7349553-5535-482e-8248-658a55dcada3&ctl00%24MainContent%24DropDownListGetWeeks=1&ctl00%24MainContent%24ShowMenuDropDownList=1&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl01%24MealHeader_State=1&__EVENTTARGET=ctl00%24MainContent%24RestaurantDateRangesFilterHeadersDataList%24ctl02%24RestaurantDateRangesFilterHeadersLinkButton&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=gov%2BFJEu10fYQq8GGdSpt29Qnt1TTFFnSL55LJfU2lravvzV4BX%2B9orQEDStA3N%2FzMvgTmRPRjjg2j3EST74Ek4nL8ela%2FT5cjLRZR4FOW1KoDxYP%2BnVU%2F73hgWh5veSaEgC2I8ftU4A5dN6scgX%2F9zV96T60ze8tEboE0hdXcCkwcf26hpMNzO8R51HJCmjBh2oLmzgmIP96c7Rmx972gqJ3bw30YJlqS6YvTTigOAwwXM0nFbomZnwgy8AnlAeblLT5IqHyIcrxfWx83j%2BJtLsQWwFfOf%2BQEppkcSLWOP3UbOW7IAZcckI8Ix1XR4aV%2BYnsKPsNF%2FW5pSmFhaVaHApM6npXmrL3sX9iKIWc8luNomEONYRqtKy77%2FDKPKeNvrimho3eFrK71GHD9NW7vGAC47gIorniqXcqMylA%2BTe0lJfZNyxfpxOkB6KLvsmG09jKEnpKkBqXUlHBPKnbwZxoO%2BMeR%2Boyuive0Hwto5xsrokLmC4NLDiaUY92JVLXzAFaUQew5nIkFtz0cLtTvnjClCHAQ5AIcP%2BxgFLmr%2BIth70QsUfHvE7txLQfcJTcFu%2Fp89INQzwFSfKvf200sh1nJxKY00A%2B5CPQx6pcdfU6b32Yb9G3qU%2FXHtrIw5W%2FN1e8l8dMzKtzqWoFwj65mXuzlRXI3ZfonmrnBX%2BfmKC0MkWm2UhpKEKeVky84Y%2FgDrfwRfBHGzqf922PFSNXWjwzcTqEjE%2BV%2FB6IwX7gWIi%2BdaNvNzf%2FFFNnODXHqpFnB3gEbpnErANDoqXZ3DKqbJsG6Q8MJJ8xTW0pACBJc1WQeI1K3lhBIyZ3c%2BmRm%2F6bxc%2FswGKJ5%2BJAkDH3ufSFzk7dlZA3gBMNSTAFiA4MAycaHfR2smkTd%2FO6W0G0ZXgHNHUPFlInpq9ezsGzAvOUObaR%2BS%2FVr6ZHSJq5l%2BSvA5MLwf%2FeA0hozPf9blZBICIjFek3DThFBMZInQ7eu3mu3pGqCHQXbnYSx%2FIwel2uwArlXnoJn0lYXmhgwNwuaS%2F2wm5Kk2Z%2B78FIhcf51v7v6MSq5D%2BoWfxIS9nfftfDklmzOUOyR6F46n%2BkUL8bZ4mKpTmc9yITKNLd8mr%2Bt5nLJlx30qricJQV1Kkv5AIEfa2Osoer4n2JWrst9dHVzlGFWUbkwkR1%2F4gMYEhn5TbX52oHWVGDDlLimb01fawB8fio3lIj3Rj2n98v7ufJjpPE%2FqvqdGOiDHiIZnQj40djdF2XHS6J1Tn%2FD4WLN4z292t0Jn82%2BdkDWkEJog1ST%2F0IkxrhUqBke0CBLqwl9hV2tYBeCfLFQvMVCUooasOIh8FWHJeftcSa11owTiN09Pgz4Yvw9Kl%2BGmTYpVq%2BC75TvzgPbMCwRv%2F3%2BuWXLjoWb2Lyd2x%2FUt2tKgZyw917WvV3oaLWi%2B3RGoceBxnJtIz%2Bk1jZTGfpv77%2FKHhnNQVRlbbP9jJootXPXMnuVX%2FrHfWrNUkW9hEXMsUipHnpl%2BtfCmc4Aeq19npmCbeOf%2BKEK0bYRsgC%2FPhi0wE5z8Ml34MDKKcf1s9KIhLiYoTxGimvRMl0Ey%2B4MvfLzgdTNfRztUMRrwWeKFkmRihsZCZMOGh2G2Cyo1GMWAbnozhcphFJjn4g6kJZdOTYJOlBuUNtjcc4jQJMJgQT43jRu6VXQv3VTIFHHZpRZ%2FWKgaZ6DPJZm%2FkMSL5d%2FAlxKhMshT7yeMIiC00vlKasjORVOUJpLWaweajSAdrbUQkWD6yBT8HHRo8apL%2FNFVtAO%2B8zSrF%2BmXLF4FOmo1sfTxfI%2FdyEiM2MacDS9rppdbOaS5kSxbDvks0rhdc5JFzog2seskeKXrV6EBQqkpIcWdAPQ5YE4goxrjzMfikIeSIa3MgcyMM0wT2n1ET%2B7UKvahlwavT%2F3lDOhXzc7FMXHgWK9%2FAAg33Eh51TCelhMBYPLYfgHQHGmTHRgANoA6TWIIzGVg%2FRI4ZMjkAwQSytuAhL%2BvsUBN92qUHq8f9kuwaYl7Ejn0WesZcgVuG93W7gChRcKUUBOHbcJvXTHKmkCjaR6jZf%2BdAexsdaeZ5Zh%2FepXC0K3jES9lDBMWJIJxXjqtrkVtv1HOERVvqfukIRV3VNTDpzcVa9rP%2Bv%2BMf5RaJmRUQce0JLSTWkqIClLmgCTg6v80UVU%2FaLqM%2FsL8PxUfPupJb2JD2oqJNZttgJbn2sHu2VSw5Zv12APlluoytoNJmA%2BOdX3vGqoHjyXVwi8YA38ZdyEwefRqUlyELeJgbBTehstnzo5C6ISFsrjofK%2FIFJez6jQzk1I7kSPhy75PAxFVxMXlkzwMmme2zqrd9xwoF4H8VbuX%2FT%2FvW1vK6HBd%2BWdq0%2Bms4DTwQgJIX7dbw7dJQ8kUJnnsDcCQ%2Bp4LQ9HXaSnWC%2BAD5iduHNw7XSbkrCCPFcJEIzmDDtKz%2BJRktuzuUzwtz9ICHvQCVMsHd3qISiCXEw9ALuYK9Dg%2BAl%2FMD6wBIhPy1jiSgXEKAMmUnPGSaYWIKdOnXljB5vPPdI0%2F0Jg0ORaYMSk%2FfAPef2uGy%2FhNEVOTNb3iLJSCiiRhgkxcolpV%2BrM7PRMr6ybnrwOqnsI1ENI8jCp6MG6OPtDNVeJKF8uLo%2BJT%2FwO2OXd0GDUnodDZqe75LD8jOX%2FUiN%2FuGHLXU7osqCcAKpyJCOS3k9ILsvml%2BoWvjjsdtcoMHxD83Yw%2BreNiOWHwHwqhVtVUZERz3XcujqUrcyJypvnkCJ8XIXn9z4sahPJV4Son6KRnSpT%2BipvXP1lEYJ9%2FBe5naV1BU%2F8N5gGN%2BXJLgosb14gR5AI1g8s22mchuFtifUVkF%2B9FSZIswkohAKRA8FoMlOlmexyvTSRXW5GIFdJ8UvPKjuuvAHRenG%2F6SSoumMU31mx7A3tZwnsAq652qsVWPDxr5RZoZEBX0H23qzH8s7cUwHPGnn601y0Y3K8JH68dkKTCW7LMSAzNGzFMUUHf0vYYlkzrZCxolJk%2BIgA913tyFbrtPcTYuRM2Hv4tXPugVgTRv8vVxXiT8aJJlMDfRMMcelnHz%2B5SPzI7NC86qGcMqRIqpEIbqcldAIgQqsobrN6ufYdRTUWzWKbi2xeCmidgxmrS7vsnm%2BdEGqHHVQZ0bcdRF90tqok8ihy5wz90EZl6rZGbHKGPQ%2FPTiKSY%2FlaIPjQGuXofwfbooWY9538PWtNxOWC%2FKGKF%2BoUATqONQkauz6rHAhh61OO0bB%2F9kt3UKwIjsyDTbWZLio60shyuWrtgCz0MqZFqCXwmunjRl38ZldzAjv4puqERjpeMeLBG4do9uGM69CzP7ipS3rNihjAyq2jdupRXcm%2F%2FDgbtXvVW%2FGSSRCU6zRWKBNJN7Ss%2B14DHLYZN62rUgGL7ARK5%2FczDxm9PhD%2FjvRbobk0IWxmyM3%2FD6%2FJnnBq31uvpZzTvtQgTAYdL%2B8XVBJEOSHiVOYtqkmPvHXXS9XKSoial%2BxDOP493oFNSv89%2FdAxMbMWnGgW22t73Sf0NQU1ZlLSznAZD5A5V1wlXcp84m%2FSjheitscIFCUDL8dBLBl%2BOWZ%2FCpJXwgy2ajF3SMvnk1dDQArqY%2FJ0YRe%2BVaBjBTcWZpwrh39JhR35Ugb5hFRx37%2BEWj0Ift3%2FAswfyI3XMyoqch6YJmFPfZWZm9SSvRmOyb7vMR1MsndD7MP6zTc1m1qAwOUOADYc9QwSpq7HScAc1Nkg%2FcZ%2BgoES%2F2Jk69kiBVZRKSteVV%2FwEDdJ5Mi%2BMFNI7%2BZ2g87q9yE%2Bbl%2Bu67SWcZIzSopNOuJDJ3JYRLjvBpgLhIBASjwy8IztJks%2Bgeqfr7FzeFkDc%2FczUyt5PrBXPLKCoos0BSYb41KFK3M6Joj%2B%2B6wYGMqGtRNz3h8z97dPHrqfyvFM2NwW%2BNPojyicAhEtMlPl5gBpwuCE4w07VNlLeRi0TrYgRAdLmD4AlcTJagYLTW%2BhoIEEKtGwvj0phUGS2D8RoIgmDplOreZVhHTcwK%2Bs0kMUgf9kuAyk0wMfkyojRdB59eDMwbiunP%2BzTBve5XkU3828u01I53%2FARQdZ7oQx70sb4ibdSv%2Fwq9nDe7OuCD2OOV%2BQyqBlKSlTN4hZCzwmvOQbEgW31OQuhU467o5UHmKXnTgNawm1ZX7tXZmJ0X4BKDEawaaRPKDt65rvMAh%2FikFKntK%2F0SaURNNqmAEtMghpdJGA3%2B5PWrmuaA9mg8%2BCFLwWhOP4JhVW7sYuPzbuwTwGDYvdElOb84o0MUUfgnMOVDNow6oV9j36vZ2GAwrjxEXzv5GO16kox9Z8w5RGbX2rr4CYOCfs2%2F6tasrwMgDKWDbCpsIrvBVXBlYAfONm738TSk0nxIj6tY5X3uLSycufg40UD%2BXdphJboE5p9tZ18CCe%2BQi8OvNTvldhGNQioE8LgyNdhydtFu%2BdRNJtkwG4RCmTuF8IXJukbNQwD0vmwSL3rBSmRqtrzfykF2S1UMT1owZ74toqJJ1Y4zOvI2oXsCBC3e6QvEA%2BmyqHnk0DytzSX0DemdLoM29buGUpVkLWLaDsh3LKW9WGT5a7UxB15%2BoctMczm2TmlveTDT4MzKkJmtmD0V1ZKFm4SCDJWiUR1JGsSMsyNBdb1R4byKdWJVhQKR5BHV7lGPxTTAMPu%2BHpd8xj2%2B0bA5k1r4mb9w4uag3rLVPE407nI4%2FAA4vhcjvsouAF4srtn0U%2BZRy89LC4uXWjS3PR7CkwnEpZuyFMec198JpB%2Bag4qW2%2F6ll34EN6e1QqTFih7V%2FWMkv1CjjRsKLw4RRa1gT57RnKW9NgqnqDPlFX4JnnyBvd6vTLFGWWS7qtWPbAkmeU5y%2FUiAKt2Q8nndrrWI70P1Th3jGnv%2BtmJP%2BYJH4bkTFX9PSrn1a%2FVSakmiRODfKWUQKK7YsfUidAkdZaaF7T%2BrMzRLJyodLOsyS04xRpR%2B5SYJY415HbMRilYjMqBO9Nkv8PGmtTHXJ2cLT2uXcEm7rIKE1hFoJpjzZmR2ilL0hqc8DcrGXqZgTrYZlWmRrdzzSBwl0u%2F85%2BUX5amUzA%2BGZE282XmcA%2Fgli0Tee3F7f6L9NvmbzofLKxY9v51o9QCnhKV7hynlRZhAcu8udc9793xCoqKy92iQcYbq%2FoX%2BilPmtVIoeIHIFmr7mTikGJRRUbnjMKGA8mSsfZsP4Giba64hAM4WzmKyNeAoWiC1cz26YVQih%2FPgZA4e9ZmZjLebGROlbVmWYOQWgLweSeWGnjPeiLbQY%2BAyxYmjoybWRJrs0zvSf5VrhDBo%2BtXBGWUn4aLUctatew9Z0pm0rWf5QPxTM%2F6pzb0Pe%2BxsIS2WZRtu5g6E%2FIOoHA47bqiGWYO8%2F926lEh0HmB87C7IMZuOd7sixcKXo%2BldY2elO6seSZ733bpq6eEPVNfZO9IGGvkKwo2S01K0Ar5%2B8FUUheuoksKNzg%2Bfwi1TnRCbPj1z%2B%2FlU71heeM%2FKC5GdEDKhQRoe3OU7yjWglmCkX31QlCP9dpRkkc%2FTKZLNtTau4j6TlErntnlOF5VTkIk%2F9kS1iIqcIqy%2FtklDoS%2FKj9OQi%2BfuYA3A%2F509GQoAwhzti7%2Bzx3Q5YhO190ImP5B64v8grXVRbO7kNOA%2FqLqHyIgu01zJnQUSy%2FuntVInrLtUEw5boYhZzLLPwAlITR722eTRlZKyHcWeSVJb6BGrC5CMILbB4I7uAc%2Ffts2JGAMR2%2Bsg92l0vWuqsfBMT6cVyAq3eKYVTPusHhXPH%2BaKEIWyqN7JuWAlMNvLrWeP2ACRayAMNUO%2BNS%2Fk9pQ4P8gAB4eIX2SYsnbVc%2FaSGx3u%2FYO53pBuNoCY1Vmurk8hrLvGoC1rHKbzSB1uraj%2Bkyvrh5t1NPO98%2FWq%2BhVlcd%2FHjLOSejuYnoFy%2ByueHkPI7xDg%2BGyUrRRdUINzqi0Qcv%2BgZdTPtNsFjLUpMRTCmmDL2am4E3KLjqtH%2F0oBiog1YEfWgn8MsWE3uI%2FX2JovGXcgPuflHDJujBqO94rfh4Dl9diLH5r6o49BAuNIMb18RECa93pIlEUtx6zRCzg%2ByroSvh4MJpv33J5MLEB9MoPUAbfTXrxOtumoeOopXUmVJ8mWWvyyW6n1tn6GKUGGfQ%2BfSZwdsuL3lKKW%2ByARNog9WbkQZyat4BOnlbcWZuVTt2aej3XTx5%2FdPHhVm%2B7%2FNC8bMIMYi7w3hddqpDQUOCa0T8H2M0GHbtG1ZjwAvWdSBCGDjTMToeJ%2BrBHdo7157e2vY98M%2FHrMIvhT%2FrrlX3T4QP69c4AtyUEpeigG6WH1udVBMyr97k6lNn%2FLGuj0mxrnFc1aUZrtFBy5HYHUTRnCFwgjc8CZnQ5Qry7WBtPhrTSV%2BelkP4bYoYF5Pd14eH7KePPUxCakupvW3sJZKh1O%2BQrH%2BG5vDnP6mk3ohVEW%2F%2BFgeszqhQjhZ39jWr%2Fgc2q7Eq2%2Bd84UM3OmWRyBS0EOzUPYUkR3D0725ZDuXNrNbMwRDLv2N4bEsQGsffCP5cSiKUkdLhonEucbyZmNsJcMfqaTes6vQJtO9dIdR2ydGqPUZrT0kuXrxvtEI%2FQe3O%2FWsQtk899HoLVBBWY40Dck1%2BBoLlfVCGlEtVpKorfMz9mMVLbyM2YkRASUagBnYXSXAUEyUH%2FLCFLOv3eMBuQO87IE2nuu1atEKRtINTAXah9bz4q9%2FnH3VLn4xVmHtvLinkoH8%2BbnfsrF9i1Yp5e3NzcqTRwp7pRo%2Faf%2Bi1fGo%2FKrG6YMRPgrLhfbU1VuXSoMY2%2B9dKGemQuPLrBWns9pnd8y78czi3f3w59Xr19fLGlk8A4aa9OnNtJ31a6qb%2BEGTTw%2FrbaSPPEw2KYFqYUKQznUCTm33FKxbh8l32HmT70AzmS2mA7C5aA9%2FApljAlCvfAwX9r4JHwDIoaI56O8Y0V4Ka4Jc8HdRLz9T%2BI8jbtjP57PKcjjsF1rXt6J9V4CehmoEiAeym16gIhAzPR8ZpU%2FqKHCDXgOBAF3uBS6iOFHvRJCdkULPFozZGXjmO6Y6Y9h9TVnS%2BS%2FeaeX164e8Aufv9d02IYq9AUbo%2BLyA2k0MACLe9tR9ncOJdiQ9Pcfyr0Ush86WbLgboioYhcW1Sganb4JcLhqXm1oUbMfUdOBezegKVgSyY%2BndUc8x9KG%2F9IiKQwqjma1zwSXuftapmTo21BQfT673TWLZ3f2bEyib6FjT9Oqhnff3aLJG24biA4yGRcj7Ux7klyflLo%2BMQuBe10CfE9njHcxOVMxnFjtuMyYNPHYhhMKxU92HiqSEOmjzCu%2F6%2BoC5CSbW1X8Bm5DAlvGdaUnFb0GeSqnerziI09M%2FUPQ421%2BtmlLMabtF%2Fezwvf6iV60oKebUPf1Ft6XoT%2BwWvwPzL7FJQLa2RyhJTZw4eLIkb07iuE5qWpsmVCpIh7K%2BVgYpdBfe7pPrPvTw80mv6Aza6MjFgl210aZ9Kz7dipM09Ah0pZsbHtTedImAN3RyGfX7ZJthCssJgruXn67mqdqiexGd8KN6v0xmVKP0jYC9tozFhr1DpBSmZMS3ocPuOa%2BCFoOBRhCIBuldeZq9gFLsTm3NMXWipjbC7ACBfaDb6j%2FUY3baX9bOOJLC%2Fpl%2BxQ%2FZhYObhADCNE8tU0nwdEYeZWiI6sKZcdWGwaIusGaw5kfhlAa%2F8wYNkVQjaulgAodsHoT9wrtlcUBsgMWZcszYZ6AtuZ%2F7lHN0ZjPdsu4XYK8JnONnNw78lgkk6J%2FpVks03F33WgiBc5qSLBonf8OFrn9QVYgjXNyUXQ9VQMlgiK71Dadv94eIJXuHLWXNj2UlwKUXBKlywm7u8xF47moKX1SewXjWuhh6wom4y6ZrhTsukU1fSNLbboU99bDyhHvVll2tEAc30NtSUbSn5YGqKn0Kc7bODcwIjUlEP7A7FtZP4x0BFHn9PnzzjZ8bMUmul1lbNcvbur2SCmMede4IwABlY%2BUwjJj1KDZmwaujkJl9qKrzEvdPvUxk8cfwvTA9q33%2FyEDyXHyrEaEdvIA0Vmu7lliGfgioru649ADo6Qu%2FaCQIR5kYEs3x8KwFsfAbtgquzEr%2BKREOcMeSpZ8VT4GIWHRYNV574CVDCLWrqBNw2VG1Dslai%2FzSfpipB%2BTZzV8yLLUlZTecv8W0qyfTdfCFbgIOhvhVhrCEtd1dyCaswxzOGIzkYeaK0KkabqFKxKS3P7nakV6vwzyeGlth9jOtBzZeKXbQBwqLGkh75vfBVP12x2rLX9vgqC0nq1VgKS2wTU4BcbZjPhqBQ8dN3%2BQgrK7MkCNdMfRlR67gvKFartEHZNsb2jzmJRwyrCRkgCFgNsDJIeqPDu47Afz6AZEP0tXzE7lmm3AlAmKi8FPVDF1vbks3CxsyHizFDpicsepqoaP5iRaKSxoKonuQK35nm0zsPzfe3FK6p8eRY6T1zox8%2BdcAqQ8s9pA2j4Z%2FbLc2yZ7Xm62yoD3PShwioZvVhX8hqTD37OecgJPl8F8xVLmw8YYBdJUhV12MdZ6rINkjpYsUd2SDWcSrHML9Ic46KZF7%2BrzxkS7N%2F2o4cJJIcGHPk9PF2aTjKHp6201KXCgMtIpAnFv8L5xrmIgAGA2JO2cfvjShz372dw9Q7wVNj1xvPLi%2BUqDunDEhgSxTGU1YKpsoKIiPUI8JYk10Pts8e9O7rJ2CyRQCVbdns5%2FqSlxMQfNb7uKzlIcJyYW2TOd047kA%2BO3yOJcy36JulyVNVGEbN5UAjsErM8hVnMlYX3WROQ1WQcfYss8j8VXDVykd2rZzZJe4NU8Ww5YIcFx1Sub%2Floh7hSnZ5tFhUQD4kDVUiZdrHnE5PyjF9CKxUNmRWZrOs7zJ7aW5jG3onCpazsvVExAiQ2gwFTrCJvUJR2d3jt5aYMPIPeA9V1L4SSLtphY5MFOMMYJupvnVAf%2FLPEZ9Vfg8U6O6dCFA%2FmKLg%2BL4WD2ok2TPWz2jW%2F5%2Fyja9q0H9oHGtblgb23DzS8I3S8%2BYQlEwc4KLxeV7Ek0%2BrvaCXSDdQTLhD7dxRoCInZP%2FnLRdk4OxGaDEWD5OnagEpCsGwnoUliryYHHAbiqMtMDi9nTbHUlsPSI5wrhgeoG7jvnF5v%2FNztpBaJTaw1gmP0bqXI0SWPuIGzegygF%2B57iiU8I2mD4uB8CazPycPjDwXIhLqbhdquEUtTS0HpkEdUSpisPQKhxbFE8Buz%2F5JRKqt8zpSH0Sr3mCbFnwuXCwsSKSuNYfuNB8Im8lFUM%2BXa5GpnTT2GkPk5gzgfIFjUAaLdoeKDiEU9SGeuBCz1jmVp4h90cYNV8BGBmoBV7%2F4U3JWFlH%2Fc0mFAzQeLi8IwGygliA05KeVP9lcyrViB3CyxC%2BQtro5gif9%2BIQJ722qJ2gYyf7Zhf5n1RrjP3ypH8r30zZLyFSuFBN4TBVXNxv2tGNOj8M0Ja%2FSoedOxx%2BTVfa2%2FQA23fB0EXdcfTqY4QhhkpOfIhjR6tIhLQX18b%2B1ZpJ8OpHjBuW91xp90mG30qnV4y%2BIHmt4p5%2BnESp13JG3Xu0jKe%2Bm%2FWwyU1XkykAYeGByguBudpyO%2BJTB3cP0V74Oj4myoEId70QQmZ8Sd%2Ff1I1WHI5hTv%2F6bKiariW7EhZbL6fU7zVHWH1YWUfPAt1%2FLuG6alQSkTdK0K7Cnqf4WqC%2FeHaFGj%2BmEXHyizIcIVPqQrecBv%2Ba7hX3Zwg3XExZHTQGVfPIXk4pcPv1yuulHZB8LlJyE5ir046aPiyINvzaaVtx7uIaiHWxzEO3UNEm5Hml71QrwrWFntw2SIyN7hwmG2Qp2F%2BmTczFETyr9MtwdtCgfbIV4jqCkeHkyMBTdvwN2WDAy6fV6atldBVI9aLKof3uVrfINC2N%2BY3fgKADVG%2Fxtj%2BQIzyqu060rh6TiMnnXzSrMk7ArCZoFHXEET8dokjftbvQqMG%2BdF%2BPv41qp24jFrWAf%2BnRYzwZupZwk72HKrnb8Ns6R%2Fl8YISSn40v8%2F2V16mhMDSAX4UQUaQYwFfZYKXtQ1eX61rYw%2BnShWtzsV08IpW37h6PiM6kidOgGhFb8EldYCLRkuVRjLc5W4oWYp5fmtVaGzzce%2FQ2zgsgRsVqYQMHY8ZfWhloG%2BIs2%2BM1pt1KF5XACpIg7CN7R3gIQrOTpTa2EvX3HhWclyjRMUGI6jNOMLtJZ65eTeVi93hWn5i2NEOygqraBP6ChKleLDh4slgg6SPM8zGd4RF16YG%2FZSTvDSdEH5q5l4oOpFIKtP1D8cylEcumpS%2FN%2BozOT0hjgE0s6qMSJ3y1Rsi19ndgfKbdnqfNEGYZatz9GqPN9%2Fofk1zER09xsypKXAoTl4A%2FAXH%2FuQO95QIGCIUNj%2BQiC05ImHeGHVpY9baSdvqks3x4YhQsw%2FJH4AE5rnCLSShUGYNIa87r%2Bxnitz%2BTBFMcYjVzPWCPpn2ylWFOOkhvhzDIl0XzY07rqAD9QiEepAN%2BP2%2BTYNlD3pJiste3IHt%2Few68n9ZZjBwvDp0mC9C7KmpqYJzP%2BqNkumDthryRPGa23VWEfPgI0EcQW0qk15gPb4gaXdtUMW2vSFwK5dCk%2BcBmhVUWJt1T7YGRorbi0T4TxEJ7aQvDtV0O%2BVoQyZMzRO4sHJBPjY%2FKYdJtPrzVaJe1h%2B6%2FQDc%2FjU3UxgbaajLmjam5d9tnxBKB6AOeK9LVhPS1V8COQgeuPo%2FO3iqZOaBVdw0TXgaFzFOzA2tr7j5MFDYQKpfRM8FPF3BjwDUEyLF7fCT602r0Hfz%2FDFmDtnfWlIuljha0lyS10Wz6k0omM2fy0LIrka9pbVW2DWCkT3kF5HKSZ5QP0qEayFCCqj5PgNg7iynrYlsYESXyCk8sfwjcEKoJ3elDzFOHj73D6SBaKkkeAsCd1nf1CQmzlvoTfp5BM7y4NCqqhT4Z3OjjU%2FzaRS0mpxHYKe6hf0Sg6Mr70TYDa%2BHtOsnsm3HZA7%2BL6jMyzNxpT6P2Sz5S9bSAnP0bb2APa%2FwKTxmSHCwc6KuKBdoztFXCqCxh2WXoHb%2BlJpCRcho4RbdtGN0JmzEEhaB6YHUZTcEaXnl287CAZ%2FAbc7D1684JtyoqYGV9SC9BoWa09f9eysci9Mrps25EBi7DhY425KJhgSNImltkfwzujnOK5v5iKJ4PNvfyExF4Ys1mjQbqpIfXA3KNK2jRDuLrfvI39GXtLnIfVDwsslfcmVoEGiq5ef%2FvfxzZpvYbvPOTlRIZY3dCgAjSQz2jq4Qqa%2FU8KKmFZr8zM1F%2F3jy%2BO4Bhlw33FdoLPnJhB4j5iSavpyk7p0k6EEkRWqgLjTBc76UZnwiPwIg7P2HnOrCoBeqZewpVUDsiHd6vVnileQBNKuVcpwuShgwaNttZu0qA4Uyim4K3JgzMlApxTFGzHy%2FTRm0korcOldh7%2FsT%2FLPeoJ4nt444OgF31mF%2B6nc%2FgNyyyEq72lUTzT6KMjrnhjGAtlfAxwr31r0l9XjpId24n6aeJWisC3fjo4APbY8SXrzhV0NnxBUK6VX3sQ%2BE1s1t9IGJchM64%2BSEo9RgZvVtSt0%2FGPsoFCKAKVTznbj8vrNWYFB74hPkrSuZiPtTZub1oLRl8qpTtwbdmvFmTSoOb3pahfV1P%2BZPBjASQFqOkWwa%2FPlxU0qbIfLx%2BQ88KaX7HRTAVOO0WWJ3U9B7AxNCsUei6SDWy79r9psKwKV5yLrGgk8wMU7ycYnnxysso5VHSh1aZNR7M8mmp13OqD1pesXMU%2Bfm%2FBXKP8xRTGPbVymx3v7D%2BrMi7kyX1v%2BSQSMr8Te3sIxHlKrgKjcSnZzEGtJBf9BsoPMP0PTHnzPbYD2rt95wRRspMNrw%2BijCfOYUZC2Zx%2FmdULQBvaDwv8O3b0QxSiRuspnJJTQ%2FIGzL2pXcUU72ZJkaK4c%2BX%2BbGMlaKnVXHN7Iqa7kglzPlMwSvmxV58ZGFRdlL3wSfJo7WzGkHbiZb9bBZAvZHqhsIaiZTyFHy%2F3f1SL%2F%2B%2FR47skbF%2Bj%2FxRpslh%2FJ%2Fm5FdPR%2FjsZVaBPQdj1X0FZETJorMPEvzGOAHw%2BJ3heHA9KmLsABHdvILHxyHQ4lurir348FcA%2FSSmKKc1FlCcYfxS7XbZX%2BnjANVQ3w2i3hXWjOHmBTEvBBRkGuFSbvkcMt4yKgUHvmh%2B2vinyNIGmNAzDfYyFZSnaeHoiLra%2BcbTWMjbldrlWSTl6FSiMp4vkaG5GfHzb9K5Ug%2FBwIK5KjVC6UFhwOtlwhvYYEntuK4uT9OGDq9BUU7ZgJkyU16tSMtZNIPkSO7UOhibGpUdfZCGW%2ByBdHr6Jo%2BVzT2IgLqc%2FYFIySo4t7Sr%2Fm%2F8ZxTvPqHfpZGILGzLptIt8h4PuqugJXOlPWunl2v6pS5EKQsvBQQ3Hwkedb9rT1PoP7avhrHxwieacxYJT6hu5UrRwA2zfN8vBUM8DF10YKuRJLAUHPLNUWjcWSw5i7VhPwzsR9j%2B%2FMZnMCxxG5pKJgSBj6Kz39GPN37sNoj4doqbNXreLPoKaPn8D1hwCMefBxHLUGEDnI30ySxk%2F3t9x4MqqHeHga6KUZSxc5orgqcoOYLIiAbuE04XzCrDxsLBQNDyNoF9L3Nl8pf0mu%2BJF%2BtXLONETcr5diSjUjrL%2FsDIi%2BeZA55T4sGR0yPHdc9Csq48c0Xh0wq8dY9j9LDwBV2xUQ%2BI21KjRDhntQsBVItUm3LoSNYN2X46CK4ZeT4zcGnpxvyFnZFH7ZGRzJjGhIKuQo7FvphC50pH2RF4SOyE8gyRBylV9Dwg0cRenqXh2qZraSWmyVXx%2FRYOK%2Bwi6Tcct%2Fb3%2Flufuxi8zYCyuhv8goym1iBBkE3geu726l8d8PrA9pvwz%2BJwqluaAhdZwZGNmaisB%2Fbmf8c8F5pdMdWvj%2B3ltmGfh2rhMO8HGcd%2BtKDUgpBYpHgIZbZ2S1TXn7tUsqifRrp13b7D6iwb%2BFJAKivjkgeePMJxce3pRmOpO7rsR5fGfjg5VG%2Fqq0KFvkayIm1T2pteOugKN6SM4zegrwCVFMBZjVnuyOXVaCUZp4s2jNJb1RWL3cJVx5Ai%2BQidDnKB0YZO%2B0plUQ%2FVxBOW%2BKp26ZTvCaosQvcawxXXlg3ZdEU0LHCzFta4iw3075pHD5X21UG7MYPJdcrt7tnjbHXUbYELmxPCyFgzjim3UrQ8KKYJ%2FX1vEqr2sxyCl3XjLtk6mDA7Z38ZxFTDUxdKYOxfq1fTgrNqUqD7G%2Bzg4QXQ%2F329F03SrR%2F1I6GUN0fDDcCc%2BapT9OxmhlN94Jph1PBGlT9yn6FKYPzqDLs27ZgKStqQyv7M4lY0SoBMxk4rGwZW9dp2WnXXbMO32Y1Ds5xJOwYTfFdqsvHrMNhP9zU%2F%2FI6IYI4NYn4LTDOrvzpuJymfJOOo5%2F%2FEASQRTL%2FVZF6N3QHZ64ut%2BR2N6ohcTUpA9y3bPmo0QJ7wtQQ8tXjdEJLMr6Fe6wyJI2HxzzXEc5Y81jh8gwx22CyPjnh0ZBozkMYb%2B2KwyoIvAI%2BiPJ0JPOaRjEkrN1etY6BwI6EqT0ZtGCIFzkSivdMjk%2FAdPfdZ4TlWIUDb8X7fnXDOCWpsjZV26vPQFooAODbZw2DRMtRIL0%2FjBguN3FF%2BCvlp0gfFI%2Fh9VTxgzA9ee%2FjPmHnTz0LWAeRR2Ja4R2mk6L2r63XJzGE2z93E9qfo5ppUasqQ8qDikxc9POchLRDKuFoWVN8IgUoWPZFyJ8I8rIvzAiHJnKzaBLwNZbu26m7Qkcy35la3ipDC9k4xMmxslQ4YjrB61ydjCWep8X9AO%2B7ZgBvujoUZlZ%2FpLS3vgzLm19tWNUCUrJS9TOQY%2FqYY5itkdwUKUOTaW77mQbep6hWOv%2BWVxZ731CTktou1J2iaSKOb8%2FEWUQYz16ulHWIyUeD4JJIyh8G9ih6HmjgbbpaOejNtdWdu9uKJjtjX8NWZj%2FO%2Fr6tcmshdBsgGuBqe0bjiATmPt5iYTEXwQKkbqHPoAZKSGJm%2BdIvLW%2BVKAyfyFhfnPMvN%2BX%2FACNOqdl1YIpsd8IGCdcIEIGSSzuruxnw2TJildM1Is2dYuIlzGYYlBU%2FkeyyJxtlO3vNx64uRMaXnUYNRqnxkV8AYaEnZjdphdg5leqkV70lIb41921KOC6hkhqDNk6qMkj65n0GB4e5Y7ZRfdbKBKrcburaoSRwV9aTbEqLR8SvF764kJLntYXo2MGtmQOvUjNGqXwxowp3I18fFg6rssIzSnMUAAxmbHW3gBOc5oz%2BAgvIjNdx3myvcFaGDKjpHUiTo%2FecW%2B1Cm02sXyKTCWAqCr7JXgEgFsYvqWg1ngAV8lCZkARsKrjb7KXwQsHl%2B97kMtW4Zo65iC58M%2FKJslBNUd9AjTwdrQXqe7JrNZmDIfMxjK8qM7ObSyBYXP4mBDV%2BmLdbfCR42qeUxrfH8z4NZ5G0TM1MwKMJ7X5kH7Z9KOsXKTT2gB9%2BsvCzKTaR53XeB3fYmkEDRYQs4WEJ3AEEJCpbz2%2FemVcazPxV2Q0EGSxdQ2f6VhMt%2BTJiqOGbjvA8VyMlOtBbxCkSUieedLTqpnfcXcvIrC5LTIHDSnFoM8Q2ykUZTFMU8CNGEeOXkESqAHEtWCtVRUCCgJ0LCwbmY5HTxQFy1Z3oSIHkSYm9a0R0TQbAuapAlJy3rTK0Zn1NDDAAFJqi5qsuaTLmUh6YJCSlCpI1EohCYDIfQYQm72v9loKIIBZumEY4FU0rqMf4pJBR4jm8L%2BIFRjrgpS68xKXvzQo8ZImvqXqAFFWk7bZkTRFwrsP7kFyar1QGM1JiX0TzhkxFyUfA4x7Gg9tAAyTze3P1cUb9Cc2PuDzvTptJSXWxpPrWxcy8%2FioQmeAbYuBQrpTwNInQby34HXPsdB2hjjjSJuktHBSc%2Bk0GC50CfN0LWS%2FbMRb6eq9eLR8gk3py3hoZEjoBNE%2BUDzPzR8lxKA3lMxxzo%2FTCcyRjL1xm5d8WIEnFKVsTnSTvRDgsVX5sYMOGXWqjpxMwgA3Q2sHx3srN%2BDZed5iBX%2FeorRiBSmcEDU8q9WpO0%2FuuJKawnVswGaoj0RhYurXG%2FXXXqfi2qZSI7P9ujeA8pZ6DyNeUfCTtBPuIRtj0wwTfRMgm%2Fj7sUfiHt%2FdVkA3c3Y8QpYra6Cja9GqXq7V4NjCqSw5zJ3ElLKb%2BCwtle6MdvOmnqfTxmDBCO5qb3mr%2BLwd9A8xhLABULFHDGRcFSZVzfYk%2F3LT3IQskZwduBjBxByLEdPz04wrcvwDHChPBSPRtgOiqAFfZjq4bkqCzs%2BHrv0%2B1ZvFtsE69qbgVNy0tVb0jJ67Jb8WoMpTBBQTOXlrWOMEDv6k3ec%2F4wDsBOmQqn816v5jgtl3RNwFovsPfXbEUkZyTblQZRk4s9E7QtTuIwbOi3zNjeGf45%2BswPHkyjoJQDCvIOMebv%2FNpfLP0wmDQsM1qKE6AOSY7T14rcy2nY2QRcRJZF9KQLv0nC410AvJsBhYzJ1g9ZAg7JoiWsJKzF5nvHnAQRsA3g2wHRPmkQCgYZXCSApzWCh2dLtO7iPPcf3E86iaBMyS25Kf%2FeSdjVXhUAm4bmIk1fGsv4kCGGX6v%2BczRrFfSXIutfQTam1Dbzg3RK5TwpjRKbgL5t%2Bwe%2F0CLiwoIl8IhzOUUOe7sQOOYLBo%2F%2BQUCXG6HYUyJbyuqGeycVv2HAyHG2VzqjkPFZ1o3hdWrbzDLH9k1%2FJh3C0frChssA29EPNh%2FC4mkNBi8H0sGlOOSIS5AeVQTolkEnHyBIDIKfUp0NFZg71tMXFBLBVd4a%2BcMS%2FOZtjgwK%2FmtpoSDo04yUlUREVEptBgU99NYdVs9hx%2FCAyy1a%2FxLmvHYItZ2WBOvp37nC0TxqW%2FPD2dddHsLepeqo5Ht2wb1cohKbn01HVgjVndRpehQ9w8iOYtkpj1kieXZhgedPla7hRkBPuZypLRKTNTK%2F7dpFx0EsIvHcnKn7mie%2F6zTvgz06b4zDb49SQGoDhl6FYCdX0eeRJ3gija%2BR5zguwpCZjg%2BQxOFD%2FJu3al00dzwajXBlU1Gc0gLSyvWS1RTPn9e9cHr7AtbJbgF9Q5EFw9vaJTfTt2vMDUitNijBivjaShRtcz9YJUCGN%2BGwYeDr%2F3QeYf3iGYYg791RaGDBQy7fzqVFBd5Ax9H0Rq76JgCaZd%2BZSAAUWTxEZIuQibnK2HnYTE3MsqGomFlQelvgZEQqhX6Ec5XQI97YW9AtBa2tww%2B%2FC%2FKuWGFctkXW9o%2FifKszMga0Yn3SJ15E4TLz2ZkMtW0dXMYhcaTaaPjHWBvxFezcNgCK1DqML2UHgoB%2Bx4aXwTL64Ll30vXj03oO3RSDHbQJ2M7o5uExIQXkunEI8O9T60xFw65yqvL%2BxaytXoG6UvWMjD638LRafZ1LiJ5Byk7k5hfU6RqFLCcIwv2wWC0OXtoqqRYLWY3ttWMMEhB82Ro6lWyX45qkRfG3ClA1z95qy1NLQgsE5%2FjYY7q3l7yQDyiTWerrcvGkHi8RqA%2F2G%2BU8TmJsvKV9RImYq8gWxSSDkH%2BpQ%2BHf8V2PwSp7o4qd5LXcmfPn%2FzOD5xlvgzW1TmZ%2BDjS4HVm4Bvd7tDDNW3G5ekBU1TIajh014a96fdHG%2BcbokeA7vSaUt7mUIK%2BOoDGxCTCASCyA1t6WxFpoO1a4MjZ7GLUl%2BTF5zkWaKZJev5mn%2BxRa7%2FDgZE0Lf4ICIGMcX2PDizVTmMCQoOyLcgs8pkk0Bs3WKWf32t%2Bb29t0pNxOFpGQAyO%2BIQA3gJuXHSOUuJ2pCY5wIfR1ANBoWnR3q216rM6BFl3TwI7H%2BxPQQMZLg0cfGlHLKOFDH0ZN4ZSG9Rc8YCnv%2BRn8hI71idMRxbnfH8teCfMVAliHEmnjGGqYnC%2ButZGOTmfAshjL%2Fhtz7ZEYMqydle17YVUNXr2CIsUitn1AI0YT9smJ36EHey%2BhjiDZiNKLDT6OvOaGS34CT%2BU02IIwmvaSQCId0ypQR%2F7WUlPwEgbKLRywubJjmGWVjR5R1KOBLl4zSWaT174ZLCNmWtaqYvGN9aX1nddXW7VbL5CKw%2Fv0QBjkvLNDFjL0F54j%2BGW86pQK2ckj4M5Af6ME2Zx9fzbAu%2BTnHAAQdOUBUFtNsJntNbjqrEJ3X5A%2FnHi0Z%2Fm8lgpRQIEM0H1Z8I097%2FMUv9nZVDwqfrPMxl4fNA4Yd6ApXMZuBYxTc%2FSYJwaARMu1TfyEP1IO6dqCW1R%2BzmiVQZzm5ROd2MSXJWuuIhTYkCmUg5AN4ww69wPlPUekOAHDgwnmFdwT4Fk1Ll9CJyVSYi%2FI83R31SwiVaBWWFVvUBtukvHAQx8EnRrqdAUP1Kf8aXs%2BvI7l72yHCQ7aoDpQXBhW6C6KwqrIecOLIHLAETo4a9MQyxBqVvAhRpQ%2BkDlwsG1Gi%2Fjac2Cs%2BcPiXD60yH1SMX7wSC2OqnXkhKYcfdS2BhqjeMKkymRJxslJKx%2FfOtOdhbBwl1MJ2RxZuc3tSUFMqIwf2CepaB3xUBmZ1TEScY0OhqGYdm6OmTVuP39DuG8%2FmnEqlfCgmp39guKH7WlSq%2B61w1UkW1Ad3hDurO%2FXcf8YpAOUyIg2LyrsZC%2FCx4Ias4bBwccjzoW0Lw6ChT88q77Dzixubl2OhaBRlVnyJmYWrb8SeKWmgWjLNNkHghKNCXEiYpHcwBY81kv5t0FU7ZryhChBKpy3kjr48K9oi7hQOXdAGDHzcTpndHMOIiI27zmVvBl6bLSSnEoKengi749Q%2F%2Fpxx8Cz%2FQKLjnuW3V186YI0IWQ9wsZ2t87KMu2CU56Jb7JiDh%2FQcuAwNatiqeuv7wUylOa0fReoSr8GCtLQitE%2FPZjCWq6Bniduko3urN3b2S109RfuovsfcCVEEwvnFAqR02rLD3jEn2%2BUEIULvs%2FlQoo4pvMshlZMRJ%2BmoiM9wNhFIkg3AK42KvZtEYxjhmFzq%2BSDeRYTDvuoGszA2CfFbXXiwWacOvELIfrEtp%2FFNS5Ssr5Sb4Z%2BJsyEXikWwnmcUipjTzP6fNl5Hf2SKHP4u3FwwtN0eK6kaXrZmgjUKyYCRetB5Wd%2Fs2s5IPF4%2BfQ7Fo0mbZoRwAxuuSZeQer9R62mPw7kGjLtQ4KwNBip4Oc77itjFrVuqw8QaG89FLx65Fmgysd54qVI94jjCCAqQi69Lu%2FKayE%2BwULreWLG3145RTpRfdb5PEngSZnaHOtPlCHtXzI22A7kDk9h60euZ4pzvBqPbpCdimu44joRduqlCOAgyGl27HktRnv9Ty9lOGMhdRxR6TqfiTBAFRHAwz9v5Dx1YVmy2mGAKgqGp9guq%2FV7nQOEoVaeLXPsw3Y7Zumm9Z1XAIcbOaicykZ2SVZhpKGiH5jpzUNEwVb3Gg9aN6rkGqB70Vzv8gSe%2FgO9bZcVVGPJbErTmpn4%2FtVdJafVlykaldx2ONgSIuev5uAB47CRwWb7yb%2FgeMoBPeazHCv8d%2BEsaETn7FZ0u304LrzTX6REYX9SEchW1HC9VpMCAqV87k105vTdWvug%2F%2FyNwNHuusMobVuHOhw2EMWt7H%2Bh8IgOfzfEyeJjJJoUMYn873DEXgHBw3Bk9U8YRhMdvMPp5lMAg4Mx82Xg5Ra%2BaDKPv3xOuM0eEv%2BTWgzEqqs%2Bc0CJ9C7fmoZm5yLo7XPb7nYQ2djyl%2BNjYgNN7b6wdhozuHGfhzQfpW5IqIDwMcGx%2F1tqEactUUeTGI9uiPjcXtLkoxRAN1uDSl6AoEJLniKW0gtQ3xEep93UVgzREtVHlEZgTjxzf1XdNIy8SUTsiXXzM1tlDzGX06gFnahsGfGv1axcTe64caOAm5xpBaCJ5Bk4admuBQeZteAjUYx0gA71MrwB6Die1TbJd3L8h3KzLm%2FiuOzbmga1x3fmNP8osk2YfSLK5w6d1hARJCeJivE7yIH19ugiGF%2BFPlehLM6wAtBAlnd2G2n%2BEbGhko5UhG7855H62eNmEsJDQK5mTQ91skUm8GNsRILGHDfT6s%2B2KgftYIcprUfjJQFea7J%2FtHzt5bpBI57CvwSoRFrK5SkHUm94JB2v%2BJePnk0ffIJfYHfrZIsvFRJg1nXrM9IJB49rFHLZGLVJVKdGfGaRYOzZuyODvO4YJjZo%2FG8rYPPiq5r5eYPRjr%2BZn5icPkUovQHcOilmAVOf2SNsbWhRIGar%2BQgQfXJjQp%2Fi7HmdberJ0BSu%2BCeHfG7MjE1FjOFPoRwL3aMzcX3rS3kCG8cgtDi%2B3jVdjnn0%2BWcvQMTLXKS1hIb%2BJvr%2BzW12oRZAlwM9FNF%2BdW903HICBO6b2jcCOYC1q6jxD4h2LMVUb55N5uY49XMDuqyxvSzdrdLo1zX4KbdcjOOecRoBH2az8bkFTneYO7RzY45A0Ije%2FDm%2BR5k52Y6iD4HZ1ktA%2BgH3vNMmJ3yC%2Fz5nSHbe7m0IYFXhOdzcVhceGO4i3%2BAPXnBVYd1ZjXtniwJyhCHtoXGavHF1xz5a%2Bn%2BbpYe51KAwREp2iCRicrS1u446t2MFtAxEmduWKxRJHWYZkcChMtQpc1KxvwwXDRcfavrNA28kKfYGDZFSr1bmcBFcJ%2BJkbynwwOps98ZduBUZjtQJXmYYGxsjs2FQnQQd9Sshnv1UC1VsHPFCTU5RV5rTae2qwvOK3l1%2BlibBtv6Q97K%2B51OLyihAlM7qch5fwMV0JsSn7TtfnLknPKWcSeXLqwlF25V9pd%2F6XCrs0ZA8K1esr73ljePhlpK9hfOlqR1bjTiSsZBM%2FvpoSPkUtRjcMirVDTZtm9dvT%2FIRra5nvg%2BucR%2B3glacH%2Bs2HgFVS1YKoPGxpT9FfA8QBGmun5ajWxmI2wHqrTHPIxx6sJf7uhZQYGZztyULH2aw8teLpEhydry6Ak0A%2BPEPrsMQTmAy9JxvTE9EQwYIqXClBsLp4ns0%2B4C43DAqiHTjq56oa0ID2qSJOUvYP7xat8Dz73qDo%2Bs4g1vNxIrTF0ctUlc4ZmQTd0V%2Bui2JQSqqkx8Xgo%2FK5i0%2Ft%2BIPSBQWxxKigMog34%2F9ut1YvhW9U%2BCW3qmTyKCSf4KCW6HTgugBe0QZfsxeaJeT%2BZeNnnkuIvov6cWSg2jUPq2zSIXh9%2FTyeF7XWLurwxeitVwc4CiYHuoexgA5QayHK0ROarCOyqGqvUVYD6mkUmkWiH%2BUPDpAeGH6wlLhjHYsWd01cxIBUQiov1Lz6JcbLxIFQA3yB2QTdeiy3p5yF3StBVXLAWcyG5nb8sHMcfFV2GZetk9Nht2LBDkzxkUgSTLuxq66IVYB0sK2RurP3ri0ryGyozmBzQrfI1BZOnDh2Xj6k3nnCPVX3uLJi%2BMVxGJX7Rc9cKAJhWxxuijWl%2BCnRsz4P3rWM2ubPEVFPzpwsr10pqFNaJnHf9i9RjwLAA43IqAm9QBIUMfie8WtsFqo79fIAk2Ye9BTjUNC0JV%2FudpA6PIuDQ6bYo%2Bg6carvbxSOA1xNCo%2FWHD2sGOlYp%2FDML8NKMOGc2wcQj4fblDVXHgOas4R9%2BrgdPD5bSNGNubHi2g5GQ%2BLcLnB22632FNxEjcJ5hiUdxrMB%2FksLAtzg64sKV0c%2BKYGv0PGNhc7W%2FKZLEbQhuTmdmunptLCZj4XXxUVec1fy0i0dHD7FuMTHRH%2BdvYH6Db1RhUWLVA7kHGj7ZiOyynYO1dIUUv9UFz6Qn2od9Ym%2F3kd9sUsSfaeVs4wKxWwVqfWRBVrR1fmsCDEEhHifV0btyldsNvtGJSjXMSGOUFpLzu%2BioQIQtxCMeBOPJkv84vC3KCeVk90RjrhT%2FAaRP7rZrQYRop1ZfB0cvBJtIYxoJecBA0nKlhspMoWmdwGpHdR1QTq1DcrlHIW4LY5Pwe2IEhIMG6pOIMYpMIYAHyyhbz62lPeaEgVXSalC35svPLEIWMsoqZP32xt6n7Nguc3JBjukXpuO4eqDCI6hcrMGJLiZOPQYv5tBAu5svu8opUPzWWAlaLujJBFa3eGBy1rgqD4ehtwCPCT%2FBn9al0Z6%2BbY2OGeSw7Liju7dL%2Fi3WUDzoFWmrPrJjuOPPZKuoTb7o98J%2BQljm8DRlobQtsCHfijgqGSbxCAJbxMOwhLet8kbD19W0SNVH5z5%2BIunITU%2BXbkoFPaGiPrm4nqVjSjbKECB8O1EzbQWmo4yySLq8Ke3ww8aq0oXjNzUJTXDWkP7akpy877OthZH8sKLOcwPqExUVzin7lxhGl2cMZCW92h8N23lMPlhmNcbIa%2Bw9nRRAU2ApjRI2n2k97Ei2jX2uSvkbrFUkwwqhlN7UU0JnNZRY4dStPvpWJrWfe8KMLiAKBuz9Iu1Fw8cWQ7FoXyOJv6dN4JDNUHMpfhGzIQVwB7LuuziGlgmYtqR5Y1vBEYAzjypUiyRu5WRiBkmgIb07CpPbBfCuQhJwDzxPdFsew5RFUL%2BeEZYUMDTXcj5i8klgzL7qQ1qGWETqmiM0Py%2B1oZu7vqfBkoXI%2FFd6PJA9D5V6sXNHEJPtp%2BwkwBC7LOHNimgX8ny4hOqu%2F60IGXqKPKVIpWQHdg2XocF7sW41mhDO4AOdztclvodBWKVCY5AFad3kWPBuVKZiqDr0bFVFh6B%2F5oE%2FgU3nAKGdNz%2BRmVE%2BLAvNR%2BiyhCas73wc1W%2BlcVJebiGgL9ZViPcTmkeOlfGaGZ3btbvud2OguIljMpjPT6qvjPuNbpaMR4g7ZxPcf1VvmNBDpBqXlBEbO8js6V2XXlugvtDVpOnzufhailtvfOBfOX3JcoaDTuEGlgV6vqnkn7YF4sUTUiraVbaD864c6rM6XRT3q6J5inWWX%2B%2F5yypuRjkyfXXNOBChG%2F9H4tZXJvtv674MxYLvPyxeA5qZPMcc3HOHylMPeRnnRk6NTKMmr%2Bpxe9Ptkm5GmIaGcSRlIDG%2FPzOMVTzb%2BnHb%2B1CWEVAA7iLZVUv9zaDKoNghsVP%2B2pPae7yHnGbR4vkWrbkbb%2B%2F8156l27eqP2TNKbHBcLYiTawuCUmvgxNw3WYtIZg64s8q5ttD9u6TcGfJTRyNMcfdkJfookOXle2D4pUFvrt%2Fe%2BiVlKsHvRMlgDimKl005rx8ALku7LwBlJrgt0ELgHP94r7LB%2BKb%2B2N2JewqfuE25Q0tnj4TwAZxfVyovHFWV7SnXtW07TUwQWseA0flL4qb60BMXzzl6zy8MqRT%2FP6AyFYxtJwb6Cgzz4c20k0aS36ytRcMoZu3ICErHT8ij%2FPN8QF2Fx0JZPmDQDx85%2Bjf5XPXWdTnZ7As3c9d0jiRicwLhb8XFPkL2NrG21TK82pUuY36p9SZu%2BFAFkl6XeY%2BU7vX%2BHqWKW3ZPygthCYIh8T0uWhhoZVWfqyBUFB0WFXd%2BmgHxw%2FeQartxH59vYcYr4W6mcXCbAxj4LqWNOHWk3%2FagP4dpBbgkRirybzxXldujJQ%2Bu%2FlViuTH1nSH4jhbMO1iwze2jO69i613q7Uevd8MSMNa2Djha9JTerykmXnTQDKcE1QdZfXbBij%2FSMQF%2F8IubLWswXs0YEuCvRn8qIJwCkTClMIP1RRTuSf1vPzJxibhocpj0W8RmCyBeEdAmTNKkU0%2BKa8Mo1zI6pO1AynS54uOWjQifueeADe1Q%2FAzJA034iOXDuuTfh0kWVd4Tq9ZZKOtghXIaDn2TYk96uhVJ0%2BHcJ%2BW34fxUutOFsj561b6YsVdeQgkzYlwXY8i%2BvNDN0egXDTIUCBNOTCKugZ4yJS8ZwasNJBDBo7NysmnWbnE8mYLAmF69fnuC32Y1RppciUn7mdO92AMXol%2FUW4UB7S%2BcEp8D0uPwB%2B6lbUP1Z4YzTXq5F3Bo5TVupTnRdpIzBeZSrlY4sSdLxGpK1kWkGwlDSrplxOHenDhVXkqRW66uV5urpRwT%2F6c%2Fkcx%2F%2B4GeKK9usW6MLdcMTy%2FEAM5%2F8LiT4Mbpgi0ioSNO6Evh2V6Bw58%2F5R08Ma4o1XCCzai6NVMv0Q%2FB6AjMxmQD1fcutWVof4I4FBPk8MstgI0e%2BkfMkNv3WEyCV%2BCme9%2FHCo3f2crpurC7f0RhNszaZVs2kodUWWzJPa9Qmk6NA81SHf6c5IY3j%2BgbaNuv9IIcQivhajyH1FNWnRTO6e%2Fe3LFgenhucJdhYqPrRACtTff%2BdtlWAfxyFxteU8tcn9uXQzaIgkRBpHmFuxF78NHYM1rLsGcIqVnlkrHQAmzxrWmLDpOE7Tke1v1YWh2mfr771IGWAPirPyQfY3YQeedia0OTQ5LYQj7LnQz6TzH0OJllYA4isj9N6yE0IOri8Hh1xKWTE2EUbnL7%2B5Qsqgh0yaIfniXnbIw9J6QKffCgN94jf84HTfx2oNxx4dMmf1PzpPEZc6mOmj%2F2eHAqk8cn6pUmH3oiQVmR5wfSwUxW3bwNsn68fHgLd4vbVVsjKRlmjB%2F8ceYt5NtXiJlfZe4LyFawkKXLjfvzxN9nluz5pB0I2PwNoTxQ%2BOsjiXm8%2FwKj%2FAN5i4lYhQmmvRaiNnm11QttEiYlrOpOsW2z4pWg%2BGK7BXyaTWoLZxUlhrEjP6CKzIcOz5HL8QO6D%2F6vX2arZbMDuIqw1%2BxynauC75wIWG7Z90S5IjRNE3PJ%2BJ%2FKVkI1vVKC0NFN8w65mNtgI672zssqbiVFN%2Bsc%2BRwUgB6uwwmHiwH%2BHElXUos2Re%2BoWBUQHBZcPPD%2FqyOhzw1DfyTVS56pl8c7HUrdLYZGoQ3PlF2RyZBmHJHi%2FaIQI4%2F5LuPhfiZ0ymJrp5IodvPV9qe%2FtpBsQ65rVFXcgbcg2tAaurW%2F3rEHs2duI2diJ55uPQWpeOYjJMv%2FQutNws9uHBSR5tK766AxTzO2DxgMmsrE6EXtgGz%2F7byeHTuStKjBb6%2FjcR1l5uEBSR%2BqxxRTGvtJXzW2cubFzlcaZWNBXDfLnkuNJFZOvf%2FNfRLhKC0yw5Lv7EOLTe7kngvM1HF3gUyMAwfZYLZJN5DUfHvmDUJW99gBUB61hvS9KCPWz931%2BPdP0Q0G%2BGnLuG8h%2BHYdcgq5aEwbNPVl4W9%2FpjatXThQm5Bvk4Egnml9k%2BKi4lV9G4D6CXKIBSQ%2BStbnItTzf6fzHMh2IzqDR22OCJcPuOCDxEeqlT4gFxKzl%2Bf4B78sPgNIc9AarBGzEk%2FGkYWFTXU7gk4zRsR11Rr0Xv7%2BaDVkLgr7GaIhIws2Yn4jvd9iDPZwI5mRHaF%2FA6czcIkTJHgREZ8S8UWJDdB%2BRY8vU5IIWZbhYPGafgpcDxFmYyRJ5i6TQv18wdXetePHtbMkKBYbvgadB80weALzrnLlF5RHfTd1KYAqwA5PG%2BqtUa2cSN%2FFm0iFclCCjnzKkmlOXeDyfokLC6K6qWlNzE3d%2BdT7K7w%2FLbUBq0xhW5B%2Bjb4sIegnNunGLoOs%2F5bItKG%2Fl2NpA5TPchs4LClQtVOEfFHoa7gEWixBvpZ5xS93go85qjr%2BaOebLZPRX7tEeqAN6EtsGdS35BYpDQzFITi90NtkPbbRwtee6e41G24%2BoguDkylSo579vsJGFjiVNRC%2BocYCZXPFbz6vkDRiPDJonoq6hkBlCKT%2FuKWXmDhrjsR1HULZnLfcoYbT9E7aFdvrgQeJJbcUnW7uiMDBQ7mLEuHTzwHdzdH3ssXrgBl7QiD4k9K31hfU5GtQkHTtlHkba2gsnAXD6gqfgDqfZPtBZ6wn7cnzRKrTVNIOJQ2f1R25fBLwPtw%2Fi775Tn5ZJx5oKHbPV%2BM2dRuk4E5kN6DxQIv2H3w0WilQtOgKz%2B4Ie36lA%2Bv9kL8M56tpc%2B9dwprg39T0VrVyjRMW%2FSBBbmIqBLzfrsMzFukg6%2FPo2f0k5nvQc7BE7%2FaqdtliY2u06O3G1uDFKTUwH26Ojp9mBIRgorfR87UEg%2BX2l0Jt2kZHby63hafA2n%2F9v69v24kmzlSbHDcFvhyH%2FImS7yxrDtWDb5qnNyoKY2OTVCrgLxItemrfia6uEoSjdlRAv%2BksHlTKplXNejkS5zfHxbQAO%2BVDi4TbJd3bDwPdsi5yGzOuBKAGtl%2Fb3zZuVmpAwMSlyjK8J4Ltdm3Hc%2FYNAAMCeJGHSLu0VGXly6Z7bwbrctOGy4nSld4rJ9VLv7sIdGqJNzz0Ep9M2zpOfOkXB%2BD5oQE8qGqEuRRuKhFtnnE43x6qEr%2FFLoV%2BV3zWuv%2BgxdOZi5vr%2FhtXuqD9B%2FZEpXov9GTjL2lqM2mz3c1N2oxw709S8HAlR%2Fj7xSesY7Jd8Ph2eG4uCSEmHukop9DrrbKiq0tLtBQ6l2TqmsWsWsmdxIpM49zZCxF5lK%2BkSUeaZ5PwfqIEq1%2BSpyyKBRUTyj%2BV4h%2FDUKBYgIQKqgyi2LhLbPW16g7AxyJ73xPPU6FQ%2BkAN9KGh4uK0iib8grmMx97oJFEmvCbqsKDfBH%2FwSQD8SamgvaAaz0ilWbGoIHWGxf%2FBEp%2F0vJIbdf3MnIx9v0UJ%2FnLO4Gm6zwPrFsstWtBIrWmQXbAZI1ksjmZmCKXcCE7o0DjPIY4zxsdV3zLQ4Aq9pVVt6AIiyR3NkYMJg8nDzPHy1CNzxGF5fUqe%2BJPiCd97R%2Bvit%2FQIRKNleeT%2B%2FIwZtJMfoQqKlc3J1ToBaDHLPXAZGKRWgOrwyTqakJ9h64%2Fo4n%2F5hdUCRXQW8Qu0TNk%2BUsovQ86Hc6giCVE8zmKLNVPiog5WW2%2Fmhjq4wyJDzICCuycAJXlMiGRjeeJQTznmmtrIy15uuUACD0bmz6RPKP%2BjawP4cp6U2yP7QrCI8DrzjTksjKPqFI0%2BjVW9pIixUBhA0iQAfJQFYfUFLWpV1LHmPaK9YdgDB2NFUgCUpxkORkVcbQU8rGK0smCYdyfCHEwIm8N5VlvLmQoElnzwt8ju5V9aMvxtorQoi9iU%2FYn3%2BoJaJXk2GauT5wf2jO628a5Bp5I1QyadFr0fUcYhXSt%2Bl1LzFe0veCjw27ym3x6nsBVoN2tuNzCVxzNkNsv2%2FzC2piG3m%2Bab57pBVr9yBHiPfdnAsbIoASxkOO8P6UoajuZtIWu3MGrXqj8mAg9GCr7M4Y0EOQDokU6NilwUlYtjgnL3bxO3UNrPupsFvCcxTuhORIeh9wzR3GWMNbWPQU2vCyYsPgZf21U3aI76LPdFcMNk2Dwvg%2F3FuasL1DI%2B%2BMFvUGFt01TCd0y9kdLDgidP3PD9aZM4IK8xcfJWYBPuEfBNh9TxKErZWMcV4WXw924x0jaP9rvaTT6%2FO1AUuMXJO30NRa35Px%2BGOkBlyyqFAObAQxcY78ukfs3cfETD3XspT5XEam7jjK50hZMORd1aXe%2Bp3xZYo4oOGeT2IsBllxat1fWHGr%2B%2Fc5pNYYBN7eBzfDzmd6jBetABhq%2Fnc2IdNiQxgpXKpiBV%2FD2xy9fwQR98uABvQLpDUAlKP8tV9dwh2FYMAggkuFreKrnUA1LXPBcAQcIl0%2FaQaJqSCTh%2Bzr7U9Fiv%2Bfy6E8LoEoMqQILKfbuJvW2SfPEXBAslcmd%2Fsgi0VirholsnFj9q0M78j9ibdmx%2BUadq3PtcBJNGcYk0Qsxw11eY5Fol0xFj3dQDI2MzB%2BPDJ%2BinsMDKXeZPSinCmf8IovnznFBq6hCEK5IlPxsnpGpI27dqWW3vlCL9P8idV2AYvQIQJr%2BPGAyvBVtwy6iC0HJ0juMSapYorGK5PtsQfrXAEKeI7myQcqWp1jS4iOUYg0WckY72rYaoW9p%2BpjRtgzZKIE282oSSnBd2tOg39vFfNZAwFByd5nAXjM1kmgq5WydVpSVPTQlUCsD2jRT7KBv7dS%2FtdcYj4c%2Fn50vNmpL3W6oQTno%2Bm9L1sYQGpgjcb%2Bz3uWHpS11YISjdNGQcaL6foA%2Fjs%2FWBqca33gEuAcHaJV16FrNC9G1%2FbVt119dt0Qi4qaGwzC8f0UkPHPnhQKvvC%2BuydSP7KifRRGLUr7kqL8AouQNo0lQMwQeLmgkognlQVjuNMOXa0pde0xpnP5NZelN%2BjOxayu5Tdg0EX9bj1TFQ8BITNK1mTsCyHJzbbXxjJi7xfeGNkmviqabZRh%2FmO6MONtv4IkFyir1Dk%2BU1DYMtfDnBIrNv2OeLyq4JnrGnfPoiGMLvg2BVamKZ7PLOlicj1o4JvaWbrMITwmEY8b4y1hhRdijBsvDf2y6TAuKVOTjRuvlMQ%2FgvbfgDUZYu%2BnoOMpfNx5mAE1SUZS11Emc5sHYL1e%2Bmdtz9ydBX261vIIm5TC4vg8C1mI3Ye4Cn7CYsLjXiQNJTfMmiWg5ZMTmIBMscPhpRixxMYrSpNGhA2TcpuVMSGxhxeuIa0dLVe2FBQqysMFO4RIi2qoVtKZIr8RGKhB53zALXaKGz6VHZudHd5FS9LGYj0uBdYvJJ8hMxQV5B9fmETpRC4Vcd9wBYOFtC4m%2BdKO5O6HwWPHqboOGCw8cmbqkBN5qg5SNl3CkrjEfDT%2B7cI7exFk7aD8JGB7M%3D&
-
-Seuraava viikko: ctl00%24ScriptManager1=ctl00%24MasterUpdatePanel%7Cctl00%24MainContent%24RestaurantDateRangesFilterHeadersDataList%24ctl02%24RestaurantDateRangesFilterHeadersLinkButton&ctl00%24MainContent%24LanguagesDropDownList=fi&ctl00%24MainContent%24ShowDinerGroupDropDownList=97f76449-f57c-4217-aede-b5f9dbf2b41e&ctl00%24MainContent%24RestaurantTypeDropDownList=17dbf3bd-e822-4b36-965c-afce161f0704&ctl00%24MainContent%24RestaurantDropDownList=a7349553-5535-482e-8248-658a55dcada3&ctl00%24MainContent%24DropDownListGetWeeks=1&ctl00%24MainContent%24ShowMenuDropDownList=1&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl0%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl1%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl2%24Meals%24ctl01%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl00%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl00%24MealHeader_State=1&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl01%24MealHeader_FirstOpenState=&ctl00%24MainContent%24WeekdayListView%24ctrl3%24Meals%24ctl01%24MealHeader_State=1&__EVENTTARGET=ctl00%24MainContent%24RestaurantDateRangesFilterHeadersDataList%24ctl02%24RestaurantDateRangesFilterHeadersLinkButton&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=gov%2BFJEu10fYQq8GGdSpt29Qnt1TTFFnSL55LJfU2lravvzV4BX%2B9orQEDStA3N%2FzMvgTmRPRjjg2j3EST74Ek4nL8ela%2FT5cjLRZR4FOW1KoDxYP%2BnVU%2F73hgWh5veSaEgC2I8ftU4A5dN6scgX%2F9zV96T60ze8tEboE0hdXcCkwcf26hpMNzO8R51HJCmjBh2oLmzgmIP96c7Rmx972gqJ3bw30YJlqS6YvTTigOAwwXM0nFbomZnwgy8AnlAeblLT5IqHyIcrxfWx83j%2BJtLsQWwFfOf%2BQEppkcSLWOP3UbOW7IAZcckI8Ix1XR4aV%2BYnsKPsNF%2FW5pSmFhaVaHApM6npXmrL3sX9iKIWc8luNomEONYRqtKy77%2FDKPKeNvrimho3eFrK71GHD9NW7vGAC47gIorniqXcqMylA%2BTe0lJfZNyxfpxOkB6KLvsmG09jKEnpKkBqXUlHBPKnbwZxoO%2BMeR%2Boyuive0Hwto5xsrokLmC4NLDiaUY92JVLXzAFaUQew5nIkFtz0cLtTvnjClCHAQ5AIcP%2BxgFLmr%2BIth70QsUfHvE7txLQfcJTcFu%2Fp89INQzwFSfKvf200sh1nJxKY00A%2B5CPQx6pcdfU6b32Yb9G3qU%2FXHtrIw5W%2FN1e8l8dMzKtzqWoFwj65mXuzlRXI3ZfonmrnBX%2BfmKC0MkWm2UhpKEKeVky84Y%2FgDrfwRfBHGzqf922PFSNXWjwzcTqEjE%2BV%2FB6IwX7gWIi%2BdaNvNzf%2FFFNnODXHqpFnB3gEbpnErANDoqXZ3DKqbJsG6Q8MJJ8xTW0pACBJc1WQeI1K3lhBIyZ3c%2BmRm%2F6bxc%2FswGKJ5%2BJAkDH3ufSFzk7dlZA3gBMNSTAFiA4MAycaHfR2smkTd%2FO6W0G0ZXgHNHUPFlInpq9ezsGzAvOUObaR%2BS%2FVr6ZHSJq5l%2BSvA5MLwf%2FeA0hozPf9blZBICIjFek3DThFBMZInQ7eu3mu3pGqCHQXbnYSx%2FIwel2uwArlXnoJn0lYXmhgwNwuaS%2F2wm5Kk2Z%2B78FIhcf51v7v6MSq5D%2BoWfxIS9nfftfDklmzOUOyR6F46n%2BkUL8bZ4mKpTmc9yITKNLd8mr%2Bt5nLJlx30qricJQV1Kkv5AIEfa2Osoer4n2JWrst9dHVzlGFWUbkwkR1%2F4gMYEhn5TbX52oHWVGDDlLimb01fawB8fio3lIj3Rj2n98v7ufJjpPE%2FqvqdGOiDHiIZnQj40djdF2XHS6J1Tn%2FD4WLN4z292t0Jn82%2BdkDWkEJog1ST%2F0IkxrhUqBke0CBLqwl9hV2tYBeCfLFQvMVCUooasOIh8FWHJeftcSa11owTiN09Pgz4Yvw9Kl%2BGmTYpVq%2BC75TvzgPbMCwRv%2F3%2BuWXLjoWb2Lyd2x%2FUt2tKgZyw917WvV3oaLWi%2B3RGoceBxnJtIz%2Bk1jZTGfpv77%2FKHhnNQVRlbbP9jJootXPXMnuVX%2FrHfWrNUkW9hEXMsUipHnpl%2BtfCmc4Aeq19npmCbeOf%2BKEK0bYRsgC%2FPhi0wE5z8Ml34MDKKcf1s9KIhLiYoTxGimvRMl0Ey%2B4MvfLzgdTNfRztUMRrwWeKFkmRihsZCZMOGh2G2Cyo1GMWAbnozhcphFJjn4g6kJZdOTYJOlBuUNtjcc4jQJMJgQT43jRu6VXQv3VTIFHHZpRZ%2FWKgaZ6DPJZm%2FkMSL5d%2FAlxKhMshT7yeMIiC00vlKasjORVOUJpLWaweajSAdrbUQkWD6yBT8HHRo8apL%2FNFVtAO%2B8zSrF%2BmXLF4FOmo1sfTxfI%2FdyEiM2MacDS9rppdbOaS5kSxbDvks0rhdc5JFzog2seskeKXrV6EBQqkpIcWdAPQ5YE4goxrjzMfikIeSIa3MgcyMM0wT2n1ET%2B7UKvahlwavT%2F3lDOhXzc7FMXHgWK9%2FAAg33Eh51TCelhMBYPLYfgHQHGmTHRgANoA6TWIIzGVg%2FRI4ZMjkAwQSytuAhL%2BvsUBN92qUHq8f9kuwaYl7Ejn0WesZcgVuG93W7gChRcKUUBOHbcJvXTHKmkCjaR6jZf%2BdAexsdaeZ5Zh%2FepXC0K3jES9lDBMWJIJxXjqtrkVtv1HOERVvqfukIRV3VNTDpzcVa9rP%2Bv%2BMf5RaJmRUQce0JLSTWkqIClLmgCTg6v80UVU%2FaLqM%2FsL8PxUfPupJb2JD2oqJNZttgJbn2sHu2VSw5Zv12APlluoytoNJmA%2BOdX3vGqoHjyXVwi8YA38ZdyEwefRqUlyELeJgbBTehstnzo5C6ISFsrjofK%2FIFJez6jQzk1I7kSPhy75PAxFVxMXlkzwMmme2zqrd9xwoF4H8VbuX%2FT%2FvW1vK6HBd%2BWdq0%2Bms4DTwQgJIX7dbw7dJQ8kUJnnsDcCQ%2Bp4LQ9HXaSnWC%2BAD5iduHNw7XSbkrCCPFcJEIzmDDtKz%2BJRktuzuUzwtz9ICHvQCVMsHd3qISiCXEw9ALuYK9Dg%2BAl%2FMD6wBIhPy1jiSgXEKAMmUnPGSaYWIKdOnXljB5vPPdI0%2F0Jg0ORaYMSk%2FfAPef2uGy%2FhNEVOTNb3iLJSCiiRhgkxcolpV%2BrM7PRMr6ybnrwOqnsI1ENI8jCp6MG6OPtDNVeJKF8uLo%2BJT%2FwO2OXd0GDUnodDZqe75LD8jOX%2FUiN%2FuGHLXU7osqCcAKpyJCOS3k9ILsvml%2BoWvjjsdtcoMHxD83Yw%2BreNiOWHwHwqhVtVUZERz3XcujqUrcyJypvnkCJ8XIXn9z4sahPJV4Son6KRnSpT%2BipvXP1lEYJ9%2FBe5naV1BU%2F8N5gGN%2BXJLgosb14gR5AI1g8s22mchuFtifUVkF%2B9FSZIswkohAKRA8FoMlOlmexyvTSRXW5GIFdJ8UvPKjuuvAHRenG%2F6SSoumMU31mx7A3tZwnsAq652qsVWPDxr5RZoZEBX0H23qzH8s7cUwHPGnn601y0Y3K8JH68dkKTCW7LMSAzNGzFMUUHf0vYYlkzrZCxolJk%2BIgA913tyFbrtPcTYuRM2Hv4tXPugVgTRv8vVxXiT8aJJlMDfRMMcelnHz%2B5SPzI7NC86qGcMqRIqpEIbqcldAIgQqsobrN6ufYdRTUWzWKbi2xeCmidgxmrS7vsnm%2BdEGqHHVQZ0bcdRF90tqok8ihy5wz90EZl6rZGbHKGPQ%2FPTiKSY%2FlaIPjQGuXofwfbooWY9538PWtNxOWC%2FKGKF%2BoUATqONQkauz6rHAhh61OO0bB%2F9kt3UKwIjsyDTbWZLio60shyuWrtgCz0MqZFqCXwmunjRl38ZldzAjv4puqERjpeMeLBG4do9uGM69CzP7ipS3rNihjAyq2jdupRXcm%2F%2FDgbtXvVW%2FGSSRCU6zRWKBNJN7Ss%2B14DHLYZN62rUgGL7ARK5%2FczDxm9PhD%2FjvRbobk0IWxmyM3%2FD6%2FJnnBq31uvpZzTvtQgTAYdL%2B8XVBJEOSHiVOYtqkmPvHXXS9XKSoial%2BxDOP493oFNSv89%2FdAxMbMWnGgW22t73Sf0NQU1ZlLSznAZD5A5V1wlXcp84m%2FSjheitscIFCUDL8dBLBl%2BOWZ%2FCpJXwgy2ajF3SMvnk1dDQArqY%2FJ0YRe%2BVaBjBTcWZpwrh39JhR35Ugb5hFRx37%2BEWj0Ift3%2FAswfyI3XMyoqch6YJmFPfZWZm9SSvRmOyb7vMR1MsndD7MP6zTc1m1qAwOUOADYc9QwSpq7HScAc1Nkg%2FcZ%2BgoES%2F2Jk69kiBVZRKSteVV%2FwEDdJ5Mi%2BMFNI7%2BZ2g87q9yE%2Bbl%2Bu67SWcZIzSopNOuJDJ3JYRLjvBpgLhIBASjwy8IztJks%2Bgeqfr7FzeFkDc%2FczUyt5PrBXPLKCoos0BSYb41KFK3M6Joj%2B%2B6wYGMqGtRNz3h8z97dPHrqfyvFM2NwW%2BNPojyicAhEtMlPl5gBpwuCE4w07VNlLeRi0TrYgRAdLmD4AlcTJagYLTW%2BhoIEEKtGwvj0phUGS2D8RoIgmDplOreZVhHTcwK%2Bs0kMUgf9kuAyk0wMfkyojRdB59eDMwbiunP%2BzTBve5XkU3828u01I53%2FARQdZ7oQx70sb4ibdSv%2Fwq9nDe7OuCD2OOV%2BQyqBlKSlTN4hZCzwmvOQbEgW31OQuhU467o5UHmKXnTgNawm1ZX7tXZmJ0X4BKDEawaaRPKDt65rvMAh%2FikFKntK%2F0SaURNNqmAEtMghpdJGA3%2B5PWrmuaA9mg8%2BCFLwWhOP4JhVW7sYuPzbuwTwGDYvdElOb84o0MUUfgnMOVDNow6oV9j36vZ2GAwrjxEXzv5GO16kox9Z8w5RGbX2rr4CYOCfs2%2F6tasrwMgDKWDbCpsIrvBVXBlYAfONm738TSk0nxIj6tY5X3uLSycufg40UD%2BXdphJboE5p9tZ18CCe%2BQi8OvNTvldhGNQioE8LgyNdhydtFu%2BdRNJtkwG4RCmTuF8IXJukbNQwD0vmwSL3rBSmRqtrzfykF2S1UMT1owZ74toqJJ1Y4zOvI2oXsCBC3e6QvEA%2BmyqHnk0DytzSX0DemdLoM29buGUpVkLWLaDsh3LKW9WGT5a7UxB15%2BoctMczm2TmlveTDT4MzKkJmtmD0V1ZKFm4SCDJWiUR1JGsSMsyNBdb1R4byKdWJVhQKR5BHV7lGPxTTAMPu%2BHpd8xj2%2B0bA5k1r4mb9w4uag3rLVPE407nI4%2FAA4vhcjvsouAF4srtn0U%2BZRy89LC4uXWjS3PR7CkwnEpZuyFMec198JpB%2Bag4qW2%2F6ll34EN6e1QqTFih7V%2FWMkv1CjjRsKLw4RRa1gT57RnKW9NgqnqDPlFX4JnnyBvd6vTLFGWWS7qtWPbAkmeU5y%2FUiAKt2Q8nndrrWI70P1Th3jGnv%2BtmJP%2BYJH4bkTFX9PSrn1a%2FVSakmiRODfKWUQKK7YsfUidAkdZaaF7T%2BrMzRLJyodLOsyS04xRpR%2B5SYJY415HbMRilYjMqBO9Nkv8PGmtTHXJ2cLT2uXcEm7rIKE1hFoJpjzZmR2ilL0hqc8DcrGXqZgTrYZlWmRrdzzSBwl0u%2F85%2BUX5amUzA%2BGZE282XmcA%2Fgli0Tee3F7f6L9NvmbzofLKxY9v51o9QCnhKV7hynlRZhAcu8udc9793xCoqKy92iQcYbq%2FoX%2BilPmtVIoeIHIFmr7mTikGJRRUbnjMKGA8mSsfZsP4Giba64hAM4WzmKyNeAoWiC1cz26YVQih%2FPgZA4e9ZmZjLebGROlbVmWYOQWgLweSeWGnjPeiLbQY%2BAyxYmjoybWRJrs0zvSf5VrhDBo%2BtXBGWUn4aLUctatew9Z0pm0rWf5QPxTM%2F6pzb0Pe%2BxsIS2WZRtu5g6E%2FIOoHA47bqiGWYO8%2F926lEh0HmB87C7IMZuOd7sixcKXo%2BldY2elO6seSZ733bpq6eEPVNfZO9IGGvkKwo2S01K0Ar5%2B8FUUheuoksKNzg%2Bfwi1TnRCbPj1z%2B%2FlU71heeM%2FKC5GdEDKhQRoe3OU7yjWglmCkX31QlCP9dpRkkc%2FTKZLNtTau4j6TlErntnlOF5VTkIk%2F9kS1iIqcIqy%2FtklDoS%2FKj9OQi%2BfuYA3A%2F509GQoAwhzti7%2Bzx3Q5YhO190ImP5B64v8grXVRbO7kNOA%2FqLqHyIgu01zJnQUSy%2FuntVInrLtUEw5boYhZzLLPwAlITR722eTRlZKyHcWeSVJb6BGrC5CMILbB4I7uAc%2Ffts2JGAMR2%2Bsg92l0vWuqsfBMT6cVyAq3eKYVTPusHhXPH%2BaKEIWyqN7JuWAlMNvLrWeP2ACRayAMNUO%2BNS%2Fk9pQ4P8gAB4eIX2SYsnbVc%2FaSGx3u%2FYO53pBuNoCY1Vmurk8hrLvGoC1rHKbzSB1uraj%2Bkyvrh5t1NPO98%2FWq%2BhVlcd%2FHjLOSejuYnoFy%2ByueHkPI7xDg%2BGyUrRRdUINzqi0Qcv%2BgZdTPtNsFjLUpMRTCmmDL2am4E3KLjqtH%2F0oBiog1YEfWgn8MsWE3uI%2FX2JovGXcgPuflHDJujBqO94rfh4Dl9diLH5r6o49BAuNIMb18RECa93pIlEUtx6zRCzg%2ByroSvh4MJpv33J5MLEB9MoPUAbfTXrxOtumoeOopXUmVJ8mWWvyyW6n1tn6GKUGGfQ%2BfSZwdsuL3lKKW%2ByARNog9WbkQZyat4BOnlbcWZuVTt2aej3XTx5%2FdPHhVm%2B7%2FNC8bMIMYi7w3hddqpDQUOCa0T8H2M0GHbtG1ZjwAvWdSBCGDjTMToeJ%2BrBHdo7157e2vY98M%2FHrMIvhT%2FrrlX3T4QP69c4AtyUEpeigG6WH1udVBMyr97k6lNn%2FLGuj0mxrnFc1aUZrtFBy5HYHUTRnCFwgjc8CZnQ5Qry7WBtPhrTSV%2BelkP4bYoYF5Pd14eH7KePPUxCakupvW3sJZKh1O%2BQrH%2BG5vDnP6mk3ohVEW%2F%2BFgeszqhQjhZ39jWr%2Fgc2q7Eq2%2Bd84UM3OmWRyBS0EOzUPYUkR3D0725ZDuXNrNbMwRDLv2N4bEsQGsffCP5cSiKUkdLhonEucbyZmNsJcMfqaTes6vQJtO9dIdR2ydGqPUZrT0kuXrxvtEI%2FQe3O%2FWsQtk899HoLVBBWY40Dck1%2BBoLlfVCGlEtVpKorfMz9mMVLbyM2YkRASUagBnYXSXAUEyUH%2FLCFLOv3eMBuQO87IE2nuu1atEKRtINTAXah9bz4q9%2FnH3VLn4xVmHtvLinkoH8%2BbnfsrF9i1Yp5e3NzcqTRwp7pRo%2Faf%2Bi1fGo%2FKrG6YMRPgrLhfbU1VuXSoMY2%2B9dKGemQuPLrBWns9pnd8y78czi3f3w59Xr19fLGlk8A4aa9OnNtJ31a6qb%2BEGTTw%2FrbaSPPEw2KYFqYUKQznUCTm33FKxbh8l32HmT70AzmS2mA7C5aA9%2FApljAlCvfAwX9r4JHwDIoaI56O8Y0V4Ka4Jc8HdRLz9T%2BI8jbtjP57PKcjjsF1rXt6J9V4CehmoEiAeym16gIhAzPR8ZpU%2FqKHCDXgOBAF3uBS6iOFHvRJCdkULPFozZGXjmO6Y6Y9h9TVnS%2BS%2FeaeX164e8Aufv9d02IYq9AUbo%2BLyA2k0MACLe9tR9ncOJdiQ9Pcfyr0Ush86WbLgboioYhcW1Sganb4JcLhqXm1oUbMfUdOBezegKVgSyY%2BndUc8x9KG%2F9IiKQwqjma1zwSXuftapmTo21BQfT673TWLZ3f2bEyib6FjT9Oqhnff3aLJG24biA4yGRcj7Ux7klyflLo%2BMQuBe10CfE9njHcxOVMxnFjtuMyYNPHYhhMKxU92HiqSEOmjzCu%2F6%2BoC5CSbW1X8Bm5DAlvGdaUnFb0GeSqnerziI09M%2FUPQ421%2BtmlLMabtF%2Fezwvf6iV60oKebUPf1Ft6XoT%2BwWvwPzL7FJQLa2RyhJTZw4eLIkb07iuE5qWpsmVCpIh7K%2BVgYpdBfe7pPrPvTw80mv6Aza6MjFgl210aZ9Kz7dipM09Ah0pZsbHtTedImAN3RyGfX7ZJthCssJgruXn67mqdqiexGd8KN6v0xmVKP0jYC9tozFhr1DpBSmZMS3ocPuOa%2BCFoOBRhCIBuldeZq9gFLsTm3NMXWipjbC7ACBfaDb6j%2FUY3baX9bOOJLC%2Fpl%2BxQ%2FZhYObhADCNE8tU0nwdEYeZWiI6sKZcdWGwaIusGaw5kfhlAa%2F8wYNkVQjaulgAodsHoT9wrtlcUBsgMWZcszYZ6AtuZ%2F7lHN0ZjPdsu4XYK8JnONnNw78lgkk6J%2FpVks03F33WgiBc5qSLBonf8OFrn9QVYgjXNyUXQ9VQMlgiK71Dadv94eIJXuHLWXNj2UlwKUXBKlywm7u8xF47moKX1SewXjWuhh6wom4y6ZrhTsukU1fSNLbboU99bDyhHvVll2tEAc30NtSUbSn5YGqKn0Kc7bODcwIjUlEP7A7FtZP4x0BFHn9PnzzjZ8bMUmul1lbNcvbur2SCmMede4IwABlY%2BUwjJj1KDZmwaujkJl9qKrzEvdPvUxk8cfwvTA9q33%2FyEDyXHyrEaEdvIA0Vmu7lliGfgioru649ADo6Qu%2FaCQIR5kYEs3x8KwFsfAbtgquzEr%2BKREOcMeSpZ8VT4GIWHRYNV574CVDCLWrqBNw2VG1Dslai%2FzSfpipB%2BTZzV8yLLUlZTecv8W0qyfTdfCFbgIOhvhVhrCEtd1dyCaswxzOGIzkYeaK0KkabqFKxKS3P7nakV6vwzyeGlth9jOtBzZeKXbQBwqLGkh75vfBVP12x2rLX9vgqC0nq1VgKS2wTU4BcbZjPhqBQ8dN3%2BQgrK7MkCNdMfRlR67gvKFartEHZNsb2jzmJRwyrCRkgCFgNsDJIeqPDu47Afz6AZEP0tXzE7lmm3AlAmKi8FPVDF1vbks3CxsyHizFDpicsepqoaP5iRaKSxoKonuQK35nm0zsPzfe3FK6p8eRY6T1zox8%2BdcAqQ8s9pA2j4Z%2FbLc2yZ7Xm62yoD3PShwioZvVhX8hqTD37OecgJPl8F8xVLmw8YYBdJUhV12MdZ6rINkjpYsUd2SDWcSrHML9Ic46KZF7%2BrzxkS7N%2F2o4cJJIcGHPk9PF2aTjKHp6201KXCgMtIpAnFv8L5xrmIgAGA2JO2cfvjShz372dw9Q7wVNj1xvPLi%2BUqDunDEhgSxTGU1YKpsoKIiPUI8JYk10Pts8e9O7rJ2CyRQCVbdns5%2FqSlxMQfNb7uKzlIcJyYW2TOd047kA%2BO3yOJcy36JulyVNVGEbN5UAjsErM8hVnMlYX3WROQ1WQcfYss8j8VXDVykd2rZzZJe4NU8Ww5YIcFx1Sub%2Floh7hSnZ5tFhUQD4kDVUiZdrHnE5PyjF9CKxUNmRWZrOs7zJ7aW5jG3onCpazsvVExAiQ2gwFTrCJvUJR2d3jt5aYMPIPeA9V1L4SSLtphY5MFOMMYJupvnVAf%2FLPEZ9Vfg8U6O6dCFA%2FmKLg%2BL4WD2ok2TPWz2jW%2F5%2Fyja9q0H9oHGtblgb23DzS8I3S8%2BYQlEwc4KLxeV7Ek0%2BrvaCXSDdQTLhD7dxRoCInZP%2FnLRdk4OxGaDEWD5OnagEpCsGwnoUliryYHHAbiqMtMDi9nTbHUlsPSI5wrhgeoG7jvnF5v%2FNztpBaJTaw1gmP0bqXI0SWPuIGzegygF%2B57iiU8I2mD4uB8CazPycPjDwXIhLqbhdquEUtTS0HpkEdUSpisPQKhxbFE8Buz%2F5JRKqt8zpSH0Sr3mCbFnwuXCwsSKSuNYfuNB8Im8lFUM%2BXa5GpnTT2GkPk5gzgfIFjUAaLdoeKDiEU9SGeuBCz1jmVp4h90cYNV8BGBmoBV7%2F4U3JWFlH%2Fc0mFAzQeLi8IwGygliA05KeVP9lcyrViB3CyxC%2BQtro5gif9%2BIQJ722qJ2gYyf7Zhf5n1RrjP3ypH8r30zZLyFSuFBN4TBVXNxv2tGNOj8M0Ja%2FSoedOxx%2BTVfa2%2FQA23fB0EXdcfTqY4QhhkpOfIhjR6tIhLQX18b%2B1ZpJ8OpHjBuW91xp90mG30qnV4y%2BIHmt4p5%2BnESp13JG3Xu0jKe%2Bm%2FWwyU1XkykAYeGByguBudpyO%2BJTB3cP0V74Oj4myoEId70QQmZ8Sd%2Ff1I1WHI5hTv%2F6bKiariW7EhZbL6fU7zVHWH1YWUfPAt1%2FLuG6alQSkTdK0K7Cnqf4WqC%2FeHaFGj%2BmEXHyizIcIVPqQrecBv%2Ba7hX3Zwg3XExZHTQGVfPIXk4pcPv1yuulHZB8LlJyE5ir046aPiyINvzaaVtx7uIaiHWxzEO3UNEm5Hml71QrwrWFntw2SIyN7hwmG2Qp2F%2BmTczFETyr9MtwdtCgfbIV4jqCkeHkyMBTdvwN2WDAy6fV6atldBVI9aLKof3uVrfINC2N%2BY3fgKADVG%2Fxtj%2BQIzyqu060rh6TiMnnXzSrMk7ArCZoFHXEET8dokjftbvQqMG%2BdF%2BPv41qp24jFrWAf%2BnRYzwZupZwk72HKrnb8Ns6R%2Fl8YISSn40v8%2F2V16mhMDSAX4UQUaQYwFfZYKXtQ1eX61rYw%2BnShWtzsV08IpW37h6PiM6kidOgGhFb8EldYCLRkuVRjLc5W4oWYp5fmtVaGzzce%2FQ2zgsgRsVqYQMHY8ZfWhloG%2BIs2%2BM1pt1KF5XACpIg7CN7R3gIQrOTpTa2EvX3HhWclyjRMUGI6jNOMLtJZ65eTeVi93hWn5i2NEOygqraBP6ChKleLDh4slgg6SPM8zGd4RF16YG%2FZSTvDSdEH5q5l4oOpFIKtP1D8cylEcumpS%2FN%2BozOT0hjgE0s6qMSJ3y1Rsi19ndgfKbdnqfNEGYZatz9GqPN9%2Fofk1zER09xsypKXAoTl4A%2FAXH%2FuQO95QIGCIUNj%2BQiC05ImHeGHVpY9baSdvqks3x4YhQsw%2FJH4AE5rnCLSShUGYNIa87r%2Bxnitz%2BTBFMcYjVzPWCPpn2ylWFOOkhvhzDIl0XzY07rqAD9QiEepAN%2BP2%2BTYNlD3pJiste3IHt%2Few68n9ZZjBwvDp0mC9C7KmpqYJzP%2BqNkumDthryRPGa23VWEfPgI0EcQW0qk15gPb4gaXdtUMW2vSFwK5dCk%2BcBmhVUWJt1T7YGRorbi0T4TxEJ7aQvDtV0O%2BVoQyZMzRO4sHJBPjY%2FKYdJtPrzVaJe1h%2B6%2FQDc%2FjU3UxgbaajLmjam5d9tnxBKB6AOeK9LVhPS1V8COQgeuPo%2FO3iqZOaBVdw0TXgaFzFOzA2tr7j5MFDYQKpfRM8FPF3BjwDUEyLF7fCT602r0Hfz%2FDFmDtnfWlIuljha0lyS10Wz6k0omM2fy0LIrka9pbVW2DWCkT3kF5HKSZ5QP0qEayFCCqj5PgNg7iynrYlsYESXyCk8sfwjcEKoJ3elDzFOHj73D6SBaKkkeAsCd1nf1CQmzlvoTfp5BM7y4NCqqhT4Z3OjjU%2FzaRS0mpxHYKe6hf0Sg6Mr70TYDa%2BHtOsnsm3HZA7%2BL6jMyzNxpT6P2Sz5S9bSAnP0bb2APa%2FwKTxmSHCwc6KuKBdoztFXCqCxh2WXoHb%2BlJpCRcho4RbdtGN0JmzEEhaB6YHUZTcEaXnl287CAZ%2FAbc7D1684JtyoqYGV9SC9BoWa09f9eysci9Mrps25EBi7DhY425KJhgSNImltkfwzujnOK5v5iKJ4PNvfyExF4Ys1mjQbqpIfXA3KNK2jRDuLrfvI39GXtLnIfVDwsslfcmVoEGiq5ef%2FvfxzZpvYbvPOTlRIZY3dCgAjSQz2jq4Qqa%2FU8KKmFZr8zM1F%2F3jy%2BO4Bhlw33FdoLPnJhB4j5iSavpyk7p0k6EEkRWqgLjTBc76UZnwiPwIg7P2HnOrCoBeqZewpVUDsiHd6vVnileQBNKuVcpwuShgwaNttZu0qA4Uyim4K3JgzMlApxTFGzHy%2FTRm0korcOldh7%2FsT%2FLPeoJ4nt444OgF31mF%2B6nc%2FgNyyyEq72lUTzT6KMjrnhjGAtlfAxwr31r0l9XjpId24n6aeJWisC3fjo4APbY8SXrzhV0NnxBUK6VX3sQ%2BE1s1t9IGJchM64%2BSEo9RgZvVtSt0%2FGPsoFCKAKVTznbj8vrNWYFB74hPkrSuZiPtTZub1oLRl8qpTtwbdmvFmTSoOb3pahfV1P%2BZPBjASQFqOkWwa%2FPlxU0qbIfLx%2BQ88KaX7HRTAVOO0WWJ3U9B7AxNCsUei6SDWy79r9psKwKV5yLrGgk8wMU7ycYnnxysso5VHSh1aZNR7M8mmp13OqD1pesXMU%2Bfm%2FBXKP8xRTGPbVymx3v7D%2BrMi7kyX1v%2BSQSMr8Te3sIxHlKrgKjcSnZzEGtJBf9BsoPMP0PTHnzPbYD2rt95wRRspMNrw%2BijCfOYUZC2Zx%2FmdULQBvaDwv8O3b0QxSiRuspnJJTQ%2FIGzL2pXcUU72ZJkaK4c%2BX%2BbGMlaKnVXHN7Iqa7kglzPlMwSvmxV58ZGFRdlL3wSfJo7WzGkHbiZb9bBZAvZHqhsIaiZTyFHy%2F3f1SL%2F%2B%2FR47skbF%2Bj%2FxRpslh%2FJ%2Fm5FdPR%2FjsZVaBPQdj1X0FZETJorMPEvzGOAHw%2BJ3heHA9KmLsABHdvILHxyHQ4lurir348FcA%2FSSmKKc1FlCcYfxS7XbZX%2BnjANVQ3w2i3hXWjOHmBTEvBBRkGuFSbvkcMt4yKgUHvmh%2B2vinyNIGmNAzDfYyFZSnaeHoiLra%2BcbTWMjbldrlWSTl6FSiMp4vkaG5GfHzb9K5Ug%2FBwIK5KjVC6UFhwOtlwhvYYEntuK4uT9OGDq9BUU7ZgJkyU16tSMtZNIPkSO7UOhibGpUdfZCGW%2ByBdHr6Jo%2BVzT2IgLqc%2FYFIySo4t7Sr%2Fm%2F8ZxTvPqHfpZGILGzLptIt8h4PuqugJXOlPWunl2v6pS5EKQsvBQQ3Hwkedb9rT1PoP7avhrHxwieacxYJT6hu5UrRwA2zfN8vBUM8DF10YKuRJLAUHPLNUWjcWSw5i7VhPwzsR9j%2B%2FMZnMCxxG5pKJgSBj6Kz39GPN37sNoj4doqbNXreLPoKaPn8D1hwCMefBxHLUGEDnI30ySxk%2F3t9x4MqqHeHga6KUZSxc5orgqcoOYLIiAbuE04XzCrDxsLBQNDyNoF9L3Nl8pf0mu%2BJF%2BtXLONETcr5diSjUjrL%2FsDIi%2BeZA55T4sGR0yPHdc9Csq48c0Xh0wq8dY9j9LDwBV2xUQ%2BI21KjRDhntQsBVItUm3LoSNYN2X46CK4ZeT4zcGnpxvyFnZFH7ZGRzJjGhIKuQo7FvphC50pH2RF4SOyE8gyRBylV9Dwg0cRenqXh2qZraSWmyVXx%2FRYOK%2Bwi6Tcct%2Fb3%2Flufuxi8zYCyuhv8goym1iBBkE3geu726l8d8PrA9pvwz%2BJwqluaAhdZwZGNmaisB%2Fbmf8c8F5pdMdWvj%2B3ltmGfh2rhMO8HGcd%2BtKDUgpBYpHgIZbZ2S1TXn7tUsqifRrp13b7D6iwb%2BFJAKivjkgeePMJxce3pRmOpO7rsR5fGfjg5VG%2Fqq0KFvkayIm1T2pteOugKN6SM4zegrwCVFMBZjVnuyOXVaCUZp4s2jNJb1RWL3cJVx5Ai%2BQidDnKB0YZO%2B0plUQ%2FVxBOW%2BKp26ZTvCaosQvcawxXXlg3ZdEU0LHCzFta4iw3075pHD5X21UG7MYPJdcrt7tnjbHXUbYELmxPCyFgzjim3UrQ8KKYJ%2FX1vEqr2sxyCl3XjLtk6mDA7Z38ZxFTDUxdKYOxfq1fTgrNqUqD7G%2Bzg4QXQ%2F329F03SrR%2F1I6GUN0fDDcCc%2BapT9OxmhlN94Jph1PBGlT9yn6FKYPzqDLs27ZgKStqQyv7M4lY0SoBMxk4rGwZW9dp2WnXXbMO32Y1Ds5xJOwYTfFdqsvHrMNhP9zU%2F%2FI6IYI4NYn4LTDOrvzpuJymfJOOo5%2F%2FEASQRTL%2FVZF6N3QHZ64ut%2BR2N6ohcTUpA9y3bPmo0QJ7wtQQ8tXjdEJLMr6Fe6wyJI2HxzzXEc5Y81jh8gwx22CyPjnh0ZBozkMYb%2B2KwyoIvAI%2BiPJ0JPOaRjEkrN1etY6BwI6EqT0ZtGCIFzkSivdMjk%2FAdPfdZ4TlWIUDb8X7fnXDOCWpsjZV26vPQFooAODbZw2DRMtRIL0%2FjBguN3FF%2BCvlp0gfFI%2Fh9VTxgzA9ee%2FjPmHnTz0LWAeRR2Ja4R2mk6L2r63XJzGE2z93E9qfo5ppUasqQ8qDikxc9POchLRDKuFoWVN8IgUoWPZFyJ8I8rIvzAiHJnKzaBLwNZbu26m7Qkcy35la3ipDC9k4xMmxslQ4YjrB61ydjCWep8X9AO%2B7ZgBvujoUZlZ%2FpLS3vgzLm19tWNUCUrJS9TOQY%2FqYY5itkdwUKUOTaW77mQbep6hWOv%2BWVxZ731CTktou1J2iaSKOb8%2FEWUQYz16ulHWIyUeD4JJIyh8G9ih6HmjgbbpaOejNtdWdu9uKJjtjX8NWZj%2FO%2Fr6tcmshdBsgGuBqe0bjiATmPt5iYTEXwQKkbqHPoAZKSGJm%2BdIvLW%2BVKAyfyFhfnPMvN%2BX%2FACNOqdl1YIpsd8IGCdcIEIGSSzuruxnw2TJildM1Is2dYuIlzGYYlBU%2FkeyyJxtlO3vNx64uRMaXnUYNRqnxkV8AYaEnZjdphdg5leqkV70lIb41921KOC6hkhqDNk6qMkj65n0GB4e5Y7ZRfdbKBKrcburaoSRwV9aTbEqLR8SvF764kJLntYXo2MGtmQOvUjNGqXwxowp3I18fFg6rssIzSnMUAAxmbHW3gBOc5oz%2BAgvIjNdx3myvcFaGDKjpHUiTo%2FecW%2B1Cm02sXyKTCWAqCr7JXgEgFsYvqWg1ngAV8lCZkARsKrjb7KXwQsHl%2B97kMtW4Zo65iC58M%2FKJslBNUd9AjTwdrQXqe7JrNZmDIfMxjK8qM7ObSyBYXP4mBDV%2BmLdbfCR42qeUxrfH8z4NZ5G0TM1MwKMJ7X5kH7Z9KOsXKTT2gB9%2BsvCzKTaR53XeB3fYmkEDRYQs4WEJ3AEEJCpbz2%2FemVcazPxV2Q0EGSxdQ2f6VhMt%2BTJiqOGbjvA8VyMlOtBbxCkSUieedLTqpnfcXcvIrC5LTIHDSnFoM8Q2ykUZTFMU8CNGEeOXkESqAHEtWCtVRUCCgJ0LCwbmY5HTxQFy1Z3oSIHkSYm9a0R0TQbAuapAlJy3rTK0Zn1NDDAAFJqi5qsuaTLmUh6YJCSlCpI1EohCYDIfQYQm72v9loKIIBZumEY4FU0rqMf4pJBR4jm8L%2BIFRjrgpS68xKXvzQo8ZImvqXqAFFWk7bZkTRFwrsP7kFyar1QGM1JiX0TzhkxFyUfA4x7Gg9tAAyTze3P1cUb9Cc2PuDzvTptJSXWxpPrWxcy8%2FioQmeAbYuBQrpTwNInQby34HXPsdB2hjjjSJuktHBSc%2Bk0GC50CfN0LWS%2FbMRb6eq9eLR8gk3py3hoZEjoBNE%2BUDzPzR8lxKA3lMxxzo%2FTCcyRjL1xm5d8WIEnFKVsTnSTvRDgsVX5sYMOGXWqjpxMwgA3Q2sHx3srN%2BDZed5iBX%2FeorRiBSmcEDU8q9WpO0%2FuuJKawnVswGaoj0RhYurXG%2FXXXqfi2qZSI7P9ujeA8pZ6DyNeUfCTtBPuIRtj0wwTfRMgm%2Fj7sUfiHt%2FdVkA3c3Y8QpYra6Cja9GqXq7V4NjCqSw5zJ3ElLKb%2BCwtle6MdvOmnqfTxmDBCO5qb3mr%2BLwd9A8xhLABULFHDGRcFSZVzfYk%2F3LT3IQskZwduBjBxByLEdPz04wrcvwDHChPBSPRtgOiqAFfZjq4bkqCzs%2BHrv0%2B1ZvFtsE69qbgVNy0tVb0jJ67Jb8WoMpTBBQTOXlrWOMEDv6k3ec%2F4wDsBOmQqn816v5jgtl3RNwFovsPfXbEUkZyTblQZRk4s9E7QtTuIwbOi3zNjeGf45%2BswPHkyjoJQDCvIOMebv%2FNpfLP0wmDQsM1qKE6AOSY7T14rcy2nY2QRcRJZF9KQLv0nC410AvJsBhYzJ1g9ZAg7JoiWsJKzF5nvHnAQRsA3g2wHRPmkQCgYZXCSApzWCh2dLtO7iPPcf3E86iaBMyS25Kf%2FeSdjVXhUAm4bmIk1fGsv4kCGGX6v%2BczRrFfSXIutfQTam1Dbzg3RK5TwpjRKbgL5t%2Bwe%2F0CLiwoIl8IhzOUUOe7sQOOYLBo%2F%2BQUCXG6HYUyJbyuqGeycVv2HAyHG2VzqjkPFZ1o3hdWrbzDLH9k1%2FJh3C0frChssA29EPNh%2FC4mkNBi8H0sGlOOSIS5AeVQTolkEnHyBIDIKfUp0NFZg71tMXFBLBVd4a%2BcMS%2FOZtjgwK%2FmtpoSDo04yUlUREVEptBgU99NYdVs9hx%2FCAyy1a%2FxLmvHYItZ2WBOvp37nC0TxqW%2FPD2dddHsLepeqo5Ht2wb1cohKbn01HVgjVndRpehQ9w8iOYtkpj1kieXZhgedPla7hRkBPuZypLRKTNTK%2F7dpFx0EsIvHcnKn7mie%2F6zTvgz06b4zDb49SQGoDhl6FYCdX0eeRJ3gija%2BR5zguwpCZjg%2BQxOFD%2FJu3al00dzwajXBlU1Gc0gLSyvWS1RTPn9e9cHr7AtbJbgF9Q5EFw9vaJTfTt2vMDUitNijBivjaShRtcz9YJUCGN%2BGwYeDr%2F3QeYf3iGYYg791RaGDBQy7fzqVFBd5Ax9H0Rq76JgCaZd%2BZSAAUWTxEZIuQibnK2HnYTE3MsqGomFlQelvgZEQqhX6Ec5XQI97YW9AtBa2tww%2B%2FC%2FKuWGFctkXW9o%2FifKszMga0Yn3SJ15E4TLz2ZkMtW0dXMYhcaTaaPjHWBvxFezcNgCK1DqML2UHgoB%2Bx4aXwTL64Ll30vXj03oO3RSDHbQJ2M7o5uExIQXkunEI8O9T60xFw65yqvL%2BxaytXoG6UvWMjD638LRafZ1LiJ5Byk7k5hfU6RqFLCcIwv2wWC0OXtoqqRYLWY3ttWMMEhB82Ro6lWyX45qkRfG3ClA1z95qy1NLQgsE5%2FjYY7q3l7yQDyiTWerrcvGkHi8RqA%2F2G%2BU8TmJsvKV9RImYq8gWxSSDkH%2BpQ%2BHf8V2PwSp7o4qd5LXcmfPn%2FzOD5xlvgzW1TmZ%2BDjS4HVm4Bvd7tDDNW3G5ekBU1TIajh014a96fdHG%2BcbokeA7vSaUt7mUIK%2BOoDGxCTCASCyA1t6WxFpoO1a4MjZ7GLUl%2BTF5zkWaKZJev5mn%2BxRa7%2FDgZE0Lf4ICIGMcX2PDizVTmMCQoOyLcgs8pkk0Bs3WKWf32t%2Bb29t0pNxOFpGQAyO%2BIQA3gJuXHSOUuJ2pCY5wIfR1ANBoWnR3q216rM6BFl3TwI7H%2BxPQQMZLg0cfGlHLKOFDH0ZN4ZSG9Rc8YCnv%2BRn8hI71idMRxbnfH8teCfMVAliHEmnjGGqYnC%2ButZGOTmfAshjL%2Fhtz7ZEYMqydle17YVUNXr2CIsUitn1AI0YT9smJ36EHey%2BhjiDZiNKLDT6OvOaGS34CT%2BU02IIwmvaSQCId0ypQR%2F7WUlPwEgbKLRywubJjmGWVjR5R1KOBLl4zSWaT174ZLCNmWtaqYvGN9aX1nddXW7VbL5CKw%2Fv0QBjkvLNDFjL0F54j%2BGW86pQK2ckj4M5Af6ME2Zx9fzbAu%2BTnHAAQdOUBUFtNsJntNbjqrEJ3X5A%2FnHi0Z%2Fm8lgpRQIEM0H1Z8I097%2FMUv9nZVDwqfrPMxl4fNA4Yd6ApXMZuBYxTc%2FSYJwaARMu1TfyEP1IO6dqCW1R%2BzmiVQZzm5ROd2MSXJWuuIhTYkCmUg5AN4ww69wPlPUekOAHDgwnmFdwT4Fk1Ll9CJyVSYi%2FI83R31SwiVaBWWFVvUBtukvHAQx8EnRrqdAUP1Kf8aXs%2BvI7l72yHCQ7aoDpQXBhW6C6KwqrIecOLIHLAETo4a9MQyxBqVvAhRpQ%2BkDlwsG1Gi%2Fjac2Cs%2BcPiXD60yH1SMX7wSC2OqnXkhKYcfdS2BhqjeMKkymRJxslJKx%2FfOtOdhbBwl1MJ2RxZuc3tSUFMqIwf2CepaB3xUBmZ1TEScY0OhqGYdm6OmTVuP39DuG8%2FmnEqlfCgmp39guKH7WlSq%2B61w1UkW1Ad3hDurO%2FXcf8YpAOUyIg2LyrsZC%2FCx4Ias4bBwccjzoW0Lw6ChT88q77Dzixubl2OhaBRlVnyJmYWrb8SeKWmgWjLNNkHghKNCXEiYpHcwBY81kv5t0FU7ZryhChBKpy3kjr48K9oi7hQOXdAGDHzcTpndHMOIiI27zmVvBl6bLSSnEoKengi749Q%2F%2Fpxx8Cz%2FQKLjnuW3V186YI0IWQ9wsZ2t87KMu2CU56Jb7JiDh%2FQcuAwNatiqeuv7wUylOa0fReoSr8GCtLQitE%2FPZjCWq6Bniduko3urN3b2S109RfuovsfcCVEEwvnFAqR02rLD3jEn2%2BUEIULvs%2FlQoo4pvMshlZMRJ%2BmoiM9wNhFIkg3AK42KvZtEYxjhmFzq%2BSDeRYTDvuoGszA2CfFbXXiwWacOvELIfrEtp%2FFNS5Ssr5Sb4Z%2BJsyEXikWwnmcUipjTzP6fNl5Hf2SKHP4u3FwwtN0eK6kaXrZmgjUKyYCRetB5Wd%2Fs2s5IPF4%2BfQ7Fo0mbZoRwAxuuSZeQer9R62mPw7kGjLtQ4KwNBip4Oc77itjFrVuqw8QaG89FLx65Fmgysd54qVI94jjCCAqQi69Lu%2FKayE%2BwULreWLG3145RTpRfdb5PEngSZnaHOtPlCHtXzI22A7kDk9h60euZ4pzvBqPbpCdimu44joRduqlCOAgyGl27HktRnv9Ty9lOGMhdRxR6TqfiTBAFRHAwz9v5Dx1YVmy2mGAKgqGp9guq%2FV7nQOEoVaeLXPsw3Y7Zumm9Z1XAIcbOaicykZ2SVZhpKGiH5jpzUNEwVb3Gg9aN6rkGqB70Vzv8gSe%2FgO9bZcVVGPJbErTmpn4%2FtVdJafVlykaldx2ONgSIuev5uAB47CRwWb7yb%2FgeMoBPeazHCv8d%2BEsaETn7FZ0u304LrzTX6REYX9SEchW1HC9VpMCAqV87k105vTdWvug%2F%2FyNwNHuusMobVuHOhw2EMWt7H%2Bh8IgOfzfEyeJjJJoUMYn873DEXgHBw3Bk9U8YRhMdvMPp5lMAg4Mx82Xg5Ra%2BaDKPv3xOuM0eEv%2BTWgzEqqs%2Bc0CJ9C7fmoZm5yLo7XPb7nYQ2djyl%2BNjYgNN7b6wdhozuHGfhzQfpW5IqIDwMcGx%2F1tqEactUUeTGI9uiPjcXtLkoxRAN1uDSl6AoEJLniKW0gtQ3xEep93UVgzREtVHlEZgTjxzf1XdNIy8SUTsiXXzM1tlDzGX06gFnahsGfGv1axcTe64caOAm5xpBaCJ5Bk4admuBQeZteAjUYx0gA71MrwB6Die1TbJd3L8h3KzLm%2FiuOzbmga1x3fmNP8osk2YfSLK5w6d1hARJCeJivE7yIH19ugiGF%2BFPlehLM6wAtBAlnd2G2n%2BEbGhko5UhG7855H62eNmEsJDQK5mTQ91skUm8GNsRILGHDfT6s%2B2KgftYIcprUfjJQFea7J%2FtHzt5bpBI57CvwSoRFrK5SkHUm94JB2v%2BJePnk0ffIJfYHfrZIsvFRJg1nXrM9IJB49rFHLZGLVJVKdGfGaRYOzZuyODvO4YJjZo%2FG8rYPPiq5r5eYPRjr%2BZn5icPkUovQHcOilmAVOf2SNsbWhRIGar%2BQgQfXJjQp%2Fi7HmdberJ0BSu%2BCeHfG7MjE1FjOFPoRwL3aMzcX3rS3kCG8cgtDi%2B3jVdjnn0%2BWcvQMTLXKS1hIb%2BJvr%2BzW12oRZAlwM9FNF%2BdW903HICBO6b2jcCOYC1q6jxD4h2LMVUb55N5uY49XMDuqyxvSzdrdLo1zX4KbdcjOOecRoBH2az8bkFTneYO7RzY45A0Ije%2FDm%2BR5k52Y6iD4HZ1ktA%2BgH3vNMmJ3yC%2Fz5nSHbe7m0IYFXhOdzcVhceGO4i3%2BAPXnBVYd1ZjXtniwJyhCHtoXGavHF1xz5a%2Bn%2BbpYe51KAwREp2iCRicrS1u446t2MFtAxEmduWKxRJHWYZkcChMtQpc1KxvwwXDRcfavrNA28kKfYGDZFSr1bmcBFcJ%2BJkbynwwOps98ZduBUZjtQJXmYYGxsjs2FQnQQd9Sshnv1UC1VsHPFCTU5RV5rTae2qwvOK3l1%2BlibBtv6Q97K%2B51OLyihAlM7qch5fwMV0JsSn7TtfnLknPKWcSeXLqwlF25V9pd%2F6XCrs0ZA8K1esr73ljePhlpK9hfOlqR1bjTiSsZBM%2FvpoSPkUtRjcMirVDTZtm9dvT%2FIRra5nvg%2BucR%2B3glacH%2Bs2HgFVS1YKoPGxpT9FfA8QBGmun5ajWxmI2wHqrTHPIxx6sJf7uhZQYGZztyULH2aw8teLpEhydry6Ak0A%2BPEPrsMQTmAy9JxvTE9EQwYIqXClBsLp4ns0%2B4C43DAqiHTjq56oa0ID2qSJOUvYP7xat8Dz73qDo%2Bs4g1vNxIrTF0ctUlc4ZmQTd0V%2Bui2JQSqqkx8Xgo%2FK5i0%2Ft%2BIPSBQWxxKigMog34%2F9ut1YvhW9U%2BCW3qmTyKCSf4KCW6HTgugBe0QZfsxeaJeT%2BZeNnnkuIvov6cWSg2jUPq2zSIXh9%2FTyeF7XWLurwxeitVwc4CiYHuoexgA5QayHK0ROarCOyqGqvUVYD6mkUmkWiH%2BUPDpAeGH6wlLhjHYsWd01cxIBUQiov1Lz6JcbLxIFQA3yB2QTdeiy3p5yF3StBVXLAWcyG5nb8sHMcfFV2GZetk9Nht2LBDkzxkUgSTLuxq66IVYB0sK2RurP3ri0ryGyozmBzQrfI1BZOnDh2Xj6k3nnCPVX3uLJi%2BMVxGJX7Rc9cKAJhWxxuijWl%2BCnRsz4P3rWM2ubPEVFPzpwsr10pqFNaJnHf9i9RjwLAA43IqAm9QBIUMfie8WtsFqo79fIAk2Ye9BTjUNC0JV%2FudpA6PIuDQ6bYo%2Bg6carvbxSOA1xNCo%2FWHD2sGOlYp%2FDML8NKMOGc2wcQj4fblDVXHgOas4R9%2BrgdPD5bSNGNubHi2g5GQ%2BLcLnB22632FNxEjcJ5hiUdxrMB%2FksLAtzg64sKV0c%2BKYGv0PGNhc7W%2FKZLEbQhuTmdmunptLCZj4XXxUVec1fy0i0dHD7FuMTHRH%2BdvYH6Db1RhUWLVA7kHGj7ZiOyynYO1dIUUv9UFz6Qn2od9Ym%2F3kd9sUsSfaeVs4wKxWwVqfWRBVrR1fmsCDEEhHifV0btyldsNvtGJSjXMSGOUFpLzu%2BioQIQtxCMeBOPJkv84vC3KCeVk90RjrhT%2FAaRP7rZrQYRop1ZfB0cvBJtIYxoJecBA0nKlhspMoWmdwGpHdR1QTq1DcrlHIW4LY5Pwe2IEhIMG6pOIMYpMIYAHyyhbz62lPeaEgVXSalC35svPLEIWMsoqZP32xt6n7Nguc3JBjukXpuO4eqDCI6hcrMGJLiZOPQYv5tBAu5svu8opUPzWWAlaLujJBFa3eGBy1rgqD4ehtwCPCT%2FBn9al0Z6%2BbY2OGeSw7Liju7dL%2Fi3WUDzoFWmrPrJjuOPPZKuoTb7o98J%2BQljm8DRlobQtsCHfijgqGSbxCAJbxMOwhLet8kbD19W0SNVH5z5%2BIunITU%2BXbkoFPaGiPrm4nqVjSjbKECB8O1EzbQWmo4yySLq8Ke3ww8aq0oXjNzUJTXDWkP7akpy877OthZH8sKLOcwPqExUVzin7lxhGl2cMZCW92h8N23lMPlhmNcbIa%2Bw9nRRAU2ApjRI2n2k97Ei2jX2uSvkbrFUkwwqhlN7UU0JnNZRY4dStPvpWJrWfe8KMLiAKBuz9Iu1Fw8cWQ7FoXyOJv6dN4JDNUHMpfhGzIQVwB7LuuziGlgmYtqR5Y1vBEYAzjypUiyRu5WRiBkmgIb07CpPbBfCuQhJwDzxPdFsew5RFUL%2BeEZYUMDTXcj5i8klgzL7qQ1qGWETqmiM0Py%2B1oZu7vqfBkoXI%2FFd6PJA9D5V6sXNHEJPtp%2BwkwBC7LOHNimgX8ny4hOqu%2F60IGXqKPKVIpWQHdg2XocF7sW41mhDO4AOdztclvodBWKVCY5AFad3kWPBuVKZiqDr0bFVFh6B%2F5oE%2FgU3nAKGdNz%2BRmVE%2BLAvNR%2BiyhCas73wc1W%2BlcVJebiGgL9ZViPcTmkeOlfGaGZ3btbvud2OguIljMpjPT6qvjPuNbpaMR4g7ZxPcf1VvmNBDpBqXlBEbO8js6V2XXlugvtDVpOnzufhailtvfOBfOX3JcoaDTuEGlgV6vqnkn7YF4sUTUiraVbaD864c6rM6XRT3q6J5inWWX%2B%2F5yypuRjkyfXXNOBChG%2F9H4tZXJvtv674MxYLvPyxeA5qZPMcc3HOHylMPeRnnRk6NTKMmr%2Bpxe9Ptkm5GmIaGcSRlIDG%2FPzOMVTzb%2BnHb%2B1CWEVAA7iLZVUv9zaDKoNghsVP%2B2pPae7yHnGbR4vkWrbkbb%2B%2F8156l27eqP2TNKbHBcLYiTawuCUmvgxNw3WYtIZg64s8q5ttD9u6TcGfJTRyNMcfdkJfookOXle2D4pUFvrt%2Fe%2BiVlKsHvRMlgDimKl005rx8ALku7LwBlJrgt0ELgHP94r7LB%2BKb%2B2N2JewqfuE25Q0tnj4TwAZxfVyovHFWV7SnXtW07TUwQWseA0flL4qb60BMXzzl6zy8MqRT%2FP6AyFYxtJwb6Cgzz4c20k0aS36ytRcMoZu3ICErHT8ij%2FPN8QF2Fx0JZPmDQDx85%2Bjf5XPXWdTnZ7As3c9d0jiRicwLhb8XFPkL2NrG21TK82pUuY36p9SZu%2BFAFkl6XeY%2BU7vX%2BHqWKW3ZPygthCYIh8T0uWhhoZVWfqyBUFB0WFXd%2BmgHxw%2FeQartxH59vYcYr4W6mcXCbAxj4LqWNOHWk3%2FagP4dpBbgkRirybzxXldujJQ%2Bu%2FlViuTH1nSH4jhbMO1iwze2jO69i613q7Uevd8MSMNa2Djha9JTerykmXnTQDKcE1QdZfXbBij%2FSMQF%2F8IubLWswXs0YEuCvRn8qIJwCkTClMIP1RRTuSf1vPzJxibhocpj0W8RmCyBeEdAmTNKkU0%2BKa8Mo1zI6pO1AynS54uOWjQifueeADe1Q%2FAzJA034iOXDuuTfh0kWVd4Tq9ZZKOtghXIaDn2TYk96uhVJ0%2BHcJ%2BW34fxUutOFsj561b6YsVdeQgkzYlwXY8i%2BvNDN0egXDTIUCBNOTCKugZ4yJS8ZwasNJBDBo7NysmnWbnE8mYLAmF69fnuC32Y1RppciUn7mdO92AMXol%2FUW4UB7S%2BcEp8D0uPwB%2B6lbUP1Z4YzTXq5F3Bo5TVupTnRdpIzBeZSrlY4sSdLxGpK1kWkGwlDSrplxOHenDhVXkqRW66uV5urpRwT%2F6c%2Fkcx%2F%2B4GeKK9usW6MLdcMTy%2FEAM5%2F8LiT4Mbpgi0ioSNO6Evh2V6Bw58%2F5R08Ma4o1XCCzai6NVMv0Q%2FB6AjMxmQD1fcutWVof4I4FBPk8MstgI0e%2BkfMkNv3WEyCV%2BCme9%2FHCo3f2crpurC7f0RhNszaZVs2kodUWWzJPa9Qmk6NA81SHf6c5IY3j%2BgbaNuv9IIcQivhajyH1FNWnRTO6e%2Fe3LFgenhucJdhYqPrRACtTff%2BdtlWAfxyFxteU8tcn9uXQzaIgkRBpHmFuxF78NHYM1rLsGcIqVnlkrHQAmzxrWmLDpOE7Tke1v1YWh2mfr771IGWAPirPyQfY3YQeedia0OTQ5LYQj7LnQz6TzH0OJllYA4isj9N6yE0IOri8Hh1xKWTE2EUbnL7%2B5Qsqgh0yaIfniXnbIw9J6QKffCgN94jf84HTfx2oNxx4dMmf1PzpPEZc6mOmj%2F2eHAqk8cn6pUmH3oiQVmR5wfSwUxW3bwNsn68fHgLd4vbVVsjKRlmjB%2F8ceYt5NtXiJlfZe4LyFawkKXLjfvzxN9nluz5pB0I2PwNoTxQ%2BOsjiXm8%2FwKj%2FAN5i4lYhQmmvRaiNnm11QttEiYlrOpOsW2z4pWg%2BGK7BXyaTWoLZxUlhrEjP6CKzIcOz5HL8QO6D%2F6vX2arZbMDuIqw1%2BxynauC75wIWG7Z90S5IjRNE3PJ%2BJ%2FKVkI1vVKC0NFN8w65mNtgI672zssqbiVFN%2Bsc%2BRwUgB6uwwmHiwH%2BHElXUos2Re%2BoWBUQHBZcPPD%2FqyOhzw1DfyTVS56pl8c7HUrdLYZGoQ3PlF2RyZBmHJHi%2FaIQI4%2F5LuPhfiZ0ymJrp5IodvPV9qe%2FtpBsQ65rVFXcgbcg2tAaurW%2F3rEHs2duI2diJ55uPQWpeOYjJMv%2FQutNws9uHBSR5tK766AxTzO2DxgMmsrE6EXtgGz%2F7byeHTuStKjBb6%2FjcR1l5uEBSR%2BqxxRTGvtJXzW2cubFzlcaZWNBXDfLnkuNJFZOvf%2FNfRLhKC0yw5Lv7EOLTe7kngvM1HF3gUyMAwfZYLZJN5DUfHvmDUJW99gBUB61hvS9KCPWz931%2BPdP0Q0G%2BGnLuG8h%2BHYdcgq5aEwbNPVl4W9%2FpjatXThQm5Bvk4Egnml9k%2BKi4lV9G4D6CXKIBSQ%2BStbnItTzf6fzHMh2IzqDR22OCJcPuOCDxEeqlT4gFxKzl%2Bf4B78sPgNIc9AarBGzEk%2FGkYWFTXU7gk4zRsR11Rr0Xv7%2BaDVkLgr7GaIhIws2Yn4jvd9iDPZwI5mRHaF%2FA6czcIkTJHgREZ8S8UWJDdB%2BRY8vU5IIWZbhYPGafgpcDxFmYyRJ5i6TQv18wdXetePHtbMkKBYbvgadB80weALzrnLlF5RHfTd1KYAqwA5PG%2BqtUa2cSN%2FFm0iFclCCjnzKkmlOXeDyfokLC6K6qWlNzE3d%2BdT7K7w%2FLbUBq0xhW5B%2Bjb4sIegnNunGLoOs%2F5bItKG%2Fl2NpA5TPchs4LClQtVOEfFHoa7gEWixBvpZ5xS93go85qjr%2BaOebLZPRX7tEeqAN6EtsGdS35BYpDQzFITi90NtkPbbRwtee6e41G24%2BoguDkylSo579vsJGFjiVNRC%2BocYCZXPFbz6vkDRiPDJonoq6hkBlCKT%2FuKWXmDhrjsR1HULZnLfcoYbT9E7aFdvrgQeJJbcUnW7uiMDBQ7mLEuHTzwHdzdH3ssXrgBl7QiD4k9K31hfU5GtQkHTtlHkba2gsnAXD6gqfgDqfZPtBZ6wn7cnzRKrTVNIOJQ2f1R25fBLwPtw%2Fi775Tn5ZJx5oKHbPV%2BM2dRuk4E5kN6DxQIv2H3w0WilQtOgKz%2B4Ie36lA%2Bv9kL8M56tpc%2B9dwprg39T0VrVyjRMW%2FSBBbmIqBLzfrsMzFukg6%2FPo2f0k5nvQc7BE7%2FaqdtliY2u06O3G1uDFKTUwH26Ojp9mBIRgorfR87UEg%2BX2l0Jt2kZHby63hafA2n%2F9v69v24kmzlSbHDcFvhyH%2FImS7yxrDtWDb5qnNyoKY2OTVCrgLxItemrfia6uEoSjdlRAv%2BksHlTKplXNejkS5zfHxbQAO%2BVDi4TbJd3bDwPdsi5yGzOuBKAGtl%2Fb3zZuVmpAwMSlyjK8J4Ltdm3Hc%2FYNAAMCeJGHSLu0VGXly6Z7bwbrctOGy4nSld4rJ9VLv7sIdGqJNzz0Ep9M2zpOfOkXB%2BD5oQE8qGqEuRRuKhFtnnE43x6qEr%2FFLoV%2BV3zWuv%2BgxdOZi5vr%2FhtXuqD9B%2FZEpXov9GTjL2lqM2mz3c1N2oxw709S8HAlR%2Fj7xSesY7Jd8Ph2eG4uCSEmHukop9DrrbKiq0tLtBQ6l2TqmsWsWsmdxIpM49zZCxF5lK%2BkSUeaZ5PwfqIEq1%2BSpyyKBRUTyj%2BV4h%2FDUKBYgIQKqgyi2LhLbPW16g7AxyJ73xPPU6FQ%2BkAN9KGh4uK0iib8grmMx97oJFEmvCbqsKDfBH%2FwSQD8SamgvaAaz0ilWbGoIHWGxf%2FBEp%2F0vJIbdf3MnIx9v0UJ%2FnLO4Gm6zwPrFsstWtBIrWmQXbAZI1ksjmZmCKXcCE7o0DjPIY4zxsdV3zLQ4Aq9pVVt6AIiyR3NkYMJg8nDzPHy1CNzxGF5fUqe%2BJPiCd97R%2Bvit%2FQIRKNleeT%2B%2FIwZtJMfoQqKlc3J1ToBaDHLPXAZGKRWgOrwyTqakJ9h64%2Fo4n%2F5hdUCRXQW8Qu0TNk%2BUsovQ86Hc6giCVE8zmKLNVPiog5WW2%2Fmhjq4wyJDzICCuycAJXlMiGRjeeJQTznmmtrIy15uuUACD0bmz6RPKP%2BjawP4cp6U2yP7QrCI8DrzjTksjKPqFI0%2BjVW9pIixUBhA0iQAfJQFYfUFLWpV1LHmPaK9YdgDB2NFUgCUpxkORkVcbQU8rGK0smCYdyfCHEwIm8N5VlvLmQoElnzwt8ju5V9aMvxtorQoi9iU%2FYn3%2BoJaJXk2GauT5wf2jO628a5Bp5I1QyadFr0fUcYhXSt%2Bl1LzFe0veCjw27ym3x6nsBVoN2tuNzCVxzNkNsv2%2FzC2piG3m%2Bab57pBVr9yBHiPfdnAsbIoASxkOO8P6UoajuZtIWu3MGrXqj8mAg9GCr7M4Y0EOQDokU6NilwUlYtjgnL3bxO3UNrPupsFvCcxTuhORIeh9wzR3GWMNbWPQU2vCyYsPgZf21U3aI76LPdFcMNk2Dwvg%2F3FuasL1DI%2B%2BMFvUGFt01TCd0y9kdLDgidP3PD9aZM4IK8xcfJWYBPuEfBNh9TxKErZWMcV4WXw924x0jaP9rvaTT6%2FO1AUuMXJO30NRa35Px%2BGOkBlyyqFAObAQxcY78ukfs3cfETD3XspT5XEam7jjK50hZMORd1aXe%2Bp3xZYo4oOGeT2IsBllxat1fWHGr%2B%2Fc5pNYYBN7eBzfDzmd6jBetABhq%2Fnc2IdNiQxgpXKpiBV%2FD2xy9fwQR98uABvQLpDUAlKP8tV9dwh2FYMAggkuFreKrnUA1LXPBcAQcIl0%2FaQaJqSCTh%2Bzr7U9Fiv%2Bfy6E8LoEoMqQILKfbuJvW2SfPEXBAslcmd%2Fsgi0VirholsnFj9q0M78j9ibdmx%2BUadq3PtcBJNGcYk0Qsxw11eY5Fol0xFj3dQDI2MzB%2BPDJ%2BinsMDKXeZPSinCmf8IovnznFBq6hCEK5IlPxsnpGpI27dqWW3vlCL9P8idV2AYvQIQJr%2BPGAyvBVtwy6iC0HJ0juMSapYorGK5PtsQfrXAEKeI7myQcqWp1jS4iOUYg0WckY72rYaoW9p%2BpjRtgzZKIE282oSSnBd2tOg39vFfNZAwFByd5nAXjM1kmgq5WydVpSVPTQlUCsD2jRT7KBv7dS%2FtdcYj4c%2Fn50vNmpL3W6oQTno%2Bm9L1sYQGpgjcb%2Bz3uWHpS11YISjdNGQcaL6foA%2Fjs%2FWBqca33gEuAcHaJV16FrNC9G1%2FbVt119dt0Qi4qaGwzC8f0UkPHPnhQKvvC%2BuydSP7KifRRGLUr7kqL8AouQNo0lQMwQeLmgkognlQVjuNMOXa0pde0xpnP5NZelN%2BjOxayu5Tdg0EX9bj1TFQ8BITNK1mTsCyHJzbbXxjJi7xfeGNkmviqabZRh%2FmO6MONtv4IkFyir1Dk%2BU1DYMtfDnBIrNv2OeLyq4JnrGnfPoiGMLvg2BVamKZ7PLOlicj1o4JvaWbrMITwmEY8b4y1hhRdijBsvDf2y6TAuKVOTjRuvlMQ%2FgvbfgDUZYu%2BnoOMpfNx5mAE1SUZS11Emc5sHYL1e%2Bmdtz9ydBX261vIIm5TC4vg8C1mI3Ye4Cn7CYsLjXiQNJTfMmiWg5ZMTmIBMscPhpRixxMYrSpNGhA2TcpuVMSGxhxeuIa0dLVe2FBQqysMFO4RIi2qoVtKZIr8RGKhB53zALXaKGz6VHZudHd5FS9LGYj0uBdYvJJ8hMxQV5B9fmETpRC4Vcd9wBYOFtC4m%2BdKO5O6HwWPHqboOGCw8cmbqkBN5qg5SNl3CkrjEfDT%2B7cI7exFk7aD8JGB7M%3D&__VIEWSTATEGENERATOR=3FEBCCBF&__SCROLLPOSITIONX=0&__SCROLLPOSITIONY=0&__VIEWSTATEENCRYPTED=&__EVENTVALIDATION=2zbbvcg7goH9rxf0QD2huQ0SNpuJJE4AsSqnZYNeHEUfUaitOw7xPZsLkTLF4BEqyb0hcbiH5VrprEAVIyAY8unK%2B5EeE%2BYq2OI4udXOBdnqdn%2BgMh%2BgsneZwisQgt3ov5oqbO3oIyddHORyB7S5Gr%2Bv22J4F%2FpXzNUH4%2BCER8O2hq0sS92ZGi7MWwm%2BKsc%2BmToMAg7NqiEDAXYeAQOeetRU344vfVpudJ6oQC3CO%2FxA4l6yvDQxZqdBbVmv%2FrLdxVD9Qd9v83McoaPxnA0xizyOyI9KkPxnCYLJ%2F2aD3k7mfYT03iRWyKI3rrtkLvhtFYn3czaHNtdWRMg5WfxJvWqA4kGPsNbPWR9NzqAdRBH%2FouIX%2FCY34nSQhWTFtgdM7mEoAiycYny5JeNCt1f00LcYPZ6zomnwiUUXipEPYoAUcNot842XNkanTf51%2BnW8Xj96XktP1O3Xi3IRbrJRMVQ7%2B5JjorDsNRGyW9nJybRUB%2FlPhktk0zrt4a0kf1f3tEHZaxq3ctl4ZnKblzhSTOWEd4TUDSlz%2F1Dlp%2FGmWuyuu3lOjvZZFYiEszSWKUfIfvajuqVNtr%2BMGrKQwJXvXz1UeJseLlmUWwfh4y6Oee5K%2FG%2FUxBmnmCFvt3ByWP256eOc6fx2KwdHCteHFz0hTTf4v%2F5WJQOEsA8AJwq8tAp%2BF52FLjUsptLe6Xp6Rs2inkikrhLGUmdi3dQtNgAVy2njvHRt7drzBAPpyg9U1ttRL1NmHN81%2BWhruy9aPNQZuHGJrcD1Mo4%2FIwOIwnpEfV4jJ3u3OueKMUguQvkE%2FiPegqmV%2FcaQqVgbcsL7cMWYzuiczS29L6H9w%2BJyaAR4OdD6cga24Leh2bad14TN7hd0KXKVVYrlHzuj7%2FPpDRLOnrDobymIYxVVS3dlsqxEER0JVCVKoubq6j4KxVFQg9uEv0tqzhQIN9moMs0unLORheGCcrTNhjiBUvOPVqK5iHSSk2rwEVrqLrKbDHbY8V9CyGWKpDx4Ym6n3PBGyMY9j%2BsxRw28UXs8ZqX5Vsq44tL09YjGZJ%2Bn1yEIErVAQ6V%2B6eLC8IDqg1CD%2BnLZJHgALTI7fwTRijPZ%2BhjVckA%2Bgw%3D%3D&__ASYNCPOST=true&
diff --git a/scrape.js b/scrape.js
index 45dd0b4..0ae30aa 100644
--- a/scrape.js
+++ b/scrape.js
@@ -1,4 +1,7 @@
-const https = require("https"); const parse = require("./parse.js"); const fs = require("fs"); const events = require("events");
+const https = require("https");
+const parse = require("./DBPARSE.js");
+const fs = require("fs");
+const events = require("events");
async function urlOpen(path)
{
@@ -22,7 +25,7 @@ async function scrapeFood(url)
data = data.toString("utf-8");
let foodList = [];
- const weekdays = ["su", "ma", "ti", "ke", "to", "pe", "la"];
+ const weekdays = ["ma", "ti", "ke", "to", "pe", "la", "su"];
let titleTags = ["<title>", "</title>"];
let foodTags = ["<![CDATA[", "]]>"];
@@ -49,7 +52,7 @@ async function scrapeFood(url)
let weekdayIndex = weekdays.findIndex(val => { return val === title.substring(0, 2); });
if (weekdayIndex !== -1)
- foodList[weekdayIndex] = [title, food];
+ foodList[weekdayIndex] = [title, neatify(food)];
titleSpan = getSpan(data, titleTags, foodSpan[1]);
foodSpan = getSpan(data, foodTags, titleSpan[1]);
@@ -63,5 +66,10 @@ function getFoodLink(week)
return `https://eruokalista.lohja.fi/AromieMenus/FI/Default/Lohja/Koulut/Rss.aspx?Id=97f76449-f57c-4217-aede-b5f9dbf2b41e&DateMode=${week}`;
}
+function neatify(food)
+{
+ return food.replaceAll(")", ")<br>").replaceAll(" :", ":").replaceAll(":", ":<br>");
+}
+
exports.food = scrapeFood;
exports.link = getFoodLink;
diff --git a/server.js b/server.js
index f2752e4..1431465 100644
--- a/server.js
+++ b/server.js
@@ -1,43 +1,49 @@
-//const http = require("http");
+
+const http = require("http");
const https = require("https");
const fs = require("fs");
const url = require("url");
-const parse = require("./parse.js");
const scrape = require("./scrape.js");
+const SQL_DBS = require("./database.js");
+const DBPARSE = require("./dbparse.js");
+const openFile = require("./open.js").file;
+const updateDB = require("./update.js");
async function init()
{
- const weekdays = [undefined, "MAANANTAI", "TIISTAI", "KESKIVIIKKO", "TORSTAI", "PERJANTAI", undefined];
-
const build = {
- "./index.html": buildMain,
- "./index.css": buildDefault,
- "./404/index.css": buildDefault
+ "./Cont/index.html": buildMain,
+ "./Cont/index.css": buildDefault,
+ "./Cont/devs/index.html": buildDevs,
+ "./Cont/devs/index.css": buildDefault,
+ "./Cont/404/index.css": buildDefault,
+ "./Cont/non-main.css": buildDefault,
+ "./Cont/Images/help.png": buildImage,
+ "./Cont/Images/back.png": buildImage
};
- const errorPath = "./404/index.html";
+ const errorPath = "./Cont/404/index.html";
+
+ const startDate = new Date();
+ let visitorCount = 0;
// await for needed things in async
- let [shiftCont, classCont, foodsThisWeek, foodsNextWeek/*, httpsKey, httpsCert*/] = await Promise.all([
- openFile("./shifts.txt"),
- openFile("./classes.txt"),
+ let [foodsThisWeek, foodsNextWeek, dbcredentials, httpsKey, httpsCert] = await Promise.all([
scrape.food(scrape.link(1)),
scrape.food(scrape.link(2)),
- //openFile("../Certificate/key.pem"),
- //openFile("../Certificate/cert.pem")
+ openFile("../dblogin.txt"),
+ openFile("../Certificate/key.pem"),
+ openFile("../Certificate/cert.pem")
]);
-
- // https options, you need to get a certificate in the file ../Certificate for the server to work
+
+ // https options, you need to get a certificate in the file ../Certificate for the server to work
const httpsOpts = {
- key: fs.readFileSync("../Certificate/key.pem"),//httpsKey,
- cert: fs.readFileSync("../Certificate/cert.pem")//httpsCert
+ key: httpsKey,
+ cert: httpsCert
};
-
- // get the food shift "database"
- shiftCont = shiftCont.toString("utf-8").replaceAll("\r", ""); // \r because of the \r\n newline on windows which creates problems
- classCont = classCont.toString("utf-8").replaceAll("\r", "");
- let DB = parse.build(shiftCont);
- parse.classes(classCont, DB);
+
+ // get the MySQL DB connection
+ const SQLDB = new SQL_DBS.Database(JSON.parse(dbcredentials));
// get the food "database"
const foods = [foodsThisWeek, foodsNextWeek];
@@ -45,56 +51,105 @@ async function init()
// server code
async function server(req, res)
{
+ // Lightweight analytics. Don't be evil. We just want to know if anyone uses this.
+ visitorCount++;
+
+ // validate inputs
let q = url.parse(req.url, true);
- let path = "." + q.pathname;
- if (path == "./")
- path = "./index.html";
+ let ind = q.query.index;
+ if (typeof ind === "string")
+ ind = validateIndex(q.query.index.substring(0, 20));
+ else
+ ind = "";
+ let d = q.query.day;
+ if (typeof d === "string")
+ d = antiXSS(d);
+ else
+ d = "";
+ q.query = {
+ index: ind,
+ day: d
+ };
+ let path = "./Cont" + antiXSS(q.pathname);
+ if (isDir(path))
+ path += ["/index.html", "index.html"][+(path[path.length - 1] === "/")];
+ // pack the data required by the builders
let data;
const args = {
"path": path,
+ "path404": errorPath,
"query": q.query,
- "db": DB,
- "foods": foods
+ "foods": foods,
+ "sqldb": SQLDB
};
- if (typeof build[path] === "function")
- data = await build[path](args);
- else
- data = await build404(errorPath, q.pathname);
-
+ // build the page
+ const buildFound = +(typeof build[path] === "function");
+ res.writeHead([404, 200][buildFound]);
+ data = await [build404, build[path]][buildFound](args);
res.write(data);
res.end();
}
// start server
- https.createServer(httpsOpts, server).listen(8080);
+ const runningServer = http.createServer(server).listen(8080);
+
+ // stop server
+ async function closeServer() {
+ const uptime = ((new Date()).getTime() - startDate.getTime()) / 1000;
+ console.log(`Stats:\nServer uptime: ${uptime} s\nVisitor count: ${visitorCount}\nVisitors per day: ${visitorCount / (uptime / (24 * 60 * 60))}\n\nShutting down...`);
+ await SQLDB.close();
+ console.log("MySQL closed");
+ runningServer.close();
+ console.log("Server shut down");
+ console.log("Process exiting...");
+ process.exit(0);
+ }
+ process.on("SIGINT", closeServer);
+ process.on("SIGQUIT", closeServer);
+ process.on("SIGTERM", closeServer);
}
-function openFile(path)
+
+
+function validateIndex(sus)
+{
+ return antiXSS(DBPARSE.cluttered(sus));
+}
+
+function antiXSS(sus)
{
- return new Promise((resolve, reject) =>
+ if (!(typeof sus === "string"))
+ return "";
+ return replace(sus, ["<", ">", "(", ")"], ["&lt;", "&gt;", "&#40;", "&#41;"]);
+}
+
+function isDir(path)
+{
+ return (DBPARSE.getNextChar(path.substring(1), ".") === -1);
+}
+
+
+function replace(s, from, to)
+{
+ for (let i = 0; i < from.length; i++)
{
- fs.readFile(path, (err, data) =>
- {
- if (err)
- reject(err);
- resolve(data);
- })
- });
+ s = s.replaceAll(from[i], to[i]);
+ }
+ return s;
}
+
async function buildMain(args)
{
// get the passed arguments
const path = args["path"];
const query = args["query"];
const foods = args["foods"];
- let index;
- if (typeof query.index === "string")
- index = parse.cluttered(query.index);
- const DB = args["db"];
+ const index = query.index;
+ const SQLDB = args["sqldb"];
const data = await openFile(path);
let data_string = data.toString("utf-8");
@@ -104,10 +159,10 @@ async function buildMain(args)
// get valid day
const d = new Date();
let day = d.getDay();
- let actualDay = day;
- day = +((day === 0) || (day === 6)) + (+(!(day === 0) && !(day === 6)) * day); // clamp the day between monday (1) and friday (5) (inclusive)
- // make the day the passed day instead if the passed day is valid
- if ((typeof query.day === "string") && (parseInt(query.day).toString() === query.day) && (!isNaN(parseInt(query.day))) && (parseInt(query.day) > 0) && (parseInt(query.day) < 6))
+ day = (day + +(day === 0) * 7) - 1;
+ const actualDay = day;
+ day = +(!(day === 5) && !(day === 6)) * day;
+ if ((typeof query.day === "string") && (parseInt(query.day).toString() === query.day) && (!isNaN(parseInt(query.day))) && (parseInt(query.day) >= 0) && (parseInt(query.day) < 5))
day = parseInt(query.day);
// set the day selected (must be done manually with this replacement system)
data_string = data_string.replace(`<option value=\"${day}\">`, `<option value=\"${day}\" selected>`);
@@ -123,21 +178,26 @@ async function buildMain(args)
res["shift"] = "";
if (res["shift"] === undefined)
{
- let shift = parse.get(day, index, DB);
- let key = Object.keys(shift)[0];
- if (key !== undefined)
+ let shift = await DBPARSE.get(day, index, SQLDB);
+ if (shift !== undefined)
{
- res["shift"] = key;
- res["shift-header"] = `${shift[key][0]}/${shift[key][1]}`;
- if (shift[key][2] !== undefined)
- res["shift-header"] += `/${shift[key][2]}`
- res["index-type"] = "Kurssin";
+ res["shift"] = shift[0].name;
+ res["shift-header"] = "";
+ for (let i = 0; i < shift[1].length; i++)
+ {
+ res["shift-header"] += `${shift[1][i].course}/${shift[1][i].teacher}`;
+ if (shift[1][i].class !== null)
+ res["shift-header"] += `/${shift[1][i].class}`
+ if (i + 1 !== shift[1].length)
+ res["shift-header"] += " ja ";
+ }
+ res["index-type"] = ["Kurssin", "Kurssien"][+(shift[1].length > 1)];
}
else
{
res["shift"] = -1;
res["shift-header"] = `${index}`;
- res["index-type"] = indexTypes[parse.indexType(index)];
+ res["index-type"] = indexTypes[DBPARSE.indexType(index)];
if (res["index-type"] === undefined)
res["index-type"] = "";
}
@@ -145,8 +205,11 @@ async function buildMain(args)
if (res["shift"] === -1)
res["shift"] = "Kurssilla/opettajalla/luokalla ei ole ruokailua päivällä tai kurssia ei ole olemassa!";
+ // get the example input
+ res["example-input"] = await DBPARSE.randomIndex(day, SQLDB);
+
// get the day
- let weekdays = ["su", "ma", "ti", "ke", "to", "pe", "la"];
+ let weekdays = ["ma", "ti", "ke", "to", "pe", "la", "su"];
res["day"] = weekdays[day];
if (res["shift"] === "")
data_string = data_string.replace('<div id="shift-result" class="float-block">', '<div id="shift-result" class="float-block" style="display: none;">');
@@ -155,7 +218,7 @@ async function buildMain(args)
day += (day === 0) * 7;
actualDay += (actualDay === 0) * 7;
let food;
- food = foods[ +(day < actualDay) ][day]; // test this out more
+ food = foods[ +(day < actualDay) ][day];
if (food !== undefined)
{
res["food-header"] = food[0];
@@ -173,11 +236,34 @@ async function buildMain(args)
return data_string;
}
-async function build404(path, attemptpath)
+async function buildDevs(args)
{
+ const path = args["path"];
const data = await openFile(path);
+ const DB = args["sqldb"];
+
+ let res = "";
+ let devs = await DB.query_raw("SELECT name, description, contact FROM devs");
+ for (let dev = 0; dev < devs.length; dev++)
+ {
+ let devInfo = devs[dev];
+ res += '<div class="float-block">' +
+ `<p class="column">${devInfo.name}</p>` +
+ `<p class="column">${devInfo.description}</p>` +
+ `<a href="mailto:${devInfo.contact}" class="column" style="white-space: nowrap; overflow: hidden; overflow-wrap: normal; text-overflow: ellipsis;">${devInfo.contact}</a>` +
+ '</div>';
+ }
+
+ return build_replace(data.toString("utf-8"), {"devs": res});
+}
+
+
+async function build404(args)
+{
+ args["path"] = args["path"].substring("./Cont".length);
+ const data = await openFile(args["path404"]);
const data_string = data.toString("utf-8");
- return data_string.replace("\\(path\\)", attemptpath);
+ return data_string.replace("\\(path\\)", args["path"]);
}
async function buildDefault(args)
@@ -187,6 +273,13 @@ async function buildDefault(args)
return data.toString("utf-8");
}
+async function buildImage(args)
+{
+ const path = args["path"];
+ const data = await openFile(path);
+ return data;
+}
+
function build_replace(s, dict)
{
@@ -198,5 +291,4 @@ function build_replace(s, dict)
return s;
}
-
init();
diff --git a/update.js b/update.js
new file mode 100644
index 0000000..9262ff7
--- /dev/null
+++ b/update.js
@@ -0,0 +1,21 @@
+const database = require("./database.js");
+const openFile = require("./open.js").file;
+const parseClasses = require("./parseClasses.js").classes;
+const parse = require("./dbparse.js");
+
+// Run this if you want to build the database from text files
+async function buildDB(shiftfile = "./shifts.txt", classfile = "./classes.txt", dbcredentials)
+{
+ let shiftCont = await openFile(shiftfile);
+ const DB = new database.Database(JSON.parse(dbcredentials));
+ shiftCont = shiftCont.toString("utf-8").replaceAll("\r", ""); // \r because of the \r\n newline on windows which creates problems
+ await Promise.all([
+ parseClasses(classfile[0], classfile[1], DB),
+ parse.build(shiftCont, DB)
+ ]);
+ return 0;
+}
+
+exports.update = buildDB;
+// Example call:
+// await updateDB.update("./shifts.txt", ["./Kurssitarjottimet/2016Classes.txt", "./Kurssitarjottimet/NewClasses.txt"], dbcredentials); \ No newline at end of file