From a1d71684dba6566157ffe676c6e3fefa14be2ace Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Fri, 21 Feb 2025 17:38:34 +0530 Subject: [PATCH 01/21] Backend structure, dashboard and create/update course --- blt/urls.py | 5 +- ...t_lecture_lecturestatus_rating_and_more.py | 229 ++++++++++++++++++ website/models.py | 100 ++++++++ website/templates/bltv.html | 107 -------- website/templates/bltv/bltv.html | 96 ++++++++ .../templates/bltv/instructor_dashboard.html | 179 ++++++++++++++ website/views/bltv_education.py | 74 ++++++ 7 files changed, 682 insertions(+), 108 deletions(-) create mode 100644 website/migrations/0205_course_enrollment_lecture_lecturestatus_rating_and_more.py delete mode 100644 website/templates/bltv.html create mode 100644 website/templates/bltv/bltv.html create mode 100644 website/templates/bltv/instructor_dashboard.html create mode 100644 website/views/bltv_education.py diff --git a/blt/urls.py b/blt/urls.py index 47ec2fc96..aff1aeb6d 100644 --- a/blt/urls.py +++ b/blt/urls.py @@ -41,6 +41,7 @@ ) from website.views.bitcoin import batch_send_bacon_tokens_view, pending_transactions_view from website.views.blog import PostCreateView, PostDeleteView, PostDetailView, PostListView, PostUpdateView +from website.views.bltv_education import create_or_update_course, instructor_dashboard from website.views.company import ( AddDomainView, AddHuntView, @@ -587,7 +588,9 @@ name="deletions", ), re_path(r"^bacon/$", TemplateView.as_view(template_name="bacon.html"), name="bacon"), - re_path(r"^bltv/$", TemplateView.as_view(template_name="bltv.html"), name="bltv"), + re_path(r"^bltv/$", TemplateView.as_view(template_name="bltv/bltv.html"), name="bltv"), + path("bltv/instructor_dashboard/", instructor_dashboard, name="instructor_dashboard"), + path("bltv/create-or-update-course/", create_or_update_course, name="create_or_update_course"), re_path(r"^gsoc/$", TemplateView.as_view(template_name="gsoc.html"), name="gsoc"), re_path( r"^privacypolicy/$", diff --git a/website/migrations/0205_course_enrollment_lecture_lecturestatus_rating_and_more.py b/website/migrations/0205_course_enrollment_lecture_lecturestatus_rating_and_more.py new file mode 100644 index 000000000..a78bc0916 --- /dev/null +++ b/website/migrations/0205_course_enrollment_lecture_lecturestatus_rating_and_more.py @@ -0,0 +1,229 @@ +# Generated by Django 5.1.4 on 2025-02-21 12:03 + +import django.core.validators +import django.db.models.deletion +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("website", "0204_ossharticle_osshcommunity_osshdiscussionchannel_and_more"), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name="Course", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ("title", models.CharField(max_length=200)), + ("description", models.TextField()), + ("thumbnail", models.ImageField(blank=True, null=True, upload_to="course_thumbnails/")), + ( + "level", + models.CharField( + choices=[("BEG", "Beginner"), ("INT", "Intermediate"), ("ADV", "Advanced")], + default="BEG", + max_length=3, + ), + ), + ("created_at", models.DateTimeField(auto_now_add=True)), + ("updated_at", models.DateTimeField(auto_now=True)), + ], + ), + migrations.CreateModel( + name="Enrollment", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ("enrolled_at", models.DateTimeField(auto_now_add=True)), + ("completed", models.BooleanField(default=False)), + ("last_accessed", models.DateTimeField(auto_now=True)), + ], + ), + migrations.CreateModel( + name="Lecture", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ("title", models.CharField(max_length=200)), + ( + "content_type", + models.CharField( + choices=[ + ("VIDEO", "Video Lecture"), + ("LIVE", "Live Session"), + ("DOCUMENT", "Document"), + ("QUIZ", "Quiz"), + ], + max_length=10, + ), + ), + ("video_url", models.URLField(blank=True, null=True)), + ("live_url", models.URLField(blank=True, null=True)), + ("scheduled_time", models.DateTimeField()), + ("recording_url", models.URLField(blank=True, null=True)), + ("content", models.TextField(blank=True, null=True)), + ("duration", models.PositiveIntegerField(blank=True, help_text="Duration in minutes", null=True)), + ("order", models.PositiveIntegerField()), + ], + options={ + "ordering": ["order"], + }, + ), + migrations.CreateModel( + name="LectureStatus", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ( + "status", + models.CharField(choices=[("PROGRESS", "In Progress"), ("COMPLETED", "Completed")], max_length=15), + ), + ], + ), + migrations.CreateModel( + name="Rating", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ( + "score", + models.DecimalField( + decimal_places=2, + max_digits=3, + validators=[ + django.core.validators.MinValueValidator(0.0), + django.core.validators.MaxValueValidator(5.0), + ], + ), + ), + ("comment", models.TextField(blank=True, null=True)), + ("created_at", models.DateTimeField(auto_now_add=True)), + ], + ), + migrations.CreateModel( + name="Section", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ("title", models.CharField(max_length=200)), + ("order", models.PositiveIntegerField()), + ], + options={ + "ordering": ["order"], + }, + ), + migrations.RemoveConstraint( + model_name="organization", + name="unique_organization_slug", + ), + migrations.RemoveIndex( + model_name="domain", + name="domain_org_idx", + ), + migrations.RemoveIndex( + model_name="ip", + name="ip_path_created_idx", + ), + migrations.RemoveIndex( + model_name="issue", + name="issue_domain_status_idx", + ), + migrations.RemoveIndex( + model_name="organization", + name="org_created_idx", + ), + migrations.RemoveIndex( + model_name="project", + name="project_org_idx", + ), + migrations.RemoveIndex( + model_name="repo", + name="repo_project_idx", + ), + migrations.AlterField( + model_name="organization", + name="slug", + field=models.SlugField(blank=True, max_length=255, unique=True), + ), + migrations.AddField( + model_name="course", + name="instructor", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="courses_teaching", to="website.userprofile" + ), + ), + migrations.AddField( + model_name="course", + name="tags", + field=models.ManyToManyField(blank=True, related_name="courses", to="website.tag"), + ), + migrations.AddField( + model_name="enrollment", + name="course", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="enrollments", to="website.course" + ), + ), + migrations.AddField( + model_name="enrollment", + name="student", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="enrollments", to=settings.AUTH_USER_MODEL + ), + ), + migrations.AddField( + model_name="lecture", + name="tags", + field=models.ManyToManyField(blank=True, related_name="lectures", to="website.tag"), + ), + migrations.AddField( + model_name="lecturestatus", + name="lecture", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="lecture_status", to="website.lecture" + ), + ), + migrations.AddField( + model_name="lecturestatus", + name="student", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="student", to="website.userprofile" + ), + ), + migrations.AddField( + model_name="rating", + name="course", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="ratings", to="website.course" + ), + ), + migrations.AddField( + model_name="rating", + name="user", + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="website.userprofile"), + ), + migrations.AddField( + model_name="section", + name="course", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.CASCADE, + related_name="sections", + to="website.course", + ), + ), + migrations.AddField( + model_name="lecture", + name="section", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.CASCADE, + related_name="lectures", + to="website.section", + ), + ), + migrations.AlterUniqueTogether( + name="enrollment", + unique_together={("student", "course")}, + ), + ] diff --git a/website/models.py b/website/models.py index ffa812ab5..84336d753 100644 --- a/website/models.py +++ b/website/models.py @@ -1694,3 +1694,103 @@ class Meta: def __str__(self): return f"{self.command_name} (Last run: {self.last_run})" + + +class Course(models.Model): + LEVEL_CHOICES = [("BEG", "Beginner"), ("INT", "Intermediate"), ("ADV", "Advanced")] + + title = models.CharField(max_length=200) + description = models.TextField() + instructor = models.ForeignKey(UserProfile, on_delete=models.CASCADE, related_name="courses_teaching") + thumbnail = models.ImageField(upload_to="course_thumbnails/", null=True, blank=True) + level = models.CharField(max_length=3, choices=LEVEL_CHOICES, default="BEG") + tags = models.ManyToManyField(Tag, related_name="courses", blank=True) + created_at = models.DateTimeField(auto_now_add=True) + updated_at = models.DateTimeField(auto_now=True) + + def __str__(self): + return f"{self.title} taught by {self.instructor.user.username}" + + +class Section(models.Model): + title = models.CharField(max_length=200) + course = models.ForeignKey(Course, on_delete=models.CASCADE, related_name="sections", null=True, blank=True) + order = models.PositiveIntegerField() + + class Meta: + ordering = ["order"] + + def __str__(self): + return f"{self.course.title} - {self.title}" + + +class Lecture(models.Model): + CONTENT_TYPES = [("VIDEO", "Video Lecture"), ("LIVE", "Live Session"), ("DOCUMENT", "Document"), ("QUIZ", "Quiz")] + + title = models.CharField(max_length=200) + section = models.ForeignKey(Section, on_delete=models.CASCADE, related_name="lectures", null=True, blank=True) + content_type = models.CharField(max_length=10, choices=CONTENT_TYPES) + video_url = models.URLField(null=True, blank=True) + live_url = models.URLField(null=True, blank=True) + scheduled_time = models.DateTimeField() + recording_url = models.URLField(null=True, blank=True) + content = models.TextField(null=True, blank=True) # For document-type content + # Quiz support can be added later + duration = models.PositiveIntegerField(help_text="Duration in minutes", null=True, blank=True) + tags = models.ManyToManyField(Tag, related_name="lectures", blank=True) + order = models.PositiveIntegerField() + + class Meta: + ordering = ["order"] + + def __str__(self): + return f"{self.title} ({self.content_type})" + + +class LectureStatus(models.Model): + STATUS_TYPES = [ + ("PROGRESS", "In Progress"), + ("COMPLETED", "Completed"), + ] + student = models.ForeignKey(UserProfile, on_delete=models.CASCADE, related_name="student") + lecture = models.ForeignKey(Lecture, on_delete=models.CASCADE, related_name="lecture_status") + status = models.CharField(max_length=15, choices=STATUS_TYPES) + + def __str__(self): + return f"{self.student.user.username} has status {self.status} for {self.lecture.title}" + + +class Enrollment(models.Model): + student = models.ForeignKey(User, on_delete=models.CASCADE, related_name="enrollments") + course = models.ForeignKey(Course, on_delete=models.CASCADE, related_name="enrollments") + enrolled_at = models.DateTimeField(auto_now_add=True) + completed = models.BooleanField(default=False) + last_accessed = models.DateTimeField(auto_now=True) + + class Meta: + unique_together = ["student", "course"] + + def calculate_progress(self): + total_lectures = Lecture.objects.filter(section__course=self.course).count() + completed_lectures = self.student.lecture_statuses.filter( + status="COMPLETED", lecture__section__course=self.course + ).count() + if total_lectures > 0: + return (completed_lectures / total_lectures) * 100 + return 0.0 + + def __str__(self): + return f"{self.student.username} - {self.course.title}" + + +class Rating(models.Model): + course = models.ForeignKey(Course, on_delete=models.CASCADE, related_name="ratings") + user = models.ForeignKey(UserProfile, on_delete=models.CASCADE) + score = models.DecimalField( + max_digits=3, decimal_places=2, validators=[MinValueValidator(0.0), MaxValueValidator(5.0)] + ) + comment = models.TextField(null=True, blank=True) + created_at = models.DateTimeField(auto_now_add=True) + + def __str__(self): + return f"{self.score} by {self.user.user.username} for {self.course.title}" diff --git a/website/templates/bltv.html b/website/templates/bltv.html deleted file mode 100644 index e5927d8ec..000000000 --- a/website/templates/bltv.html +++ /dev/null @@ -1,107 +0,0 @@ -{% extends "base.html" %} -{% load static %} -{% load custom_tags %} -{% block title %} - {% env 'PROJECT_NAME' %}V - Videos on {% env 'PROJECT_NAME' %} Projects -{% endblock title %} -{% block description %} - Watch videos related to the {% env 'PROJECT_NAME' %} projects. Learn how to configure, host, and use various tools in the OWASP {% env 'PROJECT_NAME' %} ecosystem through video tutorials. -{% endblock description %} -{% block keywords %} - {% env 'PROJECT_NAME' %}V, {% env 'PROJECT_NAME' %} projects, video tutorials, YouTube, Slack bot, PythonAnywhere, OWASP -{% endblock keywords %} -{% block og_title %} - {% env 'PROJECT_NAME' %}V - Videos on {% env 'PROJECT_NAME' %} Projects -{% endblock og_title %} -{% block og_description %} - Explore {% env 'PROJECT_NAME' %} project tutorials on YouTube. Learn to configure Slack bots and host them on platforms like PythonAnywhere. -{% endblock og_description %} -{% block content %} - {% include "includes/sidenav.html" %} - -
-
-
-

BLTV

-
-
-
-
-
-
- -
-
-
-
-
-
- -
-
-
-
-
-
- -
-
-
-
-
-
- -
-
-
-
-
-
- -
-
-
-
-
-{% endblock content %} diff --git a/website/templates/bltv/bltv.html b/website/templates/bltv/bltv.html new file mode 100644 index 000000000..36bd7b879 --- /dev/null +++ b/website/templates/bltv/bltv.html @@ -0,0 +1,96 @@ +{% extends "base.html" %} +{% load static %} +{% load custom_tags %} +{% block title %} + {% env 'PROJECT_NAME' %}V - Videos on {% env 'PROJECT_NAME' %} Projects +{% endblock title %} +{% block description %} + Watch videos related to the {% env 'PROJECT_NAME' %} projects. Learn how to configure, host, and use various tools in the OWASP {% env 'PROJECT_NAME' %} ecosystem through video tutorials. +{% endblock description %} +{% block keywords %} + {% env 'PROJECT_NAME' %}V, {% env 'PROJECT_NAME' %} projects, video tutorials, YouTube, Slack bot, PythonAnywhere, OWASP +{% endblock keywords %} +{% block og_title %} + {% env 'PROJECT_NAME' %}V - Videos on {% env 'PROJECT_NAME' %} Projects +{% endblock og_title %} +{% block og_description %} + Explore {% env 'PROJECT_NAME' %} project tutorials on YouTube. Learn to configure Slack bots and host them on platforms like PythonAnywhere. +{% endblock og_description %} +{% block content %} + {% include "includes/sidenav.html" %} +
+
+

+ BLTV +

+
+
+

Courses

+
+ +
+

Standalone lectures

+
+
+

Featured videos

+
+
+
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+
+{% endblock content %} diff --git a/website/templates/bltv/instructor_dashboard.html b/website/templates/bltv/instructor_dashboard.html new file mode 100644 index 000000000..0d7114c69 --- /dev/null +++ b/website/templates/bltv/instructor_dashboard.html @@ -0,0 +1,179 @@ +{% extends "base.html" %} +{% block content %} + {% include "includes/sidenav.html" %} + + +
+
+

+ Username's Dashboard +

+
+
+ + + +
+ +
+

Welcome, Instructor!

+

Select an option from the sidebar to begin.

+
+ + + + + +
+
+ + +
+{% endblock content %} diff --git a/website/views/bltv_education.py b/website/views/bltv_education.py new file mode 100644 index 000000000..5b5fa6e6c --- /dev/null +++ b/website/views/bltv_education.py @@ -0,0 +1,74 @@ +from django.contrib.auth.decorators import login_required +from django.http import JsonResponse +from django.shortcuts import render +from django.views.decorators.http import require_POST + +from website.models import Course, Tag, UserProfile + + +def instructor_dashboard(request): + template = "bltv/instructor_dashboard.html" + tags = Tag.objects.all() + context = {"tags": tags} + + return render(request, template, context) + + +@require_POST +@login_required(login_url="/accounts/login") +def create_or_update_course(request): + try: + if request.method == "POST": + title = request.POST.get("title") + description = request.POST.get("description") + level = request.POST.get("level", "BEG") + tag_ids = request.POST.getlist("tags") + thumbnail = request.FILES.get("thumbnail") + + if not title or not description: + missing_fields = [] + if not title: + missing_fields.append("Course title") + if not description: + missing_fields.append("Course description") + return JsonResponse( + {"success": False, "message": f"{', '.join(missing_fields)} is required"}, status=400 + ) + + user = request.user + user_profile = UserProfile.objects.get(user=user) + + course_id = request.POST.get("id") + if course_id: + try: + course = Course.objects.get(id=course_id) + except Course.DoesNotExist: + return JsonResponse({"success": False, "message": "Course not found"}, status=404) + else: + course = Course() + + course.title = title + course.description = description + course.instructor = user_profile + course.level = level + if thumbnail: + course.thumbnail = thumbnail + + course.save() + + tags = Tag.objects.filter(id__in=tag_ids) + course.tags.set(tags) + + return JsonResponse( + { + "success": True, + "message": "Course created/updated successfully", + "course_id": course.id, + }, + status=201, + ) + else: + return JsonResponse({"success": False, "message": "Invalid request method"}, status=405) + except Exception as e: + print(f"Error in create_or_update_course: {e}") + return JsonResponse({"success": False, "message": "An error occurred. Please try again later."}, status=500) From f253b3bd7470632ecaf327d66c604ae2ca9f24fb Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Fri, 21 Feb 2025 23:36:35 +0530 Subject: [PATCH 02/21] Course creation/modification UI with view --- blt/urls.py | 5 +- website/admin.py | 10 + website/models.py | 1 - website/static/images/default-course-icon.PNG | Bin 0 -> 194628 bytes website/templates/bltv/edit_course.html | 75 +++++++ .../create_or_update_course_form.html | 146 ++++++++++++++ .../templates/bltv/instructor_dashboard.html | 185 ++++-------------- website/views/bltv_education.py | 16 +- 8 files changed, 290 insertions(+), 148 deletions(-) create mode 100644 website/static/images/default-course-icon.PNG create mode 100644 website/templates/bltv/edit_course.html create mode 100644 website/templates/bltv/includes/create_or_update_course_form.html diff --git a/blt/urls.py b/blt/urls.py index aff1aeb6d..ab7189704 100644 --- a/blt/urls.py +++ b/blt/urls.py @@ -41,7 +41,7 @@ ) from website.views.bitcoin import batch_send_bacon_tokens_view, pending_transactions_view from website.views.blog import PostCreateView, PostDeleteView, PostDetailView, PostListView, PostUpdateView -from website.views.bltv_education import create_or_update_course, instructor_dashboard +from website.views.bltv_education import create_or_update_course, edit_course, instructor_dashboard from website.views.company import ( AddDomainView, AddHuntView, @@ -590,7 +590,8 @@ re_path(r"^bacon/$", TemplateView.as_view(template_name="bacon.html"), name="bacon"), re_path(r"^bltv/$", TemplateView.as_view(template_name="bltv/bltv.html"), name="bltv"), path("bltv/instructor_dashboard/", instructor_dashboard, name="instructor_dashboard"), - path("bltv/create-or-update-course/", create_or_update_course, name="create_or_update_course"), + path("bltv/instructor_dashboard/edit-course//", edit_course, name="edit_course"), + path("bltv/instructor_dashboard/create-or-update-course/", create_or_update_course, name="create_or_update_course"), re_path(r"^gsoc/$", TemplateView.as_view(template_name="gsoc.html"), name="gsoc"), re_path( r"^privacypolicy/$", diff --git a/website/admin.py b/website/admin.py index 34c4871b2..bf2d627c8 100644 --- a/website/admin.py +++ b/website/admin.py @@ -18,7 +18,9 @@ Contribution, Contributor, ContributorStats, + Course, Domain, + Enrollment, GitHubIssue, GitHubReview, Hunt, @@ -27,6 +29,8 @@ InviteFriend, Issue, IssueScreenshot, + Lecture, + LectureStatus, Message, Monitor, Organization, @@ -37,6 +41,7 @@ Post, PRAnalysisReport, Project, + Rating, Repo, Room, SlackBotActivity, @@ -595,6 +600,11 @@ class RoomAdmin(admin.ModelAdmin): admin.site.register(Trademark) admin.site.register(TrademarkOwner) admin.site.register(OsshCommunity) +admin.site.register(Lecture) +admin.site.register(LectureStatus) +admin.site.register(Course) +admin.site.register(Enrollment) +admin.site.register(Rating) admin.site.register(GitHubIssue, GitHubIssueAdmin) admin.site.register(GitHubReview, GitHubReviewAdmin) admin.site.register(Message, MessageAdmin) diff --git a/website/models.py b/website/models.py index 84336d753..ce34dad67 100644 --- a/website/models.py +++ b/website/models.py @@ -1698,7 +1698,6 @@ def __str__(self): class Course(models.Model): LEVEL_CHOICES = [("BEG", "Beginner"), ("INT", "Intermediate"), ("ADV", "Advanced")] - title = models.CharField(max_length=200) description = models.TextField() instructor = models.ForeignKey(UserProfile, on_delete=models.CASCADE, related_name="courses_teaching") diff --git a/website/static/images/default-course-icon.PNG b/website/static/images/default-course-icon.PNG new file mode 100644 index 0000000000000000000000000000000000000000..455ee1f82ae5c4aab35b430034b572805f69c4dd GIT binary patch literal 194628 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
  • 7BYLVO2OLVe}<=*FVN)$kekHC$0t%E@>=vU3xEhGL!DY5%kB-@ z_b%%lFCB!Zcp^wSED3^o0|EodF(;SK`jQi)^aH5Rwsy(1VZ72z9xv*stBY+4zJ#Yn zM$u85(!wQ0)KXgVZNfTc)~$u!=*_ppM*W!0dp}q(Ig&t`*$(!0sePYufCdf)QF@M@b9scl)qe zoqDKSF<(8}x5mts13W)Bz$@|(xO&B5fsk`A&}xxtJx zI?plrxmlt%K3#O};;UNsr_w>)ky22Hv4Ic0dr>*?!7TW9cxT<$@@K^AP@E;JdrkqX zV7%1LGV5UFEAuZ2p5l~mY;gKJ7(e=Jv~TmOexHG@!=lsjrAj)bIFDcszn&4EEi!Ls z3ZtIjK3OBu8aDv#o1AQjQVGZ#5Bq{x_yEUnAYlHE=uc&6vQj%X!akFx*2^%9KQx9rAGQ)n`sYSyeogGm^u1Y`NPP3>wH_u1kBV)uAg9%(87-(gy_yWg ziA~aV)>lJr1@ybLKi(N2%-<~tNk?L}!G2T{04-sAfhr|*#ZPC%5a_LfNW97Yk0;46 z)MsCS6Fm~v>$_$=ovQBDRDg=ko*`(}vcO)#QA~gyy|C3V78aO0w&_9HMwT9! z3y`S(eC^y~&KR z8A&TLeZ>61Xqhqkkel&6HG~6l5c6)>xU)5={k`NxFktofL-0Y3)s|sL3)jdM-6y#p zOpM!cVeRvPNW;MTE`0Bj`x58=opz6WnOTjeNIWvtauz{VLfGfbpKxd=DQyr2+LKUJ zsXFczL*q`U17Tp9F85+AQc45PJI@WQfx+IJCNxj!Pf>1T|(bZ!7GVND(iLIAGJ2);`H*I@qi^< z|5(il$j;C%ghyBLQNcx@A7JpbCKD@{O|m8R?)@>+xA3*j1?H$A4- zKq8-7A&*WZZiAWRE$%u$GSqORqM%N#%mvU)jDF2D`8`joE_O=GetcTCVi+xm(=1+F zQ|~8LG<2L}TCvurJ2pK=^(pvZWi4hJ;h6IA@jC|>>}+XM!VS9+JaMuQqGBpW9S*1^xT?dER5w=|y&nkLHvg zlWYviw}s(6yYsncIfmaqo+v?dz?Wsc_L&tQZMLT_a-^`tf%wwCOxjIgdS0jBp!XAx zLI^gP4)_X?sxck!w;J1NQ~+AWvv!Qb-eCN?4$a8VlSy5>?mBF$)*F#ZM|UPSHglID zHUD6DHP+oUUz+^b5Oo)nQ19i|@i=6(q~0l@R9#z++*uw_T3D#8abwm%hV#=o>vz)F z*)ooJ4reSbNa3J1;_S>500eDJk^@(wBk$Zq$Jg!d5}<3cCiSy`%*pF(L4EDxjXfH1 z{SjIY$f@GH>ACiQwj@+}Bk#j0d28p~mX*~OJsGN9o?~oLT=eYpwt0B)cjPIUl{s|xbkiM4N#(?qD?*rCV2gyC|LMj$3ZQ$zgJ zvjHJhxY2)@6OYAjLepZM3B^c_zWK%=i1+Tx2cBe~cd2~}!xt`9?-2_+Jn(~P1WM@F zFV~nSnInZo(q|im_Vg92wI!Odw5wG1EtXMAkVAZ3=+vJV(CFSh4a|6x7uii7go(MI zQS}#en;lAaHNKMliNwt{cCIA3wQX;_N3l&zvv6Q6e4 zPg_pb5KuTcly%Mr$^FcI>r(_o+~!`ZECdPrdNNk!wv(dTrSY8GWeE8@Wbl^5;wB{A zKmu36k^*-wAgw%ROo&T1iTmLV+0t_|OGIuN$$2_7W&K6lqwOFlBLMUCjX~W6irNkjOd^si! z#Gq5W;zaq=Xfb+*fC_#b==l2BNDmvZmwUjnnAF?LJCJ9=JRRA%ed6Mn@mfOhS~T%m z=Er7Dwfj<*i@pp77m)YPLApJet}(1)b?y7OMPBmnPHMeAU%`J9$LK32FsX`P& zg%^HhF7{QheEcgkJpjA5C;%oE_rzbCTzCaCy&ug4dovj8N|Eq$F;b1h4|mMM zy6c~$2d5G(haiZ#Mj%8ihhN^K&O{KQthXK%+0eUp!*xf&6O~6q#JoQa0-(NU1H#@r z=B9Ux^rnrhlzse|GhrDYM4nmvLYl^9NJdM0V7zLw8~kXu!DIZ?goIBJ$hm7v&@+Aa zt&}KfXScw~@q1Owv*PCChGcjtMcLdBIa+M4R!g4-xCU<|0aa!yj7QXAg6(2f`%SMYBIU5Ooj1@U%Zeo!s&b85QNcyJc{ipx#N$mDuhBY1w z((4!kw$hKv8 zR*31C&9kc&CQ{P3OZvtJZ_06np!dIZqHwXYGu(*H4Vo!}PIng=O4K}8$_ zqcxw4s~%@o!}g5n8K>n3>YHa>Rds~P0YEv>`tl)M;%?zNmEc?%jO?y;bnMmRua7^C z{f-1BYQLvdYiVc~C{{(E&d~Okacxys!82XodKDN4{y>i`%*uZkzUKQcgwtvU9QUoI>+LV zoFr|gpebL>M&bh}QTfn7@)B4U?bkr-njg5=Pg<<=nKvq{F|VEe=9g6{Px+-l>uDCl zOBc-9z>Nk+U*I$^udZBpWHR|=W*q)Wlk&>y^wbM-vjw2lFVE{JYgS-{NBd1;JYZVA z7NL9}{e7e|Rkdc#CI2q;p(#G&^8sA{zy9GX4sfW8<;NzcTAx*eOBgL6P)+neqx!nk z)4Ks2Of*ykRQF7zPZPUPul%JgdoRCndzgrHJ63ge8!@#6rtLOf;2A-}eTZNYwosWw zPt?~6j$=x6U^j%;hjbU^`_EF4QO=4GS9hxOfa7zGuY7+^&J|e)+mqCpx842FTZb@V z=2FXSoXOEK#m&y2b#*q^W@&-|i~p1UP%(5Qd@M0Is&*}1=z~Ne($E6@9*GPgs-xlV ztk{XMnSPsA9XD0B_eg-Hk(4GZmq=4??(y)_Jn@PAEYT->p(x#kFidymVt?gn z?-0x>PK`h8+m;Wh3=VdQtJ&G(rX{5VIkb7(+%?z(+LyGaD3oM4!Eqo z7-F8$^T2q(MkdDv{}|)h&(vk1*c1MF5ntzZy8tIISao$?H>vA(Y_upiC){0LKIYgL zyn^?o;*R~Qg+$X40n%*mjt7|hF#x`OjMEATxvwo*!GiU0SjnM2OXXz<=H#R5m&k;q zK|Xct+$O#KeRcw0)5%)iir~?E6J`j3Ez&;+Mrw{MUx#F}ra?W!`??7-x`B+#_w2?YMK~*os|%r48WMe)G{$eD z%*f@E<2yCRW73pS;(7 zB%&TTu7qmi^!De3tN+kkZM#GR_HZ*X>%ZUTgt4&!etqOMP)W6AUQqVueTl_*dSe{W zw?_@--Ffk)`6-F9wmg0%7fTGaxJxe**Lv=&`st?B9Dv&-`ySK+%)beCRNT9=Mv zQdDr=)f`Ng?yon?F^%T|&ImQccHeA;-!M5St%?|gr`AM;+L*@&b;c~~#!M3mDNP`p zYZ7x^EWgBg&eIz!zI+oXIM#R*0OURT-xgl3`PgsSe(FwVS(7cmQddvC4-wG2nNyxn zUPgcMA4q@MRj;!BlGjNUy<6_~z9HVipk2dV!H|52$oJZ!m-V$crM$2quOgrCnGya1B0=}5jEY{TO`2e2xQ@_7}N$Mpv^D+7=*R`VQ zdieJ`Ink`0XM)@-8WZ|bM|UDraLk$&$~2+3_hk-|!Rn6x=9f4^6ErxxLuymX!GU@TOr?+;5(WgY0$5U^i5?5B^3zxuX zT&QdKNFW{w?6u;-y(ny1o3qzcaCL6$zDN$h+&4!XWHZOzYJ-lMx7jR13%~2Ky$rs1 zB|^4`dm|U)e-VP=&UE=`=@puNX%==|9|I)?&s{w`z-;VLmupr#bfA*3#7l_R1ufr; zwRywDrl$ha}6qn zG`Mjfwyt_k`B~vAXN4YuuX;kWY_fo>63eY9Tf$J#%u38>rcu#E>50#h8}-lSR0_XV z1dS6RU;gtpvSXn#rO}PoR6kXkCdWy8a(KW}C7vDsDZZR`KHT@a>GyDE(dah?0vyBA z#8ZtHjVD0PlF|$2H_RH=egGY`9MIeb>T)peaXvSu0x@W?D-nfw;#9lJ5SSpDqH=ABJo=L{w`V$+iaRcf_-#tGOh{Swm0 z{b3wG0fn=33lvBSFwKXXL{mkEuZe6_1reX*aU0 ztP?49xBUyM-&2zNHkc%8Z)XJF<^2^LK4v@?zTth|^Otu(50Tgv9~WaIoiHciMk;Xk zmizaO06CYSCDxk1PLw}sXml_;)Zt;^=)65?MR5JBjRg<9s9g^}>^hlW>I_MlZ6nYv za3OzPr>qUD2ta50@__L{J;3G{BhM*Es0$CFv1NS?B_ zea}G!nHb9Yi2r=4x$oL!WKL|<%$Xea0&`*%LaQrF(nvasS!jTJtw1GoGpL+eZPAqT z*H2o<#JBR_q*0ugK`Mo*BR$KHV zsCJbi%Ah3a+H8)o8C3<^9je^cU8(~%UEJK*%b|e;G@;QL_7buc_h7Glqv`ScYf3c5 z1a+w{(y3neO>>w)owHSz&1H{w<@JSRIXf4JQdc($|JUWGPb<^wjd~4$CiNZB_wS%C zLmm~78FTMo|uRdcB9omuIjF~De-_~^jb(l z@Z6cwv=e&wZuFYY+X&(NA++G7JFe$-)EiEO2bdQZTiPJJ`=89}z^x1Mc*_;45R1&4 zX~XM)TnId;yaD<(!R)~g`=O@tdot~pD1&Au?ssCBmOaG4ijyl>vPiDcrZt?HF35DmCqKyE8`>oRG zG!Xy*5AU*fc==j{hp#Q@M}gAm#%|@OyXNwDKPaPM*FL;EPJ-2+B&?e2|9r6$EZ#FV zZ{D6a^8QZ72ik}O0yDS`)+rNO$CL=p4mD)3XxB)(OXp&&&v9|BM`KiNmQ+=3?gx0R zvx1ccz=dNp{N`@Y6_rg5?1n$5sC34s$8`YbW;+zMP?QBiYH$Kgknu_g_Nr+C)dyU_ z(gm4R8t{OV6?i8VWk+D*xWf+3B*5UeU>I*-$Raf5a(PrI9PuT**V)06H+u;}EMXL( zXE`m{SD8N&sGJ;Jh(>9jIpzPi?WyAW!#~n=+(G+bIQpMa%1Ro^(C@lJ@9QmU*|_AG zX5d`tp=iO%N$bH}=$Bw85-n*7!qVLAxXDam`m#^Dg;4S`wf52;tnAPPiu1W2@Rbc$ z_bvb;pv)Uc%=u3n%DKbzrG*b?xOkEWeCm|HRuhP_F+J86{hdiqDu%3z1o>;nkR}E{ zc4xVxTav$&Mue@1LAN@A!gHV0`>4X5%{`U@G&gk#h+S9B7}~>~W}mfT=;}|hr<{u3 z1~4VeDTlOxqqiu)Q5kRK!u>lQaN5lfR5YWy(M@w(){B;D)mP%-A@LmG3hy>D&~!7n z9S#H?a9V_-`ueyfLerUx@Hk(DioPZIl$ch-H=Cg+sJBclYE|Ev$=xx(H!vy3Com;L zo$S5yEZ#)SXX=?^knaL^|SO^ zaDs5G%l*j?PKo2br3#xb%}tTGHfBWz8*O~XzZz=I#m@2l&SPQF#Ce%}9MLvrHAO7wsqu%uo5lZU?%3#JPmc1nL zt?TZU7{ZqOX9oF(E~v z8<9R(|8^laMMj^$nJ z!mkh5@7^m&9&>)b|K*<;)lW~Phnr#ZM>7!=MX0))Um8dj&-Y(xVrBtK)6dI&?qukG zDykl*j~~C!d45Q1wuuWnoeLhZGeFx_#j)J=@eRycMs%O&ho11+EJoMUuHehfSw^}r zM+QXwzBkmS=jP}(kgD`j*LtRwm`wJLqF3w1WByX6XuG=e?nX_??saWV>xK56qq+OR zqpNn_qn)L}BlJ?-5jq$D7xHNQ0KO7o1z<1+A>BcPYpaVnYb%RPkd<@!hzw-Wd(Jj) znS+kxOA54O~NMP{@Bwxq!84u_0j4QMGvL7nu&bzP#Pgk+yDa`yXN4f``}dmR~)Px8`u zpX6lmAYt{?{kmG=p#MzK?lWCY>gvL7$AK}tGU~#iyEt^JD;K&Q>XAuYT%Bc*$d1cvQWSfARLFxSdlK7dMBTMXZYSh^qMTw*kGn1RYZapviQw}js@ z1)meUeQj_TWh0l%BqPlW&Ur-Ht`_|+kD2@?_X@Dte~8-AdfV@Cc~@sBd{Z|m47epK*gn6c#L9+X`|(-p~IV{6Z)VI}l5IObU8 z`(qx6?7P=jP&jn3^hGMOVa2IA4?e!Zx|COG!#-XH$q3SUl);*GXtpF`pq38a=66v_q7tSC?$RDr^^P zyyzR86&=u^iKI{c&p8PQwRB&y{|n3^F@k~^nNbU$X+7->Mxnw=#TlPC&z4tt)iNS# z72A`_98;5&AHVTfNxtn6Vo)sn7yK+OS0|=$O_J^KkHoJ9Z+wG>oajn*)fL-+a#D>> zELC(Jxb|(T^z>+l0lVan1RaJKATRvSUw8s|b|}<#l5oAw!UL zg3dvffs|UBd#Vxsd0o&aN!n~3+@15f1IT6vTEUzOwkzbaP_?JIx^ zLV_^mptAVj`yNr~M$+(#5lUAR8-5$WiMXBOdnzj(p{y_+-rip({0 z9)V!GqqZ9J5|vTPOTi~Q^+z(BW5_%!&aMr(e8k>Wfh$rwo7C&d;+JgG{XB#FYP%KP zZ~$sG$3cWdJ_GMi4)*6X3XAYM8}G0!87mLbLf;PcmhDF`0=aJy!v5W6reg9;4c|)- zNCDi{RBxHn7pgb>;2X+HmxXZZk1t*YOZ-4RIHo*~s+jzpC z&(-$GsV=^Neye`b?L%(54qg5#YhVd9#U;gOk%^i7V}9f!C;c8vWLK`-_TInfgLIN{ zUdZ_saL>xrO94N<@ieQqJRa;*5mCw5R?}Vc*%+3y0w^lF8Ohb6d1ez85V#q7aG8i zIF6w{x(y4%9lIUCfbK4DcCtM9GTg30xL4D@gliE$7Tmguh!%6-O^TP=TxNTCCMX(O zR?xuF@a}eWStn}w!Hqxw{FAh=61Pv&-RTutBkaHWg8skyVu(o0Jpn)^rp(^d-~dnj zTO_DG^5MQu>hccM5x)Fji*ZbRdjaPPxV(d>ENeAf^|%Xz?s3*;;2Wn&zw$z5nNG@o z!$on%pW71L?m)OXq^Ot6l6b?O_TF=~b~UkzbOcS_ciB_iewZLE?aX@!;S<$9nhMj3 zDSPn7d42*BTWx-j#0B5>G#>5dWpqCot9sv<2O-Quw3C;Hh2q)L7Wa&Pp+K+ayDXhJ z+cLI6nM_qj;uEz3zS7;zeSIB0U`lwS*RHcK@WBH6DOmfLpd-9GBE2>c{ggx9MBAQR zygGl}WCjG$JB2nJZfZM)T>S(UJBmAeDm#2qftX(UEw$&C zk*7>RpRu3PL;9XI+oFy3d~_Mpd#SN^?*#?C2S6_avm4pj2VzN;jErp{rIxFj(x3&; zT&`cj3Ye97ZN!)WSqXjd>6#6UQeC1yqWC{T2iq+<$;4zSx!M|89*nBrKir@BTwXvz z@jGrZbXOZ6PVsNAS>#_WML-^It=5^GWmIm9up9r8A616=gaRJDd*<8Cy#Duj9qvcW zw-{k-3(a5iiz|l7;M^gI+@rPbMgF2bcll5h=MA*E&v`Cu_~_J7Yy}c}jB|_PhWCKN zj=7GX-R^Q9c7np<^TMuiZjT)p9*($fHP(<1N6(H)Li>F~x#S-1D}RY;)=v-rRjcx@{D z&kdTw^Z#oOoliJWb%x+8d+fZV{%PbN$2E}n7YIReeBVD|-t^f7XPQ3hkDevxbwFIf z)4#3C1J^dY%gPd#JeC(K2Q93Ri|mvzBZU8O+ywhRtB)(-+SRDYkLwC@{Mz@keuq$6b@v-d*25K}UyDKbqW-xtKfgPy zs7#17QMIy+R?T8sl5$|cnTa}eU0%`w&3BDY=I&y!wrN2d$x%bGw$-gPf zLl8WiUcfuY9u9|(lEN-h`(bZ}A3~&VZy(yJ(!-`Mua-MpUY-b4opyElN^F~kp8Jn= z{igTS?cKvqVp?buHNQQl)It!rps#xlxw~~A&dn}&9zt;ncD#?o*2^Al0=mYM!!G4P zYWD}&~{{)z#= ze@CKq?a1K*`5F;!$d$|Y`mRzDMmrs7l+S7u|5xDC-K#W|ueH_p+icbim{aR{{2M;i ztBUZ5y&<;4UDq_BG*B7`!*qKIf|-GUzd)uAZ&$A~i{DM*=DYp(JY=#U_~LLW0+;4A zb5q}SHm8e?Za0JJAZWg&V9l@6v7w5$JQ9`m{8#H25@H^+k*S|NPAyJ$+}AEtLX`n2 zOFgFkMRZQp)NyiF)U@6Ox0W<%xf-fF8sv8^UguWPzk%tUYuV~%|0fTLRXod&bC}%e z|H6&d{5wBhq=xi4%e5);L_*_6&#Is!rzmouFZWx#K&5003%J?{M42C?3Tgf@XaI?%~=EdhK5ay!DrII3*^+Uu=Xa5Rc?<X^#y!2!lXSW2aR2WThh;Owq*W2B<>4|baEt$GkGMg0ZP9^y_&Ac zh;LXAcJq+kBPH+W6^+)VcqbfB-=%&#IGf9GjWln1uu;1?|>u@Mbh1DBn#xs zTM1wEeCGkT+R(%yadB-%V-DoN8i;mfG{u{M=4<~H=+!iI1UQu^B|$$cqPp3?oTELV z_wuv_J|RR8mto-kj|mU#5~1<*cW^-uY`dy(KWntcyFg%@g|2&C3^}6b$9kwhQMvBg zO}AGW{qpzATO2g-<=YeIUr&za!vYMCS|RP6PF?qVjVzsqVHeoH?*k?O=?EzOzz2bE zkgEt^>JPn|d1HbX6gmi}SAq+3FG}(pivk3Mh#Mdj z@xSnzF(!H_bAuBdGo^sO5I}Y~jRy#1W-q-|ujPT7WhjjCIvZ6Y0!j2`9Wiqjkp%z2K*+fpk2603QD8+(RxF{&00q z`>Tggi-zZO-F+|kz=P+Bre+iXQclewhXKK>o8NM%RU+kF9@qjsAam<-G z(DZ!26?Ig2w_9osPXvz#ghH+Vq{DAoe9Z0;y~31t{?^I8m2DQMltrt&Zq!B!*k@-l zc?2f@dC?OmW*!!2TZQC1?uAe@rX7CJ=C4iVv}#*mZ{d(+eRy=X*MgBL3wn7yBj(}V z@kUrvku**<>megBLipV?R-bw>OlUQW0!qB6cQ4Ijf z6+27&fu`A7oXNti<>hrw$k9UBNKDvW2B|P+2ZlU#y`}DxqsJ@wT|l0;E;M`ff9{@n z+$aedAhzijNDmRJo(ydx?zkDTICAd@VY=UwJnV{0qO{fx#ve+sXrgN1dGQKeCF+ zD(g=I+G#4&oSiyggXS&!7OoecECXPXVHFW=iG$wMi;)4q@N9-uQat&I5ip2gLQuVRu}& z1MW-FwD;oV&#KkPbLPISAsh{!j;mL_4~Zoc_`qQ`wXU`^RU7fRrm-iU*0%;ZK3UGI zPA4I4j5;66UvUzQHvt^VNF|Hr;J?XWme-%nu!#Gn{}@m5EDg^tk8}3_W7uVRImi%M z@PTa{?pzawM<4lk&sVXqp|Y9j@9x)v_G6mY8)=H@&n`_rwurLhmN8X3mI>aqjwvh} zRi+b`R4xPt>Z>8+0NP9-r5CAH#J{$w%zKPtcX?b%$-GEsb=AHja$4K-o-69s)!(&m z)pBEM&mJcjhhf==seuONFudjEfVK}~2`u+*G5Ov%2vXWq>Y%VPPXB0H!u0se*Yp`$ z1#pZ@n2^IVbobN4KM4W}tUkriX6Ht#Y?mEq-|)^@$;w+zZUeNzZ~)p1>A{Qs+f>Xr z6JmlK)udW8hW?`@888FP)AaT(LSu>k!Bb{zoxPw>Az5{r=gP&tLY zIR&MBytY5NG1hg)W1^s5LC(l3-bIj9gQ8|`HTOAh`lfp=B$>WY1r zurj}Sm&RwYl$+_>PRi2iEM|yR$e(5HQ<%TZx$n6mi-w6mrEisccxk+aM`b?6Q1zB# ze}Se)$c=ha?Y(feRqGR-{)6yZu}svUGDAvxWb{X=&sMn^B+TgAEQUqQaz0>84iv2tJZ^Bu zC9c_8pQKpDU!g{y9n=}5BZQPIjFB{GZMf<$cN#B6&ZF=R$-K2c(N2Tc3|M{h6vAva z%!4S8EVjO6T2Bd&U}v`1_Jx+yKl6hDFMa@~IMr(fU*ov#JflyB7zv!ywwH0$*Tw*L z6K64DpXRigxP{?wK~Xg|Adv(h*=cXD>KT8@1~Ao<0N1=62R6Gs^`RA%*4DO!MW?XA@S&+@W zDz{!!`8$2Z35kajN**iYj%pC%uBF&#@NYFR8r)v{* zlsm`qwA>a15^^R_yZ?)N7VdSf;{sPYY;`tCo_E7KAQ%s4mGBi4`JfZviN2CT4^e6- z>?fyA5+Fr$iMY}KzYv8qE3n=`)qy-02GZ=RAAQb~)fjAG@kAi{1UR=)gzW(EM-aZx z&M_s(u;qSD@(>R=rXP0Gx(j|-^z7q#_L?$Ew0<$pd429T#`P`H!38n-CmGD1J80r&` z)qq=k87-jepsR!xJKsp7u{eB7I~oq~EE8oPZJ8W?@aFgHn%j_FnVkr!IsbYm{P3v< z5OYuoa#|W|BQe;l%B)wVcJ)9vzJmA1wSrcsRBIFXi9U0{*iQZPM=-)i1q4oX8Fxs) zD}f!IZxvoCl)z#DX~utEEkZWaM4xYeh18|1vNEyr+FA&~mxp~vc^%gVl<=)tA{J)q zKaSQ)6vRYcQiu37P@T~5t+)NBrc`k7_oNIqu&xtu2j}Sg-{X0$cN+z0cdev%_#67~ z&q^}X_tCR3GSr#sB|f@wX6pKO^5KlTOE&Gq9mDyEOWhB;zR`xUtGMncEs zI8W!Oe%wI?BB?;rtGR&GkL*~v=rC{I5TiaI;g8uo-+E=+@w1=lOX2;u8s#GbDg{F^ z$7#<2XgVSFw*b9N@FVJXJa(@LLRF+In-VQYqEa=@0IC5K0bm8br9`q_{GtB!>Pkah z4inkH7(=*6(z%hK+S^KdLRyr~)Wj}3aoED@)Dr3A`W&b#bV36x?+KmHdzwE3yTEad zN8p^!>tn#YfVcir+sEmdq{QOEsJ0;H-CVtn$YW7Iy-(}!(9HdNg<>x>Onx(`Ro{8o+lgj_+nEvtm$2iO z|3xe3rFi6oE6;S6pL>w6;hzD~^_ne0nsXER-1J5X$YXbdeieix!#iSH;1c{m+2@R@ z4YBG%lk&fTcTTB0+jN(mSa&;|*r2uu8QV=CEq}bB;YxtueQLMF zTV|zvcTK%n5AUGVx@S09LTYkS3WF$In285OEhPz>Ts?Ob6>dt;+Rfs(Z0WV=Iv(BM z-uSOJcI1zqf;#0bbj6}6K@AOilI}^FP+l`pJB<+FrtdCi;|5U}K#_w)P;zZc#>3yArqPbr6hcE|wy?NpGuOAc zm}8Cq;gNc5>&;zIZbkLZZf@3F#qhV1mdKDZI*u1F7V};k$@^|TTiugc-Qzo8X#u`D zy0$qgh5@0KWbV$Cz~Ud0z(6K^AHcU#^$1vG`yeD2f&M5J;VDZpc9Zkx4EST76fr4j zJ>MiRa#Oj81%FfM>l|OM5=Qk2&(biOC4=6+$oX2*p=x#o_51b!L%Gm-hBPDR$oz6o zi9Bp&gK@a;$Esa;dOW^q>Fo9~G2E^rv!KK_VptOKI=E=~37E@z$Lxi2k1_et#CXX{ zy^E*UY8N9|@OLzbz_{vu6WPiiFPx0uf&6ejasBT3G+^^Y8^Ra*2kN!+CCUA64J~BBSa33ISGu-!`@l&z6)+kls__WOSs<#`{NGJ zSSoaWS9_{j!p_M>|Lw;&wFF%ya|~`Ht@qg}*&hUQVIV=n*UV$1zf^RLNxZ&$6#PcG zIETtzlW*!DpB(2DEOS4o5GL*TTdmw#!o{wR+Z-IW)=uO2>CQJCyAAz=EsN?f!BIIQ z+X}S)BIesDao0bPVx?hsYy_P&5nNu`B%e}V=A++tpYXvCynD4zOs`$9_Ybz=-&DIa zS78?2_hfi$(p*zbvNbYs^~Q zj@ozER9vL8TGDLhEmSR~iBbwbELvVKY-gRdB~;JJgLz{zh9FE}mT`#HLZSE8ImcT& zdp2(F7(bF?BC?8G^~d{D_c((i{H##B&pnmT4=uIkHPqMkd~ZJ>E0zz*5eF0qq1A(t zE!6M2;$P6>SDdVzGAWPJBh#9mN|Qot2_|^y2cOe>@rfEvzDoK1@03V`E9zXG-s~4O zYtg!%7rvb_H0(2wADo)uKwvXsg6G-He*6$L5XwY9`Q|p^49q(>cS_F_hd(%59RUL(yMkD>2NA+IJM6rR(1ELjkp4==)hYMRxN8F)go2tAdG0L z6iHs;9Dw@%=!Z^MEIpC9J8=5h?-6&<=SO$HAr;vk%WC-t@}8Z*YBcQpE^KlA1k!m8 z>B$vF9J@ka==3rXgSUoPjdC05CL0VUE(4iBfcU4}tu;m&3%)@F-y2IN8!fvX;E)zg zQQVF%d^Jo{bJ`?cJW$5Q!N!ys7g_yO(ZmbK%Rn^cbCxpR8h)}}tr#9Cvzfiw*sB&# zCkQ%sG-0z&9UMj0u80TGCHLc|EBFX^ zP9pQ#k;}Ej>-<#be{?yeJ$LLIY0)l(I?t_ZYF>LhaozW`_r2EIYws-^xr;qXJ@*;*|8^UuQbE(?P{XLU z%lbnwifP3^sYh$}GS|oCSBDR`R980Mwv%L=rZ6ae+%IR$kHROsOKi2g)tv;&T)gqa z8W*BG_FNu&6ql>;5~{=tH6nJQg|HGJ-%Vd?_ti*JrJT`0{Obt_gJZ$dYvrZDVzF1nFWfEI66%uiJZ+BI6+7rs&z+1OLK)-QGCT(q z`Jjh+@M2Ix&1_T@8Gm6y}(V~M1A?jnZJ}InNq*Y4cyM53-(CcR1Wz}mlaZE zCJI5tgJQ=}mG?*AcWU2{_Axa#y48PjQKO}%caSFDC*1b$)C271O>|kT;XXf8224w$ zca^XRZVbZ}H;Y$^B}UQ!lWfsV-(}psk(|Z&KI){+fvQWAj>L|!3wom@LHR8f-WVr- zcJ-sBuP$h`NVCMOe;FTcNCHvn#5juZtj3x4<0xaw{Y2$^9EVb>)&>b-l;E^(Y*rnF z93Ed<oSW`?EiKrgFfzk8~i(&Om+D;&+G+4Y2u`DiK!rNO9pyEJP+R4v^c zTfOM);{Y1pKMyzx5NhX$q+lJfRk3x~GiJ*LFIreD$Iw@lf~VWQKdTk+sgI>RmX&?Y z(~`1~9Js>S-*iB1u~NkQqJYuXH*tiqP4NO!suz(gxvL|CaDz%9AS95NzFyzPj3sbJ z=skcOwn5c}?B(Oxf8S%3(lzEd$T$=uqV%9GDGo+r>FR`^B)jU@ABApO>rWngUT3E> zb@hSO-IDC?GioG816yNAcLfc(IMY4W16FPU%%>E+q#zpyN*T|N*ij0 zEQuZX^y$S~k3@qhAd-JR%=-t}XGDO~Pv;ThOz#;L2XkYo8tgaN@yGm`j(K}I4p8T$ zL6KF(Pmtsxw(Gn5bTP}6j85{BU2Wg+(dVR!Jcp+krq$hs0d(q;lhjytZeH zvqu9FqDuS@fw7V0#T#iwSaW5yAx55WX+pU!xFDwu-h;>!A%3^*f9XMUam&tG0$DqD z>c<_KH;UaEwn}9|3Q1Ivk9lh`K71Yjr;do{=c6iBf-+Q5xce6JdtT%T!mbsnMDmy) zn$rr+*<4Ee51yGO!@RQGNZ^h&;Pn}XDD>xhkzn^zT2bqI6L2D&w-3bkfSK7#5MNv! zB)~;s_U5-{lqoHaRzAU3=TF(+AMq_B)fJf}2mgkXQe1oe3JV{^ZrbQiNJ{asZ^ytp z6%0#$=qw4sDdB0NdlC=@P2_5`9&5JaP@*7B+#3dVQ`{Hk`K>Btw-%PrLr3O%H}LA| z0Lvyr%xf|dt7Hyasa4lwV7Q;;9T+764|j&D;dxRpOVTU`mJs%rHZumEpfgHyh!I>B ze(|hvbNFl&uF@yv+Hk#2W-3;u}^{O%KItDP#a8@s;awEJ?O#I}t}f<)ny@ z2ff+hsatLo^>6?(`XRr~PW0E=Jtu)^5T&XInGote) z$(eWk%!8lIKEr*%vMOxFE6f#*)v_u1$?JGQd9CdO%x$yf`k7F#Cu*nKtx&NERvWn5 z994_>_A8sX$rHAds9|c9j(Oh7i*=D;+x-RUt!GFV4FTdwC{NrWB3D?x>g2Z-E4LlO zgQ_=q9fV{%&swe5so&e^1yMCvpUm#KlMm!xM9$tn;NlXwQ|V90brMFurqM?;inkxl zGjLxcq{4nG+9?5ftNHDWX=mF%BqpPVidw|HYyU3xTUt+`J z2j9mFDfUlgY*v1%G`N2Yiy9A%LTjnh+b0>7n|~&+GbgpcwfyKf^0r;Yx*wSdw6Y?9 z-FgFWs?Y%`Qq$G6y0<1&4w>|D6|4Jy5AtnZOHS4xdY2vqkpZiy(X-Q+X>iwO-SI6Z zPo=R+O94|-wV8@q%lFWC(f2Tk3Z*a=d6f*l(dSU8K%FqH`@rs+CC*%J&L}8H_K>DK zt-pIYMD-7WQ$edY7;$HRU8FYzF7x0tT<>ynZIPDj3YxZ2HM@kwa`TI)U>W#-_>yn7 zv$roCzN9X+3ce?_sItmpy{128LEPx_?|UUcw-)x4Fu(VL&TIb`2zmY1^NyZ&A>UoA zK}%tuu$M2GGs+!*jN;c9y>@6X8OGN9T;$Sjuza^|lEnO>As7FqvIBb{n18+mfAO-IX)UplZKx7b0@tn%_C)l+k znw0lze|`G5{Dx9Xfvy@ch4u}s(5M3Ie@N2&t8}5^$Mq!_9yq2k3DCD`q6Ii*4vy7+u+m| z)D*tL1i7ev0mztf_mZjN`4Mg&9putAxL2<~7x8UNvR5xX0{u50A5JuTABN*k2Kqx= zyRXG{`AF8TFy^lOxnL$Kn-ta>ju%F&jQmO!Lti$fhVX^cf($EW z58e;e&wYJZJbH$}G#|mq;1tKqkjPo__gHC}2*`mLhh>VYCN<7C`ALZ#fP#9r@)&}D z_M+_#Q{k1H2i$qU`k$_}m7cnS%?78-mu^K!(8yr^VAQzjr-Z(di!uO4XiN4Ho5X5+ z%pLvsYwd2+TlN0U0(Utfn6B-a{@BENtQaR&(pFE4vdSrBo6D`b_k_^5Zi=VavEMZ( ziPgfl8}Zw!ppffV3Y-1`1-M@SAPz=kRR};>a(J~fw-6de4k4$a3kkV?de+g~$8fMT zesCu9(eo9AL#3PC5M+FWJs$H3Rv&%*mEo&TOpW>O*RNbqzOTKfrTHNpYaP^_KCQ@P5%KG{Yj|lI;_@h;muxkS|R=Ee~A=wbpDBzZ;78uG|BfYA^g+ zC@wKy^jLPL=93bvO^}&^I%`j1ZfyR2u~8cV86MN*06`+S1It>NzPu7BzVIoMa%oVH zgAKgQ)BgysnDvEnKY=}obr6)4FV1u+y{`8ZP72RmNdW#kh0Mm}4i;ur#wdNfZD#$; zyMYqU%Z5;r5axZ;=s$kIA6}N&37!s?=@T_t2(9&l9%wE4CD5cc7_8Jc*dEg$cSd4^ zGuycJz+f*ZMWB_N#D*q;lw9M42X{7_T9Ys)fyKHcAPTFVzy0MrC}9Y+&$IPg6u$tO z=DILyvpco)LgEIW`IqFyFMh`BAa*iMV&fFJ5k5Fl9I;OvIZQK`de5TS;g{K4l^sUg zv>q)p*-OfDYH0h2UV`kHWB*8uC<9&7B7hwD-KuBnEErpw=pW#;RLAO}B1J{llrL2b zJk36tx1O~1mfMw$#DQA9y=Jgkt6H)aRRB{sJkn=&h{;uWfRs#%FtxS4TfHp~6(W}a z+E1k9*mk?tVpg-W%lO_yhE5mZjA0x>D?zm%CxZBP*@o=TZ#|p06?yqza`E1e#pL|X zliaeCLk=G^+W!yiUZ+BukU*CP8k^Ccn?X#pkU>&UJ{`Wq51Nx%4LP)i7~O}O=5~@3 z*~E7jj|SH3&QsKD@S{~3VJkQqYZ!;VbkJG`>_99aqn644PWY=cE zuFKj~U2f1vA;9b)w%um0eLT1PW8z&WAKZq}3(@=~Py+T!A_fivNDqA`6)ug}fyAnw zK^1$D67?utv1f9ml{#dV5Z7=Cm6_wz;Qdzu80A5dJP6?$v8-Gywg;Lri${*N>Dpuo zphh-sT%GTOn?X!zWF#}sH?N;f69s{H)gbr)2!t>=0 zcy8@f9)miou3FF>p)X4o=lNy0E+{VfO2EwJtF}p8O6|TSa&vU}iwN%@pXANWcFchF zm?W}n^uxl5L;0k2ThnoR@@UT_s1Y?n0?+dXkYF9EsqW4FF36BIRCLi(Lq98YcZY1C zE5p8HDo@PofxQD;R_S^sTXqD!`U{rPg@?8go_bksr;Vk9w!jgQIj)@v+n6lA$dFnV zSa-)+A3A=cf(xPV%FoGZrH zUFT>!h!v}eaIxJIB8BXb>kxpcx_)`ppz&(oYYlxj!KcwA4uLkqw$Vi_2UHjFZLs|AzIU`K?O#lp6&RGG}=J(wL<#M*oekUmj|65K}CcP7uhE-%qN_b!c^nYH3ieN ziL26Zai|xm4!UOGI$y}ZSE)CR;m4!Kr7dH7Bt5dNBeR2f3A?rh#00n7_f8EABKh<) ziP7i%$xqp=;H{%?t|#)XUK^go99Ch87*`r-h#IV}Jb$smPDQslklu+H7Yz!cEZO8^=q=RyQUp@)77{0?uADps4{ zt@koo&#Zxv$n`i-{AzO{rWqsJo6I>RYLz19ZZ^!7;px5Y?asfKL2TDI1z>cRx7^2V=FW|1u+*D53xOnoonNHE!-;{FRm#&TyZ<1z~@x% z#C(XZYWDFRa;{5;S<3%nGSgqpB z$CNXNA}R(e?(#)p7}ScBc%NvM-&LCL7#Sx9U*-={S#kk;K6} z3KwGF+-@KB%&Qc^x^cWM>gsLzcGFFpW^TF)!3s>?^{Lkm(07s<-q&_N&BEJ5*#wh8 zI6}T>p3}a4MEssvb!aKr*Rsp7JwE3t?!ACdc8%YT9yNV8Kt67dE~j(IrS6eU9-_$@ zr2TM@Y>2v1^SqIr-E3dH7QcRQScKQXi^*a~*+34tECGEzhLJuH?FYE0WR~M`_YKI| ztMmpg_!m|O*&J+=`gyUC6jV4t77*}(M@+u%p8&S`|Fh3;c?gUb8P%^9TK-~u2X&t0 z?XM6wVgmp9(EUP}H-aw-=iHlxD~iOhSd@RfB9u~~@DEKsetn|WRU~v?0I3aiw79zK zZo3{zc`Gq^zUHn&07ow3&U-lCz2NH%PrAdjsy9F&8nB4{2!x(-6wK}7s3}Yi!`FXq z3{Duw=s3^0cDtE~C9gF*a((oYi#m{n6%2%TNt$LF`L)n&w^!9GlR~^$g z8~+u!6!_h|*f2u)5a4r#M(b%Whp%kf1f`K!ve7l3%wmK%kZzt|t8`E0+d}$WUuHNT z9!(tvWnC))EuM^3XmC8N>}@v{DL=TkV`@Y@(kWO6l``c(eBL` z6K;-}dYFSJ%o9rl**Eb8uzp9`AEJ+ZmiZa|8e$?)ueT)Zz*k^aB%lRu%X<8#Am2xJu|X4)$) z(l*{hI(X7VWHoLe6TZGhrM`0&4qQ6MElV_7cA{5xNb?tJb+RZZ0#gNPvc zrcvnOiD(#np&(EX`_5Dr2}qy;GCvwDIzsw|dnVV)@4SpcuXzO|$G{XgJYNAsg902` z2mB&cw5t{sD|Wkzg6)YsMHy3Ij3r8w?R#>Q*q(Si%*1lLJ*Fz9h`<@dlrGeYX&1(O ziQ2k~7A5xL{dU41A3Vw%W6&QFu=^UlyGe(P^IwTE_`WQHY|D5hw&wtK>Syv=`*70N zAS48*gP1kZnLMiOj%)9bD1f97L1PsSdzCmWJ)YOY2%e1)p}XtZlyr&;xa*6`{es14 zbw-f`C3N71t2^vlt;++8u{z>jmj)s)f@t4|b*F~L7p{(deR2pjtld;F81?&W*_ME) zs~!3uaHdl@U4=nK?=E3Wujgg}GHmgp;VIVIZPbB23Sp zVA=B_JU0F+_GPuX3*z_yr9PVBaivJv!8vwdheNcd-GTkv&~&efY@7VW(UOrjPn$&Z z<*7xy*D%@YK1X-2yQ5EToATw@QZQE%4^#9BM$7XG-iVlw4s`L$#s0xjbbp>^<<}>y zlfUsDJFGwarY?Yu0x&-R_@K#xVR)Zne+4f45wAFy49H-5@vx4LPhLx5G2kdrrE+ib z#3vN7mkCc<&6GJ(_HuoC@A7paJq{R+xh%z?{?Yw4y*@pEDf!Qt!t>7f; z`5SXKvZRojN~L1H00r6}Vk=?(mF%~^MHsC+?^W-uNwEX65A;{(mRKOsxAjMBTVM~4b-#l|I>@HS8(22fN^V$A zZ#UaVh%J1-WaaP2&v~+bMA{*(^w&fNYOU_w#jmeC#@k0mw-!8TyRO3I!pg2p>pK#x zuC{wZ<9bn}Lo3Ob?#=~;m76nbVSA0V|0y#E-n7eD^NyS}vR!wZ%e4_ESznn@aPWBb zh^;wC=19HHJ)QCL1qt81Ft#N`QE~o<{H$%R$s6eB2S!mPoa&~)plP&0^V(4kmk>h2zQgC6<7#ER*>+mZ@1bg&1APpD;+>o#p zO6L0(qjjZ$16Ra>$AG*ZlBd$0(_%}j+;zrr`OW|2*Fg-RemU62e?mPQ4p{i{&M9cS zI466y{oOj*!(VOVs`!Ni}o!it-;(6dWcOKyME`{Iu2(Y{^al9dkK{r zJ4HvB9_r~hTP2GDmtT_1V}Y33u8RTW1q5@tAQEZFI?V27%@Ps)o^y4vi+WL+E=>o` zjs0sYqRu&Z_pciF(hYqyLKGa2c1@a{Gj3d)%+OO9Mml}^62<~l#=MBbdVQq%gMPV) z#G49gx@O927iDLD@WyOOxm`s2dyg2}E_zrTPB+Bjnih2Yjd}38OY`{U^>~9ad)1D= z#(G@mcGeR&~|M|WYp z|DjiC|46Xs^?cn)XkB;Q*JO_pG|XxI4_Yn7ss!XIZmRlC z_h)H%)-!GJ(pA5&c;M;pRqG?J`7lEGASKi)*b$mIBPxn($u?=9Dkz6s+%m>a9F~vq zHTLwua3GB%hb0j(HXhMK$JQXPpAzp6%kffHn?u$@CF3Z-O7eXU`@txRn!f#YSxmF% z)V1k9bSlK*%K%8BO((MB8x&x=mS_6X9Y9%rUCopWD;fFkzCW~W%!&<~-Vr^Ba!tyg zrAbg#H#y1Hy3AQH#m}1mO6v=dJiv-6-$38X<|P^7b_1o-Q|$FqJ^V_dh*4b$~SBlw{5A9 zCjBwH9*p)qJ+HQALh0vQStA)m<4V2OyPThN6YWgxBv83FspjZX7?peDJ*%5w;+%3$ z4DypN3ybD(o~@E$kztNt6zx`B_`@^Sya{GHpSz#(*G~yp{LTF&AmygP=uovb1=U&b zM*DvZH=koExp(3AJ8KH(CpE&(huePYXo{w7KfMpHJ^G#=C`fkJI&!KTS@%6zxpH1P zh}6H;d83NZU)_kf+m}Ud&B)9oB8B*4X`qyDqg zPQgWGxA9`;1Dk}Wij>^*-#jVU;cTq2{VWqCvBbZ%Y%Az~kDl1Y@9(^9e9&or==4o- zyi*E{Qhf4GFuOH5{LlCHnsIV)!1KWHwQxOH3XK&Z^pR&Z@FmBHG01i4r5y@=L;*%6 zTI)g+Fil{{FZ5ztfM$4^`B;#+bU$s_W@(u-zoqnr++pmGr z(&_*u1&_lco}dv1>wq+L>4q6%@0;Fl6_%)#fTf`$=}n2Si36rT-_=i;#YqY}(luH8 zOpbpQl^B(URasXOxr8p_NV`7JY5tf>VnJb4XUy}d_F0Z`IgJoqmyqe}sE^aEWrIZD z4-WW77uk!SY?@2(#%uMj?e5TTUcj9#fgawm0MM! zEBStO?q47{uDfJ7|L1imC|%XM`XbuoVI6=s$+)5khmV$N!E2o7lCjfQ6%TinTko}M z&7YK?bZE3E&s^g=2U5MhT!As46Tc=T7?*q!C)Ubddo-(C%(&a7W=Q(DL#>w{H$UeO z_fh*id0-0VHD{^bsLu=KgCysRA0I*snA|fQqF~a4!ZK9Mq>#}%MtD}wt_G{M2OZ?c zj98aj(lxXQ+j#VA_4HvhEVS{R+h2@*b0`wHX9_^&dJe4tt?(aYAO1=71~~5UgCk`H zNc1ir;-_km5+GydHK4pAMhL)XtY8s-=R?waY?jMb$tXe~aTvJGnW3DFzI_<_M%?#t z`y`y$W_O!xrJegufI&RhAChY?PoyG$b`F2#Ph29BId{%1bG@Hh{^n;d)3jhq?V*sLhm^CSd2JSg z2clHg-nxFltHaABEJhG0_%=oe7i3HJHinJTR+xtiFENuOfh=8X>iFJ(VtO&Vn(U8# zs)3AsVG_vG;nnAT_n?maU!*{v)k`yvuH-)G&!>Dda?MZ*~FgB4-_ z>rr)gsLuJJ$J6#KDFzg~Z=vuwDR^`~80ssHdkD_bq){!rsZeclrwO^&{;IvPU7ni~ z9IbJYOE2X9Jx*pRd%_gW46!sQ{ULMyA;@E@){+u#nn(mmJPEufm(G*f za>+C?SgSK=D4cmY>GI*ai8QghR_*7n&%~68FhAsd=vQyraaq5&l;6Vfpv)`Th;Mpb z2m1FYIV#zI7hb(+-sjd%Ux@<8gH?-e=*F8DMx9q8hg?JB1|MIRLayD<+e|E;)%41) zG1kRZSvKQXxvSc^{Ork2ipsfNz3s2FPkErt24+nf`HSETT{P!TA=;KXr+*A&`H`2= zV~FpjTZ?-FtULo$yV#}T<2W3rbyMAuK9#rV7oZZ&n z6?g>^XeA>9yPd3EM&zO>nb^zX4kF0M8Y7hsBci-C;K`1&-OI0`gi5sddNRa< zSI&Z49jfnnzO{>jrGY(sA3^7~vM>{6WqQ6+#w{{bwrgTg?YXDV8nPona=g@pz6QWk{10K$Ru z#PNW&vTfujL8EMmubkpmY}F;(#Yy?YsY!8U2wR$~K+!NGmgWBO+Td$Z+&z zdOj&C(w^%@_XZ2U!3~{CNH>cH;pjjmFq~z`K&6<0tHSJ9&3UQ~v@^BMYu?OclyY~_ zB}<-WP!szekuewO6Q`nr*}g-U4zj$C{P}5~6Dn87#cn5=1aB)ij$3t1FsTk>wtCR{Du;X3 zQ594vyOgryFVJ$1V5CD-9L^=}Tx!fy@2~ZBQ4c6(SCab(gVN{hd^gG+llgyr5m<$K zso<}s7p|Ab);YUAxNX}Uw^N^M14$&1rK%6Ci(4wtr1UPC7C)8ZSl7aSoFU_U7SxJC z6|YJ>-Ffpnfa@=;27Tq=IZi26plqnEF67M-!xMNI_Q6vRolyR;`~!t`(tt-UkKOen z#X#D4B1_fjDD<=f@MZSx!l$OctTzofN)RivU8PO@a37)&G4sQf`nBH+?|$9$#mg1D zUd3=8I3<+A@|m)~+bTx+TA)NHU1DqYhN#K?(X5NSs_*9X$0ZW!cCt_AQeK4I8kH;o z*EIeESv@>rbV(;BqEe;r%Cx^ThE)bp1ULkISWX(mJ913UQ&LX3J&5OQR;x4LGkU+Q z5}p=EaaHnYJLh zr+f7FKMn_QUN%cO2KAIs)GYXE-|lWBA(-RflzQ)quvib4J&QPE++%g-?8UC}?MeAU zHyn;EQ(Zhm<<|x7Z7<>DG0iv6 z3|gF(L`912CVLIVF~+V+ixRt5s`UIK2=Kh}<)yX$a93EFp#8+2q0aJ6?EtxEEOH>3 zh>JM*MBi6bvc-ZDioo;_RHuectRWHHF81{AEGi`S-&{0kh@mL#sBbYL!~`d2w}g z1K-0+UJC0t*sj4{URg>iPJuO(VnR48KHN224Jy%gFFq~a=HlJtx%aHweUA$Q^OhTy zx&`t|a*g+Y`p2q|1GX-<@A>Zi;hCq?G;g_Nd;E@E_4=}Ctt@?k4D&@yQ_diH{Z2Y# ztSGysyXMeS9V@>yKCNZ zfm?w18^L9*KNM5F&|tS@#-_*;MTc8&+hh>&pzyB4M(V5_uRD437kIHkN~Fe!W3q)URg(G)Cs*r+;;X0t!me5|c+1 zh%dIcobR!(v^n|-xbmvA_x@>@tQZs&bLbvE0}mWkmYiCJPRC(5f1n^ zmSt3D=_2XY89TyGhwz1dowqXZ6$Da$>9?}oc_#4S%%EI42_yw9_R#%thm)VQP{{U> zN1%SdgRy(i>U$yEe=-D-rz1Z(2*9y$AlaychEhcW^Z_4Tg-p%nG)7DKfMIoGdVT{J zq;oqlU=!rEpy6ian;t=*bPoFZCB;xH%tfBGO+@qKXA6nHUR7J#4xWc@*NRWWY1NVi zQl4iI@=va3-xJLI3wnyHbRb2(GfePo_j0DxYq;Alu7f}3+}F4FD`lC zbHcrauxP`M>m)Ti{xXl1!>zgOhUuJ!=`dOIroZ`jCaC;&{890ot!k(5z8f`vWc!S= zN_aj16=Jn?-@1ptEn%Cuu02zu9d2;uT60#u3}=tZb7pYWPj^kCQg%r+bZONn2r3}9 zRT^vX0^ff*k$)r|YnA4#N8!}4+K*}rcadh7kB7g>_?H--O^KGJFa^?770R&(IW;NTd z0*QCys9-i!VSr;RX}nBBFP+tlJ9}^BUkk*>KrVZi$Mn>l+V`P&mHtFrX=5m&xto4rx%``qU!jU9Jor5TKA#$#e<18lKGYhw=%hzJ z(+sc|73eaTxgd4D553;TgJ=z<00lLSu@NwXviBde8A%jlphLDeW4$pWcfdGeWDrto zc?5tS00#_1Hg2lB1j;}C7q_k)@^2(4RISkgKUNH0IDD+O)c;9^lWXS{?Zmoq#`{7Z z1Y^6UChqk)L=hU-pfieUtKZtpOrS_sQ^&s+2h3LwReE@nR890rCz?JCVy9>mOM7-w zC*^@EAm+4%tO~K3^EjO1rITZ~eaV^O>X`{W(zqLaX5auAXXTa}}4 z+EPVqV(Dtt%M`%H&5n;W0LpcVN1^?~mG?1P;mncaJ(0yhG{=4A3=}C+Ss5S3voX-yC5x`q$QCPbWbzc-X{#?;qw|n-+n=_yexfX z_0*WSq59<7f%ikgnGk|S6zZr#&I8?38x9c8P<9iX=r&JDfirS>&DxDmpHHz^!Uv&& zKU_kFhM-=ka~^slr5o~%XR?$W!D9TGkk)OX3jKvtniUb9+px*8)=~T>4;6C19bb*( zUwE1&;38HBAOfrysoZZ&p`Qj+}vG6C?EYcuOa*o=u8&rf+z4W(0%6~Elbe^Y0j9I*WCjdB~K-6cT8%RJt@QYgCn8^ z3RlnHK4IH*x8@MgUdY*b=b-6RGS6dKJJSHzp$12nvv5QV_vP6nx_-}~wTuf^nKS4isn)^I?mrRgmSF=lH_!jNZxIVnYKy3V;T7Z-%SqD>SCF`8JL z^jZ%|$m6}TiZ``;##UPBC72@qHly`DaS#=ap#}{ri{KCb?`!i`%9tE|tS*mld3bw5 zBQ=RNSo{1PUEybz6+dX;^Q=m2@qVaIq3w0sW`b?jpg{d6DI&a3Em zro=<|;L!4SYyXN1N4`=)2o^rX%y&fmQ-z|tt6H>;blFcb3{(bFEXNyZFSp)SePuX3 zDOZKDjX1V?Z_j#13uhPeWvRA$`T1RXtst?#3p@^K_4-V;ElDNqvNJidPYhyub7+dV z$8tn(l5#SmcPB|8s}C!pttMK9Gjz9f?V+J+*h`npEteC(7D(wQ{c-5{zD&G9XHR{! z+KY}0(wERHvy$32IjgA5=6)u-5bM-;b=bq9 zm+C}bgPZa!lPFM zXn(&L$ZmoPmNsXX8RA&ytrQ?lSfWvc#sfzJjX4jxh#?)|we=mVd$f=cvmuzZC?u5x z;uF%Zmreop&}U#I5I*w@05a%W&j=vmAyYVfy+CC+mfotJ>@tWGVrZhRIxPf2;49;) zKZyO4;LZ?!cv{~#a%j8AIi=%@=8dhF!GlXr9!zR;L~NefXE48yifZyTN>mn>iyk|r zw*`9H<}D>g%M?Ye$i>EowNzxgYJ1AZP_x6OoQ(qb1aUZ~E!}}!_;?6p2i7=q33}4C zQi2V7c1Qr{#er|&LaJlxn?^yz(Ac_M?Aq|Dj1@M>ln{Nqett^D7Mj$&3trpIbQKR7 zunT$M`{45AeG1T+sx|~@dlZJ_lOMoh*1eDs$|EI#wx>;A_ zS>-P0lv|p4^Fmozs5%qKvw1LH+HHdKyE(b`S)t1ME{%_Pz&ONh;&zr zC=OV66)QCIlu!`51k}G4bZH=LQplf&s(m$|BhW)E$fQ0PMFYfn`h3JR4rKqx_G3d^ z5OagjuWC#Y5sqAriSqZ&l^fcZUfygiltVYARBmPW{sT$@yNoB6$_1=eIOD z?AYw?WouZ-sUH{F6Rjxam5kvdM8jy2DP!K7&oQTIu`6_N9i=sYb6u#HslBW*G34tC zHImq>+FC?)9&}7|yP-~n1l)CUZ8xRPhgkqZ`t05LF2!6K7)i1wv>k64YqwHjQ@aqt z;KRr<_(g&h;PbvGy9y+o!KoVPdX*BZh1Jp{`2g4HkJE__(=5}(7SDy~KFa2>P$OAN zUZyeva-T$RO;<$ZohUpAd4j3y;aZ-}(`Wk5LaBL>5%x(Zaa5v6+God%nxCdMKX#3i zpO;v-gwY_G+MAZ!b3RFi3-~S&oh)*OPZ9dL1ZZ9pF8!PpmuPkH7+0F>T1THJQ9pP! ze{gbb-LtHbPHaCq&?as~J23B0`7|v7c)r$Ov|c66hn-^gVtZYa-$^>V-pQ@)hBWtodY!sA zHFdD5S3j9BTS^?c6Fxy%@(f_+w*6on_}AaA`9$W3aEd5VJ)sr{=MH0}d5q8}x;Z++?j{%KdlaU{#j4`+YSc12|x#c4hMF zV}G8F_l_}Q?uX{8Mp*fmru9_%J*ih-5I-b@3VDLZr{eLUmN%T2X_v&}X~jWb15L6- zM#FS?4}HjdFq?b;ms>L{KYv)g1)NCvZ&jUahH1Sfk-vKG9a9G7F&TQ8+%z!`fM<9g z-lxN6HMc$^OVxk0y1_n}D%H3P$4>o?81)sAuejY6t~j#`8~ricX1sdJV*xY*?q>3g zJI15CFAYu(;<}|ECY86xIH48h&GM!0OJY@~@S41dDh^u&4p%KnC|Xh3<0Nmo$;z^) zw=A8++SX22K>3q;y3f^78l_mM#UGCK4J%bYie6X2e%C{a6T#ho`3SI{hx8@)JtgE* zPG-n*3)@ZF63D!kMhSERFb-B08KdIe5?BjfywvIC>2ws!L(^L z#@t2h(cl~Smgoye>nps?(@&N`-?kb{HU@K9t>lr4P7hU!#tnS+mvadYE zkRq_=@FqTdbdx9T4&!Am#_zA&y|f~d{*v|4PaC6mM9jPx?ZXz5Ji4vpxQf23dPJF| zbCivLT0bjwQ8YE)+zwQ(n$vzGTctVnk++AB3L~^19Rf6mhaWvsP{#=XAT=}uCd0(b zzc`C!r!$dN{9>8jmqw!H!7bnR`)ok(cvDh~q9On;^=Y}b9OxlL-Yl&o-h>{W4Xu>R z*EDH=|8;(z{lL!Kqn>@HIE-pebPn^h$wi4?DL8!qz4C1kiMl$xN>i{?e%$_;q0?#y zGtue@G}oqM%6FhSkD-1iP0$Mx@I3f322D11^qd#zZ-Ms?~X5I5N%(hl-Y^3ee<8dt#V8fQNMjckI)zX&0yXk%Ywj1-uJAo zE%fK?2DisM;aDnj(_C!NeHr8X}otv^MjzklDPMf_;))f{~kx_pyq*0I|8(8Uty_Tx+Zj7rA%tq>u*Ebk&%I#(Iu z_2BlycSqHZ`1}v32C_B;B*OX*&Ru4?$=UR0cceI$I<8aF_TtN)ANTt9?8T-l@2C>} zd0BNHhKIZjQ<8t;v*Y5`m%J|f<*5tx1EJ?@UOFeUA5WNMDDgRd&INiGcQW7I-%4*j zbkrD%xqFSMmL4&1^~x>2Q1;Ou{TjVE?Yi)3_4(B1^Ic7fVi{DY^78@S)tz9^P#qy$ zNY3tRs3^llaQOj39_PZ|oXF3`Pg6t8)Tmo{XZj!xaoSN9)^CV+tD}u}V$mF7$#7j?8D950FBZ5+G^SOO>#?SUkvAqeI!YT@mG~ zc@EBJ+dpGWo81|^9MEOTzx0ThDxc#;q4P)Z;i^N0JiiQZ`oS`0N9bxbk!c= z<~xV+?$;YKwFRcbZ1lil#aJP}A(iW$3;4@v;{D0}{Ht=Tk6%h$XruPH0ps!C2*8Po zBinKxT1z#K(4K*B9ORUcI1w$u1O}h5T>1zLxJOv6y0nVSRf_WW+Use2al&@{*2^q*Ge?dumbnK%M<637tr-BL^hO%*F@g+op@X6Qld=)z!`Fm1$$S%2 zoG}PxH=hLA#B)5}BSaqeyvp>Wt$*I~*j1bQ;8eT!C*kP4u&ck~ZKg7-bF-vk%V>7k zM~VaC=0BQuUk=x=-jkF<;4>bCt~W-5uOrr+99~p;u2n@&-4W|8@lRenGBE%VRcQxS zM{TV-%qIr$DSGMdFI74V%#4rm%2p&Oe+$1M>VCPxEEm9;U|iPvG(R?E!)8`L>$sO}nv!Yrt7=b^w;9g9 zlR1vI{kSyBlT+6{JdkU|sMy#e{?o+gJjwv)QF}w7ObV*S3eV-JX5K*XlMFV=&-4!P zNS9_d#W+OO!6SLW^W#)y7lf{BZGH`?$f%jfbz+knGHzfg9qsluaOr-|li|J`&qrTF zem+j$i{Rbwi@IpsWo`>-{h20WKi|}k+q@bYejN@%Nth!QQlK%Yt@@%Z|I;@`0(QLS zz1JRY`opmuMbgE>FKTnCpxa?Kb2^c!<_P4JYfjn)XdGo18!GG8z;5$I3t+@g> zw|ys`#_}<#JN}LXpC?U)Z?{J8J$Xs0K-R{73|}yP(5~g}hm823sm`#<;!G^iUSu*j zLZW#VtR%9=`vK3?v^mWl19G0~c$~ymPgph=cK`d=z|`BNH-UThhF=X!@f3^o25C5> zH1PPAG)F2D=~bCBy=l5)pK%ip$1433pOTKk}>Cd$f$H ze5){Qey;JmX#ClGbm5C12m!yXV&7w}mY@a8sWPy1({^z7(9z}l*)QE@+2YiXXzYlU z+3hZ`nOJs=#bzWQT6C~jRq>BB`(Y>qosae&r(ULHVVBpJgw{eLKV0t0at%0=M4H6R z!c+CGb13~bLh4kTZ(G}RzSofnI#>J8yfTG7R#|;c3<0$k`!l4e8OyIQHd!JLo=NV0 z`Znk0t2#b=Rq44*;co89ZUI{A_*Xz%>0?IcFY-pX>T^|UxesPaig0>Q2mtOJUD21$ zljyZ969Hkk4Y3Z)LZ@TmZE#Bg0=Jp~#JH+iFmnH69(8_5wECQPgsqMA7*{UU8rbp& zq(K_X?D#n@yQ$(^-O9RZ{&tkP2%GoW0;J<{NN^% z<_|7-Fy9q-euF`Xl*o&>sy71Cil8$y+4sWpE$7rkax?g1qn7&9%1^ngL+sHY-nb8Y zTBnK+-HWQ#8=17*h4ky-j?KWFYW*GF92-6*VsB#4*CAB(o@~m;EF5%dKdd7R1ImK$ zm#L##m2*S8%6%(d3*IhgTC#^vrSh^df9He%ah9$egKsHasO!}II}i2fKPbH9(VRdnb!q8}!O^x|x{5Bp z3r%uyE`bh8OgAPmIfxf17_C-7P|Gf%!`=AN1ID1&RgT*Ce$I;w0`jazGm+%JtvX0=QEvRlI1Gxsr-zN_@x^IYNf z&M?y#bRX*^<^S6poS|+5Ct6r%iJLUxPq%0!jVJ|*NPY-_rPo~&I=4q+ax!O~TK%O?eYFVEG=|Rp}9gaga;|-5iAAz;y<5ql7 zwtMex5mZ`53ykh)Hq1VQrhu9rP?}TP$aP<801^=Fw5lBHs}J9B-JgA_W($bUWuG68 zuErumlcZ-J_mD%PRHpBHpftNQhcip_^XAqUqLCX!FF1sHbbY;GOt4^ikhOf(&fP0d zc+gkhJ9JGAJz9HC+SCX}<-+%Qz>URm`MBP%B7ed<;1d64;FO1s@6SCEFe3bI1X}w% z!r76xJ<>!Yb_)0*vJriMJ&&*FF9YrezPEfXwZrEUA`~2mWzvmrJyC5Js(b(^;m3Zb zfPtVO7+^T-L^gsMa~As3AHH6C140;cbe<@SJYG?6*$<5&EyU+E72;u5ogmw!+ug-m z11YMkT>XtkKiTa#{Bj->#Po3$!EZUK5kxglu~;!!&dYVnxHz|eh)xdw@Uo@KqIh#^ z&9g&KNghRJo3Lec%;2LoyMg$wbJ1e(=@IUzU~T&ePR^9Uk%leURV9gjQs-%H(zAH6 z_6J9-h9}=tGq+RT1+u}tyP7^<^W#vsCe{cPZQ0Xq}Lf1Yi3-@q=+QC?6Y6=Y3I ze+n@^yUGret8+N5BQu2}r-no0FF-tR@1`eS8lK}E|4mimN4nVG~mpnu?sV^L5X|PJ9lH z-@AowIF9c`R=fOop98(2g*(3+hBoOv1|6_iD=6oaptNaV13vydF3~iQ=hPiS?yLI5 z%FplMmphIDNK1k@Ljf&hD9s1Q(>D~8@a)}LU}{!|&k?6AQzDUui@@;(lXg}Weam^u z)2{o9`UOERfI~(IA8nWy3Uc|~cU|C~cwOd4uI^#AWq}I(RfGgm_uipIAwy|(CKfH7}=rPD; z(mh-gP*X@F=OFgVO zZNK!ac?LY0wMrFnvFbnIL}zygl|0R45HS&FFrl_)Z`*8=6U)oH1>$W?3D3C29P*m! zDdv8hM}D6-(&9)HaZqC)b=7yVHNTx8tYTCXl#~%6|yj1>@(jcH8AI6}A zPgLPCDPL>AG3`bo+mX>GevyX9Clr>^U=m<(oOU}~w8?d>6-^pZGJ8>`SFh?rjhY|> zDdohhTT9>b`x)erWEN9nJ$3JRDp~W&k=G#9RO6!7DE`Lo;W98O@Xg5}-)&@@B6aU6 zS_0cH<&mA*liYJzO=oCFaCO<&u~-ikMi#XKY)!qJ=_oL3tO;ENV!vmlS?0O}(~Quk z;=IsN(yP?5?LweF3j;uSq0X&|At&EFXeZ`Kb$1#o4m{KXs|4CAAyue{6QgA{$EKDjc%e<_UJWg=dO zWeN1g8lh$wm^Q+%b50zPzb|~THVO+(%VA*SgPTZu*_A8D!#L3z;i0KtEz8t>YTPAm<%G!6mrQc@RgQZPaxdQ2p8HwS z>&9N4z0~$FYH*ith5@FsKC-9OM2Bt&7wm#=bCq6M){&yJsApe~U&|@~czmhCdBXP& z%k&J-6P(}@WrxOQ{9FmG{l)^g$n9}ZH5-gp^2uDTQ_Stce_X0lHj@ z+9=EzrFh-Oj2*ORBa;$p{v^$5oz6!8;hN&LJvHwRYi09_GUnYJcO>6vAeWwn^v%3Z zv0duan67-^Ot(6d6lU%$o@i>7?BrQAQukP&=ugxHMj5C6OMK`7clUy!2 zKHnG0x+D?d@drGuBpwWGiF=j71fs5!HI_%gNoAi)H3`o@3jEwBRobl&YDQ%Ql z*=eDiy>)d$ZbvNPL1AwyhTfjcluOZk+CM2e8qy0WvF}GFw0t|fgplsIO-<~wuWHM= zei%Lgex_>L0$!FVs^$-jbo0R3`yK>g zjfGC+B-A3HU!mcdZM0`!46!2t2GvefgtlDNr|ulR+OX6N_92_SH14yIL*kjEh0p)d zscMqNauIk0O3o&aghiGtdE|ZnDOPF3wILK_E`9o87*4-VwY{cQw>`T zt1P45>DyvJJJqsAOj}EFBd{5=#{mvQ(yayDYH^DRS^8A!7l==@VKvvTj;tAlO%G{UH2^0xoRYKr8~D8XL!VV{h_yjz9-l^;{^4`rR+g}?2~vxD zN)A_34oryFGkcUV+VhYSR$L39V(C4q4&Q!Gk3(+wu|y&9apK~3Cs|&UbhAs zNLT8FJc<_PiVc!mKxV&U(^5P+eL)FX@?Q@@e|y>%|J1;jp+(oM4VtuX7w%<7 z8)>p!s+{&HIDr+`p@j8I#xbejmnGPj9-&W_JdUybeftDw@iL<0HwE$FL5bnYHN2v* zc_mkVm_=-MNUO%LRG>^!i>7C~;^gKDIb1h|=ulGATD=ot`yJmiPA#V3KtZlvf$TO?E>xTl=qc$Zy&izFoaIWH=w5OIrXyvVrB~H3kc_hA!(R^Q>3IS zr*dM*tub6~_`HUPQI>cUf$0c%RRJn3bTnHuC9*|DKNwAfixgi0XoJES;IY z77ZVu3euhwy_U#l z$-CovTI2wsFbh4e@W*G01qW6x!G4JaO>Hmt8}oIVSW>>*s20%RPizzl+qKHdv6y`cvL!;*f5!MaM%~ z120GOK*h!`Pw5H;n(DW!`S@>d|E6DmC(0X5k8X&LCW86N$&XBYwUthE-+5PNStXy= zXYNIn?uxTJt?@V}nXS2Ictv5kL#|G#MQA~&x0K6U@Z!f_NbKH8#%)fSrNp&y`d(BY z3WHiIUR@)u$n|yyFtJjckN29D;Wn+^NRAt$=DKcB{ef3KFKq>Ks~2YNo%KPn_jzn( z&q|#G==Ie(r`St8i}uG>lC3&R?h)dZuabRv-PM;VspG4Rd9{evE-GJTh}D0h{^Iv- z{7#rMe1XSzwDoyAX4bil0&e7<>bfi1bUjXK^Z@M+tCTDct-U2{FLf{QFS7$(llR|k z)gkmke^xye>!Cl-tKH|FpnLAUx4!}A`+>HrlyBDc+}8q;Q_}2o7prnlsZC?n6p=hN z3xo=tOLDn9`OEw7@GRccHb8RGi@H3O32zX!wR9H^6H}1d20|w}L9rslmHwQq4B^FA zD57G+*U^cV@#z(MIOTc%XYp9$PbUbx%saT)MWPf>H~pGp%fr`R-ok5BqM28+`Lw z%h{+@)(^dNqj3|)DL;Bh*HeNLC(dB4@O`s7n7r>*cKhWxPJ;R-RBF;gNjEbvh1a=r z{i34Hc{I7Ol~?0VvE%>TJ6E5syWA!wZwbS~O58gz`pkCv0OTuS6{M--H6uvu(!nsAh8b2F~^0!(h^8B3MmM`SkP0&;rT=?;hjA{hYsr zM=+sae49wc*9FgRAXSrlg^5=nEKR2ax$ZC7m!`egHFagtr4Pj3U>!p~-i7l!xLPIa#|yyu)xI$_jFDTiY6d?X zcGX6JSIF z-&f9JuSY$C#oXB<{!oopy-33t$4`px3i3v`m_U6cL-7$DOZ=lfD@}4#o<#?A)J(hO zZe!i5pnBihx9iJ=5%~GC^_RF!d>NSqr6otUTv3JZ&N(8U&=d()ezW^xV?HJubr_KC zyX_F5KX}qkZXdqSBKn3~DIjgI<0J`UmX*<0EhcyNQ(eq2ou#Bl#M}=LoEHej|B77L zW8YS0DmlwvPlqs)r2@qPLgsr4{)49rr}QWO25kGsa$ykomnv+A&OqK(4|^mibz%bB zvyfPvQL-8KY4mkDQ%;f4vYk<#bOXwd&npY? zW(h$E6OLTyp6jD_AtWw?f4|3>6wrm+L!Of^d`L^3lS8|P0bCr0ZWC~i!? z`XT;=mGNOn9Ppz44^m-` zKerF7@bPR3pGp>|L6s8%yr+CFfEVDa9;}s%*P=eAg-ryvm(1SOJubL$OVqlV<4FG; z8uQ-kbDE-;P?ghV!p}frl-irOE%2Op8pt4eK?;5U8Js_5b~(c2$e9>*T|z$@!kS%g z75yW5ZTb01jLbfU#N7&vt6d;N&yV6(sjSsHpeY;PYC>GOUC=$)5vm7sF^#gcsfxN= zFFnnDKgToLmZP=O-urDLJq*D6Dy)mQV~+lC>`C)g*1C6wR6Yt}NdZn)iK1l>01}qW z_Y7UHuxA`3kU*e^ZnjnUmMyKF8iAowi5Nu0+$Td{-?vH@JYsv{ z?5-9<_yQ2TM8oz8yyT}Mm%Y@hpa&$kb0|AfhzLwu|FZNZS*g=)tZg{GUtd-^mO?i; z7JAu(neO3w%B+BGl7hW{E=J5VdnDgHZ+rI%y9IUO?n2o9H;q*N^2^P^mxB-bZg8Ug zP5zEa&)!mm`#Jq7^7`*FXoUlBZp^_nq@3(N*@8rC(5Ul{ZSu)xJf!tgbRgoN9VTar zLZG8&7oK<**5|EvNq_fFScE9%R`rnf(K$Gg{{N-WIRRlPBb^(rBeI3xgw5g;pS=6u z-JtpA3^%&(*>cmSqko*EQ_(b@+Rsvb`(t_?Psrb#{>)~^8DbG>^q2^|U}%van~{f= z459*djN16w_{`ibI$2N2PGtZrC;*rI5=D0GjJ-t0Rr;~!x()EUn`tfWF%YJI$P4e$ z?-!35tqp9IJjnxaFoV5~w2pw$AZ5dVXu}Wg)uO|CVd^3G7x7X`^em!lg3kAK|2ngn z&b>c7S%7(s!l8BF=r%;CssI!Cv2FSn)gJb2LB@gp+ku3)8Yk*oAu$1}@CPvpM2sTm z!rMI_?Z`&_@QyhteV>QR$VrcLZ&Fqgq+d%>e2;gPV$z|2RfW553{MnxL2Kcwe>LGn z5#M8CMe|+Xv{2DEc(-VXfsM64@w=12_p#L#yi!h0y; zUm%D0poA8UD6#F&W`!p8RBV#FF@ey3xal*`NWut27k>FfHFZs8DVTY+!#;vV1}@wI z^^-W5Nt*xFzslRhsO4}RXeQpdX?Lg0$}$~V=l{%iK!RCO#Oh0H?FishedsCnp(((m z-A*rAeK@<#0RC`=3KrB9z$KDr-s27o07Pdxzt@L*xmkXevd%RsfsiLZDf8&Nt|>nU z9+8LUXQ$sHW1uHEnKItS>_0OFeQG5ik{Yfqp&X6vTN#tQF69h2gKvLOx&X8QY`(C=Ij2W@=K0YMa=2>AAG=L0b5rUNu9< zdlTP4(O|8r+zFu=vKhu!V)UYPSINOm?bDtcI`s9Ahpt!6vj6^l3{SG2;td&-l7(k` zX4Kk1yqS0Mw|`(R$YF0NU~kry21^w+bDGGC7z6ID*6(Pt>71T>2`$IHQa@VT+V>t2 zjQ(dH>+EY8IA#Zq+@ePZy#|$8g$aiy{lbtNK(iiFT5&);MJn>K1#kIBRwF?7+`xdy zsXE1BB-aT-|K9(Ux;A9rw2=u}K8P5lBZj~>|9YBs+W@2QfNufX_m@v;AY_1#0m*17 z$N&@ErS0$veJQ`2@vX1LK+RGJcH?dMKI_;MXL#*BH5|lESx9P~su85kb3iUijjCyI zz`s{fu;#4~-RCO=%;Fo7GBZc^L%D6=fVljw`hVtH_`npE=i$MNqn!rwFQ0VP(&d)E zPP%;p#;{P@JsWu5Zql6_Y{pee&(&QL^t!*8v%RWdm51_^<=;zb2NMk6Zl~e3c;Nih zR^cNVeRKz=&siOECRh*{X7u8etcnKJhtAk{umpbrwgXGL8iCAwD~P^aFVMr( zGXNxz{F$20*?qD|W2@}B#-&`SQ3AKo{Qm)SKzhfqNWc^+*HNPTF%oI@xYmB@f*3VE z-SF>r2jYaD!GZ$aXT^-2*~r(g*=0H;2Oq-VtzYfTR0!O3_ElPh0W8Tx+QpO2D!aQykG zvy`Nnc#ycMw15VMoc1{df_3Lwz|Pa4#1mdLS>A~)FmFzzLcv;kapSsuL3th!fDl`C zjIe0k7PBF=K03ctI=zx<=4j&%4!LjM^63$0d~EWY+~-$A#Hb;b!?{mwQfLlv6weSDs`plMx2%L=_s?ppws3IBZtz@6XFN$lu8)m}^iF@|c4 ztm`yfT$#_GI!O+NwccqC((d};kzQH1A|vd2%^P~*DXMO?m72pAiqMgO*kc&ZVaS0h z+SX+%v+r|9qG+k1^o4}$c4#D2trMf9K6fh4Ilj;rqD!qVY8GjKK(t~k$e-+1Ff z-&3QqehULxP=JES9MSE0$TwprOy2?3c_-4$zEL%?@Zd9wztzxtBkota{F=im1^jpm z&BFOfC-4>iKo!If(Ivz~s31xu`;!uU+B31gQ53N3^4>sAjwZU{NshksuQCecW4Ina z^x%E8p~>`Ub*}02oHCs`NXH?)x7hDZ$ayEEw{2pLM6}D5(!O*=hPBx*Qj1ht7Hv(pKJ3pFS23wCVsxSaz7B>pOS1qD^=p zwzhYe8MW;`TmR$UhY{eW^HC<;8&$&c4|^Iq%L&3c_3*{*lFhSnO{_wU=<6=4Rb|;+;{I-eKzNrQf2=~%l+C>c5>W%A^;;6u?4-xs)vX8l}tjrz<$Hpx~uR7Ue5E9BJ?s)?2|M*_aF~GIBLS} zk$N(lj(#fs5#l;X$@?$K6&ESsY2$V70)V?-kKD&J?$A!)dYsP(_N^2|-qJvHa}8CY zTa!76eX9Zjh{wLTS{(91NuqV$S@}91Y~@%2Y7=Ol0D=Goq7A)MHjncB^xABtM<-+Vkjh@1P`MA9JT#L6A_Cp5$NeeG%k?znohc5;W{d&h-I(qxo$D=KiKUiirg_6E5 zb@X44i+cB42A|AW1|OaYQ*+5tSyN}F43ld2eGPpv+BVF0bmprNbo}jAwnaemb@b4e z2JqcieMfPrnFYBUj~{txhAE72!MK7)7>s(J?j?)eOmR+EY|~%!$rSMvT3D?M>c9b( zew80)rnV4#^Xk7FGi*>I*z)kZK&|!fpeN<)uT4|WAD_oPDx*{Ur}f*oLg+iB>w3)B zSJtBWJvuOovgvMeQZ#X-NnN{%xjSXHB0Le2`i^|E5dSW!6coFv|^| zFi_EG*Ak9oGldL0IRM@O1lc5J@W{^HMB^@0ZJl9atr4M5Q;aOQ$Jek8?#&x1$Xmg1 zhTa7hGhVX!L$?k4)^0c?NH_05ksz(IzsxVY5=IQYMqi#OU)b@aFdC+gpDTKlNw6NC z=#Bl~auJIxUODbAx75X(*Q5Yf>wsi}Hx9XOk4U#~0x8J{=qi_`Qf!6_K2eAe#u1B@ z!{{#~4tSU^LIXOXSp)s+fC3wlc;f*aUtOaqiBYMpHB9S!V><#zI}!v>NPl(fbxys# zS1ks|3sc{HL={E)vppOLLZbE@j&>ypTHtR$b0?5>?J#ZM^-Gc2x-}0UCH-gw(TRFX ztkwRgz$?8nEdVVtPc6~A-Tt>AV!BC&{Ie_~vSJ{S-2`X^J~E&W;&2updLh{a6l8Ju zS>1y^Mm)ZsIxwUOpXqy*vca!gsgha}OiLwmnQ}pZH?{@fePe_&#a#!(*Db{E7yg>Iu8Ma^r zddKise+sI$jA6UU$c~yrX6IS=k=%t(RAPsgG(nPL9$mxK&o7OtA0m6q?ZMBO1B6MQ67o*X@{w}(i7}ZRh zj!{4plQw+z+Id!k9VoQ8t^SMF93f|DR3gbVv0h^A7W<)$)NXulYJLB*kp*_p;#qr< zmXBOn(UsH7!Y`MrUnKP|14SPC51P;U(0sAm)lAl0XaKQ23aFH)#nR}k+LqY(-4|e? zjzekxZ3Sxi6A~<6S$-QW+VTadmn?_nHw!%JPufinnhycy+ zZX%)3%f4qhN-GrRK&;>|Rw8nWjsW$Mr60ekOaq80En(Gl0Td{()#^{0OEO}lFYe$$ z^5-M9mh*+DTYeM8HME7li5Wu|wfcj?MGzF4(LgtpXVD!}NWcKOWH!_mb4LK}AcO?0 zPKMfja0t~)0CU^e$+^HQP72r08mh$hIP$|tU{!AWoH0my{!ci^b5)t12$1z+^EH88 zPC?@S6Cm)xw9VMLLZ@}QyxR*PTk# z7wywv`XSxLaFRFAms5pQ8qS0xuo>~qwC_AuV5%SEK&g9d61GI28153IUF#UqolJ_f z!uBV*;iCsDvpbaztNKC0ysAT>eoTwTUHg%dXL%XgzwyNjqXOukR>{xd2@%J@R~ta~ z(ZD#4O#@B?=l_FA^WXn{@pcdDFYP^57zqly3y3#I#TF>`*?>#RuSg2qXzT;86?Gg$q#WGhJ6b}fa5$prUXB?IREmYXwT>*Jg#9jaZ%?}Tcg z6=p(YBGAawiY*vfEgJ3_HE-;$oFD)PmL8Jk7=C-G7hqh0`|r;?1ak0MD8$8S^^L(5!^ffUigpmpL-HwM7a^e zY9%JxwRm2BDr|}PO@Mc>m)V;c9IIiNRUeGXvV7!D6`&|Bq#o86M)BSYxD^} z*34GDF1eWDU@$f=z8>P3I0=SLEr$rgy;jfJb>GT(FdDR30$of>*P;A%rE_rueGuEZ zTAO)_dw`8@`QMXRli-=SsgEF*%brIyE++-yCdX_dl5k028lyh3sUzmnYaB#-a8o4l z&!3a}Y3d^HK28I$R2eBu+(LEs!iye80`OkK?Ro+Tr*$jV5s3ss25uSqYaR>!59)Rr zQdXR=p927-;CJp+Fz+N#N6FIXC=;Hptw8F34CrDreDOJqJy41_X0)KIq*Hk-*Sz5G z%lU80uMkVmfQmw}DspkN01MbN9ga3uXdu@u`xKISJs;{8)M=XXZ(pSy+y43vnDqEU?CX_fdCl2zp+iBnmNj9X*{587u1 z71~=_J4)z_4c)@`G=@M#y{k98+In?6=%~MCaadlDec*ug`P#1hMLj!^aETzLM)i7o zD(ZrNh2_U4b{X*Y3aem4_67agb-__ zc69mO{E;#;mDJnMt^O@R(6u3-e+hf6QBrPlk-|$}V$A>MTv&u0_UqHXCsF6V z_`Km^=Y#_m2sl&Fg8W7aZ(efe=5S<0NAy1wfv{%svrk0VYH}eRI zQ|qsy%=gH&r~P!oBn?1ZIQpFAi#xi3x@9}*^~x(7@z}dRbl1ioghDj!8(*nd-woP;oGC_(Q{A9+r zWp+~Gh@(+x92h4nV9*lRdz+C80GpyoVz{#yfIvIPmgB^+cYtiMhlbG-f^5E|(A+wy zsTANG5;)*`8-J{i+Y-!5e*wBqf0qyZ$H)c(x<9_*2N|uh0a}?=xml8iIjBf1fiR2X zdi%9}0%QfC7LX>;S4J;5oGB^d-|Z=;W0|D=iQctZCjD3{?@la>!_QSBGPUvNS3%qz zLi8tuOz36L)w<}Z8F6xmN8_@~D>?sb(l7E?;Z8@$*BP!lT(=c%?Tc#YelCCd-(8~hO{ZDhCD)eNTJ3`)7Pu^0tIUFh;y zHSd2+R!$@sIG;(rY_*{0u&6(`tocI$mt2o9ua&poDDJAsZn#wEdrsG6c(T0}|Npl# zh5_|{V}A9bAp^g}P5Pk9C6yMb5~1yYU)6-UL#QWqYWzXBGJ<)Wq^OV?+;WWQ60v*6 zj4n3f^E9de`n->ofKBq$O+LZ(T8^Loe#`kw(|TUHnw!W_sy3Vcb_y0LUxijqIRa(s zyUC+ZLc23_m2Ebq^TpQItSjtCwK+_sNaC1NyE1C?_Z^m=MsIT_ue}NFMZB`+cJ~X2 z7THSbk10#5s$ep3s(mv5+XHAq7O~yBUB{3|`DF4w;fJJZM+}SD+tzh2D~`}43Ruw5 zO3j4~j0G*zM6-RG3i+Xb+9c8BGQXSVWnRPqn?*ici3RF@K8Db`IgcTg4+);{kmqrk z5LUf=q4)OT4?3WEh1tHPq1@zWwI-kGD*w?32xI%5&a7McT#B|SKTr+N@ypDp04A8= za;b_^U_0UJTq^NBp!JRhRl3y?&su*wcd4wsqj65`Y=kvQ(Mv7LB$6KHSlNTX)q3x^ zjQ*M~I84nGR$VPl{(>(C#>s79-~pnH(^W{rGsKg3T^3yE9j5k8pPamBD~r+ZT3?R(-ZGbBk2n5BmMf`JU<3t!6~s+Uegdz*Y6qtL zA%o+$k6HM~qO9Y7++QAJP{`0j=8V=J>eghFTVGx`_@z`#m+wpwLuA{tn+*cPL&|2Y zL_^2q2(@0yqOW)HJcegPsP45=pzoJImOMxaOTJvO{)#CRF0iPxr{uA`vgQ*QMXowlS z2hc}2z(Tgb)+RK|pQ{hUf%f%md|?0=`OIx?81`aUM)@sZuP9j;8e~1BTq}h1&_J#b zhH2KVPm$Z+!Qr*UkaDNC(EG164_`0idNd;q1rH3WDXh=>buem2hYvihQ1Ldq-bn|W z-iCNV^f3bIyFi2zSnmS#lg8h;RT^-HNjQlAMa@`?(7pDi#r#N+M%D!UN-VFplyQ}p z`P%CaV~S<_bh?SyM||zhIWIA>1e$>wFZjkDosxCC>u2B_VssOOM}u0ixJt?Lg`Zwy zA`q2yP1aA~o~(EVabFBI0>Cvqc&5an>M)IC+Bw_`z%Ri~oF6y%gX%qxH5gTm(*cWh zl0~FB&3M=f%3V6~`6BnMUi=j@*0g*DC!>8nR*>XU<_?gAtMA)-Phm?Bhmui1Z#0 zD61n+{;4j;s`pzj&;?@Hcmr%-{2BI$D0L|V4(OKdW}Z~+f0aed`#7RY=n| zF@*zDELhP4e%6Up#xH07%(Y|hp$0R(_Vse-s>~R~ttLvN*DI?x#39b}0>LCUC&k=P ziTQcbE8Zj1k}ri-wY;Txa$?<_Wyfd@sOxl(Zj}~JLMX({8Cu64P7Tqa<$gjK@q^rW z2fj9T+?O90iU4NHUxYyhY0bwB zJ&e+#L}j;-n^B8U-rQUh-M8;|9^XG477}wkGS|+mNmlCe(9UTg!x(?*{X~O&YW%t( zequ`&^whXaSr>B%KxH|MOJ$>qBlj3(oSD&d;-E93;GOpHF0hf5l9tF+ABn!XzlU_0naSihM z_j#&aZAypBw5ReNyg-)6(R*hESA#O)FzZ18#5@W*D6Hl+}9Mguw2kP`qy;%*>l|R7t3>|J;6WpFOs9WXc zy7(sl`t2^a`DmKupWgxa3iC>ZppgeQ!lZT+&}DV>3k(#4PrZbGTA*_l$#gmS$Y!{d zn6!rJBkg_JyE+;7VKlh8GQ53CHbwr;4K-PcVoyrQNoB~1Rp|_z;1J2tyY9t~U+8CI zxtw`)v@7wPI%rR8FKxePA-U@9=F85hmk{{A8EoEQ;`6wh!uiQ(&Gt_TkXT4N#9rFw zJgWuJ@j2>tsM}MnQa$mf5*%`8mS`@&-tVoy^C!O?`kytXW(B2$Xl&d%Uelph3RDRz zpJMv|^>rY)4`d{&*+8h~1Q+O_scb@rxokq{$w+M+4dib1)=b#CRWcz=Hc!SU$X(nn z(wd=_hZxO})6-8^%3=Zpw8_Q=4h`m+?M3p_9^+?QR-+{wVA-SV;Zrw{G*-i;p2UPn z_1@^qh0fDeYWzrKMny{SM!Z;}{~k-E(W>5I+xfeLfEd;KKxUucbC(Re9T1J8Kaz=@ ze%5qDoQv>rC-*)%Q6K7MeqcJma)$Z*)rJ7)<^=uo9Dq^2Xzd%4HK`m`MMB_AlM@ZL zDQK&_pA^E@UR-Xg`%_<3@vA^l$43>r4XN;KV8!XW*JL!mFP?&V3>cJCnZb$}*%VL} zFt>WZABQv#9LhAVVTWBh28KjTB8A#sp7ef=a|>SR`k+?txo5|xB1j zY-OCD`AGGBW_$&{U{HJg)Zms+fbxOwog%LR&0I@arX--(-Csu_&ufSNptLuD80H9$ z2Aj3=M){Y2ByYYUw5aFoiGJcNwz=+@Bp*a!{~XrYy@IS*rR)+qgAhSThjn?8c~)_@ zcET^xdqa92pC@KKg6j*mS%ZvDQb^W05b?y{-JL)!a+$CUb zb2BP1?S~}@UGifunat@reK?0-t!P}Ia7MrE*c^4E4hohd1waso-%OU4MDf)d(SyHC zt8ohc+Z64sPgITqpL8D%CLW+{Tbi=B$U|;loo^+!CcifZnj(PA)!?yXZ3;+P8kxQh z^zBu-!$(_X@5^vh0-4Mg!A|+z8QKRv(r6av1FvRj5Gl%u8U2X?z}sB)>ClBFS)h9v z(4qJALTIyW;Pj=p!(!1yS0rcvJwh^c_4F}d)U$<$#6-TxVQh*W+W(t3WZiNX`b*IaxX(m5Y z_0UR@Otrr|w)|rM;8|wjegU2d#P-5r3#lz=V3+=uBRw7?5H@owCdMbKEme zW0T&DItl4OlH?q~VE$2Rrkfd-n|pA{o39kv zyC471pz;}DBykPRm0Sm@A-5?|d%&qSOzn(N#s!DK`4w_`bK>)Udc7LA#Y6dnla;h(RdX>b>j&R4sh5#c`-fGX&2s&Qf)CMlciZlq0$MbOI!GV|SGyro?B#|u?!pj2?pgwe?%_7JJmZ)k znaXuw=OMF%mwWu*`Q%WUXl?zvdWo*7^R~2?^sT;m zf2(r7Ee-Fd%(fAYnt$)EKcS>teQU;77A$-_H)8(yG>Mz}{$IZ&fT{%a$lJluWY*bq zo$vCOdrm8%eOwkIFg73pRZMTb`~PwE=HXDi|NnTl>}4Oj>{%y@7E0Nd@FI-$5Gf)1 za>$mQv1FY}$d<}75m`Exv2PL5M8b?EnlMB5@H@TVulMKrUcdk3y1Fjsocn&>&-?k< z;Gk@FFG{gcg)E+32$Sq^QN)>8be=b4Sw7-2C|q)?p!-S8y|;vp@M%`Vj_-Pu#t;pl zowT7qhpc$6%@>Vvqwrs#5>n%aiwg&kP#k_l_rO02!X$h7CguUYU)qgw_+xU zi!^}VNwG+ehg8_;#ZM*#ZHLmYGgU2lLW7vL8)HTVPV(0&0L z6TYQ$`W~3cD3?_HAuEq55PORuiO04_GZxKz7p$DJ@o%;;-5_vrdo zNf)AUqK|w4zqd+A7Wy*G!e(=RUUj=NJgVJeR6psaPLQAShVs}W`L&249l$-8 zm$}CwE$oXp%`aDsVtN%Q%{*H^dK;bheR<$wKYnF}0_ z1YuYTW)6GAqPin5YR5(5_2Q1*6W<&kDlJ8RV}4rhigLlNWaxs6YJUy*Sjkte(1v_# zwkEr?u>D=#iz}%aO7#lECbQAT{$3o#60N)zSE_#}&ImV~QdPnROHr6|FStEhgjM^j zKCo^({9IsA361UACqvuwA0g+}R$x!^RsRKJ$0tW+16;5hQ*Dsc>GzoL>2|r(T@S9f zbzd{$i8JG~r?Y9g9(3)o!CQkt&hJSnRftC;T_?hnMpbXf|M5NBQ5etO1DyGN`&BF| z!4GUHC>52HVVtzTsiMTpUUR?kSpB55w+624;cf8uS>YW92fyfFyh=BMY~m2XDyMjr zsaC(8=A^TD08Vg|IRYUDAZG?E4m$&OlD?<>J6&T0)|7yX_a~iv`SL5w5>WVpA8$j# z+dUq^pl{h6_rZlXiPgICC>M*}!qDOh%Hi>w)TfSHnqOWs(#pW;=pZYCOq{Y0LgTM@ z@N}ZlulA$x89117baqY&kZa0C6nS{vibnY_n0O@{-9ou^PUi{R%UG;X!VBqS6x?st z{b;-orffF;l-s6E2C)42I+sa^{^5Bd>+~gH&U`e5u*jj{)w>&wNHCW0c$V8a$a!d# z6T%JBeOgotPZ*!PYdTLE2{n93Czbw*XwOCMv_n3Wl?^3_gVHBHIq&r4~1 z%R9-Td*UIxcF1qqku{CZmGIM*)jdgzc2< zP>_H57C+UTp1*?NXpA?TIkNcPgB;gA20H8jZOt1?enybOi#10|n-y^Uo61`*2*d@e zet6edL_fWS1Jr4n*MNS(M2h0y z$Z@{o;SRRl+FCCjZ|yI-`a6`Zz;|9Qy~%2g25Qxby%ha)BX;i3o92wyS3=JAz0K^O zZ{K)q)NoJIHR;XPYkL#1D~y;l`r_b(%d}WVH`{x(xQf%)UQN?Y$OT=vKA7(Za`S2O z;I|D;O-k6HO!LROg*&bmOl$Prgr&~5lhC$Ec(O=@ts!}z$>B<5`pK<_OrWm>^lXp^ zYq<5#e2mo-6>r3$Mm%bz4YL7-{zv{o3JilC*$#1En?JC0qDS0+bNy3)63+>#RyH*A z-xsOcK79&I!fie6lT(Gbnu~QlVqu{?%*J}tY6~4ruy7wuFmUq%$FEXHzSZeW6MSP| z`O>}-VKkp*D{Yn1XMfX(&Y;Jyi(Dt~^X&bIq@{&mZ@anfdU%+TmXY(rEcW>REh<7hfmlk7Bz$O4Wzk}eBkYf1EtGi<- z4JXeXNCjbAQ`PPPVxkx5UMn%uzP%7_CB-!6A9d5vN?3t8iY3vN>acP1{5xL~k@L5g zM&8_(0M6sm&o6htKuIuA`M)1R<325xMO*hz{ahe<*FWX(fw*lwUvipIt0=g|mP5J> zU%7NspD9#T_v||lyx6iE89z7!w#4t47ogJrr6I#+z|605%|Nq-zfsfSzH>Q_H$f#B zG0_Q~vn*kQwH^D($L=Y~#oZN(%@g;dF$a1y<&on0;iifEU!oB>!}badCPDIk!6y~_ zb~(owL>jBk+He6iU_H|pjS^q@=$;ncpGt8W(DoF&*_5&Py}7%giQt+{ox4uH5GFVw zdsqFvd+)tN-fBJJdDoHLAyN!twp>lOXGQS)4J<9zwGB21cLaT>z4asE_gMzN&qA_t zQKB~2Jt@iAfXwbB8B1xk%L%d5Vjofij69IDZ~ytmfkVG`Dxz3OpD4QTNlpZN+MW>(62gVh^Q%m3)Mor4xlt-m@d zQX4%dDEq$!Ro_(WBA`pu!2RwxM0W*j+^3U{RD_y8-%lgQ%rgMfu!3!bssw0g$y+{FT4jT@0I8BxZt4Ue> zj~tZAvB#x?_eeZ_WIAs7Qkq>x@9tO}q89`6vFv(Q1;1a9>lloIL&I2>iOZ&9F0iBc z-pgdPV%ko!a@EbW)M~Lg9p7l9?!WV@_*5L}8Up&_e_r-@>v|-g=M#laIuw40q5Y=~ zMrV&v*Sas?P5Y$e86|nvl~KOF#9{5b@`uaw=Y3W!&h5X?Ga&P)OVu+1#T7Mz09Fo~ zH#V{$CkM6z;K2KYAOI#S)FH(qG7k z*SPLWQfF}f!(EFD00KqIXIBsZhJKY;hy$9Zxf#sm$ zg^9%uUwVVNthISMk(qwK7>JP*vbGZ3`S|jiw%H{F z)Wv(QbvRPNhjUG6YT0Z2WN`1m1J8m;&Pe$Wap9zO;_f#6rKb67)gqC}dF2I8JIw;i z<6gP+Fb@DviiZgda)om_=;tiVK;3zw5KLrv^m2?L+^X6gImgW_{pQPTBjyE8j{hDu z_bQnGqVih+m4aPl8qdds7eM~nE35h%Uj30W33c+DX}0eVBNANh6^tG~WIZ8on)JV5 zbP;IHhAeBeD8b?aI~}5|_$9?TL!QFNfCa45^R8f9TlRu3Ssx7 zVD9PTc?5j@)0{}RLSyK#o$v+xV4odo4XOj5&gJNl2VB7_2~c5?2fNf)_??>WmcZO( z_WE1bp3AGdUA+}**5^BiZPQN4k3T4|?i*__o0W2RYW};YYnp|1>QD6gew+0LV9_;e zQC;LoybE8cVH-G!DXtO*3rWzo~vdxz>0JIdAwG{)j6^ z#3z3fQn@cS3)Z~Zo!a$N#ryqk6VrB^&ldRofW0YWwteb8O6P8xdK$30ROB%4ON+e? zv!bom;`zA`Ujyp`fR|fS76t=9hbZXEp>N)8K(+4oi}9@yZ)ibX>`m>~o47+g7OX@x zN(?7A%s<~vCc+*XwrCVQ@F=0V*&y<%(M;nrcAQ(K;-X%vyYWBobeTUdC;_xse#<;! z-ujQR`H*3)&dux}RXzU=!G`(fFO>iez_m3EBLe46mk;vU)R_+Hgx+Lwj_z<}w~V$B z>qKj{n}70iybDsGG#0Fb0CNKVAhvqvctXE}B(i08C}Qawd4Q#T?U)gHmkY*2Vxs3+ zkkx<&106jd5Wc)Uk`YXxpOZ(}3K3Yb^8v??BKjuv$+i=0)?aA%nDf}7XX3%OM%pI( z{CVY$FXq`q(7%?+=C`e%dg14La+MSVR%$4&*CIaLk_T;kU!Yyc^dGt~4%4k>qoZZ! zuz1K@2(bFBD}QYGA~k%9m1EC%h(9oSPDNyOkYMS?3%K92DgLxsdMruM83|dUYdr{I zzxMhYcj4!iD1H&P_YC$bm%^HC&%=J;OyhTtMPJ+vE7*W0{w=fFofW%eXL}j994Y9{ zQLwT7>{&Y~th3@G4D-eR*@S(d&u*OF)|+{mYXW|}p9b+Mu&Lc=cyD~wpm)eFKz+<5 ze&Xj!11uoFs5vM^(`a!t1~Y?rzAMET9o}O^a*s1Voq4?Sk)#yvgRR!>WU?3~SVH>_ zEY)Y^PFizwGXp`tWZSNJ6gQH~=IXspy6y`N9l^nn4R(p!#xv^BhQD7%-qX0D>VqQz2u)`$g%ivptMxl5d1C;cVttSxvAM7`AnluoxOa75p#pRLGGmyP0*z z&PW;>MqF;3VMQvL&d)PQs3&p2RspryT@~#WR5QnsBDZ(yMBAGveHw$Du8~HG{EBmy zK6lAFpHf*;0=$dh12IQO?M2Eimy);!^72#0*I2iVPZe$XHsW@L3VvqL`J*e+1PJsS`$gDy$^n z*o|l#|KQ?>BZcSuhM0b79C7I_9}AZ6;FL5RLuPdU?KfeB&Jm62z?0xBt(?7h z_)v-vxB(xIVtr$Q+*^j4|yue6q1L7$YiuUHv>C|b-#an()ZSHHr1r-$9q81JaV zk8_JEZ;visu6Qpfv80WJS2)h3jbNq zTl!BsWrX3Lz`<(t$|I~z*tU2>=y%+-<495P!)VL|(b6tEYdQXBcO1(7$|E_{3%LJT zlmSPNjnSsMaCU{W*8N_JI9cjh zL8B$gn6xe)W7nE>XH`)M5OekkKeaKo`B+$o%*29_QH6vNDvhmtvWFFLH2krpfSoj} z)=`u1*-HoKZ~uI#`I#Xak2-tl4~PDq z>w#j}WYuluP`M{CB8D2ecV&QFGkvWfFKu<(w-AY7#j5;b{K%slxf_K^?!Qb8WKEN6 zU1Bjb_SCS&H?QqZ)#3+Qq=4;OW1C=0j#272;ycckjK%y^e+Iyx7x0tEMDv((ypdv3 z!5I;Z+B^qr&4P$Li>f%1`hLJ;vU}y6W!&7>QAN8Pc9%TxBA>NWPKmBxiBUi0g^)h) z>UBVyDU3V!6v7@LNF7~{_%ihNMBMrfm(?+(};O_qLQ8dbPQh467pzZ(3 z=CO^&*KRc^h4;gD=Pu+-ItvAGOP(JnejXc*y5mCbw?LHuEd{P zEZ8MlY|q&S+KX^z`k9_)Xqx|0{ONgiwC${}{32X$TzG6AY@ zVRGxwW;GV1qFPPF7oi~mal*v5LWkU~b~$btUjzNLWWBLLYl&DLqo}xjlV51J!X*E0 z-&z0tKmbsU@W)T05j@8;a5;a9g>eG=;dFY>3J6j@W7^#2Y_y$2;2&mn^0%^*tM7`XT+XcdGvfqdERQfoS8dsX#s#Do`fiN*{q1dm2*<|GfK z_cYW9ixGZF)fbtO!8>Al$C|&N%#~>k3I%GwVFikIpZxS*7}?)V>0kajbq@96*FfmN z)MXApfWc|A*Zz9pHuLCv%B2f$wzlVThPSGSSs5JpQCuA;XWG?&&N3ohpc1ds<*uMT zg|p|a96*F?iq+6p^8DbJKwUwHh$D%U!6IG6sY6(b0rAe3%>^zQP72yP7S#S<$hIw{ z`iFAD<2|j@>nOZ2Gn}BfNS397E-8X7JL$T-7k6*Lj>yy#XFEQd(qg?CfKF&GZj&Dx zW}ydbf8F8$#Pl@8!9Wgj$HvPO4Im{f^}MavJwImqXP1~gqzWZ3IpC7-qZm=st7qYa zH4G=riG=eVjU13HfNHyE7-JMWWZ{81u=bu^iiKPCm1;Jnz42CFvP<*wI(TM^^r0da6~$^}xsb-q1LXPna<&Rt0P z{6xF-pGMMXwuDK5dS)>Px=??=jlG+-C0F|80c(f>SV}f;Q&^G2rRO3wiF8o)Y&z_d z5Hj=hf1}`NjJ$MF518Ws*1LkNESd=sr#~%@qXF1q+_IUROg;@1N4*jJu{9HUu>-Mc zC%*NWmU;q9D>FfqB+yk|yma96f&$b4)gGP`mc(p{tuxl{yTN`V|jqfUkFHkQpIABLo~nxf-V%e7}5T zeIaS8#1(b9WP~{Wep3hKQex}arUWi>Lc5hcp2GHp!}ZXe3Y09tDE36pJ^m?!VhJ$? z)f>!?!3E*gcNhYGvS>wS8vbLHl!B=8DORa|`^jaG(kfOceJaU}ks&-oo1Dx^ZkC~|Rm^EG9Gi4r z;GGd2?5p6iwZi}$Q>d_!loJOp!Q;X&XC6l5%USb8*A~3n?-#tINOL_Gq^e$&oRfUX z`ZGbD3Q3LMD|`$mWHqZ(@0GVjUwW5e?n6Akuc4LEP=0X(uc}Lh!v44)v!p_QS5<2U zK3tUv^qxFn+97Pgh_f_$aVVsFT=_VQ@gycoHS4zv?g{SKcT6 zd@l!EZVyU3B5ZJ?QNCS)B;{UOMeYw5wL0^l0@E>uwDbBprX zmpL!RP?dDZ2aj94Jy$5F9i9{0jYQEUwvE5PO`Dzgc5YqRp`5KpyFpWw zOE2-h60CeOuj_8!xFV^L6qTiY#^u#so_2wB#*wK~)=OJLGJ{5SAKRQc(VU&FkzHH+S*_`l=8*=6a1nyi;a)%=yAlc&& zP3;(Z;J7mVi%Q-ZVxN4+XKZmdvwh1EEsk`yD4EdBy}}2SuLRLy->DCiJVO5~B+YH}k08@r$R=ZG{n0UoRY;;4y`gC9_6Gl?v=yFL3}t5|BED z3K@qqB_TuyNBNiN&S~v23fY`r8&%5xfCvn0xeMATHR-^}+0g7sKrrI@)#Wwgc8{#< zxy;UrAa|T%PHHym=K45nPT5wVHKM8rQY0qV5&oIKP*EtrMA5IdHY3ZRNa&Ov)lG%f zPs1{)LFTV%&z%yNkE`BvOo@<+5od#|Ir~m>|Cz9|@!^Z=>Ju=KJ8O9gy8*5K-_?rr z{Sp575G_4$#31^C4=7z-%~ z51hzAv7GjT1^d)DXULfim(5_)ik$~9zml8NLtGSJpuW-3VryuzgjWtFg>=|7#XC>U zHNiy=2(}jqb7g~+YqcA><;U5lZ0`57F^E4_`ozSlp&NIEjKg#@g}=Y4SrC;c9+oGx zGyGYIs;M-fbX56|tFjmDtwh)L(9oc-S~nWCH@Ck5mHqqtf|tc9u;%nq#pwCQqk<^> z1=Gt(@XSj14t8#$3@?d*#sm*e3IRV849buPnB%?X9Q#6c|IBF~u?!wn!4!R%Uur4RmdL4(uowc5|uLHT|JyN3MXt9&V zk2R_;J45<||ZAeY5`I1?_3Mptw6SjgEF74_y`nEY)!Nqf;N?pDU*tSX;^(t-SYxBK<` zwfU=+V8MF%G~@O+6HNaB3xbkJyQt-dA(_p96TJe;jO=^A<`vWxM1@&`! zQE`4x=VY|c=1x&m(x08&FRS%SPJNqWFEaE9=?#yb=b^@OqphGOBjZ<3{>&}1d>5^L zGF@D3r`N-R99E-2Vo$FCd{#H*)*j#ny(TxfrC)JD)4P7N?{6Q`c)o|N`&5qr9*7^$ zPnm*Wa+x$ndT{B^50DuDL|EXqx^5+zEHNF*Yrgi42~F>`5@18)pz44)V>I%1zT>IP z)7Liori0f(iN9*lZ{%j5t4u$zx_^h$1j~Yk|9K6y5$d<4UMjQ#?+Fumgsr(80=MZC z!!y=O)o_CZbD%84K*Av(53iQC4!qL{c4Pk3!}Bm@YserPijdS zcN|j4$tdE(+2T1#Wr8dpE*|sYz^t3*95Y}N_Pxv{GD_OS(@ed=0BkDBYhR#G>*Vu7 zyD3fnt#&tM{>IyN$6!`c-;nue01&~K;XxlgZ#z~X#oTqv@|On zcJQ&9VZfOzlgz>qnKgty-BG}&Ev)W*IkRk(1J5P5gFZ-QrsTK|_ z{GlX>cd_p`8M$%t#+oFKq@0*MahDEGj2+lK=`v+y z$nS`qM?$&hARZ-XpeOr=tQYt|Mg}T)GA9X(tE%T+af2}5d47-;yK`i7I_Ie36wlEo zfslLB?9i{I+6N#j7fiDF^OPQ-y9Wn%vjXMU;OdEe9C_y~(|dAQYO2}WX?WtTy4?P? zo3@(MTEEZs%F>0~q~|n1C>Oj++s+Vicv?nSDdzqMAwHO@NQE5TD1&dAF#ATj)idRC zjin&yt3K>wr;R>`K0R`2)K#r-Rop~ru8dr!ICyM-3P}UWUzZ8s767J+a89eRQ!5RC zZK!}Hg}Yaz8BXsBM&qkvx{=T9w{~H^hhPossX|b=-gToS&vL>JdZi)3YBS2d%M#v#O zl~7Y9OA6ZYqauM3)jTP2eL)0;1F4ULL(K{QnPrs@Cmvraq3tWVt(M4uprcah1cvLWG$3vU! zX?y)Ry?XOFPfx%X8?-t4l7jW-f|Hqe5lh}&pBW5}5=2a~TK%F<{g*yy_{)SEJ<}jq zDXkUX0bA2X2}m*B|@Ja}P< z>y1Khf!hS(QvX;AW>jMdvcEj zOVeWJbBB#d@f;LEt*roG+3aJ_TMm*I5Wgei&v+QAaaDTJ%K!MeWh?=`yr}b~boQU;$;}A}>OIQVrdcHMeTqK8wolZk=5^41Jy}t<95mc?C}Gb3gHpP}URG@9St3 zIiHKHI2fh-%d$yk#BvAZ9WbsU>RrNOY=56#Oxh|kmeWm7g(In?e5&$RSgW_*#V}Y2 zo^Slk;Q6sEKa~#43f~g5Mw5{Kq}(*wNU=FrhXQY0MPR3y+b#vaTWTBmxpI0UO8yov z@W7D|z$PQdH+NI$WRRD**1UviKWM}?ELu#r}YW{y$ zC4~+dUfpA9NAngutZI{ngj*%T_Tmx9EM7Q6U1xd2vZ=uC1Fxend?%kdfcLR9Z+>C4 z`UEj>?Ah4^@;?hAnSZepI5^-3Itnk6uLHN@h$Us{nW(p)hy8A#AW!;qdPqr{lPb>R zXxSxup2ME@?Vc4^>m5(9zs$eAg#qE3@1rCCoost~FP>YvRa-uw>X{+0OIVVk9wSm0 z?+z2qTAci1lVK~V?kGg}`w>z!hQJu;1IzxN3mphp9w1om*wS1ecS@+sEtvyrY6 z45}PYL%a^f6~3Z4wCYz=1+bq7i>F7X3FyA;<>KD)=X!?nq-1_a|F*5J)=g4|$3|TX zQHPqE>HQx|dz0S@HFX>17WWPHNr95gpu^b7FPQ(gYddQ9P{Da5S@u>0^C?P?HjQvc zqaM>CsdGih$sxS)jqMm(tiA->%jpVsWpp5 z8sBo#ap5`#EwMv)VIW0dhm$95Iw3?uq^r^~jUmb)?6ozV2oFc3YQnzs3OrQ+LY;kg ze>FK46ZpR5(!6gp%p!)bV60AmJ=)Qj88UHAx0>V{kI*BMK6b(ZfQ(qNPk#-#H|RX! zETERlSN9V(y0!?$at77<_om5y(MCms#|AZ5Mej6qE)zZ97BAUaoER6qOZ~;FgIh0+ zQrp?U2r4jjs83m2qEVgc2}NH#V7NV1eB6ZzeQ=C;=3G4J1RD8`4OBT$1GN$VDN*nL*M^*i1~#&9z-Ox@c$KHhfzQC^8X+e`H}VA> zCd;G~#)c#L(sJ+tT(H`L7fDi{l^!r)`$P-L))gJT>%#EcuRlV>^@jS&aW3VE_G?jgYAq{s9MZX0*r-KF4cnDZ-}YVg@k(k6_3L4V|@T zFl*I_0oa7qGFE>{U$m)0@pKxiUC|=jE?-6xlwe&x6OzwK?;O4Z6NSm4D>1!Iz?Rn} z4w|yT&CH^rUPx| zB^WXf@6n{*W&Ayj7t`?s~D(&4e@ zEf(LT#upznTs1H=wQ`p8AK5cV3yF;?llsX@9r3yF&bF=5$_=|$#_8Ddl^Wf@< zLwkfY!SLA(BPKc$IB@2jz4}@vJv=y{CY%3tb_i^-K;va$!#3Rx zdgx^y!IHOidhM|3r-Iz^jd+R}Ym0yRQ+edwfQJ zTEcGN6{u18?;j&<9kub#YaDyU@*j`0VNl13f6kZWldl-QxZ>FL=iZ<1rI3v(@%GL!JVG`&z__FUO5c{;jhKd>X=CzeIL!e=)85{Rnn&ibGCrNWx}W zl7xDkd+uA2=D3PtJ6KrpZ@~$XCSYxXW;ZA#Y`?mg#XD*?RwW z2)#(~ff-pA?XPl$P(K=tdMQFS#%U%;WiGq%w%qeI6Urgg(Ee@Y z-6MUYQ&cy_QYdAtP{Z8f{k{E(zgcXy7q+R3U<)wCjLVI+Ew3jA;a_fz5hP)QIQQ*V zJ7`+QgS=t!moCTWP<8^jli>TGn$^#Mq=5rX+l{_^rJO`QeF#jROE9~uLl~UcSUe5A zR|ri}$o`0qITzU>IXUsw=>pDU*DeOpdl)&bbXX|naw0c)y3bEMWl)ps6yoi4S@WxT zzqpexL?|0}zlmEEsEMsU`@DrGX}s9^s%e^#R#Hb2^A}#^K+R?tSy|*Wpz<>2cF4g0 zYMA%pe(g!Ds@9!d<=~6&1-KGT!m*5?s}#puj>9OFHb*hc84A6MLyuT-`QirQnJ(8h z+g~B$Zlx|92uRsF(y%M;XcJ(E_~$<-!y};@+E;~-IA>{kKiAzTq@q6%kBs!@dj5xr z4gr4z%87>^lauVR)yS3OFca&N-lOARhY4C-cJFsiA0OrHJPq3znob&N85t7vAGYE0 zKlSAN3l7@zH=fL*> zRJi-9rAJ{NjfCk9JA2cwV){@}_~~E2(zX?19fK{Z1Y*E+A+lo_OCCZ<>jWe3AVRNI z6=@)`l1be&iX7fkmY8Oy40H`oOn$AA`ex9|(!Xv0%?Po@TMm2H_NzbMfrsaamYYSyt;nM!@5sHYLD;<$YwR0liocM(JTQ>f9CZ+yoUs| z4500`5VAp+5z;Y~lDV(VfXV5@+**tfYqnS`R876UTsv?^$B@y@ceeJN_W zf0$4#9lv*-GG>I~!rJj%Dn;KWaF|P$4xR;aH|lLvuRiNG>c@!xT%2=a8^qkvs6p;3 zCgF8bmaEdi!+>sdjqM1d$t!&3&#G?p4+HxoL@;A%c?&bq6`@dd7bAHAyYhf@V88&X zt_82^@nrOGeNcP{wp`yY8~D2tBANeP38mocg?(iYiaDKy7WUYa>6L8~{xKu|?Y;Hz z3tw7RYC&JBi8pGdX5m=siJh{4Ce$TXoGH$uVgx@)VA^0i*ztGg#p!8%qN|se1+hEM zA`Uz(R%_ku)*yEuuf%iDClpEcp6(N?88}0^qGz6?DHa%XR07~>0htJ91S~$lD6d?4}zzqD9u_O-5ZjVroWh5V;%sPc_%M^0(y;*K>i>K z-!*8Sc5@lC&Qh^OCt>#{%j4eUnAW#X=a?{B(DQwVIyR)2ZJo+kWA06F8QZ)1P~*23 z8_GOb%rnq;^fRJwuAI-H8Ll(;jvTDRQP+4-2P*@&QZwk8>J(%2p`|1HZjx{kK2Q`` z*N6B&$N~)mI+3X=!Ey$z*01geBRVs?#}>_@?fXQ@1*2q4CNc)RAGS9ryt{!o?pW7v zoemAq+uS?xwKf;t&!QBu*M|Ab-zNDafUKx4iaDexKi&n~*F1#T396%kY)OdQY8RQS z=;^b-L+1D7$P6%0obvM|ZCLtJD$U~tXZSCn^0WsTA|!wa=CsEFzO8s)TKQ{Kk!fK` z_Q;3C`z08lP_sv_a?mY%CH*<{XwOB)?VNbg}V%~v#&8MB^yNvp?fz~1AmpgQq zKTe*1?$8BSgfzk4Uz!Agub7l!i7pR(WHETz0P_w^lG4cnla{m<#w2g=DGylPd-V!) zZ3ix1X|E9Tno#rw%FhxVNE>tGSeRnIj6d&E4?R*eK#XSuD6NYE>PI-@7PSq^0AgqX z%N#2IQy3clEet;*^TE}Fj4t$2;WS3~$2}Qf_8I&sTO&pV9R2*~kOmWQ1bmXX2A&H| z@g^p)Bk!#!Cu6Q+1|=M7sH}*KkKdd<4pZA-33b;0Y~5PfHORI%mV^OXv%v>j>gnt) z7mId|?H)z`dD=z#W;*-XO~yd+6Sln9-9|csNR(`59ZSN~WmZ*IFu=MO0SU&69`bmvh>iEMUn>x(ktlCDmK)4SL5M}rD-Xf7C;)%FEAj& zl>g~ZnF}UkI-81>Y&sUJ#2kac`$Repl#j^WbxR&nJ;= zt(&JjKBnrenjzD`2e!}kef&%06-2Xsr4n6JLT%9S(^PgF;k{kxiLPlrPuUAz>_tD{ z&O#s)0t_gAp4W?JGbV7$O07wS=^!IvqeKIW2ReRhdk-{Ryeu2!EhDxvwty}Hz9k7Y zy!HN}z)|%rng%D~#DYd7eYF}9WI+(?1&?jFsL7P`B$V zISach2CW@fG&cDv)(3it?iz*Nq;he<@vxSD)FBbIqw(kTnxJ*uc4f{9gjqO}qO1!| zrKi7#PeC`wS%LH~H+4TfXUnWU6j21kMo8~K_=%+Zv!xAkG1*mYVxLK;g4omaF_l)x z(!o|`>D2x%rKT9WZ6O<>l#V^)00&4AKKGIDd}J!SJa+E(*h0Td<-KG}HPR${+OEfR z4W^e4VD1>jIFibB4jdae->saiG96Fs`}kXO()>CxC;e)k_nEu&;ZHlTXFN?+#ZH%r z{`q=2w(y0h|MSEV&6}Qz+X+0kH=nVvthKPW95?YE?~(%kZ0)#E;M3ai&%-XG(b0Xy zhHq0$0!fzl&OUYba9_J3k4mjGRg-s=ut+s_3&DR4ocYA~zKGqmY^(3~Wb=M>m(db9 zS!N^+yuNI@qSK!_9h#F*1fRUaI%^W@{Ob6r)%5bL?D`;0 z=E0}Y3l%F5#0>{YK1a$)2+ZR~`}-+D;XK%pKY4HWtHb20x5q6h`%T*uuXaNcQNdy2 zT@?aHdk)CyL_04TU{wNGEth@_!$()qFY~%8j4iOzH;f9=+bkT|Tl1sUU2@u-*y}vl z0CMdX~8vZVm&%`&=Bf?)`P@=;FXw+$-_)jX<+pC-KuLT z>DqLQcjyu)3gDgC^v~ywS_f;{ zZn=jAi9t2sqb?(TYYqcj&(mftKr$lLKQdL|;fn$P3)@5APR@qV%Xgzcurb+d61ycO zZWD~jj!^9}&!=H*kzOV&pDS%zTra9sarFQ>ZqNymX7??1J>h|sb(3U8TEhYxZ zjG7C9KN)AApcxA7KZNPjBZkW}U!1s@Ki z9gh**Kxqfazn5+&a!=8GouOH^*PbY+cfXoI`1I%c?mO_KnmhO=V{uRvD31gwW2K~C z4rEFCpD3bhLK*t;#}uYaq&MlMu3pBu8FKmH-#1u%nBzl9(EXIKeMEH4R20i41tpb+ z?#JAB6~AMGDAH-(J*}AVEFcLPCwx?F&)z*78@6X(hSX8ij2^2|2uFUg|DG~wBd4Si zcuGooq^oQEos#H%DJcn)-q_gtK58nK=L!h;3*locPoETAIqmPq)&1JiB-PPvV{)D1?fR=i z#>OArifja-5-9%z0y2CcOOn%kOfyG8l&^R6!ODCaB|2*pQSbxLk_7Tt{*58x{-U$)|llz{) z|KLz{*b24dk;Z3%u0uL%jMfJ$25t>#)I|>Ln%nGjepiJwzk0%4AGHWawH7&lgcz9J zg)VV`vrO8Fv>Zr1stJX7>NgTV#aK;Nmq$4VHqb`1IfdwIc6~w-2+Lo+4u#!`K1@i& zi0zAa$qoECKYvFa>L@gO{M%cAU334R&kfP3wP8?OmBAdxo|2GmuXY3 ztSP>1$}fn2z2g7&Pv%8chf{hZ6izaIxZhPYCM!Vc_$0;se)qR{{Hv+_l!v!*4xyyeoY?sLfVFNLQml|!qVY%@ zXrJ)G@eecAxE{fw=Sp3YS4`az|4RH!P;M4Ux+7?S^}*|L6^iYtPaoBWkrI1iH|7^Y ztDOr~1>P_4xuuinv@^j~G0M~^>wAUS&LupjcS{1XOU!%H^;5Kqgv0(3zmUU8U%knc zmccVTSj!)8T~r3)-5&H9tnrc2t{W^Kd~xoS(_^qdSE6+ZmH@@ZfqX0W5UC%lVYR=rf+Pa5q zR^u2`v1VyI%GCNob96|AclT0ossvI6+=7x{tv&vk?Ecx}^YROPj-`M6#DR5j z0GmhN*W>xSV{awmF>R%rN64e3tt`Dc<9*u_uxzmKJJ0*R8z<%TPM5)&RooiSGgc0vMplTC}pAPf+;@Rqd@)bx7vXAIlN zl)DtM=VgPIoF&B`?8xc~*O3)v29#p>wP#N~I_d{WnLRqOo0x%%LTYKFLLI4W@=)!` z@s$K6@%y4u(jQ~KJ+%>=D(f=Rfh121YaU!kah~v)=+m zLg>-TO=HfLDz@{<(~$oPyPDRt3&V-|9J%Po1?t6r4dBi*mlte7ukk;85uf(5%~pc%DdY#9h-;Bg%yJz!^30_Wi&*LWJN^VuS*0EVHxMxDa*RYR-I zIB~vq*uYseSq!F+Ih+u{iNZA7qksA^@FTOIH^W+TU|Yo5!9Pt;+MA{LV9(1K(YhoV zCzTQgsKnCB`oP|%A*S3mf*DHPCIbJv@%n5DC;F{eBgd>QCNRHZXiG$0nMl1n*ldi* zXk~ENlA<@{V`hwCRy^pbKg<(adnVDl^5ZloJcw=HB-2M=SVpt`32=kj4+$0J9s?zk zETQ&{+B^Qe3BBGqSq*dte-X=nuNJuNt}0b8|FCC4{TsIy@504xQ)_5GMF&yOj`hf7 zI;WRE=smEVbkC4yZdnV4*qPV8ahujk=B5n31~&2HD^jY}AlJeC&n}5n|NmAUZ3x); z3<}S~3s03H5jfDrS%`?!EtQiz|BlGPr`zogBV*SPZ`;`Jhw01+lJxTuvfj7>BhFHA zH4!G<1|)aVF6z)_tIjGRn}3$6MgE#imZ0Oo#H4jO%D>&&tV3nC$$$7c>FgC2Wv2+* zWUVROs#iFvMP?t|>I;y7o7EmRwYS{xR90`J5P+GAd_nQU{%P^>-IwRHRd4(`4t~BP z@To)LR*8o{UFW7!v#0Xw!Uv>jL@zfr(c4M8?UtaxXx#ZsuC+H_CdtHpiBM3hcRfoY zLV8&@qlTWeEctIt{h4F7^Omp z|EEH55jMU(lo{8N7jBW|8@)arDf6*r>Rb*olN)XCQ-Y~2$(rlV21^svIg6>cNWLJGaAxNaM@-K20W1k}|FWGTKyI6EcLjCD0#|snAXRLA% zaX3^yOKZqDFC2JQOw%P&+=)1YufS3(ix|~qOX-d|Vck&iVC+0?fL{KYQ#(;!kd0Vp zJURwxE9h^-v4*&0<1a(GntB?Ni0Ap6KkfggGXWvn>h9i%vY=**bS62rw33GGd>=cRByEp_ z-wtkRVTZCh8NJ-7bxSQVl{cP|+OUMCA592OHbLwVpmn&ggeeUMw8~veNp3}EPVL_y zVVIchyyWqki(b&uY;%TxI|VPyZF-~?27#+>NvXa<&==!|tT5l%n`c|qqw2I3z|gHb zpSA!uslAO4{x6=%)hNjf@nOYD`j_JNq8zhwR`OSi#iO3RC`G!c zli~C1OrH$lSiKL{x#pnvv|06W>k*-(O|xzs#nEDG5{*B$s z3i6a_FeZWZ$kM=M%#VdWON3!~^!0T~4fP1$$NVUK>jT#ZGK@Q>W|-M%JxufQL&e}X z9VK^m(K$$a5PBG5EAlg{v9m0k=9r%?^ zVe;5hD+;T@Wvl7UKysUuU7d%%ceB<$^l>}r2e;4>t%zWBU@$@ z6<{cktO4KdT6?@h-5y!^`Ilc(?~5WEwTWj4l4FP?D=5T593mNdy7{Pu5tAgkWHuIb z6u<-D6R=G({s8$&a2Yt@Be{oMkiXc73EK&+V1zE*9Mo@NT%(@tw{N-_4gbH=cy#8w z-zzK3%H!k!?_{XCb_N=)*Lg`=xYGEwTj8qQ#kP}+sz3n#5ggOfyUk&Qkr=QB zN&shNs4(11C*FWWB}5`@9;stOGZ07GIQQTfsIonsL~LTfj^*$Jm^M)gWszW!630J_ zbKz$Zfa^CO)*-ac9vEc55myF&Ul9580+>cgFi0rivd4S*Tg3OsA2&%-P7+1#zusZp z*F#HLn8kT*LOEW1+tjfC&YcI`Dozx5kQr=9y{h2IH5!1JbqIqRqGts7<_O)Z8lv7cR2R2@GdVhtV=rhvTCCqs?6&1g*5WpxWEeX1t(q|%B}cZDN081d&f zliBB?LWxJ4O_6yaXZ@v%yU$h1{?EKxhQNgdCh4VyL`uwB-MlM`m++Ya+(tu zwxFf>7NtY3V5714jjf=CihaA!p4g^k7_o_>Cr z9uQHDpo~Er^?vCxO$)e4j6070&_PmN4Aj{za)H1_Wk}Y#1TA#|tVf2YyP=;D$yy|z z4Jw95;%xy*i$y7Z^G@AWBOECsE$-Oc$nnB=*h80E*EKaIl6#*C*ocnknt!We*>U0j zd5?9vKFdIduGI2FR^syD&Bs=48)t)fQ>eEighO5TLv@#-+Sa#j=CYBU`Sxn zAXI!aB1WiPS*uU}+ncyw5TUULG0wpbF^#1Bc#qHP}ELDN8L7c{8+Y5X03fzEz_ZkO;Oy}w|dh- zCv?|e#5>|-O}-DoqgmHa^!jFUs+kM|6SB8vVVio|LPS2`@nJ^GGozPSFd-bB|H8OQ z%YnupuNnz1%rz1Y-bIb-a~991`90m|uh)NU-V4fTGp5gYUfzT(H)4;nIwD{9)9+@& zz+mqVH=xhBQB%kNKMS6gB%(uTl`5d4M+?aZBx1KVU|0?wQer!K*Y7Qs`=?5w$-^3> zzO5S%j@c+#klD;To1bWQ=+TrATZY8(D84~v8eEH_-p}%O79P+-@@>ci$B(5?Z&WHF zUXUAiisp*oxs{G+2_|n!Yg1Mdi`|{Yur*dfaC9NoK)VCjlQ!RLXA^M$;#Lg$f@2k`>o2n61o-0_IG6Q^td3{AO-$|`c!m@I_=(P%!_Ac(qL4-rQng*=_S*%L`uK*`H z@i&V>X<_rmi75_Mv$|OdvsF;nYzIDS3fxmIn@CzUlr-IjKgS$&JN9`xH#5vSc7~NJ zCr?Qy;M7R~cH6)r8|Ts0nd=K7@1v1R$UZ4atj;#YoJhI|!-t}tkO+ZVRg;ZqMoN|30Mn`v0GOaW+zH z4AoF~7e-o8rW8d+zZT-+*`+Jo3trTGv=aES61Du_7wQdViDHOoF$8sUOOQ98@j+Wf z8ofk@c(Avb^UMSfJwZ^ln-L_DCBn>4!>jk0`&}3E+GFlc?n$l;*9E|8yEFFuSmSo? zQwozS9mHjlz?N*DhhFWbJmF%J9{nP6VN?SCfxSdEYKFT1{;-z8h&2eURT{=K*J_oA zFsesoCzsg*E;*pOXlFt5W6X0#0qj61sYr7ptaPD@9sY?s)=4y)7~0=zD|{R-@#?+X zxIX5IREPQ-r-|~K8p7)QcUPden^;xHILg|MoxffY;)6S=w{bjxnGR;b22@@gM6=oU@R8H?)UJS=nQB0_AXSu(^OzkYAeu!5KeaoO|ejemWhO@7Zm`F6qifWYfD z<-V^We&PT1&MgrS+|GLZlHl;`UDaWCBP~&tZJ{zKGmu%cWm}{rDI-GmLlqlP$Mi_p zQh}f|-=__3Uu^{|({DXs7=8dZ!%XN^j|>MTfbsi4g)wZ&lgBm(Z9u%gWUC10&D1S^ zeLM-om_|KX1Q!510p4M7T|N6|M?Aj+j&|F2Z~`aWb~ucZnsA|m(l|vWfzsyyQ<)cT z?by*7GJY30U}{2EIuC0wVE&v?ae6J4onf~E(V77j1=9zpVX#U6P6zN=p<`>uCiQ$e*+5fVh{xlH#X1P1X-PVkuJE$kCrH z?z#UGxLr^juSV@BiHKAohkox*iuiFKmBm zFJ-%zkEHqyRzfafa9gONg#A3g2yvoB;sMNV-8vDhgJD?_<2|+3O-o9DsYl8~9j^?! zE==BN)-}R32fh}6iS^Ks!yI$HniP!=AXJE^e4xyZK4?8ON-E*&37mPPpboVSl36+v zgBK=bYjhs6zlm|vNb%J2X{D_H$dy;gATE6@sPp(x)LIB0dTp7m^o&lC0UCF8m+Epk zLA8kcf|rsP&MrTTBfPCa;srqH0{~nwcbNdERiHXw8a%G^8e~0r@gQ1UF32fxoE%|m z{VJE0TGC3Cm$wX%RFBCBZhe`%IfX4`>jvIm<>v12FE899B$VZvzGHy$!p=GLj^@A1 z^8~S+_0e|!eo1+<4^<{LxthrsSo8ySfGt&~t`!Ol)tQr2ZknF>ktj#=g0vsP1UJXr zBY~#g(tbD`Q_>0q|BeLL6n8wN@%j=MZ|-`4Xstc4{W9XO1byGrH2+*zw=A5+97P?DVAGY zyN9(+Qcpt1@!MlarHaNxD^;7`dn_x#bIo7P?cEnI;YggqV8KuQt9n2-A4bM6vQ0MdCht8k= z&=UmC;Xld^5-hUFRXcLD8gR%%sa%yG=hu;0wF(`_jAbJ1ybzTC`<#{d5`aG|{l}7$ zFgVKr*nxF15pNKuW84c6IABhEvxb%CO5RX3FHc8Q*l%SxlS!CpKAcza6uI5qzz(-e z`+WWJ$E37h>qZ0)S+p`bDKHWxj z#odxKF!e=WX9^a5G&qmeTz$QcASHO0a#@s|>B)XD_+a|j`n81%`jG`3)%HBFx`sz& z%k&CU6zN1$Ed;md@O=cxP4{0^zd(EN@du?@O9waf(#gR}5vm*E8XEDgfrkA6bNGS* zjgFe)G!RVETxgYjxaQvI68hiznj#?7iFGhr8e5*zZ={Fp4gf^?Svm$W6N3o674(l` zCtnW}-c}YEVYgCC(jMDpnwK~Uq286n=#Y1w^gjREsE-A6pL+VapIRKPA zIMBlmx#eNS;LmK4*<2O`+_=PRM95&JcCFbcLBOwFhBVtO!)gOAj=h>?n9kq;c8Kfs zGI$36&)E+8o3M~Ftw6B`2T;+jaH_5C$b45&xTT?si6fSy&Yx{3B50DhkWnM- ziO?>hfB-7898l;o1RMs908V^y_bOjCY|MW&`E*BocecOvG7E_}a^<%sLIyM}{)AUn zToxKUshX*E4c9W$1_kYzGZ{lv9)=V6IrJjMO8*mjtnVw*^oA@+;z>X~fjY}GQHC$y zD+%0E%xBy`qW(T?VX1++#Tu>(OO0ezHviw^QTzW{JRGk$z54Gy9yw4{k4mD-s?}_( zm(TqcA*~`v42^j$w8y`@A-+9pmsFUpm5|UHjS)@#a~MQPiDyvivWW)&)h7`mS>Z}z zI#Xp;)gkI2Gc)08@rabR32-$u3K{qOscUt0&(=40ObGn79Mt_!9^&y+)EC1*&R+RvtZL~9TI*EWi58jf-;+U%zPMqJ0tn|iuCF6eB@qTD zU%x2MV#1dCHs4ZMWjdzS@|fON*UtutTMz`wJ$j$=!Z}y{ABi32POntg2!nksM}f98;>(|M!>)VR&841cL!asY zIPB@WXzr--erUAnVcTk*c%whj_xFkhhh8Xz>yv6^R@rqidy_PuU1W1FXsP!JtM9TVoC;eL#N%CJ>Udl0x-*Kj8T$ za09w{#aBr|vfoOWPu*AWfys#TYnFpgE$Hb?2vAVj0w>Sk(QZjpi0z)5)J!2qM$ZDPt)1u(EU-VzIO2FR?p0eUBS zSJF(-8dvZ#fb&erQ)k7|)gIv*Igy~+dmxF}G$^OztoAK>747oy^rMV7TIU&>r|B0N z;kdK$TeZJIjMswcb-05Hj&%~~xmB*xT|10ChYxia30hG;BpLqf^Z_OU4tb>J;aBJM zG%o8&af+A0V?E3WkG=2p``)RzESn`u-^n{%U<>Q$IP(i-&)62jirozEV zijp_;Gv${1dOdRd5xjBSg%1g`KY8F9wCMqy0lHvm*S)*99Z89tDc8pNwHiIfM(9r_ z>DmrVRSh%5F78apYs(U9V*b4MIPz&*ib$c7i94e>(=`iSh zHCE-j7RFa!#j`hfn$I}neQv_&PgRs_o5KigTs+E;U7{ktDlLrAFCEG z&n4!@_bIQhud@E{F|5C{u&A9nwa=Y66=uIZltwmFZ>E)EDB9}}LWA!l z#G9CE5uRR@gJdDBvI0=jhsMNeZCFTh^%>mml#1qU6T+xV6gT&Q{Oprtf%YHrWQg7M zj8B5s21je;Tt8H}aU@?pGE|>>3Iut4@TU;CY_Kjyw-df_&Wl53Znw_yXmKB2*aRyn zbS6UFZ+fx<*KumADg)tmAzNuEKq_^iSP_dJjzu(aaFE$Nk(=&m>t#Mv_5@N+kmO!b z%X%xtlENtivUVw3uhEZq_Gzgs?koYUmqjNoY!kYT zJj`>Qp~snhDuo3kgRe2)gl*l}`&N?jmmb=u*A|&bsCYCkE?`5h`yuEPw2onI=X>qZ zY2&<++DYGaUf|!D9=%3B-MrG7tOz$&)zGp-9pvr1nv4vVF|H{=r(fJW5?lZmU+4tzo zDgMkcIoV>SoSl|7AuHia)mNOCM1t6sF$g+-L(U9zX2v$o4YG7(i%ywf$I6%q6`2w# zK{T@l4NYN?IPC4-mn@+AyLnvqK#LcsVjot+39VqYu2t?jlFq*p!juTv&~#EYygel# z-C6bv3sDmT2ouiIm?2udaT^fihSKnli&V-8h6)4S=Gjd*ZcXZir*a*o?am-H9_nst zWBNKHURGCEM18(9f0`lc)~%Gq-jc_`TD0HO%lk{+;@Y1sQ7wu&Qq`Uf`%JE!XZX~9 z)cDa1>z=F2yL^n@x74F5sH8s|-KdJ0lC~i~OkG%tgTF#>;E> z1VWa0k2%Yz834ZGl8>w(-rM|#dit{}`0svkDQ1JR=vQd;bB-N8;s*#Z^zyf`9$s2a zR;N874+KI_WLFFGpNgQ>cP8C`Ozu@*hS0FVF`(8rR3q=hZD3G@#lb9)v$p*z$;H+D z95);|eHSWuR^kgnJA%+QW*GRzT|z|_H1smJd}G?0$3r;HSX~RxZL{eKLc4v<)q6-F zYn-eTe|~convQ^38WM0O_w%r#5wx=@NpytRvAtLCcE3K$s5M$FTd0xa3K`Z~X(Izj zy9kx(bERnfb7G8v(}jy-!yRqbr3szZnD7}Ks?0`vMoK>$;4TRjO~%MIt>?ss@9Ps4 z9K@`s2K^5C$KK30(y zZy!kEzm6QfnJ~|XoCz;f@oal^wx}Z(F;M^NW{eoW12dH5T4Rh+{|ReA;g46{rkf2> zLE`!`qYX~exozAkU+y~$GC@tX9rdZ!gNaztSJ*9x>fpdBj6w411Y{c;z)C-}#KNFT z->VggmlqU=aAwsl|4E#oqx<9cQ>5WuX1uMr$LO@Q^lIFkj_c~D7pui zr(&8kO z*!KLJ;boZBFA{7c+$!+nru5pfvf<*KhS1&;Pekh93?JNf)xl8_-*!^#D^7Yaebk1? zt}V28vd2tG^nZOFy|utHldT5KuF6gX^WqGGSPvr!T0l^365+E~4MyVqKv2*JnG^&o zu4bpP{ce%_)+5YX>CW`s#?OcyzXXf9O7FUmBhB~g0h*bJ*ie`8z*9bTj6Yq2N`Bu{ zF0h<1e8SlPB$&tKq5||m4OVJpiRC^->%g*|t~YK;PrgS;npM8Br(81ow}La!1uv)7 z0#uWrjd{9+fE`Gu(I9Dy55_ku5VIXu5&i&@bZO5%kQ2gw?UW)}kX<$8y5a~Y!?vMn z%DYAe3T3~nwef7oU2r0GeX7D0PS(?vs0VSHvtI5|H#Qxv37m5xNN)Q-r%lMZc)mgRo_SxC@?jX z&>(PHwa~cKvKU;%7oJ*S+xn7W=O!~~YJaVelNp^Qmo(+a2C+?gi+IlgO`p^vOg%A~ z(DD&44i0FDvN*D~g=`jeYVKs}KT-YowXC#C*APNV?a;p-bVKqMN=tT6IiPzscspf7 zGpG2vljVT?gVW#dZb@8D|Rl3W9 zwnT@;+IL?2r2X|Rs-_o5MIVouiobH29%RNSy_tKOlRdtSN#bfMSeBo9KBRG3v|F(! zE+^VI@mJo@jyDLmfF03oqfGv;)`JY69~AGNjP9?#8=Ca|3)d2H0rVOOYC{K4VX2}O z0d4?GQ?tvehreiD0|fF0Qy|ASeIU&a4) zT1`&244k}G^Wx0GiDc|4k$_DpxIv+sl~|W%0I{d7+08>#II&w)+l7+nXG3_$mLb>W zIC_6Z-~A}O-(8BTxtH0AVHh20)@gr(@GVZ_H!;GtEN9ZaWq6Geu()?VaQ(LOH-bP# zjRAp44)nUL&(Y_Q?)EYJYxHFm^n&O7_niVyVeHnV4#u)tMH{0TQ`1`byCjBT_fyPw zDgpZf#EWpY2CK2-6wO3e7u~U0vPKMTdL6V`ty<}x(buE_AxJ)Z0)AMNI?ol8&aGO7 z`nvUj{D(4H!z-kzCFjXx>?-jSRe?zv_rk7H40deLSuP^`czkflo}NHJX+e@^G`5vP z<0U+UwVXW{eQ836C$UNlN+w-N2(Q@Yr0Lp+#@Tak=a|tUwsOhweMe2iIF}@r=CZLY zml?((x5?G!z#-ze*JR3+RO7JntkU`O$}#bp6uYHHFY51G0f`}3=3{>0O5xvYeK>A# zSH(3KMcM(=D^F)bYqOT{?lzn4@0v%4=CT#opj&S2D^KI%Oc< zR8I`LYyNBg3W#n;u)Z zm=@qr3}DjA*8g)-nG~Qb8Xn`9ArZk)rk;QY_%$5}90GePFnaUflQIyrJ^bmwS|51^ z8ZTz2|MdgMKF$QxRbx(hEWo`$15<14Dl|rcFLbMATK&4a9%HuaUQ)^v zrnu$qob_fku{9sAT7OaV*Tq!!24yLJ1NuQSpf>ma;#=5u0ty=_0fb=k$Q@~m8Vst5@Ex`-4Yo=sqCCh@69AO?&QX`e8ZX|xrb+r61s z)va8ot*Zzij#Fl9C+SwNn~P*gH8?1r&^JEQ-0>i!bfItYG z`JWBoD4SPXl-v++U~1SUAEX)lVa+Vg-@R2kOGzqcxJH?i5S^X_AS9G(uUHd?6_ST< z<}amxxjm`dPzh;w`bQkZGQOJ2eea_x$M9Hs&7nJ%$uh)C`9AZDzL97avSNL;KgYHS zRlE`M1TC-u2)b(^@?%RX`e%ATI%3B*giA3i6Cth`FOD*+cQd_yeXXdc?Vaw)FWR0& z_ASZ19w|d*9YSDe+nZXfFpCC3c9RjAy^-xp^^7|={$r1!r_xruWW10g*5M0KC*9@m zhLLF{e;tE4k)m|&lyf`S4RL==2ilObYM;G&i^%o=!szNEJfTo`$$AAGD@yHp&@L#` z8TtB4(-A@g97moK`4q!<`a$jKsll7*bJqF<2)4 z@L(0bph?Q-cOn*LN?q9)K1~}4<#q&Qj3@lEczHLvSOoQMmG$Dx5X+T;QC2EG7%@x; zVIwqo&%&+oUyU@!r7$M-c5JDj$&K1Ke>M8Kcz@mKc;;$jIPeRYBrU8xP^2E3+8B`s zHr|Sxyx-$G5VI!=p%?dii0<8B38Hsry=gM(RJ2Fcd#v~>f1+iMUC^DoOF~^aIiMzL8-@dkVTe2 zUD#Q(o@Zs`>h7wYnecEj%{wyhSLf%+f0Xo`PSS!i69<_r46sx13#ab5d9unH&`5XwQ*#PefDN0KsQ2elV9G2a-j^I@67;zf< zgu2Ah$eQ-XVEcUn7FZ{M!P*~^|t7rwmhV7eaEZ0(+x6AHp*soZcBP(VoI-Q+MVi_ zeg=sRA7Bd(4DJa8(#{*3FihZ*RJ3{m{rI$t-#N*vuwEm+YB_`4K{1%y|8R&b^^Lw; zpztL7iE551@<?~i#JAY^-t>0 z`NGr|*;1Y~HL@+anGdx^|HaSi3SE5}4zTz~`=T{RWFg&O_B^yRXDqfNZkJGVx_e2I zZd*oc4t9VC+W*n@8{29)a}>Vg)BV+pwhyzEXpSAfM-U0pw$*sFLPMstiW1~}Cd5!N z@a6Ms_+CP%1Tww1&=l_m8ywNi)9&3FKc#i;*lFbYY@~M1Fu6VSN8T%+p^6EkeA6qN zQi``~QgV|b@w=AK3KQEz80vd3ZF1pwfLf~An9O<0>p}%==xo3<#g1QG=?2S<;$EzR zy5Zz~fvgv8wPR3jO|r@6mFIeL;Q{}Y=GBT#=s3fC0%{R=4Cw}uFSEb&qF2MOeQGaE zdCRY@jmVST{5(;ns(l`Y-&yLtUK@ogOt0b^&EHqEnq8uoUgLZ1$jJPFPS+(V*@9nV`s;#iz8=d7 z(mF+_Tq)iJ=a>1F^x>*i_b?|E)*F`crNhwzR6<)Z1|+9Mu#x}%ym#~qse29E1S(d#ba@VPe#@dt6@dgt|>Ir;K<2lJnfhJy9%CjWCV z9lO*!H&{{(vB#h1(ju;|R~F@nZU!Tb>-E}L+7X-_{5X$dL3pM6(Q7{KQv65Ble7HD z!)12oQzzN|NJ53P22@@QCdLh8f{qM3>bX^WeBH8c`+T7ZB*_j7srtR5ppTmt)iodb zMcZu9A=WN0)I%;eSVg$rEYDm>nLgYnelmN*q>9ZXgduDL?%bi~E<3TN9I0aBUqVRG za>Hr4dtXlSE~IHS+k{+3L=W7m~E^vB^tSueZ`+1NdvH!%_$ z*ZG1f`J#XIN`yj7x`oMuV$0h!#TcAzFEby`-KNyv1(n2{w)8YQxQ;!Dd10jWF-nSd zd{Jr%YgAsjfSWR?K$ty>6OwyTvj0egtMz>8xFs1;1PE_^(T(%V>$VY{XTo|nRPFZ- z%`DVF+7nN&3SMZpP!?5JlGs4?7KiM7zy7@VQsn$`Nw)Cyue9*=c}z%rC4k}WZB(W> zTw87=H|mT*P+s#8I4$+h66SnpnUhgza)>T$K2J$O9`pejX~)nzZaoZ(0TFcAdv)PW zW)}T=ENj*1dJ|*wq1FiD?S^1J4;1}Y@0jpjyLMG;KM3$N4iO92mp zQ5N=hro+4X6-P^Sj}x^I&&0MtQh}695V)ANxoNGgYX2lElxRk95x1rNUg{DnmbOVJ zW??y$#TAdRqRJ*XVS$;lV8G=eR@Cs52qhWfKxUii8L|LOR*|383byAUIufllCYs`Q zWvo7$XL^1rWsv`T#@DSeNSpV?i3ax39QN`mMVdk^rF+7|+<;6cmWjkTVt6L zN;*B3A-v|9nIGT3=poTMsYP(-mtaSmO;gXsEaCmWAYZ8~g<4A}&f^vm51@&k3`Wxt z0{mZ>A^);Ca9PslOR&b9D0D5(Fr!s(@N*2}{WIMbdcXc0aOGi=hs}DK^Fe~ z_IXY9i$5nM7VQZfjEv^N-67pN1QHwCf$)`fI@G=W>ppqZ#`vAZ2<89mqDZ|7*{lNa z5u9mqPlY|nyM{LdE^tw>v`VTUY!o{EKBcTyl4f zdCA!Onz!9x|Bk_FOW=~Acj2fG>2&L^Le!1Z8M(AKtW`S4#fzuGb+zw?5!wn7p&z>iQ;J)re=o@lW8 z;%4iMf=kOtv}p7j_Z}$y@W<=^j9{EN-oI1y^=Xtz`PmEYKO_Fr`q7^Y%fiOx=-9#- z9Oh+O(G;e)yy*)p0;tCoPMUIr`rJA#jZ<{;5~g*w#X&LBVN~?Z?R4!yV0#OW!WV=M zTMe@QHGX+*l!*4=#_yB?j{w_{Y33r7_>u*E-ImDxSlgbWPq%!%AM@--WS4w>F1a6( zHQ__QR6@haXw9?cRqi6kmVGh)`vSDK{OvC+X)AKbXJL{Zzvk6_WaZEjC4XxbLbLj} zMG4FQ#;yz6Ib=dxvDA6~Y@U^f0{25FU%a~x<<8Xf$#i7Zvz+mN!XUc}ae_FYMLw9? zSiPQI4|v^UgoGkLSX84w2wZcbTwcSHV?ITA?RhlSztW6zEj`ebR!#m+e@|Vh`}>_A zX$eiTq>#9{Ld{lO??Y}%YA$fxTBRYgm{ZjZtvul<1to%)EiL)i4!spQGs=Q_c&H%$c;&t8Oz(wk1&pH)lPLhvsx1Ul6A{iT#&-`E_aDfL_8-p6smak(L zkNwb1tTsefiSFajN4mrbRJK}Of~zVsw8;2Gq)pH^aRfIcVW;$uj8HMPO*O8H8+ZWY zShdcq@y#tqX~w&tu6epnAHwq|h! z>ZsJ^Kd^8Pn~~l4=ML{&+Y0ph?;$(4&s@QKFUY!0WQ`T1sKL9>c%`H{_)}Zva0W`l z)kj0FdxEZAjL_OAP^_r8Jh|Uuk}3aKlq?co9KU?W?g%Gm7d~65U6aXHh8;RZYT*HK zOMid7kk`?-5u-Y#`S(+Gj|MkRLJ3sfxDs{n2Y(5`!I1Rfn_6YLp$^ktP*#yNVj%Z4i8oEty+2MzKcd z_e9$&MOA(oC;j1^;3;y}BBABPhJb8)E!6sZTNx`f-@Eh}2ug!ED(-N&&^sf^B*MPB zJYf7wBVY8hU9^a2Rp?N@zL;TvU+>Qe@2wGG>II|qqL%P+XBH0Mn~H#s+T*5lmxgp% z-_q81<8OAV#!Le**8YtIdrCtEf8?!&(PX17clz305XWiWFTUkp})eKkLRGf+U233ht`4}`b`PC=f_qBWo7mJPjd*BjX=c(;%FHN`-4 zIJZubt3AoCkoxbTOxK!3g7f1t(Q-tG#$$1m#c&tU;hhP*64$zXWS)OwFiPGb1Dk4n zGXx-6uSa17`NoRRh)?5Kk6b!v{=fl2h+USXpPQ1^5%KbWL!r`rc22mOhaq;I9b<$k z@XaDP1P<2a)2$7!<@@nB&baw-@Ia2v<%O|~cKgS2R6R({0ysa68B5-P$gO9F_VL1L zfh+((Mp{ZQb}7I2OfeB1Bg0Ai_fdEnAyP)VM7*Phn|hc6(HTx@^xQqNgb zIp`4dK1v*R_Y8^Nla1h-AMuec+s>-uCz&M~rR~cqJMl8x!YN0u+j$C8^&Lm_>oH0@ zM3s(1;5M?PeXCHiSMPl-Em|nKEX*CW$%C0zbU%JU;gLud-ybx)=g)b%Vs`5$gA+pG zoXBjEJYXh8_fpxPQN1!!|6boxs@?6L;KSa}XX$LGf05wD4nN9UPOKEjP5<;E<&AT5 z=a%``Vi_O0C*g|jFIWv8%9o)>SIHLM`#C(R)dj{FRT(YU{??g39sKa+DVh|gxgB_O z0heu2meQ`eRFDny6`!U_JcKww_a<>0-VcfvC3+8RDyqdoqp2bfJAcy`{VGSXQ_f7X z-_dk_CG2EcLJfD5pizA(r9Qwg$n^LFy9GK|D0^=@#IP=aR2TC_?HtPQX7&bN78v*@ z-BL1qn{Yymkne5Ko9hhW9`&mws6F~m3XkA-)Dej;tL686K_8S!!KuVsbMF7j#A@(L z(s=(~ZcU{@%ZrD|4<}GmydU(x+h|c#q=+-g#Hx3*q*@OLYW_Q|ysZ*?r#_w-BfL_h z3;F9`8mT)^!wXmBM>`s5ay7@pJ}z|W zxRY_d&Ftklp18Jj#yMZrbr;5JEYL0*(3P*8iTY7+~E?zY?T z-4*f;`)0I1FLRZK&{Psk59>*HV~tpIJvx|po*{K+^w#3{0}{ba0In1!fjGTk`t%eO z2(?327rgZmjtnKpUO)fGKc2H{wBHEek2UyA!;0^~SS^G&p(zd^-aR3tHhX4ttE)j_ z%31^jPJgA|u7(LMdyB1cU0?&DIod|ndB3gm^;~fDR6q=%HfN+!0?@*_`R=`GSB9py z;b3-#xN<|Tsh)*ObgOo@E8Kah?L+r4Dun_-eqOC&Cl1tK-bd?oXRSn7!dH?*z}XH| z5%2qoiv*qf^)YWelbtCQRMc+k6y`W*qgivQ>mk83KNn_W3Pb9rSu^4ae?3qKC?GGZ zqF2LWaO%;oFS;c?Z6oOv(cAQdrZlWq=vlZSnruIfxi`z*2Gr50F{Ve}T`I09WdvS!nwp~Mne%EsD&a*%} z5ZYx=0Dh)~u1(1P&@Rx|`q?8x#NsZo!Qic+Z78V$Z0zzY&CrS>i&b=-&^}#Bu3##1 zQf>uBm5Ic>B>I5Rd0!CxRMkI`5W-m%$F;KdQ?s_uLZ^gKEhzVRVOK(oGLD)VO#nS% zR^@GU%#4ND-86gh27Av1;^>0srqV~Je|62V6V=~`=mSEb^&!$?kjbl>x71#f)hmA0 z1PU;7^43*aU%tuAfR6GN_=;2Ht|;~Qi5+n9o+gGFiaSGUuHTI`IWb030TxfREnsU9 zzxD5|^KSkRNI#509mWvE0HoYsPHw)52Hg*vV~I6<3Rf*Su^a%Sz&c+oF@%({!8c{_ zTP|2sap+0{*Z?1tB@wwPLjaBR755Ln79t`3a=q!pQRoNt6DT_(8^YxDgLSUR-Yrku zontuvrSz*kKhE@SYO==Q&j^IPES~{H;2*xs97q!~fL9U~8W2mnN;C5O9(B;v_#%n-mBl@x1#E z*}nmxizaHQiA7Pb6yGg39(sAaaCe)8>dp659rsETpVUAhhOdu&xMb@ui`7cPQfKR8 zBqYF0+v#PpvPH%5#~)i=P4Z*cE-qf`f@)#PuL>75k3yNzfIvAf8mgNUVxTXjBuVuE zz@T_fMP|*&h9S`2iA#@PV zA&#vaBy#K(NA~J>_x(K{{n4L|+kL;^*Y$cmpU|HgPv&z3a6V01n5!)X*zS+J`LAd= zvUj?g#l~#x*Mv%*O|0S7x(epY4?_d5S_#zld_P0g?++>^swveXi2}u*7DI{i5H@7z zML+G|gKg*Vi{*#mM?RakE7MZIkXo1TEgo#sfk=TsnIj9&-ZGres>dtgpB9< zW1c)&(qq}tC14nN&}Nrlt%?BtPB;^p4$%*wl;MDq_A2}RRPwD$8B7_I6yAFIX*&9c z$wNOR4-XI73xjmC2y?wlzI2W@h3R($dCtrU*_b@50W(4D;4J}9vtj*eHg-s5s0Vxb z{wZZYTMB9-xMZZ9qU68^M7^G)_?SSs%%44y@cSJmKDw@sx%Ji&17j|-PC+S+ zd!+(*lh-vX$0~N>*0Msz0kc=`V5R<~pHhbQ13fd{+|#EiGQthzvEE zh`+=g?VTN=`?>6pJBUyd1L`%;*O#>;RBIRY;c-RSi~dWvN*Et^;!OPK9{FFBqe(3j zBOKQ+R7_h$S+iED*8afbMboLDS)uPd3X4EBYhhZPjOPz313zlaAH)Stbjfp{bHE2p zjzIjZB@tlxkqO!Xv6^Jm;v@YMVpdC;3hmz|Ht`WB~kG5QWtOe_69zt7R$|kbKX2Z)lcTy$K;{DDmS`ykT~(slZZS}uyrh|q+HJc<=A0U z@u1H87VP5_+dE>zhR1Rc!eDp#J0Si0pn1PBp8dXPgANGyE$v~w!+IS^vJ~E)7WBC# znp}t>;4aDBmS&G70oGIsshU^j^p0%-ShhZe2Il4H2wFq<7v!?LArH` zx85S#Sv1Mlh$7A+GG8XR(qzfxeKr`z#QQzRJ6B5m>q@vinC@L;Y#ffD69<*0g$y8nnm0-K?cAeK7uyVQU4H;*efrA zoqFmGQ!@RW^OfO)5`M##$ZnT0t&r8;)*Ww(8&<6k97YWG9XeVwatCmuM&@;(F1H4r zXO&=bQi_+;bkgTCxblW~wuPb=WnSGLK;qXf#?H#}U*A2Iv~sN6(R@OcfQo)M^-_ik zib;q)d;8_3*zaR(Mj*?;k;%NvuvfToiNHn(V~K6yhY2Q2gBIDbhMsO*LwQ#5FOIC4 zN^yI-F(Rjdq{chA{qirai@BCh6rY{Pb{=XjHbs903)u4Jse#f$-Y*vg_f~=+YF-5@ zy8sT&{mSL(PaADGm$qXV!;@URK86(uP+@CfuY%d1R0{PkoqjY2&|-$0+UBLq5aT*0 z{n5RG#Vj=x*5_?JoTpm(3D9hn;D=qRj&^j&52$+a&B^DwZzy%kJL>U+xe3?-aeFEe z%TsKqwF1zIv%Z4J60>O$&%b5c(Gr0Q>TcJ`lLd6>9tsQ_Z63?2PB)Q z(>>uqA_`|RK&H38ZnhNq35D8Gq~Jf)Eu0E&eN{{x>hRJgeXGH*D`Xe(t@DxW;H>#8 z#nI?K9&-MzuDtM9W8V~#I<`DX#P}Iu*QEu@sj#q{cb|K?2%^$Qb%68o+xb(2W?Fzu(5Wrel}_^!mdaR^Lw-)Qw~{0hr&caDp*7-M=JJQq*LPSBr@A zC93v}UCBm+Lk6^mtp!%Y8Ch@wnjQO94t2v1hr%?md$-ycfLdgO2oQ~PQ&}pIcxK#) z6k#jF$=C0gM;(e297u}MrluW(d8a7 zW1>!{49=tp{}$j*KH`TJNbW5V4^Z-LYkr983Kx3o?*g=9;}4H;kt^-u1`gOQVG31Ali`@}qg0Lhc^W60_pCKGd$YXpajpt?Nwi>a}L4?$$kFv}dj4@ik>{7Jm@4Gp_x_U@pm0 zUUi!h!pbd1B3`Wk!Y-6Md2r}S-s}3xUbpUC+nl0SWLy^?DkaSwfEypMc6PA$A~s1J=;}XNXaD1K2VlM0^1q+#nC7_U`j0q-=UyM z=87V#FO}kV6+ay;PVD?UPkFq#)3?ys!Ht+l##>uQ)L8);MH8>UHgj+h5~<$6m|L8cw#vq5;H^m~!zhRMphgFC^=W7WRvG=7-UolH$H>+ zI$lAnvEo^2CCUsbz@|04j$BXx5NpsD4bLt6ut_{v`3PS>-n^~L=f2HoQ9ubG9w_Zs zcmZCNVcwM=*Fk7}(J)cKz+g~Mx!?M%KCR)uG%U3yM*j;yjnE!yBPrCA_@Vtl+Q;+S z)ewM9@O{Ifc|VZXF<;#QQ&8$cN7~Tuu$XX7?2XgL3^tVO4edO{Fu#L+B6kEqYKHDQ z45Ib~%04iWW;*un(n2P7uQt~xK+1fmp{V;zk|K_)b^VK+S6794y!u7R%eJ~UG$Dii zwg8_xAem5=!6XYHw@V$(+FI8AuIf&t{%Hp&Q#j0)fKAX#iF;nU-6J~`%@T$^bikVv zX~s~On$K?1{oGXLo{+Eq%h&MteqpCqa~({^Jy_9WalLMfBI=wSVVrLC#&_0T7yOq( zXzM``k8Ta6U8Px7Kc(6+1;u26wV}GE39h<~WU6|3rsOek zfs9)F_XzL+@c?w=qiDEah|27~5CGC6;E?4=DDMJ@7-XD)8rTL9Z|Xzv`}*JzePf{? zS`J4a7(O4edXHxzxm;HL1m9gT*|9_%k<9daM+`Aar|0VAq;_}jb48QVZEMneTA3m9 zjg@gmamU%eB_iXN7up$;6-@s)4O)$OP2f3N|JU0KO6t6fkPWU@Odg+*_QpF1q;CSe z><7ehIl1QIqBVdH|5z4*O2Ucxkj*3mf(0=WFYuGv)Nzx2l2(t{%a;dF6FyPOV>{Rr zAg|V<+`Qk$9F}`3JZFO0$E3h>b?}LH6#=9@|4}(odOZINiH&lsSSAjMtn~L+g<9__ zwVgErS;sa2SW@&91>oZD#s@wTT%UO`&e9?k6CIZmazl-~k|C#o{zHPiGo5vfy1X6} zK1(VRK`$y|i#`XC*1gCS&p7xaS35 zs;-GUxB*Us58sjAs6%Z&1mSg#3)?ScvcDV3EPs#D>&HJrn0EWndK9G7LwSHx^vL(- zbityI<`O?lvIr(CE3vmLL2KmifylN&qa>7RIoFBr1nmx}@&xa=5YHvJH(dJ1%?*G2 zE{oQd(Q8vkiS{mIQbmG8rp{u|P%mtS0suPwTBPgqXYMDw3Xhs&`N%}~boMNROmsWl zCrY)UY(0o$tN3(gac6N?evQWt549%}ygL}AXw%DU@9;X3uNEOZHD|1^ZyRb(P)L^{ z+rL^eDXImYbMchDCSTyLF3-Cf?4xDv8mg(O6`1igj z^u1`j!D*42&~cCe9;nGg`UK_XvmBU8I;sJ0%Q*O>A*A3splx^#yO&e;;Z5|vC$ZP* zmHLezgd%JPR?Buqq6{c)TP&|BsLaGk#Y(XKOXZ4=8sEV69nrU1}Bpu4Zrz7Irp#jd?E z9A{|BDHmfQ`;!5Mr!T1Q$eynjcdwLPv+?@@{sXDOerpWVXnzy@8Iqd7Bu|B%Jt`Ag{4fm-Z%^qndDyVR)Ro>&hJT*;Jk)rF-VJd}U8YLqw z#61*h!Jv#pJiD}o#DH&iv&xbpkyAg07XlGOM*37pZ z15mtA@=WGQjH)hn=OUV>?Pi>V=Ao8*i>V@Kcqu#$SSa+|ay2n`D$X@H&L~k-vf# zviL;9g>ju0@p9xV`t#4f=5In#iZdQR2Zc)q4BFhK-A^w7EHoY49W#^W8fC=!MckNw z5g*LZ+0g0jzcW~|_MRNsQ%X0NMPb5n)0L3Smuc8d-u6iZ_^!%mx-6rFAHO{SrM=ml z7JfZ2?x`C+#$KM&c9RcUwZ~wr$-et3ITT8X4NQ$@`qA{ZvG-I2Y+hnN0i-_+KXNDX&NI5mJ!xC=YYs5xUXq zC$Ax^>d&TI155aOi4Q#QR5!*sy%Gc-4y!`a4l^Xk6$KEQHu}Z=^hUsJ9X&#s;Rx!i zY+v;Au%(QKM0n9`K7*^N=|q`GXr#vQ%M5 z1mRp>-DqsXedZ@q~GOOmnRvHm2&D_Yf)5a%(4|HXKQhJbH#_E-Vd4_14zYf|@Lh0mT6D zYIxd1Fg+`zR>wUh{LxUdLC5jZ`=Vg?llKvCf%B-f!Iwc^PZ4`T7|4=!3b)zZ6evAw zagqqwWv+dOtG@L^Qa7+zo?mJ+St=Gy94CpT&=7<6X%NQlM2WX-#0Nvy ziB!i81{W{4RQA`$^&eEDk~tRLoD0xu^kYPp_~AM{$GF+YW#QpLFts31k_Gmcu)+WfzqG1=YN>U{9iKp z14^qUT`ypHI8JOrMEAY=eG611Go`Sj5bi11g*lx9;r$()I`!Y&LUc~zbB=kpW=0C#oVxm%2&Vq| ztx5fQcVBe~0c`_r#PAGe4n7&nMZ_h&!$v`&-k6-6WcZmk0d zoQi;8!pYfApX*0!QL}D+OvB69G_2?t;HGQj8Wgh$f0+Ys0!o&So!8IKAv}4w1Z~6q zEXS6uhVni;jB8N0hwkKJ11qFH5$-=`*TQTSxtws@4&y-ji_ku$E63YmY#On;fm%Gy zH%OwgfteC*G8OPn7#Be!fx^JHN$$ zJg7)H52%fhhi+$C3e}kP7+c^;G+TX4c{t37UJ#m<5{C>{&Eqc~ae3+S17j8x4-@Y&;Zu-4rs7UIR&VbN%tY|*O&%I-yfM(EwZU&maWLL>uV zOy}4}A@Ocb9EMmmNKGAhsU%7Y(;PowBXMpM+Z+oXzKS*;xVZy(X(hH2+9MmkDZ|4$ z4LD6KDY;BUj>PY%zdBKi_-zw@sD7n^h>@AKk5X(qFo1&p-Vo0N*OUVwWqvziY^>O~ z0Do0^>4EwD)1PvP3Y`=C%uc-g{)_TQL9)-%OKwLM1JNJzMb;6Tg4qbRq-ipKM==*5 zov$SHf$(Gafxt;#d^5J*d+6;WaTwS-1BeNQrKA58I74vwY#ibwV6@@WZH75o3LXGI z|5T9i&-$BtXl`Mfov5Grwdqr{{3m8+n#GKn=R?^@@(CCpZ;ENZ*J{LgWeFSGy zp}vsb0UZ$(Of24dk^Hqk+hAs;^T@rI>Pb_X%&+r3PJB}e4Ty5we9&g?2-M`auifP( zrag2ixE8=vpy350_lBHz1Wsp6|LKa5^%x4Wbt+C{|m zNl5kvj%_p4JCvsuJ`Ni>X*FSJwuit{fY@UtJJ(pPS6-lED$!CDyJI%fyu2$Q$>q$qdt+jz676l7YSteX&mW*3no7J3{I}L$W3?^= zkK@wjC3V~8F#M!(UWdb3$#ki+9iuz1QdZ{0I<4ZV4h0oYc}~_51e+%Z4|+&X`$pjr zGCaCX zD7x&LU@(9}Mtbz~m;j+4(}sdE_4+lcmu6_L-?xo*+N*hC+ELJseN%{la}!NJs^hn{ zmoRC($0%DD&JNAhCtB|l@fYG|$vvB;cR;&nnfLJyOPaZrqvqB7eGlyoz#Vs!hjWri zGLCvecAkmjI$AsqO~IsbJj%B1n~&sBNwnb|&_>~_5Ub9S;sp42)JqKfWe*W2KbpPz zI~i~WU;bo!a$wL^{}c+(Xg5;({uR0xOv;N59&=i>X)GU#Ndk8AlUEEd+EB{Ee@N>` zKW~VTW@e)RRm+U(88L0uVCx94LnGhkm*H}yCrupTSSz~@*a8L>@L31`AfE*@8z|T< zTdY^y>U3S)a^+-r9B`(VU$u5*hTK}XYl!N`T>BiJ28c)uzoGzcft6zul92472#}CA zfW7D66R%$*MoAx`ZNRs2WQlLr4t(t|a=|8TGif@PJ16JvH2|K$fi+b54o}R#u&L{H z@d;x{*jaWPUbxQoU_zIh8_9Sc{Z4X5UP`>t<}L)yBm(&1n9dwFm&rClTimdoAn;fyQ#yX%QDWP|0~Ln zd*eEug&)TI#%Tcct3z5zFi#r#<^4MEKXi)`QK;?37{i#vPaj>*PydDX1NS*Aheky^ zvzSO90gCxTJ))&I7|s9vTUCann|Y}gMxhgsQ8t7}i)XhTt*OpDV~lh~JCAhX;eqHI z-#zwQCn7lX&o|cCT3+49FP;y+c*l=VObA5e(-}1k+UT^w)K}+|o>&1N^sn1@ktpxq zA(t;NnXw=04}VrNqUZPD1q50TFIs&yZm`7=uZ=8t?A>d$2haz%LSE;yug~!NV`_aP z+W`%4PTb_hH5a5*0{C1XgE{@R-gZ6y=(B!0&TOebc!%HC%0@rawnZtUmhBZtHSHI~ zV?*5pLxT>DsQ=ZD^?At%yrzc$9F4<+pr1iTm_3F;V$)tj_G*xZE{2tZ52lG(se>0{ zV{`R>DW9-SN=(sqmI+r69pMTJJW5J8$Dq0-VkK2vQBJfeFUm)D<+f97rKJf&dOLC{ zA)vF@nGK(9jEQB4qVG@spm*E1r-g4qTH+C1wh%h@s9C?d_yswKXJ1dqfFFD~C2Ezl zZS%6{=AU6m#)Yo`zn>IZ^_AFqzeV5mVV!8tIF}_2Fn|(~X$Zv8_5E7oSsO8ti%ss^ zDknScyA8-MTNfdknAi#WY#e^0&wB-E0>o$}#DXtDtF!ZW{eh2A{>6I;SW$7Z}F*B>v3JNa~$!`V#Y_UtQb+1#apW1Fb` z7Ym+Y0A&#w+{ysS^?H;E5NRn-#-rEzx*19Dd-3-Cuuu3H_;+B2J@$O(+a;hjTZCf9 zeZBvLS`<-cFZ17JwN0=#9A}=AL~DG8Hvl-*dxH7V5^icUi*Z*O`5nb!%Ab2GfQRO} z%27c~PksXfmwp4YZw7f>K$A_2O_6>Ajn2a+;T)UTI4V{FK1{8R(ZI1@n(A8*O3@^<$3~dSJ||E-uxY;WR}1i3Lot`P}zExky53RgI3ezGANOFri1^NN7%rc~; z+9@^2>FpYC1rP;*waIP-?)pSr9T|4xI;6;@6R@vXFNw`bm!W0hVlsg=WRBHOmHOFf z8+VQ4CXRD(xSTnYxH@;WWeUm~Lp<2Qi!`9K)NyqSD8t=laAX7u!q|PY8nc(Tl7-Z} z(k71lc9*!ek|Da+fe2yVv)<=e~6{Nu!Z)FwEc>V!JL)t63+Q14}$`{VB`&GqVB+jp6ip zze8n_(%QH{Q<0M;UIeNYI_}EBrBlzZ;EBKY}<91MEa)7)B5UuJCaK9?3W32ak5kHm19cfC+ z(59PwX!`A&Fsx(;`?6H($-H->phkeY;&r^ScpPE!PIdn0+Z>e{;YO;7%RW){JVI

    rXkdM%HTCG)nF0=jW@)3Gjz(eNFv*dZ>>2Wgou0&zt_9(8$n3gBc zJTT-Kvd+7YVMVWN9^}Po_x!Oo{+3@g;ZkH}uK^wyV9zBV8n5WjkI&0BKHiWlD1}*y zyOqzX2**6sZhk;PDnYiVLNBfpXq>{=T^&tcP0Uc)rSwui&*X6p;Vw}m1`&V1Kv-+$ zz5ij!TjV_ZBGS0(<_@oT1p^NwIISyd&G7O1)Y>0c5^-@+n2-K%5982`I&XG&`GQhg zc~m~DPA0y|_hJ@nID6dgo$6tyrilTm#lT<67h%PaSTTC~6uoqXnqUxQ3g>ebK^UL| z?#4|FHG0)J4Mp! z?Says>#qAH9>5rakI%6XiRylwrvb#1*Vpwi-&!)@k2t=Sf+1uG)PuUtH>pj)_c|T` zT1`(i%QD#q{R4Bok0zBWASGTSwO{1)w4K~6_fdHN%cTs0| z0@>6|bII zMOuov)%(pzKgj{5eE(Bgx8SQ_QyZ*3w#7Uc;Li}uIgfAxCgpu|G9hgDye6_BOe$=tz;xvi$SeF z2s#3FQNwj!1+NbzBfg^4C!7*3aX$(1m^f^y@pP$HZNR*~O8H zB}-Bj5U@sUya}E>uta7wRho^H{bLD-#Dqu$f&a58m21cG3}le^R0DLBI4NMuL}WpU zVK?spOFyt+If@-1K>)Mt+#i-e|5CKbbxHEgA@}FFuTg=etO3`g{RpXr2Mi<7?oIvO zjp8)6^esQvPg!Lxk)^s;6R+s%;Qx(ahA-tujm{|G_F=gVntwl8PiV`O7&kA;Zp+O- z@eOQwKg>XKoi>}=3|3r*E4t&wox=wG_v>>$eSpbN?isOgJwNbaEL^FKvb?|m?hXC6 zoZIG@(?v8;*udO{Iwbg>?Q$2wB^Zdf3pwJTI}gmLvKN2Jjt(P3S*3;lkLI@5^f1AC zl6TBBc#~v$UlzfNM6C&bzFGI5(2RVb-bI_V{()k`OCW=p9AiKUTt+gzTY>%w)pU3j zN@nw*ItKqH%RT6T1K|jSm4j zM;gjjuU@xVr8>VJTx5RaM#~koI!OUvzTO?xF={?C)YB6E9{_RlHD7#(U<>mV@9k?@ zoJ|TmE`QSf^@2b2g)VSF)cLHBxgknQ;7%rE)Eaw5@ZSHa$T^=<_`375i}uy&#)K|L ztp;9CBfB{HF$|lg665$%d@Ad#%B@ySvn5%|)%v#^mw#^RY+QUNiQ>CBpbwVWSBnsz zVV+s-t$TtPNm3K5&^a5-@q8-W%K@#M8}sTJRhXF4@5YWc_I}z?V^97{%5W`c#E)B= z2*J50RRtC6`Ap7Bp0O34D}o0`Y2NqTap4dA&S|N>P|Kr8=6T-klOPE&QeKY;D_n`(Q zCz*326RWY&z5ycS)@y{5)-QcSCP{bCkB+}#N;+T0jn2;`wuYKPybcMxX7*9BVEzG$!*036Pa&>OK-S8~|BpS-Oxeni4fBq1Miw9h$M78^l(8}^*Mt09e$@j7`Zy+t3?0cV+Gh`NfD5>VouvOcAT}AsqcQ;ug+u=(dvJRA z_LAtKn56Ru;j)3Dq`M>dS8AwCg=?LPl?yU58cWupCWyY7ettDWK1R422>JZkm)R%u z4-5(g68@tiDH#)cOk_cP$!T!ErA=YV$s)h02qp5?BZ#X}Iym;WKhwBeV$9|h1i18H z9Kb)|*QhGziGNR7Pez^pjzKkPhHhltZ#S>;Hl8)+%bzVP@%Dz~!0tlSl`F@>P;Cv1 zrRR*Z#(*U5vX4{nB!OUHiA~gfGRe))T+rQeks(=9jiMl`Jb-MKoGg$y!L$qHNT$w&erkYcDddc0M}2f35X>iTHPUj=pwOjAO;t)JC}MJOP27?0geW8c1Pmdt zyNYvEZEP9georgGCZZ&w-*r=w_gyj$n}*-cK|!5G3(Jd@uDRi$-})f*R1}Wi^e6_X zPnWd*M|v=6UN9V=Nk!sZ!{LKcj(pCE6M_->M zSQMv^+?GnFd&`n_gg140T|vUcu|$Hoz8nm@*V`iO^mtQB&9vHCFYGr``}+DG>kefo zJRR9rTT)R9CZ6zJN4qHr0$@wjcd0G=&Cc=Hp|@x+?tKe(8lAWAo~M@7;4MyHzS?%U zbCVEU%0qx>luz@3I{V_E;;E`%788-c|!pvimhPr6HFsu&tNreT81<5``B`OkL=$e<-Kmsc~%$m zik^JJ*B+2+cf14w0wm7ZC&g?abU3hp<~NQc2z|4s%3u+T=-it3tkAR^3>>`IZPNXhfoQ*l+z9-)7OI*WiC|A_kjIkIl=J^f07QzX<2dU^cFAYJk|fBt49?VKvr2f7-q zg$Ye@rH+DTIku?704%Z@U+4<#H=d#HxU!w<&}r>dX{>SFCBJy7xA?qW@0W>FQrAu= z=Nt4Z&yHIy(ETBaX9RJ?GZFHi)KEW7c85o(3`GWUXT1QRv zk6nkXlmAWsZNq{wW~nJ%^|%EgPzI8Pn(obhF|5tJjF!~K27nk=uG8Pn`tct#P#FG5 z!!j6UCRC*A+%Ft*-_>-19BqOh-@QdE_9$;~r-a&)($Tvbu9+I%UXt-jPF^p)YMQCJ zP||yNH>NT&xpHZePemjmKApE@m#k=MzGsmmgtXSnrP2|4GllB+qQ9p!uWLXd7Ww%G za3$;ch`j}p9$r_{7#BEoQn|e17x$Yt98!3@L~`L*m&0t!J_G%;*~*JqUCQlEsM=13 zld|x;lXBzP(sgzWx6y>T<`0q9M_2$WzPikbSF3ob(q>%zh8h^c+`6?eGQ@u72dg9y zyln+{=!_OmPM=Ek1_}6c|25)vtn8%T{)^B>h|I%6hu(uw5+9#V%5LLveOif-ZbI>|>22c{0TdH{PLwfoA`oYurTTeu=0N|u;8kcEx9s*AUH*+(j;cXDG!2?P%Sg+UB@bR7Yfc;UkMWEBj&*OhXSquIZbtw89* z-B(?`#HRNDh5cz&0pbCJ77!X2^AEQ-M-;)*UQkgp##kNLP;m_a_DD^%}t z%2-{@PLJ+CtM@mOz2}tNL-fH*ZDQi8D&+)S8ccza7s)(Puh;bs<>WxA&%=jdOh3kh zT?dOO*&Yz(evNvAcqNGc)>Q2dzu)9vv+dAz6(1^YeMOf2Y%ZEbCb$c~eaA|iIxa+4 zN~N~8D=~oES6vQyC~y3Yo+CnEt$&SMj@FucnTJ<~O6w^3{@-go`fd9Au3W_L#fDIA z8XfgyxX!-b{3sb)%TwWw;=7<%$BWMAq!7N{?dLZZ^PT(xN*DFKEvH)m-*HW-X=ci= zbN)QN#(??60@QvpH6z5>?9~K+kyZFn+w~^7=cMz{Yek)KiK;R``Q&@L{L-JSGlr*|4Oo17Non*-K2*at1v;45DoYC1IZ zxK{Q26mLWrJfvV0>X@L+HEx+j^QZ^e44Ib1vABBcs^sebfk%AT0^({YdVWiXN@OJ| zHG6e?vcbj{aNm?aU_!IAqamvmnkoi2Qx|GNHr->A=7%Xt zSB~bj&q>0h5Y`+BYx^4^nMTB*X+Zf0NW>KRVbg%DbHo^M#!VCBt@T63oJu8LPfalm z6pUS6_t!i1L9#8Vf&i@lrY7= z0Ta6PWJCF?9s{IFhMS<*4rt&3qV-UcIP8bDBghmYDfSKwF`Yo>bFLP}?o^vkDJ%+4 zny4opWYD=RFR{UUqum_e-Cl8m36{VXO-y98G0}lQgjp*k4bH`d)L77BEC5B8fIl(h zU|32I+gwJ;(j^Lk=?N__l)cd_2XIRH&2A|aEa7Pbf?qhNrO;a$BeC!QlisDG?VI`V zCMS3CjY#DxvWg=_Pj>H)b)QgI0w*G>RnM0+tdp3O7p-v?>mv2^x$~B96dZA0Tla45 zvkwD;aDShYJN`|F8!7J9LC;Pnn}McWYP3P{P3+oEWa2&!)wvNRQYb6e+}v228~fZo zFFpjzAuHFZ;j^gR*!fI5AD%v{*&?e@4@*FCHs6zd*WO`TO8GSC0iT_myM~2i;*1Wg zT>!4XDe^c;cH-_3dakAHzm=w5`)fnr(X_IR@6Fl^MI)m}Xw-jVF)v{$x)o-7hqg6^ z@`DrB!7vmdaDao0*5i8>q~`AEeN4r=iu*>5HlAFsX9GIi0%Oy|0G^=aIzyXVP)t zkY9~oy-qm$Ud7W|EdaOq6Cam#S1+lG7)LJqxbd8wFI?lBTT`MOMz!N@gy=DEO$qmzrwpSE#K^MdabV?nvFhUZQiNh=-p7wGd268#k=t=DDrz)*#0Z0%i%is z_aIx0sNduH)|BLbv=x#jhW8UQpV*4H-SBf>lAR!Kb5>=_%#$65RPJU4s_no2kssRb zYX;9_nn-nEy+khk_OGL5A0E~A_J=jk5Md{Zc;J9-LpZ~{J#nJe5(KFd7?_9rZ ziI}E`icHI^Roly7Y#XZUm_H2HrAofhXsBM3?c3DC8a{hi0yCrxh)0Q5z2DJ{4`{DV z3-<$1kW@jvJCOmF`z zG}4`8-c|)vH?;IyTJlr~1olw4tgd!q*R+pFi|^mN*#$N+@7@na#Rmgo4Yo8m?W`(! zl$k#jj)6x__ zE0ey+J7xHe{T$wj_-UxmQc6BZDcvbA_!-ihFOMEGZumau$u$0bb}mu=>GOxv$DmIf z+`q>EsFYb3^tBF%msxr)x>`#9#zegKdR|=m`)Q#*!|GQn4wTDi(SQsRT>5@I0CD5R zL1>aEs6|j!c8D@vj;}!PyYPU#?^8+BN+j0s8$fQ;2Hb8Mk!1`fyozwWJrBy&#Pwfc zj?bZAw=D4NupRx5xfxT+FQD39i907@Mns&f#kU2yF0GqQRYHs(wRkJy^8dEbD`Z1h zC3RO^)AogJuviRxx>WXE%FgD69vO}Jg@SP@I7i~T8SIaZ?SYl`DpsdiU?E7(J=zeOnB z#xA)YU8*d>!Xi=h3VKOPaWTm{BKssvL#4JF4HZSl8j274Q0TKZHb zV$)F}p&dnD(UX*ITuXb;+-AAP$Fo|!+r-~|kW9hX7R z!=YC_LVy2e7J>aBc-(o6e_BAPm{hTK#a3I+C^++}VVWYWxr`D(1&{SwZnqX-S>k{^ zliLp+02@KySm>14oVo5jiN*JF0qJ}(VA_@MWiorP2M{Ns_3^xwpi&ExPt0Xg#H>Nv zl8VSfE3@U-F`iv_4os(6u0kNHb8;c<>%0q!H%^zk3<3%vZWjarvq3{N}nAX*S9)v)E$$El)V~f zx-Oc>tVMoF!I;iM^j zN{6V})=3N3Ne}mH6a(%;v9uaacFoUs@3`IxyK$hkL#qYYo%c(W%R7#V^6lagiMk!< zmQLr%Sf6n$&KrJ_7yW^2s79jdQ7vwpaFn($ew`cPA8gQf@tY5MpuLh3sl?zJj5PomP zmL;YmlYI5RMv0%LbG1?`MUrnHZIFU!c`OSx{J%54Z=IOSO7-r|ylyp5LG~dl#wy4t z%c^cvp$lYX{D(!es%$rqt_Ho7_;2lYJ<$i=9wDgnkP5tQe;;o>+Q3Che7pE~G&xD9 zF1y)U>{O3GP2>aM!Tb$aExN9by*n72NbwbIvM?-xut4{38mrx(UHD8fuO}ZiMyT6y z=1!>1qVjv86YpsUQj)H{LusCMQDchNw;5=Q1SzVPK(qU5%Bq?6+o=NSoG=1r8#Z)B z2<{v2jk-rgloa9R9G{}GCFTz{zryGn-6nn|Y}YQFC}q|$s62xk^+Dc_{L0Yyk>P4s zEYn};*17j*T~z!rI^NC>6&jS%A%C=Xc90sI_e7-H!;oG=Oa8i$x*ev)zdgUo;dc9p zWO{JL;#1>02m;lZ={>V7I6w=11Z<-0q@S`ru~yZIY)?Y|2Lpa8TFAF~`y+T}{8>v? zgYM;p9O=GT>Kx_XgE;HS1M`8pB-OE%?@R(khQ6bJsY-$zZ{X6N{CAh(ao)AkhyPVF z*`^Nu;Z&GRITYj77&pw45r=_9%vUgy)_}G{QrSxLfLj5d-ScJ&kqJRueV_0vNawaB zY=r;}{3R>i%gGNopdCPH!>KmjoA#)pKC9oF-ljLM>VP#xcJoo>#fr1GL02(eShvzM zm+E}XZG3o07et-2=#({W)9G`EU7lDCX34=9tCX8y*#A&-IJ|=Dj2_9y34hBX0WqA4lgM&G!4Z z@ozV!HnC?=HDc5rwP#VZMGvf4lANrL!3ihND0zC9{!r@!LdgMcdcnU0IoC(Fb{?7NlFVDw(4x(&( z;maT%FP?2Tr1`%n^$9i1U`$4#rFyu>4GJ^z+!(Xh%wz5c=d1=yZEh^UAfsud{rIt< zJ5`NLSi#>)BzOTgxTEI$-y7rNTEle8FU7ttP77}XL&UmCt%JNM>%0F8N?fD95y;mR z^8D$Y*A_jm;!n|%GcIXh?D-R>z&aIK9kq(oyqN3dCK-)!dnfSX)Mc0OlI z*Hv=cXiUE`t@DqS>d-@>%g-va>SA15DLB>Xe)ObSl)IWkxi2CmV>F zVKYWuCBfpU)Aoub*VJ+2r?3=iz=AwwiW>LOg4Y8Cp<8CP89?5=Dg65>!f7SIX=Q0b z3+1XHKly9nj{e*j#=6^;3esu5qdHW;tyR!(pZcT|R`E;eR5a><82^N3WOpYPwzH`{ zHf;-tN9aV)6oNm&_)7I&wp?}zoP1?hha<|mO1Ob!l z04|NY7)sLoOP%seyD!QVJ} zpqspEve50w>{?gBI?hoL)_K$uVD}!WA`ie8OIM$_qIxev5?8^{JOBSkztCm-lODQE z%`4E`pUo>}kstT&Uav|1SJvsBK?(5?va;N~1W(6uo2M(Z@pAH7!a#V_^7!*ev*DM| zwE^txg15-O6Drs7wOAcmX(yNk_pnCO+p)Mnyy!@JzK{k=0C-Bh8&qzh@v8@vn^A87 z77eg!rK+(*81&6%0snzv?H*E((*i}aExxTt=Ts4}O&oCN){xRO2gJQBY(bnU!3xZrE_aQRtNjX(JGdE@6DxX;l9}V6b+hC%{2kicEekNSBBy@Gtp~{lO;2B3?DlMe^ z3q3wp>C(VU7IznLcTDtP5fKu33WNF|t#b-Kw6xavtOoFBFSaw7J@xL+@ZeL(16Ctn z>*rg9s6}!}JYARWy#zPHJOz;$GQ12w7gUp311D}VgEz!Q>Wl#LWGcY>+T^LR0B|F| zyziyE>fA3#s9Bp`Eo10w$#Vq--7oTXjy{guckoY1sY$SNsnZE_P%u?g$`8-gd7uFD_Uso1d(e!795=p|_R}+o z^*)AL=PrrQ3qeCPQGti_A6Ct-ijA!-|EyKqIYzAgnFdriKV9gM$PVkaLDC31HJe#+ z_t7!aupQ@9;Ut9&JlqIAM4$2_!GM@rBupzeCJDW*>K~`aNh~XWk9vF@{j;e(Go_JU zVeYoap{dO3Q;A991iik0Bqj>_U0rq`wjlIwbd(i4Xk7F>tRp&uyIA$d)@qZov@-d zdh2Rsa8=QXU~gx)HdvLx+#Ve7Fg{`=jwM>p03)I=`363he(1C^ z^QgsF-r%bPv))w!n8OARNL=Z;jS^zgvwtyin?xv3K}afgspt$#g>_zO zoYJWO+fhU*%a2W!ic1D2*#%(XMm-w>PF~AGW?(x%^Oy{UU2e3FPp&SmIRTB((E)7P zhw9r8TLimfYIMBo?1utep{bFIi9Qz)008l)@p#=FnFTj_wn2kxCt*7;HjxjJL~-`l z3ndmqbpZDv*+71F7-i9#D%Jl2oqPa)nFxKb$K5Dk7GGqErg%=46IN}u@GZdW-YW55 zdRke!JGRluKAtH*h)5{_s04C-n@w+@QJZw&GsPQqVbWs%lwf-ZX8$>PThb2zcKD|R zycKuAB9u+pxe?;|74_d3Gf)goVl-C#YvI&VvUsIc!b=>+7J2P)<_RME(`N4`Y zdGFlXc~1tR|7JHM1b^?}2k9gzczL?X@~o822NHZ%&PrczL-*a$ZSaKOMFeoS^W^0v z5QEJ&G+We@&EvIm6$=uX)Tj0+;VEbjpWB^fJ2tsNw=~(Mb#kNdLt?^WIX|nc_#ax* zZmcY|I@OeawHUv&*|FKx>LB8NGxoIh)6fZBQEB;iZPbPG#N<%^4+N^?8$C>I+Opo9 zvWSE#9dgr#hIV#j7b0RAfXi}#I*vn%Jm&L89}A6{L;kkV1BTs7d$x>tabM-ISp~41-qO#@+lSBrAj$ZP zb3tsa`#B4|gkftlG{!b<$vZgeJBo{O=k$;iI_@k#-F0!qwOYV(C4_pQtGw;>huS(_ zjW3SvPRJm`S1ZY>>rnn6KdVc_favsOdrUd7L^VWxx8ra-eZ;&NNSR2DQ>A=m=izm8 zn+j=K2Sh;u`_^y?y{7ICGKzrz?b+aSHuFNTPcUqtd8b0C6nyR+n7{vJG;8lxN3wpg zlw~CD;-%CHqv7Iw;{agT!t4Z%S$g+|mW3XWttW4n>R6i(7*-0bf6I&_AE7d~`@B=6 zude~1&9}d&^?HJa zMPPa|F`KN`$MT?$YIAmjv((aadu;*-pEHE`pyu^Zm-{sOq6x~#FC6qJZ-Mbm?xK>o zRsXkObxd0da}q_;hcg7{LM*-3l-g}|g01PI_}v?=bo%k3T{by-YI1!{U#@*-swk7K z(?2dJHlSXn1bcA_!$vfj+dYUfj`9cN+5(yc7bUR%pm!-Py?|J1i9NWx6Vk;q4T>BFi`mOu(-1{A}^LPX$jQg&Rw`RxGFYDo*EU<-< zW(SY8fEJxbb5u&iBOrV8j8WsZL^i$W6ic{s*80&f{8WN!Wis!yatC)9z=rH|t#PtvIz;wd2Gk2V4=b2l)$pP93!RR#wPgbyDa zi-){k{s|V6Saf{+%rWY3i%iM(l%q<4^s}3Q@;c^1k&HTVQF7UhSc;a6@jF4W6wE2n z^3k=0pX)gB?J^6C(aekd!3CCKA3F4Jw zur>fuVsUApWcrkNCkKi9j+J*B1I}Z6!W^fK#A1pTs;ziG0_z2P6$^Tb$1y_=1#$}9 zTtPTMpEfvk0%Yw<~yRP#y14}^3`%s7x)ft3r ztpk2a2Pkk1n)8bd0B5}hoR{S~#r)Bd^g|B5!pDJz5n^+Ob-(IB>S}TQ{|Q}E^siiL z?%1?B*ICA>q-TD78ltzWJo?;Bvrmkrm|VA~uG3aH?kmxvJZVUOv{i7OtPoAU##CA{ zJ(c*!vPU3pFkxyo==wjxvJCx7E2&~@4|IEH4kVxPXu$aWHT2Ja_DzV;xbAHTW-rGr zb6b+F3)E`8dFh+URpRo5hx>W&g;7cg4E`-$Rvo*C1;4S?Y+FvykJ1=^dttsvdLGdZ zHfxG|Jh;yDaMH_^>@dL@NYJ`iB~rA0C$idAn8FJ(+5Dv@!x!=eW~u{HS@NV^pR!IB zQXl${IJJl$XV3BGVYr8>YCEYM5_Hx{$i$4S=6=~|R_dt6jA&PzTgSk5vYFJ{Nm5|& z7!aI|cck08mkNg|=>FSS)*Y#Z`uQ}Q_vblFzI;IBO*GQhMe4?lYlr7avRkEQA1-kX zy>bni{4BJHO0ZrkxYQric2eMW*tz0B@3G{iT%4bTCJAB6;{g+qn)?&p(eCpVynPBt9JyZw?o8=Rasm~} zr6GJT6t(H9q z@m!Zho1J8?ik=I)5e^tD)l8zV5Nb-W zm|s+!B-Vpi6aZeO&RRV{z8XS;EuyZ`Ly=C+euP!X)shcwdBK65n0Ci#5`+UP@JhMX z9FdV`E^XjIB?S00itIr`QHkL{V&=>^pae-=F7wTn;9VVRAz2{TXU@H9Z5`YB1Pq31 z*tzl)*)%5Q8paJfA|od|t7_)5%YBw^M&HZ57Co&g%X znW7p};g-La(j6-M`l-13eLBv8Zld-e95#DL7pErbn}BhlbLGp1aVID(Is4DoR?h+^ zzaPmo5N-fWbl@}Is+QtY54)EHe7f}2Sh`wuvRq-3-s^XMFPT?T$#0^S%Frq2E75J6 zi>cBvoK3U$*)AQ9fwnP^m>}jlID@o^<&XHG2|Ky{uQaD~H+9CQ-ML_SsX*3CL+zYB zpJmaIfqJJ&*B_AQ3_pWHcJSq>cF$GT;18{nP3cSFbR<#l)hNqx8;UVyVhqz}WTXaC z$O9JUAzZ>9Yr>?GZ!b5`n63hOJX8n}<0kYQY&HvOe>iRAF1)P{Rf!PjyGi^qJS=K-YuBFHf5w% zkmJ;r7;CtGTrbh#@9l3eQu)4u1ryR=%5~9$HtLJF?b0n(H(Y96C$P0_$|xr$Hf|_b z_ddR8P6)jhA7i6cA*us9t^Z%}pjzk5)2|;q$7vC16xE5;kaPjt9pY$M=Px-(Hcu>S zm&<}NSgB%b!xrwv2Q{pVn<~xGD+r+uS#{rT3^~JzD{XKN&wk#F=wqKbqp`{Lw={w5T?{w3!<`|cgH7<8WS*j%sVBOqwwTIDm_0VIyqq56;zB+z z;j1w+px|UVO_G7?r?BUE#bV9MPlKO9p0&n5Y#1(a!H~7fp?RruQi*ZB zzNoBRr}xZIqeQE*rjTQ@*oZmIyUeV{yN6n0A}93lJH!#mLY*+U6F^q>r$&c}QQc_+ zU~lh#dJyK9LB*}{YChUDv4@)*&)qob4lTo!zD5g|bnoB}SP7Yx1P1qVew8kij8N($g&+PRmN$t-g(#F?ox{6W#g_t2(C3>rew!ap3GPT1tL*L#e zF8KOMU>wVsAxsGv8LgJ#6()H&xLE7N=enOf3FgutvVt6no^@_nYw%i0J&R*!)%2jo zIJDb(V!=UHsa7Xhrka8y=&!BrB|fv+CBqMO8)$0nMna3k3MOfBoDj$#^#!lbpeiz~ zR+?!G;gqHpJn|}HPmnl)N`Uu?riW(RzDZ2Fa)F|IWB|h!FSAyQ6x9F@vmt|TP#FZH z5d&*jO!cLO7(4@i)YD+62c?6LEy@Lnit2jDRn5I+yg48}RXFvI!bEvj-DQ4Plv6LH zGSa>AZn7f}OQ>Xs*MEEb)>39yg1LvJ;LaDgj><;yldD6ls4r5hX_fQfw~FgT$A_L7 zS5=2C9MqXR#NU!~%qO%$L&uag+x<{u55oe>X?!5)f1-unKG&TZu=#GH-+dE!rI2&3 zk1Dn=fz7@Ti!p{U;6>FMIvyg7f9(3GzI&qBwDzdvP$u4gM*$42!lsKnXh{Xs71LTJ zJOC6u>KEAm2j>tS@0_KD&Pg*>%Lv#RR0>lfENI?VpG)}d1c0X3ishSRU6%rjR=Pop z5`G%j9jxEZA1Z>6rok^A7DPuuoG-V*%5f&IQ^Q{vZVEhqSVcv7|M`?%KC*y!$E30& zj2};xTqu2 zPhl}Jh7Bp#m<6&^GBI!5Jlxiy4ER~`&UwwN(zj_dZ zzW)3^i|s}q;YESM1CU?YfwSf5I~?uW{hGecW8d!ai`nj0CEg>B7`+4)O?6>Z%AmC! zr`B9ACB1U8`0=C_L7zG7FQJ#|lN9p?S%9tcx?!pXzXo=PGvX*-@kmz%YkSU4x-72w zlckXm&9#pEiIi89_}7IKXAGJr&zkc({!NPj-Ncqyh67O>r^XZz#7psey0!aLrAVXT za@^)Eiyo8l{V%>9FcGAiVf!r&l)@{N9nG|&%XmfT4Qum}i-EC4^i}qi!{3izjApdo z=6tB+|5DL^-8w6J7Ud})fMe0nCa2lhA&A2m>X_YwyD>NLkz@8kilgn0&2smV+7-dyqJ`GXd^52ZBY}{yx%lWwpZ60HDjOAxvJ$bD&3g8%fu7fb9*U zFPh$B2fHx-NsJrRy!!A+{wcGHss_NCc+~eFRUOB*2FLcdr~C4u6kG0j{l9W`>01J5 z0^c#ktOh;!Jn{GAc4PD}t(HLSUO&N#&whPz^k#KC_tJS(_eNO6{^64&7V4e*m6tj@ zcQ7NS9WM)nRO;lEaQ2{D@}$~3Xnx@6uC>hlW*JX`*? zTN4xK>L>^AvWq9o(0sU~smPa!hpHh1cW27)fBw4-oAEZXoq90?CR4NUWAAB4X}6_> z)VaFZ;cbAw?I}$&lkDxP#ZRzi^&8GC#b$|gG(YN2LiC_*f3;|Jvu|yyPDa8LBey_brah|?#qilhsYjPep^Al$6;JAEJXX=)4O-|B;D zd01bleu;4jM>~$FV-mH$Hp}qtSMmpjsaerlmN)7_>r6%c%ZD+V2vr!A{!dD$2#+T? zD#_;&&$=PY_H~kv=d(uVXa~+~Z8E*(YSnM)S=;T_{{ZrDj zKK|_Fw^{!r{%(Unti0s!!O?1>+z_91a4dj)veX71iql|x(T&tl`nbOU)NkiX0g%93 zNwaf86YXV)laYWsw9`>NmVy`Wg^zX1M&>yG5?mGak$-wO@vIUyF-NbHag*(Z!}H56 z=SB_wUBg{|v4_pLbGQ*QqnQv1xCP%U)Z|rvX*p$`HF=c4S^~83doMri7H9eq)iWum zJkTh6ks|%0)>n2tzd(hV-HW1eZf%m#y!HstGWko=wtvY9TS6bpV4Z)V@VRVQg2F57 z36#LHeqQ+1K0A8|6@2dQOzFiZSUfNQxMM$OfB&fvbf@df>he94gUAlr8coz2Er3Qn z-~lnuWr%twl4ZirY4WineTU0(j#Wq&z^6OU-f0Ah2w2(raRg%n(Oct@{@+zepA(eck6U$z zN0TPsF**G(U&I%$)=z<~je=F+8Dx<=;d)h?$@F@;9Zj-tFfEv4wf>|a1w;uS3s*(} zu%;XDoCU^N)LKRllFNQ8_e32qASk1QCta?seAZKGTmoZAFILj0Lo@ujP4^-^2_)47 za}hcoK~>pgA!Iv?efgCsizZ6uvzn`Ha&61@)w^fUN60Xve=3ONb`kYjwwfJw`L#;K zT*4PUnxs;i(`bX3k=)4Gr8G_H0Ghu`cd)iDY{?T!+l`KO&ks9t>|C}K39EY3HM?h@ zkSZCE2r|_GBz*vu!As89wBf<(?UWz{v zR8yNmP``FBRro6vfVIN$Iv)GQ!*eU}o=%!>Ly6OZCm<;ED{CcA@1qdR@W4~YFE2o2 zG6E~HPoS0IH{QxIAaZ`d5w6ZGTmnRo?yjBf4w1-pol>0FuJzt9jjjMUc$@$9a0u>J znq=Cw&x%~v&40*CK4TRRIfF6s(NxRcvzVGT89Pd$-?`BwU3>T^d!kUePx?d9j!O#9 zB`RTIH(D9}ti({GEiS>D+dz|c7S$#D_Hd;iQSu1Z^^Fb56@?3pAcr0-e4LYHi{W)! zV`SOSOF*I#&zL5h-;dkO(x0QHG9M_Uz{ZHjdv-52z?QG(6?h+<8`6DN;3D#6pteWz zM{+>{_+wNdVE0y-P6V=ofISqPm#KUtm5Q?f1P75br5+~k3R)O+$9e}ebKpe>0M|Tj z|7@vwvV9~La@S`LISDJFC_m=Se(F6oMGGkYty^56D{Dj>d)RboDafm9C` zgh!1Ly>ITlO1P6U_Xr~$MEWXmC^0=Mzd>?!7Kp^W)%w@`H{1?#H`LN=j2p{x=683R@9^?4mJhzxy9~jvF zw(eL{A6;mAm~_uuMCKi5)TdOB_hqb0T3vBY8L`JcyzAQzF&S3x$nkeM$#=M@%e`8z z+_vj-jh+z{&610{L~dTd%80TC8-?BS$QL2|Liy^hVy*IUqX)3D!^bkiiE=;z@HM)S zi5ReF>l7x}0l&`;wiIEh`#t%Vra*9@$6e!79ricat;TW4$rzF8cbq*(J1y2vkpz{F*j9fo>2N4;^M||lwnJ=2 zpiO-tQHJu_0+s%Nv{r_0)4o(}ItvxQY=;ltC_YZDgA_kiY?|+pDj3OO=7*i~Oy<`o z%EEQMd89eV&$^UUU`I1$PmNqEgYD>xH~7fg;)`;a6YU>IS$J;0FGlOI=bN~eW$E{X z@0-AWQ;CyX{y4zrz}mW*$^BA)`0hMHwVyIWFh&SMR_GP!oK}}1iN3AB%`LsWuK4oS z{AtI$h}h8iSB*bby5b!p7hvg4cumpIK@U}$1zzO%dhBnNf?h5HbKLmMOYcIz#E!M z4n|tYS9;1_DZM>~NB;FEV2igvSgOcF3Vbm)2e05%sVyah{BdEjm;JkhRMD~#2CjP} z)B+Z7-^PNTt($yQ>)ixffGwwWG*Pi4@3lF8!M|iI{Cxa#JR_d&)ok4{Z+6#J!-))EzMkCZJsNosk+MAnX zWdsisTIyMZy^_!VQ*;kV2aW0w0v1q+tJIQzY_l`UnbIZiM<32g`*=Huvn}@VGHA@FbE@nil z!RPt3}^?VFWdMJ%WW5}xyaG+Y0 z!Q=-{`N@y>ckk$+M}&aE_-qW!^fOahAaW+YD$7CP?%>|=qXf;NiNAZ-5d6t4VhW3L z$d2qr^ZbL5)q+MvZ0h&U65za1RZ1rAT!kpliD*n;!k$`&6sYc#g*dL19^I;R>GsP@ z_-D!mHPb|eVqce~)Rn@Wo@k?9Pv9InHs)z8&$Y+>vue#?ckS45;zp@-g$M@EL6KETn7}QMQf$|sYn|M%( z8Z&4#HF@ZLyJavpgJl{Ajow?g3zlcZ|q}JQ(&fQBh>k5 zm-RT&-mnVpO#KsackNrh^u`Bswc0ajQ&n(j@U{;x(N`>La_8qK(sAGL@EBHadMp zHb()lT>SZ-sd>DKQ&IZX@%n=?WCs!374egOm=LKM+y+}H9kD>6k=AC@ zMHbbJIPpX_C!%!VwJaIowk$9}X?nbTFQku~HA&&zcx)meu)`%~obdpU!*BllZ{hV$ zLo7(kml~t9JeuwNi`t{3HrMKMotNC@;tH%v2DxIj<_OZ=gLc6XlDMGguJCQys2nos z)(rIgL?h^B20A`epv%D^=y$c&R`LI?*boSMZ*44QF8g9*p29fl^!ht+A&*iZ6{#TZ z8L(MiGNmyCDrAEPhh;jD%mys#SdpHN`g~A+EmS(iDbT=RpZ1X?_DA6q(UkK!_nzt5 zJhiOD^> z=MXOZlip=Mwak8;+Guuav?+C?R+lIR(^5(IZUIqYqPhFkoeizn|M_nxMuhM9f>%X3J_smPe27)HT^i zAIg1Iu~a48I}huMArkSZ*6ql~jQl_fKqrvTXr8K}&{p&JSuqGVJKb2A`1B}m&m5(H zojVa-l`$dYG&b~S=Q>*uXP;VuHOC9XKG+|P@m`GYMMrhn5q<4x)b5uXk8z~`gp~3> zbLMOLt#e#O)RMTK2SCg^B>5eukn+D8tw0|Y`p-Q?#3fMX^#BV4invSVf3 zDA^qGqD2Zq`+H1uNLquzd->^t^u#(ViR%ej%T3N_f}b=iY7O*GO3^y&2B`Fiwvn{1 z(J$pJvw=Y@rUQLGqfw@o(f3B74l5bWafzK$KQpZiJkqRs30|WGueEWno=;&;Ud2eK zoQTLi2H`(0#N>R6Yy*1Rt5S|d$$LqwLqz9#$`?|4bsglr961!e7iM>VP4vt+v6Jf4 z$KMLleBKhr$+63O>dL^!W=CyHuEgsWXx3{hMg`XKaw-sVYWSLxWS8pQv~{W8^d18VAR8f&X8-Ms??$d~kUNBjtT9kj?|)G2Kn< z;=EOvR8f#a7oTvtB3V)PGHm+IG5ZQXY*~w|ulWoAqUXu?dwDy{fmVx29=R|NQY7>Q zGU`vTNB7ys&l|r9*s)&8{Ic$CT2oq0 zG+=YRY!!CSaN4N?i^us z6Qna~GwqX*CTma80lX<6SX9w%{b;2KRX3&4b^A<1inw~PC4jTU^sI2HwghlkO5k_D z$jqiZ7GX*Ep|lliu|V&zcYHo8B6Dj0d`CvjPgUE1ij0m;eX9)$l&g$_rl_J!iEUIh z@BMw|NFkT27^Rk_#vZ&>d{co0*!|#_&%mGMNE2UcdCo+PtzoZEoX+WBU5N;N&rLfS znK$v=ht7Tx{N&T01rthv3kGq^PwC|S&l-RJq}macIOE#c4X@q1aOYfqGn@C9mCtBgLL8PLs|W!-aOE`YDv|bh+WgJY5)TC1h&l%;NCBWICUFx zKQsL;*US(ycEhRJltut$YC)-Kl2bKTXNuj9lukM|8@u`a38Z|V*z61}Cx>2q$HoWf zv2@OK0xg*+AZIU&=|#U;hlq^@vsq(tk2Ck5;MGTEXB&a~VURtWPSed!=k=&D~miZk^v00H=B@!=T> z@i>%ig>1Gk?-NT)ZUi!{B<3!6lq%=%k{Cv5IB7pHm`{KF)k=-QKIuMcJW8jjEkHk- zdzdb_NhD)iMxl>}=6F{tj>P~smMN3rC>Z|pJop`yM5gd4y)e@^ zkhM>LRQbiaPuv7i&oS4A@bTnh0{70Y&J=(Jc|lkcBP~9^{Lxc?mnL_lKeKsb()L=B zu&6KtdsAO9sxvSa%iK$?Zdf>y+~u=CP6HJO&6_c+EJb4Y~3LxVSr0XB@b*_A76`9m9|gg_o#Ypq11GLB?NB z@PYF^pAaY40>Shf0e5hiBw;?NsCVbIZcL=kCbTltOfV|6qUv2)7TbTpHHHS*@7%jux%sxrEsMkECPsQ(=tr$@kik}p;@#2zvM({&qb)73{T z8A$*FHz8pe^py}}9=liipvr8Y@vW31_4!ns^wj&pH4< z?yvQBt3Sp41I7fk_7M-91Fa2}LoxY~4LP=2>aK-k%2PM+&YLwRi|@%&wL5S<=H`tu zT?N*yM`rU3@6aZn@~}_3xQH`AZw8u`*6i=p7kcm?qJr7;q1C@2tjQ28$Jrgg>pb4= zt4YftGfnN_^^(tWd4`+))+fN_)hA@(=G3qmrmFK)kg>1y;>9}Er@C#pK^`C@Zz$am zFnKuJv@Kwq5JPsBcxXuY-yJwN?@anr4hf1`wJmaC*1DN5jQcD@a@NB_q#eG5A{ zVjS1`7=ws@#2D9s;`_oMe_vY@r5&c#RhETId&Y3qp7J8di5|cYSlPQ+@zsC1x2uKP zHAVHw{CMd^^IbKaWWkKp_x_sKsd?%v51%ZNk@of%4d!DSc)5|Z_Hh=z=WG!ia)DVi z>>=-i^{4_u!5Uz-5l8LUlYbsk7A9*3oJ1^k^R^{qP0vt3hHzHNLJ!g-vipha312P~ zl`?qC&ty722$G4nrhMaNuED+Hq`2wS>~hc_=e``KJK>I^<-E+^EYLnl3zJ$ajycm( z2i`CHFg@v{4}8-SR^M0ii1_nJ{w?#-Yc=%u9}w0gNafr6^3LGIk+)Voo3 z74rV7mfvt{x5bcLaN`F}xg+`_EgJikCM7hy#S{CtE@S|7YQ!Et4so2mUH4h`%8fBh zk3aCU;4`JRCQxvK-oU;NLaPHu`I7GT(XwLP^HYu;M!}M*iNA&0jsEn32csg4~UKZ!v#!7O(q)oKT=eaLQA7G;tUe@3i zljsB2Ns{}Os?@DDW?AK6o@_^!D3y2-pSZq?#0-FGZ+CZu$3hvkJy5IG);7+>+M$Av zx%2^qGxqLpe3AutneBC~i83sjd~#Js627|fDb$%7$YZ{3h$g%4c!+J-(m`bM-@cx~ zAh>*WDIvyUTw~q8%D)jUz%O;h#{RIwxN9wn;JTZy@qs_sU+F55F@Vu~TWk>M=)XTM z@6q~NT%OjK6@3lc+RVVTV2hz%Q3h@t_}{M4jV5X!35JKogN>p!QElYLrl}Ojj${fd zNTrL5TeYkxo$sDz)9V&aJYetEjX(IWLvm((Kcvc9C`_g4T=kamLEN?s*eAg*GoGQzf3 zNrvqD%ZzI$>6*DcshY;xa{)j|0X(C|X%^O8^j?rTe7y=TCBglfrs!umH0>GSc-JJ)r9g7S2om?eqc#3m$k~e?VF1 zaa$Xb%4v0`+7#!EaM$eUN^put_L;%;&Tk|i-AlZ+;0HvUEgi+Togyd#{DjJ0jz+MB z5UD#}*bs$KT=B+H0Q%ZB3c~!L$_;7XhrD9XA23cYJqPPQ4$pj6W#=4 zK>H*hZWCf$Nu+@r?C(Cv^gW*0R z`nAi0)Q9H!gKp1Jt4T1^6SjpHWAPJ*@&m;==l2rbfnFL2oh8qgg0A^>9pTOd5pzX8 za$~uOt5Ge*r~(e?+t02!urwJ2Xp2AvKwQx-wD37mI!IV(Zg^Y z|9n(0?LP&VaxQKO7X>F%sGZQ#*0HURNN_!IoJ>n7cyN^Lt0jB1-`Iy~Bi zfhz*H`Pl4!;CrD&-0U_CA)vz=^_PPgQ+bQ<*Sy2S6VN4$YFhrCFj?MSmIH#y&H{Cj zmrJ0djCb}{f1Ifns$Ust3%bu zmfLT@5eFSMoN;u)aSyos{Mb+mn@xeurm3aCA`81_!T};objKq=Ze>=OU*Kx4IqC)s z@S@NoB$6tf^@0K`Gr_BS@(KObbsS!JAl?D}oYy)nJk!QR#V}CenRWDS}pQ9`noi>oW(X+RI`ip)<&*nXfy@YV0+hV_BJWH z(5w^@QS5{8w&@$5z;9B`NQ;-b0`gd5)VG_YU z)TA`(0nUF+X(3WnF6b}K(Q0P~Dg@Z3#P5QR1gBE__@I;{;LNQ&iC3FMAX`A&tI4;l>>F_>#4MpY1Hz50Gv&(J>O z>;1d6A~Ri}@h>Ibyti`HZ%d@zjmt9Rky)I`QOAkD@@>hG?urOzz|k^&N}zZ1Bj{*6 z)iP;1GDxnoQw=Kr6wGaP)$}fAxsj4GfP^wtoW(Zb0sx|TZnrwKchnxl{~q~Te50J4 z6R=#Lf7j8?(L=T3teWgNcJD)a{X2^806H)J6KvkJc0}udq?lO>EMOf`C$U}M!d6BT z!Ff2$8IhOJ|Fc2(VpAXU<>~w6TI_bCJAL3Gg8-*_XDhk-Im;bv&=ULTkV)*cBoGXi z@~i{77d`HB{h3Q=?qqcvjg`VC>inWR%|423!9$O;XUPsWWDD0&ACD~=Vtk!*Jbw)Y z{LjKOdsJy~UUpyHU9;sb*c=Hrju0%Lmc8o3K{(aH95kXBFK$XswJE#EQ0ImSxG&iJ z{w`c4^2Ql0Nlw$0u(vE}CDJh{${jhpsk@-^9bfKWR8#9c)-oG1iZV#&_8Ucn^r zB1*H9)7i#+gZr(Cs@AtD6%;$)RDjkA`ini5BR_I@!01dgrRb||(q$PG-5G;X46y{Bk&Kx!c9HZ+)sOMBqz3O0;%5urSoVoK zj)Z*~Lcgpo(wRe$hq)FjK8d`BW?6 zZD+)aFy50Ie|;30#pF;_S4ni|*P{VRAnPl-xzCsbY*|<%59}R}#{TYY zl5$&f2lgm%yqaZt?Mk@X_si8>MjH*FtoRO6X^m6=)y~ZPL^|&8$o-<}CvLCzBmMY0 ziUso!b5t@Jkq46wtdaqKg{M1lt0d7}t|2tZ+9{s+zqE1zXQb|{o&DFl{$FZ&+5`2c z&T3!BWB{TH1FpMqyU8DREY;I3KY^j7J|Gp4K#8+ zja}8d9_`e0Lli|y+qdnH|IiIla%_#+CwfF^EB4tP=N7*bFny$SVz*hSN({oM7K-{` z?5KwGi}scNAS0NMcMoGA-mL1HDe7Ng?NMa7?hGe7q(ipnRwH6=V)4iSadh6naJFp} zPek-6tM|5gS-pqoR*e=UtY}fAlO=lZoz+DT5JyzQ4D4?s2YKyXLW4fZ=0$mWk5 za=v~?%@LmCIg~2M6O44BEIN#bOMkWjK zAR9P_bl!X^+N2v#?TgQ&H|sivA~OQkQvwEAqpTm{{UcI|w~A`iK#Gv976^Iy6WvJIhxb>4d=YV`c(eX=!pcl9HNEC6E$JwCiT3SkN3oqd^=a$}OQ2D}9lgOL z=XXMJ=nO5Zc7A@*Mdfn{zb5{2Xol2i*65O&vm*m4J7xJ_V-->lqX>ftbbEACn(rfV zAYNPnJ+CI@1`Ce;gkGs9oS9qNq27s`fesyE>ZeCl zY@SM_#$vk9?Ba02+1Dao$vX?vtf9!&5VG?06qUF)x_pi4-4O^&AtOEQ$8S`CDL5h> z-f(ohyTlJ06=S~w0v9I#JrOz7L3dLmtC9+D?_HkG*#j!mQ7kOZj<`* z9`K6Ld_!k$B>M})N_k-7j;s16RM1{ZFUsRUl2r&G+g zclVC2nFX?a7uZY-pZD5jF_LeA%7@Hpl$u}5kT{Lr)te@`_*A^7sv@xp?Fo<>lLJ9| zjHn&X*Tvn;mbr<7@NYm!4dA(KO96 zw{3bhh`z)1hwR6n1Lw$H8q-#N3d&6pS0+f^J7FghqVC%R`FG2KlfV#94Jj?!S-~`m}6Xm)W1T}GR94#R{JBd`fTA#zq<%*b=K>YLA-qQ89Q(A z>20{**;YAxZjb;$o08qhHVe`z#evX*#HcR{S0m}c22WJ?iGD5rCg7R?H3C~-(vtGB z8Z%_BV})V{{AuafF+i@+$LQPzsi$}Pqq*|0*J;@9)aY>_X2mHoq*ewtLLiV%i4Vly9%K; zw?nfMxlG9x-SU34A1jQoqM*J9RQ`PU1=*@kQlnjHS)8d*;(GjwANiNRar%1dE^aY- zAOYnK?ICEpw-g#s0)ep3v9ac{Dwaf5_F9dGQ2d(niw_i#|H|zjO2=Fbt0gE5A}l$r zHM*<=fQ{ZHSzq|u8wS;gU=byocWj>HyxN+?-#>QBZ+&&eZWq{(BtDVpb*73pd6lYL zqH4s|{A51{m9LBkqYcaIft4hiB-;g&dO69njg5Y9CKt|r&cL5bgUd{p*wqpJVN)Va zkZB{@%MdsrvsNo24RKi!WwAo4@hIqO+oJ``-SVg{DYp-RN}xjt zafM}_hy`Nag-+&~DXr^2h*TgtQ&#-p7OW87Z6_}}k^dr~#4WhJp8qz#fBc|je zqn)fxS3A7_;fAfPq>40)=7C?8Dy$uW#y2@#dt zicbtS<2|ipu}FcN%tT5O|%V(3~@iD+a-oYjcr_GAWu!hn|dZj&x z%r&rOd+Y+`j%SU{ocC`^iZv{#cufv@B8flg;Ph1X$@DvOF4QoC!Gu0C;x%oFc<_#J zs0ETrTeNQ|-F>v^<+f6$^yj8kn2CrRK^@}6laX1AG5Ko^%Y?{8sRhvV=)UG`T?~|K z0vDcR3pC|!k+S=#))2M&x01WE5LGX)GCeA#$^+FOUze;W@9~Hh<>?kp&Xl7ccP>-T zFnzYxKw8h0Dr-x+=q|?ns-|e>!e1357acAUJ{fV*{v3yj=-s9%*hvn(QU9>nqPW#k z)lDfdJVI(1F9{C7oo{p@SM zTkryL_r2pIw6Su)hyMhgaMHSg#8_(ej{AP}y6_OkMERhgp-vCmE14);KTsX81e3G? zdW%>rOk8cyci)!BRo}i%#JRI@J!{pjJ4sHw*|lNo5ZB26{clvb){LocV*9#<9kp9U zQKt^rBZF*WW(Is~H|1d~q3R7O5pT$PwhO4n_|PS%ZhwCHmUzE{e z+^`>cNx9+QpLf@Op^^9)RAr3(8||y;d&I_%&oh9PR`?i9sikpGp&6CoUe&Cp>vK0G@^pGUfq?C1(TJswr@aY!#7EKNyQ= z(T<<)JAztHRG#p0Bxx>MB>oHqHleQZEy4x$2V4F|=6vdik4#%ljzZRBW2#5ME+jLm zmrEA!J8`07Q9<}bL0Jvq=ITpj^p|RC8G*x4MZPF2H_XF~LY{AbRBa}dh@jx;D@U?L zrX_6Op6;MUtnSO%nai1A$K)jtzeV@0hcl=y7RWofsdVPD0qF#gn0|YH7fQ}LU64b! z5H)PkN+FVK*P{p|XNHr);nG8yxUjU>|FO%USxMj>hMxtE8P&J%o z>~R(2{f#Ns{9v<}+@5b`2(!3Mv$BNd8X0H3c|591CAE0{3`S$xDYiZPG=xQFJYGBw zEHHP|OgGGd9aME?;-KO;IbL84hF|2bR|(UBAbm(4%CNTd;m4kBaT_`h4L6Ik)@9mY z1@m&L!!^Q~5kU_m1v<(Ijo1?sb107_Z`u3!c-lf4im?m z{o}zO3$iX$#@FxadEEGP^Pdtgm4`YA*Ra3rd-rVDA+7eu?@Lc7*<0uM->||GY3c0ScE!_A^de@&u z9#bv4A3nROy|)1Wo;e8(?Hs#Umr3314HPY?^^h$|p1CkbZbZL$ZRmmp1K{;`o*-io zB&b^WN*NVzsHv@dw$ku%eeVnmGu^Qxt7}g=|45M3J4EYeN@0+s+7oa~fPi}_c?mYz zv!~d-d1_`-D|+H}j5Mz-)2?%~w5Nu2JQF_m@dYHBlk0N=i`u=g^{NGw4pKL*jC(~y zU!)>pL{QEblR6qAV-PZO1~RK{d1tvq%5Oq&ac0gLIjRyzFKTZq#$)CHkQ9m+CQasI(#(PSY2vzMl8pK2W47d5|Jj~+#N)P>|g1Y_FUefun z|A&F&9#eM*`6SB^CrcuPZ%bs+d6z8?w9`xi-{+Tiw_%rcwQn)QmI2Bo(>UGe4b_Li zQg6xXWJ(=F%4&dnnYd_>k)aLyHtTcW`u0aE-!C%qK+@=IN^>nMV0z9z8JW@=WUPi7?JE-!a(gO%-!765) z9SV4FX#UEV1d_@fdOs0*bEhZ!dx?>_E;DQ;1iqMfBWXGF9qz|oMOhgVZd}0gFgrsSU1%W5iMG?3(|P}Tb-f5$%v}% zS!yR!72ra%(Lky_fGX>!i!q!l&7Too4yJ5>g;?@F(`U$(-=A=s0wk z!{?HxWTGw(%_j*QXarPPPaPIPGyQ1|qf#}uUKt);;m0@hnMN^cvn0iHC!Wh%qNlhJ2e8G(4$ zz7kQN>5`ZT+e>v^)SF{oV+fSCW0kP?Nz^W5O|^OQ@VgfVX#!EWckhUmlb<|7xhq&8 z&Qv?xI*O-`$4s-3G}Nx8kwcU^qkmt- zwA>LtKm1Dbu*V9xhBB41=6`i&s0<8bc9)qU>2WL~sJt$U*OQLQbJ=!SQkBs}9t4q~ zcK_Y!#vy2Uld~1V*K4qxzbB(TcI19_poWuC&YvjiP{kkR#fZeE4fQQ`JzvlPTOrPM ztymLQML?+*wJr8|9xepsfUxwpx&ts$M|Nq!U=fCGOhYkHLy)o zSn645Y^Jb;ZI>KQ=j8A#W==U~cQ~T1x0^h4&mk)EmG)SHVfLMg7hRXljPGQu(FA$tKvJRjF8SGRX^bEA3&p~B?McS&fJW1cpgFDkX=B;CaGd-`NXW60p z^t)H~88tps#RR48GW{)BUp);0OK%}6c|%u5O{BMEl}HPbKNF!I3$n`E?d8zl%@C8e zay{fX@oyu4^VFgitoeKw4v&wjOIV6Wtz@t|Q{P zEpY=p$yV}|kBy(P`C?C%m{^}01beS@k(SO`?Zi1s`FDgr8aR8%Ko2{1e`T;PN&{XC%KfV@eT4-KW8IG&r(bAxL z>!uj*9ryy{NyX3Qz3oX3$#d8a0D^u=Ve9y~gPuL#nH=RhuQc)ztql`5=*z#3t$&sM zld+o%ZZxnGSMLk``|tlsWX>$qjUV4joCJQ`?sOum+$~|vua(wot+gWr!}K(eu3Es~ zujxF7RX!HT|dtisXDqYk*`y zIfLCzCB%Pk=r+Y5G$2+n)P@7-%#~z11l-RNJ*^uv(@9&}VD}OPrM`L?n@A(jpM{2& zdl?M-Z#=sBD9$e}73He}_1%2YJQ zcEeC3R7P~q%~C>R9C$)SQrDZGOnZdQ zURV_z8EX&*Jna;}m-{S!FLtGM>lnayTRSazc?EfiMu5$`?>)3~nsx_%lW=OyK<*>^ z_>P)l5gJ)eF@VufdNKQ{lBDy%8(#X7@svxSVapaG!ff73h!yX9_G>Rd^B?r{XrlZB z){3DT%%*4l-OODd3pk|AWOPNQNt2ZNqy~-1f7)pcfG`GkNV>2*a2wNNHtJ?AOr4em zDv~lx{8I-bzNkSv{cZ@!bAn8|51K2!7>k_pSF4-C^A?cmnn`?J_mjAS$_DrqEXnU=3 zR~BWz%)K14;xL!%^!wVuV*#{}DmCy>ZG%mbK^&;~R~(;!XA1bwM-K5e^aKWwj<=+= zdRh%qQn(1v?_xpcMjjXsP(*Eeel5c!!7cjWY`x(lBpypDhgVXv9py~7(@J8xpHKnjMcmJO|>-PvFedmnd4>nED>}#NEgre zr1OGmTL*FE^w1o?Y0t7RpYf7_R|r^EKoqI&lz1g~$IwR8c28`5`B|_j*dzfmD*3E6 zSf(P{<=fVk&4hdxJLl(uq-j-WVR2FHAX;)^IV&O@7y7V5K;%66+9_;ZF4?GSx6+#^ zn%&|e(^WW0U>VhdLQK6vL(*R@Unp9xBnMfpcFVM&#)B}KtI_)Eu`@rr(|~c#SeXXB z4t_;2tDjeVE!esc6I3N{aclSX7L@hlcqW5z}y(8d0gdJriq}Up_!L>l&qfqWMXwV$}@g98PQ(om=Ijk+AW-mxC&pmMmaS$ zNe#HanZhuLM0=z-b0nsOJxl+AJfrYmj+N$vL*@(T-)%7V)=s@tjvyg?2nEKKQ>U0i44ETvR}i_(Um?fovsGomIKPYe#pa0G4ny6$fNV$+Kl+ z5wj%bc9IT6OrvTD4j!X*iPq$t&Lrcmd>}O(C2P*09k!-1wWhVCHkb*kKoDYb$!#h5 z)dc1n2$QS%hHXy@I^4~^CbOes&5((lu$xveglvXaoi;o{DO{Q(RyMs zHjky8ufHfVo~K#Eq>Mzpxlv$}QdoY9LdbZ79sgoXB?1D7sF6BS5%>*OThblW{k2Dm zF24gVD|CB)u*=ibzsL6XYX2H%quBr;XjIES()2qbxr6Wz38(rw1yK6Z8p1Q$@VqP z>uqN*bnoF8{$1P9MfbDI3Bv>Kiq~-Tn5B**e)BLbeGpNC+>oxFi*>&FkhFwdXkO`c z{>_Ff!A7qAeEFvD>_&oN=a0MpQ}e@AOySXOsdKYJuko9VT_5H-_Zs$krrp?Q??6$t z;pHwVF~3KEYo1D%mn%mkk7{2h0mu~?NnMwp_klPr>?rvdsdy_rfo#Ds|7)WS77OH4 zy-0Xu>tQJrEiS7OM?y$CoFORnqRn%Ff|*tklq$fXz^@E8X`=9E=z!xV1O~>0Z1&!snTTnjn`m#;{|Tcow7nwpE6zJAJY5};p@ z@j5AO^~-Gw&9kQq-4zR&>Y}df=X+l7CIEm|iWp-O(*qwYy$!f1mf(S!@d!=v(A_=W)Sn@eZq95c+@_*0HGs zE&kRT#QfZ%0U|SlOYKVEyAFPlXcae8DItEp>2}S6x`_cWLf(gY=CNk{mg!ph%^tE& zjrLfyV3^~*0a6NKf_7(xiC5X!8QN5F!Z=v_LuRLRFmn@(fGxwckFQH$hkbro$DO21 z`z33x6t!oOt4vpC@>k8*u0z=g-qM6w;*)k}hn$`a`00Ut;6l4$d=8J2U2T3oPiBK_jtHQ78p)=Krcnd=K#+%hC@2g4g0Jy{M zpa5pQnd(w&dFHZd32_;&FbK$-)TMwk;op?f530(T%h}}lm^Y{>N1n?RdDtj=+B*oa zQ322-(lAvyvXZ`3>~@TKn{t|MOe(#1Q^yZUg|Lcuf(z~gtsXm)FZy)a$q2{H$rq#o zr`c!pKwP!x+)z`A6gw05{nj;JkM%$0oL*-7cFzaRQ;ldpt`7~nnpd}ii}$ge%pj}& zt`28(-@h=^Hy@zYSuPx(77bJ4WKvt0S0kVK_*FADk=6d(7};8d`N@LZWQ`cI;nzuYMQ6%B{?hTjbW9PsQ!hKvRK_3ko`eorVP!7Ul8GcGIGX;($Dhg* zD@RrNSs=X~0mFz=Dn-_iMuj)VvzHAZvZTTBO}m=?tg{GfT%>!ks5ExPy|;4#js+@y zr{UA~X}o)u1?0BaHEG z6<>Q0=^E`=UH#0^_Is{nzFS9YzFRvN=i7mz?*6)<9(}LZ!{qS zfC1*K!~@s~*(3uyAX>y}{A2|<7X+u_KeM&?IaADtoy;cIF9!NW1)`Fgo0i zZvP_p+?VecgmvSq;vGNaKY&_B*#X{o;*=mqc6#^658(8l;j8aL7@ zlS9a}zs$xSLPfb*b8mVuAiXAV=T~Z%uGs|fMyH(OLiq{59FZV!-FoKz!cz# zJDYC$cW92k-Eh@jrKuUc*iEs2YDf3$?=uPo6@Tuqzz+*T^)1wdw>^D=Qo(A?ki9gk;4S(xR45c@W6{r(Qn~0^1GpzG@eXwM&9IHlo~rL5DKF z)CRt9Dl|r-vC4rFkCHI+p?YNkrv`_$xq56C*Gim~i%&_Q7Pd8vf0!GQR;y8jmG)UF z?K4&cpwcoR!gFkz$RzqnYg4PTh1niYMORw=J*6KIRkVLo+ZU0U8I!sl7WAsfcF7cSbZ zusGe0F<^+}Hq))wo?RQl=PGt0(5x_@;J2ukTVZ+Wn*nbVVzbH8nEk@(p1A{JJ_qNB z>Po)myV#Dp^Jpc^X)+Rf950t&d2;o)NB`7K z4dUP16)#rIoOedoxPlJyJ{;wI{Rg{UZ}Mpxm@DZ3!N3xmXB0E49}CYT$FWn;Y=%HWrrD7CK0sM;^f*!HxG%QbGNAf)B6XtCqa zuRUuyjv@u{fLyW$NHIriT2Ki}pZjlDTs;AGDItOoq3!XHS1HCYQc)TTBFu0h@a`GT zeLhQuUVrY&m3wYOK&{?-3~fFplaL@OwrPyz2i0mvBxsXQiU(fm_cX6WyL)d!f63L9 z)9-khOZzcx4(TnsYzyb}RIzPWqqciB^M@bB#a{Brxv z57QIW@6_w>T1wvBek?P77-CPo{l$goS~j08ib|to;cL@xzn#l=nSY%+eHQLrbsCsC zb@bUV^ViF=3N;Q`NzpNOyF%P;x_2@m@3**Z+#~+CRIxK)mZ#r3tAri7cj9_Os^Q8= zsaW1vYAtGgOA7wRnHff=$aWu?60$y_FMh-RtD=SXt6xzq-!WCJreea=G45^gS+c%B zg#hLnzL&P1@RWBWDLp`#->7hCUn(}MfO)&uHdTPt(BLB)i1~76ae*MA6m@?dywv-_ zGn^HhA?j?adHNmXZplZR7>D8G;^9?phS;c7sCa8?A`;B2&Z>#o*qY`Qvtk zQpK3J4Yf;*%T!xqJOEkim{dXrm$kHsR4%U6d^=lME|O)1&KKJ-nv)fNs+eI9d$xZ< zx6tXGSGLPPmQ}!tkx3L~*yojtnz|Zr=dA;AdGWfl)esGcLc28DheS`F=jVsJNeU=_ zi(|2682=uc@Mw$fH)U|)0+yw&3*o==`z_h`c-MVIJ;*OjscHE!@dM+_*R#7)#(od! ze;@RJEKbKP{rd~Wqj~q^_DaD^C0-u+Z)A%RLMec0`d6n)jv8LOdzDuERV?t1=@8bP zjua`i5PZnqV32*+^6AJl*cz$u5C9cOy%@PS2SSxR78Rz0^5&dK7d!-CSoyU}jwwj& z_?P0x+%OA(uH~5_&Z&8=p7k z#cJs-YVs$SPvP-&xAp>y87kt}grBGh-6sC@yQsb->|({%B=Y8@vBAictnqQfw4zD` zz4BoAps4!RS@UZP$XDZ=vKifFCzby{mmSS!(Bx(x!$udynATU!~pk+I9J&ietGJbtSuT5tz8y}BM= z+3I~OH zdmNHo9T``jsx=h~@tZU!a)jCSW$^J;JooE|rpe=Q0j&?OV?CD**M{_SUEF!2^;SAk zYDoG(DSY;5fca#dXnc3qsLe$p1K8nY37TuB(HOt6q~0FQ zz}xHXbN55RjmJOHAFz{6szwmZiqIH_)C*sU%!!MTi$+yi&DGm#(|TeX;xP8Fg~n!! zEwgZ*FKHe7K6nRFP}|o6Atc4&XIqa2nPrntl#ofQE{d5HbpeLRY7Jzy2m!!xdtR8I z9Jj|N*Zz)LOJa1uB-C;ln9fO?{D=kfWs?`mN;Uol$mQ6H-2SS>(5eF!J5qe zjQ?X15l7x;+!}OEC6Y$)vvie4*!Ji6zga?s8xO79e0HlW5}+apAAWVq;pDv3At~$` z5uZnepX3>a9PqBCAmQExRH? zBR*ji+IX_(J5{Dx?tSU7$F>IbB|2@_-Bln#x<&F&$<8Zyq!f2^wmSp{ZB@*3>&*7U zHtV7Vtwzyj4FPJHYgLFgZ4S#}IT)5o9_LVakbJM2O`j1q{N5B@c^Z9H z7Sa}v;ISLixN;&uj(dLP)QHRw1~OaMg>A8jCR*jKCTi)W zPb`poN*uE7uZF!JHkA%%KzRmV(DqCjL?rW3rSek=apq?a{%lD|fK#S9th0N2Gli*d zfTZ!5dL}bPRKx1P1W&!}%W;S3Bk>ifclTmr z6a~-D@5OBQp^E2YMz)7iai88of6V2^XlK>w;HI`%DHurXeb+A$Vtq8@XgNSQ#^Q~} z0`4XIM@_+wiA8r!0dW&$kAtrN1%~%L;#|IJ+Wc4>#Ag=|zW`{rot!=XXZ@73pvJQV zmEn{c6R;jup(Ok&TV2$7`8eQ%A+sexSHEoG1`)tmK&0RCVkd#}nr~!27&toY-b<`11#QD#sWqxzC?BkH0J(uCEKzsQ6VG3E zsVb@P>B>t2Ots#|-kI`qK9n;Xlv*9x8r}&Ua6mIs6`3^o^QJ2D9g|dVd;q3K7i;?8 zgu9R@L%{cl_!&`yJ($(r+)qT+iR%#vV$rCLN!t>sc#c&8JT9+)zkxO_FfmT8YoYng z2`++OI~An6`>Ba5=k}KWZulS_huB(krRI4w)5vPUhGj=CB+9Ew9if*R$(_X?c4H1r z@Tt8w;q7}goW;9&Z^i+l;-mWH0XAP9B9m`P;O-k~;J_X>i6wkGNh#9ufR*2(^q5qH zms(V9jdT`l4z^G>6!!U{uT2|3la9lY>dwJZfA~;)tBLx)^Bo(fJ7mYQOPLXBvj4uM zg~>D{T!Xrl~d-t`mhWDSF`;-=$jCKpQ0<` z+qPDwK_fLQiKB4S{h3idKMH?zzqOP< z!BS1PMb6NyP$En|+_y+&?cOF0luq6J2_B?pIbf|cFCHQ&s+;Zec9&tTzY$hv^NNa1 zHLMq3$tUBrS;Mq2yrOtG>G8ZwWx`=%abtflDOfn6bRmEMEQwX=Q~2}P_i065Yb8^Y+?*zk79f@ zuF+ArKN&Sxmo{PsTJ5D<_kmhikHvW{RXWPN?OqS1h-owBhkZ~~7xH)p!op?f zjR?ZkXg&Ydy{T(WzY(>kI?9(Nc);9;HV$uZ_x~k&rt+5YZYBaz; zbATqpq_q9TQ?sBp>X&oHtKN)xW#K2EEVi%ERXmiD@WAI}tDDW+_?XAoxwh1+DBIQO zLYX7#<>1Sy9dv3r-_uiFP0ul8t!Lw+t+zlvhO(PHMt(Tkh0T4@=S1$dCcq4W93I zfN(vr#;w20Va~~J9TgCZdu98QC-Y^T$6%)B@7gFfiflAT6)AMN&-538@;9I$;(H0l zrrB882XTO7pqhXvSl5oD#y2+qCag$=kNDOd2m8c3(?}{TIoNpKlveManJ(4fEzEEH z!f5J4ECv7cwnd3n7QTA(UPK~KT0+Iu1o#zkL=qc@&Mab?>@nE9En8lW-Y}YXTeGiB zQ61WvM*0)-@IH{_Tipfh@_ga(64U(hOrYrRF+Igm=ODHeR83TckGMfA-kDyk>1c=3 z1lis8Vsxvy4{>E&(hASr&SpgFZFYd_8{xt!$e^>G{qy{kP-Gw&_FigE_4rHpnlnAn zVya^6qDz`8K!$nQU4(Lmq|NO0r%rdcXKT!RK6s}G>q)h6y!>kEPg)nuhS^z9mYs23 z-M+(x_mA46reyUrl9*CIkV-PA(KwiI3STh&)UmK;9!^+k#67(bi@1?s#t+<%Z@4Fd z-;*tp(iC1`C)b_(rQEa!_u&MlDtxHoVseuDJfnZJT4lQ77mlm*%+|AV+olrY|0D<~ zha*(m>t~p*q%^hGY)D@U8~71 zt8tJ?k$m!H9*$H4c%1FPs_3l>q1==0$j*nuWa~wGN#B$YfH=Ym9?$BJ?9dv@q_PpV zH~Dizzafh{$OPQSw7LWeTw6eWfssl=`4H2?6N)D`0Q?x{RL~J1-Sj+;`eME@?!_m? z1c+g%LmH1>V;>p6;in9DGXOMKYjmm!MerE&>))0Y_r`d(m6%Bkiey)fMkiUvEvEDu z$IyN!)M!19VbG?}Qk~4S(l8<5B-ZGUxQ_)};I7QSSAfpA!rv_=VJsxScMRivvJ9Z` z`L7J+rVzU(DWc}L4)T&2GBeSfRUyuAt>y(L>G?jvd7$i56vQK6l6TdRU`@gChVAgR zjOTedtMi4v?Y>-C!v4ZYc1ZImZfg7X1B2EaeKGL^a-F1w+aJBY<);(}h3#>7dBm&l z6oBxAfQr3;y4%sozj>^{4!_l%$ePyocQ}kURErC4D}UGN!#WVI%fvc|=3TCygF|o8 zzssGmTn+3F%-d(Vt7{1ZyOAXQRU`ctFW()q=|EuLpB8ep?$zqQv3@176GX7{=lC*B zmMBxJc2;Q2Oo8OlMSDUQr0w&ao5{d5*`~@a1&PCz^2Ar_=d*#Y3UI02NP&T5c8yhe zCIub(s4>6A82$$_=rb(ecfJ#Vy46|eel|teOahSQQ=@Uvm$myGBv-9P*agnyey0T< z=^qXeggA1++f<6X=I#aaFIq=n15W}waRnzEfK~qh^iTflo=%-(9YfqgQoX7qay@Lh zY;iql{FCFZaPQ;Qs~9N>%#yK z$P@aa@Uk{%e)Quc;L5|ulyn`z`Vo4f7-%QA!@JN&sDz9O+x|E^osOyzk2P@yZhpcr zcJy3{U@svg?EP}c66iQQz%!Js_dFzD2leZt@B+!GF`#(^DS?6pfr}^9Se#MU>8T3caMoD!lq&18y82`#qJ>uG|pO%|9Yu(QdP$tVRRHH&Q} zq-i_W4YS&_Zsnt0uLts-=T-q11vE20g#A8qF%1R3t@eArf2`Y(Gd%>t-g{_OJBeQk z#)uj(qXdqmB2WNknFoLH$%54T$6T#`BGKu!RHY)Nq?C@2xpfAW2Pe!k%GXw1f+)u* znZDnN&R{Nk1s3Ey$Ts8kto!muFJ~13*N;}#VoV5657xq0%QxNcFYU~wf}rkQJ7M(H zNfs2Xb)}8u%}+cIE>-irrdO)$$Cv<0-~6VkOmzIfmU)7WNXZECblZZB0F;>w+=l-;*^ znwvK5;KOLobrhv}d7zZn^fH}?h5J5**XVM!^F6`zYT)2q)xOxr+I+-Kn1AQGt85%^A0P3v}E@4Xee{!t0Z$%w~Q%!ixT^?JmMCWNFS zg1ESwwdy*YgBhSY3ZO|Y*(4XTQ;k*?1d4?64cIcuhAAMrB`-TWs6U{b8(3it`})j( zAG(Egun)SCS@#1Fj*~~8?erA!w(I(8;1P1chk!BBxa;(dW>Q?v@w!rcT+XUmO@5gt z3?IQnI~57Q9?wNO;L=vq0?B|;$lIfvKgos1v;{d#w)!@Pdeo~(VAgFoe~61P2c%pf z6<3~;%0HYQB{t5+k^30hyuhKEwOc|d)Bf!lM3lx@!_zqA^&9MqMYcgUC89SeF2YmM zn>N?=0iaqrZB|UKoYbRqoJv-Q*96cRGVD{Gu;3zWR*S!j7q4Ar_QB?PLKUn22?zCb z&eY%%n3!mnvH%zBx@{TwwLx!L06uN$Ke0;Ie>@oU^%wCkA6fr)*Y$UNJ;dB6Y8zZ1 zT=5~-gG`ezV-etMk{^%yjh8 zmmWJ``HCdQ=(p|qex>eDWz7%NZ$4DvUQ5OlayLDBzuEOc zC+B`QE$iC$YMIuto5F4=zVbzEbidNT#zbKHK`7Y5%4Vxe<6`nN*((gExIvtW<^%U% z^k;+Y|KsSagQ9%DKKxY)N$HRhSW3DZq*+)%N;??(6J!1CnyHY@R>1|F!Tz>{sLj2LhZ1iFsmhfM#iF;=A20G7VgXqTjM6?# zPi>BjzUp_;E|gd7E^;aNVKd|#fEy_R#~#LP$iUAGcVK!-F z)?6NH?dXixYaoLPK=JfO(S4bNjQhvaFS|JXT7B0{Oz&p?_E7PD)t*dVhWHW*=iy(t zg+|}0hR)Gc$+3X8i&0XQ5gOi*B0-eiWVa3)o=9|eKm_6BHo^TDnjnq%4vLk}!u?*$ z(Y!Q5W*%+7C>E{^zh}UM{&+W*ZQbh~JG@tW{=wK-?YRQq2SfI-;q*Pel1GCg*j10* zdAt7uMzu+2uPRa1wnpyyZU_t1?>KSiTi_GMgKVp8*F4u`^*KL$hx}2&s7wM@4>Bqh zwbl0$jVmSv>H{*d070~;GYwM|3tm8^&)LmEy)^DTd~6DcepN!irQP_1+{L$ejtwT2)tTq-Y2ga3~50 z{0_vW_s90(G~_@kLV8;s0lfjAl zW~~AS3{W2`lG|m6$R^xFRRxGYqN%D-Ow>a%_D6S8*(WZUMSxWH6`ex}{f`{bXcwAk`o@16+qJl`0s;rW##tw?)P^QdGW4_F)XBFh zkLsYb#tSdEemNx0U);=WL$7w&a+d;Qlt9L>0HaPvrErgblv8d?OeM?sy4EkzY<9u3 zu+6k}s3O~N{Fde2+2Oyu6|e62r{lSQY)Z`lb0Nbf^QLXvH1H4Jvyf}c{xSx%_=3Cj z9ivRLH&6&hVuT>bWI}uEo0L0Wg4ow07!n2=Cg28YX(UeS(h>z;Vn-)O$_Bf>V!M7j zcJF(*2)3utX+@U8%;4`byrY=2pf`v(Fd>RmEbeHR!|VVvbYWB3yur`aYBYgUaq|z! znS!=c#Rm1a0*7RJTWm5O7__Cv#%MJ~-)SrnWOphch=dI@r+iA}u4kJDx0BSf)P-hH zo_d~6k7NNE>IMefUhq#6*=C9_GS&m$+RebO-x+DiWuq4B8md#zOUIN$m1N{OoW01U zR>xqCkBrO2^j#g&x+R@YBx10?NM_+BbxIW0gEsHi;!1BKKVMqJKc_pMpCeo`M-49+ z#T}6+KlgdRU%th)Zy^aWBQXiTI7O8@1vVYtTo_I$UA)>Xu4tRZEN=4Bx^3b9IJ=BK5U>Hm5YU(TbH_&Bn$*^ z2#_+BLD=5yCQ5Kbo6z@vx{o5Lwz>KA|IbEg)mwTOf92U7Pfpux%xIrS68DiCF`w8A zZE!c4+Mjq#u)AiKD7rG^DN#$iBJgo%G`TDWI&&sv0^xW>DAMOCHGW~=s(5f4!HltA z>kMD0+P8M&tO8VP5~v3PwLv0h#bfI6goFZLqnuOK^#LkD}oJ6{1k*$l8+Bt1Eks1nHC* z8HB0!$`*%4)pBdleNZOSHCqK4$B=L%Q+is`A$5ZGW@Nz_RtzrhFrH%+^>vwI-+!TF z-c5mNl?+v5JjG4`>u4*s0n5ff zwj9S+<+S3>DQX;8iets|iqiAfq}bEy7me04P9cxdV_8a)ow5oa`=zYAnV%jz$`sTSB%5JqVvCG%xy~|e%AOR zcHk$gh#iOcE*W|Wpy%P?K~g|lR;3#u1Aa-F^|dVMIdAXXeFAa15Eq_IAHJpI^=FFt zPn3RlT!?eS>XVCQ8i|&tcLF$4K(>5>R;uTG0A#L_3quqwdHlOYIwY|>CHb)w7#@S0 zmy=^U0FC|IK!tr%319l3zAB6EU0hBU?SY3vB8`1x=l2Lw?*i#~7-^|%)xYLJzrgGW z1{H33A2+V(SJoEC!^Z#413eHLPf=2lPZy2PCWO!9k#lF|zil3?>>eeAX9%9I)@e`n zCs4@i-$o3uqr#SS-k2FC(l<8ught{uxQzxf@5I1*6|eS^m4Ja?wtVB(8yI=i2PDTk ztD1O4W6Gfq3pxO2gb$@l9V4bLURy=8r`HJZq~quGsb;Vn^ABBpr&&j7kp5$5yPeL~ zTV>C2mh!Uba+3{kl?y_(Nf=|=Wd$_$>WVX26qNjf3r!iGGp}LZTlIP^fQB@=32zvt z`0o6{vu?N}a2dy-=-^tvA^e+ynGR;)4p;=`{SwGi3EiCsP?enlB%(mjx4TUXqHF6D z7VRXe(Cjf)r&uR~_O{sJ^%%Pj2pBCE;*d-GlvNX3%Qfevk<#nEmH`C-9x0px&dBwNruv+FU_Y>&IFTTTY+3YTpT)%5a zDos9D;UEQM^!-aDX7>AwTYrgWnWa`1v0mxUI|2>m+}zU|F^RafWOC?Oh)S}VD+y$K z6Q(EID&j6Nw|xkuyLMVioc3I+NT?ba;9j-ZG)Sr<7SVnmMl5PwHoDsL(_J$uJ?#F$ zJ`y*k$N6bf^?u`tV5y}uBM|cV>Tl7L2F&Jh{2$g3eEse(gdeo|q=FLcJT`%p+^t)U ztBP{Kk8%{`d3$_1rdvO~tlH_hK`C8Qy-VQgVa^K+G#>;n(k8 zKnE@9i9;?FA5v+NvoOXbrJ;?StNxED|BNt^fJzoG@mm{|sV2#=+L~&D58$_Sugc zMLLXkc7oIRdh3Hd-XhK0oLf&1dAlU^SV8Q&rpJ74IC{K>zoJAw0&e$a}5M-`klV+Mh#B}z@l#SU!o_dU%UBN+>Dj5|E zL89x9zU4#bTFZ5DN0W05hc5r<)bl)ZgL}@_G7Wn3Mat~T)=2hJ?$tjFs?DxPb%Vp> zXCB95;Q29MsK@r#NE=E2?!=k_kYW63j1Mbj#@1RWR6=H|dVi0TNHncVwYh&<*XM)s zTuZ^ah{Cj|tVhX&((alg3Ek+s<=nzS@sud`ZRho^L)&JbYbK{lP6=K5(`6`i{J#tcWPmI`(c7oD+kJ9|0|Jyt~1 zg7&^szIzSR`!8w^3M6r2Z$aZG(geqRED0WCWR^m|b>#C~C9sd#E#LQz#Uc5DSXlJ! zXgRd0lX3aSZjc^(E9z$21p2dvC3kc;wrTC}2}hCm@3=q8*Bc|u{P9;dxHMJ~Wsaz>Ihc3SoX@k2dxqJC6)y0BGcV6K_PlMxZS zaRbzZ3)3apqKkupIN*UV67uhAs5^x>L!|DGGMe8(GtDq|IQX^B)?A@PY25H$LY5Zn z0`U=aT;1Q3<6LWdF79Y}_nInAx@Rx!RVb7*rakT^v9!jw&z_oFEaIG$#q|cLUnG49 zg~v_$f8flyY@Y#5(qT;=r|9;G0q+)3t<(1x+o)&h)_)=mn@7}QwyRcOOZTvf%_IZe z8LnR$Qa=c+mD~_KGU&cq3H9QXx-F#5uKUlbR(vA&LC~@L7w*@D>ZZ+cv!k*_Hl&0| z0BgQ>T}{DuL2J_S_rArc1Z&AhQM>iS(R9b^k>y95+{oP@i{2*}2$}YYOvtn#)-TGL zQz=Ob=b4g1F;PHwthnkQP6yWGsEFt6UraVUIr1P{&Y3_gx+|S-&6Blr<^g!ZT_`X+ z&vl}W-Zu({*5f~xPfHnP=&Hj$<=rryoJ!IT)X2Jx#T(Ge<#r136Rzec?gpH zT4+j-y@_9lMZ`U>%6u10IwZ9TGOBZK2~Dm)Cr&y-AvI*{pyl_b6*C>#&a5cXN*Fv* zUsv+fjxH$6+QI96arU-MbC`#&ITwEh@UntN3Zc6N#W-*-;}|}ju$v-=E~tRU&O^(; zuv{CD7;6-*AScY;z@k{D=))@Z-iQH~B(-*4_>%UuZ{C7PT zY)VH~CGhV`rL+$ByP*rIk9{NSP?d~A0B0QOFRZs`dzwksk>tX{M}hI7#>e3H;82y+7lXXmcZ*sLn;sIBcJ6Xo=?LDI-RLon5^rNQ}gr33Ts-^X;}j zZ8&GfUo_SyG)mx$;sn=zL45(*ED+`!EeNIhHI!VXb7xsP7%e6gmLU}_VGc?qp0NXf zv5cnC1OY)B5`(tDK`h7@2S`@eWwYeSGSX>I)O6?oUWVc<45_MQ(&C+LTU!<~;gf=k_&OZCXweQl-%@NneD86LWQH;VNN1=>Cg{;p;CR`H&^T8yX~ z&{KVqYp)PI{o)uoCrEFisjXqIuFN}qm0HNx_LAjn*tK;-WE`H?U%bBUy1Bt*B<_wb z%x#n$B6t37Hv4UGzRwYz7c7e$+*$=VoJUy3*DN;Kh(waAf>p8y*_3n@6L;oxvs1$E zL&^vLGGR_~4YBr*WxaBZ4ImYs8BJY`e-Ax)E_9%R5NlQZeW>2wDmivvBNE)`ix0bY zV(f^3J0-oJx!b!45T1c(HwWBF{k6nCsj=hCB`ZdKP@s4Ekh=D}R(46;BuI&6`lRd= zok?Q0WET`Sp4+s0hMgSTZujL7o7Pw?Ua55WBe7H<@w+x?)v5R_1&I#K| z<*cxl8T^3n=bLE7tI}+@tTYvZs5Hc2#vkg5(~VC^)Q?>%6l5JPQ!v1PpD{68m{L^9 z(?Kh$1a43I&W@~++Gd|vosPn3{u0e-23OEV{W#a-beY)@jPr;Zy|8u3KR_EN(;Xha zFkk}eU{iAMl8J?^7)VmpEKQV%`~CB(CBHYBjM-8yWA~P>o4@5qbaIe;pD}B+Txx*# zZ}FAcjaRO8D5tNs%gt{_qvGpdyAMt!8GwoX_lu=g7mTK1?bC0~6it5NPfHz!jNO@&J{f@k0IV zZEGLuKi&PhrjaXR%yUM|Rh?0;#|^rPL#44tqd$?C+U6S4)RPlZm+hl$Ny(ulk1Ws>i8ocBM!dj&3RVdo$KqaKiWfQf^8k5L;W& z$iM{3V$(i}OFijhn6{6#i27X_gegNjJER~KcjHhp`nxe$`R^A31*LPB%Re+mt)6sn z=cT*vMlC)oNZs2>q4U0=m1@}B@#>N;>Q)laHPLNn-mJMkNR6BNhT_c8p?YK6K(i|| z6Z8)|GhOVNUEH0eOVCKFiyW6t9dsvn>Z+5j*bq5P@7YoIn;S8M;JZ?GV1~vf(c(s= zQI-4VR18)+$DQbB+&ja*?ecWMYgEmF$jFw@hAhL@F@F|X&Ar}mGz>iu#7S(hLzf*m zLZYcJ3h>|%W1fl(iaMne^;`4@r!j88knHJ2und{bH?*Vck0#+BuJSSNU*Dcu9RFJe z9_sNe$!RpjF^5r_4pHHl4pAIRaA|M?NweFsE};siH>m(?7Kgn=4Swh{LQ6D@iaP_D zJ_=lJ+sFwr?Ix*3)=^Gr2r#N3{J4YBROt&0|JL(#`ZD)>ju6Bgrp38R&eU*Ry~aQM z0%N>eVK{$}H#FxTLDgKd zn|4fn5?}2|z0sKZbkSY3lDky1+kYJ2GjhT&B$X01l611OVc0~a6-#c}9Aa_&*3=JT zu`pd*aNT%vs4>Bb#5Gpi`=P`tZ3g}a`yc%NH;EESRgjHiRfVf@#=-fdcLO59^`%@W zRHNa=re8$K3LZRt-#hE(YxnU&SY?yl7b9~x zkfRjKo6f;tAhyx?ceFKdrNUTEk0M-K%9#Ngo8N0 zZ4`xf`4A(?9+ZUKWL(<$6DJA@VLWYzNFQNj$QWje~3q|Dxo{xRGc{KY|`X zrVk=>AFAYE!lN7&QyzZmtZDROoeqGda%dxxbBx?ohxkKT-P$C~vad$#Dv*EkDdF$ZJT4@O;THy(6)l z-r*RDG3rPu$FtM2Tkvk8m4B7W+-qeSsg8=67k+;b_Hz7k6uQ=iFr(^KDR5) zV_P-(s%~V?Wpfm4RQ(q5W7ud(tc1Y?2{I{$%DY{rAog#5okP7Il2(VtMxcHni2Yuy zB*E6>4eFk#S^qMT20Ucj9E0-+HmFKJ_T*H2busU#9%THs^1r_F91$dO{Oi7x8vkT) zfA(zvo1R&b9EDmunrgaBEH4umfX!8@+XDgIMJ*Jv&N`KgA7y>K0{r$qnBD}L;DO0s zr9BiXAG`7Agfbg{0{k0Y|9yJv=2dP7mytsiZ?H!$6U2G2?P4FOI+Lk|K@(kgJH6Hz zns43<(noK}=O$UPHFM8F)tdV~z+!V%bsUBmNcL*_4JI4axA7Ua1M;7QHDr4MSuA^ zBX<59=)ka%&VDf|p@SP89lXE_=6uJbRDCw=QkSq%`A=j#Ef)wD%~*6hkX7+BvADGE z05pa~{u#P$P`T2%CS=k5g2Nlgu3+zq1;xDB74f`hP|xiOCq@jp&$;d`#dcAaPORKV zAa^hS83AI(44cxzid`+RlFyKGm%C@y&H*0e-2Au5d8DdU6Cjzz*sxgxw9y6!RLA<&MX=K6h7Ewx z`#^x%_?$T}K_rqK2i~jJ?vWDOqSOXiK-s^1HESP9z7CL)@Dj#g1yP!SYwp9l6$v<$ zw-p-23b#`q6}oe>M==$_tQ@HGi&UfLLVLpW+jc~MRt1L8WG!2)qP1biSQM7Ti*Q94aDN+~7JkKTY`Hc6$LhVh3DAPC-3uc2*n}Tsr&T!=|6R2d8BfI! z+tYt2Fuloyvr#WBOYh|1N;j!`1S&7*4-? zox3N;eGfJKyHZCSCK99qZ%z16Oj$HI1S+|}Sx3%Idps56QN9+EokgKrq&l|mf>6bp zvxRvidW_8>Mre24qR3h3h(oO6h0$WR82eoju;NOc?iU}!KPHt<RyCK1_RVMXD-upE+VWzKX8FtxIo*SO|NkxQ-bh)C%NO2KSI-`2(Z6S3^|92`&3P zXZS^hJ1+RcTG;P13_{oM8!Vkf)wlIf0z+g<&HDZFDKNx=2v~1($}fe@Ido7J1DzBmLxTgdAy+Pj02l}BEJkpt%4hU_+FA+eIIZ3D)&lTM`qw0EpKGt zg!0Pr<_RK2vG$04L&u6mK8ocdYMW}c34?9ZF`We>-)0)oSGacGLaj3tGwVVOse@kEWwP|4V z*Lwi5gEdqc`4Bm8e%HYH@gqFcXqH04R_%33CqAFOFZyH%e?-%kAvifK& z@l8lrP-SeLsonH!O5T)UAT{tpJ}QEMa$gJxouVS&T`! zNkIm=A3dPC`4lxQ0DfT{xA&Zpcy&13#fsx!7tmEn?LKTW#7 zM3)=M^Um-$(f%^_&$F{Vy#mIETjxA;P5_nxe6>1W8J~jI+XpMtY22`QwI>+-P*`Yp zx@KqdvJi?iyp?CW>AUshZD|Ke!~HM9p~d;EY*fV{ZPMK^2EovzYGRB5yj_&C9_cT3 zjbWLn9Y|g{^&h3J-yzC>p#*Gqe2J;PxEVeJOg96GOd>W6zg=@mk`wh5PG%8}aaS4R zlkF^g*p6kNaiI&Y(iJgi0+M;-J?J!T<&yyiW$U{lzwYje_6if`g2Z=yQUxCVb7N1u zVVjiNxEb{K=j(rb%pJTndDG?aNIUcoa^l@EU%KymJLB@$9w>6Q6h|-Kh08Lm>bkE_ zd6dK2d&tkE)jm$wH?zNeap@yc>* zQ1WCq6+3U){^T&{nYzA|IWWL`!sW#i$aT@to|}o2Q|^w5yX5eT*tQ>FF zpr_oo|INu3aPc3v_#*b-9blN+3r3h6BN&_X7NaEX937p}04E3HvaOj^N>PfNp zF|~Fj39Ai+ogMsmYs0etDRtP1b&6*+s zA0+k8T&Y2YWfSeENs?+->B4BETeCSl%}4R3s#UEj^1Sc~WmpJNrcrDcC75xeAuFpK z&};GF^eA6fyU)+3h3H%a0hIl)oX^K+6?`zfo3}__X4onV-3+!uQRTf0mkPdhf(H|$ ztv6BKPo_6MGtWQ?K{N%PSVLhVP@UfMq~|>{!e_20%2N1~7w=xoJSd%gpLF%We|aV$ zcelDOKqH0v<*jr;1k};@l2)Nxi=3}#&D6%FXfs+OQtoZsy%aXUk zW&jMREMz+!!P+fDwcbMazSfCB*1e@lB|CH0soZQvzye0>s(rYb)qn@Cb6&7!PCNtO zDku%{7f~nbU1Pz8HGh8xTvDHX;PzwHZ#nsD_rXZ$8b58cGYokuET6~aWU?`Sp*f?@ zD6xYk`=Wv;b@}Am6#5BWTI}h=F7+1{i}8jRB6VzFkjU7wyH51n8g&Xt^|WG?mFR3U z7~Zm!P&F+l$|})q$wNzYr@W97*+F$}IT9x~UvthQbok~ci+N#B_~$77uFHg2wC{@+ z+uy<){SIv=zLSF@cQG=Z<{{hp^_v7jd>%`94bruc^Jq1X0Ir{zj#jfPW^dAVk1Y`^ z;K1Xp93?afXPL^rg$_@l#1p4KIS1h#%hxm-flBK|1m$YBdT%@W%jeH1SN%n4-S&UIzl!D3l(q(nXG>|^8#Ktwxr8(yt`ocb>57{X5>uqP z%(47BLe={rkU0PNyn2k;;yl;Nk!%Gsw^KFF0;fYsi744+Qy=RnkAs+vi8cZ1O7x2y zpxQ1YMttYw5isPwn+%4!&4Jw1BMIV$rr@rgglnOQ)v!9nPL0~}v({{$na(s5=9tYw zl73P#cF$W7^t)m%-<6c{hlMl1Q{GI`ViewtrAW&~rGiLb_^Mj~Q6@KsbA%Dq_-Ly) zZ&dKES&*qqN6`%>S2PU5@nPu@QFAr^d{}x?wOJ;gN_+DJd@poDLp+*=Hi96#BY?o5 zde}s|?48XImS@D22MPmsj)3?5i|Y)dcMUve-vCfYTelWDSPkd|Zvw~@5DnuWx_lh^ zSLc1zX66@y9I+i?OsB%N9=|y`viuEetbVI;SS&<$g!@eC@d%&s*-W&9Zaoy#CBrgg z1_-I&f3?4`srNv~o%lNO%_HU@Bc_MOtG8{!0`y&7k;}hl+nwLiB5lWL;(thvrKQ0$ zCbXDBqjGdsjgrgz3rksM>}%TuU>ye|YB=$7NWW|K%~t&Xs8{!tq++i7kX)fRW18Z`lrnv6#ORXTtp z4hI~2p1o*v{0=MSv-$mOG}Duy-o{}RY?mVH{tCPWw$Y~Kw{?2HHKx|U1OKgR7tqO2 zPI%D@`gOib;nChjc6MB_9zf8J*MULTcdvo4&%+B}g;i(ymH zGJk6qM|vOuxQ)+s{~s?=wHr~j%93~>?u2r?ezVDPTNwPhdVQ^!7yzFm?;+Wv5X2F( zJY6E8?PPHLT((&R+WSL4(`q*|z^Jc9G_lZ-D2+pumQe!-+#F4y;)Wch){{>{k}xOmhazuBk~en9g(Vev zTm4Rx<1w;bQnP5Sw|%v{L;VPsHU?cVKGwhJJP75^{Yb&g@M1SM zn^kNzIh0bf1`BwkdDK(SR`Tuw6C;O~j16qIztEe5TZK=h6qWVoNZUOy~W%RG5GOvdjl#-%M*F?>*Ik11!J z$^T-cCo}TG?vw0Y(ZiJ`bj2^`%7M40PmIceH?o9Gtco1>s6mFOramVY!Hj!QhZTa0 z(Ka7LADZn%bS~HW+Jmvxxp(p?i?;!D!a2Y0M{xdMCOPWWGjog9*q@8x=CAvV9bI_~ zwm(?36=Bw^sq1Foye0Q+`m}i79`(^VtjXc+(LminDfy3mq&9j^7o$!d#e%$!|HxIx z;rp8i3sDxNjYV>}c1}N~`W@YJ))jJKxA5D!V^AXQ183fF+43S!MSN@WVW|&!#0V~}I=8ShTsDaqkudkg^O)uRae%NZncxB+|JCU)yOih} zcs@sXk?(`qf3d*6TRG*--G8+LbA53|c*h&C8UQ7h3c2d@K6!?E;}=02G;z{#LghuE zt$3((^_6Ie{iKnZ%jp(+Qq?{biSj&VKB|Z6rmk9;GXobAhCj#O+NB*de}EBI zM=DnG4M2a0{v(>VFcHmm3!7%o6lZW2X`gbd$S@P5G4+BLN>{#0Q+~WhExPW7r1ZW3>apP7`<=^$kCjWYFaq5mrTpZos@F=Ze zKCE*^e|OHJiR!`dh!EGVaW44n@k(ae;sLQXI=66iZQfU%!1q}X!96CJz{VowYHg-R-X$n32{B>m?bkvse0bLP63xpM!b{D)(wl%CJm0(ji+fpPoNRPBK@r2yun zj3&pS&G>cu=w>eE==>Fb(ck4)Hg?M4GJI7ez7IwhH&BI{mgq8+gm=1r+ph47G_r5T%Tnjj; z(OF>pXtTg8SJT`+T=)GwfYDP8Tf3N~R_fL{FC1W2PQ6ndc~+vD-pgdpaLa^LmBbo4 zZ;gynrr@=2+|f9N5G4&gphxY{mgrEf{$;>*4%Fb*R@uy zR9KX62gJaVr#MT3NAzP5%tAoxL2dq3_hs>%IYvkAQl7(fy6i$?0IRCr>;8+9SMR)U zgFOGJCDmf&1a?Kr+Yv@hGF;rwFvRSga27l?nXi0OXK|(8v@d4W;FMKRp&u62m@`kR zLQs=X5B4Q`QtH$G#38=rmZ|2pDcpbJQYd{gmgSIzuW-xEt#B9nvv-nu-1PxQ9h)%N zQQ$|Wozqgmozv|`kjbc+Om)}yrb%G8iUmuLdrLKqD||CLOm+I29o$vjgnb);ocWCK z8WI*)F7W#HYQ{nwi;S~rJ}LlY_@JDU9xkuK`O2{|eqMvR!8OP#YS@tdSpoONPb?4) zCRT2yON)^$J4-l}>5quKY23ZS&WUx|d(&tX?37216x`4ee5G(lc&8o7ZH(^k%8zfl z9KA*pc@-s}M9Rey-nf1E3*OY}%w9zWi9q|KzWoi|Kw~+3G%JNhH$MKymgk13KehUu zLv}vRj*)aQKzRyeKDcWUvEK5@`gCoxzE-~Plc$xL2}SeJR&-jorcBNqv&15A;k z&hGlMn?yv}CGUtpiHq@je)7|7VXIs`23mzR*&hjQ_W5h08;5N9Ng+|1PO*Wl@ zh`G?*V&_>R9-Il%d!9`NDK2rr`>sZw#l6tseJs$r%13}Q{`&sbuy^Me2S-;o&WnUNgkes+>3D_${)%Wk7t};_)WjR zF*g7Q*WthDTu?^Uq)Dw-67YFp{vHSS=cbB^v^J6qW#J^&2vIq#UnMJZArge@r?w|J z3}926ug)VycVy3gZ3cpCl-paMG^f>SNd7*3ug?a-tVWQZEbwxO!EoSB`JF$Zw;zSa zbsNwawfZtGj?Dn_?^1Dlt(G-vEe(#J6y-c2>B@aVKaht5;lf>R5^R^ zY&fWVj6T!$D}BDb<;x^hJG+bk(m#YG&4{sFeE$18nJ0l&e@FKC zYxv@qUM7myg`^F!=>EprRw&lgz?TiN4uKNRih+vWU_xc{#Is&bno$a_?MtKh)tlO? z)}$$8dm7&UFi*+8=K|rpSJEYhuT#MgHVYX(&3&IGvjD!p>^FbINLbTY!ss<6XI{o> z6=V5*`f-&xuD@eF%QPdx^r)A!`DU=21R~41Ks3(xW<|nJ_?lDLg0Z}C@QOiu< zYDq}A}_{ZA{j6ix7@o8K}PX0}}r&>F~ zo8X@wOGqGacKx>w`-9vx^4{*lDz6yt5zlR^oL#{5u@JKM0cKTSNY$t+>oiIMrEh92IF(uJ+Kg6jmH(`TWWePGx^Y|}# zq#vzy=U*_+Do!%jG}Z$@uRYpl)otF?@u&>Gp9IMRBxcigx9B`?;h`|D*?f>Ahtb3C zi{BAatCBm+lbdhCJ?6i5asq3aM&Txb2C~zQDWNu$w*e2Fw*mFI4~E}CLP=(h%o+1B z&p!V)Gt1I#XwTlT!UB&p=>)QUxwj@fTsNeDFZooLebq?q-)WXcIivfb^CS3Vc6H>J zfU!e&FcVYd@mx~C3J(>c<-)mk2pL4?p^g#q(Fxg2W@sNk6-7FdI*yO~sgXFu@R)CY zy`R8Ii@!u}@qqElf%=U-pR0n?ALfJ;7c_(G- zlM{BojH`-#OV&v)0t{S!tlwCHn+hqom1}w8 zuB}59!V4un^k_bpTlqzMl7AT^JoIXPMlwtUJC7DytR#|lcT$w?i&&2ubX4=}puIx+ z^Wr`td%ye$lb&K1X9vXGEA1MX;dI&cgTH

    !vw7lg_WCI>`#ESA**ys|m=Seoq!*+Y z#n97J^}A$Zlkw6fDG#N4zH>^gla)v8FysuzcU?^ol+cO9pgD*bx1(LJoY^kCPGZZ| zr!EbxWO=wf`tnjv{8&!9I(Fw4>F06l->@_D>+)6Y&f|aqP<4oc)X%5xMih3=FZnJk zZx}?W=D$b|%_&+CV>HoE*>@;FFq@X;wdCA>e|j-Afr0A;_QZwyyivn^2?Rf1eF85w z6!|y&VW1e){zIoh+U{u0PUDOj4iy}o{3-tVpr_`iui%xr$k5D**LaLw;Cr45|KPAh znwN2)lN1Vt^FlFZa}T9fUc$o2#2DI4Z}Y*RtpC6sZ10-`qKK$Fx9JNh2>Zzg^NXaS zs&>=XmH*A(R$GU4EPD^w-Rgc0Ga;t3+)?~RP>6mj1?@VDAx-bPk|sSruKA0QX0+U~ zVc(G%xQU4=o*Pa14;}WEc8bS&=g6}d5>xuwPhwTAx=D5g&eEUcsJ!!$bkYGL{8)?o z_ddfFqaX$uw0Cp0NjFCXTViY^uXg3&lQ6uPFtV#tD7_xngO)&~M83 zpLyk@@z0&^ZI(dBh)TAHk%fEk&dAn$_h%=r~k&BA0wq7%Bddj0vFesx^6R%LPiMrT7$mb@r{tG zl8w1*TMVXK%*{m7TjCH3{frD%jTr7Hwz8Vq*I?>vaD(C$TDXUs{uqd)_jyt zRbg7H$HL}FBor*CGhNJ`~?gsId&6w+ks3wSzfivtzpr};JyaGHO zii8XUE2}~f#cmslL>@9;HY){?rPlCALcY%A@H_$Psud+ zVMn#~)n6XpnXyi#I+7}NU*2v9oG*TjBs7mKM2AnNJYtVs1Rghe89TDie;>xX?wk%R z?A&boXtj451P5@!E#FoCqL{Vej2ctKb!Z~(6F=yV#BT!&cv1K_xr%wO|4uK+iEn+kpK;YkrbMZK3U8XmvQ6=7-B0^oq<_YB zY;MZ$Fq;t*Z~daR`8TgeAB~cB*#5D=NlDf&rre?^R*(jF5=HP`rki|-^K9(e3R?Eh z`t=zW)m60tc>4B8PKBq@=7rSVv~Rb|GNPp5QJv;SxUH~yJD|COyNc9cJbj7|eFVo@ zb>Qkh9F3rUv~VjW!ZNIcWFFp69lfNV>w2b2!fQrIN{v_3DENC=Z9Q#uR4^!W__X=c z(d;3wRjzq(K>FeOLlM7lL#@i&4X_OZIT+HnTO20RIdG3VaQ|PN{xpF9FYsxGlC$ds zc~NWdl2R|mjHr^*awkBQNXYVk3^$vpD}$G`sXr3I){t;fnpFDX5GC8B8f$tF$j>*9 z9LbCTTz`l(G=73nZ;)L6mIwVglNE=#%3zA$Sf<@e3SRL@CJ3J`(Fi;$sXRPXRY~#Z zYcj4dqPIxYs&+6264vM1>R9em4>^9a9)^?f#06z&Pyu-c1q8)i(300PcW`>*4aF}ay;Ff$rIqTff)zcSsq1}(ofQj8j08J8$HpXipsa;i zRUTsCI&@`NIZ!Ej{b2(+K;Zrqi-KRB_9AvL;L5_mps(H&eJ6)Lp`9l$GjAtn7lXF_ zW9m*p!Io`w^vWi!G|X5cF{iOSRSrq9@$SX9k9(sF_1pSSUU%&bOykRo>)@V?KI=H@V0-`o@2=rU*z-~a(v zsg%-i-UtbPg?C)yORIN(zVRid)Di0VKVhr}{9yLL|FrBG&|eoGIXSsP@QwE?u=Jlq zZ=1al)#gv|Ai=m7>2s7-v}#R8OGb|wvqK0Y?fXF`^8!SCXZvZ=2WFQX%KxL1-bsR2 zvnLp2WQ$QUG|KfHx^-kRzo7z z#Rx3YhGM-S27`zrAJRoupPY}EIuArD#1Ed>95y9=AhNRE99&p&O#6I=ltaIFP>BNk zzm?NI`@QI8>6+S% z?^aZM>*_rXp4Od-s*B15#B^P=z|NoUhfyfGYEG`l5e?Tk=@-@9KYNM`o!>1xq0X5R z2Wr`Uh6Hs@^cGz~K^@vq^51)6{$pRZn76}CpVm$zBMJoYFle#{QKsf z*Ab#GP4@j1jnU$4_66qF?r3A%KomILkgH}QBfk6-yhw^|H<6AW$j2N17ufKRcfT^` z#BvK61dB+l;WP=&^CwQ7iYKSayC<~TDMsE71lH)kV3B^5e2MfX8<4t^JfVZF2R`|S zjnLiEgHTN74|JyCJRQM@rs&liLUew3sayN2cn9!1jJyEVwXDA*#-z5-(lUZni+faL z+Y~jUzN+c)d`$eLFvjapN{6`m8mqCy(f-Wjc>dlhS19ag;A&xY{-tHkIw;}i)zI@a z4U0DXl!c&XiqfF}3mYEf;cxhQQPD*gX?`GtkH+;obHdV z@piCLmfwSb-@&KeoQ4mZ3>f~FVi`S;`1envPa2QY%EtfU;jsx}JUtUm*!(COf8|~M z{8Y{vP=%sOLLV9N4ZOkEt3)3A^m451lq~3w3Y;J63IV@aIbWQkPRE14$^8wQ$G^Fh zFPOwk5u-z%EDE#?iwwnRk)%7(8AD#iJm43V^HPoyrSJxvGy&3epKj7)Wu~ZtG|4+1 z7o1Er-W4vg8xXKNaJz8n2nV-k+=0j_+8#o#juVL2F{I;@TseU}u)B6o*kN}dkh!zg zAYdonTKv^toL>C(Up}@t`QWz~C;sl6i{pR$HSpEN@xS>h*1v`u?XROP{5smiZ-8&2 z{{J`B&)-75{cT)t-@*6)UHta>#QqQQ-Te?!`Vu7UztGmcytwfBAA_HuEq(=m7dY}N z<4V&q8GudcR#qxu{$SJ5LxBHWqHFpL)5H%*!NFZNqq(t67B@$lhbPqP;sjQ z2XV6sQ!CnGWqSrvcLp-(Ii0~fWK`&lB8BBnpHGtVPI|*5+bCzSPGq}6cel)a;!|aZ z`Mvz~ARnS5h={N}#0P(i$43_oe|(RfXP3?fJf=nLJPMgK`LtE==iDLRoBlr={2mWN z+>iYx46Z{mCNL4{K;u42Er;WksE1*{hnT)9O{5gg1vrPg4fg@$dW*=lNc1|)gu-sB zIG#tx^q_o&>oIK%D?3iS?oGs4CvX}bV&~exzKwD$t#5kza{*=ikvz;)J}duptH9;C zaG#~V%koh-8!fujkcblNZ+xDo2vLY0Qnt#cUpFq`23+B?UvFH5G}%qNEO%JC2iuV# zRT{M_JbWASLHN`l+M^2BAxw~|OGh{#7AR6>TzaHLvW}r$WANeF-NjB}x3B~8BD*sF z>X#6i7R;z^s|F7`Kcf5|j;q}Fp<8R=6-(2jRcpK;X^TiYE6t8!HM!hWJb^SDjOR9{W6edu}7Ntl!CHWmDgqfGv-HHR&?(idY0px+05wwI?F` zM@0=kZ-v81b%Oq-Y{<6->M$%=72)XU4Jbl7i8MB!^|JY>m3O>t+lU6bG(5yMFBE>afuW z4UP}aN&PU5mCg6n@(&XcCfWb^F+qwkHx_(lkIBceI8F`c~q7#lXfY5q(EYNWIILe+teql#?h9Fs> z$(79juTK{WTnGDD7Rt+}8*GCa6ycMHcOho%@_QS{zKL^VH{nn5zjzJ2DqMVsU5T&Y ze@$K$EZ;&>}ff_d;+ylFqsrpT@ARM;gl3XcIYl8`8jTJf)97aj^OA z#ihb!=1W9s$mL_$7rOxYX;CSD3MN-Q?AMa1i`$;p)16>T>BKEZv0r>$gxAGPQ9VXqTbFC>F#4`yhhuOMJ;!dDWR=15TRxJdJb%G2x9CFA+4Xz)f zM!Yilde%k2B2B`E^wF>;V%iny1T2v+rFBtyqJ)`K>$51XAM>U6C!YGxCRKm_C9>M-7WsoygnygS$=~{x9!VXGZiOvyu71RWr@Q;Ydx&03t zHiA4UYv4Q_=OrKIq%rgRYYm)78`}aJNI9k>+eXHYWa+EGeSFm5Ji5PAeg`i9qeRZj zzLOq1$0!9U`0j^Md&Mcv?*$7u2sIQnj7`;l9d__C30h|e}ZQSOp)>~@dTvG0}oR_S{< zdRq4$KDlmrj5I-{I8KTJq+NKog}oDZ1j^P9j=4)9TRW7lledK{CsDtHorK*r?8~ut z@-Et;9M0&jIN>S*himJdTcre6Dji4S!^%B0mzmI?tsrIQyC^+y=X;Lx@_<~$7z{RMalAv$(5I+ zm^X!$_uFSY@I2qPeg1cXiPn^SSz0DwCRdqoMOt@c!}4+&%P~tg%lG)mn3uDwpj*uuqz-7$?)F8l$Iuqs}DSwJO&N-cwTX}XM0Da+4H z!~!U*%dIT8XPSNbJdZ`wENVu$UiTfgwZ=^wryyt#-BmGjSem>m%!%RsU=2Cpy1!HJ z%9RGS;__BO1Sak)61JHH<^4I=a|h?}`?w#r4D4$Q-&e!s9R!@SmlPS?%+Iu}{w>|# zhu=qw0xMnqeZZTJxbKJznr2x?-M-uau{-O$<3dT#;ZOua)7qR%t5R;>P+ zA8a30TBJx3sVVYvKWKLv>I<-qWnz(|T0a5bWtY?H$FcfUyXGJ>9hP2@=u-sSvwIIh zWn5mvITFYYxq@YrC&NdgbQ~4C{UUwDY7fUUQ8SuMEr+wZ%UCO!;k}P$87)#p(Ryz= zkSc}CfD@DgMx+>>vPnrvi(ILI`SyE&+m7Uun)-29(~@OnEPCa!?n4suyi{coFB7pS zTP8$4Z56(JnR9nFzI5rg-TJ>?`91ifAmSyDQ9ALOi(E zBIW&@qx22tLC8cVD@VG4xgaaE3<^ZtPe!)w6vO`={yzlY{Xxmj>!V`ux8nP+znvmO zzKk-A#>~MU*PkL@W80uf4bBTZ4snQBUIW*XlOu&`O{hd`HqTIwhNx_@%TBx9h~*7rrsS*C^m%;mU&JCyS583qzz)Pprci*`7(44o zbNGmq(YpP5WU%_08@%4ZyrE2aC|1j9!WG*%ZT}dh`atE0BIPC-jWn53OqAMk>jtb6 zC9mZPoJBj{;kyqN6RtK}ye>!C%7{Wmyl_RLV0pZ387fOnv<@O(w#}C>55=p=mZ8$s ziPsAkeqZIwlZjR)UL;1ph);`oB46?)mgPjeM84eQts-LCVErOrk?VYla`QJjNMC?- ziI6p-fQfV!+Ikt3D39Al^digp;hU^A$WktvKx3}9g;*kY3ikFU!qWb zG|JP;w#b#R0f}<>_Y|gZj8&l@d&NA+6opH=2b*|RAX6k0El(7tERFQhtDYuTUb1?s zRJkaYmo3SgDOw#tvQ)Hs+48dF$0yf5&gpJ_^ zYzSXtlw*;wPR4?WHFT_)jSu5=79wQbT|+-!ET<3edfJ87B4iOSVm*|!cK0++U-9(v zmPgri977n7R>Sc99cKf1ELW%8Pyx%!4zWAe3~8vkNE;hTHd5N~v0;)1iw&pX8qz9d zMrnv~ZifXMz(E>dx3A3o#zvpVl;aNZf-r!B5QHHjUA;I?Jcng)|0Y2yvdfP(8~m?1 zsJL>3-yzd|88pP*_j)*_52u7Or29V$x4W@H8TOm=@Hd+Mrl;@&s;h(m>EbH+v5bfb zL}Wmf7A_wq+$XL!QYcBd&hMMHPZJ$KW@!~>b7|5 zPakbE`ucvVOlw<$M1fwOW>Vf!=rNJX(u^^&@=%(xbYfCvgWofmGHi0v21UvyE>*l# zjp2pLWQxS~hzVAP$&raqFHAXBb{;L_l}ndmjg0X^ z>+fhRP1EhJhZkm}kE~I`e59=16{&zJ8lE1~G@cV1IfpJ#rlU?|Ycmr^`!i3;j8cW8aT`M>{xo`yM6Qiet$4z9Rly z#>mb`sDGPF>+Y(7XD33&X0y_c(!I4E|cF^FDga1iJvY*|Pw+go%O!xRa54Jl| zNb?KG-yv)G8v#GZ@X;X!*M0?cfDp@!^8^J;z%oRJ?D1vDTu-=)vcme1{lGAvFIFa4 zo`6#x?1QTts6RIw`&j3c2+Wgd5oBtFC{UCy=G{XZV7ylt%2dP36gC@eY?Y!Bsvddy zv*%HW6X2(pDLxtK1%Vawe{9r$mK{Bt*lJzZY<)Z#HsRqo>3p! zbWagPYPfMkyru+<^b(fScTFlW5@xgr*pObv^08u5G!g6XhY?}Fz zGuy`2V>rKu`7VlvMse^U!BX-l+)~iE_VU*70+;1`u7Iw=uG|y&R()Nj%s`4}VEf>{ zvtyF%9BtjYn=Hb@E~nZ>Ydli$>s2VQFUZe9@bd;uQD?u#HrB1JUE3vnE`HlWc3y`9 zWM>%`p;8f|94&`pmF%Z`!Ez<4 zlo6vz2gL+vEZq~!WMtbJRiFx-Z_4JJ+CPo@&tZ8TQJ|7CHg3w+P10DtMW)Jt^@5K^ zMWQ%mc$pf*3sV!Pz8kQS4F5^WnOvDL^}=O&eKgC;jtSNnQL3i!!nI7iyf{T#Id1=3 zVM@G=CQebZGMZ#%Jm3Y(3zseXv{o*cFb^YP&z;jTVPo=T%Z8<8qO}Z8q)SpF zV`ZFJB4gwRNd&B>mGn%w#?mv<>e%SlqomoycAlEv2^$1$J<8ZTyp#>mXj(6IIfDqB zBNeMcAE_IXZL=zT>Fbcb(KeY0Twi0dt_t$SfInq1}ioTT*m3!L7;(~Hy?QKrV2k}MM;zIw;fB3_sxt=v$& zV%bcZa?w(3KlyeI5wA?HRIqya%F0aP$B3C!#W7)-c=@!sJR{wZ!|`AlPmv&D875#6 zFKJU`V%Ed)0Oc;Lpxu|foEf&AmWknU-7d;mMkZql^V--nMe|I|co*+Qt>3<(a^?l@ z{>TK)@RB2C0cUmg?BHAnjWz^v2ivbob`HykfER-xy(fFGMOAkRpe6Z#B5S40e;neMeX(c7+XLnH(=FS(*_A#gmm! zNw&QvLNvy(yzMKKA>zws`D1w5IS3{?Q~2_B%$Bdq_8JO#CQN*K z(AG_m4g)V)8BL&U9F}$mHi4QKv3lX+Zv@+JO0Kf>OsvM3lBp(9%ge-d-^Dmrn3Qqh znzJ9C!vkO3=6J4g!OHT87pyVH2IpsKCSBw?;?gqFGFln(+kt$|p_8&iz#^H9O_52N z!pK=0L}?S>c{$6(E6SSEOWG>*V#ak3(1o&jq(L?^9-eKK2gM`pm=#v zQu%_I)y5h?es&>;bE*3RG4i*JJ)p;L?BHCkpkbb*O2>SLgNf%Mf^@3q$|1phXUFu6 z{tYfYhZ1zVvbRo5z?7?AKxXp9OuTG-7(_`SO!w#7mB;^kj3+lB92~E-iS-1&9!4d^ z$i-z2@tl30-|u12WN66KXL@R0nej7+8spJ$ATlV>V#860;Nh3P9h z|0iU^)EF19mNwkZA6vxB$OLN{nQ)CEgYySnlEWWN3j3!gew5aK{ftDuwEHniT1GZj z%*ZBrUB(T0v{#8~Ub2?qrOKjOUb0NWOyGR^xV_Ow$a<_yCQ@V6@gRwe?X5#NPC1bA2;GSLrOUoPte1|ws`~D7s{r*j0ywGHL$r&$y z2YD>};owCn(u>o<$@YC1WXGDKk0|w+Fh#r!d3l=8a9`QJ4SU7SD){kI%NYuk;masZ z#PTjdi%_XJP34(X*?Oc&S1(?fL=lsuXdMYGUBCd6{3{+ zCoY(wcP`66PFln;YB!oo7yw#&hHF8EWz>Bod51wJP*ZpbnoBQ6E!s36zkN?8QB(8+HBBZ~^J#5m3vBcv zwJN<><$Q7be+#*65id&185gcb7U9au_2kl&Gf%jTdE({MRlFce!VLK`amw-xFIZEw zA4tRhfTqagi(Ql^U#kjOMk-;1@)dD{73Hi7TS)iZD5QCbjFBf#L#PUzOm8sJo|G|M zdZA9v2QeCB)+B#plu74fpGaodW^7-NwVz?S5Bf&NIPt@V-4`-R>8jC`aLJaGOMzwRMAN#=zu^xQf8F# z67=Mm94{hMc^@TSezJUzFFPPe(dv{a6r`skDVvGX(`S)act#kOAz#>PQsrgHOH|DB z`7xd3f}{+}vi(ZREyItyA}?I@XhcgS3hSORxw7;uuSu5TCCSTElr9qwUuK*Zq59Hg z{T#x52Cg8TgtECPId5gx#fwzw+G%Os;Ce4!9$)4lWYQJMBy5U-j4{MI zF>cJ0Nfw#PBbkVe;pNN3YYHz~W7M*4UKb-1vnfQzoP-fc4`~Mnm9j(M6XrO>$Xp(s z>t&G38r>tEcvZn-IbVip5CG5``zU#>OkeI#1&&!FC=zL5#3d6z1KV6bB!=fQPPTo9 zMv(NA^B&oFq6WU}3cmle%nI1=D#%VI24lo+yWi)5iTiBWaZ^E=K_(25Y`gm*6P!kV z4kVV%(tY{EMumu?pJ6p`l%3@=J9h+8C8%%`e70!Y7TAuRWD7MIL&2Ru*S$F zN|_Qb%WE`gvV9LF3d=h^e!ITxG+wquxRNr)c$sPO%1FB!m!U${q^YK1S>bXMuZR~e z&se?}u9)uS%O-TSsVw}2t~$|cFJNtwS6*0JPR5EkB+r*~c@>+CPF{h;!Ig@p;nUKb zXn8@KLoZ%j&hXoCofUE5456%r^paO6^pi>cjFRSITFH--11edg6lvwVW4Lt7^U*zx z@HMQvwTJ1E_;3TI&SSEtbOI9cY@ab*VR-;C7zOgMv<#>(x1C@hxQ_N6HvIp#A`(2t zaKFlU*&FzNd*XRyWmaK)KTjdOqez68u85b7F`j&^=SEWIpm-q}Zj)6ljX=+CEL#pY~y(vXf%lVZQsk_v3npllpX=%6T0mzI>cq3N1xXVQiFLplq7}n zM2Vsp5nC>DCHcNQw|B?5fb$|K`wT^l)QLfrOq3!fLv@{Pl9MEb<&-E&7OCRkb!}fw zsv=r05(Uck>(ioCP0@>0gkoe7ElQNF4<%?cz2tFuC^O68HlAUbF_AKX@?_ +

    +
    + +
    + + +
    + +
    +

    Overview

    +

    Content for Overview tab goes here...

    +
    +
    +
    {% include "bltv/includes/create_or_update_course_form.html" %}
    +
    +
    + + +{% endblock content %} diff --git a/website/templates/bltv/includes/create_or_update_course_form.html b/website/templates/bltv/includes/create_or_update_course_form.html new file mode 100644 index 000000000..09bd67908 --- /dev/null +++ b/website/templates/bltv/includes/create_or_update_course_form.html @@ -0,0 +1,146 @@ + + +
    +

    Course Details

    +
    + {% csrf_token %} + +
    + + +
    +
    + + +
    +
    + + +
    + {% if course.thumbnail %} + Course Thumbnail + {% endif %} +
    +
    +
    + + +
    +
    + + +
    + +
    + +
    +
    +
    + + diff --git a/website/templates/bltv/instructor_dashboard.html b/website/templates/bltv/instructor_dashboard.html index 0d7114c69..e258f8404 100644 --- a/website/templates/bltv/instructor_dashboard.html +++ b/website/templates/bltv/instructor_dashboard.html @@ -1,102 +1,57 @@ {% extends "base.html" %} +{% load static %} {% block content %} {% include "includes/sidenav.html" %} - -

    - Username's Dashboard + {{ user.username|capfirst }}'s Courses

    - -
    {% endblock content %} diff --git a/website/views/bltv_education.py b/website/views/bltv_education.py index 5b5fa6e6c..8df43b4c4 100644 --- a/website/views/bltv_education.py +++ b/website/views/bltv_education.py @@ -9,11 +9,23 @@ def instructor_dashboard(request): template = "bltv/instructor_dashboard.html" tags = Tag.objects.all() - context = {"tags": tags} - + user_profile = request.user.userprofile + courses = Course.objects.filter(instructor=user_profile) + context = {"tags": tags, "courses": courses} return render(request, template, context) +def edit_course(request, course_id): + template = "bltv/edit_course.html" + tags = Tag.objects.all() + try: + course = Course.objects.get(id=course_id) + context = {"course": course, "tags": tags} + return render(request, template, context) + except Course.DoesNotExist: + return JsonResponse({"success": False, "message": "Course not found"}, status=404) + + @require_POST @login_required(login_url="/accounts/login") def create_or_update_course(request): From 8db380cc5f31f2f49af21955d8f1d2a4061986c0 Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Sat, 22 Feb 2025 03:47:37 +0530 Subject: [PATCH 03/21] UI improvements --- .../templates/bltv/includes/create_or_update_course_form.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/templates/bltv/includes/create_or_update_course_form.html b/website/templates/bltv/includes/create_or_update_course_form.html index 09bd67908..cfd209add 100644 --- a/website/templates/bltv/includes/create_or_update_course_form.html +++ b/website/templates/bltv/includes/create_or_update_course_form.html @@ -137,7 +137,7 @@

    {{ tag.name }}

    if (!result.success) { alert(result.message); } else { - window.location.href = `/course-detail/${result.course_id}/`; + alert("Course {% if course %} edited {% else %} created {% endif %} successfully."); } } catch (error) { alert('An error occurred. Please try again later.'); From b778cef07a53238254303af778740ffbea208cc8 Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Sat, 22 Feb 2025 16:26:04 +0530 Subject: [PATCH 04/21] View course setup and ui enhancements --- blt/urls.py | 10 ++- .../bltv/includes/course_content.html | 36 ++++++++ .../create_or_update_course_form.html | 1 + .../templates/bltv/instructor_dashboard.html | 73 +++++++++------- website/templates/bltv/view_course.html | 86 +++++++++++++++++++ website/views/bltv_education.py | 24 +++++- 6 files changed, 195 insertions(+), 35 deletions(-) create mode 100644 website/templates/bltv/includes/course_content.html create mode 100644 website/templates/bltv/view_course.html diff --git a/blt/urls.py b/blt/urls.py index ab7189704..f2e42a5f7 100644 --- a/blt/urls.py +++ b/blt/urls.py @@ -41,7 +41,13 @@ ) from website.views.bitcoin import batch_send_bacon_tokens_view, pending_transactions_view from website.views.blog import PostCreateView, PostDeleteView, PostDetailView, PostListView, PostUpdateView -from website.views.bltv_education import create_or_update_course, edit_course, instructor_dashboard +from website.views.bltv_education import ( + create_or_update_course, + edit_course, + get_course_content, + instructor_dashboard, + view_course, +) from website.views.company import ( AddDomainView, AddHuntView, @@ -592,6 +598,8 @@ path("bltv/instructor_dashboard/", instructor_dashboard, name="instructor_dashboard"), path("bltv/instructor_dashboard/edit-course//", edit_course, name="edit_course"), path("bltv/instructor_dashboard/create-or-update-course/", create_or_update_course, name="create_or_update_course"), + path("bltv/view-course//", view_course, name="view_course"), + path("bltv/get-course-content//", get_course_content, name="get_course_content"), re_path(r"^gsoc/$", TemplateView.as_view(template_name="gsoc.html"), name="gsoc"), re_path( r"^privacypolicy/$", diff --git a/website/templates/bltv/includes/course_content.html b/website/templates/bltv/includes/course_content.html new file mode 100644 index 000000000..25fb868ff --- /dev/null +++ b/website/templates/bltv/includes/course_content.html @@ -0,0 +1,36 @@ + +
    +
    + {% for section in sections %} +
    +

    {{ section.title }}

    +
    + {% for lecture in section.lectures.all %} +
    +

    {{ lecture.title }}

    +

    Type: {{ lecture.get_content_type_display }}

    + {% if lecture.video_url %} +

    + Video URL: {{ lecture.video_url }} +

    + {% endif %} + {% if lecture.live_url %} +

    + Live URL: {{ lecture.live_url }} +

    + {% endif %} + {% if lecture.scheduled_time %}

    Scheduled Time: {{ lecture.scheduled_time }}

    {% endif %} + {% if lecture.recording_url %} +

    + Recording URL: {{ lecture.recording_url }} +

    + {% endif %} + {% if lecture.content %}

    Content: {{ lecture.content }}

    {% endif %} + {% if lecture.duration %}

    Duration: {{ lecture.duration }} minutes

    {% endif %} +
    + {% endfor %} +
    +
    + {% endfor %} +
    +
    diff --git a/website/templates/bltv/includes/create_or_update_course_form.html b/website/templates/bltv/includes/create_or_update_course_form.html index cfd209add..55493a542 100644 --- a/website/templates/bltv/includes/create_or_update_course_form.html +++ b/website/templates/bltv/includes/create_or_update_course_form.html @@ -138,6 +138,7 @@

    {{ tag.name }}

    alert(result.message); } else { alert("Course {% if course %} edited {% else %} created {% endif %} successfully."); + window.location.reload(); } } catch (error) { alert('An error occurred. Please try again later.'); diff --git a/website/templates/bltv/instructor_dashboard.html b/website/templates/bltv/instructor_dashboard.html index e258f8404..0ac1c968f 100644 --- a/website/templates/bltv/instructor_dashboard.html +++ b/website/templates/bltv/instructor_dashboard.html @@ -3,26 +3,32 @@ {% block content %} {% include "includes/sidenav.html" %}
    -
    +

    {{ user.username|capfirst }}'s Courses

    +
    -
    -
    +
    +
    {% for course in courses %} -
    - {{ course.title }} -
    +
    + + {{ course.title }} + +

    {{ course.title }}

    -

    {{ course.description|truncatewords:20 }}

    -
    + +
    {{ course.description|truncatewords:25 }}
    + +
    Level: @@ -35,7 +41,8 @@

    {{ course.title }}

    {% endif %}
    - {% endfor %}
    - - - -
    + + {% endblock content %} diff --git a/website/templates/bltv/view_course.html b/website/templates/bltv/view_course.html new file mode 100644 index 000000000..abeec3a14 --- /dev/null +++ b/website/templates/bltv/view_course.html @@ -0,0 +1,86 @@ +{% extends "base.html" %} +{% load static %} +{% block content %} + {% include "includes/sidenav.html" %} +
    +
    +
    + Course Thumbnail +
    +

    + + {{ course.title|capfirst }} +

    +

    {{ course.description|truncatewords:50 }}

    +
    + + + Instructor: {{ course.instructor.user.username }} + + + + Updated: {{ course.updated_at|date:"F d, Y" }} + +
    +
    + + + Level: + {% if course.level == "BEG" %} + {{ course.get_level_display }} + {% elif course.level == "INT" %} + {{ course.get_level_display }} + {% elif course.level == "ADV" %} + {{ course.get_level_display }} + {% endif %} + +
    +
    + {% for tag in course.tags.all %} + {{ tag.name }} + {% endfor %} +
    +
    +
    +
    + +
    +

    Course content

    +
    +
    + + + +
    +
    +
    +
    + +{% endblock content %} diff --git a/website/views/bltv_education.py b/website/views/bltv_education.py index 8df43b4c4..ccefcb067 100644 --- a/website/views/bltv_education.py +++ b/website/views/bltv_education.py @@ -1,6 +1,6 @@ from django.contrib.auth.decorators import login_required from django.http import JsonResponse -from django.shortcuts import render +from django.shortcuts import get_object_or_404, render from django.views.decorators.http import require_POST from website.models import Course, Tag, UserProfile @@ -26,6 +26,28 @@ def edit_course(request, course_id): return JsonResponse({"success": False, "message": "Course not found"}, status=404) +def view_course(request, course_id): + template = "bltv/view_course.html" + course = get_object_or_404(Course, id=course_id) + context = {"course": course} + return render(request, template, context) + + +def get_course_content(request, course_id): + if request.method == "GET": + course = get_object_or_404(Course, id=course_id) + sections = course.sections.all().order_by("order") + + return render( + request, + "bltv/includes/course_content.html", + { + "course": course, + "sections": sections, + }, + ) + + @require_POST @login_required(login_url="/accounts/login") def create_or_update_course(request): From f646ff4fc976e857b0b1646da56bc49696c84e2d Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Sat, 22 Feb 2025 19:39:02 +0530 Subject: [PATCH 05/21] Course content view and UI --- website/admin.py | 2 + ...t_alter_lecture_scheduled_time_and_more.py | 31 ++++ website/models.py | 8 +- website/templates/bltv/edit_course.html | 48 +++++-- .../bltv/includes/course_content.html | 134 ++++++++++++++---- .../create_or_update_course_form.html | 2 +- .../templates/bltv/instructor_dashboard.html | 11 +- website/templates/bltv/view_course.html | 16 ++- 8 files changed, 196 insertions(+), 56 deletions(-) create mode 100644 website/migrations/0206_alter_lecture_content_alter_lecture_scheduled_time_and_more.py diff --git a/website/admin.py b/website/admin.py index bf2d627c8..b62f573ef 100644 --- a/website/admin.py +++ b/website/admin.py @@ -44,6 +44,7 @@ Rating, Repo, Room, + Section, SlackBotActivity, SlackIntegration, Subscription, @@ -603,6 +604,7 @@ class RoomAdmin(admin.ModelAdmin): admin.site.register(Lecture) admin.site.register(LectureStatus) admin.site.register(Course) +admin.site.register(Section) admin.site.register(Enrollment) admin.site.register(Rating) admin.site.register(GitHubIssue, GitHubIssueAdmin) diff --git a/website/migrations/0206_alter_lecture_content_alter_lecture_scheduled_time_and_more.py b/website/migrations/0206_alter_lecture_content_alter_lecture_scheduled_time_and_more.py new file mode 100644 index 000000000..dba51f00b --- /dev/null +++ b/website/migrations/0206_alter_lecture_content_alter_lecture_scheduled_time_and_more.py @@ -0,0 +1,31 @@ +# Generated by Django 5.1.4 on 2025-02-22 11:29 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("website", "0205_course_enrollment_lecture_lecturestatus_rating_and_more"), + ] + + operations = [ + migrations.AlterField( + model_name="lecture", + name="content", + field=models.TextField(default=" "), + preserve_default=False, + ), + migrations.AlterField( + model_name="lecture", + name="scheduled_time", + field=models.DateTimeField(blank=True, null=True), + ), + migrations.AlterField( + model_name="section", + name="course", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="sections", to="website.course" + ), + ), + ] diff --git a/website/models.py b/website/models.py index ce34dad67..46072ed20 100644 --- a/website/models.py +++ b/website/models.py @@ -1713,14 +1713,14 @@ def __str__(self): class Section(models.Model): title = models.CharField(max_length=200) - course = models.ForeignKey(Course, on_delete=models.CASCADE, related_name="sections", null=True, blank=True) + course = models.ForeignKey(Course, on_delete=models.CASCADE, related_name="sections") order = models.PositiveIntegerField() class Meta: ordering = ["order"] def __str__(self): - return f"{self.course.title} - {self.title}" + return f"{self.order}. {self.title} - {self.course.title} " class Lecture(models.Model): @@ -1731,9 +1731,9 @@ class Lecture(models.Model): content_type = models.CharField(max_length=10, choices=CONTENT_TYPES) video_url = models.URLField(null=True, blank=True) live_url = models.URLField(null=True, blank=True) - scheduled_time = models.DateTimeField() + scheduled_time = models.DateTimeField(null=True, blank=True) recording_url = models.URLField(null=True, blank=True) - content = models.TextField(null=True, blank=True) # For document-type content + content = models.TextField() # For document-type content # Quiz support can be added later duration = models.PositiveIntegerField(help_text="Duration in minutes", null=True, blank=True) tags = models.ManyToManyField(Tag, related_name="lectures", blank=True) diff --git a/website/templates/bltv/edit_course.html b/website/templates/bltv/edit_course.html index dceaab667..0a34305e7 100644 --- a/website/templates/bltv/edit_course.html +++ b/website/templates/bltv/edit_course.html @@ -17,13 +17,17 @@

    by {{ user.username }} Last updated: {{ course.updated_at|date:"F d, Y" }} + + + Back to Dashboard +
    -
    - @@ -32,14 +36,16 @@

    Details

    - -
    -

    Overview

    -

    Content for Overview tab goes here...

    +
    +
    + + + +
    +
    + class="tabcontent p-4 bg-white flex shadow-sm items-center justify-center hidden">
    {% include "bltv/includes/create_or_update_course_form.html" %}
    @@ -69,7 +75,31 @@

    Overview

    }); }); - openTab("overview"); + openTab("course-content"); + }); + + document.addEventListener("DOMContentLoaded", function() { + const loader = document.getElementById("loader"); + const contentSections = document.getElementById("content-sections"); + + const startTime = Date.now(); + + fetch("{% url 'get_course_content' course.id %}") + .then(response => response.text()) + .then(html => { + const elapsedTime = Date.now() - startTime; + const delay = Math.max(2000 - elapsedTime, 0); + + setTimeout(() => { + contentSections.innerHTML = html; + loader.classList.add("hidden") + }, delay); + }) + .catch(error => { + setTimeout(() => { + contentSections.innerHTML = "

    Failed to load course content.

    "; + }, 2000); + }); }); {% endblock content %} diff --git a/website/templates/bltv/includes/course_content.html b/website/templates/bltv/includes/course_content.html index 25fb868ff..7200fc8a4 100644 --- a/website/templates/bltv/includes/course_content.html +++ b/website/templates/bltv/includes/course_content.html @@ -1,36 +1,110 @@ - -
    -
    - {% for section in sections %} -
    -

    {{ section.title }}

    -
    +
    + - {% endfor %} + {% endfor %} + +
    +
    +
    + {% for section in sections %} +
    +
    +

    {{ section.title }}

    +
    +
    + {% for lecture in section.lectures.all %} +
    +
    +

    {{ lecture.title }}

    +
    + {% if lecture.duration %} + + {{ lecture.duration }} min + + {% endif %} + + {{ lecture.get_content_type_display }} + +
    +
    +
    + {% if lecture.video_url %} + + {% if "youtube.com" in lecture.video_url or "youtu.be" in lecture.video_url %} + View + {% else %} + View + {% endif %} + + {% endif %} + {% if lecture.live_url %} + + Live Session + + {% endif %} + {% if lecture.recording_url %} + + Recording + + {% endif %} + {% if lecture.scheduled_time %} + + {{ lecture.scheduled_time|date:"M d, H:i" }} + + {% endif %} +
    + {% if lecture.content %} +
    {{ lecture.content }}
    + {% endif %} +
    + {% endfor %} +
    +
    + {% endfor %} +
    diff --git a/website/templates/bltv/includes/create_or_update_course_form.html b/website/templates/bltv/includes/create_or_update_course_form.html index 55493a542..4f780d5c1 100644 --- a/website/templates/bltv/includes/create_or_update_course_form.html +++ b/website/templates/bltv/includes/create_or_update_course_form.html @@ -1,7 +1,7 @@ -
    +

    Course Details

    Add course
    -
    {% for course in courses %}
    {{ course.title }}
    -

    {{ course.title }}

    - + +

    {{ course.title }}

    +
    {{ course.description|truncatewords:25 }}
    -
    @@ -41,7 +40,6 @@

    {{ course.title }}

    {% endif %}
    -
    {% for tag in course.tags.all %} @@ -51,7 +49,6 @@

    {{ course.title }}

    {% endfor %}
    - diff --git a/website/templates/bltv/view_course.html b/website/templates/bltv/view_course.html index abeec3a14..2fcfcce82 100644 --- a/website/templates/bltv/view_course.html +++ b/website/templates/bltv/view_course.html @@ -4,7 +4,7 @@ {% include "includes/sidenav.html" %}
    - - -
    -

    Course content

    +
    From d22136352e3b1d9724c75f179ba39d0506c04470 Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Sun, 23 Feb 2025 19:02:46 +0530 Subject: [PATCH 06/21] Finalise course view UI --- .../migrations/0209_merge_20250223_1248.py | 12 ++ .../bltv/includes/course_content.html | 106 +++++++++++------- website/views/bltv_education.py | 9 +- 3 files changed, 81 insertions(+), 46 deletions(-) create mode 100644 website/migrations/0209_merge_20250223_1248.py diff --git a/website/migrations/0209_merge_20250223_1248.py b/website/migrations/0209_merge_20250223_1248.py new file mode 100644 index 000000000..520cbc2b0 --- /dev/null +++ b/website/migrations/0209_merge_20250223_1248.py @@ -0,0 +1,12 @@ +# Generated by Django 5.1.4 on 2025-02-23 12:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + dependencies = [ + ("website", "0206_alter_lecture_content_alter_lecture_scheduled_time_and_more"), + ("website", "0208_alter_points_created"), + ] + + operations = [] diff --git a/website/templates/bltv/includes/course_content.html b/website/templates/bltv/includes/course_content.html index 7200fc8a4..9222f54d4 100644 --- a/website/templates/bltv/includes/course_content.html +++ b/website/templates/bltv/includes/course_content.html @@ -1,63 +1,69 @@
    -
  • -
  • - +
  • +
    - BLTV + Education
  • diff --git a/website/templates/sitemap.html b/website/templates/sitemap.html index f256411da..4bfecf695 100644 --- a/website/templates/sitemap.html +++ b/website/templates/sitemap.html @@ -118,7 +118,7 @@

    Sitemap

  • - BLTV + Education
  • diff --git a/website/views/bltv_education.py b/website/views/education.py similarity index 86% rename from website/views/bltv_education.py rename to website/views/education.py index d8076c8f7..16c2b314d 100644 --- a/website/views/bltv_education.py +++ b/website/views/education.py @@ -12,8 +12,8 @@ from website.models import Course, Enrollment, Lecture, LectureStatus, Section, Tag, UserProfile -def bltv_home(request): - template = "bltv/bltv.html" +def education_home(request): + template = "education/education.html" user = request.user if user.is_authenticated: is_instructor = ( @@ -31,17 +31,18 @@ def bltv_home(request): @login_required(login_url="/accounts/login") def instructor_dashboard(request): - template = "bltv/instructor_dashboard.html" + template = "education/instructor_dashboard.html" tags = Tag.objects.all() user_profile = request.user.userprofile courses = Course.objects.filter(instructor=user_profile) - context = {"tags": tags, "courses": courses} + standalone_lectures = Lecture.objects.filter(instructor=user_profile, section__isnull=True) + context = {"tags": tags, "courses": courses, "standalone_lectures": standalone_lectures} return render(request, template, context) @instructor_required def edit_course(request, course_id): - template = "bltv/dashboard_edit_course.html" + template = "education/dashboard_edit_course.html" tags = Tag.objects.all() try: course = Course.objects.get(id=course_id) @@ -68,7 +69,7 @@ def enroll(request, course_id): def view_course(request, course_id): - template = "bltv/view_course.html" + template = "education/view_course.html" course = get_object_or_404(Course, id=course_id) context = { "course": course, @@ -76,9 +77,33 @@ def view_course(request, course_id): return render(request, template, context) +@login_required(login_url="/accounts/login") +def view_lecture(request, lecture_id): + template = "education/view_lecture.html" + lecture = get_object_or_404(Lecture, id=lecture_id) + context = { + "lecture": lecture, + } + return render(request, template, context) + + +@login_required(login_url="/accounts/login") +def create_standalone_lecture(request): + template = "education/create_standalone_lecture.html" + return render(request, template) + + +@login_required(login_url="/accounts/login") +def edit_standalone_lecture(request, lecture_id): + template = "education/edit_standalone_lecture.html" + lecture = get_object_or_404(Lecture, id=lecture_id) + context = {"lecture": lecture} + return render(request, template, context) + + @login_required(login_url="/accounts/login") def study_course(request, course_id): - template = "bltv/study_course.html" + template = "education/study_course.html" course = get_object_or_404(Course, id=course_id) @@ -87,7 +112,7 @@ def study_course(request, course_id): if not enrollment: messages.error(request, "You are not enrolled in this course.") - return redirect("bltv") + return redirect("education") course_progress = enrollment.calculate_progress() @@ -178,7 +203,7 @@ def course_content_management(request, course_id): "lecture_types": lecture_types, } - return render(request, "bltv/content_management.html", context) + return render(request, "education/content_management.html", context) # Section CRUD operations @@ -232,13 +257,17 @@ def delete_section(request, section_id): # Lecture CRUD operations -@instructor_required @require_POST def add_lecture(request, section_id): - """Add a new lecture to a section""" - section = get_object_or_404(Section, id=section_id) - course_id = section.course.id + """Add a new lecture to a section, else standalone""" + print("Section ID:", section_id, type(section_id)) + if section_id == 0: + section = None + else: + section = get_object_or_404(Section, id=section_id) + course_id = section.course.id + user_profile = request.user.userprofile title = request.POST.get("title") content_type = request.POST.get("content_type") description = request.POST.get("description") @@ -246,7 +275,13 @@ def add_lecture(request, section_id): duration = request.POST.get("duration") or None lecture = Lecture( - title=title, section=section, content_type=content_type, order=order, description=description, duration=duration + title=title, + instructor=user_profile, + section=section, + content_type=content_type, + order=order, + description=description, + duration=duration, ) if content_type == "VIDEO": @@ -262,7 +297,10 @@ def add_lecture(request, section_id): messages.success(request, f"Lecture '{title}' was added successfully!") - return redirect("course_content_management", course_id=course_id) + if section: + return redirect("course_content_management", course_id=course_id) + else: + return redirect("instructor_dashboard") @instructor_required @@ -270,11 +308,16 @@ def add_lecture(request, section_id): def edit_lecture(request, lecture_id): """Edit an existing lecture""" lecture = get_object_or_404(Lecture, id=lecture_id) - course_id = lecture.section.course.id + + is_standalone = True + if lecture.section: + is_standalone = False + course_id = lecture.section.course.id lecture.title = request.POST.get("title") lecture.content_type = request.POST.get("content_type") lecture.description = request.POST.get("description") + lecture.content = request.POST.get("content", "") lecture.duration = request.POST.get("duration") or None if lecture.content_type == "VIDEO": @@ -282,15 +325,12 @@ def edit_lecture(request, lecture_id): lecture.live_url = None lecture.scheduled_time = None lecture.recording_url = None - lecture.content = "" elif lecture.content_type == "LIVE": lecture.live_url = request.POST.get("live_url") lecture.scheduled_time = request.POST.get("scheduled_time") or None lecture.recording_url = request.POST.get("recording_url") lecture.video_url = None - lecture.content = "" elif lecture.content_type == "DOCUMENT": - lecture.content = request.POST.get("content") lecture.video_url = None lecture.live_url = None lecture.scheduled_time = None @@ -299,7 +339,10 @@ def edit_lecture(request, lecture_id): lecture.save() messages.success(request, f"Lecture '{lecture.title}' was edited successfully!") - return redirect("course_content_management", course_id=course_id) + if is_standalone: + return redirect("view_lecture", lecture_id) + else: + return redirect("course_content_management", course_id=course_id) @instructor_required @@ -421,7 +464,7 @@ def get_course_content(request, course_id): return render( request, - "bltv/includes/view_course_content.html", + "education/includes/view_course_content.html", { "course": course, "sections": sections, @@ -432,7 +475,6 @@ def get_course_content(request, course_id): ) -@instructor_required @require_POST def create_or_update_course(request): try: From 68b3dbeb90488ba3795288c780b835a752c542f8 Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Sat, 1 Mar 2025 17:10:34 +0530 Subject: [PATCH 20/21] Fix migrations --- ...e_lecturestatus_rating_section_and_more.py | 6 ++++++ website/migrations/0212_lecture_instructor.py | 20 ------------------- 2 files changed, 6 insertions(+), 20 deletions(-) delete mode 100644 website/migrations/0212_lecture_instructor.py diff --git a/website/migrations/0211_course_lecture_lecturestatus_rating_section_and_more.py b/website/migrations/0211_course_lecture_lecturestatus_rating_section_and_more.py index 7c9bd49e9..36780145f 100644 --- a/website/migrations/0211_course_lecture_lecturestatus_rating_section_and_more.py +++ b/website/migrations/0211_course_lecture_lecturestatus_rating_section_and_more.py @@ -64,6 +64,12 @@ class Migration(migrations.Migration): ("content", models.TextField()), ("duration", models.PositiveIntegerField(blank=True, help_text="Duration in minutes", null=True)), ("order", models.PositiveIntegerField()), + ( + "instructor", + models.ForeignKey( + blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to="website.userprofile" + ), + ), ("tags", models.ManyToManyField(blank=True, related_name="lectures", to="website.tag")), ], options={ diff --git a/website/migrations/0212_lecture_instructor.py b/website/migrations/0212_lecture_instructor.py deleted file mode 100644 index 700c18f10..000000000 --- a/website/migrations/0212_lecture_instructor.py +++ /dev/null @@ -1,20 +0,0 @@ -# Generated by Django 5.1.4 on 2025-02-28 15:38 - -import django.db.models.expressions -from django.db import migrations, models - - -class Migration(migrations.Migration): - dependencies = [ - ("website", "0211_course_lecture_lecturestatus_rating_section_and_more"), - ] - - operations = [ - migrations.AddField( - model_name="lecture", - name="instructor", - field=models.ForeignKey( - blank=True, null=True, on_delete=django.db.models.expressions.Case, to="website.userprofile" - ), - ), - ] From b1b445e184f4cdbdf2667dcc05fc0c48f675593b Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Sat, 1 Mar 2025 17:12:20 +0530 Subject: [PATCH 21/21] Merge --- ...212_course_lecture_lecturestatus_rating_section_and_more.py} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename website/migrations/{0211_course_lecture_lecturestatus_rating_section_and_more.py => 0212_course_lecture_lecturestatus_rating_section_and_more.py} (98%) diff --git a/website/migrations/0211_course_lecture_lecturestatus_rating_section_and_more.py b/website/migrations/0212_course_lecture_lecturestatus_rating_section_and_more.py similarity index 98% rename from website/migrations/0211_course_lecture_lecturestatus_rating_section_and_more.py rename to website/migrations/0212_course_lecture_lecturestatus_rating_section_and_more.py index 36780145f..81703138e 100644 --- a/website/migrations/0211_course_lecture_lecturestatus_rating_section_and_more.py +++ b/website/migrations/0212_course_lecture_lecturestatus_rating_section_and_more.py @@ -7,7 +7,7 @@ class Migration(migrations.Migration): dependencies = [ - ("website", "0210_merge_0209_baconsubmission_0209_repo_organization"), + ("website", "0211_alter_githubreview_review_id"), ] operations = [