{ "cells": [ { "cell_type": "markdown", "id": "716d235e", "metadata": {}, "source": [ "# Παίγνια σε Κανονική Μορφή με Βιβλιοθήκες Nashpy και QuantEcon \n", "\n", "Παρακάτω, δίνουμε παραδείγματα εισαγωγής, χειρισμού και υπολογισμού ισορροπιών για παίγνια σε κανονική μορφή (normal form) με τις βιβλιοθήκες **Nashpy** και **QuantEcon**. \n", "\n", "Για περισσότερα παραδείγματα και αναλυτική περιγραφή των δυνατοτήτων αυτών των βιβλιοθηκών, δείτε την τεκμηρίωση της [NashPy](https://nashpy.readthedocs.io) και την τεκμηρίωση της [QuantEcon](https://quanteconpy.readthedocs.io). \n", "\n", "Άλλα χρήσιμα εργαλεία για την ανάλυση παιγνίων σε κανονική και σε εκτεταμένη μορφή είναι το λογισμικό [Game Theory Explorer](https://gte.csc.liv.ac.uk/index), το οποίο μπορείτε να χρησιμοποιήσετε και μέσω [web interface](http://app.test.logos.bg), και το λογισμικό [Gambit](https://gambitproject.readthedocs.io), το οποίο περιλαμβάνει [graphical user interface](https://gambitproject.readthedocs.io/en/latest/gui.html#section-gui), λειτουργίες προσβάσιμες από τη [γραμμή εντολών](https://gambitproject.readthedocs.io/en/latest/tools.html#command-line) και [Python interface](https://gambitproject.readthedocs.io/en/latest/pyapi.html#python-api), το οποίο μπορεί να χρησιμοποιηθεί και από python notebooks, όπως αυτό. Σε αυτή τη σύντομη εισαγωγή στη Θεωρία Παιγνίων, δεν θα αναφερθούμε στις δυνατότητες των **Game Theory Explorer** και **Gambit**." ] }, { "cell_type": "markdown", "id": "9434da8b", "metadata": {}, "source": [ "## Εγκατάσταση Nashpy\n", "\n", "Αρχικά εγκαθιστούμε τη βιβλιοθήκη Nashpy." ] }, { "cell_type": "code", "execution_count": 1, "id": "b40efffa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: nashpy in /home/fotakis/.local/lib/python3.8/site-packages (0.0.35)\n", "Requirement already satisfied: scipy>=0.19.0 in /home/fotakis/.local/lib/python3.8/site-packages (from nashpy) (1.8.1)\n", "Requirement already satisfied: numpy>=1.21.0 in /home/fotakis/.local/lib/python3.8/site-packages (from nashpy) (1.21.4)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "pip install nashpy" ] }, { "cell_type": "markdown", "id": "75e4e581", "metadata": {}, "source": [ "## Παίγνια σε Κανονική Μορφή: Ορολογία και Παραδείγματα\n", "\n", "Ένα **παίγνιο σε κανονική μορφή** ([normal form game](https://en.wikipedia.org/wiki/Normal-form_game)) αποτελείται από:\n", "- ένα σύνολο παικτών $N = \\{1, 2, \\ldots, n \\}$,\n", "- ένα σύνολο (αμιγών) στρατηγικών $S^i$ για κάθε παίκτη $i$, και\n", "- μια συνάρτηση ωφέλειας $u_i : S^1 \\times \\cdots \\times S^n \\to \\mathbb{R}$ για κάθε παίκτη $i$.\n", "\n", "Για παίγνια **2 παικτών** (στα οποία θα εστιάσουμε σε αυτό το notebook), οι συναρτήσεις ωφέλειας δίνονται συνήθως ως δύο πίνακες $(A, B)$ ([bimatrix game](https://en.wikipedia.org/wiki/Bimatrix_game)). \n", "\n", "Αν ο παίκτης 1 (Π1) έχει $n$ στρατηγικές και ο παίκτης 2 (Π2) έχει $m$ στρατηγικές, οι πίνακες $A$ και $B$ έχουν διαστάσεις $n \\times m$. Αν ο Π1 επιλέξει τη στρατηγική $i$, $i \\in \\{ 1, \\ldots, n\\}$ και ο Π2 επιλέξει τη στρατηγική $j$, $j \\in \\{1, \\ldots, m\\}$, η ωφέλεια του Π1 είναι $A[i, j]$ και η ωφέλεια του Π2 είναι $B[i, j]$. Για αυτό και συχνά λέμε ότι ο Π1 είναι ο **παίκτης-γραμμή** (αφού ο Π1 επιλέγει τη γραμμή που καθορίζει την ωφέλεια των δύο παικτών στους πίνακες $A$ και $Β$) και o Π2 είναι ο **παίκτης-στήλη** (αφού αντίστοιχα ο Π2 επιλέγει τη στήλη που καθορίζει την ωφέλεια των δύο παικτών στους πίνακες $A$ και $Β$). \n", "\n", "Όταν $A+B = 0$, έχουμε παίγνιο 2 παικτών με [**μηδενικό άθροισμα**](https://en.wikipedia.org/wiki/Zero-sum_game) (2-person zero-sum game), οι συναρτήσεις ωφέλειας δίνονται συνήθως από έναν $n\\times m$ πίνακα $A$, με την ωφέλεια του Π1 να καθορίζεται από τον $A$ και την ωφέλεια του Π2 να καθορίζεται από τον αντίθετο πίνακα $-A$.\n", "\n", "Εισάγουμε παρακάτω κάποια τυπικά παραδείγματα παιγνίων με 2 παίκτες σε κανονική μορφή. Κάθε παίγνιο δίνεται ως ένας πίνακας όπου:\n", "- Οι γραμμές επιγράφονται με τις στρατηγικές του Π1 (ή παίκτη-γραμμή)\n", "- Οι στήλες επιγράφονται με τις στρατηγικές του Π2 (ή παίκτη-στήλη)\n", "- Κάθε κελί του πίνακα περιέχει ένα ζεύγος αριθμών $(a, b)$, όπου $a$ είναι η ωφέλεια του Π1 και $b$ η ωφέλεια του Π2 στη συγκεκριμένη κατάσταση του παιγνίου. " ] }, { "cell_type": "markdown", "id": "1d513135", "metadata": {}, "source": [ "### Πέτρα - Ψαλίδι - Χαρτί \n", "\n", "$$\\begin{array}{||c|c|c|c||}\\hline\n", "\\ \\ \\ &\\ \\mbox{Πέτρα}\\ &\\ \\mbox{Ψαλίδι}\\ &\\ \\mbox{Χαρτί}\\ \\\\ \\hline\n", "\\ \\mbox{Πέτρα} \\ &\\ (0, 0)\\ &\\ (1, -1)\\ &\\ (-1, 1)\\ \\\\ \\hline\n", "\\ \\mbox{Ψαλίδι} \\ &\\ (-1, 1)\\ &\\ (0, 0)\\ &\\ (1, -1)\\ \\\\ \\hline\n", "\\ \\mbox{Χαρτί} \\ &\\ (1, -1)\\ &\\ (-1, 1)\\ &\\ (0,0)\\ \\\\ \\hline\\hline\n", "\\end{array}$$\n", "\n", "Περισσότερες πληροφορίες για το [Πέτρα-Ψαλίδι-Χαρτί](https://en.wikipedia.org/wiki/Rock_paper_scissors).\n", "Το Πέτρα-Ψαλίδι-Χαρτί είναι παίγνιο μηδενικού αθροίσματος και μπορεί να ορισθεί στη Nashpy ως εξής:" ] }, { "cell_type": "code", "execution_count": 2, "id": "84a0a730", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Zero sum game with payoff matrices:\n", "\n", "Row player:\n", "[[ 0 1 -1]\n", " [-1 0 1]\n", " [ 1 -1 0]]\n", "\n", "Column player:\n", "[[ 0 -1 1]\n", " [ 1 0 -1]\n", " [-1 1 0]]\n" ] } ], "source": [ "import nashpy as nash\n", "import numpy as np\n", "\n", "A = np.array([[0, 1, -1], [-1, 0, 1], [1, -1, 0]])\n", "rsp = nash.Game(A)\n", "print(rsp)" ] }, { "cell_type": "markdown", "id": "63816725", "metadata": {}, "source": [ "### Γενικευμένη Εκδοχή του Πέτρα - Ψαλίδι - Χαρτί \n", "\n", "$$\\begin{array}{||c|c|c|c||}\\hline\n", "\\ \\ \\ &\\ \\mbox{Πέτρα}\\ &\\ \\mbox{Ψαλίδι}\\ &\\ \\mbox{Χαρτί}\\ \\\\ \\hline\n", "\\ \\mbox{Πέτρα} \\ &\\ (0, 0)\\ &\\ (2, 1)\\ &\\ (1, 2)\\ \\\\ \\hline\n", "\\ \\mbox{Ψαλίδι} \\ &\\ (1, 2)\\ &\\ (0, 0)\\ &\\ (2, 1)\\ \\\\ \\hline\n", "\\ \\mbox{Χαρτί} \\ &\\ (2, 1)\\ &\\ (1, 2)\\ &\\ (0,0)\\ \\\\ \\hline\\hline\n", "\\end{array}$$\n", "\n", "Η γενικεύμενη εκδοχή του Πέτρα-Ψαλίδι-Χαρτί οφείλεται στον [Lloyd Shapley](https://en.wikipedia.org/wiki/Lloyd_Shapley) και μπορεί να ορισθεί στη Nashpy ως εξής:" ] }, { "cell_type": "code", "execution_count": 3, "id": "22504b59", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Bi matrix game with payoff matrices:\n", "\n", "Row player:\n", "[[0 2 1]\n", " [1 0 2]\n", " [2 1 0]]\n", "\n", "Column player:\n", "[[0 1 2]\n", " [2 0 1]\n", " [1 2 0]]\n" ] } ], "source": [ "A = np.array([[0, 2, 1], [1, 0, 2], [2, 1, 0]])\n", "B = np.array([[0, 1, 2], [2, 0, 1], [1, 2, 0]])\n", "gen_rsp = nash.Game(A, B)\n", "print(gen_rsp)" ] }, { "cell_type": "markdown", "id": "1d27b64d", "metadata": {}, "source": [ "### Δίλημμα του Φυλακισμένου\n", "\n", "$$\\begin{array}{||c|c|c||}\\hline\n", "\\ \\ \\ &\\ \\mbox{Ομολογώ}\\ &\\ \\mbox{Δεν Ομολογώ}\\ \\\\ \\hline\n", "\\ \\mbox{Ομολογώ} \\ &\\ (-5, -5)\\ &\\ (0, -12)\\ \\\\ \\hline\n", "\\ \\mbox{Δεν Ομολογώ} \\ &\\ (-12, 0)\\ &\\ (-1, -1)\\ \\\\ \\hline\n", "\\end{array}$$\n", "\n", "Περισσότερες πληροφορίες για το [Δίλημμα του Φυλακισμένου](https://en.wikipedia.org/wiki/Prisoner%27s_dilemma).\n", "Το Δίλημμα του Φυλακισμένου μπορεί να ορισθεί στη Nashpy ως εξής:" ] }, { "cell_type": "code", "execution_count": 4, "id": "e1553688", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Bi matrix game with payoff matrices:\n", "\n", "Row player:\n", "[[ -5 0]\n", " [-12 -1]]\n", "\n", "Column player:\n", "[[ -5 -12]\n", " [ 0 -1]]\n" ] } ], "source": [ "A = np.array([[-5, 0], [-12, -1]])\n", "B = np.array([[-5, -12], [0, -1]])\n", "prisoners_dilemma = nash.Game(A, B)\n", "print(prisoners_dilemma)" ] }, { "cell_type": "markdown", "id": "c52aa1c7", "metadata": {}, "source": [ "### Bach or Stravinski (ή Battle of Sexes, BoS)\n", "\n", "$$\\begin{array}{||c|c|c||}\\hline\n", "\\ \\ \\ &\\ \\mbox{Bach}\\ &\\ \\mbox{Stravinski}\\ \\\\ \\hline\n", "\\ \\mbox{Bach} \\ &\\ (2, 1)\\ &\\ (0, 0)\\ \\\\ \\hline\n", "\\ \\mbox{Stravinski} \\ &\\ (0, 0)\\ &\\ (1, 2)\\ \\\\ \\hline\n", "\\end{array}$$\n", "\n", "Περισσότερες πληροφορίες για το [Battle of Sexes](https://en.wikipedia.org/wiki/Battle_of_the_sexes_(game_theory)).\n", "Το Bach or Stravinski (ή Battle of Sexes) μπορεί να ορισθεί στη Nashpy ως εξής:" ] }, { "cell_type": "code", "execution_count": 5, "id": "8948d167", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Bi matrix game with payoff matrices:\n", "\n", "Row player:\n", "[[2 0]\n", " [0 1]]\n", "\n", "Column player:\n", "[[1 0]\n", " [0 2]]\n" ] } ], "source": [ "A = np.array([[2, 0], [0, 1]])\n", "B = np.array([[1, 0], [0, 2]])\n", "BoS = nash.Game(A, B)\n", "print(BoS)" ] }, { "cell_type": "markdown", "id": "a05f7587", "metadata": {}, "source": [ "### Κοινωνική Συνεργασία (Stag Hunt)\n", "\n", "$$\\begin{array}{||c|c|c||}\\hline\n", "\\ \\ \\ &\\ \\mbox{Συνεργασία}\\ &\\ \\mbox{Αποστασία}\\ \\\\ \\hline\n", "\\ \\mbox{Συνεργασία} \\ &\\ (2, 2)\\ &\\ (0, 3)\\ \\\\ \\hline\n", "\\ \\mbox{Αποστασία} \\ &\\ (3, 0)\\ &\\ (1, 1)\\ \\\\ \\hline\n", "\\end{array}$$\n", "\n", "Περισσότερες πληροφορίες για το [Stag Hunt](https://en.wikipedia.org/wiki/Stag_hunt).\n", "Το Stag Hunt μπορεί να ορισθεί στη Nashpy ως εξής:" ] }, { "cell_type": "code", "execution_count": 6, "id": "c32dbec5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Bi matrix game with payoff matrices:\n", "\n", "Row player:\n", "[[2 0]\n", " [3 1]]\n", "\n", "Column player:\n", "[[2 3]\n", " [0 1]]\n" ] } ], "source": [ "A = np.array([[2, 0], [3, 1]])\n", "B = np.array([[2, 3], [0, 1]])\n", "stag_hunt = nash.Game(A, B)\n", "print(stag_hunt)" ] }, { "cell_type": "markdown", "id": "93765949", "metadata": {}, "source": [ "### Μοιράζοντας 2 Ευρώ\n", "\n", "Δύο αδέλφια θέλουν να μοιραστούν 2 κέρματα του ενός ευρώ που έχουν πάρει από τη μητέρα τους. Ο Π1 (μεγάλος αδελφός, παίκτης-γραμμή) προτείνει μια μοιρασιά και ο Π2 (μικρός αδελφός, παίκτης-στήλη) αποδέχεται ή όχι. Αν ο μικρός συμφωνήσει, τα αδέλφια μοιράζουν τα δύο κέρματα όπως πρότεινε ο μεγάλος. Αν ο μικρός διαφωνήσει, τα κέρματα επιστρέφουν στη μητέρα, η οποία αποζημιώνει με μισό ευρώ τον αδικημένο στη μοιρασιά που πρότεινε ο μεγάλος.\n", "\n", "$$\\begin{array}{||c|c|c||}\\hline\n", "\\ \\ \\ &\\ \\mbox{Ναι}\\ &\\ \\mbox{Όχι}\\ \\\\ \\hline\n", "\\ \\mbox{$2 - 0$} \\ &\\ (2, 0)\\ &\\ (0, 1/2)\\ \\\\ \\hline\n", "\\ \\mbox{$1 - 1$} \\ &\\ (1, 1)\\ &\\ (0, 0)\\ \\\\ \\hline\n", "\\ \\mbox{$0 - 2$} \\ &\\ (0, 2)\\ &\\ (1/2, 0)\\ \\\\ \\hline\n", "\\end{array}$$\n", "\n", "Το παραπάνω παίγνιο διαμοιρασμού αγαθών μπορεί να ορισθεί στη Nashpy ως εξής:" ] }, { "cell_type": "code", "execution_count": 7, "id": "a1fa8604", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Bi matrix game with payoff matrices:\n", "\n", "Row player:\n", "[[2. 0. ]\n", " [1. 0. ]\n", " [0. 0.5]]\n", "\n", "Column player:\n", "[[0. 0.5]\n", " [1. 0. ]\n", " [2. 0. ]]\n" ] } ], "source": [ "A = np.array([[2, 0], [1, 0], [0, 0.5]])\n", "B = np.array([[0, 0.5], [1, 0], [2, 0]])\n", "sharing = nash.Game(A, B)\n", "print(sharing)" ] }, { "cell_type": "markdown", "id": "a84a9f53", "metadata": {}, "source": [ "### Άσκηση 1\n", "\n", "Στη [σχετική σελίδα του Wikipedia](https://en.wikipedia.org/wiki/List_of_games_in_game_theory) μπορείτε να βρείτε κατάλογο με πολλά τυπικά παραδείγματα παιγνίων. Να επιλέξετε **τρία από αυτά** και να τα ορίσετε στην Nashpy, όπως παραπάνω. " ] }, { "cell_type": "markdown", "id": "42c06c29", "metadata": {}, "source": [ "# Ισορροπία Nash στις Αμιγείς Στρατηγικές\n", "\n", "**Ισορροπία Nash στις αμιγείς στρατηγικές** (ή αμιγής ισορροπία Nash, pure [Nash equilibrium](https://en.wikipedia.org/wiki/Nash_equilibrium)) ενός παιγνίου σε κανονική μορφή με $n$ παίκτες είναι μια κατάσταση $\\vec{s} = (s_1, \\ldots, s_n) \\in S^1 \\times \\cdots \\times S^n$ του παιγνίου όπου για κάθε παίκτη $i \\in \\{ 1, \\ldots, n\\}$ ισχύει ότι: \n", "\n", "$$u_i(s_i, \\vec{s}_{–i}) \\geq u_i(s’, \\vec{s}_{–i}) \\mbox{ για κάθε $s’\\in S^i$}$$ \n", "\n", "Δηλαδή, σε μια ισορροπία Nash, κανένας παίκτης δεν μπορεί να βελτιώσει την ατομική του ωφέλεια αλλάζοντας μόνο τη δική του στρατηγική.\n", "\n", "**Βέλτιστη απόκριση** ([best reponse](https://en.wikipedia.org/wiki/Best_response)) ενός παίκτη $i$ στις (αμιγείς) στρατηγικές $\\vec{s}_{–i}$ των άλλων παικτών είναι κάθε στρατηγική $s \\in S^i$ που βελτιστοποιεί την ατομική ωφέλεια του παίκτη $i$, δεδομένου ότι οι άλλοι παίκτες ακολουθούν τις στρατηγικές $\\vec{s}_{–i}$. Δηλαδή, βέλτιστη απόκριση ενός παίκτη $i$ στο $\\vec{s}_{–i}$ είναι κάθε στρατηγική\n", "\n", "$$s = \\arg\\max_{x \\in S^i} \\{ u_i(x, \\vec{s}_{-i}) \\}$$ \n", "\n", "Για παίγνια που δίνονται αναλυτικά σε κανονική μορφή, μπορούμε να υπολογίσουμε όλες τις αμιγείς ισορροπίες Nash ελέγχοντας **εξαντλητικά** για όλες τις καταστάσεις αν η στρατηγική κάθε παίκτη αποτελεί **βέλτιστη απόκριση** στις στρατηγικές των άλλων παικτών. \n", "\n", "Παρακάτω υπολογίζουμε με αυτόν τον τρόπο τις αμιγείς ισορροπίες Nash για τα παίγνια Bach or Straviski, Stag Hunt και μοιρασιάς 2 ευρώ με χρήση της βιβλιοθήκη Nashpy. Αφήνεται ως **άσκηση να επιβεβαιώσετε**, με τον ίδιο τρόπο, ότι το παίγνιο Πέτρα-Ψαλίδι-Χαρτί (τόσο στη βασική όσο και στη γενικευμένη εκδοχή του) **δεν έχει** αμιγή ισορροπία Nash. " ] }, { "cell_type": "code", "execution_count": 8, "id": "8bd11740", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Bach or Straviski -- Pure Nash Equilibria\n", "pure Nash equibrium 1 :\n", "Row player:\t strategy = [1 0] utility = 2\n", "Column player:\t strategy = [1 0] utility = 1\n", "pure Nash equibrium 2 :\n", "Row player:\t strategy = [0 1] utility = 1\n", "Column player:\t strategy = [0 1] utility = 2\n", "\n", "Stag Hunt -- Pure Nash Equilibria\n", "pure Nash equibrium 1 :\n", "Row player:\t strategy = [0 1] utility = 1\n", "Column player:\t strategy = [0 1] utility = 1\n", "\n", "Sharing 2 Euros -- Pure Nash Equilibria\n", "No pure Nash equilibria\n" ] } ], "source": [ "def print_equilibrium(cnt, row, col, A, B):\n", " cnt = cnt+1\n", " print(\"pure Nash equibrium\", cnt, \":\")\n", " print(\"Row player:\\t strategy = \", row, \" utility = \", (A.dot(col)).dot(row))\n", " print(\"Column player:\\t strategy = \", col, \" utility = \", (np.transpose(B).dot(row)).dot(col))\n", " return cnt\n", "\n", "print(\"Bach or Straviski -- Pure Nash Equilibria\")\n", "cnt = 0\n", "A = np.array([[2, 0], [0, 1]])\n", "B = np.array([[1, 0], [0, 2]])\n", "BoS = nash.Game(A, B)\n", "row = np.array([1, 0])\n", "col = np.array([1, 0])\n", "if BoS.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "col = np.array([0, 1])\n", "if BoS.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "row = np.array([0, 1])\n", "if BoS.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "col = np.array([1, 0])\n", "if BoS.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "\n", "print(\"\\nStag Hunt -- Pure Nash Equilibria\")\n", "cnt = 0\n", "A = np.array([[2, 0], [3, 1]])\n", "B = np.array([[2, 3], [0, 1]])\n", "stag_hunt = nash.Game(A, B)\n", "row = np.array([1, 0])\n", "col = np.array([1, 0])\n", "if stag_hunt.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "col = np.array([0, 1])\n", "if stag_hunt.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "row = np.array([0, 1])\n", "if stag_hunt.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "col = np.array([1, 0])\n", "if stag_hunt.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", " \n", "print(\"\\nSharing 2 Euros -- Pure Nash Equilibria\")\n", "cnt = 0\n", "A = np.array([[2, 0], [1, 0], [0, 0.5]])\n", "B = np.array([[0, 0.5], [1, 0], [2, 0]])\n", "sharing = nash.Game(A, B)\n", "row = np.array([1, 0, 0])\n", "col = np.array([1, 0])\n", "if sharing.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "col = np.array([0, 1])\n", "if sharing.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "row = np.array([0, 1, 0])\n", "if sharing.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "col = np.array([1, 0])\n", "if sharing.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "row = np.array([0, 0, 1])\n", "if sharing.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B)\n", "col = np.array([0, 1])\n", "if sharing.is_best_response(row, col) == (True, True):\n", " cnt = print_equilibrium(cnt, row, col, A, B) \n", "if cnt == 0:\n", " print(\"No pure Nash equilibria\")" ] }, { "cell_type": "markdown", "id": "8cb84f8b", "metadata": {}, "source": [ "## Δυναμική Nash\n", "\n", "Η **δυναμική Nash** (Nash dynamics) ορίζει μια δυναμική μεταβάσεων στον χώρο καταστάσεων του παιγνίου. Μετάβαση από μια κατάσταση $\\vec{s}$ σε μια κατάσταση $\\vec{s}'$ μπορεί να γίνει όταν οι καταστάσεις $\\vec{s}$ και $\\vec{s}'$ διαφέρουν μόνο στη στρατηγική ενός παίκτη $i$ και η ατομική ωφέλεια του $i$ στην $\\vec{s}'$ υπερβαίνει την ωφέλειά στην $\\vec{s}$, δηλαδή $u_i(\\vec{s}) < u_i(\\vec{s}’)$ (οπότε ο παίκτης $i$ επιθυμεί να αλλάξει τη στρατηγική του από $\\vec{s}(i)$ σε $\\vec{s}'(i)$, προκαλώντας τη μετάβαση). \n", "\n", "Η **δυναμική βέλτιστης απόκρισης** (best response dynamics) αποτελεί εκλέπτυνση της δυναμικής Nash. \n", "Έχουμε μετάβαση από μια κατάσταση $\\vec{s}$ σε μια κατάσταση $\\vec{s}'$ όταν οι καταστάσεις $\\vec{s}$ και $\\vec{s}'$ διαφέρουν μόνο στη στρατηγική ενός παίκτη $i$, η στρατηγική $\\vec{s}'(i)$ του $i$ στην $\\vec{s}'$ αποτελεί βέλτιστη απόκριση του $i$ στις στρατηγικές $\\vec{s}_{-i} = \\vec{s}'_{-i}$ των άλλων παικτών, και ο $i$ βελτιώνει την ατομική του ωφέλεια μεταβάλοντας τη στρατηγική του από $\\vec{s}(i)$ σε $\\vec{s}'(i)$, έχουμε δηλαδή ότι $u_i(\\vec{s}) < u_i(\\vec{s}’)$. \n", "\n", "Οι δυναμικές Nash και βέλτιστης απόκρισης μπορούν να αναπαρασταθούν με **κατευθυνόμενο γράφημα**, όπου οι κορυφές αντιστοιχούν στις καταστάσεις του παιγνίου και οι ακμές στις αντίστοιχες μεταβάσεις. \n", "\n", "Οι αμιγείς ισορροπίες Nash αντιστοιχούν στις **καταβόθρες** (δηλ. σε κορυφές χωρίς εξερχόμενες ακμές) του γραφήματος της δυναμικής Nash και της δυναμικής βέλτιστης απόκρισης.\n", "\n", "Παρακάτω χρησιμοποιούμε τις βιβλιοθήκες **networkx** και **matplotlib** (αφού αρχικά τις εγκαταστήσουμε) για να απεικονίσουμε, ως κατευθυνόμενο γράφημα, τη δυναμική βέλτιστης απόκρισης των παιγνίων Πέτρα-Ψαλίδι-Χαρτί (η δυναμική είναι κοινή στις δύο εκδοχές του παιγνίου) και Stag Hunt. Τι συμπεραίνετε για την ύπαρξη αμιγών ισορροπιών Nash σε αυτά παίγνια;" ] }, { "cell_type": "code", "execution_count": 9, "id": "f733f82a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: networkx in /home/fotakis/.local/lib/python3.8/site-packages (2.8.8)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "pip install networkx" ] }, { "cell_type": "code", "execution_count": 10, "id": "e1ece21d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: matplotlib in /home/fotakis/.local/lib/python3.8/site-packages (3.5.1)\n", "Requirement already satisfied: numpy>=1.17 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (1.21.4)\n", "Requirement already satisfied: kiwisolver>=1.0.1 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (1.4.2)\n", "Requirement already satisfied: pillow>=6.2.0 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (9.1.0)\n", "Requirement already satisfied: pyparsing>=2.2.1 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (3.0.6)\n", "Requirement already satisfied: cycler>=0.10 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (0.11.0)\n", "Requirement already satisfied: python-dateutil>=2.7 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (2.8.2)\n", "Requirement already satisfied: packaging>=20.0 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (21.3)\n", "Requirement already satisfied: fonttools>=4.22.0 in /home/fotakis/.local/lib/python3.8/site-packages (from matplotlib) (4.33.3)\n", "Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7->matplotlib) (1.14.0)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "pip install matplotlib" ] }, { "cell_type": "code", "execution_count": 11, "id": "a3c19f09", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Stag Hunt: Δυναμική Βέλτιστης Απόκρισης\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import networkx as nx\n", "import matplotlib.pyplot as plt\n", "\n", "ND_stag_hunt = nx.DiGraph()\n", "vlist = ['ΣΣ', 'ΣΑ', \n", " 'ΑΣ', 'ΑΑ' ]\n", "elist = [('ΣΣ', 'ΑΣ'), ('ΣΣ', 'ΣΑ'),\n", " ('ΣΑ', 'ΑΑ'),\n", " ('ΑΣ', 'ΑΑ') ]\n", "ND_stag_hunt.add_nodes_from(vlist)\n", "ND_stag_hunt.add_edges_from(elist)\n", "print(\"Stag Hunt: Δυναμική Βέλτιστης Απόκρισης\")\n", "nx.draw_circular(ND_stag_hunt, with_labels = True, width=2.0, node_size=1000, arrowsize=20)" ] }, { "cell_type": "code", "execution_count": 12, "id": "e85598f5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Πέτρα - Ψαλίδι - Χαρτί: Δυναμική Βέλτιστης Απόκρισης\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAb4AAAEuCAYAAADx63eqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAABij0lEQVR4nO3deXhMdxcH8O+syWSRXZZmRdCEWFISS4gg4rWW2ou39mqpUlRbS1G0tFqUWqtVlKJ2ErHEloRGIsROQkJkz2Sf9b5/eDMVsoxkZu5k5nyex/Mw2z3TZnLmd+/5ncNhGIYBIYQQYiS4bAdACCGE6BIlPkIIIUaFEh8hhBCjQomPEEKIUaHERwghxKhQ4iOEEGJUKPERQggxKpT4CCGEGBVKfIQQQowKJT5CCCFGhRIfIYQQo0KJjxBCiFGhxEcIIcSoUOIjhBBiVCjxEUIIMSp8tgMghOgvcakM157kITFNjNjkHGQUlEGmYCDgceDYwBQBXnbwc7VCW3cbWIkEbIdLiFo4NIiWEPKqxLR8bL7wCBG3MiDkcVEqU0CufP1XBZ/LgUjAg1ShRKiPIyYGNYKfq7XuAybkDVDiI4SopItLMWNPAhLTxJDIFagk11WJywFM+Dz4uVrhx2Gt4Wwl0l6ghNQBJT5CCBiGwV9xaVh0JAlSubLS1Z26+FwOhHwuFvXzxRB/V3A4HA1GSkjdUeIjxMgxDIPFR2/hz6upKJUpNPa6IgEPw9u5YUFfH0p+RK9QVSchRkxbSQ8ASmUK/Hk1FUuO3dLo6xJSV5T4CDFif8WlaSXplSuVKbD7Sir2/pOqldcnpDYo8RFipNLFpVh0JElrSa9cqUyBRUeS8FxcptXjEKIuSnyEGKkZexIglSt1ciypXIlP9sTr5FiE1IQSHyFG6HpqPhLTxHWq3nwTciWDxDQxEtPydXI8QqpDiY8QI7Tl4iNI5No9xfkqiVyBzRcf6fSYhFSGWpYRYmTEpTJE3MqocnN6UWIk8i/uguvUbQCAtJ/Hwr7vLJh6+CH/wk6UPbkBU/eWEEfvBYdXsU0ZIyuDy+RNENi4vPa6SgaISMqAuFRG7c0IqyjxEWJkrj3Jg5DHhaSO1/fM3w6Cfb/PKtz2eEXfap8j5HMR/yQPwc0a1unYhNQFneokxMgkpolRIpNX/QAuF2AqPw3KMEpwuLX/tVEqVSAxTVzr5xOiCZT4CDEysck5UFSz2OOJGkBRlAdG+XryUxRkgWtmVetjy5UMYpJzav18QjSBEh8hRiajoPr9dMK3mgNcHkrvx1a4XSmToDT5GkzdWmr1+IRoG13jI8TAyOVyZGZmIiMjA8+fP8fz588r/D3VpT9gUvWqjWdqgQbtBiD39BbwbV8UqShlZcgN/xlcoQjmLUJQELu/1vHJFNQemLCLEh8h9YBSqUROTk6FBPZqQiv/e3Z2NqrrPe88MRjCahIfAFh3HQMwSqRv/xRQyJG1fylMXJrBcfg34ApN6/ReBDxqWE3YRYmvGjR9mmgTwzAQi8VVJrCX/52RkQGFQr19dxwOBw0bNoSTkxMcHR3h5ORU4e9/PLPF7dzqKzo5HC5suo2DVaeReLZxImzDPoaZd4Am3jYcG9QtcRJSV5T4KqHO9OmHWcW4kpxL06fJa4qLi6tdkb38b4lEovbr2tjYvJbMKktuDg4O4POr/mhnn76P+2fuq9W1hSs0BbhccIWaGSrL53IQ6GWnkdcipLZoHt9LaPo0qYpEIlElrppONxYVFan9uhYWFlUmsJeTW8OGDWFiYqKR93L2biam745HoaSaLQ1aYmnKx9rhbWgfH2EVrfigmenTSuZFF/q4x3no/kMUTZ+uB+RyObKystRaneXn56v9uiYmJtWuyF7+u7m5ufbeYBXauttAWt1+Bi2SypVo427DyrEJKWf0iU/TgzjlSgZyqQILDyfhdnoBTZ/WMaVSidzc3GpPL5b/vaYikJfx+XzVdbOaTjc2aNBAr/+fW4kECPVxxLEb6W90VqOuuBwg1NeRrocT1hl14tPF9GkOB1jQ11ejr21sGIZBQUFBjdWMz58/R2ZmJuRy9U7hcTgcODg4qLU6s7W1BbcOHUv0zcSgRoi8nan1WXwvM+HzMCmosc6OR0hVjDrx6Wr6dHOnBhj6jptWjlGfFRcX11j8Uf73Ny0CqakAxMnJqcYiEEPm52oNP1crxD3O08loIj6XAz9XK7R8q/ZdXwjRFKMtbkkXl6L7D1EokWr/G6+ZkIczM4PhZGX4ZdwSiQSZmZlqrc5qUwTi6OgIR0dHODs7V5rcHB0dNVYEYuh0/Rl4T3QLTg1MERYWBk9PT4NaQZP6xWgT37BN0Tr9tuvvYYM9kzrU+Ng7d+7g+++/x6hRoxAcHKz12NRRXgSizuosLy9P7dctLwKpaXXm6OgICwsLLb5D47X3n1QsPJyk1VOeIgEPE9taYda7HVW3WVhYoGXLlmjZsiX8/Pzg5+eHli1bwtraWmtxEFLOKBPf9dR8DN8co9PrGyIBD3smBVa5z6+srAzLli3DihUrIJPJEBoaivDwcK3FU14Eok4nkKysLLWLQHg8nipxVVee7+joCCsrK70uAjEG2rzODbz4uR/R3g1fhDVDw4YNa/xi5OnpiV9++QW9evXSeCyElDPKCxxsTp9eO7zta/dFRkbiww8/xIMHD1S3paenv/ExXi4CUacTSG2KQGpandnZ2dEprHqEw+FgQV8fANB48itPevP7vKhsXr9+PUaMGFHtc1JSUnD16lVKfESrjG7FJy6Vof2yyCqHcCqlpXi25SNYdx0NC99uL26TlODZ1o9gEzIepQ+uovhWFDi8l78zMGBkErjPOQQOl1flsU34XFz5ooeqnDsjIwOzZs3Czp07X3usg4MDMjMzAQAlJSVqbZx+/vw5ysrU73xvbW1dYzIz9iIQY6GJvazl+FwOhHwuFvXzrVDUpVAo4Ofnh1u3blX5XF9fX1y5cgVmZma1Pj4hNTG632Y1TZ/mCkWwC/sI2Ue+h8irLXhmVsg79yuETk1g3rwzSh9cRYPAwbDpMlr1HHl+Bp7+Mr7GY5dPn+7ibY9ffvkF8+bNQ0FBQaWPzcrKQpMmTZCZmYnCwkK135+5ubnanUBMTQ2/2IbUrKysDJ988gm2bNmCkROmQuo/ss7di34a1ua1Yi4ej4eFCxdi2LBhlT5fJBJh7969lPSI1hld4qtx+jQAUSN/iBq3Q+6pjbBsHYaS2xfhMmF9nY9dPn16yoAuuHv3bo2Pf/jwIQBAKBSqtXGaikDImzpx4gQ+/vhjPHr0CADw6OY1XNq49kW/2ouPEJGUASGfi1Lp6/1qgRerO5GQB6lciVBfR0zsXH2/2vfeew8tWrTAzZs3X7vPzMzsjb7kEVJbRpf4apo+Xc6mx0Skb/4QZSkJsAkZB55F3dsslU+flkqlaj1+//79CAkJoSIQonEpKSmYMWMGDh06VOH2nj17Anixz2/t8LYQl8oQ//8JJTGVTCgJ/P+EkjZqTijhcrlYuHAhhgwZUuF2Ozs75OTkoHPnzvj222/x6aef0s880RqjS3zqTn/mmVpAYO8OydM7MGvaseYnvMHxHzx4gKioKGzbtg379u2r8rqcSCSi8m6iUWVlZVi5ciWWLVtW6c+dh4dHhX9biQQIbtYQwc0aYjq8NRLDoEGD4Ofnh8TERABA8+bNcenSJSxZsgQ//vgjZs2ahXPnzmH79u2wtbXVyDEJeZnRld+pO/256OZZyMWZMPVshbxzv2r0+FwuF926dcOOHTvw7NkzrFu3Dq1bt37tsc+fP9fYcQk5ffo0WrRogQULFlT5Zeutt97Sehzlqz4AMDU1xd69e2Fra4vVq1fj4MGDsLa2xpEjR9C6dWtcvnxZ6/EQ42N0iU+d6c+K4nzknd4Mu97TYBv2MUruXERZ6uvXJDRxfBsbG3z00UeIj49HXFwcpk6dCiurF22d2OjcTwzXgAEDVNeNq6KLxAcA7777LtavX4/jx4+jZcuWqtsHDBiAhIQEBAYGIjU1FV26dMG3334LpZKdaRLEMBld4lNn+nPuqV9g1jQQph5+4FvYwrrbB8g5sQ6MXKbV47dt2xY///wznj17hvj4+NeugxBSF0uWLIFQKKz2MS4uLjqJhcPh4MMPP0S3bt1eu8/DwwPnz5/HZ599BoVCgc8//xx9+/ZFVlaWTmIjhs/oEl+Alx343KpXfSX3oiFJuwWbbuNUt1m26gWehS3yL+2u07HVnT5tZmaG1q1b08V9olGffvopEhIS0Llz50rv16drygKBACtXrsTRo0dha2uLEydOoHXr1jh//jzboREDYHQb2Gn6NDF2f/75Z6UdVJo0aYL79++zEFH1UlNTMWLECFy6dAlcLheLFy/GvHnzqEMQqTWj+8mh6dPEmOXm5uKTTz4BACxfvhwDBw5U3aer63tvys3NDefOncO8efOgVCrx1VdfISwsDBkZGWyHRuopo0t85dOnqznbqRU0fZrog9mzZyMzMxOdO3fGnDlz8Pfff2P//v1o3bo1xowZw3Z4VeLz+Vi2bBlOnjwJe3t7nDp1Cq1bt8aZM2fYDo3UQ0Z3qhMAEtPyMWyT7qczNE4+hLQb0fDz84OVlRVEIpHqj5mZmervQUFBr+2nIqSuzp49i5CQEAiFQly/fh3NmzdnO6RaefbsGUaOHImoqKgXTbYXLMD8+fPB41XdJ5eQlxll4gPYmcf315ROao33ad26NeLj47UeFzEepaWl8PPzw4MHD7B48WLMnz+f7ZDqRC6XY/HixVi6dCkYhkG3bt2wc+dOODs7sx0aqQeM7lRnuR+HtYaQr5u3L+Rz8dOwNvj000/VenxgYKCWIyLGZvHixXjw4AF8fX0xd+5ctsOpMz6fj8WLFyMiIgKOjo44e/YsWrdujVOnTrEdGqkHjHbFB+hu+vTX/V+MZ1EqlejZs2e11yXMzc3x4MEDODk5aS0mYlyuX78Of39/KJVKXLp0CR06dGA7JI16/vw5Ro0ahTNnzoDD4eCLL77AokWLaJQWqZLRrvgAYIi/K4a3c4NIoJ1rA+WDOMtnknG5XGzfvl3VmaUyY8eOpaRHNEahUGDChAlQKBT46KOPDC7pAYCTkxMiIiKwePFicDgcfPPNNwgJCcHTp0/ZDo3oKaNOfOXTp7WR/F6ePv0yNzc3rF9f9YijDRs2YPLkybWawE7Iq9asWYN//vkHrq6uWLZsGdvhaA2Px8P8+fNx+vRpODs748KFC2jdujVOnDjBdmhEDxn1qc5yupg+/erxRowYgT179lS4vUuXLrh06RIUCgXMzMwwa9YszJ49G5aWlrWOhxivlJQU+Pr6oqSkBIcPH0a/fv3YDkknMjMzMXr0aERERAAA5syZg6VLl0IgoK1E5AVKfC9JF5dixp4ErUyfflVubi5atmyJZ8+eAQCaNm2Kmzdv4tGjR5g3bx7+/vtvAICDgwMWLVqEiRMn0geXqI1hGPTu3Rvh4eEYOnToa1+yDJ1SqcS3336L+fPnQ6FQoGPHjti9ezfc3d3ZDo3oAUp8lUhMy8fivZdw5ZkEPDDgmYg0Mn36VeHh4QgLCwMAHDhwAO+++67qvkuXLmHOnDmqsSze3t5Yvnw5Bg0aRD08SY127tyJ999/H9bW1rh9+7bRXje+ePEihg8fjqdPn8LW1hbbt283mpUvqRolvip88sknWLtxK/47axFahwzQyPTpymzevBmZmZn44osvXktoDMPg4MGD+Pzzz3Hv3j0AQIcOHfDdd99V2WiYkOzsbLz99tvIzs7G1q1bMW7cuJqfZMCys7MxduxYHD9+HAAwc+ZMLF++vMZJFcSAMaRSzZo1YwAw58+fZzsURiqVMuvXr2caNmzIAGAAMAMHDmRu377NdmhED40ePZoBwHTr1o1RKpVsh6MXFAoF89133zF8Pp8BwLRv355JTk5mOyzCEkp8lUhJSWEAMJaWloxUKmU7HJWCggJm4cKFjJmZGQOA4fF4zJQpU5j09HS2QyN6Ijw8nAHAmJiYMPfu3WM7HL1z+fJlxt3dnQHAWFtbMwcOHGA7JMICo97OUJXw8HAAQPfu3fWqoMTS0hKLFi3CgwcPMHnyZADAL7/8giZNmmDRokUoKipiOULCpuLiYkyZMgUAsGjRInh7e7Mckf7p0KED4uPj0b9/f+Tn52PQoEGYPn06JBIJ26ERXWI78+qjQYMGMQCYDRs2sB1KtW7dusUMGDBAdfrT0dGR2bBhg16tUonuzJo1iwHAtGrVin4GaqBUKpnVq1czAoGAAcD4+/szDx48YDssoiNU3PIKuVwOe3t7iMViPHr0CF5eXmyHVKOLFy9i9uzZiImJAfBia8SKFSswcOBAqgA1EnFxcWjfvj0AICYmBu3atWM5ovrh6tWrGDp0KFJSUtCgQQNs2bIFQ4YMYTssomV0qvMVV65cgVgshre3d71IegDQuXNnXL58Gfv27UOTJk1w7949DBo0SHU7MWwymQwTJkyAUqnEJ598QknvDbRr1w7x8fEYNGgQCgoKMHToUEydOhVlZWVsh0a0iBLfK8qv7/Xq1YvlSN4Mh8PB4MGDcevWLaxbtw4ODg64fPkyOnXqhMGDB6u2QxDDs3r1aiQkJMDDwwOLFy9mO5x6x9raGvv27cPatWshFAqxYcMGdOjQAffv32c7NKItbJ9r1TcBAQEMAObIkSNsh1InYrGYmT9/foUK0A8//JB5/vw526ERDbp//z5jamrKAGBOnDjBdjj1XlxcHNO4cWMGAGNhYcHs2rWL7ZCIFlDie0lOTg7D5XIZgUDAFBYWsh2ORjx9+pSZOHEiw+VyVR/mr7/+2mDenzFTKpVM9+7dGQDMqFGj2A7HYIjFYmbo0KGqorEJEyYwJSUlbIdFNIgS30v27Nmj2vhraJKSkph+/fqpPsxOTk7Mxo0bGZlMxnZopJZ+/fVXBgBjZ2fHZGZmsh2OQVEqlcyGDRsYExMTBgDTokULahhhQOga30vKr++FhoayHInm+fj44PDhw4iKikL79u3x/PlzTJ48GS1btsShQ4fAUHFvvZKRkYGZM2cCeHGNz8HBgeWIDAuHw8GUKVMQGxuraiDv7++P33//ne3QiCawnXn1hVKpZN566y0GAHPt2jW2w9EqpVLJ7N27V3UtAwDTuXNnJjo6mu3QiJqGDx/OAGB69uxJbcm0rKCggBk1apTqs/Lf//6XKSoqYjssUgeU+P7v5s2bDACmYcOGjEKhYDscnZBIJMyaNWsYe3t71Yf6vffeo1ZXeu7YsWMMAEYkEjEPHz5kOxyjoFQqmS1btqgKiXx8fJibN2+yHRapJTrV+X8vn+bkco3jP4tQKMS0adPw8OFDfPnllxCJRNi3bx98fHzw8ccfIzMzk+0QySsKCwtVbcmWLFmCRo0asRyRceBwOBg/fjyuXr2Kt99+G7du3UK7du2wbds2ukxQH7GdefVFaGgoA4DZsWMH26GwJi0tjRk/fnyFCtAlS5bQaR09Mn36dFWLLSpMYkdRUREzduxY1VmSUaNGUZV0PUOJj2GYkpIS1SmMjIwMtsNh3Y0bN5g+ffqoPtjOzs7Mpk2b6Bcty2JiYhgOh8PweDyDvw5dH2zfvl21T7Zp06bM9evX2Q6JqMk4zunV4Pz58ygrK0ObNm3QsGFDtsNhXYsWLXD06FGcPXsW77zzDtLT0zFp0iT4+fnhyJEjdGqHBVKpFBMmTADDMJg1axbatGnDdkhGb+zYsbh69SpatGiBe/fuoX379ti4cSN9PuoBSnyov23KtC04OBixsbH4888/4eXlhdu3b6N///4IDg7GlStX2A7PqKxcuRI3b95Eo0aNsHDhQrbDIf/n4+OD2NhYTJgwARKJBFOmTMGIESNQUFDAdmikOiyvOPWCj48PA4A5e/Ys26HorbKyMubHH39k7OzsVKdAhw4dSqNcdODOnTuqjdSRkZFsh0OqsHPnTsbCwoIBwDRp0oROR+sxo098T548URVySCQStsPRe/n5+cy8efNU10T5fD4zbdo06hyiJQqFgunSpYtq/xjRb3fv3mVatWrFAGCEQiGzbt062meph4w+8W3ZsoUBwPTr14/tUOqV1NRU5oMPPmA4HA4DgLG0tGS++eYbpri4mO3QDMqmTZsYAIyDgwOTnZ3NdjhEDSUlJcyUKVNUZ0YGDx7M5OXlsR0WeYnRX+Oj63u14+rqim3btuH69evo3bs3CgsL8eWXX8Lb2xvbtm2DQqFgO8R6Lz09HbNnzwYArFmzBnZ2dixHRNQhEomwYcMG7NmzB5aWlti/fz/atm2Lq1evsh0aKcd25mWTXC5nbGxsGADM/fv32Q6nXjt9+jTTtm1b1bdcX19f5ujRo3Sapw4GDx7MAGD+85//0H/Heur+/fuqz4VAIGB+/PFH+n+pB4w68cXExDAAmEaNGrEdikFQKBTMrl27GE9PT1UCDA4OZq5cucJ2aPXOwYMHGQCMubk58/jxY7bDIXVQVlbGTJs2TfWZGDBgAJOTk8N2WEbNqE910mlOzeJyuRgxYgTu3LmDH374Aba2tjh37hzat2+P4cOH4+HDh2yHWC+IxWJMnToVALBs2TK4u7uzHBGpCxMTE6xZswb79++HlZUVDh06hDZt2iAmJobt0IwX25mXTR07dmQAMAcPHmQ7FIOUl5fHzJ07V1WKLxAImE8++YTJyspiOzS99uGHHzIAmICAAEYul7MdDtGgR48eMe3atVNVRK9cudJomuLrE6NNfHl5eQyPx2P4fD4jFovZDsegPX78mBk7dqyqArRBgwbM8uXLaap1JS5evKj6pZiYmMh2OEQLJBIJ8+mnn6pOffbp04cqdnXMaBPfvn37GABMUFAQ26EYjYSEBKZXr16qD7yrqyuzbds2WtX8X1lZGdO8eXMGAPPll1+yHQ7RskOHDqmK61xdXZkLFy6wHZLRMNprfHR9T/datWqFkydP4tSpU2jTpg3S0tIwbtw4tG7dGidOnDD6HofLly/HnTt30LRpU3z11Vdsh0O0rH///oiPj0dgYCDS0tIQHByMFStWQKlUsh2a4WM787JBqVQy7u7uDADm6tWrbIdjlBQKBfPHH38wHh4eqhVgSEgI888//7AdGiuSkpIYgUDAAGDOnTvHdjhEh6RSKTN79mzV56BXr140JUbLjDLx3b59mwHA2Nvb04VllpWWljKrVq1SnfIBwIwYMYJ59OgR26HpjEKhUBVaTZw4ke1wCEuOHj2q6oXr7OxMX4C0yChPdZaf5uzZs6fRTFvXV6amppg1axYePnyI2bNnw8TEBLt370bz5s0xc+ZM5OTksB2i1v3yyy+4fPkynJyc8N1337EdDmFJnz59kJCQgM6dOyM9PR0hISFYsmQJdUHSBrYzLxt69+7NAGC2b9/OdijkFSkpKcz777+vqgC1srJiVqxYYbAVoKmpqYylpSUDgNm3bx/b4RA9IJPJmHnz5qnOgHTv3p15/vw522EZFA7DGFdFQVlZGWxtbVFaWopnz57B2dmZ7ZBIJeLj4zF37lycOnUKwIveoEuXLsX7778PHo/HcnT/EpfKcO1JHhLTxIhNzkFGQRlkCgYCHgeODUwR4GUHP1crtHW3gZVIUOG5DMNg4MCBOHz4MAYMGIC///4bHA6HpXdC9E14eDhGjx6NrKwsODo6YufOnejevTvbYRkEo0t8kZGR6NmzJ/z8/HD9+nW2wyE1iIiIwJw5c1T/r/z8/PDdd98hNDSU1SSRmJaPzRceIeJWBoQ8LkplCsiVr3+U+FwORAIepAolQn0cMTGoEfxcrQEA+/btw5AhQ2BpaYnbt2/jrbfe0vG7IPru2bNnGDVqFM6dOwcOh4P58+djwYIFevXlrz4yugtctI2hfgkNDcW1a9fw+++/w83NDYmJiQgLC0NoaCji4+N1Hk+6uBTDNkVj2KYYHLuRDolciUKJvNKkBwByJYNCiRwSuRLHbqRj2KYYDNsUjTtPnmPatGkAgG+//ZaSHqmUi4sLIiMjsWDBAgDA4sWL0aNHDzx79ozlyOo3o1vx+fn54caNG4iMjKTTBvVMWVkZ1q5di2+++QZisRgAMGrUKCxduhSenp5aPTbDMPgrLg2LjiRBKldWmejUwedywChkyDi+Dq0alOLC+fNUZEVqdPr0aYwaNQoZGRlwcHDAH3/8gdDQULbDqpeMKvE9e/YMb731FszMzJCbmwsTExO2QyK1kJubi2XLlmHt2rWQSqUQCoWYNm0avvjiC9ja2mr8eAzDYPHRW/jzaipKZZqrsFNKy/CuX0P8OKYzXdsjann+/Dnef/99nD59GgAwb948LF68GHw+n+XI6hej+poZEREBAAgODqakV4/Z2tpi1apVuHv3LkaNGgWpVIrvv/8ejRs3xqpVq1BWVqaxY2kr6QEAV2iKiIfFWHLslkZflxguJycnhIeHY/HixeByuVi+fDm6deuGtLQ0tkOrV4wq8dH1PcPi6emJP/74A3FxcejevTvy8/Mxe/ZsNGvWDDt27NBI66e/4tK0kvTKlcoU2H0lFXv/SdXK6xPDw+PxMH/+fJw5cwbOzs64ePEiWrdujePHj7MdWr1hNIlPoVCoSuMp8RmWtm3b4tSpUzh58iRatmyJJ0+eYMyYMfD391f9P6+NdHEpFh1J0lrSK1cqU2DRkSQ8F2tupUoMX9euXZGQkIBevXohJycHffr0wZw5cyCTydgOTe8ZTeK7du0acnJy4OHhgaZNm7IdDtEwDoeDXr16IT4+Htu3b4erqysSEhIQGhqKXr16ISEh4Y1fc8aeBEjlumkYLJUr8cke3VepkvqtYcOGOH78OJYvXw4ej4eVK1eia9euePLkCduh6TWjSXzl1/d69epFhQQGjMfjYezYsbh37x5WrFgBKysrREREoG3bthgzZgweP36s1utcT81HYpq4TtWbb0KuZJCYJkZiWr5OjkcMB5fLxeeff45z587B1dUV0dHRaN26NQ4fPsx2aHrLaBJf+fU9Kv81DiKRCHPnzsXDhw/x6aefgs/nY8eOHWjWrBnmzJmDvLy8ap+/5eIjSOS67ZEokSuw+eIjnR6TGI7OnTsjPj4effr0QV5eHgYMGICZM2dCKpWyHZreMYrEV1BQgOjoaPB4PNq7Z2Ts7Ozwww8/4O7duxgxYgQkEglWrlyJxo0b4/vvv6+0AlRcKkPErQxUtdhTSkuRtn4cipLO/nubpARp6z9A8Z2LyDqwDDkn1lR4Tub+pciN2FBtrEoGiEjKgLiUrtGQ2rG3t8fhw4excuVK8Pl8rF69Gp07d0ZycjLboekVo0h8Z86cgVwuR0BAAKytrdkOh7DAy8sLu3btwtWrV9GtWzfk5eXhs88+Q/PmzbFz584KFaDXnuRByKv6o8EVimAX9hHyIjdDUfJiI33euV8hdGoC8+adYRv6IUruRqPscSIAoPj2eUgzHsI6+L81xinkcxH/pPrVKCHV4XK5+Oyzz3DhwgW4u7vj6tWraNOmDQ4cOMB2aHrDKBIfbWMg5d555x2cPn0ax48fR4sWLfD48WO8//77qtsBIDFNjBKZvNrXETXyh6hxO+Se2oiyx4kouX0RdqFTAQA8CxvYhIxHzom1kIszkXtqE+zCPgZXKKoxvlKpAolp4rq/UWL0AgMDER8fj/79+0MsFmPw4MGYNm0aJBIJ26GxzuA7tzAMg8aNGyM5ORkxMTEICAhgOySiJxQKBX7//XfMnz8fT58+BQCEhYVB0GsWEjNq/uWgKCtC+uYPwSgVsOn2ASz8ela4P2PPfEifP4So8Tuw7ztT7bg6NrbDrgmBb/ZmCKkCwzBYs2YNZs+eDZlMhrZt22LPnj1o0qRJrV6vLhNJ9IXBJ7779++jadOmsLW1RWZmJnU1J68pKSnBmjVrsHz5chQUFMBl4gYI7NzUem7G7i8heXoHrh//Dq6peYX78i/9CfGFP9Bw2BKIvNqoHU9jB3Ocnhn8Jm+BkBpdvXoVw4YNQ3JyMiwtLbFlyxYMHTpU7edrYiKJvjD4xLdu3TpMmzYNQ4cOxZ49e9gOh+ix7OxsLF26FPskLcG3dqrx8UU3z0J8cRcE9m7gWdjCLuxj1X2y3KdI/20mzH2DIUlNgvN/fwSHp14/RYU4A/wTS2Bvb6/WH1tbWwgE+vnNmuiX/Px8TJgwAfv37wcATJkyBatXr4apqWmVz0kXl2LGngQkpokhkSuqLPqqDJcDmPB58HO1wo/DWsPZqubT/bpg8ImvX79+OHr0KLZu3Ypx48axHQ6pB4JWnEKquPoScEVxPp5tmQqHgZ+Db+eK9C1T4TD4K5i6tQDDMMjYNQ+m7i1h1XkEnu+YDVHjdrDuNFyt40uznyB9y9Q3itna2lrtRGlvbw9ra2s6+2GkGIbB+vXrVVsdWrVqhb17977W2EPTE0mEfC4W9fPFEH9X1vdSG3Tik0qlsLW1RXFxMVJTU+Hq6sp2SKQeGLklBpcf5lT7mKyDK8A1MYNd7+kAgMLr4SiI/Rsu49aiKDEChdeOwfmDn8DhCSDNfoLnv8+C89gf1DqF2t7DCitCXZCdna3Wn5ycnDfuS8rlcmFjY/NGydLKyor1X1hEc65du4ahQ4fi4cOHMDc3x8aNGzFq1CgA2mvOLhLwMLydGxb09WH1Z8mgE9/Zs2cREhICX19f3Lx5k+1wiB57+vQpwsPDcfLkSVwptgXXry+UqPyDWXIvGrkRG+AyYT24phaq25/v+gJ8q4YouRcNx6Ffw+St5qr78i/uQllKAhxHfVvtB57P5WB6iDemd/dWO3alUon8/Hy1E2V2dnaNG/grjY3Ph52d3RslS3Nzc0qWeqygoACTJk1SXQaaMGECfvzxR6w6k6K15uwiAQ8j2rthQV9fjb+2ugw68X3++ef49ttvMXPmTHz//fdsh0P0iEQiwaVLl3Dy5EmcPHkSN27cUN1n2sgfbsMWQMro/lSgpSkfa4e3QXCzhlo9jlwuR25u7hsly8LCwjc+jomJyRslSjs7O4hE+nEdyFgwDIPNmzdj+vTpkEgkaD3oQ5T59tdqc3aRgIev+/ti6DvqFZFpmkEnvjZt2iAhIQHh4eHUqowgOTlZlehOnz6N4uJi1X3m5uYICQlBWFgYOgX3wNDdDyHRUYPql5nwubjyRQ+9LAOXSCTIyclRO1FmZWXVajaiubn5G60s7ezsIBQKtfCOjUtiYiJGTfwIhV1mAnzt//c0E/JwZmYwnKyqLqzRFoNNfBkZGXBycoKpqSlyc3PpW6QRKikpQVRUlCrZ3bt3r8L9LVu2RFhY2Itk16lTheHE03Zfw7Eb6W9UwVZXXA7Qx88Za4e31d1BtaykpOSNVpXZ2dm1GqvToEGDN1pZ2traUnFPJYZtikbc4zydNGfncznw97DBnkkdtH6s146t8yPqSPk0hq5du1LSMxIMw+Du3buqRBcVFVVhxWFlZYWePXsiLCwMvXr1qrbYaWJQI0TeztT6LL6XmfB5mBTUWGfH0wUzMzO4u7vD3d1drcczDIOioqI3TpYFBQUoKCjAo0fqNfnmcDi1Ku7hcutPs6vIyEhkZGRg+PDhaiV5NieS6Hqfn8EmPmpTZhwKCwtx+vRpVbJ7deyQv78/wsLC0Lt3bwQEBIDPV+9H3s/VGn6uVjr99uvnaoWWb1lp/Vj6jMPhwNLSEpaWlvDy8lLrOeXFPW9yGjY3N1f159UzAVXh8XhqnYJ9+TGWlpasFfcMHz4cOTk5+P777/Hzzz+jQ4fqV1ZsTiTR9VkOgzzVqVQq4eTkhKysLCQlJcHHx4ftkIiGMAyDxMREVaK7ePEi5PJ/+2ra29ujV69eCAsLQ2hoKBo2rH2RSLq4FN1/iEKJVPu/DNi83mGM5HI58vLy3nhV+aYEAsEbrSrt7e1hZmZW5/dXVlb22pmucePGYcWKFXBwcHjt8eJSGdovi6zyunZRYiTyL+6C69RtAIC0n8fCvu8smHr4If/CTpQ9uQGhUxPIsh7DcfgS1fNyIzdBnpeOhkMWVhkrG9e1DXLFl5CQgKysLLi6uuLtt99mOxxSR7m5uYiMjMSJEycQHh6O9PR01X1cLhcdO3ZE7969ERYWhrZt22rsdJSzlQiL+vli4eEkrVe4LernS0lPh/h8PhwcHCpNAlWRSqVvtKrMzs5GSUkJ0tPTK/zM1kQkEr1xJezL16cBICfn9X2o27Ztw4EDB7Bs2TJMmjSpwunP8okkdSnosu7yPtK3TkNR4ilY+PWE5OltFN84DefxP1f7vPKJJNquZH6ZQSa+l09z0h6i+kehUCAuLk61qouNja2wQdvFxUVVlNKjRw/Y2NhoLZYh/q64nV6g9T1NbJV1E/UJhUI4OzvD2dlZ7eeUlJRUSJY1Jc6srCyUlpYiNTUVqampah/H0tKyQjKs6stffn4+pk6dis2bN2PDhg2qpv01TiThcgGm8p9/hlGCw+WCKzCFXe9pyPp7OUw9WiH7+E+wDv4v+A3sq429fCIJJb46out79U9GRgYiIiJw4sQJREREVPjGKhAI0LVrV1Wya9mypc6+0HA4HCzo++JUuaaTn6mAixHt3TC/D52KN1RmZmYwMzODm5t6X2wYhkFxcfEbF/cUFhaisLBQ7YGz8fHxCAwMxOjRo/H7778jNjkHimoWezxRAyiK8sAoFeBwKxbKKAqywDV7cW3a1MMPZs07IX37DAgcPGDROqzGWORKBjHJOZgO9Zs21JXBJb7CwkJcvnwZXC4XPXr0YDscUgWZTIaYmBjVqu7atWsV7vf09FSdvuzWrRssLS1ZivTf5Pe2cwMsOpIEiUwBRR2ujCsVMkAhhzhqJ2wcQiCTedM+NALgxc+ahYUFLCws4OnpqdZzGIaBWCyukAiPHTuGX375pcbnlifKjILq91sK32oOcHkovR8Ls2YdVbcrZRKUJl+DdaeRqttMXH1RlHAS5j5d1f6CWtPxNc3gEt+5c+cgk8kQGBio1VNg5M2lpqYiPDwcJ06cQGRkZIViAVNTUwQHB6sqML29vfXqNDWHw8HQd9wQ6GmNbl9sh9LSBVyBEOCofz2xvFO9px0f+Sd+REz0SUyPPoiffvoJy5cvx3vvvadX75nUDxwOB9bW1rC2tlbN2Hu1uvllfD4fAwcOxJgxY9C3b18AgKyGb3I8Uws0aDcAuae3gG/rAgBQysqQG/4zuEIRzFuEAAAUpQXIO7sVlu8MgPjCTpg371yhrV9Vajq+phlc4is/zUmdWtgnkUhw4cIF1aouKSmpwv3NmjVTreq6dOlSL/Zb7tryMx5tngcv/64Im7ESp+9mQ8jnolRazWwyIQ9SuRKhvo6Y2PnFbDJmVigOHz6MuXPn4u7duxg6dCjat2+PlStXokuXLhqP2xCGhxL1ZWdnv3abh4cHJk+ejA8++ABOThXHbgl4NX/hsu46BmCUSN/+KaCQI2v/Upi4NIPj8G/AFb4ozMqL3AyRlz9se0yEoigXeWe2we4/02t8bXWOr0kGt53B29sbDx48wKVLl9CxY8ean0A06uHDh6pEd+bMGZSUlKjus7CwQPfu3VUbyNXdp6Uv7t+/Dz8/P5SVlSEiIgI9e/aEuFSG+P8nlJhKEkrg/xNKmyoSilwux9atW7Fw4UJkZGQAeDFKa8WKFRrZhmNIw0OJ+hYsWIAlS5aAy+Wib9++mDJlCkJDQ6vcyK7ORJJySmkZnm2cCNuwj2HmHaC6vfThVWQf/wkuEzaAJ7KsMLrL1MOv2tfs2NgOuyYEqv8G68igEt+jR4/QuHFjWFlZITs7W+3NyqT2iouLce7cOVWye/DgQYX7/fz8VKu6jh071ttrWQzDoHv37jh79izGjBmD3377TaOvX1RUhB9++AHfffcdiouLweVyMX78eCxatAguLi5v/HqGODyUqC8vLw9///03evTooVbXnJ9O38faM/fVbtbw8j4+AFBKSvBs60ew6TYO5m8HqR5XdOM0xJf/hPO4deAKTCp9rdpMJKkrg0p8GzZswNSpUzF48GDs27eP7XAMEsMwuH37tirRnT9/HhKJRHW/tbU1QkNDVau62vzS1kfbtm3D+PHj4eDggNu3b8POzk4rx8nIyMDXX3+NTZs2QaFQwMzMDDNnzsTs2bPRoEGDGp9vyMNDifacvZuJ6bvjUSipZkuDluhqIsnLDCrxDRw4EIcOHcKmTZswceJEtsMxGAUFBYiMjFQlu5f3F3E4HLRr10611aBdu3YGt9J+/vw53n77beTn52Pnzp0YOXJkzU+qo7t37+KLL77AgQMHAAAODg5YuHAhJk2aBIGg8mtwhj48lGhPTZ1btImNzi31NvHl5eXB398ffD4foaGh6N69O8aMGYOioiI8fvxY7aa45HVKpRLXr19XJbrLly9XaAvWsGFDVVuwnj17vlH3i/po2LBh2Lt3L8LCwnD8+HGd/vK/dOkS5syZg8uXLwN4cQ17+fLlGDRoUIU4tJX0yunD8FCiXcY0kaTeJr7k5GQ0atTotdvNzMwwf/589OrVC61atapX3dTZlJOTg1OnTqnagpUXWgAvmvN26NBBtdWgdevWRvPf9ciRI+jfvz/Mzc2RlJQEDw8PncfAMAwOHjyIzz//XNVQOTAwECtXrkTnzp0BAHv/SdVJazU2h4cS7UpMy8ewTTE6nUgiEvCwd3IHnTdnr7eJj2EY2NraIj8/v8rHuLi44ODBg2jXrp3uAqsnFAoFrl69qlrVXblyBS//KLi6uqpOX3bv3h3W1tbsBcuSgoIC+Pr6Ii0tDatXr8aMGTNYjUcmk6kqQDMzMwEAAwYMwNyvl2P8gcfUTJvUmbHM46u3iQ8AunfvjjNnzlT7mF27dmHEiBE6iki/PX/+HOHh4Th58iQiIiKQm5uruk8oFCIoKEhVgenjQ9dzpk2bhnXr1qFdu3aIjo7Wm8GlhYWF+P7777Fq1SoUFxej0cQ14Dg0NvhfVkT7jGUiSb1OfLNnz8aqVauqvH/ChAnYtGmT0f4Cl8lkuHz5smpVl5CQUOH+Ro0aoXfv3ujVqxe6desGC4uaOywYi+joaHTq1Ak8Hg9xcXHw86t+HxIbnj9/jvk/bsFZbivIGd2dehYJeNgzKZD2+RkoYzhtXq/L79q2rfqCaP/+/bFhwwajS3qPHz9WreoiIyNRWFiouk8kEqFbt26qa3Xl7Y1IRVKpFBMnTgTDMJg9e7ZeJj0AcHJygmmr/0B5Q/2RN5rA1vBQohvGMJHEIBNfx44dsXv3boMrq69MWVkZzp8/r1rV3b59u8L9Pj4+qmt1QUFBMDU1rmsztWnV9e233yIpKQne3t6YP38+y++gauJSGSJuZVRZhZe2fhyUJfkV+okySgVMnL3h9P53Nd5fFSUDRCRlQFwqo/ZmBkibE0nKkx7bE0nqdWbw9vaGhYUFioqKVLf5+PjgyJEjGplirI8YhsGDBw9Uie7s2bMoLS1V3W9paYkePXqoTmEa67YOdVp1PcwqxpXk3Aqtunq6cbF06VIAwKZNm/S6f6g6w0Md3lsAkWdr1b+LEiNRlBih9v1VYWN4KNGdVyeSaLIZgj5UBdfrxMflcuHt7Y34+HgALyoRT548CVtbW5Yj06yioiKcO3cOJ06cwMmTJ/Ho0aMK97dp00a1quvQoUOVG5yNQWWtuqpLDHIlo+pWcexGOo4myGAz+Gv0sEhDcHCwjqKunRqHh2oRG8NDiW6VTyQJ8rbXSPu7n4a10Ztq4Hqd+ADAyurF/g+hUIiTJ0+qPfBRnzEMg6SkJNWq7sKFC5BKpar7bW1tK7QFe7XTujHSRKsuJQOAK4Cp69uIM22Fvf+k6nWrrpqGh2oTG8NDCTucrUTYM6nDi7MoFx8hIimjVhNJ9Em9T3xz5szBvXv38P3338PXt/52lcjPz8fp06dVq7qnT5+q7uNwOAgMDFSt6t555x29Ka3XBxrvWsLjo1SmxMLDSbidXqC3rbp0PbxT345PdMvP1RpfdXsLC3s3w83nxbWeSKIP9D7x1Vyc0AR/nIlHW/f6NXRWqVQiPj5etaqLjo6GQvHvL21HR0dVouvZs6fWmiLXd9ps1VUqU+DPq6ngcKCXrbp0PbxT345PdOvPP//EiBEj0KhRIzx8+BDBzRrW2xW/3ia+2hYn6PMcsaysLJw6dQonT55EeHi4qvsG8GIqcteuXVXJzs/Pz2jagtXFX3FpWiu7Bl4kv91XUtHcqYFeXJR/ma6Hd+rb8YnuxMXF4b///S8AIDU1FQzD6OVZEHXpXeKra3FC5O1MvZkjJpfLceXKFdWq7p9//qnQFszd3V2V6EJCQlTXK4l60sWlWHREuxttgRfJb9GRJHTxdtCbi/MA4NjAFA+zilk9PjF89+/fR+/evVXjx2QyGVJSUurdIOmX6U3i01RxQqlMgbjHeej+QxQrc8SePXum2kB+6tQp5OXlqe4zMTGpsKpr3rx5vf7WxLYZexIg1dEYFalciU/2xOtVq64ALztcSc7VSauyV/G5HAR60el3Q5eeno7Q0FBkZWVVuD0+Pp4SX11p+jqNXMlALlW8cXHCw4cP8dVXX2H8+PHo0aOHWseSSqW4dOmSalWXmJhY4X5vb29VouvatSvMzc1r9Z5IRddT85GYJtbZL325kkFimhiJafl6cyrdz9UKIgGvyuGhrlO3vXabhV8PWPj1UOv+6oiEL0rUieHKz89HWFgYUlJSXrsvISEBgwYN0n1QGsJ64tOX4oT4+Hj07t0bGRkZSElJqTbxpaSkqBLd6dOnK2ygNzMzQ/fu3VVbDRo3bqyx90P+teXiI0jkuhufAuhfq6627jaQsrSfQSpXok09Kygj6istLUX//v1f+yJfrnzvdH3FeuLTh+KEc+fOoX///qq+lleuXEFOTo6qkrK0tBRRUVGqZHf37t0Kz2/RooVqVde5c2eYmJho5b2QF6pr1VWUGIn8i7tUq5m0n8fCvu8smHr4If/CTpQ9uQFJ6k04jlgGUw8/5J3fAUVBNuz7fgp5fgae/jIeb03ZCr6142uvrW+tuqxEAoT6OLIyPDTU11Ev/hsQzWMYBiNGjMCFCxeqfAwlvjrQh+KE/fv3Y+TIkRU2iCuVSvz+++/gcrk4efIkzp07h7Kyf/csWVlZoWfPnqpVnaurq1bjJxWp06pLW/StVdfEoEaIvJ2p0+GhJnweJgXRmQxD9eDBAxw6dKjaxzx9+hRZWVlwcHDQUVSaxWriY7s4YePGjfjwww9R2WSmmTNnVvi3v7+/alUXGBhoFA2w9VW1rbq4XICpPAkwjBIcLhfgcMEwr//cMeXPq2Ybib616vJztYafq5VOh4f6uVrpfGI20Z0mTZpg27Zt+Ouvv3D27NkKX/pflpCQgJ49e+o4Os1gbaMYm8UJDMPg66+/xpQpUypNesCLbikjRozAjh07kJGRgX/++QdLly5F586dKemxrLpWXTxRAyiK8sAoX09+ioIscM2swBU1gKIgq5L7swEOF1yRZZXHLm/VpU9+HNYaQr5uPspCPhc/DWujk2MRdnA4HHzwwQc4fvw4cnNz0aHDi8XCq60RHzx4wEZ4GsHab3A2ixPubvscp06dqvaxDMNg7ty5aNWqlY6iI+qqrlWW8K3mAJeH0vuxMGvWUXW7UiZBafI1WHcaCTAMSu7FwMKv4rfVknvREDo1AVdQ/f40fWvV5WwlwqJ+vlofHqqUlqGrbbFe7WUk2sXj8XDjxg0AL2of5HI5wsPDkZSUhAEDBrAcXe2xsuKrrjhBKS1F2vpxKEo6++9tkhKkrf8A4tgDeLyiL+T5GQCA7COrkH9hJwCg7HEiHq/oW+1xy4sTLl6JUyvOEydOqPmOiC5V1yqLZ2qBBu0GIPf0FkizUgAASlkZcsN/BlcognmLEFh1GIqylHgUxh0FlAoADIrvXETR9XBYB42q0/HZMsTfFcPbuUEk0E4PVz4UKLp+Er/MGYsZM2ZUaK9HDNelS5dQVFQEX19fuLm5wcvLC1OmTMHatWvh4uLCdni1xkriKy9OqAxXKIJd2EfIi9wMRYkYAJB37lcInZrAvFmnOh9byOfil7/CsWzZMkyfPh1dunRBgwYNKn1sZGRknY9HNK+mVlnWXcfA/O3OSN/+KRSFucjavxTyvHQ4Dv8GXKEphI6N4PDeAohj96Mg9gCKk84hN3w97P7zCUSN/Ot8fDaUz0/TRvITCXgY06kxVo8OgkAgwE8//YSBAweqqqCJ4Sr/8t+7d2+WI9EsVk511jRHTNTIH6LG7ZB7aiMsW4eh5PZFuExYD0b54jlMJcULDKOsMEm6KqVSBfK5Vpg3b57qNqVSieTkZMTHx6v+3Lx5E++8804t3h3RtppadXE4XNh0GwerTiPxbONE2IZ9DDPvgAqPEXm2xlsfbkXe6a1QFOXCvv9n4HDVSxj62qpL+8NDfeHl5Yl3330XR48eRefOnXH06FGDGAVGKnfy5EkAQFhYGMuRaBYriU+dOWI2PSYiffOHKEtJgE3IOPAsbKCUlgHgQFGQDYFNxWX2i8KFylduL6tsjhiXy0Xjxo3RuHFjvPfee7V5S0SH1G3VxRWaAlwuuMLKe7ZyOFxwhKbg8IVqJz19b9Wl7eGhXbp0QUxMDPr27YvExES0b98eR44coS+JBujp06e4ceMGzM3N0blzZ7bD0ShWTnWqUxzAM7WAwN4djEwCs6YvihS4QlMInZug5F70a48vuRcNU7eWGjs+0V/lrbrU4frRbzD18Kvyfpsuo2Hf91O1j11fWnWVDw/dMykQffycYcLnwtKUDz638tO0fC4HlqZ8mPC56OPnjD2TArFnUodKC1m8vb0RHR2N4OBgPH/+HF26dMGBAwe0/ZaIjpWv9kJCQgyuKQcrKz51igOKbp6FXJwJU89WyDv3K+zCPgYAWHcehay/l8HErcWLBzJKFMYdRVlKApzGfK+x4xP9Ra261Ofnao21w9tCXCpD/P/nWmpieKitrS3Cw8MxZcoU/Prrrxg8eDC+/fZbzJ49mxqvG4jyxGdo1/cAlhJfTcUBiuJ85J3eDIeBn4Nv54r0LVNh7hsMU7cWEDV+B3b/+QS54T9DWfaiRybP0g4O7y2AsKF63cL1sTiBqI9adb05K5EAwc0aanR4qFAoxNatW9G0aVPMmzcPc+fOxb1797B+/XoIhUKNHIOwQy6Xq7Z89erVi+VoNI+VU501FQfknvoFZk0DYerhB76FLay7fYCcE+vAyGUAAHOfrnD9+HeYeQeiQbsBeOvDrRB5ttbY8Yn+mxjUCCZ87ZTuV4Vadb2Ow+Hg888/x19//QVTU1Ns3boVYWFhFcZxkfonJiYGYrEYTZs2RaNGjdgOR+NYSXwBXnZVXmsouRcNSdot2HQbp7rNslUv8CxskX9pt+o2Do8PjkAIjsAUHDWqOcvpe3ECUU95q66qfo40jVp1Ve+9995DVFQUHB0dcfbsWXTo0KFed/Ywdoa6jaEch6mqZ5cWnb2biem746ucI6ZNlqZ8rB3eRm96LZLaSxeXovsPUSiRan8ztZmQhzMzg6lrSQ2ePHmCvn374saNG7Czs8Pff/+NoKAgtsMib8jf3x/Xrl3DiRMnDG4rA8DSio+KE4gmlLfq0la3knIiAQ+L+vlS0lODu7s7Ll68iN69eyMnJwc9evTAH3/8wXZY5A1kZGTg2rVrMDU1RdeuXdkORytYSXzlxQk6OkulUp+LE0jltN2qSyTgYUR7typnOZLXNWjQAIcPH8a0adMglUoxevRoLFiwoMqG8ES/hIeHAwCCg4MhElW+B7a+Y206AxUnEE3QdquuEe3dML+Pj0Zf1xjw+XysWbMGa9euBZfLxZIlSzBy5MgqR9wQ/WGo3Vpexso1vnLDNkXrdI6Yv4dNhXl8xHAwDIO/4tK01KqL1MXx48cxbNgwFBUVoUOHDjh48CAaNqRr7PpIoVCgYcOGyM3Nxd27d9G0aVO2Q9IKVhMfFScQTUsXl2qlVRepm8TERPTt2xepqanw9PTE0aNH4evry3ZY5BWxsbEIDAyEl5cXHj58aLDNCFg71QnorjhBKS1DT1sx/SIzApW16uLISqucyv4mrbpI7fn5+eHKlSto164dUlJS0LFjR0RERLAdFnnFy91aDDXpASyv+IAXp6gWH72FP6+mamWIJo+RI++fo8g7vQVfffUVvv76a3C5rOZ7okOX/0lA96Hj4dIiEAH9R9e5VRepm5KSEowdOxb79u0Dj8fDunXrMGXKFLbDIv8XGBiI2NhYHD58GP369WM7HK1hPfEB2kt+5cUJ9k/OY/r0aVAoFBg2bBi2b98OU1P6Rm8Mdu/ejZEjR2LgwIH4+++/2Q6H4MUYsK+++grLly8HAHz66adYuXIleDzdFruRinJycuDg4ACBQICcnBxYWFiwHZLW6MXSp7wy7+v+vjAT8urcjYPP5cBMyMPX/X2xoK8vpk79EEePHoWlpSX27NmDkJAQZGZmaih6os9u3rwJAGjRogXLkZByXC4Xy5Ytw7Zt2yAQCLB69Wq8++67KCoqYjs0oxYREQGGYRAUFGTQSQ/Qk8QH/DtH7PTMrvD3sIFIwHvjfX5czotVnr+HDc7MDK5QkRcWFoZLly7B3d0d0dHRCAgIwK1btzT8Loi+SUpKAgAqpNBDH3zwAU6dOgUbGxscOXIEQUFBSEtLYzsso2UM2xjK6cWpzsokpuVj88VHiEjKgJDPRalUUWmJOp/LgUjIg1SuRKivIyZ2bgQ/V+sqX/f58+fo378/rl69igYNGmDfvn3o2bOnFt8JYVOTJk3w8OFD3Lhxg1Z9eurevXvo27cv7t+/DxcXFxw+fBj+/v5sh2VUlEolnJ2dkZmZiZs3bxr8F0W9TXzlND1HDHhxgX3MmDHYv38/eDweNmzYgIkTJ2r5nRBdKykpgYWFBXg8HoqLi2lUjh7LycnBoEGDcP78eZiZmWHnzp0YOHAg22EZjWvXrsHf3x+urq548uSJQVd0AgAYI6VQKJjPP/+cAcAAYD777DNGoVCwHRbRoLi4OAYA8/bbb7MdClGDRCJhxo4dywBgOBwOs2rVKkapVLIdllH45ptvGADMxIkT2Q5FJ/TmGp+ucblcLF++HFu2bAGfz8eqVaswePBgFBcXsx0a0RAqbKlfhEIhfv31VyxbtgwMw+Czzz7D5MmTIZPJ2A7N4JWPITKG63uAHhW3sGX8+PEIDw+HtbU1Dh48iK5du+LZs2dsh0U0gApb6h8Oh4N58+Zh7969MDU1xebNm9G7d2/k5+ezHZrBys/PR3R0NPh8Prp37852ODph9IkPAEJCQhAdHY1GjRohLi4OAQEBuH79OtthkTqixFd/DRkyBOfOnYOjoyNOnz6NDh064NGjR2yHZZAiIyOhUCjQsWNHWFkZx6BlSnz/17x5c8TGxqJTp05IS0tD586dcfz4cbbDInVApzrrt4CAAMTGxqJFixa4c+cOAgICcOnSJbbDMjjGtI2hHCW+l9jb2yMyMhIjR45EUVER+vXrh3Xr1rEdFqmFoqIiPH78GEKhEE2aNGE7HFJLHh4euHTpEsLCwpCdnY2QkBDs2rWL7bAMBsMwFfpzGgtKfK8wNTXFH3/8gYULF0KpVGLatGmYPn06FArtT5AgmlPenKB58+bg8/ksR0PqokGDBjhy5Ag++ugjSKVSjBo1Cl9//TUNttWAmzdv4unTp3ByckKrVq3YDkdnKPFVgsPhYNGiRfjjjz8gFAqxdu1aDBgwAIWFhWyHRtRUfpqTru8ZBj6fj3Xr1mHNmjXgcrlYtGgR3n//fRpsW0cvn+Y0+L17L6HEV41Ro0YhMjISdnZ2OHbsGIKCgpCamsp2WEQNVNhimKZNm4bDhw/DwsICu3btQvfu3ZGVlcV2WPWWsW1jKEeJrwZBQUGIiYlB06ZNcf36dQQEBCAuLo7tsEgNqLDFcPXp0wcXL16Eq6srLl++TH13a6mwsBAXL14El8s1uraNlPjU0KRJE0RHRyM4OBjp6eno0qULDh48yHZYpBq04jNsrVq1wpUrV/DOO+8gOTkZHTt2RGRkJNth1StnzpyBTCZDQEAAbG1t2Q5HpyjxqcnW1hbh4eH473//i5KSEgwaNAirVq2iC+x6KD8/H0+fPoVIJIKXlxfb4RAtcXZ2RlRUFAYNGgSxWIywsDBs2rSJ7bDqDWPcxlCOEt8bEAqF2LZtm6ql0uzZszFlyhRqqaRnyld7b7/9Ng03NXBmZmb466+/MHfuXCgUCkyePBmfffYZVWHXgGEY1fU9Y9rGUI4S3xt6taXSpk2b8J///IdaKukROs1pXLhcLlasWIGtW7eCz+fj+++/p767Nbh79y4eP34Me3t7oxwBRYmvloYMGYKzZ8+iYcOGiIyMRKdOnZCcnMx2WAT/Jj4qbDEu48aNQ0REBKytrXHo0CEEBQXh6dOnbIell8pXe7169QKXa3xpwPjesQYFBgYiNjYWPj4+uHXrFgICAhAdHc12WEaP9vAZr27duiEmJgaNGzdGfHw82rdvj/j4eLbD0jvGfH0PoMRXZ56enrh8+TJ69uyJrKwsdOvWDXv27GE7LKNGpzqNW7NmzRATE4OgoCA8e/YMnTt3xuHDh9kOS2+UlJQgKioKHA4HvXr1YjscVlDi0wArKyscO3YMkydPhkQiwfDhw/HNN99QxScLsrOzkZGRAQsLC7i7u7MdDmGJvb09Tp06hdGjR6OkpAQDBw7EDz/8QJ9JAOfOnYNEIoG/vz8cHBzYDocVlPg0RCAQYMOGDfj+++/B4XDw1Vdf4YMPPoBUKmU7NKNSvtrz8fExymsX5F8mJib47bffsGTJEjAMg1mzZuHDDz80+ipsY2xK/Sr6zaBBHA4HM2fOxIEDB2BmZobffvsNoaGhyM3NZTs0o0GFLeRl5V9C//zzT5iYmGDjxo3o06ePUVdhG2ubspdR4tOCgQMH4vz586oNtoGBgbh//z7bYRkFKmwhlRk2bBjOnj0LBwcHnDp1Ch07djTKKuwHDx7gwYMHsLa2Rvv27dkOhzWU+LTE398fV65cQatWrXD//n0EBgbiwoULbIdl8KiwhVSlQ4cOqirs27dvIyAgAJcvX2Y7LJ0qP80ZGhpq1OO6KPFpkaurKy5cuIA+ffogNzcX3bt3x44dO9gOy2AxDEOnOkm1vLy8cPnyZYSGhiIrKwshISHYvXs322HpjLFvYyhHiU/LLC0tcejQIUyfPh0ymQxjxozBggULqLpMCzIyMpCTkwMrKyu4uLiwHQ7RU+VV2FOmTIFEIsHIkSOxePFig/9MlpWV4cyZMwAo8VHi0wEej4effvoJa9euBZfLxZIlSzBy5EgaoqlhL6/2jGmoJnlzfD4f69evx+rVq8HhcLBw4UKMGTMGEomE7dC05sKFCygtLUWrVq3g7OzMdjisosSnQx9//DGOHDkCCwsL/PnnnwgJCaEhmhpE1/fIm+BwOJgxYwYOHToEc3Nz/PHHH+jRoweys7PZDk0raBvDvyjx6dh//vMfXLp0CW5uboiOjkZAQABu377NdlgGgSo6SW3069dPNdj24sWLCAgIwJ07d9gOS+NoG8O/KPGxwM/PD7GxsfD390dycjI6dOiA06dPsx1WvUeFLaS2WrdurfpMPnr0yOA+k48fP8bt27dhaWmJjh07sh0O6yjxsaR8j9+7776rGqK5ZcsWtsOqt16u6KQVH6kNFxcXREVFYeDAgcjPzzeoz2T5ac4ePXpAIBCwHA37KPGxyNzcHPv27cPs2bMhl8sxceJEzJ07F0qlku3Q6p2nT59CLBbDzs4ODRs2ZDscUk+Zm5tj//79mDNnjuozOWfOnHr/maRtDBVR4mMZl8vFd999h02bNoHH4+G7777DkCFDUFJSwnZo9QpVdBJN4XK5+Pbbb7F582bw+XysXLkS7733Xr0dbCuVShEZGQmAEl85Snx6YuLEiTh58iSsrKxw4MABdO3aFenp6WyHVW9QYQvRtAkTJqg+k3///Te6du2KZ8+esR3WG7t8+TKKiorg4+NDE0v+jxKfHunRowcuX74MT09P/PPPPwgICMCNGzfYDqteoMIWog3du3dHTEwMGjVqhLi4OAQEBOD69etsh/VGyqs5aRvDvyjx6RkfHx/ExsYiMDAQqamp6NSpk+oHl1SNCluItjRv3hyxsbHo1KkT0tLS0KlTJxw9epTtsNRG1/deR4lPDzVs2BBnzpzBsGHDUFhYiL59++Lnn39mOyy9pVQqKfERrbK3t8fp06cxatQoFBcXY8CAAfjpp5/0vs3Zs2fPkJiYCDMzMwQFBbEdjt6gxKenRCIRdu3aha+++gpKpRIff/wxPvnkEygUCrZD0ztPnjxBcXExnJycYGdnx3Y4xECZmJhgx44d+Prrr6FUKjFjxgx8/PHHkMvlbIdWpfLVXkhICExMTFiORn9Q4tNj5X09f/vtNwgEAqxZswYDBgxAYWEh26HpFVrtEV3hcDhYsGABdu3aBRMTE6xfvx59+/aFWCxmO7RKUZuyylHiqwfGjBmDU6dOwdbWFseOHUNQUBDS0tLYDktvUEUn0bURI0bgzJkzcHBwQHh4ODp27IiUlBS2w6pALpfj1KlTAOj63qso8dUTXbt2RUxMDLy9vXH9+nW0b98ecXFxbIelF6iik7ChY8eOiI2Nxdtvv41bt24hICAAMTExbIelEhsbi/z8fHh7e6NRo0Zsh6NXKPHVI97e3oiOjkaXLl2Qnp6OLl264NChQ2yHxTo61UnYUj7YtmfPnsjMzERwcDD27NnDdlgAaBtDdSjx1TN2dnaIiIjAmDFjUFJSgnfffRc//PCD3leXaYtCocCtW7cAUOIj7LC2tsaxY8cwefJkSCQSDB8+HEuXLmX9M0nbGKrGYdj+v0NqhWEYLFu2DF999RUAYPLkyVi7dq3RNaB98OABvL294erqitTUVLbDIUaMYRisXr0an332GRiGwejRo7F582ZWqikzMjLg5OQEU1NT5ObmQiQS6TwGfUYrvnqKw+Hgyy+/xO7du2FiYoKNGzfqdXWZtlBhC9EXHA4HM2fOxMGDB2FmZoYdO3agZ8+erAy2jYiIAPCiNoCS3uso8dVzw4cPx9mzZ+Hg4ICIiAh06tRJ76rLtIkKW4i+6d+/Py5cuAAXFxdcuHABgYGBuHv37muPKy4u1lo/XtrGUD1KfAagQ4cOiImJwdtvv42kpCQEBAQgNjaW7bB0ggpbiD5q27Ytrly5gjZt2uDhw4cIDAzE2bNnVffn5OSgbdu2aNKkica/qCoUCoSHhwOg63tVocRnIBo1aoTLly+je/fuquqyv/76i+2wtI5OdRJ99dZbb+H8+fPo378/8vPzERoaim3btkEqlWLQoEG4d+8eSkpKsH79eo0eNy4uDjk5OfDy8kLTpk01+tqGghKfAbG2tsaJEycwceJElJWVYejQoVi+fDnr1WXaIpPJVKeQfHx8WI6GkNdZWFjgwIEDmDVrFuRyOcaPHw9/f3+cP39e9ZgtW7ZodP5m+TaGsLAwmk1ZBUp8BkYgEGDjxo1YuXIlOBwOvvjiC4wfPx5SqZTt0DTuwYMHkEql8PT0hIWFBdvhEFIpHo+HVatWYePGjeBwOKqzFOXy8vKwa9cujR2PtjHUjBKfAeJwOPjss8+wf/9+iEQi/Prrr+jVqxdyc3PZDk2j6PoeqU+sra2rPPuydu1ajZyZycnJQWxsLAQCAUJCQur8eoaKz3YARHveffddnD9/Hv369cO5c+fQoUMHHDt2DE2aNGE7NI2gik5SX8TGxmLs2LFV3p+YmIgLFy6gS5cu1b6OuFSGa0/ykJgmRmxyDjIKyiBTMBDwOHBsYAoXfjFMvNqiY1MnOgtSDdrAbgRSU1PRt29fJCYmws7ODgcPHkTnzp3ZDqvOhgwZgn379uH333/H6NGj2Q6HkEoxDANPT088efKk2se99957VRakJablY/OFR4i4lQEhj4tSmQJy5eu/uvlcDnhQgOHw0MvXCRODGsHP1VoTb8OgUOIzEoWFhRg2bBhOnDgBoVCIbdu2YdSoUWyHVSc+Pj64ffs24uLi0LZtW7bDIaRKI0aMwN69e6FUKqt8DJfLRUpKCtzc3FS3pYtLMWNPAhLTxJDIFagk11X9ehzAhM+Dn6sVfhzWGs5WtJG9HCU+IyKXy/Hpp59i3bp1AICFCxdi4cKF9bLySyKRwMLCAgqFAsXFxdSdgug9sViMS5cu4fz584iKisI///zz2hDbvn374siRI2AYBn/FpWHRkSRI5cpKV3fq4nM5EPK5WNTPF0P8Xevl513TKPEZobVr12LGjBlQKpUYOXIktm7dClNTU7bDeiM3btyAn58fmjRpgvv377MdDiFvrKioCNHR0YiKisK+fftw7949vP/++/jtt9+w+Ogt/Hk1FaUyhcaOJxLwMLydGxb09TH65EeJz0gdO3YMw4cPR1FRETp16oS///4bDg4ObIeltj///BMjRozAgAEDcPDgQbbDIaTOyn8VayPplRMJeBjR3g0L+hp3JTRtZzBSffr0wcWLF+Hq6opLly4hMDAQd+7cYTsstZXvhaKKTmIoOBwO/opL01rSA4BSmQK7r6Ri7z/GPcmEEp8Ra9WqFWJjY+Hv749Hjx6hQ4cOOHPmDNthqYX28BFDky4uxaIjSVpLeuVKZQosOpKE5+IyrR5Hn1HiM3IuLi6IiorCwIEDkZ+fj169emHbtm1sh1Uj2sNHDM2MPQmQyquu+tQkqVyJT/bE6+RY+ogSH4G5uTn279+Pzz77TNVP8PPPP6+29JpNpaWlePDgAXg8HjXhJQbhemo+EtPEdarefBNyJYPENDES0/J1cjx9Q4mPAHixh2jlypXYuHEjeDwevv32WwwdOlSjzXM15c6dO2AYBt7e3qxMtyZE07ZcfASJXLunOF8lkSuw+eIjnR5TX1DLMlLBpEmT4OXlhffeew/79+9HamoqDh06BCcnJ7ZDU6HTnMSQiEtliLiVUe3m9LT146AsyQc4/65VGKUCJs7eaDj0azzb8hGsu46GhW83AIBSUoJnWz+CTch4mDevvEuTkgEikjIgLpXBSiTQ5FvSe7TiI6/p2bMnoqOj4enpiStXriAgIOC1jvJsohl8xJBce5IHIa/mX8UO7y2A+6x9qj92vT4CAHCFItiFfYS8yM1QlIgBAHnnfoXQqUmVSa+ckM9F/JO8ur+JeoYSH6mUj48PYmJiEBgYiCdPnqBjx46qqc66du7cOSxbtgx///037t27R4mPGJTENDFKZPKaH1gNUSN/iBq3Q+6pjSh7nIiS2xdhFzq1xueVShVITBPX6dj1ESU+UiVHR0ecOXMGQ4cORWFhIfr06YMNGzboPI6pU6fiyy+/xKBBg9CsWTMcO3YMAPD7779jxYoVOHLkCPLz83UeFyFVGTBgAFxcXDB9+nTExMRUO3IoNjkHCg3Ukdn0mAjJkxvIOrgCNiHjwLOwqfE5ciWDmOScuh+8nqHER6olEomwe/dufPnll1AoFJg6dSpmzpwJhUJ3F+LfeeedSm8/evQo5s2bh/79+yMgIEBn8RBSk7i4OKSnp2Pt2rXo0KEDmjRpgvnz5+P27duvPTajQDP76XimFhDYu4ORSWDWtKPaz9PU8esTSnykRlwuF0uXLsX27dshEAiwevVqDBo0CEVFRTo5fv/+/Wt8DJ32JPrE09Ozwr8fPXqEpUuXwsfHB23atMHKlSuRkpICAJApNLOFoejmWcjFmTD1bIW8c7+q/TxNHb8+ocRH1DZ27FicOnUKNjY2OHz4MLp06YKnT59q/bi9evWCUCis8n5nZ2ds3LhR63EQoq5XE9/LEhISMGfOHHh5eWH58uUQ8OreMFpRnI+805th13sabMM+RsmdiyhLVa8gTRPHr29oOwN5I127dkVMTAz69OmD+Ph4tG/fHkePHkWbNm20dkxLS0t069at0uIaDoeDP/74o1412CaGoaioCCkpKUhJSUFycrLq7ykpKbh165Zar2FlZQVHoSkeZhXXKZbcU7/ArGkgTD38AADW3T5Azol1cBm3Fhx+9VsVHBvUr8ksmkCJj7yxpk2bIiYmBu+++y4uXLiAoKAg7N69G/369Xvtsfn5+bC2tq7zMfv3719p4vviiy8QEhJS59cn5FXFxcUVktmrSS4np/ZFIX5+ftixYwf8/PwgO30fV5Jza921peReNCRpt+AyYb3qNstWvVCcFIX8S7th03VMlc/lczkI9LKr1XHrMxpLRGpNIpFg4sSJ2LFjBzgcDn744Qd88sknqllfX3zxBZYvX46dO3di5MiRdTpWamoq3N3dK9zWsWNHREVFgc+n72/kzZWUlODx48eVrthSUlKQlZVV7fNNTEzg6emp+uPl5aX6e2pqKoYMGfLacwQCARYsWIC5c+dCIHixEjt7NxPTd8ejUFK3LQ21YWnKx9rhbRDcrKHOj80mSnykThiGwTfffIP58+cDeLH14KeffsKvv/6KSZMmAXhReHLjxo06D7/08/PDjRs3AADW1tZISEiAh4dH3d4AMVilpaWqxFbZKcnMzMxqny8UCisktleTXMOGDcHlVl4m8fDhQzRp0qTCbW3atMH27dvh5+dX4XZxqQztl0VCoqMG1S8z4XNx5YseRte5hb4qkzrhcDj46quv0LhxY3zwwQdYv349rly5gvj4fzu/JyUlISoqCsHBwXU6Vrt27VSJb8uWLZT0jFxZWRmePHlS6WotJSUFz58/r/b5AoEAHh4ela7YPD094eTkVGViq4mbmxs4HA4YhoFAIMD8+fPx+eefq1Z5L7MSCRDq44hjN9KrbVumaVwOEOrraHRJD6AVH9Ggy5cvo0+fPpVuJh88eDD27dtXp9e/cOECgoOD0aVLF5w9e7ZOr0X0n0QiwZMnT6pcsaWnp1f7fD6fXyGxvZrgnJ2da53Y1DFhwgQ8ePAAa9aseW2V96rEtHwM2xSj9Vl8LxMJeNg7uQNavmWls2PqC0p8RGMyMzPh7++PtLS01+7j8XhITk6Gm5tbnY7BMEydT5kS/SCVSpGamlrpii05ORnp6enVdjzh8Xhwd3evdLXm6ekJFxcX8Hg8Hb6juhm2KRpxj/N0MpqIz+XA38MGeyZ10Pqx9BElPqIRpaWlCAkJQUxMTJWP+eKLL/DNN9/U+FriUhmuPclDYpoYsck5yCgog0zBQMDjwLGBKQK87ODnaoW27jZGeZqmvpDJZEhNTa2y5P/p06c1JjY3N7cqC0hcXFwMqrApXVyK7j9EoUSq/VWfmZCHMzOD4WRlfFsZAEp8RENmz56NVatWVfsYe3t7pKamwtS08g9bYlo+Nl94hIhbGRDyuCiVKSr99svnciAS8CBVKBHq44iJQY3g52qtibdB3oBcLq+Q2F5dsT19+rTaYcZcLheurq6VrtY8PT3h6upqUIlNHXv/ScXCw0laPeUpEvDwdX9fDH2nbmdf6jPj+qkiWuPu7g4ej1dtD8/s7Gzs2rUL48aNq3B7urgUM/YkIDFNDIlcASWDaivc5EpGVfp97EY6Im9nws/VCj8Oaw1nK5Fm3hCBXC7H06dPq1yxpaWlVfv/m8PhVLtic3V1rbTYw5gN8XfF7fQC/Hk1VSvJTyTgYUR7N6NOegCt+IgGFRYW4tKlS4iKikJUVBSuXr0Kubzi3iQ7OztkZ2cDeHG97q+4NCw6kgSpXFmnaxt8LgdCPheL+vliiL8rXQdUg0KhqJDYXk1wqampNSY2FxeXSldsXl5ecHV1rbbVHKkcwzBYfPSWxpNfedKb38fH6D8flPiI1hQXF+Py5cuIiorC0aNHcf36dVhZWSE/P1+rH+7h7dywoC99uBUKBdLT06vcoP3kyZPXvpi8ysXF5bWE5uHhAS8vL7i5ucHExERH78a4aOtLobGv9MpR4iM6U1paCoFAAB6Pp5WkV678m+2CvoY9sUGpVKoSW2UrtidPnkAmk1X7Gs7OzlVu0HZzc6vyeizRjcouA6iLywFM+Dz4uVrhp2FtjLaQpTKU+IjO0QV89SiVSmRkZFS5Ynv8+DGkUmm1r+Ho6FjlBm13d3eIRHRNtD5ITMvH5ouPEJGUASGfi1JpNYVfQh6kciVCfR0xsTMVflWGEh/RKSrZ/hfDMKrEVtmK7fHjx5BIJNW+RsOGDatcsbm7u8PMzExH74bogrhUhvj/b/WJqWSrT+D/t/q0oa0+1aLER3TKmDbpMgyDrKysKldsKSkpKCurfvq1vb19lSs2Dw8PmJub6+jdEGI4aDsD0ZnrqflITBPrJOkBL7Y9JKaJkZiWr5XTPQzDIDs7u8qWWikpKSgtLa32Nezs7KpcsXl4eMDCwkLjcRNi7CjxEZ3ZcvERJHLd9SIEAIlcgc0XH2Ht8LZv/FyGYZCbm1vlai0lJQXFxdUPELWxsal2xdagQYPavjVCSC1R4iM6IS6VIeJWRpVVaWnrx0FZkg9w/m0azCgVMHH2hoVfKPIv7oLr1G0vHvvzWNj3nQVTDz/kX9iJsic34DRqRaWvq2SAiKQMiEtlr13zYBgGeXl51a7YioqKqn1f1tbWVTZB9vDwgJWV8TUAJkTfUeIjOnHtSR6EPG61HVkc3lsAkWdr1b+LEiNRlBhR52PzOAx+/vMYRPnJryW5wsLCap9raWmpSmSVbdTWxHR5QohuUeIjOpGYJkaJrJYTprlcgKn8FCnDKMGpYbRMcZkM3275EwWX97x2n4WFxWsJ7eV/W1tbG/1GeEIMDSU+ohOxyTlQ1HLANE/UAIqiPDBKBTjcimNmFAVZ4JpVfzqRw+PDtW03hLR1eG3FZmtrS4mNECNDiY/oREZB9WX71RG+1Rzg8lB6PxZmzTqqblfKJChNvgbrTiNrfA0nr2ZYO3NyrWMghBgOSnxEJ2SK2m9h4JlaoEG7Acg9vQV8WxcAgFJWhtzwn8EVimDeIkSrxyeEGBZKfEQnBLy6nU607joGYJRI3/4poJAja/9SmLg0g+Pwb8AV1tyZpa7HJ4QYjuqrAgjREMcGdWsbxuFwYdNtHNw+2Q2euTUcBn0Jp9ErwbdqqJPjE0IMByU+ohMBXnbgc+u+6uIKTQEuF1yh+s2V+VwOAr3s6nxsQohhoF6dRCfO3s3E9N3xqsnpumRpysfa4W0Q3Ey91SEhxLDRio/oRFt3G0hru5+hjqRyJdq427BybEKI/qHER3TCSiRAqI8jNHC2841wOUCoryONaCGEqFDiIzozMagRTPi8mh+oQSZ8HiYFNdbpMQkh+o0SH9EZP1dr+LlaaaTIRR18Lgd+rlZo+RY1iiaE/IsSH9GpH4e1hpCvmx87IZ+Ln4a10cmxCCH1ByU+olPOViIs6ucLkUC7pzxFAh4W9fOFkxXt3yOEVESJj+jcEH9XDG/nprXkJxLwMKK9G4a+46aV1yeE1G+U+IjOcTgcLOjro5XkV5705vfx0ejrEkIMB21gJ6xhGAZ/xaVh0ZEkSOVKyKsaz64GPpcDIZ+LRf18aaVHCKkWJT7CunRxKWbsSUBimhgSuQJvkv+4nBdbFvxcrfDTsDZ0TY8QUiNKfERvJKblY/PFR4hIyoCQz0WpVFHpKpDP5UAk5EEqVyLU1xETOzeCn6u17gMmhNRLlPiI3hGXyhD/JA+JaWLEJOcgo6AMMgUDAY8DxwamCPSyg5+rFdq421BHFkLIG6PERwghxKhQVSchhBCjQomPEEKIUaHERwghxKhQ4iOEEGJUKPERQggxKpT4CCGEGBVKfIQQQowKJT5CCCFGhRIfIYQQo0KJjxBCiFGhxEcIIcSoUOIjhBBiVCjxEUIIMSqU+AghhBiV/wEVBXx6MfrKQwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ND_rsp = nx.DiGraph()\n", "vlist = ['ΠΠ', 'ΠΨ', 'ΠΧ',\n", " 'ΨΠ', 'ΨΨ', 'ΨΧ',\n", " 'ΧΠ', 'ΧΨ', 'ΧΧ']\n", "elist = [('ΠΠ', 'ΠΧ'), ('ΠΠ', 'ΧΠ'),\n", " ('ΠΨ', 'ΠΧ'), \n", " ('ΠΧ', 'ΨΧ'), \n", " ('ΨΨ', 'ΠΨ'), ('ΨΨ', 'ΨΠ'),\n", " ('ΨΠ', 'ΧΠ'), \n", " ('ΨΧ', 'ΨΠ'),\n", " ('ΧΧ', 'ΧΨ'), ('ΧΧ', 'ΨΧ'),\n", " ('ΧΠ', 'ΧΨ'), \n", " ('ΧΨ', 'ΠΨ')]\n", "ND_rsp.add_nodes_from(vlist)\n", "ND_rsp.add_edges_from(elist)\n", "print(\"Πέτρα - Ψαλίδι - Χαρτί: Δυναμική Βέλτιστης Απόκρισης\")\n", "nx.draw(ND_rsp, with_labels = True, width=2.0, node_size=1000, arrowsize=20)" ] }, { "cell_type": "markdown", "id": "6e18cf73", "metadata": {}, "source": [ "### Άσκηση 2\n", "\n", "Να απεικονίσετε με κατευθυνόμενο γράφημα, όπως παραπάνω, τη δυναμική βέλτιστης απόκριση του Διλήμματος του Φυλακισμένου, του Bach or Straviski και της μοιρασιάς 2 ευρώ. Τι συμπεραίνετε για την ύπαρξη αμιγών ισορροπιών Nash σε αυτά τα παίγνια;" ] }, { "cell_type": "markdown", "id": "da170b32", "metadata": {}, "source": [ "# Μεικτές Στρατηγικές\n", "\n", "[**Μεικτή στρατηγική**](https://en.wikipedia.org/wiki/Strategy_(game_theory)) ενός παίκτη είναι μια **κατανομή πιθανότητας** $\\vec{p} = (p_1, \\ldots, p_n)$ στο σύνολο των αμιγών στρατηγικών του παίκτη. Η έννοια της μεικτής στρατηγικής αποτελεί **γενίκευση** αυτής της αμιγούς στρατηγικής.\n", "\n", "Σε παίγνιο 2 παικτών με πίνακες ωφέλειας $(A, B)$, η αναμενόμενη ωφέλεια με βάση το **προφίλ μεικτών στρατηγικών** $(\\vec{p}, \\vec{q})$ υπολογίζεται ως εξής: \n", "- για τον Π1 (παίκτη-γραμμή) $u_1(\\vec{p}, \\vec{q}) = \\vec{p}^T A \\vec{q}$ \n", "- για τον Π2 (παίκτη-στήλη) $u_2(\\vec{p}, \\vec{q}) = \\vec{p}^T B \\vec{q}$ \n", "\n", "Παρακάτω χρησιμοποιoύμε τη Nashpy για τον υπολογισμό της αναμενόμενης ωφέλειας των δύο παικτών στο προφίλ μεικτών στρατητικών $((1/2, 1/4, 1/4), (1/3, 1/2, 1/6))$ στο Πέτρα-Ψαλίδι-Χαρτί (βασική και γενικευμένη εκδοχή). " ] }, { "cell_type": "code", "execution_count": 13, "id": "5304a9c8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.5 0.25 0.25] [0.33333333 0.5 0.16666667]\n", "Πέτρα - Ψαλίδι - Χαρτί, αναμενόμη ωφέλεια:\t\t [ 0.08333333 -0.08333333]\n", "Γενικευμένο Πέτρα - Ψαλίδι - Χαρτί, αναμενόμη ωφέλεια:\t [1.04166667 0.95833333]\n" ] } ], "source": [ "row = np.array([1/2, 1/4, 1/4])\n", "col = np.array([1/3, 1/2, 1/6])\n", "print(row, col) \n", "print(\"Πέτρα - Ψαλίδι - Χαρτί, αναμενόμη ωφέλεια:\\t\\t\", rsp[row, col])\n", "print(\"Γενικευμένο Πέτρα - Ψαλίδι - Χαρτί, αναμενόμη ωφέλεια:\\t\", gen_rsp[row, col])" ] }, { "cell_type": "markdown", "id": "002c6251", "metadata": {}, "source": [ "# Ισορροπία Nash\n", "\n", "**Ισορροπία Nash** ([Nash equilibrium](https://en.wikipedia.org/wiki/Nash_equilibrium)) σε παίγνιο 2 παικτών είναι ένα προφίλ μεικτών στρατηγικών $(\\vec{p}, \\vec{q})$ όπου:\n", "- $u_1(\\vec{p}, \\vec{q}) \\geq u_1(\\vec{p}', \\vec{q})$ για κάθε μικτή στρατηγική $\\vec{p}'$ του Π1, και \n", "- $u_2(\\vec{p}, \\vec{q}) \\geq u_2(\\vec{p}, \\vec{q}')$ για κάθε μικτή στρατηγική $\\vec{q}'$ του Π2.\n", "\n", "Με άλλα λόγια, η μεικτή στρατηγική $\\vec{p}$ του Π1 αποτελεί βέλτιστη απόκριση στην μεικτή στρατηγική $\\vec{q}$ του Π2, και αντίστοιχα, η μεικτή στρατηγική $\\vec{q}$ του Π2 αποτελεί βέλτιστη απόκριση στην μεικτή στρατηγική $\\vec{p}$ του Π1. Έτσι η έννοια της ισορροπίας Nash στις μεικτές στρατηγικές γενικεύει (με άμεσο τρόπο) την έννοια της ισορροπίας Nash στις αμιγείς στρατηγικές. \n", "\n", "Ο παραπάνω ορισμός της ισορροπίας Nash γενικεύεται, με άμεσο τρόπο, σε παίγνια $n$ παικτών. \n", "\n", "O ([John Nash](https://en.wikipedia.org/wiki/John_Forbes_Nash_Jr.), 1950) απέδειξε ότι κάθε πεπερασμένο παίγνιο έχει (τουλάχιστον μία) ισορροπία Nash. \n", "\n", "Παρακάτω χρησιμοποιoύμε τη Nashpy για τον υπολογισμό όλων των ισορροπιών Nash στα Πέτρα-Ψαλίδι-Χαρτί (βασική και γενικευμένη εκδοχή), Δίλημμα του Φυλακισμένου, Bach or Stravinski, Stag Hunt και μοιρασιά 2 ευρώ. " ] }, { "cell_type": "code", "execution_count": 14, "id": "8b5748d4", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Ισορροπία Nash του Πέτρα-Ψαλίδι-Χαρτί:\n", "(array([0.33333333, 0.33333333, 0.33333333]), array([0.33333333, 0.33333333, 0.33333333]))\n", "\n", "Ισορροπία Nash της γενικευμένης εκδοχής του Πέτρα-Ψαλίδι-Χαρτί:\n", "(array([0.33333333, 0.33333333, 0.33333333]), array([0.33333333, 0.33333333, 0.33333333]))\n", "\n", "Ισορροπία Nash του Διλήμματος του Φυλακισμένου:\n", "(array([1., 0.]), array([1., 0.]))\n", "\n", "Ισορροπίες Nash του Bach or Stravinski:\n", "(array([1., 0.]), array([1., 0.]))\n", "(array([0., 1.]), array([0., 1.]))\n", "(array([0.66666667, 0.33333333]), array([0.33333333, 0.66666667]))\n", "\n", "Ισορροπία Nash του Stag Hunt:\n", "(array([0., 1.]), array([0., 1.]))\n", "\n", "Ισορροπία Nash της μοιρασίας 2 ευρώ:\n", "(array([0.8, 0. , 0.2]), array([0.2, 0.8]))\n" ] } ], "source": [ "print(\"Ισορροπία Nash του Πέτρα-Ψαλίδι-Χαρτί:\")\n", "rsp_eq = rsp.support_enumeration()\n", "for eq in rsp_eq:\n", " print(eq)\n", " \n", "print(\"\\nΙσορροπία Nash της γενικευμένης εκδοχής του Πέτρα-Ψαλίδι-Χαρτί:\")\n", "gen_rsp_eq = gen_rsp.support_enumeration()\n", "for eq in gen_rsp_eq:\n", " print(eq)\n", " \n", "print(\"\\nΙσορροπία Nash του Διλήμματος του Φυλακισμένου:\")\n", "pd_eq = prisoners_dilemma.support_enumeration()\n", "for eq in pd_eq:\n", " print(eq)\n", " \n", "print(\"\\nΙσορροπίες Nash του Bach or Stravinski:\")\n", "bos_eq = BoS.support_enumeration()\n", "for eq in bos_eq:\n", " print(eq)\n", " \n", "print(\"\\nΙσορροπία Nash του Stag Hunt:\")\n", "sh_eq = stag_hunt.support_enumeration()\n", "for eq in sh_eq:\n", " print(eq)\n", " \n", "print(\"\\nΙσορροπία Nash της μοιρασίας 2 ευρώ:\")\n", "print(sharing.lemke_howson(initial_dropped_label=0))" ] }, { "cell_type": "markdown", "id": "4b0af872", "metadata": {}, "source": [ "### Άσκηση 3\n", "\n", "Να χρησιμοποιήσετε τη Nashpy για τον υπολογισμό όλων των ισορροπιών Nash στα τρία παίγνια που επιλέξατε από τον [κατάλογο παιγνίων του Wikipedia](https://en.wikipedia.org/wiki/List_of_games_in_game_theory)." ] }, { "cell_type": "markdown", "id": "d542dae6", "metadata": {}, "source": [ "## Fictitious Play\n", "\n", "Το [**fictitious play**](https://en.wikipedia.org/wiki/Fictitious_play) είναι ένας κανόνας εκμάθησης ισορροπιών Nash που προτάθηκε από τον ([George W. Brown](https://en.wikipedia.org/wiki/George_W._Brown_(academic)), 1949). Σε κάθε γύρο, οι παίκτες υιοθετούν (ανεξάρτητα) μια βέλτιστη αμιγή στρατηγική με βάση την μέση εμπειρική ωφέλεια των αμιγών στρατηγικών τους, όπως αυτή προκύπτει από την εμπειρική συχνότητα των στρατηγικών των άλλων παικτών στους προηγούμενους γύρους του παιγνίου. \n", "\n", "Η ([Julia Robinson](https://en.wikipedia.org/wiki/Julia_Robinson), 1951) απέδειξε ότι για πεπερασμένα παίγνια 2 παικτών με μηδενικό άθροισμα, οι εμπειρικές συχνότητες των στρατηγικών που επιλέγονται από τους παίκτες στο fictitious play συγκλίνουν σε ισορροπία Nash. \n", "\n", "Ο ([Lloyd Shapley](https://en.wikipedia.org/wiki/Lloyd_Shapley), 1964) πρότεινε τη γενικευμένη εκδοχή του Πέτρα-Ψαλίδι-Χαρτί ως απόδειξη ότι η σύγκλιση του fictitious play δεν είναι εγγυημένη σε παίγνια 2 παικτών με **μη μηδενικό άθροισμα**, όταν τόσο ο παίκτης-γραμμή όσο και ο παίκτης-στήλη έχουν τουλάχιστον 3 αμιγείς στρατηγικές. \n", "\n", "Παρακάτω χρησιμοποιoύμε τη Nashpy για την εφαρμογή του fictitious play στη βασική και στη γενικευμένη εκδοχή του Πέτρα-Ψαλίδι-Χαρτί και στο παίγνιο της μοιρασιάς 2 ευρώ. Τι παρατηρείτε σε σχέση με την εξέλιξη των τιμών των εμπειρικών συχνοτήτων; Σε ποιες περιπτώσεις οι εμπειρικές συχνότητες συγκλίνουν στις ισορροπίες Nash που υπολογίσαμε παραπάνω για τα αντίστοιχα παίγνια;" ] }, { "cell_type": "code", "execution_count": 15, "id": "410c7d58", "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "iterations = 30000\n", "play_counts = tuple(rsp.fictitious_play(iterations=iterations))\n", "\n", "plt.figure()\n", "probabilities = [\n", " row_play_counts / (1+np.sum(row_play_counts))\n", " for row_play_counts, col_play_counts in play_counts\n", "]\n", "for number, strategy in enumerate(zip(*probabilities)):\n", " plt.plot(strategy, label=f\"$s_{number}$\")\n", "\n", "plt.xlabel(\"Iteration\")\n", "plt.ylabel(\"Probability\")\n", "plt.title(\"Πέτρα - Ψαλίδι - Χαρτί\")\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 16, "id": "6261f31c", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAY4AAAEWCAYAAABxMXBSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAABk4ElEQVR4nO2dd5gURfrHP+/M5px3gQWWnDMCSlAxgaKoZ8Csp6hnPvXUM5/h7jz155mzgp45o6KYEyI55wxLXJZlc5hQvz+qZxmWzTuzs7tTn+fpp1N19dvTPf3teqvqLVFKYTAYDAZDfbEF2gCDwWAwtC6McBgMBoOhQRjhMBgMBkODMMJhMBgMhgZhhMNgMBgMDcIIh8FgMBgahBEOPyIisSIyT0SODrQtzYWIdBCRW0QkxEf5TROR23yRV0tERP4hIvkick0N+0+znqGw5ratuRGRj0Tkr814PruIzBWRM5vrnM2FiFwgIiO91mt9zhqMUirgE7AFKAWKvKZ7Am1XE69JgPeBCYG2pYpd9wM7gEJgK3CaD/MOB34Ejq0lzaWAq8q9LgLcwPFV0t4CPBDo36yW3/EnazkEUECWtT4NmNaAvI4DCoCIKtuTgBVAZ2s9GngX2AfkA0uBLj66ng5AHjDGa1tHa9vIZvg9zwM+bEB6BRRXeYYqgP81II+/A48F+lnysqezdV1V34UXNDCfM4DPgND6PGeNmXzyVegjTlVKfRdoI3yF0nfqnEDb4Y2IxAH3AYOUUsus9SQfnmIA8A+l1E91pJujlBpTxbYtVRMppR73nWktF6XU9yKyDTgZ+NhrV1/gaqXUVmv9OOBItEAViUgm+uXpCxt2iMjtwCsiMlgpVQa8CLyulJrri3PUQRLw5wYeM0gptcGzIiL3A93rc6CI2NEv6DsaeE5/sg39YRAFnKGUcjc0AxERoD1wjlLK4b2vlueswbRoV5WIhIjISyKSKyIFIrJcRKJF5FwRWeGV7k4RecpazhIR5e0qEZEtInK8tTxVRFaISKq1foyILBORQhHZJSI3WtvvF5H/Wct2EZkvIqOs9UtF5LcqtioR6W4t9xeRP6w8c0TkEWv7VyJyq7UcatkxzDtPEXlMRPJEZLOInFTLb3O2iKwXkSIR2S4iZ1e1TUSSRWSpiFwLoJQqAN4C3hCR/wJDlVJbvPI8yrrOfGt+lLX9QRHZLSJTrHURkcUicofX73sr8BrwmYi8IyIR9b7Rh19brOW2OGBNP1vbL7Cut0hE3CJSai2/4HXscSKyUUSKReRHEenste8EEVlpXd8rIjJIRP5opJkuqPHDK8Taj4ikisjH1nUsFpFeIrJQRHpXOUYB51bZ9hDgne43dEnjIxF5AIhWSuVZ5znsmWwELwO7gPtE5BKgF3C3Z6eIdBWRH6zf7xcRaWc9e3FeaW6xnvk8EXnN8xxYz36Rdc/cXvdxrIhkAc8AJU20/xDquN9jgVuVUk6v9N7/4YdE5CcRiarruRPtTn1WRL60/vN/iEgXr3z7ici3IrJfRPaIyJ3V2Wt9bF4KJAP/V+VaOnnZ4BCRCmt5pbXfc/8fRT83a2p4fxz2nNVlf7UEunhmFaG2UMVNYW0/FVgOpKBdP73Rf8pEwAl0stIloh+6JCDL+nFCquZv3ZTVQIbXvoXAldZyDNDVWr4fr2IvcDHwrrV8KfBbFVsV0N1a/gj4J2AHIoCe1vYbgB+8jrkB+MArTwcw1brGG4BttfxmucCJ1nISkOltG5BgXdtfvY6JAz4H4q39bwL/9MojD7jIOv951nqytf8U9EvFDpwO5AAxXr/vPPSXTgqwHri8BrsP++2qPgPA9cC3QCz646Z/NemzgWOqbOuIduOMQ7vNnvScC2iHLvafYN3nRcBc4I5GPrN/AbZay1VdVT8D/7aWPwZeB8KAO63faXWVvMahXYfFaDHwbP8JuMJrfSjwKvq/0M3Ka1Jtv2sjrqsbWpzygPFe28V6nh6wrvdF6/f72ivNmcAa6z4kAbOBh6rkfzywpcq2LA7/zz4HPFeLnZX/N69t92P9Z+u638AxQHZ1eQL3ov9DMfV87qah/48jgFC0i/pNa18s+n9zC/pdEEsdrj8O/oeurWH//4D7q/lf1fr+qOU5q9H+mqYWXeIA1qIvFKVZo5RyKv2V9Qcw0dqXh/bd9aklrynA0+iX026v7QtAf0UrpYqUUptqOH4zMKiedi9A++yVUqpMKbXO2j4TGCMisdb6OmCw13FblVIvK/0V9BrQUaySUQ3nEPRJ9iulsr32xQBfA7OVUk94bb8ZWKyUyldKHQCuAW6xznEKsF4p9ab1G7+Dfgmcap3jS2AncCza3fW4UqrIK++nlFI7lVL70P7VofX4nWpiGdpf7VZKuZVSK+o6wOI84Dul1C9KqXLgLuBIEekITEC/sL+17H4b/Uf5tJE2/oy+P0O8N4pIOyvfn0WXek9D+9ErgJeAI9C/jzfXoJ/NDcCkWs75f8Bb1n9hI/o+/LOR9tfEVvR9LgB+8dqehX5WH7Oez5c5/Pe7AvivUmq7Umo/8DD6njQYpdQ1SqmmVOQ29n7/DbgSOLnK810Xnyil5intHnqDg8//JGC3Uupx611QqOpw/Vn/oa/R76yGUNf7o7bnrCb7q6WlC8cedEVujogcqLJvJtpXh4h0Qqv0xlryGov+WphcZfuX6D9ficf1UgOx1N+f/DNwIVAgIk96Nirtj92C/uoCGI7+svCw2yut56GNr+EcH6JdFsUicn6VfYPQv90pIhLjtX24td1zjkL0l2V3dGlhK4eyFV1p6uFd4Fn0F+UzVdJ6i3FRLXbXh/VoP2+eiMxvwHFdgO2eFes33I++tnS0+HtYCqxTSq2pLiMv10qRiFxQdb9SahXwHvoP2snanAxMR3+Zz0I/k3bPea0Xwk68hENE0tHi8jz6963qrvLmkPtn5duzlvT1vh4v7kB/fe4FbvXang7kKu3uBO0JcAMzvNIc8vujn5/29bHPDzTofnsxEP3FPqaOdFWp6fnvSO3vpcOwXEwXokv/jbKh6vujHs9Zg/6/LV04bkf/GROVUglV9n0FjBfdTPEBtBtpN9qFBdbXuBc3ot1N//LyY8YCHwCXAVFKqX97pS/jUB/28cBir/VIz4KIVP2RPwQeAWKVUjdWY/dEEUkBbqKKL7M+iEgv9Iv7GKVUtFLq7SpJ5iqlJqNb5HhXMO8DunrlE4v+fXPQL7TOHEontHB7eA/9oqpa2vA1j6FfQLFKqSNqSOPg8Hscif6jAmCJZhL62vagXZoeemPVQ1SHUmqiUirGmt6qIdll6BeS52U0DyhHt1Rzo39vt+e8IpIEpFU571S0u2c7+g890atE6qxyjYfcP/SLel8NaRt8PSLSF/3FfQVwOXCniPSwdu8B4kTE887oiX5/OL2yOOT3Rz8/O6ucprr7VtN/tinUdb9r+r0uQ3+Zv2Ldr6pUZ39tbOfQe1Yr1gt+OnCN8qp/bKINUPtz1mBaunCUoH1uoaDdAJ6il1JqMdqN9V+0v9Lzgt6Dfun3rZKXUyk1H/3FPN36A5SjH6AoK/8Q688DsAQYKSIpottDX2ady8MAERkhunWGp+2550ErQTedtIuITUT6ex03E+1iew0tdo1pSVZqzSMtuyMsMam8Vmt+FfAnEZlorb8LXCoiw6xKy3+jX3wbLbt6isj51u9wLvo3/MIr34HWfFUjbG4IJehrCwcQkS5VSk6gvyarVjADnCwiY6wPigeBP6w/yzfo+9nVciFdAbS3/qiNwnI9XApkWJuGKKVOtdw0WC6Dr4FLrP1T0S64sdZ12dFukWes9JvRbjpPqXgLhz7H7wL3iEi69T+4D+2P9qTtLCJRjbkW6//wKvAfyyW8DHgKeElExMp/PQfdJ9eg79PYKlldKyKZ1kv3LvTHhjdbgNQqL+Wa/rNNoa77vRVIFpG0Ksc5lVIfo+uXnqsm35qeu5r4AmgnIjeJSHhtCa3feTr6Bf9OLUk3oxsu1It6PGcNp7YKkOaaqLlyPAr9gt2DFol16D+nZ/+rwAF0szzv425EF7cfr5o/upJyOQcryU5GlyQK0G6N573yedrKfz1e/R3QFVFL0A9nrpXufWCztX8kumIw35o+9zo2HO3y+gavdtbUUeFezW9zCfpLtxBdYri7unyA89GlhiRr/Rq0UOShxaKzV9oxaDdLvjUfU+Wc89CNC96u7f5RpWFBlbSHXWc19ygN3cAg17q+5UCHKumPRjdf/Mpr2zTgBXTFehHaR9/Fa//Z1r1egy7VXGstd23i83tI5XiVfR0texZa5x6NLglej/7jrqyS/ibgC2u5L7AS2GutR1rP2i5rehZdUgb9BfoW+jk+vRHX8Ff0R4T3Mxlu3e+p1np/9HO9GN1fZ7z1+53ldQ//jv6wOIB+CUZVc67HrP0XeG2r+p99AXihFntrrRyvz/0G/mPZcUPVPNEfgbuAKfV87h7yWj8Gr4p363f71rq+n7EanFRzTZ2pvh/HnVXStUP/F4vr8/6ox3NWq/3VTWIlNDQAEbkU3dqloX7Qhp5HAT2UV1v1QCEiJ6Nbc4xAV8y3V0pV23xSrPb0SqkLm89C3awQ/cDfXVdag+8R3RfnCtWG+mM1BhE5Bi1gmVW2e8R9mTrULe4vOxr1/qjJfm9auqvK0HK4D91iZgO6RdstVhHYYDDUjyhravXv3VZ/AQb/IyIT0JWhnhZi96CLxlWblRoMhpo5Gt3K7LVAG9JUjKvKYDAYDA3ClDgMBoPB0CBaUpDDepGSkqKysrICbYbBYDC0KhYuXLhPKVVTJIoG0eqEIysriwULFgTaDIPBYGhViEjVyBCNxriqDAaDwdAgjHAYDAaDoUEY4TAYDAZDgzDCYTAYDIYGYYTDYDAYDA3CCIfBYDAYGoQRDoPBYDA0CCMcteB2Kz5fupNyZ43j/Rj2roZ5L4PLEWhLDAZDMxF0wvH9tu8Z9fYoypxldaZ9a942rn9nMe8vyK4zbVDhcsKqz2DaJHhuFMy8FZbUNEiewWBoawSdcDw6/1GKHcXsLdlbZ9rPl+hRL91uEwgSAEcpzH8FnhkG718MB7bC8f+AhE7w+zPgdgfaQoPB0Ay0upAjTaXcVQ5AmD2s1nTF5U4WbN0PQGFZkLthSvbD/Fdh7gtQsg86DIMTHoTep4DNDvGZ8NHlsH4W9JpYd34Gg6FVE3zC4dTCUVc4+d827MNT0DhQEqTCUVYAc57VU0Uh9DgRRt8InUeDyMF0fSfDd/fD708b4TAYgoCgE44yl67bcKnaK7x/WL2X2IgQIkPt5AWbcFSUwLyXYPZ/oTQP+pwKR98BGf2rT28PhVF/gVl3wo6FukRiMBjaLEFXx+FwaxFwq5r98W634oe1exnXI5WUmHAOlFQ0l3mBxe2GxW/BU0Pgu/u0AFz5E5z7v5pFw8PQiyE8Xtd1GAyGNk3QCYcHp3LWuG/lzgJyCssZ3zuNxOhQ8oJBOLbPg1fGw2fX6DqLy76CCz+C9kPqd3x4LAy/FFZ9Cnk+i95sMBhaIEErHO5aWgD9vnEfAGN7pJAQFda26ziKcuDjq+DVE6BwN5zxElz+LXQ+quF5jbwaxA5zTKnDYGjL+FU4RGSCiKwVkQ0ickc1+zuJyI8islhElonIyX4zpnAP3B9fuVpbHcf8LfvpkhJNWlwEiVFttMShFCx9F549AlZ+DGNvgesWwKBzwdbIxyKuPQyaAgunaxEyGAxtEr8Jh4jYgWeBiUBf4DwR6Vsl2d3A+0qpIcAU4Dl/2cPuZYes1iQcbrdi/pY8RmQlAZAQGUZ+qaNt9eU4sB3eOgs+uQpSesLVv8Fx90J4TNPzHnszuJ26hZXBYGiT+LPEMQLYoJTapJSqAN4FJldJo4A4azke2OlHew6hpsrxdXsLyS91cEQXSziiQnErKCyruU6kVbH8Q3j+KNg6ByY+Cpd9Dam9fJd/UlcYcDYseA2K9/kuX4PB0GLwp3B0ALZ7rWdb27y5H7hQRLKBmcD1frTnEJzu6oVgwZY8gMoSR2KU7ijY6t1V5YXwydW6o15aH7jmdxh5ZePdUrUx9hbdy9zUdRgMbZJAV46fB0xTSmUCJwNvishhNonIlSKyQEQW5OTk+OTENZU4VuzIJzEqlI5JkQAkRocCrVw4di2DF8bCsvd0f4xLZ0Jilv/Ol9oT+p2ugx+W7PffeQwGQ0Dwp3DsADp6rWda27y5HHgfQCk1B4gAUqpmpJR6SSk1XCk1PDU11SfG1VTHsXJnAf3axyNWz+gEq8TRaltWLf8QXj0RXBVw6Zdw7N/B3gz9Psf9DSqKdJgSg8HQpvCncMwHeohIFxEJQ1d+z6iSZhtwHICI9EELh2+KFHVQnXA4XG7W7i6kX/u4ym2t1lXlcsKsu7Rrqv0Q3ZGvMU1sG0t6P+g9Cf54wZQ6DIY2ht+EQynlBK4DZgGr0a2nVorIAyJympXsFmCqiCwF3gEuVXUFkfIR1fXjWL+niAqXm34dDjbbTYzyuKpaUYmjvAjemaLrGEZcCZfMgJi05rfjmL9DeQH8/lTzn9tgMPgNv/oslFIz0ZXe3tvu9VpeBYz2pw3eeFeHV9dzfOXOfIBDShyxEaGIQH5rKXEU5cDbZ8OupTDpvzD8ssDZktEfBpylSx0jr4bYjMDZYjAYfEagK8eblQqviK7VVY6v3V1IeIiNrOToym12mxAfGcr+1iAcuRt1D/C9a2DKO4EVDQ/H/B3cDvjlsUBbYjAYfETQCkd1dRyb9hXTJSUau00O2Z4cHcb+4hYuHDnr4PWJUJYPl34BvSYE2iJNcjcYchEsnAZ5WwJtjcFg8AFBJRzl3sLhrkY4corolnZ47+mUmHD2FbZg4chZC9Mn6TAil30FmcMDbdGhHH2bHvDpp38H2hKDweADgko4KrwKElVdVeVOF9vzSumWEk1VUmLC2VdU7m/zGkfOWj32t1K6pJHWO9AWHU5ce11Jv/Rd2LMq0NYYDIYmEmTCUbOraltuCS63omtqdSWOsJYpHAe2wRuT9Wh8l37p29AhvmbMXyE8Dr69t+60BoOhRWOEw2JjTjEAXVOrL3EUlDkpd9Y+amCzUpwLb54JjhK46FPdW7slE5UER/8NNnwLG74LtDUGg6EJBJVwOKm5jmPzPi0cXapxVSXHhAO0nAryimLd5DZ/O5z3LqRXDTrcQhlxJSR2gVl36w6KBoOhVRJUwuHyquOoWuLYnldCUnQYsRGhhx2XEqN7j7eICnK3Gz6+EnYuhrNea97e4E0lJBxOeAByVsOi6YG2xmAwNJKgEg5nLf04duSV0j4hotrjPCWOfcUtoJ7j50dgzRdw4sPQ+5RAW9Nw+pwKncfAj//UTYcNBkOrI6iEw7uMUbXEsfNAKR0SIqs9LtUjHIUBFo5VM+Dnf8Og82HUXwJrS2MRgZMehpJc+PXxQFtjMBgaQXAJRw39OJRS7DhQSoeEqGqPS4m1XFVFAXRV5azT42l0GAaTntAv4NZK+8Ew6Dz443nYtyHQ1hgMhgYSVMLhXR3rXeI4UOKgpMJFh8TqSxxRYSFEhtrJDVSTXEcZfHgZhEbAuf/T89bO8fdDSCTMvEX3QTEYDLVyoOwARRVFgTYD8HOQw5aGq4Y6jh0HSgHoUEMdB+hSR8D6cnx7L+xZAee/rzvTtQVi02H83fDV32DlJ9D/zEBbZDC0GBwuB+vy1rFs3zKW5Sxj+b7lbC3Yyj+O+gdn9gj8fyW4hMN72avEkZ3nEY7qXVUAydHh5AaiOe7ar2DeizDqGuh5UvOf358ccTksfhNm3Qk9ToDw2EBbZDAEhP1l+1m6dymLcxazZO8SVuWuotylP1RTIlMYmDKQ07ufzuDUwYE11CKohMNZQx3HrnwtHDW1qgLdCTA7r8R/xlVHyX6YcT1kDNCunbaGza7ra145XsexOunhQFtkMPgdt3KzJX8Li/cuZknOEpbsXcKWgi0AhNhC6Jvcl3N6ncPA1IEMShlERnRG5YikLYWgEo6aShx7C8sJtUvlaH/VkRITxpLtB/xnXHV8fQeU5ume4SHhzXvu5iJzOAy9WFeUDz5fjxxoMLQhypxlrNi3giU5S1i8dzFLc5aSX66boieEJzA4dTCndz+dIWlD6Jvcl4iQll+HGVzCUUPIkX2F5SRHh2Oz1azqaXER5BaX43C5CbU3Q5uCdbNg2Xtw9O16QKS2zPH3w+rP4fMb4c+zdEnEYGillDnLWJqzlPm757NgzwKW5SzD4dYjiHaJ78L4juMZkjaEwWmDyYrLanGlifoQXMLhtexdOZ5TVE5qbO1f9BlxESgF+4rKaRdffesrn1FWAJ/fBGl9Yeyt/j1XSyAqCSY+Ah9PhbkvwpHXBNoig6HelDpLDwrF7gUs37cch9uBTWz0SerD+b3PZ1j6MAanDSYxIjHQ5vqEoBIOp3fIEa86jpzCctLqEI70OL1/d36Z/4Xjl0ehcBec+yaE1Ow+a1MMOBuWfwg/PAi9JkJSl0BbZDBUS7mrnMV7FzNv1zwW7NFC4XQ7sYmNvkl9ubDPhQzPGM6QtCHEhrXNBh9BJRwuanBVFZUfMs54daTHab/jnoIy/xhXacx67e8fckHLG5DJn4joivLnRsHnN8DFM1p3J0dDm8Gt3KzLW8ecnXOYs3MOi/YuotxVjl3s9Evux0V9L+KI9CMYkjaEmLDDh2VoiwSXcFQzkJPbrdhXVFG3qyreIxx+7MuhlK4QD42E4+7z33laKvEddBDEL27SQRCHXRpoiwxByu7i3ZVCMXf3XPaX7QegW3w3zu55Nke2P5Jh6cOIDj08mnYwEFTC4Qmrbhc7TrfuR55XUoHLrUiJqV04kqLCCLULu/1Z4lj/jR6r4qR/Qkya/87Tkhl2Kaz4CL65B7qfoMXEYPAzpc5S5u+ez287fmPOzjmVzWOTI5I5sv2RHNnuSEa1G0V6dHpgDW0hBJVweEocYfawyhKHJ/5UXSUOm01Ii41gT76fhMPtgu/uh6RuetyKYEUETnsKnh8Nn10DF34CtqCKjGNoJrILs/l1x6/8kv0L83fPp9xVToQ9gmEZwzir51kc2f5IeiT0aJWtnvxNUAmH2ypxhNnDKus4cqyIt6l1lDhAV5D7rcSx4iPYu0qPsWE/fEyQoCKpqy51fXGT1Wu+lUYCNrQoHG4Hi/csrhSLTfmbAOgY25Gzep7FuA7jGJYxjHB7G+0z5UOCSjg8rarCbAeFI9caYyM5pu7WSxnxEazdXeh7w1wO+PFhSB8Afc/wff6tkWGXwrqv4dv7oMvRrWeUQ0OLIr88n5+zf+an7T8xZ+ccihxFhNhCGJ4+nLN6nsXYDmPJis8KtJmtjqASDpd3icNqjptfqjvmJNTSa9xDelwEv6zb53vDFr8JeVt0EEPjltGIwGlPw3NH6hEPp37fdnvPG3zK7uLdfL/te37c9iML9izApVykRaZxUtZJjM0cy6h2o4K2UttXBJdwiL7gEFtIZeX4gRItHPGRdbuHMuIiKCp3UlTuJCbcRz+dywG/PA6ZI6DHib7Js60QkwaTn4F3pugS2QkPBNoiQwtEKcXGAxv5YfsPfL/te1blrgKga3xX/tz/z4zvNJ5+yf1MXYUPCSrhcCLYEUIkBKfSwpFf6iA6zF6vMCKevhy788vonuaj9trLP4SCbJj0f6bfQnX0mqjdVrOfgm7joesxgbbI0AJQSrEqdxWzts7ih20/sLVgKwADUwdy09CbGN9pPF3iTSdSfxFUwuESsAOh9tDK2DEHShz1clPBoZ0AfSIcbjfMflKHFjGljZo56Z+wdQ58NBWu/k2P5WEIOpRSrMtbx9dbvmbWlllsL9xOiIQwot0ILu57Mcd0PIa0qCBtxt7MBJdweJU4PMKRX1pRLzcVHAy7vtMa+KnJrJ8FOavhjJdMaaM2wqLhnOnw0rHw0eVw8WcmEGIQsSFvQ6VYbCnYgl3sjGw3kqkDpjK+03jiw+MDbWLQEVzCIXqs3Kp1HAlR9ROOdvGRiBwcMbDJzH4S4juZ0e/qQ1ofOOVx3bfj50fg2DsDbZHBj2wv3M6Xm75k1pZZbDiwAZvYGJ4+nIv6XsTxnY8nKSIp0CYGNUElHAp0icNbOEod9Eyvn9spLMRGemxE5YiBTWLnEtg2B076l+m3UV+GXABbfoOf/wOdjoRuxwbaIoMPKagoYNaWWXyx8QsW7V0EwNC0odw58k5O6HwCKZEpAbbQ4CGohMMNCBBqC6XYWQzoEkd8ZP0j0GYmRrLDF8Kx4FUIjdKDFxnqzymPwc5FOgT7Vb+0nTHYgxSH28HsHbP5fOPn/LT9JyrcFXSN78qNQ29kUtdJZERnBNpEQzUEmXDIIa4qpRT5pRX1dlUBdEiMZNG2vKYZUpoHyz6AgedAZELT8go2wqLh7OnwynHw3oVw6UwIbfkjphkOZVXuKmZsnMFXm79if9l+EsMTObvX2Zza9VT6Jvc1TWdbOEElHEp0icMjHCUVLhwuRUI9K8dBlzi+XLYLl1thr2XEwFpZ8g44S+GIKxp3fLCT1hvOeEELx5c3w+RnTeOCVkBhRSEzN83ko/UfsXr/asJsYRzT8RhO63YaR3U4ilCbcdm2FoJLOABBCLWF4nQ7vXqNN6DEkRCF063YU1BG+4RGDOiklHZTdRwJ7QY2/HiDps+peljdnx+BdoNg5FWBtshQDUopluQs4cN1H/LNlm8oc5XRK7EXd468k5O7nGxaRLVSgko43BxsVeVwOygo08IRG9GwEgdAdl5p44Rj2x+QuwHG3tLwYw2HcvQdsHs5fP133Remy9hAW2SwyCvLY8bGGXy8/mM25W8iKiSKSd0mcVaPs4wrqg0QVMKhAJtXq6qiMt2yqiHhQzzCseNACdCIJoFL34HQaOhzWsOPNRyKzQZnvKjrOz64BKb+AIlZgbYqqFmxbwXvrHmHrzZ/hcPtYGDqQB446gFOyjqJqNCoQJtn8BF+FQ4RmQA8ie6w/YpS6t/VpDkHuB/9Xl+qlPJPMyOlcItUtqpyunXMKYDoBgiHp5SRvb8RLascpbDyE+h7GoQHxxCTficiDqa8o8XjrXPg8lkQmRhoq4KKClcFs7bM4t0177Js3zIiQyI5s8eZnNPrHHom9gy0eQY/4DfhEBE78CxwApANzBeRGUqpVV5pegB/B0YrpfJExK/xAnQdx0FXVXG5jpDbkBJHRKid1NjwxnUCXDsTygtg0HkNP9ZQMyndYcpb8Mbp8N5FcOHHEFL/JtaGxrG7eDcfrPuAD9d9yP6y/WTFZXHHiDs4rdtpxIbFBto8gx/xZ4ljBLBBKbUJQETeBSYDq7zSTAWeVUrlASil9vrPHFVZx+EpcRRXljgaFr6iQ0Ik2/NKGm7CkncgLhOyjC/e52SN0a2rPrkSPr8RTn/OtLTyEyv2rWDayml8t/U73MrN0ZlHc17v8xjVfhQ2McMCBAP+FI4OwHav9WxgZJU0PQFEZDbanXW/UurrqhmJyJXAlQCdOnVqnDVKHVLicLqdFJY3vI4DoHNyFAu3NrAvR/E+2PgDjL7BjLnhLwadC3mb4ad/QVIXOPq2QFvUZnArN79m/8rrK19n4Z6FxITGcGGfCzm397l0jO0YaPMMzUygK8dDgB7AMUAm8IuIDFBKHfBOpJR6CXgJYPjw4apxp/KUOKSaEkfDfoas5Gg+X7qTcqeL8JB6llbWfAHKBf1MXCq/cvTtelCsHx+G+I4w2LgFm0K5q5wvN33J9JXT2ZS/iYzoDG4dfit/6vEnYsJMPV2w4k/h2AF4f4pkWtu8yQbmKqUcwGYRWYcWkvn+MEiJV89x5aSozEF4iK1eY3F40yUlGreC7ftL6J5WT1/uqhmQ2AUyBjTccEP9EYFTn4KCnfDZtbpnfq+Jgbaq1VFQUcB7a97jrdVvkVuWS++k3vx77L85MetE01HP4FfhmA/0EJEuaMGYAlRtMfUpcB7wuoikoF1Xm/xiTRVXFUBheXmjRvLLStHDTm7eV0/hKNkPm3+GI68zfvfmICRMV5ZPPw3evwQu+ljXgRjq5EDZAd5c/SZvr36bIkcRozuM5tJ+lzIyY6Tpe2GoxG/CoZRyish1wCx0/cVrSqmVIvIAsEApNcPad6KIrAJcwN+UUrl+sqgyyKG3cDTUTQXQJVkLx5Z9xfU7YO1X4HbqZriG5iE8Fi74EF6fCG9PgUu/gPaDA21ViyW3NJfpq6bz3pr3KHGWcELnE7hy4JX0TuodaNMMLRC/1nEopWYCM6tsu9drWQE3W5N/UYfWcQAUVZQ1Sjjio0JJjAplc249hWP1DO1vbz+0wecyNIHoZLjoE3jtJPjfn+DPX0NKj0Bb1aLYW7KX11e8zofrPqTCXcFJWSdx5YAr6Z7YPdCmGVowga4cbzbW7ilAWR0APSWOovJyYsPjGpVfVkp0/Uoc5UW6NdURVxg3VSCI7wAXfarF443JuuSR1DXQVgWc3NJcXln+Cu+vfR+XcnFK11OYOmAqWfFZgTbN0AoIGuH4aGE27ihQblUpHMUVDjKiGzcEaZfkaP7YVA+v2uZfwFUBPSc06jwGH5DSHS7+FKafCtNOtcSjS6CtCggFFQVMXzmdN1e9SbmrnMndJjN14FTTpNbQIIJGOARVGavK46oqrignOqlxP0FWSjQfL95BmcNFRGgt4rPhWwiL0SPWGQJHxgA9Vvn007SAXPolJHYOtFXNRqmzlLdXv81rK16joKKACVkTuGbwNXSJD04BNTSNoBEO0CFH4KCrqtjRuFZVcLBl1dbcEnpl1NCySilY/y10PcaEwGgJtBukxeONyTBtki55tHHxcLgdfLTuI15c9iL7SvcxLnMc1w+53lR6G5pE0HRhFhRuORhWHaDc4SAyrHGuqq6WcGzMKao5Uc4ayN8OPU5o1DkMfqD9YO22Ks+H6ZMgb2ugLfILSil+3v4zZ352Jg/PfZjOcZ15Y+IbPHvcs0Y0DE0muITDGjo2VLSrqszlILI2N1MtdEuNQQTW7SmsOdH6b/W8uxGOFkX7IbrCvCxfN9fNWRdoi3zKmv1rmPrNVK774ToAnhn/DK+f9DpD0oYE2DJDWyFohAMORscNtWvhcCtno4UjMsxOp6Qo1u+ppcSx/htI769b9hhaFh2G6noOV4UWj11LA21Rk9lbspd7Z9/LOZ+fw9q8tdw58k4+nvwxR3c82nTeM/iUoBEOwWsgJ9GuKhFXo11VAD3SYmsucThKYftc6HZso/M3+JmMAXDZ1xASoes8ts4JtEWNosJVwUvLXmLSJ5P4fNPnXNLvEr4880vO632eCQ9i8AtBUzkuXj3Hw+xWRbU4CW9kiQOgR3oMP63dS4XTTVhIFQ3ePk9/zWaNa3T+hmYgpbvuGPjm6fDmGTDlf9D9+EBbVW9m75jNv+b9i60FWzm+0/HcPOxmOsaZprW+wOFwkJ2dTVlZWaBNaRARERFkZmYSGuq/j4agEQ4AJVo4wu3heoM03lUF0DM9BqdbsTW3mB7pVVpWbfkVxA6dTTPcFk9CR13y+N8ZOjzJ5Gd1iPYWzK6iXTy64FG+3fotneM68+LxL3JUh6MCbVabIjs7m9jYWLKyslqNq08pRW5uLtnZ2XTp4r+m1kHjqgJwI4eUOMTmJCK08T9BDyvA4brq6jk2/6orYcPNSGitgphUuOQL6DRKDwb1y2O6OXULw+Fy8MryV5j82WR+zf6VG4bcwMenfWxEww+UlZWRnJzcakQDQERITk72eympXm9NETlVpPUP7eUZAdDbVdWUEkf3tBhs1bWsqiiGHQuhixnpr1URmQAXfgQDzoEfHtQjCbqcgbaqksV7F/Onz//Ek4ue5Kj2R/HZ6Z8xdeDUg8+zwee0JtHw0Bw219dVdS7wXxH5CB3ldo0fbfILYnX/syFeripH7b2+6yAi1GpZtbeKcGz7A9wOM0RsayQkHM58CRI6wa+P6XE9zp4G4YEbtKjYUcx/F/6X99a+R7vodjx73LOMyzR1Z4bAUS/hUEpdKCJx6LEzpomIAl4H3lFK1dKRoWXhlkMrx0XqCBdSD3qmx7Jmd5WfYMuvYAuBjlVHyjW0CkTguHsgPhO+vAVenwBT3tF1Ic3ML9m/8MCcB9hbspcL+lzA9UOuJyo0qtntMBi8qbf7SSlVAHwIvAu0A84AFonI9X6yzceIblWlvCrHbY4m1XEA9G0fx+Z9xZXD0AK6xNF+SEC/Ug0+YPhlcP57unf5y8c2a3Pd/WX7uf2X27n2+2uJDYvlzZPf5PYRtxvRMLQI6lvHMVlEPgF+AkKBEUqpicAg4Bb/medblFU57hEOaWIdB0D/9vEoBat3FegNzgrYuRgyRzTRWkOLoMcJcMX3EB6ngyMunO73U/6w7QfO+OwMvtn6DdcMuob3J73PoNRBfj+voWUyffp0hg0bxsCBAxkzpmWMZFnfOo4zgSeUUr94b1RKlYjI5b43yx+oysrxyk5R4mxSB0CA/h3iAVi5s4DhWUmwZwU4y6DjEU0z19BySO0JU7+HD/8Mn9+g7/FJ/wS7b9vJF1UU8cj8R/h0w6f0SerDKye+Qo9EM/BUS+Afn69k1c4Cn+bZt30c953ar9Y0hYWFPPLIIyxZsoSwsDAOHDjgUxsaS339NLurioaIPAKglPre51b5CU/IERHBLqEgTiJCmiYc6XHhpMSEsWJHvt6QPV/PM41wtCkiE+H8D/S48fNe0p0Fi/b6LPv5u+fzpxl/YsbGGUwdMJW3Tn7LiIYBu91OaWkpt9xyCwsWLCAhIYHi4mIuueQSpk6dyltvvRUQu+pb4jgBuL3KtonVbGuxCFRGxwWwE4rYml7iEBH6tY9nhedrZPs8iG2vK1YNbQt7CJz0sI4/9sVN8MJYOPt16Nz4PhTlrnKeXvQ0b6x6g46xHXlj4hvGLdUCqatk4C+ioqJYsWIFn3/+OVdeeSVXXHEFsbGxnHXWWZx66qmce+65XHDBBc1uV60lDhH5i4gsB3qLyDKvaTOwrHlM9B2eEgeAXcJ0yJGqoUIaQb/2cazfU0iZwwXZ84ybqq0z+Dy44jsIi9Yxrn77L7jdDc5mc/5mLvjyAqavms45vc7hg1M/MKJhOIT169cTHR3NlClTmDRpEmVlZWRnZ9Oxo27hZ7c37cO3sdT11nwbOBX4zJp7pmFKqQv9bJtP8YRV9wiHjVBC7E6fdJbp3yEep1uxafNGOLDNVIwHAxkD4MqfoM8k+O4+ePd8KM2r9+EzNs7g3C/OZU/JHp497lnuHnW3aTFlOIyHH36YXr16MXToUDZv3sw111xDZmYm2dnZALgb8cHiC+pyVSml1BYRubbqDhFJUkrt95NdfkFHx9UIodjtLp/k27+9riDPWTNbb+hohCMoiIiDs6fD3Bfhm7vhxXHwp1drvf8ljhIenvswMzbOYHj6cP499t+kR6c3o9GG1sS0adMO23bmmWdy3XXX8eWXX3Lqqac2v1HULRxvA5OAhRzq6cFa7+onu/yC8qrjEBWCzeYb4eiYFEliVCiObQt1YMOMAT7J19AKEIFRV0PmcPjwMnhtAhx9G4y9VdeJeLF2/1pu/flWthVu4y+D/sJVA6/CbguMq8HQeomOjub1118PqA21CodSapI1bxMj2ns6AGpCsNl8E4dIRBjaKZGY7asgtTeERvokX0MrInM4XP0bzLwNfvoXbPhehy5J0n+dzzZ8xgNzHiAhPIFXTnyFIzJMPZih9VKrcIjI0Nr2K6UW+dYc/+IZOhZAlG5V5SuGdk6k6+aNVKSeiAk5F6RExMOZL+pOg1/cDC+MxTHxER4p28R7695nZMZI/nP0f0iKSAq0pQZDk6jLVfV4LfsUMN6HtvidQ3xtKgSkxGd5j0ipIE0OsD6sB6b1fZAz4CzoOIK9H1/BzfP+wdKIcC7reS43jLyDEFtQDYFjaKPU5apqM+OeihwcyAkAFYqI70ocA2xbAVjo6GSEw8DC8hxuia6gpDyax/bmcNKe1yC2D/Q7Uz+MBkMrpi5X1Xil1A8icmZ1+5VSH/vHLP/gGToWQCk7yofCEbFvBQDf5qYyxWe5GlojH6z7gH/+8U86xHbglRNfobvDAZ9dq0OWrPwETvk/iEkLtJkGQ6Opq9x8NPADuu9GVRTQaoRDUIe6qtwhEOLw3Ql2L2VfeEf+2OHA5VbYbearMthwuV08vvBx3lz1JqM7jOY/4/5DXFic3vnnb2DOM/DjP2HLCJj4qHZpmdKHoRVSl6vqPmt+WfOY0xzoZlXKHYrCh8KxaynlKf0o3uhi9a6CyuCHhuCg2FHMbb/cxi/Zv3BBnwu4dfith9Zn2ENgzE3Q62T47Br4+ApY9i6c/CgktapW7QZDvcOqJ4vIUyKySEQWisiTIpLsb+N8jQJs1jjSbncobin3TcalB+DANuK6DANgzsZc3+RraBXsKtrFRV9dxOwds7lr5F3cMaKWSvDUnvDnWTDhEdg2F547En55FJw+ehYNhmagvoGa3gVygD8BZ1nL7/nLqOZAucNwUY5Squ7EdbF3NQCxnQbRNTWa3zfua3qehlbByn0rOe/L89hVtIvnjnuOKb3rUcNls+tOg9fNg54T4IeH4IUxsPlX/xtsMPiA+gpHO6XUg0qpzdb0ENC64iQopQdysoTC5QoFFOUuH3zp5WjhILU3R3VLZt7m/ThcgYkhY2g+Zu+YzWWzLiMiJIL/nfw/jurQwCi5ce3hnOlwwYe6xDF9Enx8FRTu9o/BhlZJax7I6RsRmQK8b62fBczyj0n+w7ty3O3Sg/CUOkuJCIloWsZ710BoNMR35Khue/jfH9tYviOfoZ0Sm5avocXyxaYvuOe3e+iW0I0XTniBlMiUxmfW4wS45g/49XGY/SSs+QLG3gKjroHQJj6bBt/w1R2we7lv88wYABP/XWuSVjmQk4gUikgBMBUdt6rCmt4FrvS/eb7jYNsVXeJwOg8KR5PJWQ2pvcBmY1RXXfVj6jnaLtNXTufvv/6doelDeX3C600TDQ9hUXDcPXDtXOhyNHz/D3h2BKyaAb5wpxpaJdUN5LRp0yYuv/xyzjrrrIDZVVerqtjmMqQ5UEKlq8rpCiEEHwnH3jX6qxFIig6jd0Ysv2/cx7XHdm963oYWg1u5eWLhE0xbOY0TO5/Iv8b+izC7jwPMJHeD896GTT/B13+H9y+CrLEw4V8meGYgqaNk4C+qG8jpmmuu4dVXXw2ocNR7FCMRSRSRESIyzjP50zB/IZ4Sh8NHJY6S/VC8Vwc3tBjTPYX5W/IoqfBdB0NDYHG5Xfxjzj+YtnIaU3pN4T/j/uN70fCm6zFw1a9w8mOwZ6UO2f7pNXBgu//OaWhxVDeQU0ugvs1xrwB+Qddr/MOa3+8/s3yPx1UlCpwuN263/tOXOJoYr8pqUUVan8pNx/ZOo8Lp5vcNxl3VFnC6ndz52518vP5jrhp4FXeOvLN5wqHbQ2DEVLhhka7vWP4hPD0MZt2lP1gMbZ7qBnJqCdS3xHEjcASw1YpfNQQ4UNdBIjJBRNaKyAYRuaOWdH8SESUiw+tpT8ORyq5/OFwKZQlHk0scXi2qPByRlURMeAjfr9nbtLwNAcfhcnDbL7cxc/NMbhx6I9cNuc4no0Y2iMhEPdb59QthwNnwx3Pw5CDd/6OiuHltMTQr06ZNY+3atSxatIg333yTiIgIcnNzufrqq1m8eDH/+te/AmJXfVtVlSmlykQEEQlXSq0RkV61HSAiduBZ4AQgG5gvIjOUUquqpItFC9PcRtjfIDytqiqcbvCVcOxdA2GxEJ9ZuSksxMaY7in8tHYvSqnmf9EYfEK5q5xbfrqFn7N/5rYjbuOivhcF1qCEjnD6s3DUdfD9g7r/x9yXYNzfYOjFpgVWkJCcnMwLL7wQUBvqW+LIFpEE4FPgWxH5DNhaxzEjgA1KqU1KKU9LrMnVpHsQeARoJuedotzl8l2JY99a3Ru4ijiM753GrvwyVu8qbFr+hoBQ5izj+u+v5+fsn7ln1D2BFw1v0vroCvQ/fwMpPeCrv8FTQ7SIOFqGD9zQtqmXcCilzlBKHVBK3Q/cA7wKnF7HYR0A75q8bGtbJdZAUR2VUl/WlpGIXCkiC0RkQU5OTn1MPjwPT5BDpV1VKKuOw9nEOo7cjZB8eOupY3qnAvDjWuOuam1UuCq46ceb+GPXHzw4+kHO6XVOoE2qnk4j4dIv4eIZkJhlCchgPQa6ERCDH2lIq6qhInIDMBDItkoRjUZEbMD/AbfUlVYp9ZJSarhSanhqamqjz+ntqvJJiaOiBAp2QFK3w3alxUYwMDOeb1btaXz+hmbH4XJwy0+3MHvnbO4/6n5O7356oE2qHRHoejRcNhMu+VwHTPzqNl0H8sfz4PBBc3ODoQr1bVV1LzAdSAZSgNdF5O46DtsBdPRaz7S2eYgF+gM/icgWYBQww68V5ABK6ToOFYIgTWtVlbdZz5MPFw6Aif3bsXT7AbLzfDfSoMF/ON1Obv/1dn7K/om7Rt7FmT2qHYamZSICXcZZAvKFdmF9fQc80R9+ftS0wjL4lPqWOC4AjlBK3WeFWh8F1OX0nQ/0EJEuIhIGTAFmeHYqpfKVUilKqSylVBbwB3CaUmpBg6+inigEQVlxpIQwW0TTShy5G/W8BuE4ZUA7AL5abmIPtXRcbhd3/XYX3279lr8N/1v9ghW2VLqMhUu/gEtnQodh8ONDWkC+ugMObAu0dYY2QH2FYyfg3WQjnENLD4ehlHIC16H7fKwG3ldKrRSRB0TktMYY2xQO9uNQlDt1AMJwe2TThGO/JRzVuKoAOiVHMaBDPF8s39X4cxj8jlKKB/94sLLJ7cX9Lg60Sb4hazRc8D785XfoexrMfxmeHAwfXwm7VwTaOkMrpq6hY59GVw3kAytF5Ftr/QRgXl2ZK6VmAjOrbLu3hrTH1M/kplNhCUdkSDSFFU1o9ZS7EaJTISKuxiQnD2jHI1+vYfv+EjomRTX+XAa/8fTip/lo/UdMHTCVKwZcEWhzfE96PzjjBRh/N8x5DhZOg2XvQddjYeTV0ONEsNW7utNgqLPEsQBYCHwC3An8CPwE3AV85lfL/IASvFxVEB0SS5GjqPEZ7t9UbYsqbzzuqpmm1NEieWv1W7y8/GXO6nkW1w+5PtDm+Jf4TJjwT7h5JYy/B3LWwjvnwtNDtaCU5QfaQkMroa4gh9M9y1Y9RU9rda1SyofjrjYfujmuJRyhPihxdD++1iSdkqMY1DGBTxbv4MpxXU1nwBbE15u/5pF5jzC+43juGnlX8NybyEQYdyuMvhFWf66b7876u+5QOPg8GHGljvZsMNRAvXqOi8gx6FZVW9DVBR1F5BKl1C9+s8zHePpxgMLp1ktRITHsKWtcvxDKi6BoNyTXPV70WcMyuefTFazYUcCATDMWeUtgzs45/P23vzMkbQiPjHuk5qFe2zL2UOh/pp52LtYdCBe9AfNf0W6s4ZfpMdLtoYG2NOA8Mu8R1uxf49M8eyf15vYRt9eZbvr06Tz11FM4HA7i4uL47bfffGpHY6jvv+Vx4ESl1FoAEekJvAMM85dh/sDTj8Pp0sIRGxbLxsJGuqrqqBj35rSB7Xnwi1V8sHC7EY4WwNr9a7npx5voEt+Fp497uukDebUF2g+BM56HEx6ARdNgwevw/sUQnQZDLtAhTZLq/kgy+JaWOpBTfYUj1CMaAEqpdSLSKj9DRCmcbo+rKqbxrqo8K+JKUpc6k8ZHhXJSvww+W7KTO0/uQ0RoM0RWNVRLTkkO135/LbFhsTx/3PPEhdXcsCEoiUnVsa/G3AwbvtMV6bOfhN+e0KHeh10KvU6BED+GlG+B1Kdk4A+8B3K65JJLGD58OJ9++ilffvklBQUFXH755Zx44onNbld9m1IsFJFXROQYa3oZXXHeqqh0VVkljriwWMpd5VS4GtEJ3tMePqFzvZKfPSyT/FIH3602PckDRamzlOt/uJ6CigKeOe4Z0qPTA21Sy8Vmh54nwXnvwF9XwrF36Tq9Dy6F/+sD39wNe1bVmY2haXgGcho9ejRXXnklzz33HKeffjovv/wyL7zwAu+9915A7KqvcFwNrAJusKZVwF/8ZZQ/8AzgJChcVh1HTJge4LBRpY4D2yA8HiIT6pV8dPcUOiRE8tYfpgNWIHArN3f9dherclfxn3H/oXdS77oPMmji2sPRt8GNS+GCj6DTKB3O5Pkj4YWxermokXWFhlqpbSCnhx56iGuvvTYgdtXpqrLCoy9VSvVGx5Zq1YhSOCxXVbwlHEWOIpIjkxuW0YFtkNCp3sntNuHCUZ155Os1rN1dSK+MNjUqb4vn6cVP8+3Wb7l1+K0c0/GYQJvTOrHZocfxeirKgRUfwdJ3dGiTWXfp4ZMHnQc9J5gQ7z7i4YcfZs6cOURHR9OvXz9efvlllFLccccdTJw4kaFDhwbErjqFQynlsgZj6qSUatWfyx5XlafEEdvUEkdiVoMOmXJER/773Tqm/b6Ff51pxo9uLmZsnMEry1/hrJ5ncXHfNtIrPNDEpMKoq/W0ZxUsexeWvQ/rvoaIeOh3Jgw4CzodqQXH0CimTZt22LannnqK7777jvz8fDZs2MDVV1/d7HbVt3I8Ed1zfB5QOeSYUqrZQ4c0hUPCqgMJ4bpitMHCoZQWji4NG3Y9MTqM0wd34JPF2dwxoTfxUa2yfUGrYmXuSv7x+z8YkTGCO0feGTx9NZqT9L66NdZx98Gmn2Dpu3pa+DrEZEC/06H/nyDziMPGrTE0nBtuuIEbbrghoDbUVzju8asVzYD34+qyXFVxEQddVQ2iNA8qChvkqvJwyVFZvLdgO+/O38ZVR9fdlNfQePaX7eevP/6V5MhkHj36UUJtRqj9is0O3Y/TU3mRLn2s/EQ37Z37AsR3hH5n6H4j7QYbEWnF1BWrKgJdMd4dWA68agUvbJUcjI7rKXHoPhX55Q0MtVDZoqrhwtG3fRxHdUvm1d82c8lRWaZprp9wup3c9vNt5Jbm8sbJb5AUkRRok4KL8Bjtqhpwlg5lsmYmrPxYj5f++1O6T0jf06HPJGg/1IhIK6OuVlXTgeFo0ZiI7gjYalECNnWwjiMlMhGAvLK8hmVUKRwda09XA9eN787ewnI+WJjdqOMNdfPUoqeYu3su9xx5D/2S+wXanOAmIl6HMrngA7h1PZz2tP7omv0kvDwenugHM/8Gm34GV6uMZBR01OWq6quUGgAgIq9Sj4i4LR+F0xOrKiySyJBI9pc1cJCbJpQ4AI7smszQTgm88NNGphzRkVC7iUzqS77e8jWvr3ydc3ud2/JH8As2opJ0L/ShF+vBpdZ9Dau/0KFO5r0EEQnQayL0ngTdxkNYYCNKK6VaXb2YUsrv56hLOCrlXynlbG0/oDeVY44DTrcixCaICEkRSeSVN6LEER6nH/LG2CLC9eN7cNm0+Xy6eAdnD29cycVwOFsLtnLf7PsYlDqI248ITG9fQz2JSoLB5+upohg2/qBFZO1M3cw3JFLXl/Q4UU9x7ZrVvIiICHJzc0lOTm414qGUIjc3l4gI/zaHrks4BolIgbUsQKS1LtpG1eriNVQKh10/CInhiRwoO9CwTDx9OJrwMB3TK5X+HeJ46of1TB7cgbAQU+poKhWuCv72898ItYfy2NGPEWqC87UewqKhz6l6cjlgy2+w5kstImu+0GkyBkCPk7SIZA73ezPfzMxMsrOzyclpXZ0bIyIiyMzM9Os56gqr3nZqbr3e8U6XIsQauCYxIpF9pfsalld+th7boCnmiPC3k3pzyWvzeGvuVi4bXXfMK0PtPL7gcVbvX83T458mIzoj0OYYGos9FLodq6eTH4W9q2DdLFj/rY6Z9etjEJmkhzTocaIulUT5vvFDaGgoXbqY/2V1BE0sacHTARCcbvfBEkdEIusPrG9YZoU7oeMRTbZpXI8URndP5ukfNvCnYZnERZgv5Mby/dbveXvN21zU9yLTM7wtIaJHMEzvB2Nv1k3hN/4A676BDd/C8vdBbHps9a6W2GQeYULB+5mg8Y94hEPUwToOQNdxlOXVv0LJUQYluRDbvuk2iXDHhD7sL67gxZ83Njm/YGVn0U7u+V23nvrr0L8G2hyDP4lM1J0Jz3xRt9C64nsYe6vulPvrY/D6RHgkC94+F/54Afau0fsMPiWoShwenC53pasqITyBclc5pc5SokLr0YKj0BoC1kcVdQMy45k8uD2v/LqZKUd0MuOSNxCn28ntv9yOUopHxz1q6jWCCZtd13VkDofxd+nSyOZfYdOPugf7uq91utj2OiS8Z4o1UZGbStAIB8IhrarsXiUO0L2MGyQcsb5r4fH3iX34btUe7puxklcvGd5qWnC0BF5b8RpLcpbwyNhH6BhnWqcFNZGJ0Pc0PYEeM2fTj7DxR1j3FSx9W29P6QmdR0PWGD3FmvqwhhI0wiGAEqkcATDUfqhw5Jblkhlbjwrvgp16HtfBZ7ZlxEfw1xN68tCXq/lm1R5O6mce5PqwKncVzy95nglZEzi568mBNsfQ0kjsrAeeGnYpuN2we6nuZLh1to7su/B1nS6p20ER6Twa4n33326rBI1w2Lw+4t0uV2WJIy0qDdAjw9ULH7uqPFx6VBYfLszmHzNWMqZ7CtHhQXNrGkW5q5w7f72TpIgk7h51d6DNMbR0bDY9PG77ITDmJnA5YfcyLSJbZsOqT2HRdJ02sQtkjdYi0nGkDo9ivACHEHRvJwFcLkdlb23PKHB7Suo5Ml/BTgiN1h0AfUiI3cbDZ/TnrBfm8K+vVvPQ6Sbsem08uehJNuZv5IXjXyA+3Izjbmgg9hDoMFRPR10PbhfsWaFFZOts3RFx8f902uhULSAdR+h5u8FBP95I0AiHsj4YBAUuR2WJIzE8kVBbaMOEI66dX75AhnVO4ooxXXj5182c2DeDcT1TfX6OtsC8XfN4c9WbnNvrXEZ3GB1ocwxtAZsd2g3S05HXaNdWzhrYPhe2z9NzT0dEWyi0H2yJiTUFWYV70AiH92teuZ2E2MP1dhHSotLYU1xP4SjcpYfS9BO3nNiLn9bmcNuHy5h10zgzZkcVShwl3DP7HjrHdebmYTcH2hxDW8Vm0+OMpPeF4ZfpbcX7LBH5Q8/nvQxzntH7Ejrr/iMdhuo+JRkDAx5ny58EjXB4t+VWLgehtoNFzfSo9AaUOHZB56N8bV0lEaF2/u+cwZzx3Gzu/HQ5z5w3xLSy8uLJRU+yq3gX0ydOr18rOIPBV0SnQO+T9QTgrND1JNv+0CWSbX/Aig/1PrFDWl/oMEQLSfuhkNanzXRMDB7h8Hr3KpcDu/3ghvTodFbsW1F3Hm637jXu52BrAzLjueXEXjzy9RpGZCVxyVFZfj1fa2HJ3iW8s+YdpvSewpC0IYE2xxDshIQd7EfCdXpb4R7YuQh2LIQdi2DVDB35FyAkQrvC2lulkvZDdMW7rfX1ww4a4VgWthmAUrEhbiehYQdvVnpUOt8Xf193COWSfeB2+qTXeF1cNa4rC7fu56EvVzEwM54hnRL9fs6WTIWrgvt+v4/06HRuHHpjoM0xGKonNl2Hhe81Ua8rBXmbtYjssARl4TSY+7zeHxYD6f2h3UAtKhkDIbW3FqUWTNAIx4JwHY8q1247pHIctHBUuCs4UH6AxIhaXtCVfTj8H97ZZhMeP3swpzz9K9e+tYgZ148hJSbc7+dtqby8/GU25W/iueOeIzo0OtDmGAz1Q0SXKpK66tEQQTcFzlkNOxfDrmXa3bX4LT0eCejK97Q+WkwyBul5en89qmILIWiEwxvldlZ2AAToEKM7/GQXZtcuHEV79TymeVpQxEeF8vwFwzj7xd+Z+sYC3pk6KiiHml2ft55Xlr/CKV1PYWzm2ECbYzA0DXuIDhGf4dXk3u2C/Ztg11ItJLuWwdqvDjYJRiC5Gxx7lx6zPcAEpXDgch5S4ugUp0fy21a4jQGptfSfKPYIR5o/rTuEAZnx/PfcIfzlrYXc8sFSnp4yBJsteCrL3crN/XPuJzY01gzMZGi72OyQ0kNPnpKJUtrL4RGS3csgMiGgZnoISuEQt4MQr+FaM2MzEYRthdtqP9BT4ohuPuEAmNA/g79P7M0/Z66hY2IUd0zs3aznDySfbviUZTnLeGj0Q7WXBg2GtoaIDn8S3+FgnUkLISiFA7ezMqw6QLg9nPTodLILs2s/rjhHV2YFoH321LFd2ba/hBd+3khsRAjXHtu92W1obvLL83li4RMMTRvKad1OC7Q5BoPBImiFw17F3dMxtiPbCupR4ogOTG9uEeGB0/pTXO7i0VlriQy18+cxbXt0sqcWPUVhRSF3jrzT9GUxGFoQQSkctiolDoBOsZ34cfuPtR9YvLdZ6zeqYrMJj541kNIKFw98sYpQu3DRkVkBs8efrNy3kg/WfcAFfS6gV1KvQJtjMBi8aH09T3yATTkOK3F0iuvE/rL9FFQU1HxgAEscHkLsNp46bwjH90njns9W8txPGwJqjz9wKzcP/fEQyZHJXDP4mkCbYzAYquBX4RCRCSKyVkQ2iMgd1ey/WURWicgyEfleRDr7057K8yoXtiquj+4Jus5gQ14tL+Kivc3WFLc2wkJsPH/hMCYPbs9/vl7Lv79aU/+hb1sBn6z/hBW5K7h1+K3EhsUG2hyDwVAFvwmHiNiBZ4GJQF/gPBHpWyXZYmC4Umog8CHwH3/Z4429mhJHz8SeAKzLW1f9QS4HlO4PqKvKm1C7jSfOGcwFIzvxws8bufWDZZQ7XYE2q8kUO4p5avFTDE0bysldzOBMBkNLxJ8ljhHABqXUJqVUBfAuMNk7gVLqR6VUibX6B1CPIfiaTqiqOKzEkR6VTlxYHOvz1ld/UPE+PQ+wq8obm0146PT+3HR8Dz5alM2Fr8wlt6g80GY1iVeXv8r+sv3cdsRtpkLcYGih+FM4OgDbvdazrW01cTnwVXU7RORKEVkgIgtycuo5Ul/VPLyWw6oRDhGhR2KPmkscAej8Vx9EhJuO78lT5w1hWXY+pz83m7W7CwNtVqPYWbST6SunM6nrJPql9Au0OQaDoQZaROW4iFwIDAcerW6/UuolpdRwpdTw1NSmf/GHqQrs1Vx5z8SerMtbh1u5D99ZZAlWM3f+qy+nDWrPe1cdSZnDzeRnf+P9BdvrPqiF8eSiJxERE8TQYGjh+FM4dgAdvdYzrW2HICLHA3cBpymlmsXPEqbKqw3b0SepDyXOErYUbDn8oBZa4vBmcMcEvrxhDEM7JXLbh8u45f2llFQ4A21WvVies5yZm2dySb9LyIjOCLQ5BoOhFvwpHPOBHiLSRUTCgCnADO8EIjIEeBEtGnv9aMshhKty7NX4zwelDgJg6d6lhx9UZA301IKFAyAtNoI3Lx/JTcf34OPF2Ux6+jcWbcsLtFm1opTi0QWPkhyRzJ/7/znQ5hgMhjrwm3AopZzo0U1mAauB95VSK0XkARHxxI94FIgBPhCRJSIyo4bsfEo4FYe1qgLIis8iLiyOpTnVCUcOhEZDWMsP6W236XqPty4fSVmFi7Oe/51/fbWaMkfLbHX1w/YfWLx3MdcNuc6ETDcYWgF+7TmulJoJzKyy7V6v5eP9ef6aCKcCRzUlDpvYGJg6sHrhKMmF6ORmsM53HNU9hVl/HcfDX67mxZ838f3qvfz7zAEMz0oKtGmVuNwunln8DFlxWZze/fRAm2MwGOpBi6gcb24iaihxgHZXbTiwgfzy/EN3lORCVOsSDoDYiFD+/aeBTP/zCErKnZz1whxufn8JOYUto9nuzM0z2XBgA9cNuY4QW1BGwDEYWh1BJxxusdcqHCMyRgAwd9fcQ3e0UuHwcHTPVL675Wj+ckw3Pl+6k/GP/cRrv23G4aqmBVkz4XA5eHbJs/RJ6sMJnU8ImB0Gg6FhBJ1wIHYi5PB+HB4Gpg4kNjSW33f+fuiO0v0Q2XJcPI0hKiyE2yf05uubxjG4UwIPfLGK4//vZ2Ys3Ynb3fwhSz5e/zE7inZw/ZDrsUnwPYoGQ2sl6P6tbrERgaPafhwAIbYQRrYbyW87fjs0/lPJ/lZd4vCmW2oMb/x5BK9dOpzIUDs3vLOYU5/5jZ/X5TRbzKtSZykvLnuRoWlDGdNhTLOc02Aw+IagEQ4lyprbCafmEgfA6A6j2VOyhw0HrICHLgeUF0BU6y5xeCMijO+dzpc3jOWJcweRX+rgktfmcfpzv/PNyt1+L4G8u+ZdckpzuGHoDSa0iMHQygga4fC8mtwSQoyU1ioc4zLHIQjfbf1ObyjZr+dtSDg82G3CGUMy+f6Wo3no9P7sLy7nyjcXMuHJX/hkcbZf6kBKHCW8tuI1RrcfzbD0YT7P32Aw+JegEQ6PdLgklFhKa6wcB0iLSmN4xnC+2vKVdt2UWsLRyus4aiM8xM6Fozrz4y3H8OSUwQjCX99bythHfuTp79ezz4fBEz9Y9wEHyg9w9aCrfZanwWBoPoJIOLTrxSUhxElxtSFHvJmQNYHN+Zt10MOSXL2xjdRx1EaI3cbkwR346saxvHrJcHqkx/D4t+s46l8/8Nf3lrBoW16T6kHKnGW8vuJ1RrYbyeC0wb4z3GAwNBtBJBwat4QSR0m1IUe8OaHzCYTYQvh0w6dt2lVVEzabcFyfdN68fCTf3Xw054/sxLer9nDmc79z0n9/4aVfNrK3sKzB+X60/iNyy3K5auBVfrDaYDA0B0EkHFoonBJKpFQQiqPW1IkRiZzQ+QQ+2/AZJYW79MYgKHFUR/e0GO4/rR9/3HkcD5/Rn5jwEP45cw1H/usH/jxtPjOX76pXOJMKVwWvrXiNoWlDOSLjiGaw3GAw+IMg6qqr3StO0Zcc5iyq84jze5/PV5u/4ot9CzkH2nQdR32ICQ/hgpGduWBkZzbmFPHRwmw+XrSDa9YsIjrMzvg+6ZzcP4NjeqURGWY/7PhPN3zK3pK9PDj6wQBYbzAYfEUQCYfGZQlHhKtu4RiUOog+SX14M28ZZ4ZGExIa4W/zWg3dUmO4bUJvbjmxF3M25vLl8l3MWrmbz5fuJCrMzrG905jQL4NxPVOJjwzF4Xbw2orXGJgykCPbHRlo8w0GQxMIOuFwEgrUTzhEhKsGXsVNP93ElwlJh457awB0c94xPVIY0yOFByf3Y+7m/VpEVuzmy2W7sNuEYZ0T6ZC5kh1FO7hjxB2m34bB0MoJGuHwvKoqPMJRUb8xKsZ3Gk8fInghqoKTXQ5C7aF+srD1E2K3Mbp7CqO7p/Dg5P4s3pbHD2v28v2aPazIfg9I5863XBzTazmju6UwqmsSyTHhgTbbYDA0kKARDo90lEkYAJEV++p3lAg3OsK5OrSMaSunMXXgVL9Z2Jaw24ThWUkMz0pizMD9XPXtbk7JuIl9EfF8tngHb8/dBkDvjFiO6pbCkd2SGdElifhII8wGQ0sniIRDU4YWjoiynHofM7qkmOOTEnlx2YtM7DKRzNhMf5nXJpm2Yhqpkak8cPxFhNnDcLjcLN+Rz5yNufy+cR9vzd3Ka7M3YxPonRHHsM6JDO2cwLBOSXRMijSuLYOhhRE8wmG9e1zKxgEVTURZA0aqLdnP7Vmj+b1wPnfPvptXTnzFjB1RT9buX8ucXXO4ceiNhNm1aIfabQztlMjQTolce2x3yp0uFm87wO8bc1m0NY+PF2Xz5h9bAUiJCdNpOycypGMCfdvHERthSiUGQyAJmref55vVpRR7VCKJ9S1xuN1Qlk9GTAZ39buLu367ixeXvci1g6/1m61tiekrpxMZEsnZPc+uMU14iJ1RXZMZ1VX3k3G5Fev2FLJwax6LtuWxaGse36zaU5m+S0o0/TvE0799HP07xNOvfRwJUWF+vxaDwaAJGuHw4HIr9qoE2pXtqTsxQEUhoCAigdO6ncbcXXN5cemL9E7szXGdj/Orra2d3cW7+WrzV0zpPYX48Ph6H2e3CX3axdGnXRwXjuoMwL6icpbvyGdFdj4rduazaGseny/dWXlMZmIkfdvF0Ssjlh7psfRKj6VLSjRhIUHUx9VgaCaCTjjcbtim0hlVuLB+B5RZQ8hG6Bff3aPuZkv+Fm7/9XZeiXzFxFuqhbdWv4VCcWHfC5ucV0pMOMf2SuPYXmmV2/KKK1i5s4AVO/NZsSOf1bsK+H7NXlxWSPgQm9AlJZqe6bHWFEOP9Bg6JkURHnJ4B0WDwVA/gk84lGKTakdoxQEozoXoOsKIlB7Qc0s4IkMiefq4p7lo5kX85bu/8PzxzxvxqIZSZykfrf+I4zodR4eYDn45R2J0WGUfEg/lThebcopZt6eQdXsKWbu7iBU785m5Yhee2Iw2gQ6JkXRJiaFLchRdUqLpkhpDl+RoOiRG1ho52WAwBJVw6LeGWyk2qnZ6U+76uoXDU+KITKjclBSRxKsnvcoV31zBld9eyRPHPMHoDqP9YHPrZeammRRWFHJ+n/Ob9bzhIfZKN5c3JRVONuwtYmNOEZtzitmcW8LmfUUs2ppHUbmzMl2Y3UbHpEiykqPJTIykY1IUmYmRZCZG0TExirjIENPKyxD0BJFwaFxu2Kja65WctdBpVO0HVHFVeciIzmDahGlc9e1VXPP9Ndw49EYu63eZeakASineWfMOPRN7MjRtaKDNAfR46wMzExiYmXDIdqUUOUXlbM4pZktuMZv2FbM5p5ht+0uYu3n/IaICEBseQmalmETSMTGKDomRZMRF0C4+guSYcFNiMbR5gk443G5FtkrFGRZHyI6FMOyS2g+oQTgAUiJTeHPim9z7+708sfAJFu9ZzL1H3ktqVKofLG89LN67mLV5a7nvyPtavJCKCGmxEaTFRjCy66GlT6UUBaVOtueVkJ1XQnZeKdv36/m23BJmb9hHScWhUYHtNiE9Npz0eC0kGXGRZMSHkxF/UFzS4sJNHYuhVRNEwmGFVVduFDZKUocQlz2/7sPKDuh5NcIBEBUaxaPjHmVw6mD+u+i/TP5sMn8b/jcmd5+MTYKzRc87a94hNiyWk7ucHGhTmoSIEB8VSnxUPP07HH7/lVLklTjYkVfK7oIyPeWXsiu/jD0FZazZXchPa3MOExeA+MhQUmPDSYkJIzU2wpqHkxITTmpsOKnWPCk6jFB7cD5HhpZL0AiH3RIOt9JjaJekDyNu0RNQmgeRiTUfWJYPCNTSnFREuLDvhYzpMIZ7f7+Xe3+/l7fXvM0tw29hVLs6XGFtjL0le/lu63ec3+d8okKjAm2OXxERkqLDSIoOYwDVPx9KKQrLnezOL9OCYs33FZWTU1jOvqJylmUfYF9hOcXVCAxAUnRYpbAkRunzVc6jw0iKCiMhKrTSlohQU5ox+JcgEg791abQwlGcOQ4W/R+s/xYGnlPzgWX5EB4Htrq/+rLis5g2YRpfb/6aJxc9ydRvpjIkbQiX9buMozseHRQlkA/XfYhLuTi317mBNqVFICLERYQSFxFKz/TYWtOWVDjZV1hBTlEZOYUVh4iLZ77zQAH7iyvIL615ILLIULslKqEkRoUdIjbxkSHERYYSHxlaOY+P1PZFhNpavGvR0DIIGuGwefqOixaO8vQhEJMBq2fULhylB2p0U1V7HrFxcteTOa7zcXy07iPeWPUGN/x4A1lxWfypx5+Y1G0SKZEpdWfUCnG4HXyw7gPGdBhDp7hOgTan1REVFkKn5BA6JdddUnO63BwodXCgpIL9xQ72F1eQV1LB/uKKym2e9W37S8grrqCgzFlrnmF2G3GWsMRFeIlKZEiluHgEJzYihJjwEGseSkxECFGhdmymYUBQEITCod0Bdrsd+p0B81+Bwj0Qm179gWX5EFl/4fAQbg/n/D7nc06vc5i1ZRbvrnmXxxc+zpOLnmRMhzGckHUCR2ce3aAe1S2dn7f/zL7Sfaa00QyE2G2kxOg6kfricLkpLHOSX+qgoNRBvjUVlFnz0oP7Csq08GzJLbbWnZUdK2tCBKLDtKDEeAlLdNih6zHhIUR7LXvWo8NDiA6zExlmJyosxLROa8EEjXCEeIZXt0ocdhswYirMfQHmvQjH3Vv9gWX5EJHQ+PPaQjil6ymc0vUUNuVv4rMNn/HFpi/4Kfsn7GJnePpwxmaOZWS7kfRM7Nmq3Vkfrf+ItKg006elhRJqt1XWgzQUpRTFFS4tNiUOisqdFJU7KCp3UVRmLZc5KSx3UlzupKjcSWGZnu/OL6O4XO8rKndWdsSsi/AQG1GWiOj5weXIMDvRYSF6Hq63R4bq5ciwQwXIsxwZaifCmowoNY2gEY7KEofVEdAmAsndoN/pMOc5GHYpJFTjXik7AEldfWJD1/iu/HXYX7lp6E2szF3JD9t+4Ptt3/PYgscAiA+P54j0IxiWPoz+Kf3pndSbiJDWMVztrqJdzN4xm6kDp5rIwW0QEaksHXRIiGx0PkopSipclvA4LdHRIlNS4aSkwkVphYviCielFS5KqiyXVDjZXeCoTFNiba+rNFSVMLuN8FAbEaEeQdHLESF2IsLsRIQcvi+8yrpnOdw6LjLM2mcth4fYCA+xExZia3NCFTT/cHtVV5XnRp7wIKybBZ9cDRd/BlVH+GtiiaM6RIT+Kf3pn9KfG4bewO7i3czfPZ95u+cxd9dcvtv2HQAhEkL3xO70S+5H76TedEvoRreEbiRFJPnUHl/w6YZPATizx5mBNcTQohGRSrdUDc7hBqOUosLlPkRcSqoul7soc7ooc7gorXBXLpc53Nbc2udwUVDqYK/Da79X2sYSYhMtJKH2StHyCEt4iI2wEK/1UJtXGu/9dsb1TKFf+8C7t4NIOA51Vdk8rUcSOsKk/8InV8KM6+G0Z8Du9bOU5TeocrwxZERncGq3Uzm126kA7Cnew4rcFazct5IV+1bwzdZv+Gj9R5XpkyKS6JbQja7xXekY25HMmEwyYzPpENOBmLAYv9paHS63i082fMKodqP8FpfKYKgJEbFesHYS/NgCXClFudNdKTDeolPqcFHuOHRfudNFhdNNuVMvlzv0coVn3WtfhdNNUbnTSuPySqfXHS5dooqPHGCEozmJlwjtpSrXvYMPKToOOhcObIUfH4bifXD68xCTCi4HVBT5XTiqkh6dTnp0Osd10mHblVLsKdnDpgOb2HBgA5vy9XzmZh0PypuE8AQ6xHSgfUx70qLSSItKIzUyVc+jUkmPSic6NNqn9s7ZNYddxbu4efjNPs3XYGhJiEhlHUlCM5/b5VZUON0txuUVNMKRRSJz2Y4753iAw2/A0bdBVDJ8/Xd4biSM+xv0naz3NbNwVEVEyIjOICM6g6M6HHXIvvzyfHYU7SC7MJvsomyyC7PZUbSD9Xnr+X3n7xQ7ig/LLyokipTIFBIjEkkMTyQhIoHE8EQSIxJJCE84ZB4XFkdMWAyhtppH3ft4/cckhicyvuN4n1+7wWDQ76vIsJbTsTNohKMSpV1Wtuo6Oh1xOXQ6Er66Db6+A354WG/3iozb0ogPjyc+PJ6+yX2r3V/sKGZvyV5ySnLYW2rNS/ayr3QfeeV57Crexar9q8gry8PhrrlTWYQ9gpiwGGJCY4gNiyUmNIaYML3847YfOb/P+ZVDwxoMhrZN0AnH5WO68PQvB4iNqOHS0/vCJZ/D5l90H4+NP0Ban+Y10odEh0bTJb4LXeK71JpOKUWps5S88jwOlB0grzyPvLI8CioKKKwopKiiiCKHNVUUUegoZE/JHooqikiKSOKcXrV0ojQYDG2KoBOO80Z05OaJR9UeWkEEuh6tpyBBRIgKjSIqNMpUcBsMhlrxa28zEZkgImtFZIOI3FHN/nARec/aP1dEsvxpj3VWE4/HYDAYmoDfhENE7MCzwESgL3CeiFR1xF8O5CmlugNPAI/4yx6DwWAw+AZ/ljhGABuUUpuUUhXAu8DkKmkmA9Ot5Q+B48RPxYElFbv9ka3BYDAEHf4Ujg7Adq/1bGtbtWmUUk4gHzhsEHARuVJEFojIgpycnEYZMyFtDJPKE8iIq2OMcYPBYDDUSquoHFdKvQS8BDB8+PCGBaWxuOK0fwD/8KVZBoPBEJT4s8SxA+jotZ5pbas2jYiEAPFArh9tMhgMBkMT8adwzAd6iEgXEQkDpgAzqqSZAVxiLZ8F/KBUfYMuGwwGgyEQ+M1VpZRyish1wCzADrymlFopIg8AC5RSM4BXgTdFZAOwHy0uBoPBYGjB+LWOQyk1E5hZZdu9XstlwNn+tMFgMBgMvqX1DjdnMBgMhoBghMNgMBgMDcIIh8FgMBgahBEOg8FgMDQIaW2tX0UkB9jayMNTgH0+NCeQmGtpebSV6wBzLS2VplxLZ6VUqi+MaHXC0RREZIFSanig7fAF5lpaHm3lOsBcS0ulpVyLcVUZDAaDoUEY4TAYDAZDgwg24Xgp0Ab4EHMtLY+2ch1grqWl0iKuJajqOAwGg8HQdIKtxGEwGAyGJmKEw2AwGAwNImiEQ0QmiMhaEdkgIncE2p7qEJEtIrJcRJaIyAJrW5KIfCsi6615orVdROQp63qWichQr3wusdKvF5FLajqfj21/TUT2isgKr20+s11Ehlm/zQbrWL8MMVzLtdwvIjuse7NERE722vd3y661InKS1/ZqnzlrqIG51vb3rGEH/HEdHUXkRxFZJSIrReRGa3uruy+1XEtrvC8RIjJPRJZa1/KP2s4vIuHW+gZrf1Zjr9FnKKXa/IQO674R6AqEAUuBvoG2qxo7twApVbb9B7jDWr4DeMRaPhn4ChBgFDDX2p4EbLLmidZyYjPYPg4YCqzwh+3APCutWMdObOZruR+4tZq0fa3nKRzoYj1n9tqeOeB9YIq1/ALwFz9dRztgqLUcC6yz7G1196WWa2mN90WAGGs5FJhr/YbVnh+4BnjBWp4CvNfYa/TVFCwljhHABqXUJqVUBfAuMDnANtWXycB0a3k6cLrX9jeU5g8gQUTaAScB3yql9iul8oBvgQn+NlIp9Qt6TBWf227ti1NK/aH0P+YNr7ya61pqYjLwrlKqXCm1GdiAft6qfeasL/LxwIfW8d6/i09RSu1SSi2ylguB1UAHWuF9qeVaaqIl3xellCqyVkOtSdVyfu/79SFwnGVvg67Rl9cQLMLRAdjutZ5N7Q9doFDANyKyUESutLalK6V2Wcu7gXRruaZraknX6ivbO1jLVbc3N9dZLpzXPO4dGn4tycABpZSzyna/Yrk3hqC/blv1falyLdAK74uI2EVkCbAXLcQbazl/pc3W/nzL3oC9A4JFOFoLY5RSQ4GJwLUiMs57p/VV1yrbT7dm2y2eB7oBg4FdwOMBtaYBiEgM8BFwk1KqwHtfa7sv1VxLq7wvSimXUmowkIkuIfQOrEUNI1iEYwfQ0Ws909rWolBK7bDme4FP0A/UHsslgDXfayWv6Zpa0rX6yvYd1nLV7c2GUmqP9Wd3Ay+j7w00/Fpy0S6gkCrb/YKIhKJftG8ppT62NrfK+1LdtbTW++JBKXUA+BE4spbzV9ps7Y+37A3YOyBYhGM+0MNqtRCGrmCaEWCbDkFEokUk1rMMnAisQNvpacVyCfCZtTwDuNhqCTMKyLfcD7OAE0Uk0Sq2n2htCwQ+sd3aVyAioyzf7sVeeTULnhetxRnoewP6WqZYLV+6AD3QFcbVPnPWF/6PwFnW8d6/i69tFuBVYLVS6v+8drW6+1LTtbTS+5IqIgnWciRwArrOpqbze9+vs4AfLHsbdI0+vQhf1rS35AndYmQd2pd4V6Dtqca+rujWD0uBlR4b0b7M74H1wHdAkjrYMuNZ63qWA8O98vozuqJsA3BZM9n/DtpV4ED7VC/3pe3AcPRLYSPwDFbUg2a8ljctW5eh/4TtvNLfZdm1Fq9WRTU9c9a9nmdd4wdAuJ+uYwzaDbUMWGJNJ7fG+1LLtbTG+zIQWGzZvAK4t7bzAxHW+gZrf9fGXqOvJhNyxGAwGAwNIlhcVQaDwWDwEUY4DAaDwdAgjHAYDAaDoUEY4TAYDAZDgzDCYTAYDIYGYYTDELSISJE1zxKR832c951V1n/3Zf4GQyAxwmEwQBbQIOHw6uFbE4cIh1LqqAbaZDC0WIxwGAzwb2Cs6PEc/moFoHtUROZbwfOuAhCRY0TkVxGZAayytn1qBaVc6QlMKSL/BiKt/N6ytnlKN2LlvUL0OBbneuX9k4h8KCJrROQtq7e0wdDiqOuryWAIBu5Aj+kwCcASgHyl1BEiEg7MFpFvrLRDgf5Kh7EG+LNSar8VOmK+iHyklLpDRK5TOohdVc5EB+QbBKRYx/xi7RsC9AN2ArOB0cBvvr5Yg6GpmBKHwXA4J6JjNi1Bh+5ORscBApjnJRoAN4jIUuAPdGC5HtTOGOAdpQPz7QF+Bo7wyjtb6YB9S9AuNIOhxWFKHAbD4QhwvVLqkOCQInIMUFxl/XjgSKVUiYj8hI4r1FjKvZZdmP+noYViShwGAxSihyP1MAv4ixXGGxHpaUUsrko8kGeJRm/08J8eHJ7jq/ArcK5Vj5KKHqZ2nk+uwmBoJswXjcGgo5S6LJfTNOBJtJtokVVBnUP1w4h+DVwtIqvR0Un/8Nr3ErBMRBYppS7w2v4JeuyFpehor7cppXZbwmMwtApMdFyDwWAwNAjjqjIYDAZDgzDCYTAYDIYGYYTDYDAYDA3CCIfBYDAYGoQRDoPBYDA0CCMcBoPBYGgQRjgMBoPB0CD+H6mYeDlG9bvYAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "iterations = 30000\n", "play_counts = tuple(gen_rsp.fictitious_play(iterations=iterations))\n", "\n", "plt.figure()\n", "probabilities_row = [\n", " row_play_counts / (1+np.sum(row_play_counts))\n", " for row_play_counts, col_play_counts in play_counts\n", "]\n", "for number, strategy in enumerate(zip(*probabilities_row)):\n", " plt.plot(strategy, label=f\"$s_{number}$\")\n", "plt.legend()\n", "plt.xlabel(\"Iteration\")\n", "plt.ylabel(\"Probability\")\n", "plt.title(\"Γενικευμένη εκδοχή Πέτρα - Ψαλίδι - Χαρτί: Παίκτης Γραμμή\")\n", "plt.legend()\n", "plt.show()\n", "\n", "\n", "plt.figure()\n", "probabilities_col = [\n", " col_play_counts / (1+np.sum(col_play_counts))\n", " for row_play_counts, col_play_counts in play_counts\n", "]\n", "for number, strategy in enumerate(zip(*probabilities_col)):\n", " plt.plot(strategy, label=f\"$s_{number}$\")\n", "\n", "plt.xlabel(\"Iteration\")\n", "plt.ylabel(\"Probability\")\n", "plt.title(\"Γενικευμένη εκδοχή Πέτρα - Ψαλίδι - Χαρτί: Παίκτης Στήλη\")\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 17, "id": "fff55e60", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "iterations = 30000\n", "play_counts = tuple(sharing.fictitious_play(iterations=iterations))\n", "\n", "plt.figure()\n", "probabilities_row = [\n", " row_play_counts / (1+np.sum(row_play_counts))\n", " for row_play_counts, col_play_counts in play_counts\n", "]\n", "for number, strategy in enumerate(zip(*probabilities_row)):\n", " plt.plot(strategy, label=f\"$s_{number}$\")\n", "\n", "plt.xlabel(\"Iteration\")\n", "plt.ylabel(\"Probability\")\n", "plt.title(\"Μοιρασία 2 Ευρώ: Παίκτης Γραμμή\")\n", "plt.legend()\n", "plt.show()\n", "\n", "plt.figure()\n", "probabilities_col = [\n", " col_play_counts / (1+np.sum(col_play_counts))\n", " for row_play_counts, col_play_counts in play_counts\n", "]\n", "for number, strategy in enumerate(zip(*probabilities_col)):\n", " plt.plot(strategy, label=f\"$s_{number}$\")\n", "\n", "plt.xlabel(\"Iteration\")\n", "plt.ylabel(\"Probability\")\n", "plt.title(\"Μοιρασία 2 Ευρώ: Παίκτης Στήλη\")\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "be09c325", "metadata": {}, "source": [ "### Άσκηση 4\n", "\n", "Να εφαρμόσετε το fictitious play, όπως παραπάνω, στο Δίλημμα του Φυλακισμένου, το Bach or Straviski και το Stag Hunt. Τι παρατηρείτε σε σχέση με την εξέλιξη των τιμών των εμπειρικών συχνοτήτων σε αυτά τα παίγνια; " ] }, { "cell_type": "markdown", "id": "20678689", "metadata": {}, "source": [ "### Έλεγχος Ισορροπιών Nash\n", "\n", "Παρακάτω χρησιμοποιούμε αφενός τη Nashpy και αφετέρου τον ορισμό της αναμενόμενης ωφέλειας των στρατηγικών των δύο παικτών ως γινόμενο των διανυσμάτων των στρατηγικών με τον αντίστοιχο πίνακα ωφέλειας, για να δείξουμε ότι το προφίλ μεικτών στρατηγικών $((0.03, 0.26, 0.71), (0.62, 0.27, 0.11))$ δεν αντιστοιχεί σε ισορροπία Nash για τη **γενικευμένη εκδοχή του Πέτρα - Ψαλίδι - Χαρτί**.\n", "\n", "Παρατηρούμε ότι με βάση την αναμενόμενη ωφέλεια του Π1, η οποία προκύπτει από την προτεινόμενη μεικτή στρατηγική $(0.62, 0.27, 0.11)$ του Π2, η βέλτιστη απόκριση του Π1 είναι το \"Χαρτί\" (και μόνο), ενώ ο Π1 στην προτεινόμενη μεικτή στρατηγική $(0.03, 0.26, 0.71)$ επιλέγει με μη μηδενική πιθανότητα και τις άλλες δύο στρατηγικές \"Πέτρα\" και \"Ψαλίδι\". \n", "\n", "Αντίστοιχα, με βάση την αναμενόμενη ωφέλεια του Π2, η οποία προκύπτει από την προτεινόμενη μεικτή στρατηγική $(0.03, 0.26, 0.71)$ του Π1, η βέλτιστη απόκριση του Π2 είναι το \"Ψαλίδι\" (και μόνο), ενώ ο Π2 στην προτεινόμενη μεικτή στρατηγική $(0.62, 0.27, 0.11)$ επιλέγει με μη μηδενική πιθανότητα και τις άλλες δύο στρατηγικές \"Πέτρα\" και \"Χαρτί\". " ] }, { "cell_type": "code", "execution_count": 18, "id": "820adcf8", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.65 0.84 1.51]\n", "[1.23 1.45 0.32]\n", "(False, False)\n" ] } ], "source": [ "row = np.array([0.03, 0.26, 0.71])\n", "col = np.array([0.62, 0.27, 0.11])\n", "print((gen_rsp.payoff_matrices[0]).dot(col))\n", "print(np.transpose((gen_rsp.payoff_matrices[1])).dot(row))\n", "print(gen_rsp.is_best_response(row, col))" ] }, { "cell_type": "markdown", "id": "e0863f9c", "metadata": {}, "source": [ "# Εγκατάσταση QuantEcon\n", "\n", "Στη συνέχεια, θα δείξουμε πως μπορούμε να χρησιμοποιήσουμε τη βιβλιοθήκη **QuantEcon** για τη μελέτη παιγνίων σε κανονική μορφή και τον υπολογισμό ισορροπιών Nash. \n", "\n", "Αρχικά εγκαθιστούμε τη βιβλιοθήκη QuantEcon." ] }, { "cell_type": "code", "execution_count": 19, "id": "9afd5cd7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: quantecon in /home/fotakis/.local/lib/python3.8/site-packages (0.5.3)\n", "Requirement already satisfied: scipy>=1.0.0 in /home/fotakis/.local/lib/python3.8/site-packages (from quantecon) (1.8.1)\n", "Requirement already satisfied: numpy in /home/fotakis/.local/lib/python3.8/site-packages (from quantecon) (1.21.4)\n", "Requirement already satisfied: numba in /home/fotakis/.local/lib/python3.8/site-packages (from quantecon) (0.56.4)\n", "Requirement already satisfied: sympy in /home/fotakis/.local/lib/python3.8/site-packages (from quantecon) (1.11.1)\n", "Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from quantecon) (2.22.0)\n", "Requirement already satisfied: llvmlite<0.40,>=0.39.0dev0 in /home/fotakis/.local/lib/python3.8/site-packages (from numba->quantecon) (0.39.1)\n", "Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from numba->quantecon) (45.2.0)\n", "Requirement already satisfied: importlib-metadata; python_version < \"3.9\" in /usr/lib/python3/dist-packages (from numba->quantecon) (1.5.0)\n", "Requirement already satisfied: mpmath>=0.19 in /home/fotakis/.local/lib/python3.8/site-packages (from sympy->quantecon) (1.2.1)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "pip install quantecon" ] }, { "cell_type": "markdown", "id": "525165ff", "metadata": {}, "source": [ "### Ορισμός Παιγνίων στην QuantEcon\n", "\n", "Ορίζουμε το Πέτρα-Ψαλίδι-Χαρτί (βασική και γενικευμένη εκδοχή), το Stag Hunt και τη μοιρασιά 2 ευρώ ως παίγνια δύο παικτών στην QuantEcon. Μπορείτε να δοκιμάστε να ορίσετε, με αντίστοιχο τρόπο, και τα άλλα παίγνια που είδαμε παραπάνω. " ] }, { "cell_type": "code", "execution_count": 20, "id": "eb7c6158", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Πέτρα - Ψαλίδι - Χαρτί\n", "2-player NormalFormGame with payoff profile array:\n", "[[[ 0, 0], [ 1, -1], [-1, 1]],\n", " [[-1, 1], [ 0, 0], [ 1, -1]],\n", " [[ 1, -1], [-1, 1], [ 0, 0]]]\n", "\n", "Γενικευμένη εκδοχή του Πέτρα - Ψαλίδι - Χαρτί\n", "2-player NormalFormGame with payoff profile array:\n", "[[[0, 0], [2, 1], [1, 2]],\n", " [[1, 2], [0, 0], [2, 1]],\n", " [[2, 1], [1, 2], [0, 0]]]\n", "\n", "Κοινωνική Συνεργασία - Stag Hunt\n", "2-player NormalFormGame with payoff profile array:\n", "[[[2, 2], [0, 3]],\n", " [[3, 0], [1, 1]]]\n", "\n", "Μοιρασιά 2 ευρώ\n", "2-player NormalFormGame with payoff profile array:\n", "[[[2. , 0. ], [0. , 0.5]],\n", " [[1. , 1. ], [0. , 0. ]],\n", " [[0. , 2. ], [0.5, 0. ]]]\n" ] } ], "source": [ "import quantecon as qe\n", "from quantecon import game_theory as gt\n", "\n", "rsp_bimatrix = [[(0, 0), (1, -1), (-1, 1)], \n", " [(-1, 1), (0, 0), (1, -1)], \n", " [(1, -1), (-1, 1), (0, 0)]]\n", "rsp_qe = gt.NormalFormGame(rsp_bimatrix)\n", "print(\"Πέτρα - Ψαλίδι - Χαρτί\")\n", "print(rsp_qe)\n", "\n", "gen_rsp_bimatrix = [[(0, 0), (2, 1), (1, 2)], \n", " [(1, 2), (0, 0), (2, 1)], \n", " [(2, 1), (1, 2), (0, 0)]]\n", "gen_rsp_qe = gt.NormalFormGame(gen_rsp_bimatrix)\n", "print(\"\\nΓενικευμένη εκδοχή του Πέτρα - Ψαλίδι - Χαρτί\")\n", "print(gen_rsp_qe)\n", "\n", "stag_hunt_bimatrix = [[(2, 2), (0, 3)], \n", " [(3, 0), (1, 1)]] \n", "stag_hunt_qe = gt.NormalFormGame(stag_hunt_bimatrix)\n", "print(\"\\nΚοινωνική Συνεργασία - Stag Hunt\")\n", "print(stag_hunt_qe)\n", "\n", "sharing_bimatrix = [[(2, 0), (0, 0.5)], \n", " [(1, 1), (0, 0)], \n", " [(0, 2), (0.5, 0)]]\n", "sharing_qe = gt.NormalFormGame(sharing_bimatrix)\n", "print(\"\\nΜοιρασιά 2 ευρώ\")\n", "print(sharing_qe)" ] }, { "cell_type": "markdown", "id": "818847d2", "metadata": {}, "source": [ "### Αμιγείς Ισορροπίες Nash με την QuantEcon\n", "\n", "Υπολογίζουμε τις αμιγείς ισορροπίες Nash για το Πέτρα-Ψαλίδι-Χαρτί (βασική και γενικευμένη εκδοχή), το Stag Hunt και τη μοιρασιά 2 ευρώ με την QuantEcon. Μπορείτε να δοκιμάστε να υπολογίσετε τις αμιγείς ισορροπίες Nash, με αντίστοιχο τρόπο, και για τα άλλα παίγνια που είδαμε παραπάνω. " ] }, { "cell_type": "code", "execution_count": 21, "id": "12d17323", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Αμιγείς ισορροπίες Nash του Πέτρα - Ψαλίδι - Χαρτί: []\n", "Αμιγείς ισορροπίες Nash της γενικευμένης εκδοχής του Πέτρα - Ψαλίδι - Χαρτί: []\n", "Αμιγείς ισορροπίες Nash της Κοινωνικής Συνεργασίας - Stag Hunt: [(1, 1)]\n", "Αμιγείς ισορροπίες Nash της μοιρασίας 2 ευρώ: []\n" ] } ], "source": [ "print(\"Αμιγείς ισορροπίες Nash του Πέτρα - Ψαλίδι - Χαρτί:\", gt.pure_nash_brute(rsp_qe))\n", "print(\"Αμιγείς ισορροπίες Nash της γενικευμένης εκδοχής του Πέτρα - Ψαλίδι - Χαρτί:\", gt.pure_nash_brute(gen_rsp_qe))\n", "print(\"Αμιγείς ισορροπίες Nash της Κοινωνικής Συνεργασίας - Stag Hunt:\", gt.pure_nash_brute(stag_hunt_qe))\n", "print(\"Αμιγείς ισορροπίες Nash της μοιρασίας 2 ευρώ:\", gt.pure_nash_brute(sharing_qe))" ] }, { "cell_type": "markdown", "id": "1f43133f", "metadata": {}, "source": [ "### Ισορροπίες Nash με την QuantEcon\n", "\n", "Υπολογίζουμε όλες τις ισορροπίες Nash για το Πέτρα-Ψαλίδι-Χαρτί (βασική και γενικευμένη εκδοχή), το Stag Hunt και τη μοιρασιά 2 ευρώ με την QuantEcon. Μπορείτε να δοκιμάστε να υπολογίσετε όλες τις ισορροπίες Nash, με αντίστοιχο τρόπο, και για τα άλλα παίγνια που είδαμε παραπάνω. " ] }, { "cell_type": "code", "execution_count": 22, "id": "6cdd8f54", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Ισορροπία Nash του Πέτρα - Ψαλίδι - Χαρτί:\n", " [(array([0.33333333, 0.33333333, 0.33333333]), array([0.33333333, 0.33333333, 0.33333333]))]\n", "\n", "Ισορροπία Nash της γενικευμένης εκδοχής του Πέτρα - Ψαλίδι - Χαρτί:\n", " [(array([0.33333333, 0.33333333, 0.33333333]), array([0.33333333, 0.33333333, 0.33333333]))]\n", "\n", "Ισορροπία Nash της Κοινωνικής Συνεργασίας - Stag Hunt:\n", " [(array([0., 1.]), array([0., 1.]))]\n", "\n", "Ισορροπία Nash της μοιρασίας 2 ευρώ:\n", " [(array([0.8, 0. , 0.2]), array([0.2, 0.8]))]\n" ] } ], "source": [ "print(\"Ισορροπία Nash του Πέτρα - Ψαλίδι - Χαρτί:\\n\", gt.support_enumeration(rsp_qe))\n", "print(\"\\nΙσορροπία Nash της γενικευμένης εκδοχής του Πέτρα - Ψαλίδι - Χαρτί:\\n\", gt.support_enumeration(gen_rsp_qe))\n", "print(\"\\nΙσορροπία Nash της Κοινωνικής Συνεργασίας - Stag Hunt:\\n\", gt.support_enumeration(stag_hunt_qe))\n", "print(\"\\nΙσορροπία Nash της μοιρασίας 2 ευρώ:\\n\", gt.support_enumeration(sharing_qe))" ] }, { "cell_type": "markdown", "id": "f437e880", "metadata": {}, "source": [ "### Έλεγχος Ισορροπιών Nash με την QuantEcon\n", "\n", "Παρακάτω χρησιμοποιούμε αφενός τηn QuantEcon και αφετέρου τον ορισμό της αναμενόμενης ωφέλειας των στρατηγικών των δύο παικτών ως γινόμενο των διανυσμάτων των στρατηγικών με τον αντίστοιχο πίνακα ωφέλειας, για να δείξουμε ότι το προφίλ μεικτών στρατηγικών $((0.03, 0.26, 0.71), (0.62, 0.27, 0.11))$ δεν αντιστοιχεί σε ισορροπία Nash για τη **γενικευμένη εκδοχή του Πέτρα - Ψαλίδι - Χαρτί**." ] }, { "cell_type": "code", "execution_count": 23, "id": "192a3eed", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.65 0.84 1.51]\n", "[1.23 1.45 0.32]\n", "False\n" ] } ], "source": [ "row = np.array([0.03, 0.26, 0.71])\n", "col = np.array([0.62, 0.27, 0.11])\n", "\n", "print((gen_rsp_qe.players[0].payoff_array).dot(col))\n", "print((gen_rsp_qe.players[1].payoff_array).dot(row))\n", "print(gen_rsp_qe.is_nash((row, col)))" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }