From 5c29d19ac28ec55636b53d182c0f480b3c8c492c Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Wed, 24 Apr 2024 17:32:51 +0100 Subject: [PATCH 001/118] Updated default and hid old non defaults --- src/_data/defaultSchedule.yml | 188 +++++++------ .../developer/authentication/schedule.md | 256 ++++++++--------- .../developer/client-side-app/schedule.md | 64 ++--- .../syllabus/developer/database/schedule.md | 46 +-- .../developer/full-stack-app/schedule.md | 60 ++-- .../developer/introduction/schedule.md | 82 +++--- .../projects/TFB-build-1/schedule.md | 164 +++++------ .../projects/TFB-build-2/schedule.md | 138 ++++----- .../developer/projects/TFB-design/schedule.md | 214 +++++++------- .../projects/in-house-build-1/schedule.md | 154 +++++----- .../projects/in-house-build-2/schedule.md | 95 ++----- .../projects/in-house-design/schedule.md | 262 +++++++++--------- .../developer/server-side-app/schedule.md | 70 ++--- .../syllabus/developer/server/schedule.md | 60 ++-- 14 files changed, 908 insertions(+), 945 deletions(-) diff --git a/src/_data/defaultSchedule.yml b/src/_data/defaultSchedule.yml index b57cfc2c..be682687 100644 --- a/src/_data/defaultSchedule.yml +++ b/src/_data/defaultSchedule.yml @@ -1,146 +1,164 @@ monday: + - start: 9:30 + end: 9:45 + name: Exec program - start: 9:45 end: 10:00 - name: Check-in + name: Check in - start: 10:00 - end: 10:15 - name: Group discussion - type: workshop - - start: 10:15 end: 11:00 - name: Cohort discussion + name: Workshop group discussion type: workshop - start: 11:00 - end: 11:45 - name: Thought of the week + end: 12:00 + name: Workshop class discussion type: workshop + - start: 12:00 + end: 13:00 + name: SGC - start: 13:00 end: 14:00 - name: Lunch - - name: Tech for Better - start: 14:00 - end: 15:30 - - name: Break - start: 15:30 - end: 15:45 - - name: Final project prep - start: 15:45 + name: lunch + - start: 14:00 + end: 15:00 + name: Sprint planning + - start: 15:00 end: 16:00 - - name: Project and spike intro - start: 16:00 - end: 16:15 - type: project - url: ../project - - name: Project spike - start: 16:15 - end: 17:45 - url: ../project#spike - - start: 17:45 + name: Spike + - start: 16:00 + end: 17:00 + name: Spike + - start: 17:00 end: 18:00 - name: Check-out + name: Spike presentation tuesday: + - start: 9:30 + end: 9:45 + name: Exec program - start: 9:45 end: 10:00 - name: Check-in + name: Check-in & Mentor Intro - start: 10:00 + end: 12:00 + name: Project + type: project + - start: 12:00 end: 13:00 name: Project type: project - url: ../project - start: 13:00 end: 14:00 name: Lunch - start: 14:00 - end: 17:45 + end: 15:00 + name: Office Hours + - start: 15:00 + end: 16:00 name: Project type: project - url: ../project - - start: 17:45 + - start: 16:00 + end: 17:00 + name: Project + type: project + - start: 17:00 end: 18:00 - name: Check-out + name: Project + type: project + wednesday: + - start: 9:30 + end: 9:45 + name: Exec program - start: 9:45 end: 10:00 - name: Check-in - - name: Role circles - start: 10:00 - end: 10:15 - url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 - - start: 10:15 + name: Check-in & Mentor Intro + - start: 10:00 + end: 12:00 + name: Project + type: project + - start: 12:00 end: 13:00 name: Project type: project - url: ../project - start: 13:00 end: 14:00 name: Lunch - start: 14:00 - end: 16:30 + end: 15:00 + name: Office Hours + - start: 15:00 + end: 16:00 name: Project type: project - url: ../project - - start: 16:30 - end: 16:45 - name: Update READMEs - - start: 16:45 - end: 17:45 - name: Team code review - url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c - - start: 17:45 + - start: 16:00 + end: 17:00 + name: Project + type: project + - start: 17:00 end: 18:00 - name: Check-out + name: Project + type: project + thursday: + - start: 9:30 + end: 9:45 + name: Exec program - start: 9:45 end: 10:00 - name: Check-in + name: Thought of the Week - start: 10:00 end: 11:00 - name: Expert Feedback - Live code review - url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c - type: expert-feedback + name: Class Code Review - start: 11:00 end: 12:00 - name: Respond to issues - type: project + name: Respond to Issues - start: 12:00 end: 13:00 - name: Presentation prep - url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 + name: Presentation Prep - start: 13:00 end: 14:00 name: Lunch - start: 14:00 - end: 14:30 - name: Team SGC - url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 - - start: 14:30 - end: 15:30 + end: 15:00 name: Presentations - type: presentation - - start: 15:30 + - start: 15:00 end: 16:00 - name: Reading for next topic + name: Next Week Intro - start: 16:00 - end: 16:50 - name: Cohort SGC - url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 - - start: 16:50 end: 17:00 - name: Break + name: Speaker/Tfb - start: 17:00 - end: 17:45 - name: Speaker - - start: 17:45 end: 18:00 - name: Survey and Check-out + name: Speaker/Tfb + friday: - - name: Feedback survey - start: 9:45 + - start: 9:30 + end: 9:45 + name: Exec program + - start: 9:45 end: 10:00 - - name: Progress Log - start: 10:00 - end: 10:30 - type: expert-feedback - - name: Workshop - start: 10:30 + name: Workshop + - start: 10:00 + end: 11:00 + name: Workshop + - start: 11:00 + end: 12:00 + name: Workshop + - start: 12:00 + end: 13:00 + name: Workshop + - start: 13:00 + end: 14:00 + name: Lunch + - start: 14:00 + end: 15:00 + name: Workshop + - start: 15:00 + end: 16:00 + name: Workshop + - start: 16:00 + end: 17:00 + name: Workshop + - start: 17:00 end: 18:00 + name: Workshop diff --git a/src/course/syllabus/developer/authentication/schedule.md b/src/course/syllabus/developer/authentication/schedule.md index 605c842e..5e4c5092 100644 --- a/src/course/syllabus/developer/authentication/schedule.md +++ b/src/course/syllabus/developer/authentication/schedule.md @@ -2,139 +2,139 @@ layout: schedule schedule: monday: - - name: Thought of the week (extra-curricular) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 11:00 - end: 11:45 - - name: Promise creation challenge - start: 11:45 - end: 13:00 - url: https://github.com/foundersandcoders/promise-creation-challenge - type: challenge - - start: 13:00 - end: 14:00 - name: Lunch - - name: Tech for Better - start: 14:00 - end: 16:30 - - name: Break - start: 16:30 - end: 16:45 - - name: Intro to final projects - start: 16:45 - end: 17:00 - url: https://fac-slides.netlify.app/slides/final-projects/#0 - - name: Project and spike intro - start: 17:00 - end: 17:15 - type: project - url: ../project - - name: Project spike - start: 17:15 - end: 17:45 - url: ../project#spike - - start: 17:45 - end: 18:00 - name: Check-out + # - name: Thought of the week (extra-curricular) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 11:00 + # end: 11:45 + # - name: Promise creation challenge + # start: 11:45 + # end: 13:00 + # url: https://github.com/foundersandcoders/promise-creation-challenge + # type: challenge + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - name: Tech for Better + # start: 14:00 + # end: 16:30 + # - name: Break + # start: 16:30 + # end: 16:45 + # - name: Intro to final projects + # start: 16:45 + # end: 17:00 + # url: https://fac-slides.netlify.app/slides/final-projects/#0 + # - name: Project and spike intro + # start: 17:00 + # end: 17:15 + # type: project + # url: ../project + # - name: Project spike + # start: 17:15 + # end: 17:45 + # url: ../project#spike + # - start: 17:45 + # end: 18:00 + # name: Check-out tuesday: - - start: 9:45 - end: 10:00 - name: Check-in - - start: 10:00 - end: 13:00 - name: Project - type: project - url: ../project - - start: 13:00 - end: 14:00 - name: Lunch - - start: 14:00 - end: 17:45 - name: Project - type: project - url: ../project - - start: 17:45 - end: 18:00 - name: Check-out + # - start: 9:45 + # end: 10:00 + # name: Check-in + # - start: 10:00 + # end: 13:00 + # name: Project + # type: project + # url: ../project + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - start: 14:00 + # end: 17:45 + # name: Project + # type: project + # url: ../project + # - start: 17:45 + # end: 18:00 + # name: Check-out wednesday: - - start: 9:45 - end: 10:00 - name: Check-in - - name: Role circles - start: 10:00 - end: 10:15 - url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 - - start: 10:15 - end: 13:00 - name: Project - type: project - url: ../project - - start: 13:00 - end: 14:00 - name: Lunch - - start: 14:00 - end: 16:30 - name: Project - type: project - url: ../project - - start: 16:30 - end: 16:45 - name: Update READMEs - - start: 16:45 - end: 17:45 - name: Team code review - url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c - - start: 17:45 - end: 18:00 - name: Check-out + # - start: 9:45 + # end: 10:00 + # name: Check-in + # - name: Role circles + # start: 10:00 + # end: 10:15 + # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 + # - start: 10:15 + # end: 13:00 + # name: Project + # type: project + # url: ../project + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - start: 14:00 + # end: 16:30 + # name: Project + # type: project + # url: ../project + # - start: 16:30 + # end: 16:45 + # name: Update READMEs + # - start: 16:45 + # end: 17:45 + # name: Team code review + # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c + # - start: 17:45 + # end: 18:00 + # name: Check-out thursday: - - name: Check-in - start: 9:45 - end: 10:00 - - start: 11:00 - end: 12:00 - name: Respond to issues - type: project - - start: 12:00 - end: 13:00 - name: Presentation prep - url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 - - start: 13:00 - end: 14:00 - name: Lunch - - start: 14:00 - end: 14:30 - name: Team SGC - - start: 14:30 - end: 15:30 - name: Presentations - type: presentation - - start: 15:30 - end: 16:00 - name: EPA Introduction - url: https://fac-slides.netlify.app/slides/epa/ - - start: 16:00 - end: 16:50 - name: Cohort SGC - - start: 16:50 - end: 17:00 - name: Break - - start: 17:00 - end: 17:45 - name: Speaker - - start: 17:45 - end: 18:00 - name: Check-out + # - name: Check-in + # start: 9:45 + # end: 10:00 + # - start: 11:00 + # end: 12:00 + # name: Respond to issues + # type: project + # - start: 12:00 + # end: 13:00 + # name: Presentation prep + # url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - start: 14:00 + # end: 14:30 + # name: Team SGC + # - start: 14:30 + # end: 15:30 + # name: Presentations + # type: presentation + # - start: 15:30 + # end: 16:00 + # name: EPA Introduction + # url: https://fac-slides.netlify.app/slides/epa/ + # - start: 16:00 + # end: 16:50 + # name: Cohort SGC + # - start: 16:50 + # end: 17:00 + # name: Break + # - start: 17:00 + # end: 17:45 + # name: Speaker + # - start: 17:45 + # end: 18:00 + # name: Check-out friday: - - name: Progress Log Review - start: 10:00 - end: 11:30 - type: expert-feedback - - name: Consolidation - start: 11:30 - end: 18:00 + # - name: Progress Log Review + # start: 10:00 + # end: 11:30 + # type: expert-feedback + # - name: Consolidation + # start: 11:30 + # end: 18:00 --- diff --git a/src/course/syllabus/developer/client-side-app/schedule.md b/src/course/syllabus/developer/client-side-app/schedule.md index 87d40ccb..75470690 100644 --- a/src/course/syllabus/developer/client-side-app/schedule.md +++ b/src/course/syllabus/developer/client-side-app/schedule.md @@ -2,40 +2,40 @@ layout: schedule schedule: monday: - - name: Thought of the week (safeguarding) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 11:00 - end: 11:45 - - name: React state challenge - start: 11:45 - end: 13:00 - url: https://github.com/foundersandcoders/react-state-challenge - type: challenge - - name: Tech For Better - start: 14:00 - end: 15:30 - - name: Present and choose in-house project idea - start: 15:45 - end: 16:45 - - name: Project and project spike - url: https://learn.foundersandcoders.com/course/syllabus/developer/client-side-app/project/#spike - start: 16:45 - end: 17:45 + # - name: Thought of the week (safeguarding) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 11:00 + # end: 11:45 + # - name: React state challenge + # start: 11:45 + # end: 13:00 + # url: https://github.com/foundersandcoders/react-state-challenge + # type: challenge + # - name: Tech For Better + # start: 14:00 + # end: 15:30 + # - name: Present and choose in-house project idea + # start: 15:45 + # end: 16:45 + # - name: Project and project spike + # url: https://learn.foundersandcoders.com/course/syllabus/developer/client-side-app/project/#spike + # start: 16:45 + # end: 17:45 tuesday: wednesday: thursday: - - start: 9:45 - end: 10:00 - name: Check-in - - start: 15:30 - end: 16:00 - name: Reading for next topic - url: /course/syllabus/developer/client-side-app/topicIntro/ + # - start: 9:45 + # end: 10:00 + # name: Check-in + # - start: 15:30 + # end: 16:00 + # name: Reading for next topic + # url: /course/syllabus/developer/client-side-app/topicIntro/ friday: - - name: Learn Next.js - url: https://nextjs.org/learn/basics/create-nextjs-app - type: workshop - start: 10:30 - end: 18:00 + # - name: Learn Next.js + # url: https://nextjs.org/learn/basics/create-nextjs-app + # type: workshop + # start: 10:30 + # end: 18:00 --- diff --git a/src/course/syllabus/developer/database/schedule.md b/src/course/syllabus/developer/database/schedule.md index 282d299c..267fb2ae 100644 --- a/src/course/syllabus/developer/database/schedule.md +++ b/src/course/syllabus/developer/database/schedule.md @@ -2,31 +2,31 @@ layout: schedule schedule: monday: - - name: Thought of the week (Misinformation, Disinformation and the threat to Democracy) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 11:00 - end: 11:45 - - name: SQL challenge - url: https://github.com/foundersandcoders/sql-challenge - type: challenge - start: 11:45 - end: 13:00 - - name: Issue management and estimation - start: 15:45 - end: 16:00 - url: https://fac-slides.netlify.app/slides/estimation/ + # - name: Thought of the week (Misinformation, Disinformation and the threat to Democracy) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 11:00 + # end: 11:45 + # - name: SQL challenge + # url: https://github.com/foundersandcoders/sql-challenge + # type: challenge + # start: 11:45 + # end: 13:00 + # - name: Issue management and estimation + # start: 15:45 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/estimation/ tuesday: wednesday: thursday: - - name: Reading for next topic - start: 15:30 - end: 16:00 - url: /course/syllabus/developer/database/topicIntro/ + # - name: Reading for next topic + # start: 15:30 + # end: 16:00 + # url: /course/syllabus/developer/database/topicIntro/ friday: - - name: Authentication workshop - url: /learn/auth - type: workshop - start: 10:30 - end: 18:00 + # - name: Authentication workshop + # url: /learn/auth + # type: workshop + # start: 10:30 + # end: 18:00 --- diff --git a/src/course/syllabus/developer/full-stack-app/schedule.md b/src/course/syllabus/developer/full-stack-app/schedule.md index b63565f0..08da0484 100644 --- a/src/course/syllabus/developer/full-stack-app/schedule.md +++ b/src/course/syllabus/developer/full-stack-app/schedule.md @@ -2,38 +2,38 @@ layout: schedule schedule: monday: - - name: Thought of the week (extra-curricular) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 11:00 - end: 11.45 - - name: Project intro - url: ../project/ - type: project - start: 12:00 - end: 13:00 - - name: Schedule research and testing - start: 15:45 - end: 16:00 - url: https://fac-slides.netlify.app/slides/research-and-testing/ - - name: Project - url: ../project/ - type: project - start: 16:00 - end: 17:45 + # - name: Thought of the week (extra-curricular) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 11:00 + # end: 11.45 + # - name: Project intro + # url: ../project/ + # type: project + # start: 12:00 + # end: 13:00 + # - name: Schedule research and testing + # start: 15:45 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/research-and-testing/ + # - name: Project + # url: ../project/ + # type: project + # start: 16:00 + # end: 17:45 tuesday: wednesday: thursday: - - name: Design Week Intro - start: 15:30 - end: 16:00 - url: https://fac-slides.netlify.app/slides/design-sprint/ + # - name: Design Week Intro + # start: 15:30 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/design-sprint/ friday: - - name: Progress Log Review - start: 10:00 - end: 11:30 - type: expert-feedback - - name: Consolidation day - start: 11:30 - end: 18:00 + # - name: Progress Log Review + # start: 10:00 + # end: 11:30 + # type: expert-feedback + # - name: Consolidation day + # start: 11:30 + # end: 18:00 --- diff --git a/src/course/syllabus/developer/introduction/schedule.md b/src/course/syllabus/developer/introduction/schedule.md index 6e08ed30..2a77fc47 100644 --- a/src/course/syllabus/developer/introduction/schedule.md +++ b/src/course/syllabus/developer/introduction/schedule.md @@ -2,49 +2,49 @@ layout: schedule schedule: monday: - - name: No schedule - start: 9:45 - end: 18:00 + # - name: No schedule + # start: 9:45 + # end: 18:00 tuesday: - - name: No schedule - start: 9:45 - end: 18:00 + # - name: No schedule + # start: 9:45 + # end: 18:00 wednesday: - - name: No schedule - start: 9:45 - end: 18:00 + # - name: No schedule + # start: 9:45 + # end: 18:00 thursday: - - name: No schedule - start: 9:45 - end: 14:00 - - name: Communal lunch with pre-apprentices - start: 14:00 - end: 15:00 - - name: Course intro - start: 15:00 - end: 15:30 - url: https://hackmd.io/@-k0vCiCrQFKCyNvAyIXaPA/r1AOaIlka - - name: Reading for next topic & Installation - start: 15:30 - end: 16:15 - url: /course/syllabus/developer/introduction/topicIntro/ - - name: Break - url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b - start: 16:15 - end: 16:30 - - name: Thought of the week (safeguarding) - type: personal-development - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - start: 16:30 - end: 17:15 - - name: Social - url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b - start: 17:15 - end: 18:00 + # - name: No schedule + # start: 9:45 + # end: 14:00 + # - name: Communal lunch with pre-apprentices + # start: 14:00 + # end: 15:00 + # - name: Course intro + # start: 15:00 + # end: 15:30 + # url: https://hackmd.io/@-k0vCiCrQFKCyNvAyIXaPA/r1AOaIlka + # - name: Reading for next topic & Installation + # start: 15:30 + # end: 16:15 + # url: /course/syllabus/developer/introduction/topicIntro/ + # - name: Break + # url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b + # start: 16:15 + # end: 16:30 + # - name: Thought of the week (safeguarding) + # type: personal-development + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # start: 16:30 + # end: 17:15 + # - name: Social + # url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b + # start: 17:15 + # end: 18:00 friday: - - name: Server workshop - url: /learn/server - type: workshop - start: 9:45 - end: 18:00 + # - name: Server workshop + # url: /learn/server + # type: workshop + # start: 9:45 + # end: 18:00 --- diff --git a/src/course/syllabus/developer/projects/TFB-build-1/schedule.md b/src/course/syllabus/developer/projects/TFB-build-1/schedule.md index 1473a842..68fcfd29 100644 --- a/src/course/syllabus/developer/projects/TFB-build-1/schedule.md +++ b/src/course/syllabus/developer/projects/TFB-build-1/schedule.md @@ -2,90 +2,90 @@ layout: schedule schedule: monday: - - name: Build - start: 10:00 - end: 13:00 - type: project - - name: Build - start: 14:00 - end: 16:30 - type: project - - name: Mentoring reflections & Mentor Scheduling - start: 16:30 - end: 17:45 + # - name: Build + # start: 10:00 + # end: 13:00 + # type: project + # - name: Build + # start: 14:00 + # end: 16:30 + # type: project + # - name: Mentoring reflections & Mentor Scheduling + # start: 16:30 + # end: 17:45 tuesday: - - name: Build - start: 10:00 - end: 12:45 - type: project - - name: Role circles - start: 12:45 - end: 13:00 - url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 - - name: Build - start: 14:00 - end: 17:45 - type: project + # - name: Build + # start: 10:00 + # end: 12:45 + # type: project + # - name: Role circles + # start: 12:45 + # end: 13:00 + # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 + # - name: Build + # start: 14:00 + # end: 17:45 + # type: project wednesday: - - name: Web Science - start: 10:00 - end: 11:00 - type: presentation - - name: Build - start: 11:00 - end: 13:00 - type: project - - name: Build - start: 14:00 - end: 16:00 - type: project - - name: Update READMEs - start: 16:00 - end: 16:15 - - name: Team code review - start: 16:15 - end: 17:45 - url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c + # - name: Web Science + # start: 10:00 + # end: 11:00 + # type: presentation + # - name: Build + # start: 11:00 + # end: 13:00 + # type: project + # - name: Build + # start: 14:00 + # end: 16:00 + # type: project + # - name: Update READMEs + # start: 16:00 + # end: 16:15 + # - name: Team code review + # start: 16:15 + # end: 17:45 + # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c thursday: - - name: Review issues - start: 10:00 - end: 11:45 - type: project - - name: Sprint review and planning - start: 11:45 - end: 13:00 - type: project - - name: Presentation prep - start: 14:00 - end: 14:45 - url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 - - name: Team SGC - start: 14:45 - end: 15:15 - url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 - - name: Presentations - start: 15:15 - end: 16:15 - type: presentation - - name: Project documentation - start: 16:15 - end: 16:45 - - name: Break - start: 16:45 - end: 17:00 + # - name: Review issues + # start: 10:00 + # end: 11:45 + # type: project + # - name: Sprint review and planning + # start: 11:45 + # end: 13:00 + # type: project + # - name: Presentation prep + # start: 14:00 + # end: 14:45 + # url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 + # - name: Team SGC + # start: 14:45 + # end: 15:15 + # url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 + # - name: Presentations + # start: 15:15 + # end: 16:15 + # type: presentation + # - name: Project documentation + # start: 16:15 + # end: 16:45 + # - name: Break + # start: 16:45 + # end: 17:00 friday: - - name: Progress Log - start: 9:45 - end: 10:15 - - name: Build - start: 10:15 - end: 13:00 - type: project - - start: 13:00 - end: 14:00 - name: Lunch - - name: Build - start: 14:00 - end: 18:00 - type: project + # - name: Progress Log + # start: 9:45 + # end: 10:15 + # - name: Build + # start: 10:15 + # end: 13:00 + # type: project + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - name: Build + # start: 14:00 + # end: 18:00 + # type: project --- diff --git a/src/course/syllabus/developer/projects/TFB-build-2/schedule.md b/src/course/syllabus/developer/projects/TFB-build-2/schedule.md index cfc08103..6316bff8 100644 --- a/src/course/syllabus/developer/projects/TFB-build-2/schedule.md +++ b/src/course/syllabus/developer/projects/TFB-build-2/schedule.md @@ -2,77 +2,77 @@ layout: schedule schedule: monday: - - name: Web Science - start: 10:00 - end: 11:00 - type: presentation - - name: Build - start: 11:00 - end: 13:00 - type: project - - name: Build - start: 14:00 - end: 17:45 - type: project + # - name: Web Science + # start: 10:00 + # end: 11:00 + # type: presentation + # - name: Build + # start: 11:00 + # end: 13:00 + # type: project + # - name: Build + # start: 14:00 + # end: 17:45 + # type: project tuesday: - - name: Build - start: 10:00 - end: 12:45 - type: project - - name: Role circles - start: 12:45 - end: 13:00 - url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 - - name: Build - start: 14:00 - end: 17:45 - type: project + # - name: Build + # start: 10:00 + # end: 12:45 + # type: project + # - name: Role circles + # start: 12:45 + # end: 13:00 + # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 + # - name: Build + # start: 14:00 + # end: 17:45 + # type: project wednesday: - - name: Build - start: 10:00 - end: 13:00 - type: project - - name: Sprint review - start: 14:00 - end: 14:45 - - name: Update READMEs - start: 14:45 - end: 15:30 - - name: Presentation prep - start: 15:30 - end: 17:00 - - name: Presentations (practice run) - start: 17:00 - end: 17:45 - type: presentation + # - name: Build + # start: 10:00 + # end: 13:00 + # type: project + # - name: Sprint review + # start: 14:00 + # end: 14:45 + # - name: Update READMEs + # start: 14:45 + # end: 15:30 + # - name: Presentation prep + # start: 15:30 + # end: 17:00 + # - name: Presentations (practice run) + # start: 17:00 + # end: 17:45 + # type: presentation thursday: - - name: Feedback Survey - start: 10:00 - end: 10:15 - - name: Super cohort SGC - start: 10:15 - end: 11:30 - - name: Handover documentation - start: 11:30 - end: 13:00 - - name: Presentation prep - start: 14:00 - end: 15:00 - - name: Product handover - start: 15:00 - end: 15:45 - - name: Presentation practice - start: 15:45 - end: 16:45 - - name: Break - start: 16:45 - end: 17:00 - - name: TFB Showcase - start: 17:00 - end: 18:00 - type: presentation + # - name: Feedback Survey + # start: 10:00 + # end: 10:15 + # - name: Super cohort SGC + # start: 10:15 + # end: 11:30 + # - name: Handover documentation + # start: 11:30 + # end: 13:00 + # - name: Presentation prep + # start: 14:00 + # end: 15:00 + # - name: Product handover + # start: 15:00 + # end: 15:45 + # - name: Presentation practice + # start: 15:45 + # end: 16:45 + # - name: Break + # start: 16:45 + # end: 17:00 + # - name: TFB Showcase + # start: 17:00 + # end: 18:00 + # type: presentation friday: - - name: No schedule - start: 9:45 - end: 18:00 + # - name: No schedule + # start: 9:45 + # end: 18:00 --- diff --git a/src/course/syllabus/developer/projects/TFB-design/schedule.md b/src/course/syllabus/developer/projects/TFB-design/schedule.md index 69efcfc3..ff933b44 100644 --- a/src/course/syllabus/developer/projects/TFB-design/schedule.md +++ b/src/course/syllabus/developer/projects/TFB-design/schedule.md @@ -2,115 +2,115 @@ layout: schedule schedule: monday: - - name: Check-in - start: 9:45 - end: 10:00 - - name: Definition presentation - start: 10:00 - end: 10:15 - url: https://fac-slides.netlify.app/slides/definition/#0 - type: presentation - - name: Thought of the week (CIAG) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 10:15 - end: 11:00 - - name: Tech For Better - Usability Testing - start: 11:00 - end: 13:00 - url: https://fac-slides.netlify.app/slides/usability-testing/#0 - type: workshop - - start: 13:00 - end: 14:00 - name: Lunch - - name: Usability Testing analysis - start: 14:00 - end: 15:30 - url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 - type: project - - name: Break - start: 15:30 - end: 15:45 - - name: Product refinement - start: 15:45 - end: 17:45 - url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 - type: project - - start: 17:45 - end: 18:00 - name: Check-out + # - name: Check-in + # start: 9:45 + # end: 10:00 + # - name: Definition presentation + # start: 10:00 + # end: 10:15 + # url: https://fac-slides.netlify.app/slides/definition/#0 + # type: presentation + # - name: Thought of the week (CIAG) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 10:15 + # end: 11:00 + # - name: Tech For Better - Usability Testing + # start: 11:00 + # end: 13:00 + # url: https://fac-slides.netlify.app/slides/usability-testing/#0 + # type: workshop + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - name: Usability Testing analysis + # start: 14:00 + # end: 15:30 + # url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 + # type: project + # - name: Break + # start: 15:30 + # end: 15:45 + # - name: Product refinement + # start: 15:45 + # end: 17:45 + # url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 + # type: project + # - start: 17:45 + # end: 18:00 + # name: Check-out tuesday: - - name: Choose Roles - start: 10:00 - end: 10:30 - url: https://foundersandcoders.notion.site/Project-roles-c2be6c42f4fe4bb0911049b084c51791 - type: project - - name: Code Planning - start: 10:30 - end: 13:00 - url: https://fac-slides.netlify.app/slides/code-planning/#0 - type: project - - name: Code Planning - start: 14:00 - end: 16:00 - url: https://fac-slides.netlify.app/slides/code-planning/#0 - type: project - - name: Technical Spikes - start: 16:00 - end: 17:45 - url: "./../spikes" + # - name: Choose Roles + # start: 10:00 + # end: 10:30 + # url: https://foundersandcoders.notion.site/Project-roles-c2be6c42f4fe4bb0911049b084c51791 + # type: project + # - name: Code Planning + # start: 10:30 + # end: 13:00 + # url: https://fac-slides.netlify.app/slides/code-planning/#0 + # type: project + # - name: Code Planning + # start: 14:00 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/code-planning/#0 + # type: project + # - name: Technical Spikes + # start: 16:00 + # end: 17:45 + # url: "./../spikes" wednesday: - - name: Web Science - start: 10:00 - end: 11:00 - type: presentation - - name: Sprint planning - start: 11:00 - end: 13:00 - type: project - - name: Build - start: 14:00 - end: 15:45 - type: project - - name: Break - start: 15:45 - end: 16:00 - - name: Build - start: 16:00 - end: 17:45 - type: project + # - name: Web Science + # start: 10:00 + # end: 11:00 + # type: presentation + # - name: Sprint planning + # start: 11:00 + # end: 13:00 + # type: project + # - name: Build + # start: 14:00 + # end: 15:45 + # type: project + # - name: Break + # start: 15:45 + # end: 16:00 + # - name: Build + # start: 16:00 + # end: 17:45 + # type: project thursday: - - name: Sprint planning - start: 11:00 - end: 13:00 - type: project - - start: 14:00 - end: 14:30 - name: Presentation prep - - name: Team SGC - start: 14:30 - end: 15:00 - url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 - - name: Presentations - start: 15:00 - end: 16:00 - type: presentation - - name: Feedback Session - start: 16:00 - end: 16:50 + # - name: Sprint planning + # start: 11:00 + # end: 13:00 + # type: project + # - start: 14:00 + # end: 14:30 + # name: Presentation prep + # - name: Team SGC + # start: 14:30 + # end: 15:00 + # url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 + # - name: Presentations + # start: 15:00 + # end: 16:00 + # type: presentation + # - name: Feedback Session + # start: 16:00 + # end: 16:50 friday: - - name: Project documentation - start: 9:45 - end: 10:30 - - name: Build - start: 10:30 - end: 13:00 - type: project - - start: 13:00 - end: 14:00 - name: Lunch - - name: Build - start: 14:00 - end: 18:00 - type: project + # - name: Project documentation + # start: 9:45 + # end: 10:30 + # - name: Build + # start: 10:30 + # end: 13:00 + # type: project + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - name: Build + # start: 14:00 + # end: 18:00 + # type: project --- diff --git a/src/course/syllabus/developer/projects/in-house-build-1/schedule.md b/src/course/syllabus/developer/projects/in-house-build-1/schedule.md index 0b7a6f1b..fcee01c5 100644 --- a/src/course/syllabus/developer/projects/in-house-build-1/schedule.md +++ b/src/course/syllabus/developer/projects/in-house-build-1/schedule.md @@ -2,85 +2,85 @@ layout: schedule schedule: monday: - - name: Build - start: 10:00 - end: 13:00 - type: project - - name: Build - start: 14:00 - end: 17:15 - type: project - - name: Thought of the week (CIAG) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 17:15 - end: 18:00 + # - name: Build + # start: 10:00 + # end: 13:00 + # type: project + # - name: Build + # start: 14:00 + # end: 17:15 + # type: project + # - name: Thought of the week (CIAG) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 17:15 + # end: 18:00 tuesday: - - name: Build - start: 10:00 - end: 12:45 - type: project - - name: Role circles - start: 12:45 - end: 13:00 - url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 - - name: Build - start: 14:00 - end: 17:45 - type: project + # - name: Build + # start: 10:00 + # end: 12:45 + # type: project + # - name: Role circles + # start: 12:45 + # end: 13:00 + # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 + # - name: Build + # start: 14:00 + # end: 17:45 + # type: project wednesday: - - name: Web Science - start: 10:00 - end: 11:00 - type: presentation - - name: Build - start: 11:00 - end: 13:00 - type: project - - name: Build - start: 14:00 - end: 16:00 - type: project - - name: Update READMEs - start: 16:00 - end: 16:15 - - name: Team code review - start: 16:15 - end: 17:45 - url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c + # - name: Web Science + # start: 10:00 + # end: 11:00 + # type: presentation + # - name: Build + # start: 11:00 + # end: 13:00 + # type: project + # - name: Build + # start: 14:00 + # end: 16:00 + # type: project + # - name: Update READMEs + # start: 16:00 + # end: 16:15 + # - name: Team code review + # start: 16:15 + # end: 17:45 + # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c thursday: - - name: Review issues - start: 10:00 - end: 11:45 - type: project - - name: Sprint review and planning - start: 11:45 - end: 13:00 - type: project - - name: Tech For Better prototyping - start: 14:00 - end: 15:45 - - name: Team SGC - start: 15:45 - end: 16:15 - url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 - type: presentation - - name: Project documentation - start: 16:15 - end: 16:45 - - name: Break - start: 16:45 - end: 17:00 + # - name: Review issues + # start: 10:00 + # end: 11:45 + # type: project + # - name: Sprint review and planning + # start: 11:45 + # end: 13:00 + # type: project + # - name: Tech For Better prototyping + # start: 14:00 + # end: 15:45 + # - name: Team SGC + # start: 15:45 + # end: 16:15 + # url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 + # type: presentation + # - name: Project documentation + # start: 16:15 + # end: 16:45 + # - name: Break + # start: 16:45 + # end: 17:00 friday: - - name: Respond to issues / Build - start: 9:45 - end: 13:00 - type: project - - start: 13:00 - end: 14:00 - name: Lunch - - name: Build - start: 14:00 - end: 18:00 - type: project + # - name: Respond to issues / Build + # start: 9:45 + # end: 13:00 + # type: project + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - name: Build + # start: 14:00 + # end: 18:00 + # type: project --- diff --git a/src/course/syllabus/developer/projects/in-house-build-2/schedule.md b/src/course/syllabus/developer/projects/in-house-build-2/schedule.md index 2876dccd..ac0ecb7a 100644 --- a/src/course/syllabus/developer/projects/in-house-build-2/schedule.md +++ b/src/course/syllabus/developer/projects/in-house-build-2/schedule.md @@ -1,76 +1,25 @@ --- + layout: schedule schedule: - monday: - - name: Build - start: 10:00 - end: 13:00 - type: project - - name: Thought of the Week - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 14:00 - end: 14:45 - - name: Build - start: 14:45 - end: 17:45 - type: project - - name: Check out - start: 17:45 - end: 18:00 - tuesday: - - name: Build - start: 10:00 - end: 12:45 - type: project - - name: Role circles - start: 12:45 - end: 13:00 - url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 - - name: Build - start: 14:00 - end: 16:00 - type: project - - name: Update READMEs - start: 16:00 - end: 16:15 - - name: Team code review - start: 16:15 - end: 17:45 - url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c - wednesday: - - name: Web Science - start: 10:00 - end: 11:00 - type: presentation - - name: Build - start: 11:00 - end: 13:00 - type: project - - name: Build - start: 14:00 - end: 17:45 - type: project - thursday: - - name: Update READMEs - start: 10:00 - end: 10:15 - - name: Sprint Review - start: 10:15 - end: 11:45 - - start: 11:45 - end: 13:00 - name: Presentation prep - url: https://foundersandcoders.notion.site/In-House-Project-Presentation-e1936ce95a8041b9b8a93e5d4f638ff6 - - name: Project documentation - start: 15:30 - end: 16:00 - friday: - - name: Progress Log Review - start: 10:00 - end: 11:30 - type: expert-feedback - - name: Consolidation day - start: 11:30 - end: 18:00 ---- +monday: # - name: Build # start: 10:00 # end: 13:00 # type: project # - name: Thought of the Week # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 # type: personal-development # start: 14:00 # end: 14:45 # - name: Build # start: 14:45 # end: 17:45 # type: project # - name: Check out # start: 17:45 # end: 18:00 +tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c +wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project +thursday: # - name: Update READMEs # start: 10:00 # end: 10:15 # - name: Sprint Review # start: 10:15 # end: 11:45 # - start: 11:45 # end: 13:00 # name: Presentation prep # url: https://foundersandcoders.notion.site/In-House-Project-Presentation-e1936ce95a8041b9b8a93e5d4f638ff6 # - name: Project documentation # start: 15:30 # end: 16:00 +friday: + +# - name: Progress Log Review + +# start: 10:00 + +# end: 11:30 + +# type: expert-feedback + +# - name: Consolidation day + +# start: 11:30 + +# end: 18:00 + +# --- diff --git a/src/course/syllabus/developer/projects/in-house-design/schedule.md b/src/course/syllabus/developer/projects/in-house-design/schedule.md index 1b3ac9d7..a9974214 100644 --- a/src/course/syllabus/developer/projects/in-house-design/schedule.md +++ b/src/course/syllabus/developer/projects/in-house-design/schedule.md @@ -2,139 +2,139 @@ layout: schedule schedule: monday: - - start: 9:45 - end: 10:00 - name: Check-in - - name: Discovery introduction - start: 10:00 - end: 10:15 - url: https://fac-slides.netlify.app/slides/discovery-inhouse/#0 - type: presentation - - name: Thought of the week (British values) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 10:15 - end: 11:00 - - name: Discovery workshop - start: 11:00 - end: 13:00 - type: workshop - - start: 13:00 - end: 14:00 - name: Lunch - - name: User research preparation - start: 14:00 - end: 14:15 - - name: Conduct user research - start: 14:15 - end: 15:45 - - name: Break - start: 15:45 - end: 16:00 - - name: Analysis introduction - start: 16:00 - end: 16:15 - type: presentation - url: https://fac-slides.netlify.app/slides/analysis-talk/#0 - - name: Analysis workshop - start: 16:15 - end: 17:45 - type: workshop - - start: 17:45 - end: 18:00 - name: Check-out + # - start: 9:45 + # end: 10:00 + # name: Check-in + # - name: Discovery introduction + # start: 10:00 + # end: 10:15 + # url: https://fac-slides.netlify.app/slides/discovery-inhouse/#0 + # type: presentation + # - name: Thought of the week (British values) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 10:15 + # end: 11:00 + # - name: Discovery workshop + # start: 11:00 + # end: 13:00 + # type: workshop + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - name: User research preparation + # start: 14:00 + # end: 14:15 + # - name: Conduct user research + # start: 14:15 + # end: 15:45 + # - name: Break + # start: 15:45 + # end: 16:00 + # - name: Analysis introduction + # start: 16:00 + # end: 16:15 + # type: presentation + # url: https://fac-slides.netlify.app/slides/analysis-talk/#0 + # - name: Analysis workshop + # start: 16:15 + # end: 17:45 + # type: workshop + # - start: 17:45 + # end: 18:00 + # name: Check-out tuesday: - - name: Definition introduction - start: 10:00 - end: 10:15 - type: presentation - url: https://fac-slides.netlify.app/slides/definition1/#0 - - name: Definition workshop - start: 10:15 - end: 13:00 - type: workshop - - name: Tech for Better - start: 14:00 - end: 15:30 - - name: Usability testing introduction - start: 15:30 - end: 15:45 - url: https://fac-slides.netlify.app/slides/usability-testing/#0 - type: presentation - - name: Wireframing - start: 15:45 - end: 17:45 - type: project + # - name: Definition introduction + # start: 10:00 + # end: 10:15 + # type: presentation + # url: https://fac-slides.netlify.app/slides/definition1/#0 + # - name: Definition workshop + # start: 10:15 + # end: 13:00 + # type: workshop + # - name: Tech for Better + # start: 14:00 + # end: 15:30 + # - name: Usability testing introduction + # start: 15:30 + # end: 15:45 + # url: https://fac-slides.netlify.app/slides/usability-testing/#0 + # type: presentation + # - name: Wireframing + # start: 15:45 + # end: 17:45 + # type: project wednesday: - - name: Web Science - start: 10:00 - end: 11:00 - type: presentation - - name: Wireframing - start: 11:00 - end: 13:00 - type: project - - name: Synthesis feedback introduction - start: 14:00 - end: 14:15 - url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 - type: presentation - - name: Usability testing - start: 14:15 - end: 15:45 - url: https://fac-slides.netlify.app/slides/usability-testing/#0 - - name: Break - start: 15:45 - end: 16:00 - - name: Synthesise feedback - start: 16:00 - end: 17:30 - - name: Introduction to project roles - start: 17:30 - end: 17:35 - url: https://foundersandcoders.notion.site/Project-roles-c2be6c42f4fe4bb0911049b084c51791 - type: presentation - - name: Choose roles - start: 17:35 - end: 17:45 + # - name: Web Science + # start: 10:00 + # end: 11:00 + # type: presentation + # - name: Wireframing + # start: 11:00 + # end: 13:00 + # type: project + # - name: Synthesis feedback introduction + # start: 14:00 + # end: 14:15 + # url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 + # type: presentation + # - name: Usability testing + # start: 14:15 + # end: 15:45 + # url: https://fac-slides.netlify.app/slides/usability-testing/#0 + # - name: Break + # start: 15:45 + # end: 16:00 + # - name: Synthesise feedback + # start: 16:00 + # end: 17:30 + # - name: Introduction to project roles + # start: 17:30 + # end: 17:35 + # url: https://foundersandcoders.notion.site/Project-roles-c2be6c42f4fe4bb0911049b084c51791 + # type: presentation + # - name: Choose roles + # start: 17:35 + # end: 17:45 thursday: - - name: Code planning introduction - start: 10:00 - end: 10:15 - url: https://fac-slides.netlify.app/slides/code-planning/#0 - type: presentation - - name: Code planning - start: 10:15 - end: 13:00 - url: https://fac-slides.netlify.app/slides/code-planning/#0 - - name: Technical spikes - start: 14:00 - end: 15:30 - url: ../spikes - - name: Build sprint presentation - start: 15:30 - end: 15:45 - url: https://fac-slides.netlify.app/slides/build-sprint/#0 - type: presentation - - name: Sprint planning - start: 15:45 - end: 16:45 - - start: 16:45 - end: 17:45 - name: Feedback Session + # - name: Code planning introduction + # start: 10:00 + # end: 10:15 + # url: https://fac-slides.netlify.app/slides/code-planning/#0 + # type: presentation + # - name: Code planning + # start: 10:15 + # end: 13:00 + # url: https://fac-slides.netlify.app/slides/code-planning/#0 + # - name: Technical spikes + # start: 14:00 + # end: 15:30 + # url: ../spikes + # - name: Build sprint presentation + # start: 15:30 + # end: 15:45 + # url: https://fac-slides.netlify.app/slides/build-sprint/#0 + # type: presentation + # - name: Sprint planning + # start: 15:45 + # end: 16:45 + # - start: 16:45 + # end: 17:45 + # name: Feedback Session friday: - - name: Project documentation - start: 9:45 - end: 10:30 - - name: Build - start: 10:30 - end: 13:00 - type: project - - start: 13:00 - end: 14:00 - name: Lunch - - name: Build - start: 14:00 - end: 18:00 - type: project + # - name: Project documentation + # start: 9:45 + # end: 10:30 + # - name: Build + # start: 10:30 + # end: 13:00 + # type: project + # - start: 13:00 + # end: 14:00 + # name: Lunch + # - name: Build + # start: 14:00 + # end: 18:00 + # type: project --- diff --git a/src/course/syllabus/developer/server-side-app/schedule.md b/src/course/syllabus/developer/server-side-app/schedule.md index 99fb5130..4661bfed 100644 --- a/src/course/syllabus/developer/server-side-app/schedule.md +++ b/src/course/syllabus/developer/server-side-app/schedule.md @@ -2,43 +2,43 @@ layout: schedule schedule: monday: - - name: Thought of the week (CIAG) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 10:00 - end: 10:45 - - name: Validation workshop - url: /learn/form-validation - type: workshop - start: 10:45 - end: 12:15 - - name: Project and spike intro - start: 12:15 - end: 12:30 - type: project - url: ../project - - name: Project spike - start: 12:30 - end: 13:00 - url: ../project#spikes - - name: Draft a project idea - start: 15:45 - end: 16:00 - - name: Project spike - start: 16:00 - end: 17:45 - url: ../project#spikes + # - name: Thought of the week (CIAG) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 10:00 + # end: 10:45 + # - name: Validation workshop + # url: /learn/form-validation + # type: workshop + # start: 10:45 + # end: 12:15 + # - name: Project and spike intro + # start: 12:15 + # end: 12:30 + # type: project + # url: ../project + # - name: Project spike + # start: 12:30 + # end: 13:00 + # url: ../project#spikes + # - name: Draft a project idea + # start: 15:45 + # end: 16:00 + # - name: Project spike + # start: 16:00 + # end: 17:45 + # url: ../project#spikes tuesday: wednesday: thursday: - - name: Reading for next topic - start: 15:30 - end: 16:00 - url: /course/syllabus/developer/server-side-app/topicIntro/ + # - name: Reading for next topic + # start: 15:30 + # end: 16:00 + # url: /course/syllabus/developer/server-side-app/topicIntro/ friday: - - name: React workshop - url: /learn/react - type: workshop - start: 10:30 - end: 18:00 + # - name: React workshop + # url: /learn/react + # type: workshop + # start: 10:30 + # end: 18:00 --- diff --git a/src/course/syllabus/developer/server/schedule.md b/src/course/syllabus/developer/server/schedule.md index 7db44fb4..f5143bba 100644 --- a/src/course/syllabus/developer/server/schedule.md +++ b/src/course/syllabus/developer/server/schedule.md @@ -2,40 +2,36 @@ layout: schedule schedule: monday: - - name: Thought of the week (safeguarding) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 11:00 - end: 11:45 - - name: Sanitize & validate challenge - url: https://github.com/foundersandcoders/sanitize-validate-challenge - type: challenge - start: 11:45 - end: 13:00 - - name: Tech for Better - type: workshop - start: 14:00 - end: 14:45 - - name: Thought of the week (British values) - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development - start: 14:45 - end: 15:30 - - name: Intro to project managment - start: 15:45 - end: 16:00 - url: https://fac-slides.netlify.app/slides/proj-mgmt/ + # - name: Thought of the week (safeguarding) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 11:00 + # end: 11:45 + + # - name: Tech for Better + # type: workshop + # start: 14:00 + # end: 14:45 + # - name: Thought of the week (British values) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 14:45 + # end: 15:30 + # - name: Intro to project managment + # start: 15:45 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/proj-mgmt/ tuesday: wednesday: thursday: - - name: Reading for next topic - start: 15:30 - end: 16:00 - url: /course/syllabus/developer/server/topicIntro/ + # - name: Reading for next topic + # start: 15:30 + # end: 16:00 + # url: /course/syllabus/developer/server/topicIntro/ friday: - - name: Database workshop - url: /learn/database - type: workshop - start: 10:30 - end: 18:00 + # - name: Database workshop + # url: /learn/database + # type: workshop + # start: 10:30 + # end: 18:00 --- From 1fbecbeb129577dc5fcd9089cc81ae474c7f9fb3 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 29 Apr 2024 13:02:46 +0200 Subject: [PATCH 002/118] remove topic intro --- src/_includes/syllabus.11ty.js | 7 - .../developer/authentication/topicIntro.md | 0 .../developer/client-side-app/topicIntro.md | 72 ------- .../syllabus/developer/database/topicIntro.md | 169 ---------------- .../developer/introduction/topicIntro.md | 78 ------- .../developer/server-side-app/topicIntro.md | 171 ---------------- .../syllabus/developer/server/topicIntro.md | 191 ------------------ 7 files changed, 688 deletions(-) delete mode 100644 src/course/syllabus/developer/authentication/topicIntro.md delete mode 100644 src/course/syllabus/developer/client-side-app/topicIntro.md delete mode 100644 src/course/syllabus/developer/database/topicIntro.md delete mode 100644 src/course/syllabus/developer/introduction/topicIntro.md delete mode 100644 src/course/syllabus/developer/server-side-app/topicIntro.md delete mode 100644 src/course/syllabus/developer/server/topicIntro.md diff --git a/src/_includes/syllabus.11ty.js b/src/_includes/syllabus.11ty.js index 7bae341d..a7595384 100644 --- a/src/_includes/syllabus.11ty.js +++ b/src/_includes/syllabus.11ty.js @@ -74,13 +74,6 @@ exports.render = ({ html`<${Tab} page=${page} href="resources">Resources` } - ${ - tabs.topicIntro !== false && - !isApplicationPage && - !isFoundationPage && - !isTechforBetterPage && - html`<${Tab} page=${page} href="topicIntro">Topic Intro` - } <${RawContent} class="flow">${content} diff --git a/src/course/syllabus/developer/authentication/topicIntro.md b/src/course/syllabus/developer/authentication/topicIntro.md deleted file mode 100644 index e69de29b..00000000 diff --git a/src/course/syllabus/developer/client-side-app/topicIntro.md b/src/course/syllabus/developer/client-side-app/topicIntro.md deleted file mode 100644 index c781aca6..00000000 --- a/src/course/syllabus/developer/client-side-app/topicIntro.md +++ /dev/null @@ -1,72 +0,0 @@ -# **Full-Stack Apps** - -Web applications are an amalgamation of data and markup. Let's consider a personal landing page as an example. The data comprises the specific information about you, while the markup is the HTML that encapsulates this information. - -There are generally two types of data we work with - static and dynamic. Static data doesn't undergo much change, enabling you to craft the HTML in advance. The server, yours or a third-party service like Netlify's, just responds with the pre-generated static **`.html`** file when a request is made. - -On the contrary, dynamic data changes with each request. With such data, you are required to generate each page on demand. This page generation can occur either on the server or the client. - -Generating pages on the server is usually simpler and safer, but doing it on the client allows for more dynamic interaction. What if there was a way to do both, within the same application? - -## **Enter Next.js** - -Next.js is a powerful framework for building websites using React. React, although an excellent library for building user interfaces, doesn't provide many necessities for websites such as routing, server-rendering, and data fetching. Next.js steps in to fill these gaps, creating "isomorphic" JavaScript applications that render both on the server and the client. - -This dual-rendering process works as follows: **initially, the page load is server-rendered HTML. Once the JavaScript loads, the whole application runs client-side.** This balance is a compromise between initial performance (showing HTML quickly) and later interactivity on the client side. - -### How it works - -To use Next.js, you create React components in a **`pages/`** directory. Here's an example: - -``` -// pages/Index.js - -function Index() { - return

Hello world

; -} - -export default Index; -``` - -Next.js's Node server creates a route for this component: - -``` -server.get("/", (req, res) => { - const component = ReactServer.renderToString(); - const html = ` -
${component}
- - `; - res.send(html); -}); -``` - -The server initially renders your application to get the HTML. Then it renders your app again on the client to "hydrate" it. The hydration process instructs React to connect to existing DOM nodes. - -``` -// client-bundle.js - -ReactDOM.hydrate(, document.querySelector("#root")); -``` - -Before hydration happens, the user can still see the HTML. Once hydration finishes, you have a fully functioning client-side app. - -### **Backend stuff** - -In addition to managing front-end rendering, Next.js also supports "API routes". These are routes that don't render React components but return JSON instead. - -To implement this, you create files inside **`pages/api/`**. These files are used as handlers for the matching route. For instance: - -``` -// pages/api/user.js - -function user(req, res) { - res.status(200).json({ name: "John Doe" }); -} - -export default user; -``` - -This enables you to build an API route that fetches JSON data, which is simpler than having to create and deploy a whole separate server. - -In conclusion, Next.js presents an efficient way to develop full-stack applications, providing out-of-the-box solutions for some of the most common web development needs, all while leveraging the power of React. It offers an excellent bridge between server-side rendering for optimal performance and client-side rendering for dynamic interactivity. diff --git a/src/course/syllabus/developer/database/topicIntro.md b/src/course/syllabus/developer/database/topicIntro.md deleted file mode 100644 index 430b9e99..00000000 --- a/src/course/syllabus/developer/database/topicIntro.md +++ /dev/null @@ -1,169 +0,0 @@ -# **Authentication Introduction** - -Web development has evolved dramatically over the years, and one of the pivotal aspects that have grown with it is authentication. Authentication plays a significant role in the modern web, ensuring that users are who they claim to be. - -## **The Necessity for Authentication in Web Development** - -Most websites need a way to verify who is making requests. Generally this involves providing some secret only the user could know: often called a password. - -This is fine as a one-off, but websites need to keep users logged in. You could ask the user to provide their password on every request. This would be a terrible user experience though. - -A challenge arises because HTTP, the protocol that underlies the web, is inherently stateless. This means that each HTTP request knows nothing about previous or future requests. With this limitation, there was a need for a mechanism to maintain continuity and remember users across requests. Enter "cookies". - -## **An Introduction to Cookies** - -Invented in 1994, cookies were designed to preserve state between HTTP requests. This could range from keeping track of items in a shopping cart to monitoring user behavior. - -Fundamentally, cookies are HTTP headers. When a server sends a response that contains a **`set-cookie`** header, browsers are designed to store this information. Consequently, for all future requests to the same domain, the browser will automatically include this stored information in the form of a **`cookie`** header. - -For instance, consider a server response: - -```bash -HTTP/1.1 200 Ok -content-type: text/html -set-cookie: test=123 - -

Hello

-``` - -If the user visits another page (sending a request), the browser automatically adds a `cookie` header: - -```vbnet -GET /other-page HTTP/1.1 -accept: text/html -cookie: test=123 -``` - -This allows the server to save info from one request and retrieve it on later requests from the same browser. - -### **Controlling Cookie Behaviour** - -Cookies come equipped with attributes that dictate their behaviour: - -1. **Expiry**: By default, a cookie is termed a "session" cookie and lasts until the user closes the browser. However, its lifespan can be extended using the **`Max-Age`** attribute. For example, **`set-cookie: test=123; Max-Age=60`** ensures the cookie persists for 60 seconds. -2. **Security**: Given that cookies can carry sensitive information, especially related to authentication, their protection is paramount. - - The `**HttpOnly**` attribute prevents JavaScript from accessing the value. This is important to avoid malicious scripts stealing cookie data (XSS attacks): - - ``` - set-cookie: test=123; Max-Age=60; HttpOnly - ``` - - - The `**Same-Site**` option prevents cookies from being sent on requests from other domains. This is important to avoid other sites impersonating your users (CSRF attacks): - - ``` - set-cookie: test=123; Max-Age=60; HttpOnly; Same-Site=Lax - ``` - - - The `**Secure**` option stops the cookie being set on un-encrypted connections. This is important to stop hackers intercepting requests and stealing cookies (MITM attacks): - - ``` - set-cookie: test=123; Max-Age=60; HttpOnly; Secure; Same-Site=Lax - ``` - - -## Authentication methods - -So how do we actually track whether a user is logged in? - -### **Stateless Authentication** - -The simplest way is to put all the info you need into cookies: - -``` -set-cookie: user={"id":"1","name":"oliverjam","role":"admin"} - -``` - -The server can read this JSON string and parse it into an object to find out info about which user is logged in. - -This is called "stateless" as no state is stored on the server. Assuming the server can trust the cookie it can trust this user previously logged in. - -But can you trust cookies? Cookies are just HTTP headers, so they're easy to fake: - -``` - -H 'cookie: user={"id":1,"name":"oliverjam","admin":true}' - -``` - -You can even edit them using dev tools - -### Signed cookies - -We can use cryptography to create a value that we can verify later. - -> Cryptography is the practice and study of techniques for secure communication. -> - -A "hash function" takes a value and a secret, and returns a "hash": - -``` -hash("hello", "secret123"); -// "iKqz7ejTrflNJquQ07r9SiCDBww7zOnAFO4EpEOEfAs=" -``` - -Hashing is a one-way process. There's no way to get the value back. - -Hashing the same value with the same secret will always produce the same result: - -``` -hash("hello", "secret123"); -// "iKqz7ejTrflNJquQ07r9SiCDBww7zOnAFO4EpEOEfAs=" -``` - -The only way to recreate this value is to know the secret. - -We can use this to "sign" our cookies: - -``` -set-cookie: hello.iKqz7ejTrflNJquQ07r9SiCDBww7zOnAFO4EpEOEfAs= -``` - -When the server receives the cookie it can re-hash the value ("hello") using the secret only it knows. If the hash matches the one in the cookie the server knows it hasn't been tampered with. - -You won't have to implement this yourself. It's safer to rely on battle-tested libraries for security features. - -### Downsides to stateless auth - -Cookies have a 4kb size limit. You'll often want to store more user info than that. - -The server cannot control who is logged in. If a user presents a non-expired cookie they are authenticated. - -### Session-based authentication - -This is the opposite of stateless auth. Store a single "session ID" in the cookie: - -``` -set-cookie: sid=abc123 -``` - -The server reads the cookie, then uses it to look up the saved session data. This would usually be stored in a database. - -### Session security - -Since the session ID is basically a password it must be secure. - -Session IDs should be long random strings. This prevents people from guessing them. - -They should also still be signed with a hash, so you can trust them. - -## Web security - -It's important to treat security very seriously. The web has been plagued by serious breaches. - -As web developers you have a responsibility to safeguard your users' private data. - -The average user re-uses the same password for most sites. If you half-ass your site's security and get hacked that has wider repercussions. - -> Don't roll your own crypto. - - -The golden rule of security. If in doubt, look it up. Find out what is popular and recommended by experts. - -Building a good secure user-experience takes time and effort. Here are some features we haven't covered: - -- Email verification -- Password resets -- Preventing automated mass account creation -- Banning abusive accounts - -If you don't have the time or ability to do it properly (e.g. you're hired for a 2 week freelance project) use a trusted 3rd party service. \ No newline at end of file diff --git a/src/course/syllabus/developer/introduction/topicIntro.md b/src/course/syllabus/developer/introduction/topicIntro.md deleted file mode 100644 index be938231..00000000 --- a/src/course/syllabus/developer/introduction/topicIntro.md +++ /dev/null @@ -1,78 +0,0 @@ -# The Role of Servers in Web Development - -Intro to servers, their relationship with web browsers, and the role they play in the wider context of web development. - -## Understanding Servers and Browsers - -At the heart of the internet, we find two key players: servers and browsers. - -## What is a Server? - -Any computer can act as a server. There's nothing inherently special about a server. In fact, your personal laptop could function as one. However, in practice, servers tend to be more powerful machines due to the demanding tasks they often perform. They are computers configured to run software that understands HTTP requests and provides data and services to other computers, known as clients, over a network. - -## Server and HTTP Model - -The server is the second half of the HTTP model. The client sends requests for resources, and the server receives these requests and sends responses. Here's a simple example: - -_Client Request:_ - -``` -GET /search?q=cats HTTP/1.1 -accept: text/html -``` - -_Server Response:_ - -``` -HTTP/1.1 200 Ok -content-type: text/html - - - - - A very fat cat - - - -``` - -In this example, the client is requesting a search for "cats," and the server responds with an HTML document containing an image of a cat. - -## What is a Browser? - -A web browser is a software application that executes untrusted code sent over the internet. To ensure security, browsers have strict limits on what they can do. This limitation is often referred to as the "sandbox." For example, they can't read files on your Desktop. As a web developer, you have no control over the browser environment - users can run any browser software, apply custom CSS, use extensions, or block specific parts of the page. - -## Brief Foray Into the History of JavaScript - -JavaScript, often abbreviated as JS, is a dynamic programming language that has significantly evolved since its inception and has become a cornerstone of modern web development. - -## JavaScript's Humble Beginnings - -JS started life as a basic scripting language for web pages. It was mostly used for simple tasks like showing and hiding elements, changing colours, and other rudimentary interactivity. Despite its initial simplicity, almost every web developer had to learn JavaScript as it was the _only_ dynamic language usable in the browser. This necessity led to a significant population of JavaScript developers. - -## JavaScript Developers Yearn for More - -As the number of JavaScript developers grew, so did their ambitions. They wanted to do more than just program web browsers. They desired to leverage their JavaScript knowledge to build more complex applications, but they were limited by the constraints of running JavaScript solely in the browser. - -## The Advent of Node.js - -A significant turning point came in 2009 when Ryan Dahl created Node.js. He extracted the JavaScript engine out of Chrome, creating a runtime that allowed developers to run JavaScript separately from the browser. This innovation meant that JavaScript could now be used for anything - web servers, Command Line Interface (CLI) programs, native apps, and even operating systems. - -## Browser vs Server - -The key difference between browsers and servers lies in the control and execution of code. In a browser, _your_ code is running on _their_ computer (i.e. the user’s computer). In contrast, on a server, _your_ code is running on _your_ computer. - -## Practical Differences - -1. **Servers have no DOM**: The Document Object Model (DOM) doesn't exist until a browser receives an HTML response and constructs it. This means **`window`** and **`document`** objects are undefined on the server. -2. **Servers are Secret**: In the browser, all code is sent to the user, and they can view it all in the developer tools. Users cannot see the code running on your server (assuming it is secured correctly). They will only see what you send in the HTTP response. This means it's safe to use API keys and other secrets on your server. -3. **Servers are Shared**: In the browser, your code runs separately on each user's computer, meaning one user can't see another user's data. You usually have one server for _all_ users, which means you can share variables between requests. However, be careful, as you could accidentally show one user's data to another. - -## Understanding Node.js - -Node.js is a runtime environment that allows JavaScript to run on the server-side. It comprises roughly two parts: - -1. The JavaScript language, including syntax and general-purpose features like arithmetic, variables, functions, loops, and promises. -2. Ways to access the underlying computer that browsers don't have. - -While browsers implement _Web APIs_ to provide useful features like **`document.querySelector`**, **`window.location`**, and **`element.clientWidth`**, Node doesn't implement these since they mostly don't make sense on a server. Instead, Node provides additional APIs for tasks like creating an HTTP server and accessing the computer's filesystem. diff --git a/src/course/syllabus/developer/server-side-app/topicIntro.md b/src/course/syllabus/developer/server-side-app/topicIntro.md deleted file mode 100644 index a45c7827..00000000 --- a/src/course/syllabus/developer/server-side-app/topicIntro.md +++ /dev/null @@ -1,171 +0,0 @@ -# **Single-Page Applications & React** - -This document provides an in-depth exploration of single-page applications (SPAs) and their role in modern web development. A particular focus is placed on the React framework, which has significantly influenced the way SPAs are developed. - -## **Brief history of web dev** - -The history of web development is marked by a shift from server-side rendering to client-side rendering, where much of the application logic now runs in the browser, leading to the development of SPAs. - -### **Server-Side Rendering (SSR)** - -Historically, web development relied heavily on server-side rendering. In this model, when the browser requested a page, the server processed that request and responded with HTML for the browser to render. The browser acted as a "thin client," meaning it simply displayed what the server gave it and handled minimal logic. - -Client-side JavaScript was used to add a layer of interactivity (like modals) to the page, but the majority of the heavy lifting was done on the server side, with **HTML serving as the source of truth\***.\* - -**Advantages of SSR:** - -1. **Simplicity**: Browsers automatically handle a plethora of tasks, reducing the need for developers to implement complex features via JS. - - Imagine implementing links using JS. It’s easy to miss but native elements like `` and `
` handle a *lot* of complexity. - -2. **Language Flexibility**: Server-side code can be written in any language, including PHP, Ruby, Python, Java, etc., providing a broad selection for developers. -3. **Hardware Power**: Web servers typically run on powerful dedicated hardware, while client-side code runs on the user's device, which can often be an underpowered mobile phone. -4. **Security**: Server code is hidden from the user, preventing access to sensitive data and secrets, and ensuring a higher level of security compared to client-side code. - -**Disadvantages of SSR:** - -1. **Perceived Performance**: Every interaction with the site requires a request to the server and back. Full page loads can make the site feel slower to users. -2. **Limited Interactivity**: Building dynamic, interactive applications that can compete with native applications is more challenging. -3. **Server Maintenance**: Deploying, securing, and maintaining a server can be expensive and complex, especially for popular sites. -4. **Separate Developer Skill Sets**: Historically, backend and frontend development were separate skill sets, often requiring two teams to write in two different languages, which can be inefficient and costly. - -## **The Emergence of Single-Page Applications (SPAs)** - -With SPAs, all application logic runs in the browser, and only one HTML page (**`index.html`**) is requested. Following this, all routing and templating occurs in the browser via JavaScript. - -While database access is still server-side (for security reasons), all application logic and templating occur in the browser. The application fetches JSON data from servers (either third-party or owned) and uses this data to render dynamic Document Object Model (DOM) content. In this model, **JSON becomes the source of truth**. - -**Advantages of SPAs:** - -1. **Perceived Performance**: SPAs don't require full page reloads for small changes, and fetching JSON to update a section can feel faster to users. -2. **Interactivity**: More dynamic interactions are possible with SPAs. Features such as list filtering, element deletion, and animated transitions become easier to implement. -3. **Reduced Server Needs**: If an SPA uses third-party APIs, it doesn't need a server of its own. Free static hosts like Netlify can host the HTML, CSS, and JavaScript files, bypassing the complexities and expenses of server management. -4. **Full Stack JavaScript**: The same developers can write both the frontend and backend code in JavaScript, increasing efficiency. - -**Disadvantages of SPAs:** - -1. **Complexity**: Building non-trivial applications in client-side JavaScript can be challenging, particularly when managing the ongoing state of the application. -2. **Mandatory JavaScript**: SPAs can only run JavaScript in the browser, which isn't necessarily the best language for certain tasks (e.g., precision currency calculations). - - ```bash - 0.1 + 0.2 === 0.30000000000000004; // true - ``` - -3. **Hardware Limitations**: SPAs run on the user's device (often a £100 Android phone with a CPU from 5 years ago), which may not have the processing power of a dedicated web server. JavaScript can be slow to parse and execute on older devices. -4. **Security**: All code executes in the browser, which can't hide API keys or validate user input, necessitating a server to ensure security. -5. **Rendering Delay**: SPAs initially display a blank page until the JavaScript loads, parses, and executes. JavaScript is the "slowest resource per byte," meaning it takes longer to run 1KB of JavaScript than render 1KB of HTML. -6. **Large Downloads**: SPAs require users to download all the application's code, offloading processing from the company servers to the user's device. - -## **The Role of Frontend Frameworks like React** - -Frameworks such as React help manage the complexity of building big applications by providing a shared structure for developers and handling lower-level DOM updates. - -**Advantages of Frontend Frameworks:** - -1. **Shared Understanding**: A framework provides patterns for structuring code within a team and often has extensive documentation available online. -2. **User Experience**: Good frameworks facilitate building cool stuff and can empower newer developers. -3. **Developer Experience**: Frameworks can make building complex apps more enjoyable and often come with built-in features that developers want. - -**Disadvantages of Frontend Frameworks:** - -1. **Performance**: Frameworks are additional code that must load before your own. They can also encourage bad habits leading to bloated apps, e.g. just \*\*\*\*`npm install do-the-thing`. -2. **Lock-in**: React apps, for instance, can't usually use libraries written for Angular. An organization tends to commit to one technology. -3. **Limited Control**: Frameworks like React are built for specific uses (in React's case, Facebook). They might add features you don't need or refuse to add features you want. - -## **Why Use React?** - -React, a JavaScript library for building user interfaces, primarily for SPAs, offers numerous benefits for developers. - -1. **Declarative UI**: Instead of instructing the browser on each step to render an element, developers can describe it using JSX (JavaScript XML), just like HTML. This approach includes event listeners, making interactions more declarative. - - ```jsx - // imperative - function Box() { - const div = document.createElement("div"); - div.classList.add("box"); - div.append("Hello world"); - return div; - } - - // declarative - function Box() { - return
Hello world
; - } - - // declarative event listeners - return ; - ``` - -2. **JSX Closeness to HTML**: JSX, an HTML-like syntax used with React, allows developers to write HTML structures inside JavaScript. - - ```jsx - // standard JS - function DateInput() { - return h("input", { id: "dob", type: "date", placeholder: "dd/mm/yyyy" }); - } - - // JSX - function DateInput() { - return ; - } - ``` - -3. **Component Model**: React encourages dividing your app into pieces or "components," each with its markup, styling, and behaviour, providing a logical mental model and encouraging code reuse. - - ```jsx - function App() { - return ( - - - - - - - - - - - -
- ); - } - ``` - -4. **"Just JavaScript"**: React doesn't require a special templating language. Developers use JavaScript conditionals, variables, and loops to render markup. - - ```jsx - const posts = ["blah", "other post", "..."]; - return
There are {posts.length || 0} blog posts.
; - ``` - -5. **"UI as a Function of State"**: React follows the principle of "UI as a function of state," meaning for any given state, the rendered DOM should always be the same. Developers only need to update the state, and React ensures the UI stays in sync. This approach simplifies the management of the UI based on state changes and allows React to manage the underlying DOM updates. - - By focusing on "UI as a function of state," React upholds the idea of "pure functions," where the output is always the same for the given input, and no other part of the system is affected. Thus, the UI is directly derived from the state of the application, simplifying the correlation between the state and what the user sees. - - ```jsx - // pure functions - // if add is “pure” we can be sure what x is every time we call it. - // we also know nothing else will be affected. - - let x = add(1, 2); - - // apply the same idea to UI - // We can know exactly what the DOM is for any given app state. - - let state = { name: "oli", basket: [...] } - let dom = app(state); - // OR `ui = fn(state)` - - // UI is a function of your state - return ; - - // Instead of: - // When this thing happens, find this element and change this property to that value... - - // we have: - // Given the current state, this is what the UI should be - - // and React just makes it happen. - ``` - -By embracing these features, React provides a compelling case for developers seeking to build robust, interactive web applications that need to manage complex state changes and ensure a high degree of interactivity. React helps abstract away many complexities, allowing developers to focus on building the best possible user interfaces. diff --git a/src/course/syllabus/developer/server/topicIntro.md b/src/course/syllabus/developer/server/topicIntro.md deleted file mode 100644 index 4728909b..00000000 --- a/src/course/syllabus/developer/server/topicIntro.md +++ /dev/null @@ -1,191 +0,0 @@ -# Intro to Databases - -How do web applications store and retrieve vast amounts of information? How does an e-commerce website keep track of its products and inventory? Or how does a social media platform manage user profiles and posts? The answer lies in databases. Here, we'll introduce you to the concept of databases and explain their role in web development. - -## Understanding Databases - -At its core, a database is a structured collection of information. The term "structured" implies that the data can be easily organised and queried by a computer. This is opposed to for example a paragraph in a book that can contain data but lacks structure. - -To better grasp structured data, here are a few examples: - -1. **HTML table**: Structured data as it organises information into rows and columns, making it easy to access and present. -2. **JSON object**: Structured data format for exchanging information between servers and web applications, following a specific syntax of key-value pairs or arrays. -3. **Spreadsheet**: Structured data tool that organises information into rows and columns, allowing for efficient data organisation and analysis. - -## Relational Databases: Memory vs. Storage - -Computers have two primary forms of storage: memory (RAM) and disk storage. Memory allows a computer to store and quickly access data that it actively uses. However, memory is relatively expensive and limited, typically ranging from 8 to 16 gigabytes in modern computers. On the other hand, disk storage, though slower, is more cost-effective and offers larger capacities, typically reaching hundreds of gigabytes. - -In the early days of computing, memory was extremely expensive, leading to the development of databases optimised for memory usage. These databases are known as "relational" databases. They store data in tables, resembling spreadsheets, and allow efficient data access. - -For instance, consider a table named "fruits" that contains information about fruit names, quantities, and prices: - -| name | quantity | price | -| ------ | -------- | ----- | -| apple | 10 | 1.00 | -| banana | 20 | 0.40 | - -To establish relationships between different tables, relational databases introduce the concept of "foreign keys." Suppose we have another table named "stores" that includes store locations and IDs: - -| id | location | -| --- | ---------- | -| 1 | camden | -| 2 | kensington | - -By adding a foreign key, such as the "store_id" column, to the "fruits" table, we can relate each fruit entry to a specific store: - -| name | quantity | price | store_id | -| ------ | -------- | ----- | -------- | -| apple | 10 | 1.00 | 1 | -| banana | 20 | 0.40 | 1 | -| apple | 05 | 1.20 | 2 | -| banana | 30 | 0.20 | 2 | - -This relational structure minimises data duplication and allows us to determine which store offers which fruit at what price easily. - -## Advantages of Relational Databases - -The relational database structure offers several advantages. Firstly, it reduces data duplication, as each store is listed only once, regardless of the number of fruits they have. Comparatively, representing the same information using objects would result in duplicated store details within each fruit object. - -Consider the following JSON representation: - -```json -{ - "fruits": [ - { - "name": "apple", - "quantity": 10, - "price": 1, - "store": { "id": 1, "location": "camden" } - }, - { - "name": "banana", - "quantity": 20, - "price": 0.4, - "store": { "id": 1, "location": "camden" } - }, - {...} - ] -} - -``` - -In a database with thousands of entries, this approach would result in significant duplication. By employing relational databases, we save storage space and ensure data consistency. - -Secondly, relational databases simplify answering certain types of questions. For example, determining the total quantity of fruit requires adding up the "quantity" column, without the need to consider the associated stores. Relational databases enable efficient querying and data analysis. - -## Popular Relational Databases and SQL - -Several popular relational databases are widely used in web development, including MySQL, PostgreSQL, and SQLite. They offer robust features, performance, and compatibility with various programming languages. - -To interact with a relational database, developers use Structured Query Language (SQL). SQL is a specialised language for retrieving and manipulating data in a relational database. For example, the following SQL query retrieves the "name" and "quantity" columns from the "fruits" table: - -```sql -SELECT name, quantity FROM fruits; -``` - -SQL empowers developers to extract information from the database and perform complex operations using a standardised syntax. - -## Non-relational Databases and NoSQL - -As computer memory became cheaper, alternative database solutions emerged. These databases utilised less structured data storage approaches, such as objects. While they might be less efficient in terms of storage utilisation, they offered faster data retrieval by keeping everything in memory. These databases were dubbed "NoSQL" databases due to their lack of support for SQL. - -MongoDB and CouchDB are examples of popular NoSQL databases. Developers often prefer NoSQL databases when the object-oriented paradigm aligns better with their mental model and the requirements of their projects. However, for most web development scenarios, relational databases remain the safer and more versatile choice. - -We’ll be using SQLite as our relational database. SQLite is lightweight, easy to set up, and provides a smooth learning experience. - -## Using Relational DBs - -### Understanding Relationships - -Relational databases excel at managing three main types of relationships: one-to-one, one-to-many, and many-to-many. - -1. **One-to-one relationship**: In this type, each entity in one table corresponds to exactly one entity in another table. For example, each country has one capital city, and each capital city belongs to one country. - - **Tables** - - countries - - | id | name | capital_id | - | --- | ---- | ---------- | - | 1 | uk | 1 | - | 2 | usa | 2 | - - cities - - | id | name | population | - | --- | ------------- | ---------- | - | 1 | london | 8.9m | - | 2 | washington dc | 0.7m | - - We use a “foreign key” to create relationships. - - The `capital_id` column in `countries` represents a row in `cities`. - -2. **One-to-many relationship**: This relationship exists when each entity in one table is associated with multiple entities in another table, but each entity in the second table corresponds to only one entity in the first table. For instance, a director can create multiple films, while each film has only one director. - - **Tables** - - directors - - | id | name | - | --- | ------------- | - | 1 | Olivia Wilde | - | 2 | Sofia Coppola | - - films - - | id | name | director_id | - | --- | ------------------- | ----------- | - | 1 | booksmart | 1 | - | 2 | lost in translation | 2 | - | 3 | the bling ring | 2 | - - The only difference here is the foreign keys aren’t unique. - - We represent the “many” relationship by using the same `director_id` for multiple films. - -3. **Many-to-many relationship**: This relationship occurs when multiple entities in one table are associated with multiple entities in another table. A classic example is the relationship between actors and films. An actor can appear in many films, and a film can include multiple actors. - - **Tables** - - actors - - | id | name | - | --- | -------------- | - | 1 | Cate Blanchett | - | 2 | Ian McKellan | - - films - - | id | name | - | --- | -------------------------------- | - | 1 | LOTR: The Fellowship of the Ring | - | 2 | X-Men | - | 3 | Ocean's 8 | - - actors_films (join table) - - | actor_id | film_id | - | -------- | ------- | - | 1 | 1 | - | 1 | 3 | - | 2 | 1 | - | 2 | 2 | - -We cannot use foreign keys here since each film would need multiple `actor_id`columns. Instead we can use another table to store the relationships. - -In a many-to-many relationship, a join table bridges the gap between the two related tables. By using the join table "actors_films," we can associate actors with the films they appear in. This allows us to look up an actor's films efficiently. - -For example, the following SQL query retrieves the names of actors and the names of films they appear in: - -```sql -SELECT actors.name, films.name - FROM actors - JOIN actors_films ON actors.id = actor_id - JOIN films ON actor_id = films.id; -``` - ---- - -In conclusion, relational databases offer powerful features, minimise data duplication, and allow for complex querying using SQL. While non-relational databases offer flexibility and speed, relational databases remain the go-to choice for most web development scenarios. From a9313895bfa0d0261403574e40a92f75448e4e9a Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 29 Apr 2024 13:10:19 +0200 Subject: [PATCH 003/118] add project 1 criteria and learning outcomes --- src/_includes/course.11ty.js | 6 +-- src/_includes/syllabus.11ty.js | 10 ++-- .../project-1-server/learning-outcomes.md | 47 +++++++++++++++++ .../developer/project-1-server/project.md | 26 ++++++++++ .../{server => project-1-server}/resources.md | 0 .../{server => project-1-server}/schedule.md | 0 .../developer/server/learning-outcomes.md | 50 ------------------- .../syllabus/developer/server/project.md | 41 --------------- 8 files changed, 81 insertions(+), 99 deletions(-) create mode 100644 src/course/syllabus/developer/project-1-server/learning-outcomes.md create mode 100644 src/course/syllabus/developer/project-1-server/project.md rename src/course/syllabus/developer/{server => project-1-server}/resources.md (100%) rename src/course/syllabus/developer/{server => project-1-server}/schedule.md (100%) delete mode 100644 src/course/syllabus/developer/server/learning-outcomes.md delete mode 100644 src/course/syllabus/developer/server/project.md diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 5ee835ef..681b3528 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -33,9 +33,9 @@ exports.render = ({ page: { url }, content }) => { <${Section} title="Developer" url=${url} subpath="course/syllabus/developer">
  • <${Link} url=${url} href="/course/syllabus/developer/introduction/schedule">Introduction
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/server/schedule/">Server
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/database/schedule/">Database
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/authentication/schedule/">Authentication
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-server/schedule/">Project 1: Server
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/database/schedule/">Project 1: Frontend
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/authentication/schedule/">Project 1: Test & Deploy
  • <${Link} url=${url} href="/course/syllabus/developer/server-side-app/schedule/">Server-side app
  • <${Link} url=${url} href="/course/syllabus/developer/client-side-app/schedule/">Client-side app
  • <${Link} url=${url} href="/course/syllabus/developer/full-stack-app/schedule/">Full-stack app
  • diff --git a/src/_includes/syllabus.11ty.js b/src/_includes/syllabus.11ty.js index a7595384..4f6dd270 100644 --- a/src/_includes/syllabus.11ty.js +++ b/src/_includes/syllabus.11ty.js @@ -27,6 +27,11 @@ exports.render = ({ tabs.schedule !== false && html`<${Tab} page=${page} href="schedule">Schedule` } + ${ + tabs.project !== false && + !isTechforBetterPage && + html`<${Tab} page=${page} href="project">Project` + } ${ tabs.learnings !== false && !isApplicationPage && @@ -51,11 +56,6 @@ exports.render = ({ !isTechforBetterPage && html`<${Tab} page=${page} href="homework">Homework` } - ${ - tabs.project !== false && - !isTechforBetterPage && - html`<${Tab} page=${page} href="project">Project` - } ${ tabs.learnings !== false && isApplicationPage && diff --git a/src/course/syllabus/developer/project-1-server/learning-outcomes.md b/src/course/syllabus/developer/project-1-server/learning-outcomes.md new file mode 100644 index 00000000..f1f583cd --- /dev/null +++ b/src/course/syllabus/developer/project-1-server/learning-outcomes.md @@ -0,0 +1,47 @@ +## Learning Outcomes + +- Develop a server using Express and TypeScript for backend applications (K9, S1, S11, S12) +- Identify the server's role within a full stack application (K1, K2, K3) +- Understand the benefits of using TypeScript over JavaScript, such as improved code quality, enhanced developer productivity, and better tooling support (K7, S1) +- Learn the basic syntax and features of TypeScript (S1, S16) +- Gain experience in using developer tooling, including IDEs, linters, and formatters, to enhance productivity (B3, B9) +- Grasp the concept and purpose of RESTful APIs (K11, S12) +- Construct and implement RESTful APIs effectively (S1, S11, S12, S16) +- Determine appropriate scenarios for applying RESTful APIs (K7, S9, B2) +- Design endpoint structures for data creation, modification, and deletion (K11, S8, S12) +- Utilize `node:fs` for filesystem operations (S1, S16) +- Gain experience in documenting the application's architecture, API endpoints, and user guides for future reference and maintenance (S15, B4, B7, B8) +- Utilize Postman to test RESTful APIs independently of frontend components, ensuring proper functionality, error handling, and adherence to API specifications (S5, S6, S7) + +## Relevant KSB’s + +- K1: all stages of the software development lifecycle +- K2: roles and responsibilities within the software development lifecycle +- K3: the roles and responsibilities of the project lifecycle within your organisation, and your role +- K7: software design approaches and patterns, to identify reusable off-the-shelf solutions to commonly occurring problems +- K9: principles of algorithms, logic and data structures relevant to software development +- K11: software designs and functional/technical specifications + +--- + +- S1: create logical and maintainable code +- S4: test code and analyse results to correct errors found using unit testing +- S5: conduct a range of test types, such as Integration, System, User Acceptance, Non-Functional, Performance and Security testing +- S6: identify and create test scenarios +- S7: apply structured techniques to problem solving, can debug code and can understand the structure of programmes to identify and resolve issues +- S8: create simple software designs to effectively communicate understanding of the program +- S9: create analysis artefacts, such as use cases and/or user stories +- S11: apply an appropriate software development approach according to the relevant paradigm +- S12: follow software designs and functional/technical specifications +- S13: follow testing frameworks and methodologies +- S15: communicate software solutions and ideas to technical and non-technical stakeholders +- S16: apply algorithms, logic and data structures + +--- + +- B2: Applies logical thinking +- B3: Maintains a productive, professional, and secure working environment +- B4: Works collaboratively with a wide range of people in different roles, internally and externally to the team, with a positive attitude to inclusion & diversity +- B7: Communicates effectively in a variety of situations to both a technical and non-technical audience +- B8: Shows curiosity to the business context in which the solution will be used +- B9: Committed to continued professional development diff --git a/src/course/syllabus/developer/project-1-server/project.md b/src/course/syllabus/developer/project-1-server/project.md new file mode 100644 index 00000000..543ca23e --- /dev/null +++ b/src/course/syllabus/developer/project-1-server/project.md @@ -0,0 +1,26 @@ +# AI Learning Tool + +Learners will develop an AI-driven web application that dynamically generates quizzes for users in a specified subject area. These quizzes will have interfaces both for quiz creation and quiz taking. + +### User Stories + +As a **learner**, I want to: + +- Select a subject area for my quiz. +- Begin a quiz session with randomly generated questions. +- View a summary of my quiz results, including areas of strength and weakness. +- Add, edit, and delete quiz questions and answers. +- Generate reports on quiz performance + +### Acceptance Criteria + +**The application should:** + +- Dynamically generate quizzes with adaptive difficulty. +- Allow users to see a summary of their results after completing a quiz +- Allow users to see a summary of their results +- Provide an engaging, intuitive user interface. +- Be deployed online, accessible from various devices. +- Follow React principles and best practices +- Have automated tests for backend functionality +- Be deployed to a cloud platform diff --git a/src/course/syllabus/developer/server/resources.md b/src/course/syllabus/developer/project-1-server/resources.md similarity index 100% rename from src/course/syllabus/developer/server/resources.md rename to src/course/syllabus/developer/project-1-server/resources.md diff --git a/src/course/syllabus/developer/server/schedule.md b/src/course/syllabus/developer/project-1-server/schedule.md similarity index 100% rename from src/course/syllabus/developer/server/schedule.md rename to src/course/syllabus/developer/project-1-server/schedule.md diff --git a/src/course/syllabus/developer/server/learning-outcomes.md b/src/course/syllabus/developer/server/learning-outcomes.md deleted file mode 100644 index 8c0fc188..00000000 --- a/src/course/syllabus/developer/server/learning-outcomes.md +++ /dev/null @@ -1,50 +0,0 @@ -## Node - -### Servers - -- [ ] Install libraries from npm -- [ ] Understand when to install a Dependency as a Dev Dependency -- [ ] Create a web server that responds to http requests -- [ ] Conditionally set ports for our server based on the runtime environment -- [ ] Prevent sensitive data from being pushed to GitHub -- [ ] Route requests to the correct handler function(s) -- [ ] Serve different types of files to the client -- [ ] Read information sent in a URL query string -- [ ] Deploy app to a live production server -- [ ] Set up continuous deployment to a live production server - -### Request bodies - -- [ ] Handle data received from a POST request -- [ ] Give descriptive names to HTML form input fields so that it is easy to access data in the request -- [ ] Parse data sent via a default HTML form submission - -### Core modules - -- [ ] Use core Node modules -- [ ] Read files synchronously and asynchronously using Node’s fs module - -## Design - -- [ ] Design a website that is easy to use and to navigate -- [ ] Identify common design patterns that aid usability -- [ ] Build website navigation that demonstrates good usability -- [ ] Make HTML elements look different on hover and focus to indicate their state to the user - -## Testing - -- [ ] Write tests with the built-in Node Test Runner -- [ ] Create package.json scripts that run our tests - -## DevOps - -- [ ] Set up continuous deployment using fly.io -- [ ] Learn how automated builds are triggered by code changes. -- [ ] Manage environment variables and secrets - - -## Developer Toolkit - -### User stories - -- [ ] **Write user stories with clearly defined acceptance criteria** diff --git a/src/course/syllabus/developer/server/project.md b/src/course/syllabus/developer/server/project.md deleted file mode 100644 index f2aa999e..00000000 --- a/src/course/syllabus/developer/server/project.md +++ /dev/null @@ -1,41 +0,0 @@ -Your project this week is to build a microblogging site. It should allow users to submit their own posts and view all the posts submitted by others. - -**Note**: we aren't expecting the data to persist when the server restarts (we'll be looking at databases for this next week). - -## Spike - -Before you start implementing features you need to figure out how to deploy a Node app to Fly.io. - -Fly is a "Platform-as-a-service" provider (PaaS). PaaS is a type of cloud computing service that provides users with a platform for deploying and managing apps. They provide a convenient way for developers to quickly get their apps up and running without having to worry about the technical details of the infrastructure and resources they need. - -### Questions to consider - -1. What are environment variables and why might we want to hide them? -2. How can we automatically deploy commits to our `main` branch? - -### Useful resources - -- [Deploying web apps to Fly.io](https://oliverjam.es/articles/deploying-to-fly) (you don't need to worry about the "Persistent Volumes" section for this week's spike) -- [Continuous Deployment with Fly and GitHub Actions](https://fly.io/docs/app-guides/continuous-deployment-with-github-actions/) - -## User stories - -### Core - -- **As an opinionated person, I want to**: post my thoughts so others can read them -- **As a bored person, I want to**: read what other people have posted - -### Stretch - -- **As an impulsive person, I want to:** delete my posts so no one can see them anymore - -## Acceptance Criteria - -- [ ] Deployed to Fly.io -- [ ] A page with a form to submit posts, and a page showing all posts -- [ ] No `.html` files (all HTML responses should be created dynamically within Node) -- [ ] No client-side JavaScript (all logic should happen on the server) -- [ ] All static assets served correctly (CSS, favicon etc) -- [ ] Tests for each server route -- [ ] A responsive, mobile-first design -- [ ] Ensure your app is accessible to as many different users as possible From cf407e767d2a28695ebb0e009d839a73c0eca687 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 29 Apr 2024 16:45:28 +0200 Subject: [PATCH 004/118] put ksb's onto their own page and make learning outcomes into ticboxes --- src/course/ksb.md | 48 ++++++++++++++++ .../project-1-server/learning-outcomes.md | 57 +++++-------------- 2 files changed, 63 insertions(+), 42 deletions(-) create mode 100644 src/course/ksb.md diff --git a/src/course/ksb.md b/src/course/ksb.md new file mode 100644 index 00000000..7f1c0b1d --- /dev/null +++ b/src/course/ksb.md @@ -0,0 +1,48 @@ +# KSB's + +## Knowledge + +- **K1:** all stages of the software development lifecycle (what each stage contains, including the inputs and outputs) +- **K2:** roles and responsibilities within the software development lifecycle (who is responsible for what) +- **K3:** the roles and responsibilities of the project lifecycle within your organisation, and your role +- **K4:** how best to communicate using different communication methods and how to adapt appropriately to different audiences +- **K5:** the similarities and differences between different software development methodologies, such as agile and waterfall +- **K6:** how teams work effectively to produce software and how to contribute appropriately +- **K7:** software design approaches and patterns, to identify reusable off-the-shelf solutions to commonly occurring problems +- **K8:** organisational policies and procedures relating to the tasks being undertaken, and when to follow them (e.g., the storage and treatment of GDPR sensitive data) +- **K9:** principles of algorithms, logic and data structures relevant to software development (e.g., Arrays, Stacks, Queues, Linked Lists, Trees, Graphs, Hash Tables, Sorting Algorithms, Searching Algorithms, Critical sections and race conditions) +- **K10:** principles and uses of relational and non-relational databases +- **K11:** software designs and functional/technical specifications +- **K12:** software testing frameworks and methodologies + +## Skills + +- **S1:** create logical and maintainable code +- **S2:** develop effective user interfaces +- **S3:** link code to data sets +- **S4:** test code and analyse results to correct errors found using unit testing +- **S5:** conduct a range of test types, such as Integration, System, User Acceptance, Non-Functional, Performance and Security testing +- **S6:** identify and create test scenarios +- **S7:** apply structured techniques to problem solving, can debug code and can understand the structure of programmes to identify and resolve issues +- **S8:** create simple software designs to effectively communicate understanding of the program +- **S9:** create analysis artefacts, such as use cases and/or user stories +- **S10:** build, manage and deploy code into the relevant environment +- **S11:** apply an appropriate software development approach according to the relevant paradigm (e.g., object-oriented, event-driven or procedural) +- **S12:** follow software designs and functional/technical specifications +- **S13:** follow testing frameworks and methodologies +- **S14:** follow company, team or client approaches to continuous integration, version and source control +- **S15:** communicate software solutions and ideas to technical and non-technical stakeholders +- **S16:** apply algorithms, logic and data structures +- **S17:** interpret and implement a given design whist remaining compliant with security and maintainability requirements + +## Behaviours + +- **B1:** Works independently and takes responsibility (e.g., has a disciplined and responsible approach to risk, and stays motivated and committed when facing challenges) +- **B2:** Applies logical thinking (e.g., uses clear and valid reasoning when making decisions related to undertaking work instructions) +- **B3:** Maintains a productive, professional, and secure working environment +- **B4:** Works collaboratively with a wide range of people in different roles, internally and externally to the team, with a positive attitude to inclusion & diversity +- **B5:** Acts with integrity with respect to ethical, legal and regulatory ensuring the protection of personal data, safety and security +- **B6:** Shows initiative and takes responsibility for solving problems within their own remit, being resourceful when faced with a problem to solve +- **B7:** Communicates effectively in a variety of situations to both a technical and non-technical audience +- **B8:** Shows curiosity to the business context in which the solution will be used, displaying an inquisitive approach to solving the problem (includes the curiosity to explore new opportunities and techniques; the tenacity to improve methods and maximise performance of the solution; and creativity in their approach to solutions) +- **B9:** Committed to continued professional development diff --git a/src/course/syllabus/developer/project-1-server/learning-outcomes.md b/src/course/syllabus/developer/project-1-server/learning-outcomes.md index f1f583cd..1a1c374e 100644 --- a/src/course/syllabus/developer/project-1-server/learning-outcomes.md +++ b/src/course/syllabus/developer/project-1-server/learning-outcomes.md @@ -1,47 +1,20 @@ ## Learning Outcomes -- Develop a server using Express and TypeScript for backend applications (K9, S1, S11, S12) -- Identify the server's role within a full stack application (K1, K2, K3) -- Understand the benefits of using TypeScript over JavaScript, such as improved code quality, enhanced developer productivity, and better tooling support (K7, S1) -- Learn the basic syntax and features of TypeScript (S1, S16) -- Gain experience in using developer tooling, including IDEs, linters, and formatters, to enhance productivity (B3, B9) -- Grasp the concept and purpose of RESTful APIs (K11, S12) -- Construct and implement RESTful APIs effectively (S1, S11, S12, S16) -- Determine appropriate scenarios for applying RESTful APIs (K7, S9, B2) -- Design endpoint structures for data creation, modification, and deletion (K11, S8, S12) -- Utilize `node:fs` for filesystem operations (S1, S16) -- Gain experience in documenting the application's architecture, API endpoints, and user guides for future reference and maintenance (S15, B4, B7, B8) -- Utilize Postman to test RESTful APIs independently of frontend components, ensuring proper functionality, error handling, and adherence to API specifications (S5, S6, S7) +{% box %} -## Relevant KSB’s +[Here's a reminder of the full list of KSB's](/course/ksb) -- K1: all stages of the software development lifecycle -- K2: roles and responsibilities within the software development lifecycle -- K3: the roles and responsibilities of the project lifecycle within your organisation, and your role -- K7: software design approaches and patterns, to identify reusable off-the-shelf solutions to commonly occurring problems -- K9: principles of algorithms, logic and data structures relevant to software development -- K11: software designs and functional/technical specifications +{% endbox %} ---- - -- S1: create logical and maintainable code -- S4: test code and analyse results to correct errors found using unit testing -- S5: conduct a range of test types, such as Integration, System, User Acceptance, Non-Functional, Performance and Security testing -- S6: identify and create test scenarios -- S7: apply structured techniques to problem solving, can debug code and can understand the structure of programmes to identify and resolve issues -- S8: create simple software designs to effectively communicate understanding of the program -- S9: create analysis artefacts, such as use cases and/or user stories -- S11: apply an appropriate software development approach according to the relevant paradigm -- S12: follow software designs and functional/technical specifications -- S13: follow testing frameworks and methodologies -- S15: communicate software solutions and ideas to technical and non-technical stakeholders -- S16: apply algorithms, logic and data structures - ---- - -- B2: Applies logical thinking -- B3: Maintains a productive, professional, and secure working environment -- B4: Works collaboratively with a wide range of people in different roles, internally and externally to the team, with a positive attitude to inclusion & diversity -- B7: Communicates effectively in a variety of situations to both a technical and non-technical audience -- B8: Shows curiosity to the business context in which the solution will be used -- B9: Committed to continued professional development +- [ ] Develop a server using Express and TypeScript for backend applications (K9, S1, S11, S12) +- [ ] Identify the server's role within a full stack application (K1, K2, K3) +- [ ] Understand the benefits of using TypeScript over JavaScript, such as improved code quality, enhanced developer productivity, and better tooling support (K7, S1) +- [ ] Learn the basic syntax and features of TypeScript (S1, S16) +- [ ] Gain experience in using developer tooling, including IDEs, linters, and formatters, to enhance productivity (B3, B9) +- [ ] Grasp the concept and purpose of RESTful APIs (K11, S12) +- [ ] Construct and implement RESTful APIs effectively (S1, S11, S12, S16) +- [ ] Determine appropriate scenarios for applying RESTful APIs (K7, S9, B2) +- [ ] Design endpoint structures for data creation, modification, and deletion (K11, S8, S12) +- [ ] Utilize `node:fs` for filesystem operations (S1, S16) +- [ ] Gain experience in documenting the application's architecture, API endpoints, and user guides for future reference and maintenance (S15, B4, B7, B8) +- [ ] Utilize Postman to test RESTful APIs independently of frontend components, ensuring proper functionality, error handling, and adherence to API specifications (S5, S6, S7) From a256db04de4acba40522285b33f6dda921cdea20 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Mon, 29 Apr 2024 15:47:17 +0100 Subject: [PATCH 005/118] Updates to resources tab for week one --- .../developer/project-1-server/resources.md | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/src/course/syllabus/developer/project-1-server/resources.md b/src/course/syllabus/developer/project-1-server/resources.md index 32bbc431..3fd3c1bb 100644 --- a/src/course/syllabus/developer/project-1-server/resources.md +++ b/src/course/syllabus/developer/project-1-server/resources.md @@ -1,13 +1,26 @@ These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. +## Typescript -- ### [Learn nodejs.dev](https://nodejs.dev/en/learn/) - Official counterpart to the Node docs. Useful for getting realistic examples of features when the docs are overwhelming and confusing. -- ### [Art of Node](https://github.com/maxogden/art-of-node) - Popular (if slightly outdated) overview of what Node is and how it works. +- ### [Official TS handbook](https://www.typescriptlang.org/docs/handbook/intro.html) + + +## Express and RESTFUL APIs - ### [What is a web server?](https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_is_a_web_server) General background info on how servers work +- ### [Setting up Typescript and Express](https://blog.logrocket.com/how-to-set-up-node-typescript-express/) + A guide on setting up the tools for this weeks project. Good explanation and generating and modifying a TS config file. + +- ### [Node fs and Express](https://blog.logrocket.com/how-to-set-up-node-typescript-express/) + Good node tutorial demonstrating using json object as a mock database. + +- ### [Testing your server](https://learning.postman.com/docs/designing-and-developing-your-api/testing-an-api/) + Documentation on using Postman to make a collection of tests for api endpoints. + ## DevOps -- ### [What is continuous deployment?](https://www.gatsbyjs.com/docs/glossary/continuous-deployment/) +- ### [Deploy a server with a EC2 instance](https://dev.to/drsimplegraffiti/from-code-to-the-cloud-a-step-by-step-guide-to-deploying-your-nodejs-app-on-aws-ec2-4300) Gatsby is a React-based open source framework for creating websites. They provide an outline continuous deployment. + + + From 1a4f8327fd7297e8def71faf333980a5d67c181d Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Tue, 30 Apr 2024 16:53:43 +0100 Subject: [PATCH 006/118] first draft --- .../developer/project-1-server/schedule.md | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/src/course/syllabus/developer/project-1-server/schedule.md b/src/course/syllabus/developer/project-1-server/schedule.md index f5143bba..9d5b6371 100644 --- a/src/course/syllabus/developer/project-1-server/schedule.md +++ b/src/course/syllabus/developer/project-1-server/schedule.md @@ -2,32 +2,35 @@ layout: schedule schedule: monday: - # - name: Thought of the week (safeguarding) - # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - # type: personal-development - # start: 11:00 - # end: 11:45 + - name: Thought of the week (safeguarding) + url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + type: personal-development + start: 12:00 + end: 13:00 # - name: Tech for Better # type: workshop # start: 14:00 # end: 14:45 - # - name: Thought of the week (British values) - # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - # type: personal-development - # start: 14:45 - # end: 15:30 - # - name: Intro to project managment - # start: 15:45 - # end: 16:00 - # url: https://fac-slides.netlify.app/slides/proj-mgmt/ + # + tuesday: wednesday: thursday: + - name: Thought of the week (British values) + url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + type: personal-development + start: 9:45 + end: 10:00 + - name: Intro to project managment + start: 16:00 + end: 18:00 + url: https://fac-slides.netlify.app/slides/proj-mgmt/ # - name: Reading for next topic # start: 15:30 # end: 16:00 # url: /course/syllabus/developer/server/topicIntro/ + friday: # - name: Database workshop # url: /learn/database From 5e960edd0b6e983c90dbe8893d1319ab88e12393 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Tue, 30 Apr 2024 17:15:51 +0100 Subject: [PATCH 007/118] first draft --- .../developer/introduction/schedule.md | 82 +++++++++---------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/src/course/syllabus/developer/introduction/schedule.md b/src/course/syllabus/developer/introduction/schedule.md index 2a77fc47..938e2f2d 100644 --- a/src/course/syllabus/developer/introduction/schedule.md +++ b/src/course/syllabus/developer/introduction/schedule.md @@ -2,49 +2,49 @@ layout: schedule schedule: monday: - # - name: No schedule - # start: 9:45 - # end: 18:00 + - name: No schedule + start: 9:30 + end: 18:00 tuesday: - # - name: No schedule - # start: 9:45 - # end: 18:00 + - name: No schedule + start: 9:30 + end: 18:00 wednesday: - # - name: No schedule - # start: 9:45 - # end: 18:00 + - name: No schedule + start: 9:30 + end: 18:00 thursday: - # - name: No schedule - # start: 9:45 - # end: 14:00 - # - name: Communal lunch with pre-apprentices - # start: 14:00 - # end: 15:00 - # - name: Course intro - # start: 15:00 - # end: 15:30 - # url: https://hackmd.io/@-k0vCiCrQFKCyNvAyIXaPA/r1AOaIlka - # - name: Reading for next topic & Installation - # start: 15:30 - # end: 16:15 - # url: /course/syllabus/developer/introduction/topicIntro/ - # - name: Break - # url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b - # start: 16:15 - # end: 16:30 - # - name: Thought of the week (safeguarding) - # type: personal-development - # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - # start: 16:30 - # end: 17:15 - # - name: Social - # url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b - # start: 17:15 - # end: 18:00 + - name: No schedule + start: 9:30 + end: 14:00 + - name: Communal lunch with pre-apprentices + start: 14:00 + end: 15:00 + - name: Course intro + start: 15:00 + end: 15:30 + url: https://hackmd.io/@-k0vCiCrQFKCyNvAyIXaPA/r1AOaIlka + - name: Reading for next topic & Installation + start: 15:30 + end: 16:15 + url: /course/syllabus/developer/introduction/topicIntro/ + - name: Break + url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b + start: 16:15 + end: 16:30 + - name: Thought of the week (safeguarding) + type: personal-development + url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + start: 16:30 + end: 17:15 + - name: Social + url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b + start: 17:15 + end: 18:00 friday: - # - name: Server workshop - # url: /learn/server - # type: workshop - # start: 9:45 - # end: 18:00 + - name: Server workshop + url: /learn/server + type: workshop + start: 9:30 + end: 18:00 --- From a78e96aef5052664b047869b5f7b68d72d596b91 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Tue, 30 Apr 2024 17:23:42 +0100 Subject: [PATCH 008/118] fixed link --- src/course/syllabus/developer/introduction/schedule.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/course/syllabus/developer/introduction/schedule.md b/src/course/syllabus/developer/introduction/schedule.md index 938e2f2d..0daca249 100644 --- a/src/course/syllabus/developer/introduction/schedule.md +++ b/src/course/syllabus/developer/introduction/schedule.md @@ -42,8 +42,8 @@ schedule: start: 17:15 end: 18:00 friday: - - name: Server workshop - url: /learn/server + - name: Typescript Practice + url: https://typescript-exercises.github.io/#exercise=1&file=%2Findex.ts type: workshop start: 9:30 end: 18:00 From d13d7d1ef6398ccf0d562aba0b29b74df144085b Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 7 May 2024 10:28:08 +0100 Subject: [PATCH 009/118] fix: typo fixes and link updates --- .../syllabus/developer/project-1-server/resources.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/course/syllabus/developer/project-1-server/resources.md b/src/course/syllabus/developer/project-1-server/resources.md index 3fd3c1bb..19e383ee 100644 --- a/src/course/syllabus/developer/project-1-server/resources.md +++ b/src/course/syllabus/developer/project-1-server/resources.md @@ -9,18 +9,20 @@ These resources are helpful extra reading that may clarify or enhance concepts y General background info on how servers work - ### [Setting up Typescript and Express](https://blog.logrocket.com/how-to-set-up-node-typescript-express/) - A guide on setting up the tools for this weeks project. Good explanation and generating and modifying a TS config file. + A guide on setting up the tools for this weeks project. Good explanation on generating and modifying a TS config file. -- ### [Node fs and Express](https://blog.logrocket.com/how-to-set-up-node-typescript-express/) +- ### [Node fs and Express](https://www.tutorialspoint.com/nodejs/nodejs_restful_api.htm) Good node tutorial demonstrating using json object as a mock database. +- ### [How to parse data with Express](https://medium.com/@rldsn/3-ways-of-parsing-parameters-in-express-98404008390d) + A brief guide to the different ways you can deal with data in your server. + - ### [Testing your server](https://learning.postman.com/docs/designing-and-developing-your-api/testing-an-api/) Documentation on using Postman to make a collection of tests for api endpoints. ## DevOps - ### [Deploy a server with a EC2 instance](https://dev.to/drsimplegraffiti/from-code-to-the-cloud-a-step-by-step-guide-to-deploying-your-nodejs-app-on-aws-ec2-4300) - Gatsby is a React-based open source framework for creating websites. They provide an outline continuous deployment. - + A guide to how to get your server up and running on the Amazon cloud. From c2d6d45d42f66c86744a780c4af429e4a04ebea6 Mon Sep 17 00:00:00 2001 From: oliverjam Date: Wed, 8 May 2024 10:51:09 +0100 Subject: [PATCH 010/118] Create TypeScript workshop --- src/workshops/typescript/index.md | 863 ++++++++++++++++++++++++++++++ 1 file changed, 863 insertions(+) create mode 100644 src/workshops/typescript/index.md diff --git a/src/workshops/typescript/index.md b/src/workshops/typescript/index.md new file mode 100644 index 00000000..b767028a --- /dev/null +++ b/src/workshops/typescript/index.md @@ -0,0 +1,863 @@ +--- +title: TypeScript +description: Learn how to use TypeScript to write more robust code +tags: + - workshop +keywords: + - js + - typescript +starter: false +--- + +TypeScript is JavaScript with some additional syntax for describing what _types_ things are. Here's an example: + +```ts +function add(x: number, y: number) { + return x + y; +} +``` + +## What are types? + +A type is something that tells the language what a piece of data is and how it's intended to be used. For example JavaScript has 7 "primitive" types: + +1. Null +1. Undefined +1. Boolean +1. Number +1. BigInt +1. String +1. Symbol + +Everything else is the Object type. Arrays are objects with number keys, and functions are objects that are also callable. + +{% box %} + +Note that the JS `typeof` operator can be misleading. For example `typeof null` is `"object"` for [legacy support reasons](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/typeof#typeof_null). + +{% endbox %} + +You don't really need to understand JS types in detail to use TypeScript, but if you're interested there's [more info on MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures). + +### What is static typing? + +JavaScript is a dynamically typed language. This means the language figures out what a piece of data should be when your program runs. + +There are benefits to this: the language doesn't have to be compiled before you can run your code, and it's friendlier to beginners because you don't have to think about types yourself. + +There are also downsides: it's easy to mix up your types and try to do something like access an undefined value, which often results in strange bugs. You also don't get lots of helpful editor features as you write your code, like smart autocompletion and error highlighting when you try to do things you shouldn't. + +Statically typed languages on the other hand try to understand what types things are before the code even runs, either by inferring obvious types or having the author explicitly write them. + +Although this is more work upfront it often results in code that works the first time you run it, since the language has ensure everything is correct in advance. + +## How does TypeScript work? + +TypeScript lets you write normal JS with a bit of extra stuff to annotate what types things are (in places where TS can't figure them out automatically). + +JS engines cannot execute TS code directly. Instead TS must be compiled to JavaScript before being run. This adds an additional step of complexity to any TS project, although certain runtimes like Deno and Bun make this simpler by automatically compiling TS code before executing it. + +{% box %} + +A runtime is the environment that is executing your code. Examples of runtimes include various web browsers, Node, Deno, and Bun. These environments use a JS _engine_ to actually execute the code. Chromium browsers (Chrome, Edge, Arc etc) and Node all use the V8 JS engine. Safari and Bun use JavascriptCore, and Firefox uses Spidermonkey. + +{% endbox %} + +Let's see how we can set up a basic Node project to compile TypeScript for us. + +## Setting up a TypeScript project from scratch + +### Initial setup + +First we need a new directory to put our project in: + +```shell +mkdir ts-workshop +``` + +Then we need to initialise a JS project using `npm`: + +```shell +npm init -y +``` + +Now we can use `npm` to install dependencies—3rd party code that our project relies on to work. First of all we will definitely need the TypeScript compiler. This is what will ensure our code works, and turn it into JS we can run. + +```shell +npm i -D typescript +``` + +Note that we install it with the `-D` flag to mark it as a development dependency. That's because our final code won't use the `typescript` compiler—we just need it during development to compile TS to JS. + +### Our first TypeScript + +Let's try compiling some TS and running it. Open the project in your editor of choice. If you're using VS Code you should be able to do this with: + +```shell +code . +``` + +Create a file named `index.ts` and add some TS code to check everything is working: + +```ts +const message: string = "It's working!"; +console.log(message); +``` + +You can try running this code: + +```shell +node index.ts +``` + +Node will _attempt_ to run it, since it doesn't actually care what extensions your files have, but you should get a syntax error: + +``` +SyntaxError: Unexpected token ':' +``` + +That's because Node's V8 engine doesn't understand TypeScript syntax. We need to use the `typescript` library we installed to compile this TS to JS. + +```shell +npx tsc index.ts +``` + +{% box %} + +`npx` is a built-in `npm` command that lets you run modules you have installed locally. + +{% endbox %} + +If the compiler succeeds you should get nothing logged to your terminal. Instead you should now have an `index.js` file next to your `index.ts`. This will contain your compiled JS code: + +```js +var message = "It's working!"; +console.log(message); +``` + +The compiler has stripped out the special TS syntax, which means we can now run this code with Node: + +```shell +node index.js +``` + +You should see `"It's working!"` logged to your terminal. + +### Configuring the compiler + +Since TypeScript needs to produce code for many different JS runtimes the compiler has lots of options. We can configure it directly from the command line. For example to change where our compiled JS code will go: + +``` +npx tsc --outDir build +``` + +This should create a `build/` directory and put `index.js` in there. + +It can get cumbersome to do this as your project starts to need more an more configuration, so it's common to use a `tsconfig.json` file to contain all the options you need. Create a new file named `tsconfig.json` and add these options: + +```json +{ + "compilerOptions": { + "outDir": "build", + "module": "NodeNext", + "strict": true + } +} +``` + +This tells our compiler 3 things: + +1. We want our code to be compiled into the `build/` directory +1. We are targeting the modern Node module system +1. We want TS to be as [strict](https://www.typescriptlang.org/tsconfig/#strict) as possible with our code + +Now we can just run the compiler with no arguments. It will autodetect the config and any TS files. + +```shell +npx tsc +``` + +You should see one change in `build/index.js`: it now has `"use strict;"` at the top. This is because we enabled the `strict` option, so TS is ensuring our code opts in to JS's [strict mode](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode). + +### Watching for changes + +Right now we have an awkward 3-step process for making changes. We have to save changes to a file, compile TS to JS, then run the JS with Node. Ideally we want a smoother development experience while we're working on code. + +Both Node and TypeScript have a "watch mode", where they will automatically restart when you save changes to a file. There is a slight complication in that we need to run both at once: `tsc` to watch for changes to `.ts` files and Node to watch for changes to `build/index.js`. The simplest way is to open two panes/tabs in your terminal and run one command in each: + +```shell +npx tsc --watch +``` + +```shell +node build/index.js --watch +``` + +Now whenever you edit a `.ts` file `tsc` will re-compile it into `build/`. This will cause Node to re-run your `.js` code automatically. + +--- + +## Building an app with TypeScript + +We're going to build a simple task management app—this will let us see how various TypeScript features help us write more robust code. We'll focus on just the business logic, without worrying about how the user interacts with the app for now. + +We've already got our project set up compiling TypeScript, so we can start working in `index.ts`. You can see TS errors in two places: + +1. Your terminal after you run `tsc` +1. Highlighted in VS Code as a red underline. Hover the underlined code to see the error in a popup + +### Creating tasks + +The first feature our app needs is task creation. We'll write a function that takes the task content and returns an object with the properties describing the task. We won't worry about where we're storing tasks yet. + +```ts +let index = 0; + +function create(content) { + return { + content, + id: i++, + status: "incomplete", + createdAt: new Date(), + }; +} +``` + +You should see a type error highlighting the `content` parameter: + +``` +Parameter 'content' implicitly has an 'any' type. +``` + +#### Function parameter types + +TypeScript is telling us that it cannot infer the type of `content`. Since we enabled the `strict` option this is an error that will stop our code from compiling. We want TS to always know what types our function parameters are so it can catch any mistakes we make inside the function. + +We can fix the error by using a type annotation to tell TS what type `content` is: + +```ts +function create(content: string) { + // ... +} +``` + +#### Type annotations + +Type annotations can also be used for normal variable definitions. We could add one to the `index` variable: + +```ts +let index: number = 0; +``` + +However this is not necessary here as TS can infer the type, since we initialised it as a number. Generally you only need to annotate a variable if you aren't going to give it a value yet. + +#### Function return types + +If you hover the function name in VS Code you can see the type signature of `create`: + +```ts +function create(content: string): { + content: string; + id: number; + status: string; + createdAt: Date; +}; +``` + +Currently TS is inferring the return type, based on what we actually returned. This is handy, since we'll get autocompletion and mistake checking when we use it: + +```ts +let task = create("Learn TypeScript"); +task.id; // number +task.x; // Property 'x' does not exist on type '{ content: string; id: number; status: string; createdAt: Date; }'. +``` + +It is often useful to explicitly annotate function return types. You can do that with an annotation after the parameters: + +```ts +function create(content: string): { + content: string; + id: number; + status: string; + createdAt: Date; +} { + return { + content, + id: index++, + status: "incomplete", + createdAt: new Date(), + }; +} +``` + +For simple functions like this it can feel repetitive, but it can be helpful to be clear with your intentions before you write a function. That way TS will catch mistakes if you accidentally return something different. + +{% box %} + +#### Built-in types + +Note that we used `Date` as a type. Our type values don't have to be primitives, any object like this can also be used as a type. We're effectively telling TS: "`createdAt` will be an instance of the `Date` object". + +{% endbox %} + +#### Literal types + +Our `status` type is broader than it needs to be. Currently it's typed as `string`, when it can technically only ever be `"incomplete"`. It's usually a good idea for your types to be as strict as possible to prevent errors. You can broaden types as needed later on. + +TS supports "literal types", which are literally a value instead of a primitive. Let's update our function's return type: + +```ts +function create(content: string): { + content: string; + id: number; + status: "incomplete"; + createdAt: Date; +} { + // ... +} +``` + +### Completing tasks + +The next feature our app needs is the ability to complete a task. Let's write a function that takes a task object and changes the `status` property: + +```ts +function complete(task) { + task.status = "complete"; +} +``` + +TS will error here just like before, since we have not told it what type the `task` parameter is. + +``` +Parameter 'task' implicitly has an 'any' type. +``` + +We can fix this by adding a type annotation to the parameter: + +```ts +function complete(task: { + content: string; + id: number; + status: "incomplete"; + createdAt: Date; +}) { + // ... +} +``` + +You may have noticed we are repeating ourselves here. Let's see how we can avoid this. + +#### Type aliases + +We've got two identical copies of the type representing a task object. In JS we would probably abstract this repeated value to a variable—in TS we can do something similar using "type aliases". These let you define a named type for re-use using the `type` keyword. + +Let's define a new type called `Task` that we can use for both functions: + +```ts +type Task = { + content: string; + id: number; + status: "incomplete"; + createdAt: Date; +}; + +function create(content: string): Task { + // ... +} + +function complete(task: Task) { + // ... +} +``` + +Type aliases are usually capitalised to distinguish them from normal JS variables. They can also be imported and exported just like JS values. + +{% box %} + +You may encounter TS code that uses the [`interface`](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#differences-between-type-aliases-and-interfaces) keyword for object types like this. This is very similar to `type`, and so generally people stick to one or the other. We're going to use `type` as it can be a little simpler. The main difference is that interfaces can be extended or changed after being defined, whereas type aliases cannot. + +{% endbox %} + +#### Type unions + +There is another type error in our code. The assignment to `task.status` is not allowed: + +``` +Type '"complete"' is not assignable to type '"incomplete"'. +``` + +This is because we defined `status` as a literal type. We need to update the definition to allow another possible value. TS supports something called "union types" to achieve this. You can specify multiple types separated by a `|` character (similar to a JS "logical or" operator). TS will check that values match one of the listed types. + +Let's update our `Task` definition to allow another status type and fix our error: + +```ts +type Task = { + content: string; + id: number; + status: "incomplete" | "complete"; + createdAt: Date; +}; +``` + +Note that type aliases don't have to be object types. For example we could define our `status` property as its own type if we felt it was too complicated to write inline: + +```ts +type Status = "incomplete" | "complete"; + +type Task = { + content: string; + id: number; + status: Status; + createdAt: Date; +}; +``` + +Types are just like normal variables, so you can compose them together in this way if it's helpful. + +### Storing tasks + +Right now our app doesn't really work, since we can only create single tasks. We need a place to store a list of tasks. Let's use a global array variable for this. We'll need to push tasks into it when we create them: + +```ts +let tasks = []; + +function create(content: string): Task { + let task = { + content, + id: index++, + status: "incomplete", + createdAt: new Date(), + }; + tasks.push(task); + return task; +} +``` + +We'll see a new type error here highlighting the return value: + +``` +Type '{ content: string; id: number; status: string; createdAt: Date; }' is not assignable to type 'Task'. + Types of property 'status' are incompatible. + Type 'string' is not assignable to type '"complete" | "incomplete"'. +``` + +More complex TS errors like this can be a little confusing, so don't worry if they feel overwhelming. This one is complaining that the type of the `status` property in the object we're returning is not compatible with the `status` property of the `Task` type that we've explicitly said our function will return. + +If you hover the `task` variable you will see that TS infers the type as: + +```ts +{ + content: string; + id: number; + status: string; + createdAt: Date; +} +``` + +The error is saying that our `task`'s status can be any string, rather than restricted to just `"incomplete"` or `"complete"`. This might seem weird considering we've set `status` to `"incomplete"`, but remember that JS objects are _mutable_. They can be changed as any time, so TS cannot rely on the initial value of a property. For example this would cause problems: + +```ts +function create(content: string): Task { + let task = { + // ... + status: "incomplete", + }; + task.status = "aaaaaa"; + tasks.push(task); + return task; +} +``` + +We can fix this by explicitly annotating the variable's type: + +```ts +function create(content: string): Task { + let task: Task = { + // ... + status: "incomplete", + }; + tasks.push(task); + return task; +} +``` + +### Marking complete by ID + +Now that we have a list of tasks our `complete` function could be made more useful if it could mark tasks as complete with just the `id`. + +```ts +function complete(id: number) { + let task = tasks.find((task) => task.id === id); + task.status = "complete"; +} +``` + +Interestingly this will create 2 new type errors. The `tasks.find` call doesn't work because: + +``` +Variable 'tasks' implicitly has an 'any[]' type. +``` + +And `let tasks = []` is now also an error: + +``` +Variable 'tasks' implicitly has type 'any[]' in some locations where its type cannot be determined. +``` + +This wasn't a problem before because we never actually accessed anything inside the `tasks` array. Now that we are TS is asking us to explicitly say what type `tasks` is, since it cannot infer the type. + +#### Collection types + +We can define types for collections using a new piece of TS syntax: + +```ts +let tasks: Array = []; +``` + +The angle brackets are a feature called ["generics"](https://www.typescriptlang.org/docs/handbook/2/generics.html). These are like types with parameters—the array type can't know what type of thing will be stored inside it, so it requires you to pass this type in, almost like a function argument. + +Other JS collection types work in similar ways. For example: `Set` or `Map`. + +Array types have a shorthand syntax that you will sometimes see: `Task[]`. We'll stick to using the long form though, since it is consistent with other types and can be less confusing for longer array types. + +{% box %} + +Note that arrays in TypeScript cannot change type once created. For example you can never push a number into an `Array`. + +TS also supports ["tuples"](https://www.typescriptlang.org/docs/handbook/2/objects.html#tuple-types): fixed length arrays of mixed types. For example: `[string, number, boolean]` must always contain 3 things: a string, a number and a boolean, in that order. + +{% endbox %} + +#### Function parameter type inference + +It's worth noting here that we did not have to write type annotations for the inline function we passed to `tasks.find`. + +```ts +tasks.find((task) => task.id === id); +``` + +TS can infer the type of `task` here, since it knows we are iterating over an array of `Task` objects. We get autocompletion and error checking for free. + +#### Type narrowing + +We have another type error. TS isn't happy that we're assigning to `task.status`: + +``` +'task' is possibly 'undefined'. +``` + +If you hover the `task` variable returned by `tasks.find` you'll see that it's type is `Task | undefined`. That's because the `find` method on arrays is not guaranteed to find anything. If `complete` was passed an invalid `id` we'd end up with an undefined `task`. Trying to assign to the `status` property would cause a JS runtime error, which would crash our program. + +All the compiler errors can seem annoying, but TS is really trying to save us from ourselves! + +We can fix this by checking that we really did find a task before we attempt to assign to it: + +```ts +function complete(id: number) { + let task = tasks.find((task) => task.id === id); + if (task) task.status = "complete"; +} +``` + +This is called ["type narrowing"](https://www.typescriptlang.org/docs/handbook/2/narrowing.html)—the TS compiler is smart enough to change types inside of conditionals. Inside of this `if` it is impossible for `task` to be `undefined`, so our assignment is allowed. + +### Task removal + +Let's write a function to remove tasks from our list. It should receive an `id` and remove the matching `Task` object from the `tasks` array. There are several ways to remove items from arrays, but we'll stick with `splice`: + +```ts +function remove(id: number) { + let index = todos.findIndex((t) => t.id === id); + todos.splice(index, 1); +} +``` + +There is a bug in this code that TS has not caught: `findIndex` returns `-1` when it cannot find a match. Since `-1` is still a valid number the return type is just `number`. This means that unlike with `find`, which can return `undefined`, TS cannot force us to handle the "not found" case here. + +If we passed this function an invalid `id` the `index` would be `-1`, so we would call `tasks.splice(-1, 1)`. A negative index causes `splice` to work _backwards_ from the end, incorrectly removing the final item from the array. We need to write a conditional to prevent this behaviour: + +```ts +function remove(id: number) { + let index = tasks.findIndex((task) => task.id === id); + if (index !== -1) tasks.splice(index, 1); +} +``` + +This emphasises that TypeScript cannot catch _every_ bug in your code. You still need to understand what you're writing and remain vigilant! + +### New kinds of tasks + +Let's imagine our users want to record birthdays in the task app. We'd need a way to distinguish a birthday from a normal task. + +#### Optional properties + +The simplest way would be to add an optional `birthday` property to the `Task` object: + +```ts +type Task = { + content: string; + id: number; + status: "incomplete" | "complete"; + createdAt: Date; + birthday?: Date; +}; +``` + +The [`?` operator](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#optional-properties) after a property tells TS that it is optional—it can be missing or set to `undefined`. + +This new type might work for us. We can repurpose the `content` property as the birthday person's name. However birthdays don't really have "statuses"—they can't be completed. We should probably mark `status` as optional using a `?` as well. + +```ts +type Task = { + content: string; + id: number; + status?: "incomplete" | "complete"; + createdAt: Date; + birthday?: Date; +}; +``` + +We also need a `createBirthday` function to insert birthdays into the list: + +```ts +function createBirthday(name: string, date: string): Task { + let task: Task = { + content: name, + id: index++, + createdAt: new Date(), + birthday: new Date(date), + }; + tasks.push(task); + return task; +} +``` + +This works for now, but we'll soon see some issues caused by this structure. + +### Listing tasks + +Now we have two kinds of tasks we should write a function that prints a nicely formatted list: + +```ts +function list() { + for (let task of tasks) { + let check = task.status === "complete" ? "[✔︎] " : "[ ] "; + let birthday = task.birthday.toLocaleDateString("en-GB"); + console.log(check + task.content + " " + birthday); + } +} +``` + +Unfortunately we've got an error: + +``` +'task.birthday' is possibly 'undefined'. +``` + +Since we made the `birthday` property optional we need to handle the case where a task doesn't have this property. We also probably want to log different formats for tasks vs birthdays. + +Unfortunately the way we've structured our data has made this kind of difficult—tasks and birthdays aren't really that similar, so it would make more sense for them to be separate types. That would avoid the mess of having to check for optional properties all over the place. + +Let's extract a new type alias to represent birthday objects: + +```ts +type Birthday = { + kind: "birthday"; + name: string; + date: Date; + id: number; + createdAt: Date; +}; +``` + +We can then update the `tasks` array to contain either `Task` object _or_ a `Birthday` object (using a union): + +```ts +let tasks: Array = []; +``` + +We'll also update the `Task` definition to make `status` a required property again. + +```ts +type Task = { + // ... + kind: "task"; + status: "incomplete" | "complete"; +}; +``` + +We've also added a new property to both types: `kind`. This will allow us to check what type we're working with, and is generally a good way to structure type unions (it's known as ["discriminating unions"](https://www.typescriptlang.org/docs/handbook/unions-and-intersections.html#discriminating-unions)). + +Finally we'll update our other functions to fit the new structure: + +```ts +function create(content: string): Task { + let task: Task = { + kind: "task", + // ... + }; + // ... +} + +function createBirthday(name: string, date: string): Birthday { + let task: Birthday = { + kind: "birthday", + content, + date: new Date(birthday), + id: index++, + createdAt: new Date(), + }; + tasks.push(task); + return task; +} + +function complete(id: number) { + let task = tasks.find((task) => task.id === id); + if (task && task.kind === "task") task.status = "complete"; + // Birthdays don't have `status` +} +``` + +Our `list` function is now easier to write, since we can split the logic for each kind of task: + +```ts +function list() { + for (let task of tasks) { + if (task.kind === "birthday") { + let birthday = task.date.toLocaleDateString("en-GB"); + console.log("[★]" + task.name + " " + birthday); + } else { + let check = task.status === "complete" ? "[✔︎] " : "[ ] "; + console.log(check + task.content); + } + } +} +``` + +TypeScript can narrow the type of `task` inside each branch of the `if` so that it knows what properties are available. + +### Styling text + +Our logs to the terminal are looking a little boring. Luckily as of Node version 20 we can apply styles to this text using the built-in [`util` module](https://nodejs.org/docs/latest-v20.x/api/util.html#utilstyletextformat-text). + +```ts +import { styleText } from "node:util"; +``` + +Unfortunately this will immediately cause an error: + +``` +Cannot find module 'node:util' or its corresponding type declarations. +``` + +#### Third party types + +Node is not written in TypeScript, and so does not include built-in type definitions. TS needs us to provide these definitions, otherwise it has no idea what `node:util` exports. + +When a library you want to use does not include it's own types you can usually find them in the community project [DefinitelyTyped](https://github.com/DefinitelyTyped/DefinitelyTyped). You can install types from this project using `npm` in your terminal: + +```shell +npm i -D @types/node +``` + +This will fix our error and let us use any Node built-ins without any problems. + +Now we can use `styleText` to make our logs prettier: + +```ts +console.log(styleText("dim", check) + styleText("bold", task.content)); +``` + +## Bonus TypeScript features + +There are some useful things that we didn't need to build this app. They're a little more advanced, but included here for reference as you may need them when building more complex things. + +### Type assertions + +Sometimes TS has no way to know what type a value is. For example when data is coming from outside the program (like the response to a `fetch` request). In these cases you may need to override the type system and just enforce a particular type using the `as` keyword. + +For example when working with the DOM: + +```ts +const el = document.querySelector("#test"); +console.log(el.textContent); // 'el' is possibly 'null'. +``` + +TS has no way of knowing whether an element with this ID exists in the DOM, so it will force you to check to make sure the variable is not `null`. There are two ways to handle this. If you are sure there is an element with that ID you can [assert the type](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#type-assertions) using `as`: + +```ts +const el = document.querySelector("#test") as HTMLDivElement; +console.log(el.textContent); +``` + +Or you can actually check your assumption is correct using code to narrow the type: + +```ts +const el = document.querySelector("#test"); +if (el instanceof HTMLDivElement) { + console.log(el.textContent); +} +``` + +{% box %} + +For validating more complex types it is common to use an external validation library like [Valibot](https://valibot.dev/) or [Zod](https://zod.dev/) for this. They can check a value and also confirm the correct type to TS all in one go. + +{% endbox %} + +### Unknown types + +Sometime you just cannot know the type of something. In these cases you have two options: `any` and `unknown`. The `any` type effectively turns off type-checking, which makes it very dangerous. You're telling TS: "any type is valid here, so don't both checking it". This can be a big source of bugs, so it's generally not advised to rely on `any`. If a type is [`unknown`](https://www.typescriptlang.org/docs/handbook/2/functions.html#unknown) TS will force you to narrow it before you can do anything with it. For example: + +```ts +function stringify(value: unknown): string { + if (value === null || value === undefined) return ""; + if (typeof value === "string") return value; + if (typeof value === "number") return value.toString(); + if (Array.isArray(value)) return value.join(" "); + return "Unknown type"; +} +``` + +### Intersection types + +We can use the [`&` operator](https://www.typescriptlang.org/docs/handbook/2/objects.html#intersection-types) to combined multiple types into one. This is like the inverse of a union, which makes a type more permissive. Instead it makes a type stricter. For example: + +```ts +type Pet = { + name: string; +}; + +type Dog = Pet & { + says: "woof"; +}; + +let fido: Dog = { + name: "fido", + says: "woof", +}; +``` + +### Generics + +Sometimes you might want to write dynamic types that depend on some later type. For example the built-in array type we saw earlier needs to know what type of thing it is going to hold (e.g. `Array`). TS uses ["generics"](https://www.typescriptlang.org/docs/handbook/2/generics.html#handbook-content) for this—you can think of them like parameters for your types. + +For example if we wanted to represent the return type of functions that can fail: + +```ts +type Result = Type | Error; +// Can either be the type we pass in, or an error + +function run(): Result { + // do some stuff that might not work + let result = calculationThatMightFail(); + if (!result) { + return new Error("Failed"); + } else { + return result; + } +} +``` + +Generics are an advanced topic so you probably won't need to write your own very often yet, but it's good to know what's happening when you see pointy brackets. From c43ad9d6d79b7ea2f17eb282bc4845a90a224715 Mon Sep 17 00:00:00 2001 From: oliverjam Date: Wed, 8 May 2024 10:52:52 +0100 Subject: [PATCH 011/118] Add TS label to code blocks --- src/styles/partials/syntax-highlighting.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/styles/partials/syntax-highlighting.css b/src/styles/partials/syntax-highlighting.css index a0299af2..81fd813c 100644 --- a/src/styles/partials/syntax-highlighting.css +++ b/src/styles/partials/syntax-highlighting.css @@ -75,6 +75,10 @@ pre.language-jsx::after { content: "JSX"; } +pre.language-ts::after { + content: "TS"; +} + .token.comment, .token.prolog, .token.doctype, From e6eb04fd9a061f1ad7efa39211f8b30a74ae3e32 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Wed, 8 May 2024 12:49:31 +0100 Subject: [PATCH 012/118] Updates to project tab for week 1 and project, learning and resources tabs for week 2 --- src/_includes/course.11ty.js | 2 +- .../developer/database/learning-outcomes.md | 40 ------ .../syllabus/developer/database/project.md | 118 ------------------ .../syllabus/developer/database/resources.md | 18 --- .../project-1-frontend/learning-outcomes.md | 28 +++++ .../developer/project-1-frontend/project.md | 30 +++++ .../developer/project-1-frontend/resources.md | 11 ++ .../schedule.md | 0 .../developer/project-1-server/project.md | 31 +++-- 9 files changed, 89 insertions(+), 189 deletions(-) delete mode 100644 src/course/syllabus/developer/database/learning-outcomes.md delete mode 100644 src/course/syllabus/developer/database/project.md delete mode 100644 src/course/syllabus/developer/database/resources.md create mode 100644 src/course/syllabus/developer/project-1-frontend/learning-outcomes.md create mode 100644 src/course/syllabus/developer/project-1-frontend/project.md create mode 100644 src/course/syllabus/developer/project-1-frontend/resources.md rename src/course/syllabus/developer/{database => project-1-frontend}/schedule.md (100%) diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 681b3528..3c048b5b 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -34,7 +34,7 @@ exports.render = ({ page: { url }, content }) => { <${Section} title="Developer" url=${url} subpath="course/syllabus/developer">
  • <${Link} url=${url} href="/course/syllabus/developer/introduction/schedule">Introduction
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-server/schedule/">Project 1: Server
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/database/schedule/">Project 1: Frontend
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-frontend/schedule/">Project 1: Frontend
  • <${Link} url=${url} href="/course/syllabus/developer/authentication/schedule/">Project 1: Test & Deploy
  • <${Link} url=${url} href="/course/syllabus/developer/server-side-app/schedule/">Server-side app
  • <${Link} url=${url} href="/course/syllabus/developer/client-side-app/schedule/">Client-side app
  • diff --git a/src/course/syllabus/developer/database/learning-outcomes.md b/src/course/syllabus/developer/database/learning-outcomes.md deleted file mode 100644 index 22a30afa..00000000 --- a/src/course/syllabus/developer/database/learning-outcomes.md +++ /dev/null @@ -1,40 +0,0 @@ -## Databases - -- [ ] Design and document a database schema -- [ ] Normalize our data to reduce duplication -- [ ] Create a relational database using SQLite -- [ ] Create tables within the database -- [ ] Link a record in one table to a record in another -- [ ] Link a record in one table to multiple records in another -- [ ] Link multiple records in one table to multiple records in another -- [ ] Deploy a SQLite database to a live server -- [ ] Set up separate environments for production and testing - -## SQL - -- [ ] Create, read update and delete from our database using SQL queries -- [ ] Sort and filter data using SQL queries -- [ ] Use joins to access related data in different tables -- [ ] Use query parameters to avoid SQL-injection vulnerabilities - -## Node - -- [ ] Set enviroment variables and understand their use case -- [ ] Handle database errors on our server without crashing - -## Software Architecture - -- [ ] Draw a diagram representing the flow of our application -- [ ] Follow a consistent pattern for naming our folders, files and variables - -## Testing - -- [ ] Create a separate database for testing -- [ ] Test that our database access works correctly - -## DevOps - -- [ ] Understand the difference between SQL and NoSQL databases -- [ ] Understand and apply best practices for securing database access -- [ ] Customise deployment using deployment scripts -- [ ] Set up fly.io volumes \ No newline at end of file diff --git a/src/course/syllabus/developer/database/project.md b/src/course/syllabus/developer/database/project.md deleted file mode 100644 index 495ed4b3..00000000 --- a/src/course/syllabus/developer/database/project.md +++ /dev/null @@ -1,118 +0,0 @@ -Your project this week is to build a web app that stores data in a SQLite database. - -## Spike - -Before you start writing features you need to design the schema for your data. Think about what different things your app needs to store, how they relate to each other, and how you can avoid duplicating information. Record your schema in your `README.md` using Markdown tables. Consider embedding a [diagram](https://dbdiagram.io/) to help visualise the relationships. - -### Questions to consider - -1. What kinds of data relationships are there? -1. What's a foreign key? How can they help us design schemas with relational data? - -### Useful resources - -- [Database Relationships](https://www.lifewire.com/database-relationships-p2-1019758) -- [A beginner's guide to many-to-many relationships](https://support.airtable.com/docs/airtable-s-guide-to-many-to-many-relationships) - -## User stories - -### Core - -- **As a user, I want to**: submit information to your site for anyone to see -- **As a user, I want to**: come back to your site later and see what I posted is still there - -Since this project is open-ended you'll need to write your own more specific user stories once you know what you want to build. - -### Example project ideas - -- Founders & Coders book sharing system -- Food / coffee recommendations around Founders & Coders -- Founders & Coders events calendar - -## Acceptance Criteria - -- [ ] A form for users to submit data -- [ ] A page showing all the data -- [ ] Semantic form elements with correctly associated labels -- [ ] A SQLite database, deployed to fly.io as a [persistent volume](#deploying-persistent-volumes-to-fly-io) -- [ ] A schema describing your database in your README -- [ ] Tests for server routes and database access -- [ ] Not process user input as SQL commands -- [ ] Hidden environment variables (i.e. not on GitHub) - -### Stretch criteria - -- [ ] A way to view filtered/sorted data, instead of just all of it -- [ ] GitHub Actions CI setup to run your tests when you push - -## Deploying persistent volumes to Fly.io - -A simple mental model for app deployment is that we’re installing and running our app on a computer in the cloud. Yet this is an oversimplification and an important difference is that the PaaS services we use for deployment (ie Fly) have an ephemeral file system. - -An ephemeral file system is a type of file system that is not permanently stored on a device or disk. It exists only for a short period of time, and any files or data stored in it are not persisted after the session ends or the file system is deleted. This type of file system is usually used in cloud computing environment as it allows for greater flexibility and efficiency compared to using permanent storage. - -As Fly uses an ephemeral file system and SQLite works by storing the database as a file on the system we need to make special provisions for deployment. If we didn’t, then our database would disappear every time the file system is restarted. - -To solve this we’re going to use Fly’s [Volume’s feature](https://fly.io/docs/reference/volumes/). - -### Adding a volume to your app - -1. [Install the Fly CLI and deploy your app](https://oliverjam.es/articles/deploying-to-fly#how-do-you-deploy) if you haven’t already. -2. Create a volume by running the following command - - `flyctl volumes create data --region lhr --size 1` - - This will create a 1GB volume for the app whose `fly.toml` is in the current directory. - - You can think of a volume as being like an external hard drive that we get to use with our app. - -3. You can use the volume you just created in your app by adding it to the `fly.toml`: - - ``` - [mounts] - source = "data" - destination = "/data" - ``` - - This will tell us the directory under which this volume can be used, i.e. the volume `data` that we created in the last step will be available on the path `/data` when our app runs on `Fly.io` 's servers. - -4. Now we have to deploy again so that the app knows about our updated `fly.toml` file - - `flyctl deploy` - -5. The last step is to set the environment variable which we use in the our app (i.e. in `database/db.js`). On fly, this needs to point to the directory we referenced in our `fly.toml` file (ie `data/`) - - `flyctl secrets set DB_FILE=/data/db.sqlite` - -### Seeding your app - -We might also want to seed our database with initial data in our deployment environment. When we do this locally we usually run a command on the terminal which calls a script to insert the data, e.g. `node src/database/seed.js`. - -We’re going to do something similar to seed the remote data, but instead of running a command on our local terminal, we’re going to connect to the virtual machine that Fly has spun up for our app and run a command on that virtual machine’s terminal. - -1. Before we connecting to the virtual machine, we'll need to add the `volta` key to our `package.json`. [Volta](https://volta.sh/) is the tool that Fly uses to manage node versions. - - Let's add the following to our `package.json` (making sure that the node version you specify is the same one as in the generated `Dockerfile`) - - ``` - { - ... - "volta": { - "node": "18.10.0" - } - } - ``` - - Then run `flyctl deploy` to get these changes onto our deployed app. - -1. To connect to the remote virtual machine we run the following command. SSH stands for Secure Shell and is a way to securely connect to another computer over a network. - - `flyctl ssh console` - -1. Once you’ve connected to the terminal you can find your files in the `app/` directory and from there you can run your script. - - `cd app` - - `node src/database/seed.js` - -Your database should now be seeded and you can check this by going to the URL for your deployed app and checking the data is there. diff --git a/src/course/syllabus/developer/database/resources.md b/src/course/syllabus/developer/database/resources.md deleted file mode 100644 index b9dcf8a8..00000000 --- a/src/course/syllabus/developer/database/resources.md +++ /dev/null @@ -1,18 +0,0 @@ -These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. - -- ### [Beekeeper Studio](https://www.beekeeperstudio.io) - A graphical interface for viewing and editing your database -- ### [SQL | W3Schools](https://www.w3schools.com/sql/default.asp) - W3Schools have lots of clear simple example for different types of SQL queries -- ### [Databases: how they work, and a brief history](https://seldo.com/posts/databases_how_they_work_and_a_brief_history) - Amazing summary of the history of databases, what they are, how they work and the different types -- ### [SQL Injection | W3Schools](https://www.w3schools.com/sql/sql_injection.asp) - Summary of one of the most common ways web apps get hacked -- ### [Express SQLite example](https://github.com/oliverjam/express-sqlite-example) - An example of how you might structure a project using Express & SQlite - - -## DevOps - -- ### [SQL-vs-noSQL](https://www.integrate.io/blog/the-sql-vs-nosql-difference/#:~:text=SQL%20databases%20are%20relational%2C%20and,NoSQL%20databases%20are%20horizontally%20scalable) - 5 Critical Differences diff --git a/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md b/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md new file mode 100644 index 00000000..c7609553 --- /dev/null +++ b/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md @@ -0,0 +1,28 @@ +{% box %} + +[Here's a reminder of the full list of KSB's](/course/ksb) + +{% endbox %} + +## React +- [ ] Learn how to integrate TypeScript with a React (S1, S11, S16) +- [ ] Understand the concepts of components, props, and state in React (K7, S8, S12) +- [ ] Implement routing in a single-page application using React Router (S1, S11, S16) +- [ ] Manage global state and side-effects in React applications (S1, S11, S16) +- [ ] Create reusable UI components and manage their lifecycle (S1, S2, S8) +- [ ] Handle asynchronous operations and manage data fetching in React (S1, S11, S16) +- [ ] Follow best practices in React development (S1, B3, B9) + +## Node + +- [ ] Set environment variables and understand their use case + +## Software Architecture + +- [ ] Draw a diagram representing the flow of our application +- [ ] Follow a consistent pattern for naming our folders, files and variables + +## Testing + +- [ ] Understand what a component test is and how to write one +- [ ] Ensure consistency in our application with end to end testing diff --git a/src/course/syllabus/developer/project-1-frontend/project.md b/src/course/syllabus/developer/project-1-frontend/project.md new file mode 100644 index 00000000..f18c4883 --- /dev/null +++ b/src/course/syllabus/developer/project-1-frontend/project.md @@ -0,0 +1,30 @@ +Your project this week is to build the front end to consume the RESTful API you designed and built last week + +## Spike +You should think and plan what features and look you want to your quiz app to have. You might considered making some wire frames or a prototype using a tool like [Figma](https://www.figma.com). + +### User Stories + +As a **quizzer**, I want to: + +- Select a subject area for my quiz. +- Begin a quiz session with randomly generated questions. +- View a summary of my quiz results, including areas of strength and weakness. +- Add, edit, and delete quiz questions and answers. +- Generate reports on quiz performance + +## Acceptance Criteria + +- [ ] Provide an engaging, intuitive user interface. +- [ ] Allow users to see a summary of their results after completing a quiz +- [ ] Allow users to see a summary of their results +- [ ] Allow users to take quizzes based on category, difficulty and count +- [ ] Allow users to add and delete questions from the 'database' +- [ ] Follow React principles and best practices +- [ ] Follow good accessibility practices +- [ ] Hidden environment variables (i.e. not on GitHub) + +### Stretch criteria + +- [ ] User local storage to allow for records to persist after browser refresh +- [ ] Make custom hooks to encapsulate repetitive logic i.e. fetch data or adding to local storage. diff --git a/src/course/syllabus/developer/project-1-frontend/resources.md b/src/course/syllabus/developer/project-1-frontend/resources.md new file mode 100644 index 00000000..aacfedb4 --- /dev/null +++ b/src/course/syllabus/developer/project-1-frontend/resources.md @@ -0,0 +1,11 @@ +These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. + +- ### [Creating a React app with Vite](https://vitejs.dev/guide/) + A framework agnostic tool that allows for quick setup of a React app with TS +- ### [React Docs](https://react.dev/learn/typescript) + Official React docs on typescript with interactive examples +- ### [React/Typescript Cheat-sheet](https://github.com/typescript-cheatsheets/react) + A quick reference guide to basic React patterns + +- ### [Free Code Camp React/TS guide](https://www.freecodecamp.org/news/using-typescript-in-react-apps/) + A more guided resource of this material diff --git a/src/course/syllabus/developer/database/schedule.md b/src/course/syllabus/developer/project-1-frontend/schedule.md similarity index 100% rename from src/course/syllabus/developer/database/schedule.md rename to src/course/syllabus/developer/project-1-frontend/schedule.md diff --git a/src/course/syllabus/developer/project-1-server/project.md b/src/course/syllabus/developer/project-1-server/project.md index 543ca23e..ba0fa08b 100644 --- a/src/course/syllabus/developer/project-1-server/project.md +++ b/src/course/syllabus/developer/project-1-server/project.md @@ -1,10 +1,14 @@ -# AI Learning Tool +# The Amazin' Quizzer App -Learners will develop an AI-driven web application that dynamically generates quizzes for users in a specified subject area. These quizzes will have interfaces both for quiz creation and quiz taking. +Learners will develop an web application that dynamically generates quizzes for users in a specified subject area. These quizzes will have interfaces both for quiz creation and quiz taking. You can use a AI tool to generate questions or use the ones provided and should use a JSON object in a separate file as a mock database. + +## Spike + +Before you start writing features you need to design the schema for your data and RESTful API. Think about what different things your app needs to store and how you will access them using your endpoints. Record your schema and endpoints in your `README.md` to make it easy for other developers to quickly get started using your API. ### User Stories -As a **learner**, I want to: +As a **quizzer**, I want to: - Select a subject area for my quiz. - Begin a quiz session with randomly generated questions. @@ -14,13 +18,16 @@ As a **learner**, I want to: ### Acceptance Criteria -**The application should:** +**The API should:** + +- [ ] Dynamically generate quizzes with adaptive difficulty. +- [ ] Filter quiz questions by category +- [ ] Return any number of questions by the above criteria +- [ ] Add or delete questions from the 'database' +- [ ] Provide good documentation on the use of the API +- [ ] Have automated tests for backend functionality +- [ ] Be deployed to a EC2 instance on AWS + -- Dynamically generate quizzes with adaptive difficulty. -- Allow users to see a summary of their results after completing a quiz -- Allow users to see a summary of their results -- Provide an engaging, intuitive user interface. -- Be deployed online, accessible from various devices. -- Follow React principles and best practices -- Have automated tests for backend functionality -- Be deployed to a cloud platform +### Stretch +- [ ] Implement a favourite count on questions and allow filtering by this criteria From 99573ad9cac78a33cd3554123cf67278ad2b2116 Mon Sep 17 00:00:00 2001 From: oliverjam Date: Mon, 13 May 2024 17:04:27 +0100 Subject: [PATCH 013/118] Make sure to cd into the new directory --- src/workshops/typescript/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/workshops/typescript/index.md b/src/workshops/typescript/index.md index b767028a..d8bc3fff 100644 --- a/src/workshops/typescript/index.md +++ b/src/workshops/typescript/index.md @@ -72,7 +72,7 @@ Let's see how we can set up a basic Node project to compile TypeScript for us. First we need a new directory to put our project in: ```shell -mkdir ts-workshop +mkdir ts-workshop && cd ts-workshop ``` Then we need to initialise a JS project using `npm`: From a3499568df9b33bbcce348cc53d200910c7faa1d Mon Sep 17 00:00:00 2001 From: oliverjam Date: Mon, 13 May 2024 17:32:29 +0100 Subject: [PATCH 014/118] Typo fixes --- src/workshops/typescript/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/workshops/typescript/index.md b/src/workshops/typescript/index.md index d8bc3fff..94ac1cb0 100644 --- a/src/workshops/typescript/index.md +++ b/src/workshops/typescript/index.md @@ -153,7 +153,7 @@ npx tsc --outDir build This should create a `build/` directory and put `index.js` in there. -It can get cumbersome to do this as your project starts to need more an more configuration, so it's common to use a `tsconfig.json` file to contain all the options you need. Create a new file named `tsconfig.json` and add these options: +It can get cumbersome to do this as your project starts to need more and more configuration, so it's common to use a `tsconfig.json` file to contain all the options you need. Create a new file named `tsconfig.json` and add these options: ```json { @@ -547,7 +547,7 @@ We have another type error. TS isn't happy that we're assigning to `task.status` 'task' is possibly 'undefined'. ``` -If you hover the `task` variable returned by `tasks.find` you'll see that it's type is `Task | undefined`. That's because the `find` method on arrays is not guaranteed to find anything. If `complete` was passed an invalid `id` we'd end up with an undefined `task`. Trying to assign to the `status` property would cause a JS runtime error, which would crash our program. +If you hover the `task` variable returned by `tasks.find` you'll see that its type is `Task | undefined`. That's because the `find` method on arrays is not guaranteed to find anything. If `complete` was passed an invalid `id` we'd end up with an undefined `task`. Trying to assign to the `status` property would cause a JS runtime error, which would crash our program. All the compiler errors can seem annoying, but TS is really trying to save us from ourselves! @@ -755,7 +755,7 @@ Cannot find module 'node:util' or its corresponding type declarations. Node is not written in TypeScript, and so does not include built-in type definitions. TS needs us to provide these definitions, otherwise it has no idea what `node:util` exports. -When a library you want to use does not include it's own types you can usually find them in the community project [DefinitelyTyped](https://github.com/DefinitelyTyped/DefinitelyTyped). You can install types from this project using `npm` in your terminal: +When a library you want to use does not include its own types you can usually find them in the community project [DefinitelyTyped](https://github.com/DefinitelyTyped/DefinitelyTyped). You can install types from this project using `npm` in your terminal: ```shell npm i -D @types/node From d952ca7f665bdedeea345dcbcff7e5f7e1383fbf Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 14 May 2024 10:58:31 +0100 Subject: [PATCH 015/118] typo fixes and refinement of learning outcomes and user stories --- .../developer/project-1-frontend/project.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/course/syllabus/developer/project-1-frontend/project.md b/src/course/syllabus/developer/project-1-frontend/project.md index f18c4883..453a2972 100644 --- a/src/course/syllabus/developer/project-1-frontend/project.md +++ b/src/course/syllabus/developer/project-1-frontend/project.md @@ -1,30 +1,36 @@ -Your project this week is to build the front end to consume the RESTful API you designed and built last week +# UI for Quizzer App + +Your project this week is to build the front end to consume the RESTful API you designed and built last week. ## Spike + You should think and plan what features and look you want to your quiz app to have. You might considered making some wire frames or a prototype using a tool like [Figma](https://www.figma.com). ### User Stories As a **quizzer**, I want to: -- Select a subject area for my quiz. - Begin a quiz session with randomly generated questions. +- Filter quiz questions by subject, difficulty. +- Select a chosen number of questions. - View a summary of my quiz results, including areas of strength and weakness. - Add, edit, and delete quiz questions and answers. -- Generate reports on quiz performance + +### Stretch user stories + +- Like particular questions and filter by this category. ## Acceptance Criteria - [ ] Provide an engaging, intuitive user interface. - [ ] Allow users to see a summary of their results after completing a quiz -- [ ] Allow users to see a summary of their results - [ ] Allow users to take quizzes based on category, difficulty and count - [ ] Allow users to add and delete questions from the 'database' - [ ] Follow React principles and best practices -- [ ] Follow good accessibility practices +- [ ] Follow good accessibility practices - [ ] Hidden environment variables (i.e. not on GitHub) ### Stretch criteria - [ ] User local storage to allow for records to persist after browser refresh -- [ ] Make custom hooks to encapsulate repetitive logic i.e. fetch data or adding to local storage. +- [ ] Make custom hooks to encapsulate repetitive logic i.e. fetch data or adding to local storage. From 610353f58d9944addef1b1dba26661ea40ccab8e Mon Sep 17 00:00:00 2001 From: oliverjam Date: Tue, 14 May 2024 12:41:55 +0100 Subject: [PATCH 016/118] Move TS workshop into the new /learn folder --- src/{workshops => learn}/typescript/index.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/{workshops => learn}/typescript/index.md (100%) diff --git a/src/workshops/typescript/index.md b/src/learn/typescript/index.md similarity index 100% rename from src/workshops/typescript/index.md rename to src/learn/typescript/index.md From 5516a9e1ac13d39dc458fa74e153fc7ea4e27682 Mon Sep 17 00:00:00 2001 From: oliverjam Date: Tue, 14 May 2024 12:45:03 +0100 Subject: [PATCH 017/118] Add challenge URL to TS workshop --- src/learn/typescript/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/learn/typescript/index.md b/src/learn/typescript/index.md index 94ac1cb0..bcb6053f 100644 --- a/src/learn/typescript/index.md +++ b/src/learn/typescript/index.md @@ -6,7 +6,7 @@ tags: keywords: - js - typescript -starter: false +challenge: https://github.com/foundersandcoders/typescript-challenge --- TypeScript is JavaScript with some additional syntax for describing what _types_ things are. Here's an example: From 9cd462f1ba59347cf8d4f2c13f1d6e30992997eb Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 14 May 2024 14:51:54 +0100 Subject: [PATCH 018/118] Learning outcome update --- .../authentication/learning-outcomes.md | 61 +++++-------------- .../project-1-server/learning-outcomes.md | 12 +++- 2 files changed, 25 insertions(+), 48 deletions(-) diff --git a/src/course/syllabus/developer/authentication/learning-outcomes.md b/src/course/syllabus/developer/authentication/learning-outcomes.md index a5a9084d..581c41dd 100644 --- a/src/course/syllabus/developer/authentication/learning-outcomes.md +++ b/src/course/syllabus/developer/authentication/learning-outcomes.md @@ -1,52 +1,23 @@ -## Authentication +## Testing and deployment -### Password encryption +{% box %} -- [ ] **Store passwords securely** -- [ ] Hash and salt passwords using bcrypt -- [ ] Describe why it's important to hash and salt passwords +[Here's a reminder of the full list of KSB's](/course/ksb) -### Authentication +{% endbox %} -- [ ] **Authenticate users by setting and reading cookies** -- [ ] Store session IDs in a cookie -- [ ] Describe why we need session IDs -- [ ] Ensure only authenticated users can see certain content -- [ ] Ensure only authenticated users can take certain actions -- [ ] Describe the difference between a stateful and stateless server +### Testing -### Promises +- [ ] Learn how to write and run unit tests for backend functionality using the Node testing suite and Postman (S4, S13, S6, S13) +- [ ] Gain experience in using the Cypress testing library with React (S4, S13, B9) +- [ ] Understand how to and when to use component and end to end tests (K12, S5, S6, S13) +- [ ] Understand how to write maintainable and readable test cases (S1, S4, B3) -- [ ] **Create our own promises** -- [ ] Wrap a function that takes a callback in a promise +### Deployment -## Design - -### Sign-in form - -- [ ] **Design a usable sign in form** -- [ ] Create a sign in form with semantic accessible HTML -- [ ] Help users enter the right information with HTML5 validation - -## Testing - -### Static analysis - -- [ ] **Configure ESLint to catch common JS errors** -- [ ] Describe how a linter helps us write code - -### Viewing browser cookies - -- [ ] **Use the Application tab in Chrome dev tools to view cookies** - -## DevOps - -### Continuous Integration - -- [ ] **Set up a continuous integration server** -- [ ] Run tests and linter in CI to prevent broken code reaching the main branch - -### Secure Deployment Pipeline - -- [ ] **Integrate security scanning or checks into the CI/CD pipeline** -- [ ] Restrict access to the deployment process +- [ ] Gain experience in deploying a full-stack web application to a cloud platform (S10, S14, B3) +- [ ] Understand the differences between development, staging, and production environments (K1, K3, K8) +- [ ] Configure the necessary environment variables and settings for deployment (S10, S14, B3) +- [ ] Understand the process of building and optimizing the application for production (S10, S14, B3) +- [ ] Learn how to set up and configure a production environment on a cloud platform (S10, S14, B3) +- [ ] Gain experience in using a continuous integration and deployment (CI/CD) pipeline (S10, S14, B3) diff --git a/src/course/syllabus/developer/project-1-server/learning-outcomes.md b/src/course/syllabus/developer/project-1-server/learning-outcomes.md index 1a1c374e..7842d74d 100644 --- a/src/course/syllabus/developer/project-1-server/learning-outcomes.md +++ b/src/course/syllabus/developer/project-1-server/learning-outcomes.md @@ -6,15 +6,21 @@ {% endbox %} +### TypeScript and Express + - [ ] Develop a server using Express and TypeScript for backend applications (K9, S1, S11, S12) - [ ] Identify the server's role within a full stack application (K1, K2, K3) - [ ] Understand the benefits of using TypeScript over JavaScript, such as improved code quality, enhanced developer productivity, and better tooling support (K7, S1) - [ ] Learn the basic syntax and features of TypeScript (S1, S16) -- [ ] Gain experience in using developer tooling, including IDEs, linters, and formatters, to enhance productivity (B3, B9) + +### RESTFUL Api's - [ ] Grasp the concept and purpose of RESTful APIs (K11, S12) - [ ] Construct and implement RESTful APIs effectively (S1, S11, S12, S16) - [ ] Determine appropriate scenarios for applying RESTful APIs (K7, S9, B2) - [ ] Design endpoint structures for data creation, modification, and deletion (K11, S8, S12) -- [ ] Utilize `node:fs` for filesystem operations (S1, S16) -- [ ] Gain experience in documenting the application's architecture, API endpoints, and user guides for future reference and maintenance (S15, B4, B7, B8) - [ ] Utilize Postman to test RESTful APIs independently of frontend components, ensuring proper functionality, error handling, and adherence to API specifications (S5, S6, S7) +- [ ] Gain experience in documenting the application's architecture, API endpoints, and user guides for future reference and maintenance (S15, B4, B7, B8) + +### Additional +- [ ] Utilize `node:fs` for filesystem operations (S1, S16) +- [ ] Gain experience in using developer tooling, including IDEs, linters, and formatters, to enhance productivity (B3, B9) \ No newline at end of file From c5691231b64b25aacedd0c52e6e28dcbf3ea210e Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 14 May 2024 15:43:02 +0100 Subject: [PATCH 019/118] Link update and resource tab --- src/_includes/course.11ty.js | 2 +- .../developer/authentication/resources.md | 11 --------- .../learning-outcomes.md | 0 .../project.md | 0 .../project-1-test-deploy/resources.md | 24 +++++++++++++++++++ .../schedule.md | 0 6 files changed, 25 insertions(+), 12 deletions(-) delete mode 100644 src/course/syllabus/developer/authentication/resources.md rename src/course/syllabus/developer/{authentication => project-1-test-deploy}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{authentication => project-1-test-deploy}/project.md (100%) create mode 100644 src/course/syllabus/developer/project-1-test-deploy/resources.md rename src/course/syllabus/developer/{authentication => project-1-test-deploy}/schedule.md (100%) diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 3c048b5b..4c484b42 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -35,7 +35,7 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/syllabus/developer/introduction/schedule">Introduction
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-server/schedule/">Project 1: Server
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-frontend/schedule/">Project 1: Frontend
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/authentication/schedule/">Project 1: Test & Deploy
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-test-deploy/schedule/">Project 1: Test & Deploy
  • <${Link} url=${url} href="/course/syllabus/developer/server-side-app/schedule/">Server-side app
  • <${Link} url=${url} href="/course/syllabus/developer/client-side-app/schedule/">Client-side app
  • <${Link} url=${url} href="/course/syllabus/developer/full-stack-app/schedule/">Full-stack app
  • diff --git a/src/course/syllabus/developer/authentication/resources.md b/src/course/syllabus/developer/authentication/resources.md deleted file mode 100644 index 67196055..00000000 --- a/src/course/syllabus/developer/authentication/resources.md +++ /dev/null @@ -1,11 +0,0 @@ -These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. - -- ### [JSON Web Tokens suck](https://www.youtube.com/watch?v=JdGOb7AxUo0) - Despite the title this talk actually covers most aspects of web authentication in a very accessible way -- ### [View, Edit, And Delete Cookies With Chrome DevTools](https://developers.google.com/web/tools/chrome-devtools/storage/cookies) - How to work with cookies while you are developing - -## DevOps - -- ### [National Cyber Security Center](https://www.ncsc.gov.uk/collection/developers-collection) - The 8 Principles of Secure Development & Deployment set out by the National Cyber Security Center \ No newline at end of file diff --git a/src/course/syllabus/developer/authentication/learning-outcomes.md b/src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/authentication/learning-outcomes.md rename to src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md diff --git a/src/course/syllabus/developer/authentication/project.md b/src/course/syllabus/developer/project-1-test-deploy/project.md similarity index 100% rename from src/course/syllabus/developer/authentication/project.md rename to src/course/syllabus/developer/project-1-test-deploy/project.md diff --git a/src/course/syllabus/developer/project-1-test-deploy/resources.md b/src/course/syllabus/developer/project-1-test-deploy/resources.md new file mode 100644 index 00000000..bde09f92 --- /dev/null +++ b/src/course/syllabus/developer/project-1-test-deploy/resources.md @@ -0,0 +1,24 @@ +These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. + +## Testing +- [Testing with Cypress](https://docs.cypress.io/guides/overview/why-cypress) +Official Cypress docs. You'll find some great tutorials to get start there. + +- ### [Testing with Postman](https://www.youtube.com/watch?v=oXW-C2bM0wE&t=229shttps://www.youtube.com/watch?v=oXW-C2bM0wE&t=229s) +A short video to making collections and writing test in Postman. + + + +## DevOps +- ### [Deploy to an EC2 instance](https://dev.to/drsimplegraffiti/from-code-to-the-cloud-a-step-by-step-guide-to-deploying-your-nodejs-app-on-aws-ec2-4300) +A step by step guide to deploying an express server using the AWS console and SSH. + +- ###[Create a security certificate for HTTPS](https://dev.to/fredabod/building-an-express-app-with-an-https-server-2mbj) +Steps to setup HTTPS connections in your Express server. + +- ### [National Cyber Security Center](https://www.ncsc.gov.uk/collection/developers-collection) + The 8 Principles of Secure Development & Deployment set out by the National Cyber Security Center + + + + diff --git a/src/course/syllabus/developer/authentication/schedule.md b/src/course/syllabus/developer/project-1-test-deploy/schedule.md similarity index 100% rename from src/course/syllabus/developer/authentication/schedule.md rename to src/course/syllabus/developer/project-1-test-deploy/schedule.md From 3ce05b345e43807293bf43468df6e34506911ddc Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 14 May 2024 16:17:57 +0100 Subject: [PATCH 020/118] Project tab update --- .../project-1-test-deploy/project.md | 51 ++++++------------- 1 file changed, 15 insertions(+), 36 deletions(-) diff --git a/src/course/syllabus/developer/project-1-test-deploy/project.md b/src/course/syllabus/developer/project-1-test-deploy/project.md index 405126ca..13f08cd0 100644 --- a/src/course/syllabus/developer/project-1-test-deploy/project.md +++ b/src/course/syllabus/developer/project-1-test-deploy/project.md @@ -1,50 +1,29 @@ -Your project this week is to build a web app that authenticates users and stores user-specific data in a SQLite database. +Your project this week is to deploy and test the quiz app you have made in the previous two weeks. ## Spike -Before you start writing features you need to create a security plan. This should a section in your `README.md` that describes how you will secure your app and mitigate different potential attacks. +Before you start you need to create a test and deployment plan. We would like you plan a testing strategy that will have broad coverage of your project. The tools we would like you to use to achieve this can include Cypress, Postman and the Node built in testing library. -### Questions to consider - -- Will you store session info in a cookie (stateless) or in your database (stateful)? -- How will you check a user's identity (authentication)? -- How will you control what actions a user can take (authorization)? -- How will you mitigate Cross-site Request Forgery (CSRF) attacks? - -### Useful resources - -- [What really is the difference between session and token based authentication](https://dev.to/thecodearcher/what-really-is-the-difference-between-session-and-token-based-authentication-2o39) -- [JSON Web Tokens suck](https://www.youtube.com/watch?v=JdGOb7AxUo0) -- [CSRF prevention](https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html) +We would also like you to plan and deploy this project using an EC2 instance for you server and github pages for your frontend. -## User stories - -### Core - -- **As a user, I want to**: submit information to your site for anyone to see -- **As a user, I want to**: come back to your site later and see what I posted is still there -- **As a user, I want to**: be the only person allowed to delete my stuff +### Questions to consider -Since this project is open-ended you'll need to write your own more specific user stories once you know what you want to build. +- What parts of the application logic are the most critical to cover with unit tests? +- How will you mock external dependencies (like databases or APIs) during unit testing? +- What are the key user journeys and flows within the application that must be covered by end-to-end tests? +- How will you manage test data and state for end-to-end testing? +- How will encrypted communication (HTTPS) be set up, and will you use a reverse proxy? +- How will you manage configuration variables for different environments (development, staging, production)? +- How will CORS policies be configured between the frontend on GitHub Pages and the backend on EC2? -### Example project ideas +### Acceptance Criteria -- Founders & Coders book sharing system -- Food / coffee recommendations around Founders & Coders -- Founders & Coders events calendar + - [ ] Comprehensive Test Coverage: Unit, integration, and end-to-end tests are in place, covering critical application logic and user flows. -## Acceptance Criteria + - [ ] Successful Deployment: The backend is deployed on an AWS EC2 instance, and the frontend is live on GitHub Pages and secured with HTTPS. -- [ ] Forms for users to sign up and log in -- [ ] A form for users to submit data only accessible to logged in users -- [ ] A page showing all the data -- [ ] A way for logged in users to delete their own data -- [ ] Semantic form elements with correctly associated labels -- [ ] A SQLite database -- [ ] Hidden environment variables (i.e. not on GitHub) + - [ ] Up-to-Date Documentation: Documentation clearly outlines setup, deployment, and usage instructions, including API endpoints and environmental requirements. ### Stretch criteria -- [ ] Tests for all routes -- [ ] A user page that shows everything posted by a single user - [ ] GitHub Actions CI setup to run your tests when you push From c17d3ff15c939f930699ac007b98fadac25334d6 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 14 May 2024 16:31:50 +0100 Subject: [PATCH 021/118] Typo fixes --- .../syllabus/developer/project-1-test-deploy/project.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/course/syllabus/developer/project-1-test-deploy/project.md b/src/course/syllabus/developer/project-1-test-deploy/project.md index 13f08cd0..f76ff4eb 100644 --- a/src/course/syllabus/developer/project-1-test-deploy/project.md +++ b/src/course/syllabus/developer/project-1-test-deploy/project.md @@ -16,13 +16,14 @@ We would also like you to plan and deploy this project using an EC2 instance for - How will you manage configuration variables for different environments (development, staging, production)? - How will CORS policies be configured between the frontend on GitHub Pages and the backend on EC2? + ### Acceptance Criteria - - [ ] Comprehensive Test Coverage: Unit, integration, and end-to-end tests are in place, covering critical application logic and user flows. +- [ ] Comprehensive Test coverage including unit integration and end-to-end tests covering critical application logic and user flows.cal application logic and user flows. - - [ ] Successful Deployment: The backend is deployed on an AWS EC2 instance, and the frontend is live on GitHub Pages and secured with HTTPS. + - [ ] Successful deployment of apps backend on an AWS EC2 instance, and the frontend is live on GitHub Pages. - - [ ] Up-to-Date Documentation: Documentation clearly outlines setup, deployment, and usage instructions, including API endpoints and environmental requirements. + - [ ] Documentation clearly outlines setup, deployment, and usage instructions, including API endpoints and environmental requirements. ### Stretch criteria From 7c0fce4d42988e93f329a45d894349e5f2ff6c27 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 14 May 2024 17:32:49 +0100 Subject: [PATCH 022/118] Refinements, typo and grammer fixes --- .../project-1-frontend/learning-outcomes.md | 11 +++----- .../developer/project-1-frontend/project.md | 17 ++++++------- .../developer/project-1-server/project.md | 25 +++++++++++-------- .../developer/project-1-server/resources.md | 13 +++------- .../project-1-test-deploy/project.md | 10 ++++---- .../project-1-test-deploy/resources.md | 12 ++++----- 6 files changed, 40 insertions(+), 48 deletions(-) diff --git a/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md b/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md index c7609553..8b5866ab 100644 --- a/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md +++ b/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md @@ -15,14 +15,9 @@ ## Node -- [ ] Set environment variables and understand their use case +- [ ] Set environment variables and understand their use case (S10, K11, B3) ## Software Architecture -- [ ] Draw a diagram representing the flow of our application -- [ ] Follow a consistent pattern for naming our folders, files and variables - -## Testing - -- [ ] Understand what a component test is and how to write one -- [ ] Ensure consistency in our application with end to end testing +- [ ] Draw a diagram representing the flow of our application (S8, K11, B7) +- [ ] Follow a consistent pattern for naming our folders, files and variables (S1, K11, B3) \ No newline at end of file diff --git a/src/course/syllabus/developer/project-1-frontend/project.md b/src/course/syllabus/developer/project-1-frontend/project.md index 453a2972..52b9284e 100644 --- a/src/course/syllabus/developer/project-1-frontend/project.md +++ b/src/course/syllabus/developer/project-1-frontend/project.md @@ -11,9 +11,9 @@ You should think and plan what features and look you want to your quiz app to ha As a **quizzer**, I want to: - Begin a quiz session with randomly generated questions. -- Filter quiz questions by subject, difficulty. +- Filter quiz questions by subject and difficulty. - Select a chosen number of questions. -- View a summary of my quiz results, including areas of strength and weakness. +- See a summary of my results after completing a quiz. - Add, edit, and delete quiz questions and answers. ### Stretch user stories @@ -23,14 +23,13 @@ As a **quizzer**, I want to: ## Acceptance Criteria - [ ] Provide an engaging, intuitive user interface. -- [ ] Allow users to see a summary of their results after completing a quiz -- [ ] Allow users to take quizzes based on category, difficulty and count -- [ ] Allow users to add and delete questions from the 'database' -- [ ] Follow React principles and best practices -- [ ] Follow good accessibility practices -- [ ] Hidden environment variables (i.e. not on GitHub) +- [ ] Allow users to take quizzes based on category, difficulty and count. +- [ ] Allow users to add and delete questions from the 'database'. +- [ ] Follow React principles and best practices. +- [ ] Follow good accessibility practices. +- [ ] Hidden environment variables (i.e. not on GitHub). ### Stretch criteria -- [ ] User local storage to allow for records to persist after browser refresh +- [ ] User local storage to allow for records to persist after browser refresh. - [ ] Make custom hooks to encapsulate repetitive logic i.e. fetch data or adding to local storage. diff --git a/src/course/syllabus/developer/project-1-server/project.md b/src/course/syllabus/developer/project-1-server/project.md index ba0fa08b..065c4af2 100644 --- a/src/course/syllabus/developer/project-1-server/project.md +++ b/src/course/syllabus/developer/project-1-server/project.md @@ -1,10 +1,16 @@ # The Amazin' Quizzer App -Learners will develop an web application that dynamically generates quizzes for users in a specified subject area. These quizzes will have interfaces both for quiz creation and quiz taking. You can use a AI tool to generate questions or use the ones provided and should use a JSON object in a separate file as a mock database. +## Intro + +Learners will develop an web application that dynamically generates quizzes. These app should have interfaces both for quiz creation and quiz taking. You can use a AI tool to generate questions or use the ones provided and should use a JSON object in a separate file as a mock database. + +## Project + +Your project for this week will be to develop a RESTful api as the backend of your application. ## Spike -Before you start writing features you need to design the schema for your data and RESTful API. Think about what different things your app needs to store and how you will access them using your endpoints. Record your schema and endpoints in your `README.md` to make it easy for other developers to quickly get started using your API. +Before you start writing features you need to design the schema for your data and RESTful API. Think about what different data your app needs to store and how you will access that data using your endpoints. Record your schema and endpoints in your `README.md` to make it easy for other developers to quickly get started using your API. ### User Stories @@ -14,20 +20,17 @@ As a **quizzer**, I want to: - Begin a quiz session with randomly generated questions. - View a summary of my quiz results, including areas of strength and weakness. - Add, edit, and delete quiz questions and answers. -- Generate reports on quiz performance ### Acceptance Criteria **The API should:** - [ ] Dynamically generate quizzes with adaptive difficulty. -- [ ] Filter quiz questions by category -- [ ] Return any number of questions by the above criteria -- [ ] Add or delete questions from the 'database' -- [ ] Provide good documentation on the use of the API -- [ ] Have automated tests for backend functionality -- [ ] Be deployed to a EC2 instance on AWS - +- [ ] Filter quiz questions by category. +- [ ] Return any number of questions by the above criteria. +- [ ] Add or delete questions from the 'database'. +- [ ] Provide good documentation on the use of the API. ### Stretch -- [ ] Implement a favourite count on questions and allow filtering by this criteria +- [ ] Implement a favourite count on questions and allow filtering by this criterion. + diff --git a/src/course/syllabus/developer/project-1-server/resources.md b/src/course/syllabus/developer/project-1-server/resources.md index 19e383ee..c7195f8d 100644 --- a/src/course/syllabus/developer/project-1-server/resources.md +++ b/src/course/syllabus/developer/project-1-server/resources.md @@ -9,20 +9,15 @@ These resources are helpful extra reading that may clarify or enhance concepts y General background info on how servers work - ### [Setting up Typescript and Express](https://blog.logrocket.com/how-to-set-up-node-typescript-express/) - A guide on setting up the tools for this weeks project. Good explanation on generating and modifying a TS config file. + A guide on setting up the tools for this weeks project. Good explanation on generating and modifying a TS config file - ### [Node fs and Express](https://www.tutorialspoint.com/nodejs/nodejs_restful_api.htm) - Good node tutorial demonstrating using json object as a mock database. + Good node tutorial demonstrating using json object as a mock database - ### [How to parse data with Express](https://medium.com/@rldsn/3-ways-of-parsing-parameters-in-express-98404008390d) - A brief guide to the different ways you can deal with data in your server. + A brief guide to the different ways you can deal with data in your server - ### [Testing your server](https://learning.postman.com/docs/designing-and-developing-your-api/testing-an-api/) - Documentation on using Postman to make a collection of tests for api endpoints. - -## DevOps - -- ### [Deploy a server with a EC2 instance](https://dev.to/drsimplegraffiti/from-code-to-the-cloud-a-step-by-step-guide-to-deploying-your-nodejs-app-on-aws-ec2-4300) - A guide to how to get your server up and running on the Amazon cloud. + Documentation on using Postman to make a collection of tests for api endpoints diff --git a/src/course/syllabus/developer/project-1-test-deploy/project.md b/src/course/syllabus/developer/project-1-test-deploy/project.md index f76ff4eb..1c209439 100644 --- a/src/course/syllabus/developer/project-1-test-deploy/project.md +++ b/src/course/syllabus/developer/project-1-test-deploy/project.md @@ -1,10 +1,10 @@ -Your project this week is to deploy and test the quiz app you have made in the previous two weeks. +Your task this week is to deploy and test the quiz app you have completed in the previous two weeks. ## Spike -Before you start you need to create a test and deployment plan. We would like you plan a testing strategy that will have broad coverage of your project. The tools we would like you to use to achieve this can include Cypress, Postman and the Node built in testing library. +Before you start you need to create a testing and deployment plan. We would like you plan a testing strategy that will have broad coverage of your project. The tools we would like you to use to achieve this can include Cypress, Postman and the Node built in testing library. -We would also like you to plan and deploy this project using an EC2 instance for you server and github pages for your frontend. +We would also like you to deploy this project using an EC2 instance for you server and github pages for your frontend. ### Questions to consider @@ -19,7 +19,7 @@ We would also like you to plan and deploy this project using an EC2 instance for ### Acceptance Criteria -- [ ] Comprehensive Test coverage including unit integration and end-to-end tests covering critical application logic and user flows.cal application logic and user flows. +- [ ] Comprehensive Test coverage including unit, integration and end-to-end tests covering critical application logic and user flows. - [ ] Successful deployment of apps backend on an AWS EC2 instance, and the frontend is live on GitHub Pages. @@ -27,4 +27,4 @@ We would also like you to plan and deploy this project using an EC2 instance for ### Stretch criteria -- [ ] GitHub Actions CI setup to run your tests when you push +- [ ] GitHub Actions CI setup to run your tests when you push. diff --git a/src/course/syllabus/developer/project-1-test-deploy/resources.md b/src/course/syllabus/developer/project-1-test-deploy/resources.md index bde09f92..fc256f1a 100644 --- a/src/course/syllabus/developer/project-1-test-deploy/resources.md +++ b/src/course/syllabus/developer/project-1-test-deploy/resources.md @@ -1,20 +1,20 @@ These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. ## Testing -- [Testing with Cypress](https://docs.cypress.io/guides/overview/why-cypress) -Official Cypress docs. You'll find some great tutorials to get start there. +- ### [Testing with Cypress](https://docs.cypress.io/guides/overview/why-cypress) +Official Cypress docs. You'll find some great tutorials to get start there - ### [Testing with Postman](https://www.youtube.com/watch?v=oXW-C2bM0wE&t=229shttps://www.youtube.com/watch?v=oXW-C2bM0wE&t=229s) -A short video to making collections and writing test in Postman. +A short video to making collections and writing test in Postman ## DevOps - ### [Deploy to an EC2 instance](https://dev.to/drsimplegraffiti/from-code-to-the-cloud-a-step-by-step-guide-to-deploying-your-nodejs-app-on-aws-ec2-4300) -A step by step guide to deploying an express server using the AWS console and SSH. +A step by step guide to deploying an express server using the AWS console and SSH -- ###[Create a security certificate for HTTPS](https://dev.to/fredabod/building-an-express-app-with-an-https-server-2mbj) -Steps to setup HTTPS connections in your Express server. +- ### [Create a security certificate for HTTPS](https://dev.to/fredabod/building-an-express-app-with-an-https-server-2mbj) +Steps to setup HTTPS connections in your Express server - ### [National Cyber Security Center](https://www.ncsc.gov.uk/collection/developers-collection) The 8 Principles of Secure Development & Deployment set out by the National Cyber Security Center From a8f8cfd7b89166e901963f00066edb903dae7b66 Mon Sep 17 00:00:00 2001 From: oliverjam Date: Wed, 15 May 2024 12:35:28 +0100 Subject: [PATCH 023/118] Add link to video of TS workshop --- src/learn/typescript/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/learn/typescript/index.md b/src/learn/typescript/index.md index bcb6053f..fa40c8f1 100644 --- a/src/learn/typescript/index.md +++ b/src/learn/typescript/index.md @@ -9,6 +9,8 @@ keywords: challenge: https://github.com/foundersandcoders/typescript-challenge --- +This workshop is also available [as a video](https://www.youtube.com/watch?v=v4FLgfOSOaw). + TypeScript is JavaScript with some additional syntax for describing what _types_ things are. Here's an example: ```ts From 67ceb47faf4de40257ed6b873f49edf8140cc52a Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Wed, 15 May 2024 13:32:11 +0100 Subject: [PATCH 024/118] Clear out weeks 4-6 --- .../developer/coding-paradigms.md | 0 src/_includes/course.11ty.js | 6 +- .../client-side-app/learning-outcomes.md | 9 -- .../developer/client-side-app/project.md | 99 ------------------- .../developer/client-side-app/resources.md | 15 --- .../full-stack-app/learning-outcomes.md | 12 --- .../developer/full-stack-app/project.md | 85 ---------------- .../developer/full-stack-app/resources.md | 11 --- .../project-2-week-1/learning-outcomes.md | 4 + .../developer/project-2-week-1/project.md | 9 ++ .../developer/project-2-week-1/resources.md | 1 + .../schedule.md | 0 .../project-2-week-2/learning-outcomes.md | 3 + .../developer/project-2-week-2/project.md | 10 ++ .../developer/project-2-week-2/resources.md | 3 + .../schedule.md | 0 .../project-2-week-3/learning-outcomes.md | 2 + .../developer/project-2-week-3/project.md | 2 + .../developer/project-2-week-3/resources.md | 2 + .../schedule.md | 0 .../server-side-app/learning-outcomes.md | 12 --- .../developer/server-side-app/project.md | 33 ------- 22 files changed, 39 insertions(+), 279 deletions(-) rename src/course/syllabus/developer/server-side-app/resources.md => archive/developer/coding-paradigms.md (100%) delete mode 100644 src/course/syllabus/developer/client-side-app/learning-outcomes.md delete mode 100644 src/course/syllabus/developer/client-side-app/project.md delete mode 100644 src/course/syllabus/developer/client-side-app/resources.md delete mode 100644 src/course/syllabus/developer/full-stack-app/learning-outcomes.md delete mode 100644 src/course/syllabus/developer/full-stack-app/project.md delete mode 100644 src/course/syllabus/developer/full-stack-app/resources.md create mode 100644 src/course/syllabus/developer/project-2-week-1/learning-outcomes.md create mode 100644 src/course/syllabus/developer/project-2-week-1/project.md create mode 100644 src/course/syllabus/developer/project-2-week-1/resources.md rename src/course/syllabus/developer/{server-side-app => project-2-week-1}/schedule.md (100%) create mode 100644 src/course/syllabus/developer/project-2-week-2/learning-outcomes.md create mode 100644 src/course/syllabus/developer/project-2-week-2/project.md create mode 100644 src/course/syllabus/developer/project-2-week-2/resources.md rename src/course/syllabus/developer/{client-side-app => project-2-week-2}/schedule.md (100%) create mode 100644 src/course/syllabus/developer/project-2-week-3/learning-outcomes.md create mode 100644 src/course/syllabus/developer/project-2-week-3/project.md create mode 100644 src/course/syllabus/developer/project-2-week-3/resources.md rename src/course/syllabus/developer/{full-stack-app => project-2-week-3}/schedule.md (100%) delete mode 100644 src/course/syllabus/developer/server-side-app/learning-outcomes.md delete mode 100644 src/course/syllabus/developer/server-side-app/project.md diff --git a/src/course/syllabus/developer/server-side-app/resources.md b/archive/developer/coding-paradigms.md similarity index 100% rename from src/course/syllabus/developer/server-side-app/resources.md rename to archive/developer/coding-paradigms.md diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 4c484b42..95183793 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -36,9 +36,9 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-server/schedule/">Project 1: Server
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-frontend/schedule/">Project 1: Frontend
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-test-deploy/schedule/">Project 1: Test & Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/server-side-app/schedule/">Server-side app
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/client-side-app/schedule/">Client-side app
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/full-stack-app/schedule/">Full-stack app
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-1/schedule/">Project 2: Online Shop
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-2/schedule/">Project 2: Online Shop
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-3/schedule/">Project 2: Test & Deploy
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-design/schedule">Design Sprint
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-build-1/schedule">Build Sprint 1
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-build-2/schedule">Build Sprint 2
  • diff --git a/src/course/syllabus/developer/client-side-app/learning-outcomes.md b/src/course/syllabus/developer/client-side-app/learning-outcomes.md deleted file mode 100644 index 7383150b..00000000 --- a/src/course/syllabus/developer/client-side-app/learning-outcomes.md +++ /dev/null @@ -1,9 +0,0 @@ -## React - -- [ ] Explain what problems React solves -- [ ] Explain when we might not use React -- [ ] Use the React library to build apps -- [ ] Use JSX to create DOM elements -- [ ] Use function components to organise our code -- [ ] Use component state to manage DOM updates -- [ ] Manage side effects in our components diff --git a/src/course/syllabus/developer/client-side-app/project.md b/src/course/syllabus/developer/client-side-app/project.md deleted file mode 100644 index ad07537a..00000000 --- a/src/course/syllabus/developer/client-side-app/project.md +++ /dev/null @@ -1,99 +0,0 @@ -Your project this week is to build an interactive game-like thing using React. - -## Spike - -Now that you're using a framework there is a bit more initial environment setup involved before you can start writing code. Make sure you get this [setup](#setup) done and [deployed](#deployment) to Netlify at the beginning. - -## Acceptance Criteria - -- [ ] Accept at least 2 kinds of user input -- [ ] Persistent state and interactivity, e.g. countdown timer, score tracker, previous guesses - -### Stretch criteria - -- [ ] State saved to localstorage so you can leave the page and come back later -- [ ] Make it look great - -### Example projects - -"Interactive game-like thing" is a bit vague, so here are some apps built previously: - -- [GIT FIGHTER II](https://camko.netlify.app/) -- [Let's Go Pokémon Battle](https://lets-go-pokemon-battle.netlify.app/) -- [Oli's Tamagotchi](https://tamagotchi.netlify.com) -- [Zooey's Drake thing](https://fuckin-yolo.netlify.com/) - -If you're struggling for inspiration consider adapting a simple board/card/arcade game that you like. - -## Setup - -We'll be using [Vite](https://vitejs.dev/) to handle bundling our app and providing a local dev server. You can quickly scaffold a new app using their CLI: - -{% box %} - -Do not create a new directory—Vite will do this for you - -{% endbox %} - -1. `npm create vite myapp -- --template react` -1. `cd myapp` -1. `npm install` to install the dependencies -1. `npm run dev` start the dev server - -Open the project in your editor—you should see an example app. Feel free to delete the logo/CSS files that you won't be using. - -### Static assets - -Vite supports [importing static assets](https://vitejs.dev/guide/assets.html) (like images or CSS). For example: - -```jsx -import imgUrl from "./test.png"; -import "./App.css"; - -function App() { - return ; -} -``` - -CSS files will automatically be copied to the final built site and included on the page. Images and other assets will provide the URL of the final asset to use in your components. - -### Linting - -We strongly recommend you configure ESLint. This will help catch mistakes as you're coding and save you time debugging problems caused by simple typos. - -You can use Oli's [minimal React config](https://github.com/oliverjam/eslint-config-react-minimal/) (follow the instructions in the readme to install). - -### Deployment - -We'll be deploying our apps to [Netlify](https://netlify.com). - -1. Create your repo and push it to GitHub -1. Go to https://app.netlify.com and login with Github -1. Click the "New site from Git" button -1. Choose "Github" as your provider (and authorize it) -1. Choose the repo you want to deploy -1. Choose "Deploy site" (the build settings should be pre-filled) - -Now every time you push to the `main` branch your site will redeploy. - -### API secrets - -{% box "error" %} - -Since this app runs entirely client-side **you cannot keep secrets**. Everything your code accesses will be available to users in their browser. - -{% endbox %} - -That said, if you have a token you want to keep off GitHub, but don't mind people potentially finding using dev tools (i.e. **not** a token attached to your credit card!) you can use a `.env.local` file. - -Vite will [automatically read any environment variables](https://vitejs.dev/guide/env-and-mode.html#env-files) prefixed with `VITE_` and make them available to your code on `import.meta.env`. E.g. if you have a `.env.local` file like this: - -``` -VITE_APP_API_KEY='123' -``` - -You can access that using `import.meta.env.VITE_APP_API_KEY`. - -Vite also generates a `.gitignore` that stops `.local` files from ending up on GitHub. - -You will also need to configure Netlify to inject this value when it deploys your site too (just like Heroku). You can do this under "Site settings" > "Build & deploy" > "Environment" > "Environment variables". diff --git a/src/course/syllabus/developer/client-side-app/resources.md b/src/course/syllabus/developer/client-side-app/resources.md deleted file mode 100644 index 28b003dc..00000000 --- a/src/course/syllabus/developer/client-side-app/resources.md +++ /dev/null @@ -1,15 +0,0 @@ -## Articles - -There's a lot more to React than we could cover in a week. It's worth reading through the [official docs](https://react.dev/) to reinforce your learning and learn more interesting new features. The links below are the most important concepts you should cover. - -### React features - -- [Reusing Logic with Custom Hooks](https://react.dev/learn/reusing-logic-with-custom-hooks) -- [Passing Data Deeply with Context](https://react.dev/learn/passing-data-deeply-with-context) - -### React philosophy - -- [Keeping Components Pure](https://react.dev/learn/keeping-components-pure) -- [Sharing State Between Components](https://react.dev/learn/sharing-state-between-components) -- [Thinking in React](https://react.dev/learn/thinking-in-react) -- [You Might Not Need an Effect](https://react.dev/learn/you-might-not-need-an-effect) diff --git a/src/course/syllabus/developer/full-stack-app/learning-outcomes.md b/src/course/syllabus/developer/full-stack-app/learning-outcomes.md deleted file mode 100644 index 7be020da..00000000 --- a/src/course/syllabus/developer/full-stack-app/learning-outcomes.md +++ /dev/null @@ -1,12 +0,0 @@ -- [ ] Learn new technology from external resources/documentation -- [ ] Use the Next.js framework to make server-rendered React apps -- [ ] Create real-world projects with complex requirements - - -## DevOps - -- [ ] Learn the fundamental concepts in serverless architecture -- [ ] Understand the basics of cloud computing and its advantages -- [ ] Learn how to use APIs to provision and manage cloud resources dynamically -- [ ] Understand the API calls required to create and manage cloud infrastructure - diff --git a/src/course/syllabus/developer/full-stack-app/project.md b/src/course/syllabus/developer/full-stack-app/project.md deleted file mode 100644 index 143f761c..00000000 --- a/src/course/syllabus/developer/full-stack-app/project.md +++ /dev/null @@ -1,85 +0,0 @@ -This week you'll be building an e-commerce shopping site for a fake brand. It doesn't need to actually take payments or have a checkout, but it should have product listings. - -Here's a very polished example (with more features than you need to implement): https://demo.vercel.store/ - -{% box %} - -Remember that Next doesn't work that differently to the Express apps you've built so far. You still have access to requests/responses and can talk to the DB and set cookies on the server. - -{% endbox %} - -## Acceptance criteria - -- Server-rendered with Next.js -- Homepage with product listings -- Individual product pages, containing quantity/colour/variant pickers -- Data stored in a SQLite database - -### Stretch criteria - -- "Add to basket" button on product pages -- Basket page showing all saved items -- Basket contents persisted for future visits (cookies or local storage) -- Filter products by category -- Sort products by price -- End-to-end tests - -## Setup - -It's important to get your project setup done as early as possible, so your team have a stable base to build on. You should follow this list as a team, before you do any other work on the project. - -### Generate project - -Generate a Next app with: - -```shell -npx create-next-app --use-npm -``` - -{% box %} - -This will create a new directory for you—you **do not** need to make one manually beforehand. Otherwise you'll end up with double-nested directories, which can make deployment difficult. - -{% endbox %} - -This command will scaffold a basic starting app structure in a new directory. You can `cd` in and run `npm run dev` to see what you've got. - -### Set up ESLint - -Since version 11 [Next has ESLint built in](https://nextjs.org/docs/basic-features/eslint). Make sure you have an npm script to run it: - -```json -"scripts": { - "lint": "next lint" -} -``` - -When you run this script for the first time it'll ask you what config you want to use. - -If you have the [ESLint VS Code extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) installed you should also see errors highlighted in your editor. - -### Set up Prettier - -It's important for your code to be formatted consistently across the project, regardless of who wrote it. Prettier helps with this by automating all formatting to one style. - -You can rely on the [Prettier VS Code extension](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) to auto-format when you save. However you should make sure to include a [Prettier config file](https://prettier.io/docs/en/configuration.html) in your project, otherwise each team member's extension will format according to their personal settings. - -Create a `.prettierrc` file at the root of your project: - -```json -{} -``` - -An empty config will make Prettier use the default rules. If you want to [customise any of them](https://prettier.io/docs/en/options.html) you can do so here. E.g. - -```json -{ - "trailingComma": "es5" -} -``` - -## Stretch setup - -### Testing - -You can follow Next's guide to [testing with Playwright](https://nextjs.org/docs/testing#playwright) if you want to experiment with end-to-end tests. diff --git a/src/course/syllabus/developer/full-stack-app/resources.md b/src/course/syllabus/developer/full-stack-app/resources.md deleted file mode 100644 index 5232eb4e..00000000 --- a/src/course/syllabus/developer/full-stack-app/resources.md +++ /dev/null @@ -1,11 +0,0 @@ -- [How Next.js works](https://nextjs.org/learn/foundations/how-nextjs-works) -- [Testing Next.js](https://nextjs.org/docs/testing) -- [Persistent Volumes on Fly.io](https://fly.io/docs/reference/volumes/) -- [Next.js + SQLite example](https://github.com/oliverjam/next-cookie-auth) (including Fly.io deployment) - -## DevOps - -- [Deploy Next.js to Fly.io](https://fly.io/docs/languages-and-frameworks/nextjs/) -- [Deploying to Fly.io](https://oliverjam.es/blog/deploying-to-fly/) -- [What is Gatsby?](https://www.gatsbyjs.com/docs/conceptual/gatsby-concepts/) -- [Serverless architecture](https://www.datadoghq.com/knowledge-center/serverless-architecture/) \ No newline at end of file diff --git a/src/course/syllabus/developer/project-2-week-1/learning-outcomes.md b/src/course/syllabus/developer/project-2-week-1/learning-outcomes.md new file mode 100644 index 00000000..e6a274d6 --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-1/learning-outcomes.md @@ -0,0 +1,4 @@ +## Databases + +TBC + diff --git a/src/course/syllabus/developer/project-2-week-1/project.md b/src/course/syllabus/developer/project-2-week-1/project.md new file mode 100644 index 00000000..28a6eb44 --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-1/project.md @@ -0,0 +1,9 @@ +Your project this week is TBC + +## Spikes + +TBC + +## Acceptance criteria + +TBC \ No newline at end of file diff --git a/src/course/syllabus/developer/project-2-week-1/resources.md b/src/course/syllabus/developer/project-2-week-1/resources.md new file mode 100644 index 00000000..6f93e430 --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-1/resources.md @@ -0,0 +1 @@ +TBC \ No newline at end of file diff --git a/src/course/syllabus/developer/server-side-app/schedule.md b/src/course/syllabus/developer/project-2-week-1/schedule.md similarity index 100% rename from src/course/syllabus/developer/server-side-app/schedule.md rename to src/course/syllabus/developer/project-2-week-1/schedule.md diff --git a/src/course/syllabus/developer/project-2-week-2/learning-outcomes.md b/src/course/syllabus/developer/project-2-week-2/learning-outcomes.md new file mode 100644 index 00000000..d16afc43 --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-2/learning-outcomes.md @@ -0,0 +1,3 @@ +## Learning Outcomes + +TBC \ No newline at end of file diff --git a/src/course/syllabus/developer/project-2-week-2/project.md b/src/course/syllabus/developer/project-2-week-2/project.md new file mode 100644 index 00000000..32ed3b9c --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-2/project.md @@ -0,0 +1,10 @@ +Your project this week is TBC + +## Spike + +TBC + +## Acceptance Criteria + +TBC + diff --git a/src/course/syllabus/developer/project-2-week-2/resources.md b/src/course/syllabus/developer/project-2-week-2/resources.md new file mode 100644 index 00000000..8e488be2 --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-2/resources.md @@ -0,0 +1,3 @@ +## Articles + +TBC \ No newline at end of file diff --git a/src/course/syllabus/developer/client-side-app/schedule.md b/src/course/syllabus/developer/project-2-week-2/schedule.md similarity index 100% rename from src/course/syllabus/developer/client-side-app/schedule.md rename to src/course/syllabus/developer/project-2-week-2/schedule.md diff --git a/src/course/syllabus/developer/project-2-week-3/learning-outcomes.md b/src/course/syllabus/developer/project-2-week-3/learning-outcomes.md new file mode 100644 index 00000000..7fe76d2c --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-3/learning-outcomes.md @@ -0,0 +1,2 @@ +## Learning Outcomes +TBC \ No newline at end of file diff --git a/src/course/syllabus/developer/project-2-week-3/project.md b/src/course/syllabus/developer/project-2-week-3/project.md new file mode 100644 index 00000000..aa370554 --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-3/project.md @@ -0,0 +1,2 @@ +## Project +TBC diff --git a/src/course/syllabus/developer/project-2-week-3/resources.md b/src/course/syllabus/developer/project-2-week-3/resources.md new file mode 100644 index 00000000..48ca3e1a --- /dev/null +++ b/src/course/syllabus/developer/project-2-week-3/resources.md @@ -0,0 +1,2 @@ +## Resources +TBC \ No newline at end of file diff --git a/src/course/syllabus/developer/full-stack-app/schedule.md b/src/course/syllabus/developer/project-2-week-3/schedule.md similarity index 100% rename from src/course/syllabus/developer/full-stack-app/schedule.md rename to src/course/syllabus/developer/project-2-week-3/schedule.md diff --git a/src/course/syllabus/developer/server-side-app/learning-outcomes.md b/src/course/syllabus/developer/server-side-app/learning-outcomes.md deleted file mode 100644 index 34d0ffc5..00000000 --- a/src/course/syllabus/developer/server-side-app/learning-outcomes.md +++ /dev/null @@ -1,12 +0,0 @@ -## Server-side app - -- [ ] Build a stable, professional app -- [ ] Handle errors without our server crashing -- [ ] Communicate problems to the user -- [ ] Research and implement complex new features on our own - -## DevOps - -### Monitoring -- [ ] Implement monitoring tools for collecting and analysing metrics and logs and configure to provide actionable alerts - diff --git a/src/course/syllabus/developer/server-side-app/project.md b/src/course/syllabus/developer/server-side-app/project.md deleted file mode 100644 index a23c2d2a..00000000 --- a/src/course/syllabus/developer/server-side-app/project.md +++ /dev/null @@ -1,33 +0,0 @@ -Your project this week is to build anything you like as long as it meets the technical criteria below. It should still be a Node/Express server-rendered application with a SQLite database, but feel free to get creative with the ideas. - -This week is the culmination of your Express learning, so focus on doing everything as professionally as you can. Your app should have validation, error-handling, good user-experience etc. - -## Spikes - -Your project should include at least one of these new topics. You'll have to spend some time researching them in your group, figuring out how exactly to implement them before you start working on your project. There are minimal examples provided, but they are only one way to approach it—you should look for tutorials/blog posts etc with alternative solutions and find one you like. - -### File uploads - -Allow users to upload files to your server (like images or audio clips). - [View file upload example](https://express-file-upload-example.glitch.me) | [View code](https://glitch.com/edit/#!/express-file-upload-example) - -### Social login (OAuth) - -Allow users to log in using 3rd party accounts like Google or GitHub. - [View GitHub login example](https://express-oauth-example.glitch.me) | [View code](https://glitch.com/edit/#!/express-oauth-example) - -### Session flash messages - -Show temporary messages after successful/failed form submissions to help the user understand what's happening. Note that this is a little complex to manage on your own: you may want to use a session middleware library from npm. - [View flash message example](https://express-flash-message-example.glitch.me) | [View code](https://glitch.com/edit/#!/express-flash-message-example) - -## Acceptance criteria - -- [ ] Express server -- [ ] SQLite database -- [ ] Hosted on Fly.io -- [ ] Include one of the spike topics -- [ ] Validate user-submitted data on the server -- [ ] Handle errors and inform the user -- [ ] Well-organised modular codebase -- [ ] Styled appropriately From e966e310632f942179be46bc1c9ad7b3611d5d29 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Wed, 15 May 2024 14:57:54 +0100 Subject: [PATCH 025/118] directory rename --- .../{foundation => foundation}/full-stack/learning-outcomes.md | 0 archive/{foundation => foundation}/full-stack/project.md | 0 archive/{foundation => foundation}/testing/project.md | 0 archive/{foundation => foundation}/testing/spikes.md | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename archive/{foundation => foundation}/full-stack/learning-outcomes.md (100%) rename archive/{foundation => foundation}/full-stack/project.md (100%) rename archive/{foundation => foundation}/testing/project.md (100%) rename archive/{foundation => foundation}/testing/spikes.md (100%) diff --git a/archive/foundation /full-stack/learning-outcomes.md b/archive/foundation/full-stack/learning-outcomes.md similarity index 100% rename from archive/foundation /full-stack/learning-outcomes.md rename to archive/foundation/full-stack/learning-outcomes.md diff --git a/archive/foundation /full-stack/project.md b/archive/foundation/full-stack/project.md similarity index 100% rename from archive/foundation /full-stack/project.md rename to archive/foundation/full-stack/project.md diff --git a/archive/foundation /testing/project.md b/archive/foundation/testing/project.md similarity index 100% rename from archive/foundation /testing/project.md rename to archive/foundation/testing/project.md diff --git a/archive/foundation /testing/spikes.md b/archive/foundation/testing/spikes.md similarity index 100% rename from archive/foundation /testing/spikes.md rename to archive/foundation/testing/spikes.md From 5eb8fd5077a7a1bd787514203e218cb2964b088b Mon Sep 17 00:00:00 2001 From: Alphonso <114600712+camelPhonso@users.noreply.github.com> Date: Wed, 15 May 2024 15:55:47 +0100 Subject: [PATCH 026/118] removed trailing space from foundation folder name so windows users can use the repo --- .../{foundation => foundation}/full-stack/learning-outcomes.md | 0 archive/{foundation => foundation}/full-stack/project.md | 0 archive/{foundation => foundation}/testing/project.md | 0 archive/{foundation => foundation}/testing/spikes.md | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename archive/{foundation => foundation}/full-stack/learning-outcomes.md (100%) rename archive/{foundation => foundation}/full-stack/project.md (100%) rename archive/{foundation => foundation}/testing/project.md (100%) rename archive/{foundation => foundation}/testing/spikes.md (100%) diff --git a/archive/foundation /full-stack/learning-outcomes.md b/archive/foundation/full-stack/learning-outcomes.md similarity index 100% rename from archive/foundation /full-stack/learning-outcomes.md rename to archive/foundation/full-stack/learning-outcomes.md diff --git a/archive/foundation /full-stack/project.md b/archive/foundation/full-stack/project.md similarity index 100% rename from archive/foundation /full-stack/project.md rename to archive/foundation/full-stack/project.md diff --git a/archive/foundation /testing/project.md b/archive/foundation/testing/project.md similarity index 100% rename from archive/foundation /testing/project.md rename to archive/foundation/testing/project.md diff --git a/archive/foundation /testing/spikes.md b/archive/foundation/testing/spikes.md similarity index 100% rename from archive/foundation /testing/spikes.md rename to archive/foundation/testing/spikes.md From f1248949e01bdd961165ead3edb990a2a940f822 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Wed, 15 May 2024 16:44:24 +0100 Subject: [PATCH 027/118] Grammar corrections --- .../developer/project-1-test-deploy/learning-outcomes.md | 2 +- .../syllabus/developer/project-1-test-deploy/resources.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md b/src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md index 581c41dd..5209f698 100644 --- a/src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md +++ b/src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md @@ -10,7 +10,7 @@ - [ ] Learn how to write and run unit tests for backend functionality using the Node testing suite and Postman (S4, S13, S6, S13) - [ ] Gain experience in using the Cypress testing library with React (S4, S13, B9) -- [ ] Understand how to and when to use component and end to end tests (K12, S5, S6, S13) +- [ ] Understand how and when to use component and end to end tests (K12, S5, S6, S13) - [ ] Understand how to write maintainable and readable test cases (S1, S4, B3) ### Deployment diff --git a/src/course/syllabus/developer/project-1-test-deploy/resources.md b/src/course/syllabus/developer/project-1-test-deploy/resources.md index fc256f1a..54ddd40c 100644 --- a/src/course/syllabus/developer/project-1-test-deploy/resources.md +++ b/src/course/syllabus/developer/project-1-test-deploy/resources.md @@ -5,7 +5,7 @@ These resources are helpful extra reading that may clarify or enhance concepts y Official Cypress docs. You'll find some great tutorials to get start there - ### [Testing with Postman](https://www.youtube.com/watch?v=oXW-C2bM0wE&t=229shttps://www.youtube.com/watch?v=oXW-C2bM0wE&t=229s) -A short video to making collections and writing test in Postman +A short video on how to make collections and writing test in Postman From ac0ea4189b301ba3312626b0f308dc912dd424b7 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Wed, 15 May 2024 16:48:56 +0100 Subject: [PATCH 028/118] weeok 0 and 1 updated --- .../developer/introduction/schedule.md | 42 ++++++++----------- .../developer/project-1-server/schedule.md | 15 +++++-- 2 files changed, 29 insertions(+), 28 deletions(-) diff --git a/src/course/syllabus/developer/introduction/schedule.md b/src/course/syllabus/developer/introduction/schedule.md index 0daca249..c7fa758d 100644 --- a/src/course/syllabus/developer/introduction/schedule.md +++ b/src/course/syllabus/developer/introduction/schedule.md @@ -16,35 +16,29 @@ schedule: thursday: - name: No schedule start: 9:30 + end: 9:45 + - name: Arrive + start: 9:45 + end: 10:00 + - name: Intro, expectiations and safeguarding + start: 10:00 + end: 13:00 + - name: Free lunch (there is such a thing) + start: 13:00 end: 14:00 - - name: Communal lunch with pre-apprentices + - name: No schedule start: 14:00 - end: 15:00 - - name: Course intro - start: 15:00 - end: 15:30 - url: https://hackmd.io/@-k0vCiCrQFKCyNvAyIXaPA/r1AOaIlka - - name: Reading for next topic & Installation - start: 15:30 - end: 16:15 - url: /course/syllabus/developer/introduction/topicIntro/ - - name: Break - url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b - start: 16:15 - end: 16:30 - - name: Thought of the week (safeguarding) - type: personal-development - url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - start: 16:30 - end: 17:15 - - name: Social - url: https://foundersandcoders.notion.site/Installation-Guide-879500e472964043a17a1ad886b0905b - start: 17:15 end: 18:00 + friday: - - name: Typescript Practice - url: https://typescript-exercises.github.io/#exercise=1&file=%2Findex.ts + - name: Typescript workshop + url: /learn/typescript type: workshop start: 9:30 + end: 17:00 + - name: Typescript Extra Practice + url: https://typescript-exercises.github.io/#exercise=1&file=%2Findex.ts + type: workshop + start: 17:00 end: 18:00 --- diff --git a/src/course/syllabus/developer/project-1-server/schedule.md b/src/course/syllabus/developer/project-1-server/schedule.md index 9d5b6371..e545442f 100644 --- a/src/course/syllabus/developer/project-1-server/schedule.md +++ b/src/course/syllabus/developer/project-1-server/schedule.md @@ -7,6 +7,11 @@ schedule: type: personal-development start: 12:00 end: 13:00 + - name: Intro to project managment + type: personal-development + start: 11:00 + end: 12:00 + url: https://fac-slides.netlify.app/slides/proj-mgmt/ # - name: Tech for Better # type: workshop @@ -22,16 +27,18 @@ schedule: type: personal-development start: 9:45 end: 10:00 - - name: Intro to project managment - start: 16:00 - end: 18:00 - url: https://fac-slides.netlify.app/slides/proj-mgmt/ + # - name: Reading for next topic # start: 15:30 # end: 16:00 # url: /course/syllabus/developer/server/topicIntro/ friday: + - name: React workshop + url: /learn/react + type: workshop + start: 9:30 + end: 18:00 # - name: Database workshop # url: /learn/database # type: workshop From f8395a376562827019f93cf9b410c29cc4a5013b Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Wed, 15 May 2024 16:57:54 +0100 Subject: [PATCH 029/118] added week 2 tweek --- src/course/syllabus/developer/database/schedule.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/course/syllabus/developer/database/schedule.md b/src/course/syllabus/developer/database/schedule.md index 267fb2ae..d12f9e2c 100644 --- a/src/course/syllabus/developer/database/schedule.md +++ b/src/course/syllabus/developer/database/schedule.md @@ -2,6 +2,11 @@ layout: schedule schedule: monday: + - name: Sanitize & validate challenge + url: https://github.com/foundersandcoders/sanitize-validate-challenge + type: challenge + start: 11:00 + end: 12:00 # - name: Thought of the week (Misinformation, Disinformation and the threat to Democracy) # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 # type: personal-development From bce05e199486312bb8098c117965540ff1f62469 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Thu, 16 May 2024 14:40:58 +0100 Subject: [PATCH 030/118] fixed typos --- src/learn/typescript/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/learn/typescript/index.md b/src/learn/typescript/index.md index fa40c8f1..8f61f91d 100644 --- a/src/learn/typescript/index.md +++ b/src/learn/typescript/index.md @@ -192,7 +192,7 @@ npx tsc --watch ``` ```shell -node build/index.js --watch +node --watch build/index.js ``` Now whenever you edit a `.ts` file `tsc` will re-compile it into `build/`. This will cause Node to re-run your `.js` code automatically. From 80ac287cec6b379e4dbd8d20c73d1821122da008 Mon Sep 17 00:00:00 2001 From: oliverjam Date: Fri, 17 May 2024 10:12:19 +0100 Subject: [PATCH 031/118] Stop workshop layouts getting squished On medium viewports the content column ends up way too small because of the empty space left for the (nonexistent) sidebar nav. Workshops don't have a sidebar, so we can just not use this layout for them. This is a quick fix so the content is no longer centre-aligned, but I think that's fine as it's way more usable for people with medium screens. --- src/_includes/resources.11ty.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_includes/resources.11ty.js b/src/_includes/resources.11ty.js index 82b323c0..4545e071 100644 --- a/src/_includes/resources.11ty.js +++ b/src/_includes/resources.11ty.js @@ -14,7 +14,7 @@ exports.data = { exports.render = ({ page: { url }, content }) => { return html` -
    +
    +```Csharp var builder = WebApplication.CreateBuilder(args); @@ -79,8 +79,8 @@ which is middleware that is required to run on a route before it acesses the end which attatches endpoints to our controllers. the final file should look like this - -```C# + +```Csharp var builder = WebApplication.CreateBuilder(args); // Add services to the container. @@ -117,7 +117,8 @@ app.Run(); inside your MyWebApi directory make a new directory called controllers. Inside this directory make a new file called MyController.cs within the file add this code -```C# + +```Csharp // imports useful methods for setting up a controller using Microsoft.AspNetCore.Mvc; // sets up an api controller From 55ecb094486ac1b932f518cd5dc82f9f81c6c71a Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Fri, 21 Jun 2024 09:57:46 +0100 Subject: [PATCH 050/118] fixed build error --- .../syllabus/developer/project-2-week-3/schedule.md | 4 ++-- src/learn/DOTNET/index.md | 10 ++++------ 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/course/syllabus/developer/project-2-week-3/schedule.md b/src/course/syllabus/developer/project-2-week-3/schedule.md index d60a0763..48333b59 100644 --- a/src/course/syllabus/developer/project-2-week-3/schedule.md +++ b/src/course/syllabus/developer/project-2-week-3/schedule.md @@ -29,8 +29,8 @@ schedule: # end: 16:00 # url: https://fac-slides.netlify.app/slides/design-sprint/ friday: - - name: Database workshop - url: /learn/database + - name: .NET workshop + url: /learn/DOTNET type: workshop start: 9:30 end: 18:00 diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index 1a325dfe..7bf26a3f 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -43,8 +43,8 @@ dotnet new webapi -n MyWebApi ## Personalizing your project Open the ne directory and navigate to the program file. This file is the entrypoint for execution and where servers and middleware can be configured. When you create a new project microsoft helpfully includes some code to tell you the weather in this project. We can delete this. After removing the weather stuff the file should look like - -```Csharp + +```cs var builder = WebApplication.CreateBuilder(args); @@ -79,8 +79,7 @@ which is middleware that is required to run on a route before it acesses the end which attatches endpoints to our controllers. the final file should look like this - -```Csharp +```cs var builder = WebApplication.CreateBuilder(args); // Add services to the container. @@ -117,8 +116,7 @@ app.Run(); inside your MyWebApi directory make a new directory called controllers. Inside this directory make a new file called MyController.cs within the file add this code - -```Csharp +```cs // imports useful methods for setting up a controller using Microsoft.AspNetCore.Mvc; // sets up an api controller From 0577873761a2ddc6b7467aea6dff9ce45c3d795f Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 <113926900+ShaughnAnderson94@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:36:57 +0100 Subject: [PATCH 051/118] Update src/learn/DOTNET/index.md Co-authored-by: Alphonso <114600712+camelPhonso@users.noreply.github.com> --- src/learn/DOTNET/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index 7bf26a3f..a7386a26 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -10,7 +10,7 @@ keywords: challenge: https://github.com/foundersandcoders/DOTNET-Workshop --- -Although all are coding so far has been in javascript or its close cousin typescript not all web sites are coded in this language. If you know other popular coding languges it will boost you capabilities as a dev. +Although all our coding so far has been in javascript or its close cousin typescript not all web sites are coded in this language. If you know other popular coding languages it will boost you capabilities as a dev. The benefits of languges over one another have much to do with situation and prefference. Proponents of DOTNET(.NET) will tell you that in comparison to javascript the langauge was designed with much more intention and while javascript devs are constantly installing new libraries to do anything dotnet has in its built in library most of the functionality needed to be a developer. They will also tell you that when you get to the point of maximizing the speed of your code .NET will make things easier. Many people are also fans of object oriented programing but coming from functional programing its unlikely you will initially feel that way. ## Setting up .Net From d8bc1279627c995c6661c040038596a3b6d59d26 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 <113926900+ShaughnAnderson94@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:37:09 +0100 Subject: [PATCH 052/118] Update src/learn/DOTNET/index.md Co-authored-by: Alphonso <114600712+camelPhonso@users.noreply.github.com> --- src/learn/DOTNET/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index a7386a26..6f4ff844 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -22,7 +22,7 @@ Dot net projects can be made in VSCode just like javascript. In order to get sta ## Setting up project -start by creating a new project and cding into it. +start by creating a new project and cd-ing into it. use the following command to see a list of possible dotnet project types. From ee99ddddd52e7b281c2cd364297a0ffde2daf72a Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 <113926900+ShaughnAnderson94@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:38:50 +0100 Subject: [PATCH 053/118] Update src/learn/DOTNET/index.md Co-authored-by: Alphonso <114600712+camelPhonso@users.noreply.github.com> --- src/learn/DOTNET/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index 6f4ff844..c3d74a62 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -24,7 +24,7 @@ Dot net projects can be made in VSCode just like javascript. In order to get sta start by creating a new project and cd-ing into it. -use the following command to see a list of possible dotnet project types. +You can use the following command to view a list of templates available for your project: ```shell dotnet new list From 66b3007c23358db5e2c3ad52f96a6f98e09d33f5 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 <113926900+ShaughnAnderson94@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:39:05 +0100 Subject: [PATCH 054/118] Update src/learn/DOTNET/index.md Co-authored-by: Alphonso <114600712+camelPhonso@users.noreply.github.com> --- src/learn/DOTNET/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index c3d74a62..0b565545 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -30,7 +30,7 @@ You can use the following command to view a list of templates available for your dotnet new list ``` -next use this command to make a ASP.NET core web api with the name MyWebApi +but what we want to build is a WebApi app, and the command to create that template is this: ```dotnet From 1763d5704863dd42496d072fb62aead4110b2129 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 <113926900+ShaughnAnderson94@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:50:21 +0100 Subject: [PATCH 055/118] Update src/learn/DOTNET/index.md Co-authored-by: Alphonso <114600712+camelPhonso@users.noreply.github.com> --- src/learn/DOTNET/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index 0b565545..48ef629d 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -146,7 +146,7 @@ make sure your terminal is inside the api directory then use ```shell dotnet run ``` -You should get a link to visit but there is nothing there. The trick is to add /swagger onto the end of your url. If everthing has worked properly you should be taken to a web page where you can click around and test any routes from your controller give it a go. +You should get a link to visit but there is nothing there. The trick is to add `/swagger` onto the end of your url. If everything has worked properly you should be taken to a web page where you can click around and test any routes from your controller give it a go. As a final note before you commit any of this work to github dotnet projects generate small dev files at a scary rate so you should make sure you set up a gitignore a short cut for making one that ignores all the files you will only need locally is From bedcd7c27fa34c1f3513c932ebf1b6f39f49a64e Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 <113926900+ShaughnAnderson94@users.noreply.github.com> Date: Fri, 21 Jun 2024 14:55:24 +0100 Subject: [PATCH 056/118] Update index.md with picture --- src/learn/DOTNET/index.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index 48ef629d..606e59c3 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -146,10 +146,14 @@ make sure your terminal is inside the api directory then use ```shell dotnet run ``` -You should get a link to visit but there is nothing there. The trick is to add `/swagger` onto the end of your url. If everything has worked properly you should be taken to a web page where you can click around and test any routes from your controller give it a go. +You should get a link to visit but there is nothing there. The trick is to add `/swagger` onto the end of your url. If everything has worked properly you should be taken to a web page where you can click around and test any routes from your controller give it a go. It should look something like this. + +![image](https://github.com/foundersandcoders/coursebook/assets/113926900/51a3063c-2549-4421-b6af-10e1587329e7) + + As a final note before you commit any of this work to github dotnet projects generate small dev files at a scary rate so you should make sure you set up a gitignore a short cut for making one that ignores all the files you will only need locally is ```shell dotnet new gitignore -``` \ No newline at end of file +``` From 3937220e2aeec689ea82d3670364cb15dac4436d Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Fri, 21 Jun 2024 16:52:20 +0100 Subject: [PATCH 057/118] rough draft of week one --- src/_includes/course.11ty.js | 2 +- .../DOTNET-intro/learning-outcomes.md | 13 +++++ .../projects/DOTNET-intro/project.md | 55 +++++++++++++++++++ .../projects/DOTNET-intro/resources.md | 16 ++++++ .../schedule.md | 0 .../in-house-build-1/learning-outcomes.md | 32 ----------- .../projects/in-house-build-1/project.md | 5 -- .../projects/in-house-build-1/resources.md | 1 - .../projects/in-house-build-1/spikes.md | 7 --- .../syllabus/developer/projects/projects.json | 2 +- 10 files changed, 86 insertions(+), 47 deletions(-) create mode 100644 src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md create mode 100644 src/course/syllabus/developer/projects/DOTNET-intro/project.md create mode 100644 src/course/syllabus/developer/projects/DOTNET-intro/resources.md rename src/course/syllabus/developer/projects/{in-house-build-1 => DOTNET-intro}/schedule.md (100%) delete mode 100644 src/course/syllabus/developer/projects/in-house-build-1/learning-outcomes.md delete mode 100644 src/course/syllabus/developer/projects/in-house-build-1/project.md delete mode 100644 src/course/syllabus/developer/projects/in-house-build-1/resources.md delete mode 100644 src/course/syllabus/developer/projects/in-house-build-1/spikes.md diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 5ccd4f58..e4f40b25 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -39,7 +39,7 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-1/schedule/">Project 2: Databases
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-2/schedule/">Project 2: Authentication
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-3/schedule/">Project 2: Test & Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-design/schedule">Design Sprint
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/DOTNET-intro/schedule">Project 3: .NET
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-build-1/schedule">Build Sprint 1
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-build-2/schedule">Build Sprint 2
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/schedule">TFB Design Sprint
  • diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md new file mode 100644 index 00000000..e42288e7 --- /dev/null +++ b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md @@ -0,0 +1,13 @@ +# Learning Outcomes + +## .NET + +- [ ] Learn how to create and run a project in .NET +- [ ] Learn C# basics +- [ ] Learn to test an ASP.NET project with swagger +- [ ] Learn to link .NET project with database and react + + +## Working with senior devs +- [ ] Gain confidence asking external .NET mentors for help and guidance +- [ ] Gain skill and publishing work for review by mentors with a visible thought process \ No newline at end of file diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/project.md b/src/course/syllabus/developer/projects/DOTNET-intro/project.md new file mode 100644 index 00000000..30407f8d --- /dev/null +++ b/src/course/syllabus/developer/projects/DOTNET-intro/project.md @@ -0,0 +1,55 @@ +## Intro + +Learners will build a library sorting and sharing some sort of information music, photos recipes etc. Users will be able to make personal lists and view items and lists created by other users. Users can upload and favorite items. + +The frontend of this project will be built using React. For the backend, it will use ASP.NET to handle server-side functionality. User accounts and item lists will be stored in a postgres database. + +## Project + +Your project for the next 3 weeks will be to develop a .NET backend connected to a SQLite database and linked to a React frontend. This week you should start by building the backend and testing it with swagger to see that you can create users with libraries containing lists of items. See if you can create a database and make calls to find lists by usernames or to find or filter lists. + +## Spike + +Like the last project you will benefit this project by building a scheme for your database before you start. Hopefully with what you learned from last project you are already ready to think about how things will connect. For this week making the backend also be sure to consider what sorts of routes you will want. Finally think about what you have done for stretch goals on previous projects and see if you can come up with a different sort of goal this time ex. if you've been stretching yourself by adding technical complexity try stretching yourself by having a really nice looking site this time. + +### Questions to consider + +1. Routes will you need. +2. What sort of objects will you need to match these data types and what will these look like in dotnet. + + +### Useful resources + +- [Simple demo of react and .NET project](https://www.c-sharpcorner.com/article/a-react-front-end-with-a-net-web-api-back-end-application/) +- [demo of a more complicated backend with a database](https://www.c-sharpcorner.com/article/building-a-powerful-asp-net-core-web-api-with-postgresql/) + + +### User stories + +As a **peruser**, I want to: + +- Login to an individual account +- See my lists of item and favorites +- Search and look at other users lists +- View individual items on lists and see detail +- Save items or lists from other users +- Upload and add item + +### Stretch user stories + +- Follow other users +- Make sure users can only edit own lists and items +- Stop duplicate items being uploaded +- Suggest lists based on favorites + +## Acceptance criteria + +- [ ] Backend is in a mostly completed state and attatched to a rough draft front end +- [ ] Database persists user data +- [ ] Users can create lists and add their own or others items to them +- [ ] Users can search and filter lists users and items +- [ ] Users can log in and sessions are created for them + + +### Stretch +- [ ] Begin testing (it'll be different in .NET) \ No newline at end of file diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md new file mode 100644 index 00000000..4b91189f --- /dev/null +++ b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md @@ -0,0 +1,16 @@ +# Resources + +These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. + +## .NET + + + +- ### [C# | W3Schools](https://duckduckgo.com/?q=c%23+w3schools&ia=web) A decent round up of language basics +- ### [Intro to C# for typescript developers](https://www.youtube.com/watch?v=j0857MhIohk) for people who like videos this is geard towards devs with your backgrounds +- ### [A round upe of links that will be useful for people coming to dotnet with typescript backgrounds](https://gist.github.com/w3cj/8f5d597c7aad19ceb1a59fbb070405f7) Link round up of version of the above thing but goes into more detail +- ### [Microsoft Documentation](https://learn.microsoft.com/en-us/aspnet/core/?view=aspnetcore-6.0) The official documentation for this type of app + + + + diff --git a/src/course/syllabus/developer/projects/in-house-build-1/schedule.md b/src/course/syllabus/developer/projects/DOTNET-intro/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/in-house-build-1/schedule.md rename to src/course/syllabus/developer/projects/DOTNET-intro/schedule.md diff --git a/src/course/syllabus/developer/projects/in-house-build-1/learning-outcomes.md b/src/course/syllabus/developer/projects/in-house-build-1/learning-outcomes.md deleted file mode 100644 index 221715af..00000000 --- a/src/course/syllabus/developer/projects/in-house-build-1/learning-outcomes.md +++ /dev/null @@ -1,32 +0,0 @@ -# Learning Outcomes - -## UX - -- [ ] Build an intuitive user experience -- [ ] Build an application from a set of user stories - -## Agile Workflow - -- [ ] Experience an agile workflow -- [ ] Understand how agile methodology can provide benefit in the software development cycle -- [ ] Follow a sprint plan -- [ ] Fulfil a role within agile development -- [ ] Appreciate the responsibilities of other roles and support their fulfilment -- [ ] Have an understanding of agile principles -- [ ] Know how to conduct and participate in a team standup - -## Sprints - -- [ ] Assign yourself to and fulfil user stories -- [ ] Work from a sprint backlog -- [ ] Manage a backlog of user stories -- [ ] Know techniques for recording the actual complexity of a user story -- [ ] Understand and calculate velocity for a sprint -- [ ] Know how to participate in a sprint review -- [ ] Know how to participate in a sprint retrospective - -## DevOps - -- [ ] Host your website with AWS -- [ ] Use Terraform to customise deployment and manage AWS resources -- [ ] Configure monitoring tools to provide visible and actionable alerts \ No newline at end of file diff --git a/src/course/syllabus/developer/projects/in-house-build-1/project.md b/src/course/syllabus/developer/projects/in-house-build-1/project.md deleted file mode 100644 index a8901498..00000000 --- a/src/course/syllabus/developer/projects/in-house-build-1/project.md +++ /dev/null @@ -1,5 +0,0 @@ -# Project - -This week is the first build sprint of your in-house project build. - -Work through your sprint backlog, assigning user stories to members of the team. diff --git a/src/course/syllabus/developer/projects/in-house-build-1/resources.md b/src/course/syllabus/developer/projects/in-house-build-1/resources.md deleted file mode 100644 index 3c1229ee..00000000 --- a/src/course/syllabus/developer/projects/in-house-build-1/resources.md +++ /dev/null @@ -1 +0,0 @@ -# Resources diff --git a/src/course/syllabus/developer/projects/in-house-build-1/spikes.md b/src/course/syllabus/developer/projects/in-house-build-1/spikes.md deleted file mode 100644 index e0b5aa43..00000000 --- a/src/course/syllabus/developer/projects/in-house-build-1/spikes.md +++ /dev/null @@ -1,7 +0,0 @@ -# Spikes - -There are no defined spikes for this week. - -You may find that you need to manage spikes within your sprints. Remember to follow [the techniques you followed earlier in the programme](https://foundersandcoders.notion.site/Tech-Spikes-c906c62afc3747ef9ecfcb45a9ccf984). - -You're encouraged to continue role circles with those who are playing the same role as you. diff --git a/src/course/syllabus/developer/projects/projects.json b/src/course/syllabus/developer/projects/projects.json index 3cfda433..9faa1db2 100644 --- a/src/course/syllabus/developer/projects/projects.json +++ b/src/course/syllabus/developer/projects/projects.json @@ -1,5 +1,5 @@ { "tabs": { - "spikes": true + "spikes": false } } From cb1c28d3de91239b086daec890c1139ab29a89b9 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 <113926900+ShaughnAnderson94@users.noreply.github.com> Date: Mon, 24 Jun 2024 14:35:36 +0100 Subject: [PATCH 058/118] Update src/course/syllabus/developer/projects/DOTNET-intro/project.md Co-authored-by: Alphonso <114600712+camelPhonso@users.noreply.github.com> --- src/course/syllabus/developer/projects/DOTNET-intro/project.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/project.md b/src/course/syllabus/developer/projects/DOTNET-intro/project.md index 30407f8d..12ea538d 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/project.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/project.md @@ -14,7 +14,7 @@ Like the last project you will benefit this project by building a scheme for you ### Questions to consider -1. Routes will you need. +1. What routes will you need. 2. What sort of objects will you need to match these data types and what will these look like in dotnet. From 113dfeb6a4df08084e882936f8f238904e996f70 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Mon, 24 Jun 2024 14:51:00 +0100 Subject: [PATCH 059/118] database types consistent --- .../syllabus/developer/projects/DOTNET-intro/project.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/project.md b/src/course/syllabus/developer/projects/DOTNET-intro/project.md index 12ea538d..a124c2e4 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/project.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/project.md @@ -2,11 +2,11 @@ Learners will build a library sorting and sharing some sort of information music, photos recipes etc. Users will be able to make personal lists and view items and lists created by other users. Users can upload and favorite items. -The frontend of this project will be built using React. For the backend, it will use ASP.NET to handle server-side functionality. User accounts and item lists will be stored in a postgres database. +The frontend of this project will be built using React. For the backend, it will use ASP.NET to handle server-side functionality. User accounts and item lists will be stored in a PostgreSQL or SQLite database. ## Project -Your project for the next 3 weeks will be to develop a .NET backend connected to a SQLite database and linked to a React frontend. This week you should start by building the backend and testing it with swagger to see that you can create users with libraries containing lists of items. See if you can create a database and make calls to find lists by usernames or to find or filter lists. +Your project for the next 3 weeks will be to develop a .NET backend connected to a database and linked to a React frontend. This week you should start by building the backend and testing it with swagger to see that you can create users with libraries containing lists of items. See if you can create a database and make calls to find lists by usernames or to find or filter lists. ## Spike From a69f4e37855cf1ed6aadc08e9e65dd6ef86e8318 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Mon, 24 Jun 2024 14:53:44 +0100 Subject: [PATCH 060/118] Ivan feedback fix --- src/course/syllabus/developer/projects/DOTNET-intro/project.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/project.md b/src/course/syllabus/developer/projects/DOTNET-intro/project.md index a124c2e4..fcf0af47 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/project.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/project.md @@ -10,7 +10,7 @@ Your project for the next 3 weeks will be to develop a .NET backend connected to ## Spike -Like the last project you will benefit this project by building a scheme for your database before you start. Hopefully with what you learned from last project you are already ready to think about how things will connect. For this week making the backend also be sure to consider what sorts of routes you will want. Finally think about what you have done for stretch goals on previous projects and see if you can come up with a different sort of goal this time ex. if you've been stretching yourself by adding technical complexity try stretching yourself by having a really nice looking site this time. +Like the last project you will benefit this project by building a scheme for your database before you start. Hopefully with what you learned from last project you are already ready to think about how things will connect. For this week making the backend also be sure to consider what sorts of routes you will want. Finally think about what you have done for stretch goals on previous projects and see if you can come up with a different sort of goal this time for example if you've been stretching yourself by adding technical complexity try stretching yourself by having a really nice looking site this time. ### Questions to consider From 4b4c94ed54bc96186a93b324bdcef03f94ca5eae Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 25 Jun 2024 11:58:37 +0100 Subject: [PATCH 061/118] Fixes and language updates --- .../DOTNET-intro/learning-outcomes.md | 2 +- .../projects/DOTNET-intro/project.md | 36 +++++++++---------- .../projects/DOTNET-intro/resources.md | 10 +++--- 3 files changed, 23 insertions(+), 25 deletions(-) diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md index e42288e7..7a0c12fc 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md @@ -10,4 +10,4 @@ ## Working with senior devs - [ ] Gain confidence asking external .NET mentors for help and guidance -- [ ] Gain skill and publishing work for review by mentors with a visible thought process \ No newline at end of file +- [ ] Write PR's and clear commits for review by outside mentors. This documentation should clearly show your thought process diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/project.md b/src/course/syllabus/developer/projects/DOTNET-intro/project.md index fcf0af47..20d4710c 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/project.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/project.md @@ -1,54 +1,54 @@ ## Intro -Learners will build a library sorting and sharing some sort of information music, photos recipes etc. Users will be able to make personal lists and view items and lists created by other users. Users can upload and favorite items. +Learners with build a library in which to sort and share information (i.e. music, photos, recipes etc...). Potential users should be able to view, favourite and upload items as well as make collections and view ones created by other users. The frontend of this project will be built using React. For the backend, it will use ASP.NET to handle server-side functionality. User accounts and item lists will be stored in a PostgreSQL or SQLite database. ## Project -Your project for the next 3 weeks will be to develop a .NET backend connected to a database and linked to a React frontend. This week you should start by building the backend and testing it with swagger to see that you can create users with libraries containing lists of items. See if you can create a database and make calls to find lists by usernames or to find or filter lists. +Your project for the next 3 weeks will be to develop a .NET backend connected to a database and linked to a React frontend. This week you should start by building the backend and testing it with Swagger (.NET equivalent to Postman). Tests should cover the creation users and endpoints related to user content. ## Spike -Like the last project you will benefit this project by building a scheme for your database before you start. Hopefully with what you learned from last project you are already ready to think about how things will connect. For this week making the backend also be sure to consider what sorts of routes you will want. Finally think about what you have done for stretch goals on previous projects and see if you can come up with a different sort of goal this time for example if you've been stretching yourself by adding technical complexity try stretching yourself by having a really nice looking site this time. +Like the last project you will benefit by building a scheme for your database before you start. Hopefully with what you learned from last projects you are ready to think about how things will connect and consider what sorts of endpoints you will want. Finally, think about what you have done for stretch goals on previous projects and see if you can come up with a different sort of goal this time. For example if you've been stretching yourself by adding technical complexity try focusing on design or UX/UI instead. ### Questions to consider -1. What routes will you need. -2. What sort of objects will you need to match these data types and what will these look like in dotnet. +1. What endpoints will you need for your app? +2. What sort of classes will you need to match your data and how will these be represented in OOP (object orientated programming)? ### Useful resources - [Simple demo of react and .NET project](https://www.c-sharpcorner.com/article/a-react-front-end-with-a-net-web-api-back-end-application/) -- [demo of a more complicated backend with a database](https://www.c-sharpcorner.com/article/building-a-powerful-asp-net-core-web-api-with-postgresql/) +- [Demo of a more complicated backend with a database](https://www.c-sharpcorner.com/article/building-a-powerful-asp-net-core-web-api-with-postgresql/) ### User stories -As a **peruser**, I want to: +As a **user**, I want to: - Login to an individual account -- See my lists of item and favorites -- Search and look at other users lists -- View individual items on lists and see detail -- Save items or lists from other users -- Upload and add item +- See my collections of items and favourites +- Search and look at other users collections +- View individual items details +- Save items or collections from other users +- Upload and add items ### Stretch user stories - Follow other users -- Make sure users can only edit own lists and items +- Make sure users can only edit their own collections and items - Stop duplicate items being uploaded -- Suggest lists based on favorites +- Suggest collections based on favourites ## Acceptance criteria -- [ ] Backend is in a mostly completed state and attatched to a rough draft front end +- [ ] Backend is in a mostly completed state and attached to a rough draft front end - [ ] Database persists user data -- [ ] Users can create lists and add their own or others items to them -- [ ] Users can search and filter lists users and items -- [ ] Users can log in and sessions are created for them +- [ ] Users can create collections and add their own or others items to them +- [ ] Users can search and filter collections, users and items +- [ ] Users can log in/out and have that data persist ### Stretch diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md index 4b91189f..c3db336b 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md @@ -4,12 +4,10 @@ These resources are helpful extra reading that may clarify or enhance concepts y ## .NET - - -- ### [C# | W3Schools](https://duckduckgo.com/?q=c%23+w3schools&ia=web) A decent round up of language basics -- ### [Intro to C# for typescript developers](https://www.youtube.com/watch?v=j0857MhIohk) for people who like videos this is geard towards devs with your backgrounds -- ### [A round upe of links that will be useful for people coming to dotnet with typescript backgrounds](https://gist.github.com/w3cj/8f5d597c7aad19ceb1a59fbb070405f7) Link round up of version of the above thing but goes into more detail -- ### [Microsoft Documentation](https://learn.microsoft.com/en-us/aspnet/core/?view=aspnetcore-6.0) The official documentation for this type of app +- ### [C# | W3Schools](https://duckduckgo.com/?q=c%23+w3schools&ia=web) A decent dive into language basics +- ### [Intro to C# for Typescript developers](https://www.youtube.com/watch?v=j0857MhIohk) for people who like videos, this is geared towards devs with your backgrounds +- ### [A roundup of links that will be useful for people coming to dotnet with typescript backgrounds](https://gist.github.com/w3cj/8f5d597c7aad19ceb1a59fbb070405f7) Link roundup version of the above resource, with more detail +- ### [Microsoft Documentation](https://learn.microsoft.com/en-us/aspnet/core/?view=aspnetcore-6.0) Official documentation for ASP NET From a1a735b804e18559bd7861a2920393d84841c7ae Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 25 Jun 2024 12:00:20 +0100 Subject: [PATCH 062/118] Minor typo fixes --- .../developer/projects/DOTNET-intro/learning-outcomes.md | 2 +- .../syllabus/developer/projects/DOTNET-intro/resources.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md index 7a0c12fc..03578af0 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md @@ -4,7 +4,7 @@ - [ ] Learn how to create and run a project in .NET - [ ] Learn C# basics -- [ ] Learn to test an ASP.NET project with swagger +- [ ] Learn to test an ASP.NET project with Swagger - [ ] Learn to link .NET project with database and react diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md index c3db336b..638acbe6 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md @@ -7,7 +7,7 @@ These resources are helpful extra reading that may clarify or enhance concepts y - ### [C# | W3Schools](https://duckduckgo.com/?q=c%23+w3schools&ia=web) A decent dive into language basics - ### [Intro to C# for Typescript developers](https://www.youtube.com/watch?v=j0857MhIohk) for people who like videos, this is geared towards devs with your backgrounds - ### [A roundup of links that will be useful for people coming to dotnet with typescript backgrounds](https://gist.github.com/w3cj/8f5d597c7aad19ceb1a59fbb070405f7) Link roundup version of the above resource, with more detail -- ### [Microsoft Documentation](https://learn.microsoft.com/en-us/aspnet/core/?view=aspnetcore-6.0) Official documentation for ASP NET +- ### [Microsoft Documentation](https://learn.microsoft.com/en-us/aspnet/core/?view=aspnetcore-6.0) Official documentation for ASP .NET From 54cd0159e7a24ec10bfdfae31bab718e7c2d61e2 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 25 Jun 2024 12:34:02 +0100 Subject: [PATCH 063/118] Ksbs for learning outcome --- .../projects/DOTNET-intro/learning-outcomes.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md index 03578af0..d3307050 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md @@ -1,13 +1,17 @@ # Learning Outcomes -## .NET +{% box %} + +[Here's a reminder of the full list of KSB's](/course/ksb) -- [ ] Learn how to create and run a project in .NET -- [ ] Learn C# basics -- [ ] Learn to test an ASP.NET project with Swagger -- [ ] Learn to link .NET project with database and react +{% endbox %} +## .NET +- [ ] Learn how to create and run a project in .NET (K1, K3, K5, K7, S8, S17) +- [ ] Learn C# basics (K1, K3, K5, K7, S8, S17) +- [ ] Learn to test an ASP.NET project with Swagger (K12, S5, S13) +- [ ] Learn to link .NET project with database and react (K10, S3, S17) ## Working with senior devs -- [ ] Gain confidence asking external .NET mentors for help and guidance -- [ ] Write PR's and clear commits for review by outside mentors. This documentation should clearly show your thought process +- [ ] Gain confidence asking external .NET mentors for help and guidance (K4, B1, B4, B6, B7, B9) +- [ ] Write PR's and clear commits for review by outside mentors. This documentation should clearly show your thought process (K4, S14, S15, B1, B4, B7, B8) \ No newline at end of file From 0a487e92e2999ab6cc77b4985da30d61e8f11b48 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Thu, 4 Jul 2024 12:55:09 +0100 Subject: [PATCH 064/118] added workshop --- .../projects/DOTNET-intro/schedule.md | 16 +- src/learn/dotnet-two/index.md | 297 ++++++++++++++++++ 2 files changed, 302 insertions(+), 11 deletions(-) create mode 100644 src/learn/dotnet-two/index.md diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/schedule.md b/src/course/syllabus/developer/projects/DOTNET-intro/schedule.md index fcee01c5..4d518507 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/schedule.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/schedule.md @@ -72,15 +72,9 @@ schedule: # start: 16:45 # end: 17:00 friday: - # - name: Respond to issues / Build - # start: 9:45 - # end: 13:00 - # type: project - # - start: 13:00 - # end: 14:00 - # name: Lunch - # - name: Build - # start: 14:00 - # end: 18:00 - # type: project + - name: .NET workshop + url: /learn/dotnet-two + type: workshop + start: 9:30 + end: 18:00 --- diff --git a/src/learn/dotnet-two/index.md b/src/learn/dotnet-two/index.md new file mode 100644 index 00000000..3999684a --- /dev/null +++ b/src/learn/dotnet-two/index.md @@ -0,0 +1,297 @@ +--- +title: Dependency injections and interfaces in Dotnet +description: Learn how to use dependency injections and interfaces in Dotnet +tags: + - workshop +keywords: + - DOTNET + - ASP.NET + - CSharp +challenge: https://github.com/foundersandcoders/DOTNET-Workshop-Two/blob/main/README.md +--- + + + +## Setting up .Net + +Dot net projects can be made in VSCode just like javascript. In order to get started with this you will need to first install the dot net SDK https://dotnet.microsoft.com/en-us/download and the C# Dev kit https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit + + + + +## Why Dependency Injections + +It is quite common to have an object that depends on another object to do its function especially in a object focused environment like dotnet. For instance your constructor depends on your data context object. However it can cause problems to always have to build dependencies first and then the objects that depend on them next. Also what if two classes need to access different versions of the dependency for example we might want to use the data context class both in a testing class and in the actual project but when using it in the testing context might want to set it up in such a way that we don't actually effect the database we could do this by adjusting the controller class but it would be easier if we could make that class initially more flexible. + +The solution to these problems is dependency injections where rather than creating a dependency that a class depends on we give the class a interface to tell it what type of object to expect and then create a service that allows us to create dependencies as needed and inject them into the class. + +## Set up + +Open the simple hello world project you made last week. Within MyWebApi (or whatevery you named the project) add a models directory and create a Book.cs file within it that looks like this . + +```cs +namespace MyWebApi.Models +{ + + public class Book + { + public Guid Id {set; get;} + public string? Name {set; get;} + + + } +} + +``` +We now need to install Microsoft EntityFrameworkCore to help set up a quick in memory database. Like so + + +```dotnet + +dotnet add package Microsoft.EntityFrameworkCore + +``` +then we make a data folder and inside make a BookContext.cs file that will look like so + +```cs +using Microsoft.EntityFrameworkCore; +using MyWebApi.Models; +namespace MyWebApi.Data +{ + public class BookContext : DbContext + { + public BookContext(DbContextOptions options): base(options){} + + public DbSet Books {set; get;} + protected override void OnModelCreating(ModelBuilder modelBuilder) + { +modelBuilder.Entity().HasData( +new Book {Id = Guid.NewGuid(), Name = "The Prospects"}, +new Book {Id = Guid.NewGuid(), Name = "Nevada"} + + + +); + + base.OnModelCreating(modelBuilder); + } + + } + +} + +``` +this is moving towards a simple in memory database containing two books with randomly generated ids. First we will need to update our Program.cs file to use them. + +start by installing the following package + +```dotnet +dotnet add package Microsoft.EntityFrameworkCore.InMemory +``` + +Then update the Program.cs file to look like what follows. + +```cs + using Microsoft.EntityFrameworkCore; +using MyWebApi.Data; + +var builder = WebApplication.CreateBuilder(args); + +// Add services to the container. +// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle +builder.Services.AddEndpointsApiExplorer(); +builder.Services.AddSwaggerGen(); +builder.Services.AddDbContext(options => options.UseInMemoryDatabase("book db")); +builder.Services.AddControllers(); + +var app = builder.Build(); +using(var scope = app.Services.CreateScope()) +using(var db = scope.ServiceProvider.GetService()!) +{ + db.Database.EnsureCreated(); +} +// Configure the HTTP request pipeline. +if (app.Environment.IsDevelopment()) +{ + app.UseSwagger(); + app.UseSwaggerUI(); +} + +app.MapControllerRoute("default", "api/[controller]/[action]"); + + +app.UseHttpsRedirection(); + + + + +app.Run(); + + +``` +This should give our BookContext the power to create in memory databases and ensure they are created on app build. + +Now lets update our controller to be a book controller that returns a list of books. + +```cs +using Microsoft.AspNetCore.Mvc; +using MyWebApi.Data; +using MyWebApi.Models; + + +namespace MyWebApi.Controllers +{ + [ApiController] + [Route("api/[controller]/[action]")] +public class BookController : Controller +{ + private readonly BookContext _context; + public BookController(BookContext context) + { + _context = context; + } + [HttpGet] + public List GetAllBooks() + { + var result = _context.Books.ToList(); + return result; + } + + [HttpGet] + public Book GetABook(string name) + { +var result = _context.Books.FirstOrDefault((book)=> book.Name== name); + + if (result == null) + throw new Exception("book not found"); +return result; + } +} +} + +``` +give it a quick swagger test then lets look at a part of this code in more detail. + + +```cs +public class BookController : Controller +{ + private readonly BookContext _context; + public BookController(BookContext context) + { + _context = context; + } +``` +The constructor for this class (line 4) requires BookContext to function. This means these two objects are now tightly linked and we cant easily change one without changing the other. + +To allow us more flexibility we are going to create something called an interface that we can feed in instead. An interface lets the constructor know what to expect but will not be as absolute as actually giving it the class. + +the first step to do that is to go into our data directory and make a new file called IBookContext that looks like this. + +```cs +using MyWebApi.Models; +using Microsoft.EntityFrameworkCore; + +namespace MyWebApi.Data +{ + public interface IBookContext + { +public DbSet Books {set; get;} +} +} +``` + +This creates an interface and tells the class passed this that at run time it can expect something that contains a DbSet of books rather than the specific class passed to it before. Now we just need to tell all the other parts of our program to look for the interface rather than the object. + +lets start with the BookContext file itself + +```cs +using Microsoft.EntityFrameworkCore; +using MyWebApi.Models; +namespace MyWebApi.Data +{ + public class BookContext : DbContext ,IBookContext + +``` +if we make this change the BookContext can now inherits from both DbContext and IBookContext. + +Now we want to update our Program.cs file so that when the context is built int knows it could take anything that matches the interface requirements +```cs +builder.Services.AddSwaggerGen(); +builder.Services.AddDbContext(options => options.UseInMemoryDatabase("book db")); +builder.Services.AddControllers(); +``` +Finally we do what we wanted to all along which is make our book controller independent from the BookContext class by putting our interface in the constructor. +```cs + +public class BookController : Controller +{ + private readonly IBookContext _context; + public BookController(IBookContext context) +``` + +Besides making your work easier by having these two things loser it will also give you the ability to for instance in tests fill an IBookContext with fake data and easily use it for testing as shown bellow. + +```cs + + { + public class BookControllerTests + { + + private readonly BookController _controller; + public BookControllerTests() + { + +var fakeData = new List +{ + new Book {Id = Guid.NewGuid(), Name = "Fake book1" }, + new Book {Id = Guid.NewGuid(), Name = "Fake book2" } + + +}.AsQueryable(); +var _context = new Mock(); +_context.Setup(db => db.Books).ReturnsDbSet(fakeData); + +_controller = new BookController(_context.Object); + } + +[Fact] +public void GetAllBooks_Returns_Entire_List() +{ + + var expected = new List +{ + new Book {Id = Guid.NewGuid(), Name = "Fake book1" }, + new Book {Id = Guid.NewGuid(), Name = "Fake book2" } + + +}.AsQueryable(); + +var result = _controller.GetAllBooks().ToList(); + +Assert.Equivalent(expected, result); +} + +[Fact] +public void GetABook_Returns_A_Book() +{ + var expected = new Book {Id = Guid.NewGuid(), Name = "Fake book1" }; + + + + +var result = _controller.GetABook("Fake book1"); + +Assert.Equivalent(expected, result); + + } +} +} +``` +Note this part which would not be possible if the Book controller relied on a BookContext +```cs +var _context = new Mock(); +_context.Setup(db => db.Books).ReturnsDbSet(fakeData); + +_controller = new BookController(_context.Object); +``` \ No newline at end of file From efa52fe0c92410a5a4a84f04e468fbe7cbf242a8 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Thu, 4 Jul 2024 16:46:08 +0100 Subject: [PATCH 065/118] fixed errors --- src/learn/dotnet-two/index.md | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/src/learn/dotnet-two/index.md b/src/learn/dotnet-two/index.md index 3999684a..d28d7c95 100644 --- a/src/learn/dotnet-two/index.md +++ b/src/learn/dotnet-two/index.md @@ -1,27 +1,19 @@ --- -title: Dependency injections and interfaces in Dotnet -description: Learn how to use dependency injections and interfaces in Dotnet +title: Dependency injections and interfaces in .NET +description: Learn how to use dependency injections and interfaces in .NET tags: - workshop keywords: - - DOTNET + - .NET - ASP.NET - - CSharp + - C# challenge: https://github.com/foundersandcoders/DOTNET-Workshop-Two/blob/main/README.md --- - -## Setting up .Net - -Dot net projects can be made in VSCode just like javascript. In order to get started with this you will need to first install the dot net SDK https://dotnet.microsoft.com/en-us/download and the C# Dev kit https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit - - - - ## Why Dependency Injections -It is quite common to have an object that depends on another object to do its function especially in a object focused environment like dotnet. For instance your constructor depends on your data context object. However it can cause problems to always have to build dependencies first and then the objects that depend on them next. Also what if two classes need to access different versions of the dependency for example we might want to use the data context class both in a testing class and in the actual project but when using it in the testing context might want to set it up in such a way that we don't actually effect the database we could do this by adjusting the controller class but it would be easier if we could make that class initially more flexible. +It is quite common to have an object that depends on another object to do its function especially in a object focused environment like .NET. For instance your constructor depends on your data context object. However it can cause problems to always have to build dependencies first and then the objects that depend on them next. Also what if two classes need to access different versions of the dependency for example we might want to use the data context class both in a testing class and in the actual project but when using it in the testing context might want to set it up in such a way that we don't actually effect the database we could do this by adjusting the controller class but it would be easier if we could make that class initially more flexible. The solution to these problems is dependency injections where rather than creating a dependency that a class depends on we give the class a interface to tell it what type of object to expect and then create a service that allows us to create dependencies as needed and inject them into the class. From 8b717b3a33f0733bebb3475e270f0e9ff00f9587 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Fri, 5 Jul 2024 17:04:53 +0100 Subject: [PATCH 066/118] schedual for week two of dotnet --- src/_includes/course.11ty.js | 2 +- .../dotnet-with-testing/learning-outcomes.md | 21 ++++++++++++++++ .../projects/dotnet-with-testing/project.md | 25 +++++++++++++++++++ .../projects/dotnet-with-testing/resources.md | 11 ++++++++ .../projects/dotnet-with-testing/schedule.md | 25 +++++++++++++++++++ 5 files changed, 83 insertions(+), 1 deletion(-) create mode 100644 src/course/syllabus/developer/projects/dotnet-with-testing/learning-outcomes.md create mode 100644 src/course/syllabus/developer/projects/dotnet-with-testing/project.md create mode 100644 src/course/syllabus/developer/projects/dotnet-with-testing/resources.md create mode 100644 src/course/syllabus/developer/projects/dotnet-with-testing/schedule.md diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index e4f40b25..08f1a878 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -40,7 +40,7 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-2/schedule/">Project 2: Authentication
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-3/schedule/">Project 2: Test & Deploy
  • <${Link} url=${url} href="/course/syllabus/developer/projects/DOTNET-intro/schedule">Project 3: .NET
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-build-1/schedule">Build Sprint 1
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/dotnet-with-testing/schedule">Project 3: .NET With Testing
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-build-2/schedule">Build Sprint 2
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/schedule">TFB Design Sprint
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-1/schedule">TFB Build Sprint 1
  • diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/learning-outcomes.md b/src/course/syllabus/developer/projects/dotnet-with-testing/learning-outcomes.md new file mode 100644 index 00000000..3bf6f29c --- /dev/null +++ b/src/course/syllabus/developer/projects/dotnet-with-testing/learning-outcomes.md @@ -0,0 +1,21 @@ +## Testing and deployment + +{% box %} + +[Here's a reminder of the full list of KSB's](/course/ksb) + +{% endbox %} + +### .NET + +- [ ] Learn how to make an interface to substitute for a class when flexibility is needed (K7, S8). +- [ ] Learn how to use dependency injections utilizing interfaces (K7, S8, S17). +- [ ] Build a deeper understanding of OOP (K1, K7, S8, B8) +- [ ] Streamline controller file using dependency injections and namespaces (K1, K7, B1) + +### Testing + +- [ ] Gain experience using xUnit to test (K12, S5, S13) +- [ ] Gain experience using moq to mock data (K10, K12, S5, S13) +- [ ] Learn how to use the solution file to connect the API and the test space(K12, S14, B9) +- [ ] Understand how to test databases without changing them (K12, S5) diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/project.md b/src/course/syllabus/developer/projects/dotnet-with-testing/project.md new file mode 100644 index 00000000..02aaf36c --- /dev/null +++ b/src/course/syllabus/developer/projects/dotnet-with-testing/project.md @@ -0,0 +1,25 @@ +Your task this week is to continue building the project from last week but to try and add some .NET tests and more broadly to use dependency injection. + +## Spike + +Before you start think what are your dependencies. Which of these are tightly tied to other classes in a way that will slow development or make testing hard. If you want to replace this with dependency injection think what will the interface look like. + +### Questions to consider + +- What do you want the structure of your project to look like and how should the solution file be configured to allow that? +- Where do you want to use dependency injections in my code? +- How will you test the functionality of the API? +- Where you are using interfaces what keys and methods will the interface need to look for? + + +### Acceptance Criteria + +- [ ] Tests for all the functions of your APIs + + - [ ] Tests run without making changes to the actual database + + - [ ] Code is efficiently organized and has been refactored + +### Stretch criteria + +- [ ] Add verification to your code and test its functionality diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/resources.md b/src/course/syllabus/developer/projects/dotnet-with-testing/resources.md new file mode 100644 index 00000000..7cd409b8 --- /dev/null +++ b/src/course/syllabus/developer/projects/dotnet-with-testing/resources.md @@ -0,0 +1,11 @@ +## Resources + +- ### [Tutorial for Dependency Injections ](https://dotnettutorials.net/lesson/asp-net-core-dependency-injection/) Detailed tutorial of building a project and adding DI + +- ### [Official Microsoft Documentation](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection?view=aspnetcore-8.0) Microsoft's explanation of dependency injections + +- ### [A Guide to NET Testing](https://medium.com/bina-nusantara-it-division/a-comprehensive-guide-to-implementing-xunit-tests-in-c-net-b2eea43b48b) Basic intro to xUnit + +- ### [A Guide to ASP.NET Testing](https://medium.com/@jeslurrahman/mastering-unit-testing-in-asp-net-core-web-api-359cad8c87b6) Testing with a ASP.NET project although the project and set up might be a bit different from yours + +- ### [Official Microsoft xUnit Guide](https://learn.microsoft.com/en-us/dotnet/core/testing/unit-testing-with-dotnet-test) The official xUnit documentation diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/schedule.md b/src/course/syllabus/developer/projects/dotnet-with-testing/schedule.md new file mode 100644 index 00000000..ac0ecb7a --- /dev/null +++ b/src/course/syllabus/developer/projects/dotnet-with-testing/schedule.md @@ -0,0 +1,25 @@ +--- + +layout: schedule +schedule: +monday: # - name: Build # start: 10:00 # end: 13:00 # type: project # - name: Thought of the Week # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 # type: personal-development # start: 14:00 # end: 14:45 # - name: Build # start: 14:45 # end: 17:45 # type: project # - name: Check out # start: 17:45 # end: 18:00 +tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c +wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project +thursday: # - name: Update READMEs # start: 10:00 # end: 10:15 # - name: Sprint Review # start: 10:15 # end: 11:45 # - start: 11:45 # end: 13:00 # name: Presentation prep # url: https://foundersandcoders.notion.site/In-House-Project-Presentation-e1936ce95a8041b9b8a93e5d4f638ff6 # - name: Project documentation # start: 15:30 # end: 16:00 +friday: + +# - name: Progress Log Review + +# start: 10:00 + +# end: 11:30 + +# type: expert-feedback + +# - name: Consolidation day + +# start: 11:30 + +# end: 18:00 + +# --- From 8aa44505d1c33f59dee84a8eca315c5ae0631faf Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 9 Jul 2024 15:42:06 +0100 Subject: [PATCH 067/118] Update to all tabs, project 3 week 3 --- src/_includes/course.11ty.js | 2 +- .../developer/project-2-week-3/resources.md | 2 +- .../in-house-build-2/learning-outcomes.md | 37 ------------------- .../projects/in-house-build-2/project.md | 5 --- .../projects/in-house-build-2/resources.md | 1 - .../project-3-week-3/learning-outcomes.md | 22 +++++++++++ .../projects/project-3-week-3/project.md | 24 ++++++++++++ .../projects/project-3-week-3/resources.md | 8 ++++ .../schedule.md | 0 .../spikes.md | 0 10 files changed, 56 insertions(+), 45 deletions(-) delete mode 100644 src/course/syllabus/developer/projects/in-house-build-2/learning-outcomes.md delete mode 100644 src/course/syllabus/developer/projects/in-house-build-2/project.md delete mode 100644 src/course/syllabus/developer/projects/in-house-build-2/resources.md create mode 100644 src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md create mode 100644 src/course/syllabus/developer/projects/project-3-week-3/project.md create mode 100644 src/course/syllabus/developer/projects/project-3-week-3/resources.md rename src/course/syllabus/developer/projects/{in-house-build-2 => project-3-week-3}/schedule.md (100%) rename src/course/syllabus/developer/projects/{in-house-build-2 => project-3-week-3}/spikes.md (100%) diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 08f1a878..6d74273b 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -41,7 +41,7 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-3/schedule/">Project 2: Test & Deploy
  • <${Link} url=${url} href="/course/syllabus/developer/projects/DOTNET-intro/schedule">Project 3: .NET
  • <${Link} url=${url} href="/course/syllabus/developer/projects/dotnet-with-testing/schedule">Project 3: .NET With Testing
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/in-house-build-2/schedule">Build Sprint 2
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/project-3-week-3/schedule">Project 3: Test and Deploy
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/schedule">TFB Design Sprint
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-1/schedule">TFB Build Sprint 1
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-2/schedule">TFB Build Sprint 2
  • diff --git a/src/course/syllabus/developer/project-2-week-3/resources.md b/src/course/syllabus/developer/project-2-week-3/resources.md index 31c22753..1e9f99cc 100644 --- a/src/course/syllabus/developer/project-2-week-3/resources.md +++ b/src/course/syllabus/developer/project-2-week-3/resources.md @@ -2,7 +2,7 @@ - ### [Guide to Component Testing in Cypress](https://docs.cypress.io/guides/component-testing/react/overview) A good start in understanding component testing -- ### [Cypress Functions Cheat Sheet](https://docs.cypress.io/guides/component-testing/react/examples) Your one stop stop for example with cypress React +- ### [Cypress Functions Cheat Sheet](https://docs.cypress.io/guides/component-testing/react/examples) Your one stop shop for example with cypress React - ### [Commonly Used Cypress Commands](https://medium.com/@anshita.bhasin/commonly-used-cypress-commands-5ba0f7b55cfc) More generic cheat sheet for Cypress diff --git a/src/course/syllabus/developer/projects/in-house-build-2/learning-outcomes.md b/src/course/syllabus/developer/projects/in-house-build-2/learning-outcomes.md deleted file mode 100644 index 83a29c7d..00000000 --- a/src/course/syllabus/developer/projects/in-house-build-2/learning-outcomes.md +++ /dev/null @@ -1,37 +0,0 @@ -# Learning Outcomes - -## UX - -- [ ] Build an intuitive user experience -- [ ] Build an application from a set of user stories - -## Agile Workflow - -- [ ] Experience an agile workflow -- [ ] Understand how agile methodology can provide benefit in the software development cycle -- [ ] Follow a sprint plan -- [ ] Fulfil a role within agile development -- [ ] Appreciate the responsibilities of other roles and support their fulfilment -- [ ] Have an understanding of agile principles -- [ ] Know how to conduct and participate in a team standup - -## Sprints - -- [ ] Assign yourself to and fulfil user stories -- [ ] Work from a sprint backlog -- [ ] Manage a backlog of user stories -- [ ] Know techniques for recording the actual complexity of a user story -- [ ] Understand and calculate velocity for a sprint -- [ ] Know how to participate in a sprint review -- [ ] Know how to participate in a sprint retrospective - -## Documentation - -- [ ] Know how to write project documentation -- [ ] Be aware of what to include in a product presentation - -## DevOps - -- [ ] Host your website with AWS -- [ ] Use Terraform to customise deployment and manage AWS resources -- [ ] Configure monitoring tools to provide visible and actionable alerts diff --git a/src/course/syllabus/developer/projects/in-house-build-2/project.md b/src/course/syllabus/developer/projects/in-house-build-2/project.md deleted file mode 100644 index a8901498..00000000 --- a/src/course/syllabus/developer/projects/in-house-build-2/project.md +++ /dev/null @@ -1,5 +0,0 @@ -# Project - -This week is the first build sprint of your in-house project build. - -Work through your sprint backlog, assigning user stories to members of the team. diff --git a/src/course/syllabus/developer/projects/in-house-build-2/resources.md b/src/course/syllabus/developer/projects/in-house-build-2/resources.md deleted file mode 100644 index 3c1229ee..00000000 --- a/src/course/syllabus/developer/projects/in-house-build-2/resources.md +++ /dev/null @@ -1 +0,0 @@ -# Resources diff --git a/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md b/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md new file mode 100644 index 00000000..6389ef3c --- /dev/null +++ b/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md @@ -0,0 +1,22 @@ +## Learning Outcomes + +{% box %} + +[Here's a reminder of the full list of KSB's](/course/ksb) + +{% endbox %} + +### Testing +- [ ] Understand the importance of code organisation, modularity, and reusability in C# and .NET (K7, S1, S11) +- [ ] Solidify C# skills, including object-oriented programming principles and .NET-specific features (K7, S1, S11, S12) +- [ ] Understand the differences between development, staging, and production environments in the context of .NET applications (K1, K3, K8) + +### Deployment +- [ ] Understand the concept of infrastructure as code, particularly with tools like Azure Resource Manager (ARM) templates or Terraform (K1, K5, K7) +- [ ] Configure the necessary environment variables and settings for deploying a .NET API (S10, S14) +- [ ] Understand the basic syntax of provisioning resources with AWS for .NET applications (S10, S14, S16) +- [ ] Have a good working understanding of the permissions involved when deploying on Azure or AWS, including security groups and IAM roles (K8, B5) +- [ ] Gain experience in deploying a .NET API to a cloud platform like Azure or AWS (S10, S14, B3) +- [ ] Configure the necessary environment variables and settings for deploying a .NET API (S10, S14, B3) +- [ ] Understand the process of building and optimising a .NET application for production (S10, S14, B3) +- [ ] Gain experience in using a continuous integration and deployment (CI/CD) pipeline with tools like Azure DevOps or GitHub Actions (S10, S14, B3) diff --git a/src/course/syllabus/developer/projects/project-3-week-3/project.md b/src/course/syllabus/developer/projects/project-3-week-3/project.md new file mode 100644 index 00000000..e177b22c --- /dev/null +++ b/src/course/syllabus/developer/projects/project-3-week-3/project.md @@ -0,0 +1,24 @@ +## Project +Your task this week is to deploy and test the library app you have completed in the previous two weeks. + +## Spike +Before you start you need to create a testing and deployment plan. We would like you plan a testing strategy that will have broad coverage of your project. The tools we would like you to use to achieve this can include Cypress, Postman and the Node built in testing library. + +We would also like you to deploy this project using an EC2 instance for you server and a S3 bucket to serve your static files using CloudFront. You should also utilise Github actions to allow you to automatically deploy chains on merges to your main branch. + +### Questions to consider +- What parts of the application logic are the most critical to cover with unit tests? +- How will you mock external dependencies (like databases or APIs) during unit testing? +- What are the key user journeys and flows within the application that must be covered by end-to-end tests? +- Where will the code that represents your infrastructure live and how will it be organised? +- How will you manage configuration variables for different environments (development, staging, production)? +- What are the different AWS products you will need to configure to make your deployment successful. + +## Acceptance Criteria +- [ ] Comprehensive Test coverage including unit, integration and end-to-end tests covering critical application logic and user flows. +- [ ] Successful deployment on an AWS. +- [ ] Documentation clearly outlines setup, deployment, and usage instructions, including API endpoints and environmental requirements. + +### Stretch +- [ ] GitHub Actions CI setup to automatically re-deploy when you push to main. + diff --git a/src/course/syllabus/developer/projects/project-3-week-3/resources.md b/src/course/syllabus/developer/projects/project-3-week-3/resources.md new file mode 100644 index 00000000..629b0339 --- /dev/null +++ b/src/course/syllabus/developer/projects/project-3-week-3/resources.md @@ -0,0 +1,8 @@ +## Resources + +- ### [Guide ENV variables and file in Vite](https://vitejs.dev/guide/env-and-mode) Some insight on how build tools process .env files + +- ### [.NET Deployment Cheat Sheet](https://docs.cypress.io/guides/component-testing/react/examples) A quick guide to a basic deploy of a Core API to a EC2 instance + + + diff --git a/src/course/syllabus/developer/projects/in-house-build-2/schedule.md b/src/course/syllabus/developer/projects/project-3-week-3/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/in-house-build-2/schedule.md rename to src/course/syllabus/developer/projects/project-3-week-3/schedule.md diff --git a/src/course/syllabus/developer/projects/in-house-build-2/spikes.md b/src/course/syllabus/developer/projects/project-3-week-3/spikes.md similarity index 100% rename from src/course/syllabus/developer/projects/in-house-build-2/spikes.md rename to src/course/syllabus/developer/projects/project-3-week-3/spikes.md From 9bb4a5d90f2a7c5c7ddaf5bbe396fe57fa0adfe7 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Tue, 9 Jul 2024 18:03:09 +0100 Subject: [PATCH 068/118] no more dotnet all .NET --- .../developer/projects/DOTNET-intro/resources.md | 2 +- src/learn/DOTNET/index.md | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md index 638acbe6..7fae7cc5 100644 --- a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md +++ b/src/course/syllabus/developer/projects/DOTNET-intro/resources.md @@ -6,7 +6,7 @@ These resources are helpful extra reading that may clarify or enhance concepts y - ### [C# | W3Schools](https://duckduckgo.com/?q=c%23+w3schools&ia=web) A decent dive into language basics - ### [Intro to C# for Typescript developers](https://www.youtube.com/watch?v=j0857MhIohk) for people who like videos, this is geared towards devs with your backgrounds -- ### [A roundup of links that will be useful for people coming to dotnet with typescript backgrounds](https://gist.github.com/w3cj/8f5d597c7aad19ceb1a59fbb070405f7) Link roundup version of the above resource, with more detail +- ### [A roundup of links that will be useful for people coming to .NET with typescript backgrounds](https://gist.github.com/w3cj/8f5d597c7aad19ceb1a59fbb070405f7) Link roundup version of the above resource, with more detail - ### [Microsoft Documentation](https://learn.microsoft.com/en-us/aspnet/core/?view=aspnetcore-6.0) Official documentation for ASP .NET diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index 606e59c3..401187eb 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -1,17 +1,17 @@ --- -title: Introduction to Dotnet -description: Learn how to set up a basic DOTNET app +title: Introduction to .NET +description: Learn how to set up a basic .NET app tags: - workshop keywords: - - DOTNET + - .NET - ASP.NET - CSharp challenge: https://github.com/foundersandcoders/DOTNET-Workshop --- Although all our coding so far has been in javascript or its close cousin typescript not all web sites are coded in this language. If you know other popular coding languages it will boost you capabilities as a dev. -The benefits of languges over one another have much to do with situation and prefference. Proponents of DOTNET(.NET) will tell you that in comparison to javascript the langauge was designed with much more intention and while javascript devs are constantly installing new libraries to do anything dotnet has in its built in library most of the functionality needed to be a developer. They will also tell you that when you get to the point of maximizing the speed of your code .NET will make things easier. Many people are also fans of object oriented programing but coming from functional programing its unlikely you will initially feel that way. +The benefits of languges over one another have much to do with situation and prefference. Proponents of .NET will tell you that in comparison to javascript the langauge was designed with much more intention and while javascript devs are constantly installing new libraries to do anything .NET has in its built in library most of the functionality needed to be a developer. They will also tell you that when you get to the point of maximizing the speed of your code .NET will make things easier. Many people are also fans of object oriented programing but coming from functional programing its unlikely you will initially feel that way. ## Setting up .Net @@ -138,7 +138,7 @@ namespace MyApi.Controllers ``` -you now have a very simple api built in dotnet +you now have a very simple api built in .NET ## Using Swagger to test controllers make sure your terminal is inside the api directory then use @@ -152,7 +152,7 @@ You should get a link to visit but there is nothing there. The trick is to add ` -As a final note before you commit any of this work to github dotnet projects generate small dev files at a scary rate so you should make sure you set up a gitignore a short cut for making one that ignores all the files you will only need locally is +As a final note before you commit any of this work to github .NET projects generate small dev files at a scary rate so you should make sure you set up a gitignore a short cut for making one that ignores all the files you will only need locally is ```shell dotnet new gitignore From cf54667f0fd21bc493c09c17d95015e42aeec5f3 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Wed, 10 Jul 2024 14:47:23 +0100 Subject: [PATCH 069/118] Typo and grammar fixes --- .../projects/project-3-week-3/learning-outcomes.md | 9 +++------ .../developer/projects/project-3-week-3/project.md | 6 +++--- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md b/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md index 6389ef3c..374f3d18 100644 --- a/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md +++ b/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md @@ -12,11 +12,8 @@ - [ ] Understand the differences between development, staging, and production environments in the context of .NET applications (K1, K3, K8) ### Deployment -- [ ] Understand the concept of infrastructure as code, particularly with tools like Azure Resource Manager (ARM) templates or Terraform (K1, K5, K7) +- [ ] Understand the concept of infrastructure as code, particularly with tools like AWS CDK (K1, K5, K7) - [ ] Configure the necessary environment variables and settings for deploying a .NET API (S10, S14) -- [ ] Understand the basic syntax of provisioning resources with AWS for .NET applications (S10, S14, S16) -- [ ] Have a good working understanding of the permissions involved when deploying on Azure or AWS, including security groups and IAM roles (K8, B5) -- [ ] Gain experience in deploying a .NET API to a cloud platform like Azure or AWS (S10, S14, B3) -- [ ] Configure the necessary environment variables and settings for deploying a .NET API (S10, S14, B3) +- [ ] Have a good working understanding of the permissions involved when deploying on AWS, including security groups and IAM roles (K8, B5) - [ ] Understand the process of building and optimising a .NET application for production (S10, S14, B3) -- [ ] Gain experience in using a continuous integration and deployment (CI/CD) pipeline with tools like Azure DevOps or GitHub Actions (S10, S14, B3) +- [ ] Gain experience in using a continuous integration and deployment (CI/CD) pipeline with tools like GitHub Actions (S10, S14, B3) diff --git a/src/course/syllabus/developer/projects/project-3-week-3/project.md b/src/course/syllabus/developer/projects/project-3-week-3/project.md index e177b22c..6c14ecbc 100644 --- a/src/course/syllabus/developer/projects/project-3-week-3/project.md +++ b/src/course/syllabus/developer/projects/project-3-week-3/project.md @@ -4,7 +4,7 @@ Your task this week is to deploy and test the library app you have completed in ## Spike Before you start you need to create a testing and deployment plan. We would like you plan a testing strategy that will have broad coverage of your project. The tools we would like you to use to achieve this can include Cypress, Postman and the Node built in testing library. -We would also like you to deploy this project using an EC2 instance for you server and a S3 bucket to serve your static files using CloudFront. You should also utilise Github actions to allow you to automatically deploy chains on merges to your main branch. +We would also like you to deploy this project using an EC2 instance for you server and a S3 bucket to serve your static files using CloudFront. You should also utilise Github actions to allow you to automatically deploy changes on merges to your main branch. ### Questions to consider - What parts of the application logic are the most critical to cover with unit tests? @@ -12,11 +12,11 @@ We would also like you to deploy this project using an EC2 instance for you serv - What are the key user journeys and flows within the application that must be covered by end-to-end tests? - Where will the code that represents your infrastructure live and how will it be organised? - How will you manage configuration variables for different environments (development, staging, production)? -- What are the different AWS products you will need to configure to make your deployment successful. +- What are the different AWS products you will need to configure to make your deployment successful? ## Acceptance Criteria - [ ] Comprehensive Test coverage including unit, integration and end-to-end tests covering critical application logic and user flows. -- [ ] Successful deployment on an AWS. +- [ ] Successful deployment on AWS. - [ ] Documentation clearly outlines setup, deployment, and usage instructions, including API endpoints and environmental requirements. ### Stretch From e6310ab80df22e44ce283c64fa8a84447fcaa0e9 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Wed, 10 Jul 2024 14:54:33 +0100 Subject: [PATCH 070/118] Typo fix --- .../syllabus/developer/projects/project-3-week-3/project.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/course/syllabus/developer/projects/project-3-week-3/project.md b/src/course/syllabus/developer/projects/project-3-week-3/project.md index 6c14ecbc..937cb010 100644 --- a/src/course/syllabus/developer/projects/project-3-week-3/project.md +++ b/src/course/syllabus/developer/projects/project-3-week-3/project.md @@ -2,7 +2,7 @@ Your task this week is to deploy and test the library app you have completed in the previous two weeks. ## Spike -Before you start you need to create a testing and deployment plan. We would like you plan a testing strategy that will have broad coverage of your project. The tools we would like you to use to achieve this can include Cypress, Postman and the Node built in testing library. +Before you start you need to create a testing and deployment plan. We would like you to plan a testing strategy that will have broad coverage of your project. The tools we would like you to use to achieve this can include Cypress, Postman and the Node built in testing library. We would also like you to deploy this project using an EC2 instance for you server and a S3 bucket to serve your static files using CloudFront. You should also utilise Github actions to allow you to automatically deploy changes on merges to your main branch. From 526e3f5197342b1651749130f13c9f1ee3bb6381 Mon Sep 17 00:00:00 2001 From: Nich Galzin <74174344+nichgalzin@users.noreply.github.com> Date: Tue, 16 Jul 2024 10:03:44 +0100 Subject: [PATCH 071/118] Update to link in resources tab --- .../developer/projects/project-3-week-3/resources.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/course/syllabus/developer/projects/project-3-week-3/resources.md b/src/course/syllabus/developer/projects/project-3-week-3/resources.md index 629b0339..8faf527e 100644 --- a/src/course/syllabus/developer/projects/project-3-week-3/resources.md +++ b/src/course/syllabus/developer/projects/project-3-week-3/resources.md @@ -1,8 +1,5 @@ -## Resources +## Resources - ### [Guide ENV variables and file in Vite](https://vitejs.dev/guide/env-and-mode) Some insight on how build tools process .env files -- ### [.NET Deployment Cheat Sheet](https://docs.cypress.io/guides/component-testing/react/examples) A quick guide to a basic deploy of a Core API to a EC2 instance - - - +- ### [.NET Deployment Cheat Sheet](https://foundersandcoders.notion.site/NET-DEPLOY-Cheatsheet-30b87a53ca9447d7b0d0c8334bcf267c?pvs=4) A quick guide to a basic deploy of a Core API to a EC2 instance From d2ed2edb07155c9c77ecc51bfec066f86386fddf Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Tue, 16 Jul 2024 11:53:02 +0100 Subject: [PATCH 072/118] did a gramarly check of the workshops so they are in better shape --- src/learn/DOTNET/index.md | 95 +++++++++++++++++++----- src/learn/dotnet-two/index.md | 131 +++++++++++++++++++++++++++------- 2 files changed, 182 insertions(+), 44 deletions(-) diff --git a/src/learn/DOTNET/index.md b/src/learn/DOTNET/index.md index 401187eb..00d80b56 100644 --- a/src/learn/DOTNET/index.md +++ b/src/learn/DOTNET/index.md @@ -5,56 +5,79 @@ tags: - workshop keywords: - .NET - - ASP.NET + - ASP.NET - CSharp challenge: https://github.com/foundersandcoders/DOTNET-Workshop --- -Although all our coding so far has been in javascript or its close cousin typescript not all web sites are coded in this language. If you know other popular coding languages it will boost you capabilities as a dev. -The benefits of languges over one another have much to do with situation and prefference. Proponents of .NET will tell you that in comparison to javascript the langauge was designed with much more intention and while javascript devs are constantly installing new libraries to do anything .NET has in its built in library most of the functionality needed to be a developer. They will also tell you that when you get to the point of maximizing the speed of your code .NET will make things easier. Many people are also fans of object oriented programing but coming from functional programing its unlikely you will initially feel that way. + +Although all our coding so far has been in JavaScript or its close cousin typescript, not all websites are coded in this language. If you know other popular coding languages it will boost your capabilities as a dev. +The benefits of languages over one another have much to do with situation and preference. Proponents of .NET will tell you that in comparison to javascript, the language was designed with much more intention, and while javascript devs are constantly installing new libraries to do anything .NET has in its built-in library most of the functionality needed to be a developer. They will also tell you that when you get to the point of maximizing the speed of your code .NET will make things easier. Many people are also fans of object-oriented programming but coming from functional programming it's unlikely you will initially feel that way. + ## Setting up .Net -Dot net projects can be made in VSCode just like javascript. In order to get started with this you will need to first install the dot net SDK https://dotnet.microsoft.com/en-us/download and the C# Dev kit https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit + +Dot net projects can be made in VSCode just like JavaScript. In order to get started with this you will need to first install the dot net SDK https://dotnet.microsoft.com/en-us/download and the C# Dev kit https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit + + + + ## Setting up project -start by creating a new project and cd-ing into it. + +Start by creating a new project and cd-ing into it. + You can use the following command to view a list of templates available for your project: + ```shell dotnet new list ``` -but what we want to build is a WebApi app, and the command to create that template is this: + +But what we want to build is a WebApi app. The command to create that template is this: + ```dotnet + dotnet new webapi -n MyWebApi + ``` + + + ## Personalizing your project -Open the ne directory and navigate to the program file. This file is the entrypoint for execution and where servers and middleware can be configured. When you create a new project microsoft helpfully includes some code to tell you the weather in this project. We can delete this. After removing the weather stuff the file should look like + +Open the new directory and navigate to the program file. This file is the entry point for execution and where servers and middleware can be configured. When you create a new project Microsoft helpfully includes some code to tell you the weather in this project. We can delete this. After removing the weather stuff the file should look like + ```cs + var builder = WebApplication.CreateBuilder(args); + // Add services to the container. // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); + var app = builder.Build(); + // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { @@ -62,34 +85,44 @@ if (app.Environment.IsDevelopment()) app.UseSwaggerUI(); } + app.UseHttpsRedirection(); + + + app.Run(); + + ``` -before we leave program to make an api controler we want to add 3 more lines so the program files. +Before we leave the program file to make an API controller we want to add 3 more lines to the program file. 1. builder.Services.AddControllers(); - so the file knows we are making a controller + so the file knows we are making a controller 2. app.UseAuthorization(); -which is middleware that is required to run on a route before it acesses the endpoint -3.app.MapControllers(); -which attatches endpoints to our controllers. +which is middleware that is required to run on a route before it accesses the endpoint +3. app.MapControllers(); +which attaches endpoints to our controllers. + the final file should look like this ```cs var builder = WebApplication.CreateBuilder(args); + // Add services to the container. // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddControllers(); builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); + var app = builder.Build(); + // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { @@ -97,29 +130,41 @@ if (app.Environment.IsDevelopment()) app.UseSwaggerUI(); } + app.UseHttpsRedirection(); + app.UseAuthorization(); + app.MapControllers(); + + app.Run(); + + ``` + + ## Creating a controller -inside your MyWebApi directory make a new directory called controllers. Inside this directory make a new file called MyController.cs + + +Inside your MyWebApi directory make a new directory called controllers. Inside this directory make a new file called MyController.cs + within the file add this code ```cs // imports useful methods for setting up a controller using Microsoft.AspNetCore.Mvc; -// sets up an api controller +// sets up an api controller namespace MyApi.Controllers { [ApiController] @@ -137,23 +182,35 @@ namespace MyApi.Controllers } + + ``` -you now have a very simple api built in .NET +you now have a very simple API built in .NET ## Using Swagger to test controllers -make sure your terminal is inside the api directory then use + +Make sure your terminal is inside the API directory then use + ```shell dotnet run ``` -You should get a link to visit but there is nothing there. The trick is to add `/swagger` onto the end of your url. If everything has worked properly you should be taken to a web page where you can click around and test any routes from your controller give it a go. It should look something like this. +You should get a link to visit but there is nothing there. The trick is to add `/swagger` onto the end of your URL. If everything has worked properly you should be taken to a web page where you can click around and test any routes from your controller give it a go. It should look something like this. + ![image](https://github.com/foundersandcoders/coursebook/assets/113926900/51a3063c-2549-4421-b6af-10e1587329e7) -As a final note before you commit any of this work to github .NET projects generate small dev files at a scary rate so you should make sure you set up a gitignore a short cut for making one that ignores all the files you will only need locally is + + + +As a final note before you commit any of this work to GitHub .NET projects generate small dev files at a scary rate so you should make sure you set up a .gitignore a shortcut for making one that ignores all the files you will only need locally is + ```shell -dotnet new gitignore +dotnet new gitignore ``` + + + diff --git a/src/learn/dotnet-two/index.md b/src/learn/dotnet-two/index.md index d28d7c95..ec9eb413 100644 --- a/src/learn/dotnet-two/index.md +++ b/src/learn/dotnet-two/index.md @@ -5,45 +5,60 @@ tags: - workshop keywords: - .NET - - ASP.NET + - ASP.NET - C# challenge: https://github.com/foundersandcoders/DOTNET-Workshop-Two/blob/main/README.md --- + + ## Why Dependency Injections -It is quite common to have an object that depends on another object to do its function especially in a object focused environment like .NET. For instance your constructor depends on your data context object. However it can cause problems to always have to build dependencies first and then the objects that depend on them next. Also what if two classes need to access different versions of the dependency for example we might want to use the data context class both in a testing class and in the actual project but when using it in the testing context might want to set it up in such a way that we don't actually effect the database we could do this by adjusting the controller class but it would be easier if we could make that class initially more flexible. -The solution to these problems is dependency injections where rather than creating a dependency that a class depends on we give the class a interface to tell it what type of object to expect and then create a service that allows us to create dependencies as needed and inject them into the class. +It is quite common to have an object that depends on another object to do its function, especially in an object-oriented environment like .NET. For instance, your constructor depends on your data context object. However, it can cause problems to always have to build dependencies first and then the objects that depend on them next. Also what if two classes need to access different versions of the dependency for example we might want to use the data context class both in a testing class and in the actual project but when using it in the testing context, we might want to set it up in such a way that we don't actually affect the database we could do this by adjusting the controller class but it would be easier if we could make that class initially more flexible. + + +The solution to these problems is dependency injections where rather than creating a dependency that a class depends on we give the class an interface to tell it what type of object to expect and then create a service that allows us to create dependencies as needed and inject them into the class. + ## Set up -Open the simple hello world project you made last week. Within MyWebApi (or whatevery you named the project) add a models directory and create a Book.cs file within it that looks like this . + +Open the simple hello world project you made last week. Within MyWebApi (or whatever you named the project) add a models directory and create a Book.cs file within it that looks like this + ```cs namespace MyWebApi.Models { + public class Book { public Guid Id {set; get;} public string? Name {set; get;} - + + } } + ``` -We now need to install Microsoft EntityFrameworkCore to help set up a quick in memory database. Like so +We now need to install Microsoft EntityFrameworkCore to help set up a quick in-memory database. Like so + + ```dotnet + dotnet add package Microsoft.EntityFrameworkCore + ``` -then we make a data folder and inside make a BookContext.cs file that will look like so +Then we make a data folder and inside make a BookContext.cs file that will look like so + ```cs using Microsoft.EntityFrameworkCore; @@ -53,7 +68,7 @@ namespace MyWebApi.Data public class BookContext : DbContext { public BookContext(DbContextOptions options): base(options){} - + public DbSet Books {set; get;} protected override void OnModelCreating(ModelBuilder modelBuilder) { @@ -63,32 +78,45 @@ new Book {Id = Guid.NewGuid(), Name = "Nevada"} + + + ); + base.OnModelCreating(modelBuilder); } + } + } + ``` -this is moving towards a simple in memory database containing two books with randomly generated ids. First we will need to update our Program.cs file to use them. +This is moving towards a simple in-memory database containing two books with randomly generated IDs. First, we will need to update our Program.cs file to use them. + + +Start by installing the following package -start by installing the following package ```dotnet dotnet add package Microsoft.EntityFrameworkCore.InMemory ``` + Then update the Program.cs file to look like what follows. + ```cs using Microsoft.EntityFrameworkCore; using MyWebApi.Data; + var builder = WebApplication.CreateBuilder(args); + // Add services to the container. // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); @@ -96,6 +124,7 @@ builder.Services.AddSwaggerGen(); builder.Services.AddDbContext(options => options.UseInMemoryDatabase("book db")); builder.Services.AddControllers(); + var app = builder.Build(); using(var scope = app.Services.CreateScope()) using(var db = scope.ServiceProvider.GetService()!) @@ -109,21 +138,32 @@ if (app.Environment.IsDevelopment()) app.UseSwaggerUI(); } + app.MapControllerRoute("default", "api/[controller]/[action]"); + + app.UseHttpsRedirection(); + + + + app.Run(); + + ``` -This should give our BookContext the power to create in memory databases and ensure they are created on app build. +This should give our BookContext the power to create in-memory databases and ensure they are created on app build. + + +Now let's update our controller to be a book controller that returns a list of books. -Now lets update our controller to be a book controller that returns a list of books. ```cs using Microsoft.AspNetCore.Mvc; @@ -131,6 +171,8 @@ using MyWebApi.Data; using MyWebApi.Models; + + namespace MyWebApi.Controllers { [ApiController] @@ -149,11 +191,13 @@ public class BookController : Controller return result; } + [HttpGet] public Book GetABook(string name) { var result = _context.Books.FirstOrDefault((book)=> book.Name== name); + if (result == null) throw new Exception("book not found"); return result; @@ -161,8 +205,11 @@ return result; } } + ``` -give it a quick swagger test then lets look at a part of this code in more detail. +Give it a quick swagger test, and then let's look at a part of this code in more detail. + + ```cs @@ -174,16 +221,20 @@ public class BookController : Controller _context = context; } ``` -The constructor for this class (line 4) requires BookContext to function. This means these two objects are now tightly linked and we cant easily change one without changing the other. +The constructor for this class (line 4) requires BookContext to function. This means these two objects are now tightly linked and we can't easily change one without changing the other. + To allow us more flexibility we are going to create something called an interface that we can feed in instead. An interface lets the constructor know what to expect but will not be as absolute as actually giving it the class. -the first step to do that is to go into our data directory and make a new file called IBookContext that looks like this. + +The first step to do that is to go into our data directory and make a new file called IBookContext that looks like this. + ```cs using MyWebApi.Models; using Microsoft.EntityFrameworkCore; + namespace MyWebApi.Data { public interface IBookContext @@ -193,9 +244,12 @@ public DbSet Books {set; get;} } ``` + This creates an interface and tells the class passed this that at run time it can expect something that contains a DbSet of books rather than the specific class passed to it before. Now we just need to tell all the other parts of our program to look for the interface rather than the object. -lets start with the BookContext file itself + +Let's start with the BookContext file itself. + ```cs using Microsoft.EntityFrameworkCore; @@ -203,67 +257,84 @@ using MyWebApi.Models; namespace MyWebApi.Data { public class BookContext : DbContext ,IBookContext - + ``` -if we make this change the BookContext can now inherits from both DbContext and IBookContext. +If we make this change the BookContext can now inherit from both DbContext and IBookContext. + -Now we want to update our Program.cs file so that when the context is built int knows it could take anything that matches the interface requirements +Now we want to update our Program.cs file so that when the context is built it knows it can take anything that matches the interface requirements ```cs builder.Services.AddSwaggerGen(); builder.Services.AddDbContext(options => options.UseInMemoryDatabase("book db")); builder.Services.AddControllers(); ``` -Finally we do what we wanted to all along which is make our book controller independent from the BookContext class by putting our interface in the constructor. +Finally, we do what we wanted to all along which is to make our book controller independent from the BookContext class by putting our interface in the constructor. ```cs + public class BookController : Controller { private readonly IBookContext _context; public BookController(IBookContext context) ``` -Besides making your work easier by having these two things loser it will also give you the ability to for instance in tests fill an IBookContext with fake data and easily use it for testing as shown bellow. + +Besides making your work easier by having these two things looser it will also give you the ability to if you created an xUnit testing environment (like the one in the challenge repo), write code like this that substitutes fake data for the book context. + ```cs + { public class BookControllerTests { + private readonly BookController _controller; public BookControllerTests() { + var fakeData = new List { new Book {Id = Guid.NewGuid(), Name = "Fake book1" }, new Book {Id = Guid.NewGuid(), Name = "Fake book2" } -}.AsQueryable(); -var _context = new Mock(); + + +}.AsQueryable(); +var _context = new Mock(); _context.Setup(db => db.Books).ReturnsDbSet(fakeData); + _controller = new BookController(_context.Object); } + [Fact] public void GetAllBooks_Returns_Entire_List() { + var expected = new List { new Book {Id = Guid.NewGuid(), Name = "Fake book1" }, new Book {Id = Guid.NewGuid(), Name = "Fake book2" } + + }.AsQueryable(); + var result = _controller.GetAllBooks().ToList(); + Assert.Equivalent(expected, result); } + [Fact] public void GetABook_Returns_A_Book() { @@ -272,18 +343,28 @@ public void GetABook_Returns_A_Book() + + + + var result = _controller.GetABook("Fake book1"); + Assert.Equivalent(expected, result); + } } } ``` Note this part which would not be possible if the Book controller relied on a BookContext ```cs -var _context = new Mock(); +var _context = new Mock(); _context.Setup(db => db.Books).ReturnsDbSet(fakeData); + _controller = new BookController(_context.Object); -``` \ No newline at end of file +``` + + + From efda9bcf1df9dd6cc273eb1151910baecbf2e5fa Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Tue, 16 Jul 2024 16:27:33 +0100 Subject: [PATCH 073/118] first draft of design week --- .../developer/projects/TFB-design/schedule.md | 114 ++++-------------- 1 file changed, 25 insertions(+), 89 deletions(-) diff --git a/src/course/syllabus/developer/projects/TFB-design/schedule.md b/src/course/syllabus/developer/projects/TFB-design/schedule.md index ff933b44..e93febdd 100644 --- a/src/course/syllabus/developer/projects/TFB-design/schedule.md +++ b/src/course/syllabus/developer/projects/TFB-design/schedule.md @@ -2,83 +2,29 @@ layout: schedule schedule: monday: - # - name: Check-in - # start: 9:45 - # end: 10:00 - # - name: Definition presentation - # start: 10:00 - # end: 10:15 - # url: https://fac-slides.netlify.app/slides/definition/#0 - # type: presentation - # - name: Thought of the week (CIAG) - # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - # type: personal-development - # start: 10:15 - # end: 11:00 - # - name: Tech For Better - Usability Testing - # start: 11:00 - # end: 13:00 - # url: https://fac-slides.netlify.app/slides/usability-testing/#0 - # type: workshop - # - start: 13:00 - # end: 14:00 - # name: Lunch - # - name: Usability Testing analysis - # start: 14:00 - # end: 15:30 - # url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 - # type: project - # - name: Break - # start: 15:30 - # end: 15:45 - # - name: Product refinement - # start: 15:45 - # end: 17:45 - # url: https://fac-slides.netlify.app/slides/ut-synthesis/#0 - # type: project - # - start: 17:45 - # end: 18:00 - # name: Check-out + - name: Finalize Figma + start: 9:45 + end: 12:00 + type: project + - name: User Test/Project Planning + start: 14:00 + end: 18:00 + type: project tuesday: - # - name: Choose Roles - # start: 10:00 - # end: 10:30 - # url: https://foundersandcoders.notion.site/Project-roles-c2be6c42f4fe4bb0911049b084c51791 - # type: project - # - name: Code Planning - # start: 10:30 - # end: 13:00 - # url: https://fac-slides.netlify.app/slides/code-planning/#0 - # type: project - # - name: Code Planning - # start: 14:00 - # end: 16:00 - # url: https://fac-slides.netlify.app/slides/code-planning/#0 - # type: project - # - name: Technical Spikes - # start: 16:00 - # end: 17:45 - # url: "./../spikes" + - name: User Test + start: 9:45 + end: 13:00 + type: project + - name: User Test Reflection + start: 14:00 + end: 18:00 + type: project wednesday: - # - name: Web Science - # start: 10:00 - # end: 11:00 - # type: presentation - # - name: Sprint planning - # start: 11:00 - # end: 13:00 - # type: project - # - name: Build - # start: 14:00 - # end: 15:45 - # type: project - # - name: Break - # start: 15:45 - # end: 16:00 - # - name: Build - # start: 16:00 - # end: 17:45 - # type: project + - name: Sprint Plan + start: 9:45 + end: 13:00 + type: project + thursday: # - name: Sprint planning # start: 11:00 @@ -99,18 +45,8 @@ schedule: # start: 16:00 # end: 16:50 friday: - # - name: Project documentation - # start: 9:45 - # end: 10:30 - # - name: Build - # start: 10:30 - # end: 13:00 - # type: project - # - start: 13:00 - # end: 14:00 - # name: Lunch - # - name: Build - # start: 14:00 - # end: 18:00 - # type: project + - name: Project + start: 9:30 + end: 18:00 + type: project --- From 342c96d6250770df79417277960f69fef48fc53e Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Wed, 17 Jul 2024 16:34:27 +0100 Subject: [PATCH 074/118] conceding to oprressive uk spelling rule --- src/course/syllabus/developer/projects/TFB-design/schedule.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/course/syllabus/developer/projects/TFB-design/schedule.md b/src/course/syllabus/developer/projects/TFB-design/schedule.md index e93febdd..a1ad8c2b 100644 --- a/src/course/syllabus/developer/projects/TFB-design/schedule.md +++ b/src/course/syllabus/developer/projects/TFB-design/schedule.md @@ -2,7 +2,7 @@ layout: schedule schedule: monday: - - name: Finalize Figma + - name: Finalise Figma start: 9:45 end: 12:00 type: project From 2fcd640c79a303ccfb921d1fcf7f1e6b3aebcaa1 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Mon, 19 Aug 2024 10:52:38 +0100 Subject: [PATCH 075/118] updated precoure --- .../syllabus/foundation/pre-course/schedule.md | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/course/syllabus/foundation/pre-course/schedule.md b/src/course/syllabus/foundation/pre-course/schedule.md index c8930bf0..df5159b1 100644 --- a/src/course/syllabus/foundation/pre-course/schedule.md +++ b/src/course/syllabus/foundation/pre-course/schedule.md @@ -16,17 +16,24 @@ Try to practice using your Terminal to navigate your computer as you're working on other tasks. -1. [Markdown](https://guides.github.com/features/mastering-markdown/) +2. [Markdown](https://guides.github.com/features/mastering-markdown/) GitHub's Markdown introduction introduces using the Markdown language to quickly write simple HTML. Practice your Markdown by writing `README.md` files for your GitHub repositories. Try to include some headings, lists, images, and maybe even a table. -1. [Execute Program's JS Arrays course](https://www.executeprogram.com) +3. [Execute Program's JS Arrays course](https://www.executeprogram.com) Execute Program is an interactive code learning platform. Their JS Arrays course is a great recap of things you might have already come across, and should also have some interesting new things. You should be able to get started with a free account—we can get you paid access later when this runs out. -1. [Colour palette project](../project) + 4. [CSS Layout workshop](/workshops/css-layout/) + 5. [Semantic HTML workshop](/workshops/semantic-html/) + 6. [Accessibility workshop](/workshops/learn-a11y/) +7. [HTML Forms workshop](/workshops/html-forms/) +8. [(Stretch) Execute Program's Modern JS course](https://www.executeprogram.com) + - If you'd like some extra practice we've put together an open-ended project that you can use to work on your HTML, CSS & JS fundamentals. + From 6c25dd8968ebba18c4a9d97675aa9f5d05b41ed2 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Mon, 19 Aug 2024 15:16:56 +0100 Subject: [PATCH 076/118] deleted-project --- .../syllabus/foundation/pre-course/project.md | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/src/course/syllabus/foundation/pre-course/project.md b/src/course/syllabus/foundation/pre-course/project.md index 9f7621f5..e69de29b 100644 --- a/src/course/syllabus/foundation/pre-course/project.md +++ b/src/course/syllabus/foundation/pre-course/project.md @@ -1,15 +0,0 @@ -We'd like you to build a colour palette picker similar to apps like [Coolors](https://coolors.co/generate). - -## Required features - -1. Built with HTML, CSS & JS -1. Code hosted on GitHub -1. Deployed to GitHub Pages -1. Auto-generate multiple colours -1. Allow users to change each colour - -## Optional features - -1. Export colour palette in different formats (e.g. JSON, CSS variables) -1. Generate related colours rather than random (e.g. ascending lightness, complementary hues etc) -1. Save palettes to localStorage From bde633b1abae62760b19b4c311a330bc55c8cd95 Mon Sep 17 00:00:00 2001 From: ShaughnAnderson94 Date: Mon, 19 Aug 2024 15:19:53 +0100 Subject: [PATCH 077/118] deleted-dates --- src/course/syllabus/foundation/pre-course/schedule.md | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/course/syllabus/foundation/pre-course/schedule.md b/src/course/syllabus/foundation/pre-course/schedule.md index df5159b1..5a6750b3 100644 --- a/src/course/syllabus/foundation/pre-course/schedule.md +++ b/src/course/syllabus/foundation/pre-course/schedule.md @@ -1,10 +1,3 @@ -### Spring Term unschool workshop dates: - -- Saturday 6th April (Open AI Unschool) -- Saturday 4th May (Dev Ops 1) -- Saturday 18th May (Dev Ops 2) - -***Students on the foundation programme are expected to attend all unschool workshops*** ### We'd like you to spend some time before starting the course working on useful fundamentals. From 8c5cf81b60548274ffd2769d80ccef6e8f3b1fbf Mon Sep 17 00:00:00 2001 From: AlexVOiceover Date: Tue, 3 Sep 2024 15:53:20 +0100 Subject: [PATCH 078/118] Foundation organised in 2 weeks --- src/_includes/course.11ty.js | 8 +++----- src/course/syllabus/foundation/pre-course/pre-course.json | 1 + 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 6d74273b..f04ac3e1 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -25,11 +25,9 @@ exports.render = ({ page: { url }, content }) => { <${Section} title="Foundation" url=${url} subpath="course/syllabus/foundation">
  • <${Link} url=${url} href="/course/syllabus/foundation/pre-course/schedule/">Pre-course
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/markup/schedule/">Markup
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/node/schedule/">Concurrency and Node.js
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/testing/schedule/">Testing
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/full-stack/schedule/">Full-Stack
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/post-course/schedule/">Post-course
  • +
  • <${Link} url=${url} href="/course/syllabus/foundation/markup/schedule/">Week 01
  • +
  • <${Link} url=${url} href="/course/syllabus/foundation/node/schedule/">Week 02
  • + <${Section} title="Developer" url=${url} subpath="course/syllabus/developer">
  • <${Link} url=${url} href="/course/syllabus/developer/introduction/schedule">Introduction
  • diff --git a/src/course/syllabus/foundation/pre-course/pre-course.json b/src/course/syllabus/foundation/pre-course/pre-course.json index 1015bd84..362c0a6d 100644 --- a/src/course/syllabus/foundation/pre-course/pre-course.json +++ b/src/course/syllabus/foundation/pre-course/pre-course.json @@ -1,6 +1,7 @@ { "tabs": { "learnings": false, + "project": false, "employability": false, "homework": false, "spikes": true From 02cfff1f478cb5051bf2d49d60a4e2644327a214 Mon Sep 17 00:00:00 2001 From: AlexVOiceover Date: Wed, 4 Sep 2024 10:56:47 +0100 Subject: [PATCH 079/118] Simplied commit in pair image --- .../images/2step7GitFlowSimplified.png | Bin 0 -> 43322 bytes .../git-workflow/images/VS_branches.png | Bin 0 -> 93088 bytes .../git-workflow/images/branch_on_VS.png | Bin 0 -> 39890 bytes .../git-workflow/images/github_Issues.png | Bin 0 -> 98694 bytes src/workshops/git-workflow/index.md | 113 ++++++++++++++++-- 5 files changed, 101 insertions(+), 12 deletions(-) create mode 100644 src/workshops/git-workflow/images/2step7GitFlowSimplified.png create mode 100644 src/workshops/git-workflow/images/VS_branches.png create mode 100644 src/workshops/git-workflow/images/branch_on_VS.png create mode 100644 src/workshops/git-workflow/images/github_Issues.png diff --git a/src/workshops/git-workflow/images/2step7GitFlowSimplified.png b/src/workshops/git-workflow/images/2step7GitFlowSimplified.png new file mode 100644 index 0000000000000000000000000000000000000000..13bd064d1c252c37ab8d27bb526b3c64bca6c99c GIT binary patch literal 43322 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

    vxPU=ScKu@F!Q7L` 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

  • 9eVCj%K~2Vwfg7!G|Nq|AQc^fdE3f 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

    BZ*KCT!x_$)&o zxWtZqck|ofE||2hxV>iG^kjbiz0~gVoIWU$gfK7O@NnXIWAT@ZhzXKmwpht7)jM>m zw!tz226~I_zr~r_F)C1s#bT|ekd;e>g!@ZSRd4QIgIFY>ZIBF+ z2=dAdP2TK#!2Roa>WR4=JT{v3o8NSLPIRD@QN2Ux73WKkx0q6`i4#{fY&h+?0;4so zo|c5V(#*k1AVhGy0xTM)wKj!)-Yj zOjfQabVT?|SUoM7(h4IVS1+EX4TvPOu+rtm;q%7Cq19WMyDN_&odO8*5p(8d1s8KY zn_ug$FUloCTb((Rg<`d_NfS$nNI+zO6rI8BG^FQ>j8A&<(7em2D$N9Xi^x?vS1fx= zZQq5a%IwrYh=c-Sf~1Ir0t%}Yv7SaKfSE(1nLa3z!x$II+p=-hKF8*D)(U+k zkAL$v8vP%?HBk+Fuc&x&U?hri12VCY3H`$PunENrJ%zf`%#}*#?<=QFkGqx{%~mq% ztaNJ%8&oWD+4WS6?H$R8OJWNP)`OsI9bGno6UEr~nBm&nA$sGBPS9 zjY74Nv5V9BW_){6p1oC;XwzBO9^*MX^6V4htu9osp1@sStTbAhz0tYRY;ACo;0||f z)EO)edq>yBY_Ymc^loV^R-0FQl?=ntLDfz5t2Hn+MlcGw;6zUP*{PTW!%bpKA1Ie?{y3JLWSGyj=* zOctxHGP{TCGX2rW!~$kFP=s*VVaMw9uE;E`ye;oSD=klHg^4$Ry1~=|k<8hVi>BHb z?!H*=k-WXe;HnHsp~}dUUpL+}?`iMmeX|OlB)f4iq+c zjwiS7YAFiUMuyG5!lPY-2=kM$U{5}0ZvK01WdDDW|EwL|Zv(T%%E#Mt`FQ*Pp8-Z^ zurM;E`62J7Y{SxuXINZES$81avpG?%{4tFFCjF0YLMyGbD3wM_v$yPP<@OLlOBO9@ zrIl7%X{D7`T507@BmPfv^8b18S^hluEU@yAZb~byw9-l|t+dk0zYR^00000NkvXXu0mjfa8lHF literal 0 HcmV?d00001 diff --git a/src/workshops/git-workflow/images/github_Issues.png b/src/workshops/git-workflow/images/github_Issues.png new file mode 100644 index 0000000000000000000000000000000000000000..607e272b5f3b5f9acc25bda53664c6d22448614e GIT binary patch literal 98694 zcmYhiWmsIx)-?(txCer}6Wrb1-QA&acL>3)akt>^?!n#NAvle@^Rdsq=f3CHdU{o_ zS+iTv1*E5e^3q3=9lWN>WrA3=E*4AkeFuKvd=Ffbx8DN!L+kId67 zPr<~6=OKam`iUAuP#9MWSh^v3Ls*ir-d)qtS&_Q=#{6hShSk!nUF4akOg%HrgwDy^ zzOu$yvNo)_FuW#gy6}&{zfmN8?0xr>&o2i6OM)Z|9bj-{8mBvrTTw;f6e-ZQt*GW90+3ZKMwn$>(p1@ zl~DipkK8!bm<-dGQ?*k#ez#tobU8QBqAM#<|EFco1tc~zuRa5_7N}M+O*Ujn#v}ut zRGyCjS-uz^EJ-?CcazOH;eT}zg5K#FW1@Rr$mZ5xRTNUv3Pd?YEi+vlHms7l6r+G( z*u1F=S~_-7HZV}=B-?S|bl}!27Bw?t#{QA?tx-EVMm#Vk2Kh(Q39qKJmucf25Gi4A zq47?2X_1&KlL{T~TI3%yS=&U*>}uUDxH3M`Fr@XhBsvY<`?u80E;;L_x?{LE{%t;vs&btxh`S9i9ek1 zOn{Jd%#eth+V}etoOL^n`x9nh;=x}x9&l)a;$Jw`{p5Vmb?nac%8dy}msr2PpdD|# z{b&Hs{nV@h{QWBwlzt5iAQW~szD~MBAK8ze|5HWQ6Zrfp@=&yqoq{HPVfqAA0vs2i zXIpslF(bE&_h6AwT69cI6ZVX&ySo8HMijKU=yN6}U8fN+A75XdHP!!^-LE-}O9teU zY|otm?BdAUmk8|(-g8k_(fG(97_xuzW2Nm2wtYFlZoHH%KQm>1e0+zgI@^tWKp69$ zS}(@T*bp}>jIN6i@%gv`+@EeiB`uT$o_>YIzABCE-LDeCCl(<_&MmtJ!)e5eJfpOk znMP<$Du=Y(&UZ zQ?htY~Ae|*|$ z)!V);f^dKn=cvMQ{aGFs8`8DdmW6dPh3!G2p*#oR&GubQEiw6fJ)1YSmS_2u$^uc+ z%Qh7vMXm<&I_DpPU^#ASS*P!QjSw|Dye=1u8D516#)p`a{M~=!mQZ%Sq{U#ET(pNp zwnh`#vJwjkJwj&+d^GCBCMT-pDN)1DLb@c%o#pkaN6#If+%^NbxYj)P4XUrl7~0o- z5QBw#4D6rak@+9No~Ngg8sz_pvR?uO#*?$$dJ`O3ayl1s8aMe^5{J>GJEg|J)s13X zv?{fl!<8oJ8~^|?yw#pCe){m}Ifb*%8Jh_woJfqNIx>vM-77*;y8?*yG(#uk|0P@~ zT9%?X*7^8U7RL*hmlw?m;a5nz4UgygO&+sfcP~ag?I+V;b>ntDg{U2p*SDz{D%+*r z?UPmR4t@I+PfhS&uHYWL1ZAKTp281O3F%aytvA`0mu$CiC9vkTiLwQ2EcR1{j;F;n zeAC?jBprX={>(zxw!BY&YFf{zI+9=lR-~%BqBF)EV6ePc;WvTpydBV zla{vScH~MP8rY24*|*`J5j5fENAUIE5SaQ;2&iqjupfHax0QXm40mW`{sR7N5qX&n zJDeOOt*#%XXSZLJ4E>PSj!0sn@K%WcvBXH1fggBl6qrBa9UEKAdgI=EU4p&;D{N`g zx1{mtm~olvBdSFHcPdkQ^dtaDgWn_AVmts)5IFByKP4Tpb|@6tAQLN% zWRbFdTBTGTi#G|sdKfyUaoOxmp`y0nL{SOc4n4K8djh4_Z$|!`yMKc-Sy*LNon%ZN z=zjXi-9LW9=vs2#Fl5I3_)_!7xyw#Z4?lD~^pVr|M=0<>Nei~o+~E0HFGL=7P@$D) zxq%CLZ4ga5vYAHCbrCnV9TvX4sU zbixTLar6Yw~JQu!yiMr@}^<}O3@EZ<&-xPj?{0eSTFS3C@zEdGIp#?t1 z9Dy>_?fwC%x<>;uYzQ;}a#Hl1@9oL!#A7BjRxl!#kS>>$KbmClc2}ZV$h!h4{tZ<4 znG*X)P#Wn`QGG`|JnA|>&F5+#wC=LI>k@OkXv8M7MlJ~=lL*Cf|{bE_vhLck8dMg;Fn_gvF?GSbMW4;&F{W2>8kB_Y6Ib?pwai zf2H|bqowvW1S%gHk%D#o=MdsMTzGE&`!5Q{uUyQ$RbCG5VG(B{Ho_!Lvm&~FHL)9z z-3|>EcnPw=O$GU=S{{NA)%E4a~6b#h>L|Rzw}F#X)((CtJ^AsZscklkvLmChwHmaGmh}=Csztr1XAW4OXTi)(ap#vNwhxeU$3Am(_aD3ii=iNz( zsM0S9VCPqDb)BqGKi)mq?ne9O)m3-nzDy6f6=&FeEnJXb#Kibk2H&qyd9Y?1d2ECy zX{bn~ZTpfS4lA^Zl-$vs2my_pef^XZVxS;BDyXas<@92^`*=I|!E|v4nV5(-u(XsC z`Ep0f%NrFI27`wbo-ZL&tBF((N-+RyIh~bB^LuCdGM17E;Nb6Pe)PdawxorH z>hEtop>zbGje3px9Q(Fo@%P(e5SPO?k?->@|C#H}4SZNk49~uE{)|Ti5u}H25AG`{ zDP^+9>EC_ip|F_PcbK0=&HRUEH%K~3Xs3s? ze^4~LQ7?%d*K8kSl;($$v0&j$-W{UQaXcD35meH8aNoZ0Svh2L#`LsgEOjiPOo=LS z+m+P0HP)NAC2q%&+hJjGM>s_0AW--$bQW|FBCs`j{o&cVA4jZP%T%YKzjzSMZKv&fCbZ2{ z+MYJ}Em`59^G-K4J6!z@BM+D_Z{V(u!6+Gu3%h6c=}xErM`)YM3E=@z!U&e*28tby zr(P)e!(-*{mB%9m2>SW%OhnVt(jsGS|H*63z2bFGB~zZ#vD2j0XPaD9ToeU=;WDq! zsU?V%oZKhn2F?2+&Ext>1KS-mq3gS_pJnp|``&5%ea(Lq!qB}(zv*ImWNd0&xKwr9 zfz$JB;$hi9Q&f08?XV|n0yCrgz#q4p8*~rp4L<{b_*5rWea$20!}%{n^N_Q=TT+Ue zqQfOApd9(H%MlF1BB^H#3K|!RXC<_$Q^kPT*RR39kz+)QZwgPh`APEgFYlJ}Vn;5A z!3&|%)}m)Qz@opK zG3G-a((3(Xyu}{A^uqi~`6L+BhGkk4Dxvt4I*OjP8YI6@d#R_Gj}!ch1$0|Kj$YM+?Q>sC?b) zSNfEUtnR(ti^DN|6Z@UD3+Ls=;-7@>r+anaZ=P>w1E&nMUx+}VcyRaUl(K}qg;JOa z^W6rAIR4-4nnM{_aMVfpT|W38A2YkeOH>)I26;XX%A@RC{EpbD(9g<>R(>Fb26~ld z$6r^rY&e|&&Lpe8H3Tq|nb9UCsLkA59`lmY3!Vi~R>orn9Lm+i*dm z$IAF_cS7rr=J4OY1qo6;DEUmh@dOSo4rQWgtd);(moh92JhPH=e5AL6 zCS!!hOt&4q6`vnbwu&hsy&u3GY<`?xWy2sQC#fl_s|)pPzM1-^^lc5skl&3~p=}Ru zzO$&Y^FVxKFc?nz|;t;O?K!j^V=I#u+^|k-@yE*^`ug>zPM=m!=klQtq|Rg|j;;9}U;dkUfv5YmiyH09V!ZOQ zGBO?u9_kSYo(=;W3OG6x9yhAm=yc5vFbo%~%$Jc>{Q!DLyenhKjbqd;vw+`XCnqPK z7h4~pvJ@sK1?^#MZuYfV;+5vTw#}c@H3{s{J6%=zGXP6x--!wX+`04ev^a+QOp$1I zA0X@jOO-qlQmmJh49%`bmv#+N_Mb9WUjwy8ecithZ%M!xL3}0t4RoeHo;So^n1Q(S~3l$L1Y@Y+R=7IKq~)T@6>*uN|>z z5VN8zDC>dnLkv$khug;||8nMW_wvq=p|W^;8v_CL4F(noaDyeLoX;Mc-Bq|?f-Kwm z(Q$hW0*z(uUKqZE;I(?;B@%MDe7 z)y&W!la1w%iKY~3iYD9f(EeNmpe_Fkn}t2uk`dY6BLO?h3huRHag^at?i^d(`eAmh z88OQEMD|4VzS8=`+4bmx;zJ{G1)EVtaS9RZ3k#bkY@6ZnKASmXNu2)Sh9d7nGB_3% zMi4X;r+y%pGaqi99Ew252x)Y*uUTw%Lg>nm+&Nq(3S?u4_}r09{XABI&~+d917Uci z&bWexor$xigIX>f5+hUQ)n3_ImSz=8aNk!!C}dkJg_7vrTe*V6^co{Ft33y(d@Hjk zb~u*i8oI5Zg`xozTnS~s4_LXTL#YGaSr+GIle+v!ASstE6@>OBO?>!iG`7u{{iXl) zaBihF=7{Y5Al=?U1~K>hJQGJ}wf5(*Icn*)fH!!fJtp?URjubM|c}NyRtIJ3dKi{GQ>s@S%svRXCRA8t%Z;US>QT zx{w0mC>*xDwCY;(>z#NyO)|DYB^9g`7aLv*_KuEUy0G&jyJ<6zKHu#;g4MVT@z|mr zrPS+E=*-NDAUB57cv(haG*@cv_;CL*9oMv_FcTTFalh05K}pjkHhVB~GBC+vDly!> z&UnFpsx6>JpD!RJg?&hrnpM;bT0b2|Cby!aj%C7b&~FYLiJ%Up2)Xcr z>(sULQ#7M5RZ(6b9&OV!U(wm!Po4a#uI$cW0f&}x;fKhEAhCPm9}NupDZk3A&SV@4 z0t}k`#DpJU09pDZ`J^xih}KkgCr*m>9~RONHoHf0-`vg^cGg}yzj~hOCSZwN=)b|T z-}YaRxvM5>*Ceg1Jm}HYp~Jvq%T`Vd2rWrR&=|+@wC~0(>^RJC=g;hx!;}0m`vX{$ zu=U-*9&+RkBI1*fmXXonD_Q^?FFl+JzuFp2t7$a-kVMWhkFnBOxxYp~*w?K6qI?cW zP7_2Eh$~Pfg{rX0a7JcP$IJ}}_LV^2TtjxeI{8y{)`npZna3^CV(>Fz-kIQH(1XGX=VLVA2zcje?k3`zwf2gvhe|0 zuts_~G(zf?V7v{Z$`V+SzU+tdwye)PbjkN>w}kXQc@4g8QJ9mn-72@3^5!3AOpD<% z;WRA6YcSfslMHsXrdufEzA3e&bA3<|u_-9rm+`U=5*$&J`adZjh;8-j%d7h65j%rPsmZdz21DnO!M&Ddn z(s(V<%x#gsA!rvM(xg6&>M9fJ^y{GgRe*uN@haMSBg3uC?H|IOF}F9qTBDJ)7CM!A zqVc%gY>aibby;it7sTyuoBTS@_MRro$xL4s7)qE{fy$~PI8$2`U z!{6ae!f;p~9>bA0G1{A!cF84id9vI}m(vzTgKf&YMo~ zJ4efIo@gYQHO7dKUge!SqF~cA+aNVakxZx6bL)=D^ptwpU}v#$&9(W{1oRn6#KeK`v?5_&Wq?Y#smN^Fp0yDpv?SZq;`{qOt zu~G{FCn0Bod!$K0tJR0I+LtxOsCW(`;K73KFA*{&C|4>Mb%jq3*~Zvb_5G+QOl1m0c-RJ4>L%Ddug_#v(k zVe?(a)OiCimGsPoaew!hJDWhD!}`{t?Nu2e!u5{~0&kazAp z6b$|zAbg%He@G!kAffLjHJBGW-wF}cb+9=m)@(i89&E>%PqGw`s{*CCNZd0Zbd;;l2R zl{K*J&QVL-=y-3VKNZ-_J5m;$k-DDxDmtpyfBFDFz4gjX*u~jE>_ncX`84fuu$)_p zVO6srf6~p)WN+HXR=BQ#<^J-;oB^+Y^?2xOHiXRJ4X;T@cyp7y$t9DSwa!$X8e~6z zU3OA}yzYuQy9in|KFD)z9=Br;8ZNm;4rOoQ0j1$Yw3pJrq|+)?X+ zPZQ>SMO+j?TNZjQT7!QhP~Y z3Qw>ynu2&!GM)(?ZmFh1X&>9(4~RL0Q=4%!GP(REKZIj_s+VotuT>~Y9N8a8ojAn!~=`HG~A|rA8J1R%z{dWC&i~2<+b}ug6g=|jC(9>}M%edOq*s1`!-N@UJ zJ?_2`1c0N|MJ>+liyZW1LK1$Yc%?YnYOC|(VoBY~$P+d4C-SJF=XhR@s8TJxvwN3w z(|3;_^#Y>$!hQMV*1qAvr|qhpPY7H;>jB;UReD52pGi20P`2rMw>+_V99al@XwSTCc_(_3gG-48EV^bA{lW=5A5=s3Fa>TKDtOB`*I8iS{h z6nO1kc&+i3Xs>egye41we!#~!Raz^lu+fVJxE?;Zc1afsmoFGKugP<%I~DA8+;8Bq z;HsMu5AcoO7NH{Rkt7gyrzJI4Td0L38Rf64j|ye+W|x-AO|l_as9rl493Gk!3B{gk zHNz%&5h*ATdI=v{MMY(BXAWptr>~@U{eY)-q+k)xZYiR$A~8w$=*x_fJ53{)y3&AE zMyBX~#tO_x+q{HtU=<)_8QjHDwXnpwg1o&#uzaqkPn##B8*`FN&DAPRe1x3?Mk;~n ztyUr+ZHRhxg+nD-llY2&Bkl6Z5-t=F_Q4Qj)+F9O$r&3q(N#z@kb3p&7IEBV$h+(M zoN9K4=t5op-6c(5&ZXRsvnsI799&({l2yQt7)o=z)CJ(Nw3 zPuYHNQ#!gK-&M}z-+6lau!~3O&X$3@f#ZJ&>To?38(0n>%0REuk*k8hR(E{(Z!G{( zx?^?MCRQz>NP1V4fIwXEMqPMP8jF;awStSN+-vHR=f&|n+C$l8zneliHDS3qOrJOf zv&UX4h7D+Hub7f~8O+dhu^`&U+l+EClWtF%R6c_H!SJ-)8CUEt%IzX5Z^I0*FR_oE zrT?T}v%QvBxm-SbB!gjd-Egi%6ptgyB5gqEyi5)qm?dd*@5P>qQxt%1KwP<6R%kAypBJYwT}Y##WGAWNW0xLm+ltDhtx6@jcz4O$toPzgXDlaixo7T>+y*>JYG%V7^c~FK zhfOW#adZQW9`i^#VhGy+xXO*u!~N*5!lXSk66MI09qt0AKmh9uA9Z!5*gj%@TN#u= z&R5N$#Qyj8|J$ntRvJp!wqw+#gXv@w|l78?%lL#Z2Ap+&CZ{O6Djjb>k}w6Bs@(zvuQE{%q-q8l|_^SdDG|VGv1ri z2?QOsOeHisv-PmOCNT+W%9oe7=@$&;)mWFBd6!cy7;@^yLdI;-+|rqg6VCVynERUk z0IXpWLY^XB_<}~#wqkknYtqt*Ziw1G?4*vwbv&N?j*rV}I_ofbg2_E86|5|P;M_br zoTkTvLozcswwpjFg%S>2C0hv&N7a;{FS;@*rAH&gS}>61eBV zHb#qtSHufPKAkQ*^oE(UZ2DRoP8KX|hpj0`AuVOc&K~W_#&U3K6UI#`ztdQ(A_j{k zRE&nYc{w)g@;f#1r3q`%K4b~B|EEU;3?B#oc=VQ4U$py?zh%A3JZEWfQOSm1_P4x@ zX@99&IRkF&vJtzg`U|LvMXOD+V1^PWfYwxRnxyJaPQ!CT9nmsCk=mpHCL=f%dFu~fuv3;Sk@}8xk zK_vxp`C!bG%tt*g^t7QsY1sQwCqQ}m48Z4-L<9pRs;&vDcqn3>v@b9swuEv19ej8J zCzj?49$|1uKX3^*YF0ui)UOrEBA9GjEcNf!qPWB-ID_RC)+x=70BY0$_Xs>VIysa6IP*hUyW4w9 zEcd^%_6R|2_K4+m_I$PeYD7n5^z8)#A8#%YYh7ap&$&yPR~NGf)hv$fd}Idc^QG7d z3}j3pR7CJ# zOg)6}eJBwbS<8aS%ROdOJLBo`@YF}+f=MOa3nzo+?NOs)vvwS3sZ-FxuLW@JjkLUc zH=APh8ZMdnqXqz;IehUeTrE!xN7fbK_K58_)8;4(LpFuVsn+jE{82pyr2VQPIh$00 z1dC(^6Sr3ijF{PaixFqqkx27rN}5zWf8lhSG4CujTkK--NPP&m@;7us88@B@<+YkamaIa1r2|JOm<(~bG2<6}By+lM*rHdsZA=($EXdsO$p zC>0D{ju5qfBb=I#%juc2JJN2XZ91IPZ=FI$uLKp+?LVD zu(9=lYed{)>g?JH4uzm8lzXFOdxo1n%I6y3Ik6PybwX}in5rK&HCoA^N_gE${>BLV z6%$x9tr()u7gpV5WAZc_lg7Ezq#kTu`^1=2@q+h>T&K=(=o-p=Ecf3Xk2FA2)NY?W zIJTur0MvebkKuPA?DV=n!rPS>d9a%~UCo-x6$#ZrFTkYicf1n#a9p*<<6N%6sPLA> zeQ1G6N5#PzU$@BNe7_+cL(R@<|JnGlCTeTD5uW4~-;a5$qg1N;>U_}W63Jg%;D4aP zps2oB+e00kClnhJ`p~OoCzOlO3yLRRSc@CUf3$nR@N#QUmGtK$AaBtlz;kuw1X(*S zECh^&3lrzpapv@O+Z`_Dy|r`#=({=u+64?0W~vB}7bycGd{^en-e9Lo!U(P{OiwIh zpU_Z~e@-qTL$jfuPUJmW5;IR3p>K9ApR(&t3j6qg{&8h=Tg-xMq}vt3U&CR^9KRtr zv*i6=uZnLL9~SMqtnM^LX>fO^kR1z(ENc&KjMt^6 zT4SUYHQiT}@(+Zy(T3i>9!S`vf^EIYFd+hNEjEGMKb>Bizf#}x#>Mq@W*LTHO914vHl z&TNMHso6DBg}lJ~DUfYqaRx>IHpXUTyT&hb#3iiJy3-g@kMt||hqyjjM8IaV;q)n* z^ZLU85am(8Ze`|)zoktMs5GIpxU+HY5q_u0`IREb~}Hac}h$D@b!ed$9@HqL!~Ggy*o zmw0m$tonL&CJ99Rwu*taK)mG6thv*7sRO*G{ia*U<&iRS#NF6&kXA?T6@m4x6w{Yy z(^(viB`xOUx;i72M00v$HTk~7=R_eg@btvof)d=V9vd)rH(FhxA_ze_<<(Me zk%bWz5A$9u^G+{hDZpLeGK?Nia^fluWC2E0wS-PT;ao%+mOR-Db=%|Heg zrz%c7`MRzxB-X@++DzhVsli3s-^5o7pJf5r?k}st%}0_HTfVqp1_k!}bBG4l#~}<) zB%QhH$9wJe))eAXlyHT=e*Pxv?fV;c!IrtaOoJ8cLaLwkO=cgJU;6`TMay8@jYqM> z^fu~3M$iG}vp~e66Cd=RQ$ocQ*XT_Nsm?PxjU_!+`Rerh=a=@R3O=5da+sYki5}p_ z%5nvH$y>bA6StD3>8%3RU?ao@8Sy*!d>650BIfRH$#xBO7U@CG%u`UlawEeaHA%r? zn0ooZaz1oXULHmagU%IURmb(ZwRBc^dOFT~yPID55HuNiqgTc54AW@%)+c6IgvO}mx39G%N@i)$$B0)i(uSaLQuev zGZy8kT@({7V$mGiX+uv#M~O)0$EzYyahUs1d`a|)Br_8PYUj->3);0M1xZk3x7tYD z!|9LC#iwUVRuH2%s)`=OBfu>=99%lLCd-`Ln4Bs7T+T>ib%8`SOWdK- z?CV^r5UPX(mGB4_8vp)=b%Wa~(tra&f_f@o`?mQ|QE zb^~Uu@1tQiT%Cw%1ez#npRHwDvEn@T)1sN&G zy|U_OruVfx@zk16m<`5@@@JxNRjDC<5%Ru#c-So+D!Mvo|1iJcM`OwH3iu<4{~T)w zum(|;m;BkWT;3|4gHlvd8nCwS>KhLw{Ij%FoKX2;;wYO)@A2XrJJQyG1=&JYONhE- zbh=?rVq%RUQjP5*f9T)1k1H!SAQ}`LH~;aPgv+agL8m4DPvsJ)Hei21V{0$Cn1EE# z{X{*hnz_qppEBpmwo9vK%cF?->syy|*_&r>i;W=3KlwpL$+3Pan$KAB)ZLH9nss1l z2-AOy>eMy#3Z5~~F$p!V6QP*qXLYw$AUfF&zozsk+Y+%xDeUE_BK7zAB~>L2tq3!F zaC(Mia$KeN+@q5dSSo4}b!D+sdxYFK=-=}IPF26KoEUcQiIUT;C(^ zHSb2>c{-~OdAwv`Z#I@(iGb~N?iwXOGIE$*)TY-DJgh|CF66pk*}eZ@ zl{H<+C5wKfB;@BWlA=%}-PQL6zIIQUjcg6od=H8&ufqL}u-{y?*JqeNc!|Xj{m2jLP%_X}MZV==bZ4 zol#CM+#6n!R^Pbnwhb>!O|kI#Q`}_ZPYqgt3rls~aACw~_O+y}v5V@RB+&YSn|Jf3 zc-yC~F`oA8cs_5WRkXEx@~tjQ!Fxm=dRUFzthc|X#?3_e-cg7{Sbj^p>H!@cjGL`& z4KY^dg3pX_+^piVWYEUUGj3mrbx=&~74FYHj=g|s|CJcut1PZ-0fiUUYVq~yYxZP3 zA8NHcGo5>VEFWq|jWl16uTa58_h*|`*W0|qx)wzf47X_Hn5=763p>@_yyz_p$79bI zPdK4Zvz#szcHCb(cQo1YU`XU+ktY^31Vo2>AVm2&L#{qKr!~{VCv42L9I^u&q*&6} zs9U9kvppy}uJD3mCe1_w@I(86dTW8GF}zcpAc0oUTV6ef9Iix%l1y%C)N6-HIbuUU za%ZTP0*86m!0?efu8mF$edKE$i4$%HARn5U^J!jIVUWrGCeIPE{?Oh^R=)d-dFv! zU%#$HR%kt7zkPc~LG=TCDM{w^DG2)TYlHpVkIuiG3l{>WwmR=gx$ySh>Owzrf&w3V zv;v3E$m00L6PG*Y5>nT7;{BHW2lmgQVuiwa?a7xh{=XR&7wrW^kdmh<4nhMKGM0_t zq9+NAT202)n~`JQVP5u-MoLP$=yQ?z5^xTnz$fY#9{N_^@90jv9*$CXEdapu*T=a14Z|C7Cu1^?W@9P0@=^N^ok>oiqS5&Xg>~ucuLf5w zSya65%VoA6cxqH?s4W`=C*|aAp#~B1OI^C`pM)TZjPluYKEvDxF^gu^-y&a+FF%9z z>h$Yz>#|#w&2mFHHj8<7(}cuFb4OoZvVGSbyFG(f@xrd3pWkch-1Wf;e1K`aaifgo z9h6IP8jrL(i@H?c;_r)T+I04E?Dhg7drNAoDe7pZwX@%_V%1AoI=2IhE%x&Hwv7xU z=7Rvp%AMOTP7X5Z2@Je+MTBP-Px)T+M&lG#%e&`f+gO{_O1F7!2&3ZmOw$3Iq{;Ov zt?tY#F3VOL7WE7Wml>>EJ)xh=RBS0mDf5XOcK{&x_|5OluYDr|g2o0`&^yH0Jd|+WybpzNhVe>{I<$7cW+4=rHtn_)H9+ z2tSvu@~`e3fzM08Pu9#(%);zH?+fwi7Ih1qqljZJ^^c|-P-LNjYeP{aXX*3x z=OCZxzGIi`%kko?tGk`!Awr|KLxUQ&8}IXW3!lglSp(l)y?gXiv&CCzuFt!PH#0&< zxsxQ>ma}Ae+@VAX^IWBJ&$EGIC92h?jG420Mw5HIPw`?m1}BVbV0cK--Vc~{c5|#1 zW)!A%US79zsHkqRY7&2kU)|_@z51O!A7rq&AE6Y7V?EdBHIkHkAHntyNM3tMmOD+L zm3B5@B2R+nw8f5dN%m%pI8FIEZyuCz%R~vW$2AV@YrN+@_J5oLAwK| z9zG-+>%TQFMV3#B3wPtTIQ@z4zdK(zh-YvBhdd5G@L6-)|6Q(tTl>|+_?~uf%TXue zg^HSM6rQ1@U*q_=*p}lRxc1pp!Tvz{Z!vrpJd;IfY31$$2M$T0)lz}eOR5rPf72xY z$HVv&dcm|Jh3UdjjxvK({~ge5cw6Z9+>AFHyQOY)aMPE9xykGbv?=W4%No_XPf^u% za!t%k!{CLX4f>3zf-N6{x_$=S3HQb5cl`47l@lAU>3KY#UqffkH0&;A< zZF_7i-7^zi{lx$cW{N5*;YsiqbD=@IJbAGjl7WGor5 zCg3(5H0By-@OHadNXdBe90JzY?E`u2E>eYH|D{y0y!&;H`#gewmf5mxv`3y6|6*~z zQ%jj+s6v)WsV4Ei;D@`%_=19p5i+(5NS3AfJhAwe{@= zckDEl>O8qtCyj>n^!XIRK1eC4NZuzIwB4@>UZEe73ZH{*w zjw)?Ri62d9=w7HE^LW&y{l}``mTsiKK&&a-RC5W(HpTG_ZS_Qa_|Jp*y&Fy(LS$#`ICfr%-e4$>}7_NSi{iN#A z6LS9K@AR5&PeB!#4<0#L#rW&}K+@%2T@S!TB^cCe{qDr=@xBJwquGO95&!Kce4{n;61in|OV=EqV=#T1sbh!j zJ7|s6{r)^>K4%+|lS5caWl$3Y+Cju974>9`QTiB46h@=CG_Ln$Pk!!D58r70S99?=2 zexscupI1lD+$Q}z>AGJzqPCTotDQU3pFvnIPnAKz z$8lq824br7#J13A=N*B5z6u3vo1NYqAMb|PU}OB6qi4<011R`%nyJ~K*;z?k?%SxP zs2G74ZA_LT1=3gA`nrEZ=O6Oj76o@DhOgvT4YKGR%YC~&XI2IwKezW=x)=CsD*DkO0N*bWvwZho znc(38{i348H|i$k^u0UOltd-K=aaxh3``|;uf$vpSrS^ZFIo5Vv;4NXdZ@|Nc@ec@ zIzTvFw^W>vK+4^Op+W*lQOzl+*VntWw6rf@k%)_zs*@RAA5*^-8u^EAxbb%-Zya;`{@Im7@EX&{bCEvaIbiIxlp>Df@mtmJkHxlh61$HserL|Np8hM*L z{kvDXv0Zujd75<|GgmohZn*B7o*bW?yryF>3$%NADft6~>P)V}hJS+%%5Ta!`QCi^ ztn44U?cJt}+P`DD$$FTv42uZcF6-yH)Nsph8wWP?|5Q9Ps7djN{lwfB_#Z7Hjxlf* zVp_m&qZCM(+i>Mg(NF0}C^>Q}dHi-1&Df-q1Uv`!J6f;d;qIaHu4evTtCM&Fx63O< zD{FH}V07PLU`{2P3Erf-_Aox{buVXJbmf}e#3b1O-{bqj#Wz~TJQWUv*IXRC{d^vK zl#6&Ti5eRlQ|T}$w%i4@E0a@Gv0mR^IbDuWKuf++>fX3U%WsG{D|Khl<{98hCIW5mvbvEDz^wg@4@PRAGnpZ)j=cnP?jr+oET9$Ysb?z%3l zbEh^$rY%`pULjy$X6M9l!QR0ethd5h1_n|mpr@N}C>wN;d#gI)$LJAz=J%!R^t}`2 zEaYoVbol+icY+=s(R|ytW}X|1MP0WKe~=5#OxLPlE!{p53e&eoHQBB$=FEs&E~3r4 z*#O=9G%-|+Xn8|br3Ztz!|DX+`)WwYLq zimGNzKQ8GU1EF`ElJjO-rk|mIyINg7zzbSggJHU`Lpjg=%xH1^BPaUM8bTvnU0}<@ z$MMjWnBnc-m;S-Bb(p$*D?})b=TFS|o9>e-m8tacTclm_uQA#&fmflIc;A0(0m#n~ zvki)hJ;AL$`DX%%l(xluNjc^`o+qr@m4vo|Uplkz)imz5cVjpl55q#}g7gw*>w?oLi+fKQTT(AfLh|dCEH?Lk1?{65ZfsZ zMD*;v{wovo_Fqp9CeZh$Zh6}U0h=2`sQ663?DX1ZssfxhSk>z-RyxUAAjANU<($iu z3M)$Z1G=-Nfm7Ghr6!d69)9!}of-WT99x?EdUBmP56GM^Fk6=6F$ zBgCxA6R=t;!jGVb@n>z3mT_p+ZE?tjKMCtABo^HL8}t8|`|7W_nr7W31PBT4t^q=D zcMlTW-GaNjyGwAF;O;JiL$E;ycN^RW*E{cbzVn^?2i&vP{bkmg**(3xtEy{vS3OVd zzzzH4z=i?;;sg9`uZcgC$!;@6Q4u{oDIE^QG<1%we02pIpI>_pozXB0^A0|Ix>oW# zC6{0>FG%YX!K&&m24yXdEm@b`Px>_{W~L5DQ|FetJ&A@PU!ME<{Y7%%wBPY}XWUiz zL>AoIDw$d23V5{fo|qlp7ojn_;?Ee?c3IzZbQpDw6nw1>Xh=flF|TpThm|7|jPy9S zy_iLxYQ{)P$+ud;e&g_DTNVOLNSaM7t3DgtP}itM=v%FJ5_D-d$OYwIwsWZXHuJ# zWsj$p%cc|_j`dffm5*>rT3U|lesN#+-0$;&sVOOj4NJ94@;lBvmu}_uN9uAf<dM z!{^5Lo8QGODkKPuh3G@h0c-u|gZ3a0%mEr&0QA8Q=fk_)Vz-e866EVGcwdGJwLz!` zKW%*f{yo38_BV8N3QGNi?8y&LPqWRks5Z+`Tz++1Q@p>*e>EgyP+&-nnwe38vK{17 zd9NX}<`)o%Xa%U*J$3bw&5B6rU;RNps#3)ZdN;anLVeZ`aq0fK$v;p8~Zt6Y_Cw(fHacfofyt$va{-c*)2JiU`(iVAg?>+n&bb>8ik1Wl2iab{v%TX`}PY& zsN#@AT>(I;5NIQ4mP#&{=1R)*|GE`)HuH|3^(EQ;!c#qyB6PIR3f0^RyNtJcS~SN`r%xNl8fxN6uT0ZEyG@1=D$; z$1QM4ul$aLkkC7P*)L{l;gF<)*5H}%H!=m&t;g}Xa8=#dxuaF*Oq?VF3~FyJ7E!GIKJDt(}Rt37v1x}cVRAr->$7bjOHJE}6<3n-gK7^E!1 z#Nt+Pem!vJDHHw2P{Mu+eJ^+5$u{0RKdR|ZB&dT9OROcLijxQ2jp4u6hd8w3~vU+oc`0*yP$~%ZY!Q=1t|tX z$Dbzz>*v?z{8-*ueVC*-r;qAcA-!tx+;MkGR%IoLd9XT6^lWRWV#(RQ~9ZDx$czsJHm1X8Mt z$7t8piJ&Cs=D-{@e%#xI74NiJ@%r?Uzs&~GktNS6dHbdb@io*e0trCC#G2TM@{PQ9$09G1IP zow_>j%Ph%^j*(r>OpNNvzj;y&{rv`qNGw@7BHCNfo-FY=N$NHSmtZFDX_~8dHF(CT zdDn{_85I?AfChAVsot-bW~AJ`l79bJ@RoMi?-qj5Shj_@E=qVFzh}os9iU zMJt}&b#LOdAw=H+S#wN!UUF?1pfG1*l0vHjunW`W=`yK&On&dM)p0)C$4v>yKI`h?#((?;D} zh!hD}N1`}u86CgQqWAH&ZhZN(8aXfdL5aj|sfmzR?ypIz+Ht+2*3mAGw7{RWc6Yie z3_R)d+W||KFFm;E!f8KIQeFzZ8{-Qn;u;S79fG~+njn+0x`&mz-3ZwX{>%m9_7H!9 za-!65;;kRopTI+{uZ3q)W;3-^I2^z4<1Opgi3|Cf3i}n(atZ0D!>$ zHjj6Oe%T{X;T&3@46sjkMVvu!CQSx9V@xWVh3!9y!>WK{n|fkl_?hqMcbn2LC0F`` z9GmOOITH|wZRzHVDUUR*N=3sQCmInx8*T^xcz!-Qe>`w**8q@5_`oB-&nrj1@)eL; zU`U;%`c`^~r+C+3F=EMb-J5p(InS_VrEZxh?+e*0z$~4gomjajZqae#gf*z?2Dqn) zf@K9r*J<*H+|s(I-L0UpE6=K3UX|1D!mmUSJ@dh2ILc3_OcYOW7-BFsI@10)-c9tM z+jES+euY1gdW&?pi`fr-eF1t1nt*NR{Vtd}hi<4Z&)wL)q60D-k|ap9CIohba=h$_ z3kqo2>1|AJHG>$B46a)+)aL!}5qNapP4cscj4`wo0#DiTk%H_ZOVod$>@(<$wxcvp zRe)8Uk&$hGlwZnt8WE2s6n!E~>1W6=z+7cLUEaSJ{{z9MhkryLzG(Vqccqa^*KIxS-BJEp!D~{uR88cu8-gxZN z=yor9f~VBbqgZ7v@JdTa%Z{J6Mzq8CYfaDlQ-*@Ost6feA0!tLx&FeR86|3An-7Or z(*?b`2$mRWmP1fw@#lez>ut>6|#YJ zN@7~~Zx_aFpM*uHBkcNO4q9#!R_4c3{^(m54lRU@MhZ(qqq|2U4T?upoAuseOahpU zDI&26ox$y7alI<^-#Kr4YT@%E$M4I=_O?&mIDg-oP-O=N9fBa`mMhoC1Y)B&hfqy^ zE@?>eTjj0C6D|vpb(&8Q6U^~?!V=Fc@3i?;Uyq6{aa>yl$^BAuAP8Fd(tdV={f@fA zRa_rTQdy3Gyc!K>FlqpZ0Bebi<($J2A%FCxsGy;)>3ihpfpyM=#mJok!;$-Nm&`kZ z=4C}J{^DBS0cu1;p~AXK>6+xOOhH2{Esi!0_(=3<8miboLGaTHh5qa@Zfa+w`XDq8 zZ^I%2G}8o}N=j*1-SIT1j_XqFTidn2`)sUg1P3yTt1RBQ2&%E&8JVNSNM**m*ai|| z)0pBXo4*iaQLHYQUD|Xo)iaP3jTVQ(qv$G*Xtak=>XEKDt`YYUA z^;Sq@RPx)4$LCCCZl^7wQPNV1S#r>UyhA9yl`ns`UE(x`EgBLRulrk<*MaU-ybNjf;)@H{BH`PS!JE z6oYV4eb4NyMi!+~D5CH0_d!ATXc#ux~w;&RZ)bur8(A4dX7wy$=G$ z#`9-7Q_;{Yos6{v0)MzWV_se=I;*M38C!p)DS8J=0~SxXVmjj*g{FXf2-;|%cS;ro zi1y-Q3p>l`Gz{%<7UmFXa0j(@Fo5j}&UR}4coKT7cz|zc`1ER{RTDiIc!KlT=l<*; z5P&i_-na&PMNQY&YRi`1Td0O!xQlmVinaP8VsOwIUQTiCr>-sjV^t{?)a{*gfnKXF zmOPr=*w#E0#TTFQcXkdv_UvblqLwMh(KLy58^OCQ8r zEGJCeq^L|Ah(ts_MMWD4RU*(?bT&Jps7ZXJ$rL0fnF?telZ)BI#-F!sG=+GCN=*ji zUbk5k7M_xE=4wqA+@#2pF_7vZN$N7-KvPf*cpE20M#Hz`X)JX^nykDoM}Nm@P#}F{ zH3`r~ELV~Ue@3v@n5c5b!C}Vx36CQlO*Lp5zm(g`W4BkVa49Gv8d12;j?7|&Tt?Ka zZoBALvYZgdEd%jzP{pmNIN6);Zq7^e>|<>P^+2chJ|WP!G|uhg!LDYqjE^#M`lmG2YVFGF!R&tUi7zPQ%CYW z%^`t0*b3%A^F-nf7lLDTEL4FViuu73RjGV81If{hcHJCIYl3F*PYmhP|W-3fh zk=RSbjzXx3M(M32t|KewW4YWHqw~KxA1giKHfF->Oy-=|FSWdp?sw{cLOGt_?bJx% z{4I>x055@7Gf?XegiE0B$Mv$kmOR@(xzl41I zQdp@YhX46->(?r}O{Jc##g7hVHyEd!ReA5`_~@IZZ@>QF(vX@>SYn5*_F9qfO}>L+ zEA{^D5O4|IPq5==bDN+O@w%3}JjD|6GC7TY)$=}7eSNy&gdW$fHec>Ic)qDR)h~s` z_FgL9Y^W+VXg(j1vmm-bfME^c^c`&`KXZV=)L>?MmPnVKwceicQwnh$tbtjN7cs`S~d|h;BSqyUPu3YDz-UY!A zae9!nAV!-(*E}Hy*y9`NgsD>kFD^)Ib!==BY0#jhmeGVDy_oq7!}W|KVKi{M_7}w6 zK?T=U8X2#Q*Wms)mGe_mo!1$i8&i3d!JJcrWOU#vJH*|y-4uaGR3kXX19XZ zbUnZ$+F$FKNr{2ZH1hJih`D)t1Q4_KrMO{{aL|c_&cwOZ3#zvnm}ot&?7>UuF0kgE z8plNXpqiDSDWE&6F8(ZQWoDIAiLkx3c#p=7UVdUJl;zn)z^~d`riwkeT&u-RR1bB4*1C;G-? zc!}YdpA7-_m$Zz_9nRvM>>@+KDv=Jk#tOT)syyT-&!KPI{iO8N1Ybn0I)62|O*p#p z!d+dN)!0ivz?EY~>FTS+T6+t)@z6SnNO~J_%MYgN=GkyqOHtUpUvmB3=qtFTEKuHB z46{gwJz5a<2vH7NRh7wXKytYd5vV!Hv8FTv!pLZFr4Pm@k8yBax&5}z0Jdiv*}Ey! z*17fK4pnOc+p~VjM15q@F4l8T@Jcbm^>(^(8k6USe{er`gyiL0;&82u#PpvxZ)5Q#TxFt0%;mbGDzFIXQk}^h=NuS$f}CBx5#Uq^(isK@Nj1 zi}XErd;6brI%Mq*7xDC7dRG>st1NSL5KS4G z_sFDM?rSALZV+>>+y{Tc_9QW7BQXDN@}>70(_3lrATZSxL@z<+@p4e=!{xX51YU=4 z{9P|V#BNDAiw-#r^wpZ3rOlLoqqZ{)Xs(STAkm{TAHh-*n7b=lVhw`*y1x zvyvvVD(#%4pOjHE1G~~r(!if~aQ`RT=L}1afJD`Xwt^eJ0)5m!I9|rff_rv5Q=!-T z&{~S-T@Tl_Lk>Q%n7cb>%eZ$|uctqs(#$xR%6igFzdDk}6P02}aMFq~#(J(Pe{QKK zwEhu>*33uhqEK@c@3W=P3dza{FzEEa&*)`mR7yH?M&nLEtb~HA)#yvfc8?{{)J~1V zYgTEg(VfSLWI3F27nv&N8mKWGnZ-rwIoc`J`^`Yw>}CE#U#OrScJzmD!EyK!oz?zH zyY=ajRfk{Acs}6?#81bY9S4&6l1DJh>K_?xgd!QE4+qmEQ@OJs8}>~p5H4vi*_1Wb zxd`q{v6|D0V`Lv!rSM>$>}Eh{lO14+O@aRFo1USOU3vb2M)3EJYl51sy1xeQyOlOp z1HsZnS5*dx;yt!CGsk;$u=b^Dq(nd_jk|uvuExOJTi8;iqfWIofsK zT#(g#o%52El54TL*V{&>pvglyJDq-0C<=$4*6B+U{$`;^l1sNjGO_7a!otYCDPyXx=g)!^UwimB zhja4lQdCqE4ShHqS~)@R`>4+!6q3G+G?1~$a-CWCSb>|(*RQ6ZFoxufe|TdIY3!a4 z>!^uamo?xzSUnJ{RGQG2Vqnvv4*AFTe_ClrV|}pJ<%&&O5XED1Bu^YdsS+S=L#~G7 z-)w+P%z&4C2aVNUZX8K#&L%*70$DAQMlU6h=bM|i&q!nagMD(NtIUN-Z|XQQ6^8AVqNW7*!rW3<(xO7XqJkHnAv875V(ZOQ)WEC_I zb@9p^D-KtyhbPt7v6gi($Zqc}S(pt+VXS?u*^TUEseSKp(IwV;{Vl%nvCHMsUtKLk=U+XP9dQiozajhpthWhfP62FC_X}XAub)gkGW)_7&w?%uz+=2OX z>#^V5j*?Y(wUE6w21m+44m^dY(VNSHKJ{Ps= z+VIF+;FqAV39L5(g~JWAjme6}nxpfl1ofQXDR=cCb2fAHJ}!lr;*p?Lq#;zq#X1eT z8{3Ly6~b@q>o)ATn9il8-~C}!VYAmYUbYJlrqlu3<>gPYwfX*XZopicePnT@xc*cy zu2~rd4ueipW4Tmhl-0AF2}A0am?0E1i=7<31-U=qd(}=zU)MlbtDlUQFV9b>VS8{8 zNiyscm3Vhufch}fS0$89QbDILPQ>^l!G&4vx#Z=sN9Pqs+%;w8TDS0zn+76*q6d|3 zBsP?;*vIQ$DT<1{2k*l8tB}IY2IBU`fO1MyjjzBxE9ylbr5~+Vv8+z_@jP+nN&{i28s=;&$I?-Ne4y{ zdJZoQ)t7I-bACJ$&J$jkqb_t+;bqSmPO9Y!MIn%sSvofk&mM1|2cvZuA6tLDL}6Q1~t(pUUMO^v72|T}dy|mw;x8 zGVa~oKp>`~7bE%(si|Lm%$LT{pXM|4PgrW|C*ePmVnA z$f%j*waN9~BQ#>D+azA=w|u@^S^)YMd$qcG`GSUN)Y7@y_M9Ju=SbNfr9Pud7EE%`$QVzF=Y+XMbpMV!jg4pRbtTP zH7dEBy{c%IkEV+D$74d$ zm%AEoAHKoQmtc8%iIKaGSgc*C_Qjvz9?MX1^Dh(|SzKBB z3tRx#VffGP5;@shKRNCbA5Lb^N^Isx-r@4*`lN+OJT@HMgdMK++!l*F`N|E=usGw2 z^f9p?R<{vpOS`!+;X+A9e`eDK%VWPS8T^QY>1cY480S9~!#4hJEI{xdvT|P%3b+Df zI>oO5uH&qBRVQNdpK0yk!DVWiJk+u{*qbuuenJ=M59+>Ds7GtkDf9QaqW#?UC3 zF_1ON{ZWzs*NWNnLa9U?Oa%xzrYm9jguR-;;uFchA`U#WYjOH6tC*mqlcCS5DG9Vamay4%Wx5Rf`iy*K6*PtUL=F!{O_Q}NfUW>V3R`e{ zT17=ys^7CZVeED!!YTgok0b1vlRsYpby)-7PfvWthAt20=?gW&So%t9%)3`T~Q4`&*ZHmr;AT!or_ZaVt`T6y4V4o^R^R+3-aeD)eyd@VNX-1^8*cJ5EvV zLhHS>^>#W^-asHby-(+qx66R6`X$X;W4!smjpLWBrcF0&2H$LD4qj*wU=P~D=K1m2uK=F<4I-Ba$TAK zx(4&oB%o^Luj>2C6TP-N&l)jhLKyPZH#TZUv&5n+dRf}18I~~tls3GwlZN&;qj18} zMx3GP25V_AQB(Bq1)zEL6qjp&30KSQ*$>|A>TUV=Q-|gYa_YC4n6;3lFirbiD(o(S zAS(ig%h|^fiWzam>x1`JzP)WV+Ot2c4%ZofIsAYZo!_^aTiT$Yic=o}}-zk{FDoo5$J1+oAMPCyN#35YrShwv*dUuRfX@N0_2id|cSkI}@??kR; zRsHxYLSQWQ2P$S>eKf*`q5)CER02XjmL_`o^2wq3P0E_CkvML6Xskl5S!ZUc8+x^; ztKf{!Oi-?*V(HjtVJM|3#bWZL2cNGH&8QBGXE=7N?b2szFLQ0J7s`p77X{AGY2~8R zc=CUS)u0Eb&}o~3jvcW=nb31GR2DKe`|3^1YZ$fn7FU)K`2f+Zz* zG85?i0}k$)oM8_ORruw=_VW1Z8(3Xir$eTtEl>{~qE$N0`iYpB%k`I)Tj%v4Hj5bZ&~PFZy$-+Lcp%UD}yxp8-bj#zf&S z0uSQ}=NuMUYGwh%ARob8M(u(2XH@Y{dx^opuip2#aFtnNGZ?c7Z{Qz>vS%)XDfIU8 zTJ{`NO!i}i@ZqmdwBx=Pn%0Tp=mf>^VacnN&h<&ZWC+eWhWB;H7{2EE)ny((-q>8* zojA5ht|h}MfE&+1=}XrKJLB>bw7gq5wXc83cGp|Nv6NLg1R+evr=ES}BFx{R)cU8j z71&`^5`^87`ukVV?ol8@9HOxNd+w#P62Zqb;UBdAWh5|tq_c>zC+hcBZy;!?HMiCd z)m+HeOeXP(&P-Vpn*p8Lpb|TRfyi(L#6|93K#C2t;W7Oo)augR%5-3(3R7q>n(551 z$u<4?MFcXA;;rEs{fa6xp8*Bi47Q+5pa*@No9|+X=PXw-RpRtr?c1~S_9Bj4kw4!oQ8x8LzrEepunSZ%rfPBg-f$fSws>`ep? z{sNhAi*@_Pi3u2e_hmr`(ILBo1a)Fi92a)z$fx;}rphsA145N`UDn_WCZgE!n6D;3 znE40^)0pX=VU)N;joh( zkXCyp-}Gso@vCeE85PS1ZL$=-yx=X*rJh z-@LeJRzeZ66k07YyOa=I144;LG`U^xfqK}oQkC{D18JkdV~=2@BMEo+aIeFdUC;@` z)GRAiW57dMHRNLCYqf`ep&6A?#se2Zyr=cPa{@LUHLW{o4Hd^9QnN-Gs2i}=U1jGr zQO9Rq$l;atG>$vdAzJGI-U{!z4q&Zip#I*sHTG$aJ@7-W;NFZQ9J&Yx(Jj`-uMUg^ zqvT5VjgC}$8L|weV?@Nw1%YJLVx_FN75V}${-QcV9jjJujD40wp?!HS&D}9e$96hVo%e*4!#$%^r4=VjiOO!Mh{Mh^+!Cb$9D)ogFQqxH+D7 z^zqWzb%w{5IqU81+w|E2!M&{K3>(l_4ODNN^h4VCf!zbD?jzr&uJLaWEtA z404`~`b_h zbc4gtRmi&Enfr4s9k`iE(DFQXOVq&xe(8fcFpRYlbqWCsGFsO2RXiLbSYwmSIy6yZ zm2Z#NeB)2u!#)@qVa$f8iF)4iYo&D(sCdQH3pzq_t`Diov2SK@Z;3C%{5YAQNCh#<|3 zd(AxLGyd;taz0o#dYhmx3ATeXUQdIQar8ZtabCF#h8%2Hl-=sig6RFdJRv5u>%W$b zP^M|~U-3ftDWaztCn&&mVwK+3UuoYvlMTdW4314pdweZ0QRYO_AI+pQe68Q(^PHr` zsv+p#PD@gF6$}Berb6m@vLCFdoWS4T@yGWUL*_1;WVAO1&I<-E=2mKqvLK&-PV&hp zJsh_i7=})kOJ+W+VAp8rmf0Rh5c6cGnhmA8G_oZyx$w}$F&JLHh-xAZJhLVjN+$dK zl>VvZ*erJ-`pEoPPKSLDRP=9|wSkedLgFe-OY2rnQGxs~kwj)K0D85>Lg6L;xOv6xmKht&& z@$J`m=fDeo-=GUtWL)e0^lpdAwEOo&V;e!bYuppxpMO-AE*+r{je4ZRR^p9$*u=b? z+-Q)D`qM~zF!WAsKC8T;E6R9z(S&kGNqSm;jT#fgVU13Gv*T%DD=I0PVY%r`d=$Ug zo{{Epy7-+wmwkxXet2@lh^7wOfNgQ)B|lby4&@e+D0GCZ*QDm z*{hRdWr89>`$Ehgjo9!l@nZ7ZpWYT&CwToQEPJcJ9V$aNAg})O2_+s=`N-6|S==W%jX($?8zoJ$!g>`UngA z`1RDWyuY_!Ij7ji3+640Ih}qaw~qCc_Kd&>hZCh0uzU-_?h;v#*H7biL8q?lZuoxa zV^|%t|Hf~hdk4`|E54>GkT2d=ufne6n8J&3uI}12sw+JhJ(>gzy4i#AF&NKvn z1ps-?7yG=LHaU>C-#Zm+Y+6^bxDj^_vAa7*A=V>RRip|t*Uz!p;$mTd#HXJYK3bwg zAMV=j_ZHT7q0TQj#MR`80%eBk+d-Di?Wy2jDDvPNy$g%L<#|$jR%eqbzuVW<`O@@b z?UW7~4OL5iu)4Kblc74+byHTZ4R%GxbNW#$5GtWcR|QL&VI-iutY+h{y5;FZf`_(c z*M$#IJJPb@%@@G3sn76R7-}NIU$?ckUq7PD-4=297Z}c5hEeqVQf=Ma(Mlb0pLW0#jXvK!Cv14M%xO?8)Heq+7R7SNE1i_fYU&>LR%I?z?For-!! z{Hi|hQyan!NwvQV?{yZJy~R0^u_gX&4yxbK?88_sR2d53E_{xDi5UdN!1q zGw>H|iq{+0_6mNbt}erV|6C&dIkPRbxXiD(I|W=at-?20rnA1>h*0kElqcl2(|u*V zW)ryFXn<_BaKHjWKU`41#-b>O11?XOo-3;f9(i@2J^q<%t=01hGTN#zniimz39 zSPO2?^3&PeG(2~^y9-K3U@XxJWCsA_op}TEghDKilUHD~!toKVoj}(wtN!vOj=OU0 zf=vJ96k3w6cnrxq(u6x0>!((+$&b8Mdi-No!9$r3exa$ zUqKYB4=fGmbo(zVe$}Tz6Og|jCiGm3{RZ7M1*fRKh5M~O2_CF8L4?mH1?L$z%zT;y z-p*gUrwd#Ll=P<2Zz`MS{y0L(vmf1#!u^Phv=}?C(c3c^s39xXzPwvG>HlEvoSAjc zs;ncwq%~3mn`dmuFCm<5?(MbW|JC+@{7luI_QZn1v2HSM{uN+ahCVcvx9R>s6VQWJ z{1l${Z(S4!$SDNyIhzVZnB10nV9@Lbm-h!p`p>`$M`Ysds5O0b2NSMKP8|t?&6K6=~efB7kZBV z>Q=6wydvR4@eCd4zazCYVu`>#z5OSGNn-(`rj1(k{Czc><+L5MJEKe+&Q)za$w^7} z#gav6$5EV-;ss>i6vF(7dUIN9%hXug)QF1z7FUP4zgo%h&zh4mDU?A%BT)Nfm(fJn zqCXZw(ZSQ@T-gjNs#Rv`kwZ{4_@~cGT7xW%BKKO#N1FcK*kX#7CsGVhXg6E($3lUO zImu6otb&3_!omR`lTx4P(21 zfYLZ1{ge9I;6<5#0O4%ePy~3R$g38;c~e$*!CbKUOJNQIS@1`lYjO+4(W|{rfoJFIS;4&PnCnf*?G?HLII1`H3 zTKyh4lUQ;B1yC~_&h=VZj6(6z{{94wyY8|0XFs4U2kE#GC~kqlyG`NXU0B zzZmr(#s2}xYlZxaJfI*(&oDGO8OJI{&kJaj%@Zk`jX*~g>SzwoJ1*8v|IY-V!1$s6 zH{kjECmxvmy?dfJJXwpfng%k4ch&yyvQnL)c;SDEcmQ??io<4m=pUq{Bp#2vD9j`2 z&bJwI)i)E>5juf67ePARJGTDUgu~USdb$rMxnKOaZEdc?bgQZSR2pkJq^KE~UBz~i zs0;HSvb2bXEuuWPQS{Bk{`H?m7JOM&fn&#?8Z`f{(I;aiiht7rQ2)0v|NqOBg8$FD ze+5X+-GcF6YhOn2KmpxqW4UIL-tjR}TK?UFQ1t?Up{Uy*rl=(UG|v6}onH|22Pw4K zrZWR@>P%K5hvQiMH=w&aWj4f77A>dXW>)El?gnZk<|)m>0ZAz-=$NGiUF%QaL!=Gw zQ6P+d-J3cqydSF&NtMlpXz7Ufcc(C*X{Hwg6vJ2lHd_2le>Gu^=9ZUx6tG0sd*Sao4T;RqBo!rmp|Tf~xS` zTtqT#5qI&2hk-rEKhx&-4S##5^}lGHAU{veOoTq!IfCMA|_))YNaZv*U z($hf9$SCRBY=NCiHtUiv4qFKZP%2QyA14VIxsnDk;4F!W4LFfRnM{({H!BX>tM`@B zcj#|-Ql9GwlBa$%R0@~kN>Fd7^*&n;ih-UaDS5lT2gqkL6xt}{4d2lQqvB+`+5~ce zK7bG1y4MkTknm%!XZaZ|*z#su;|g%xDM|SYcoaT-=!{Q76$w`pg7Qc{epFD|y|@QV zVsd}_oHP;@jGEsTh)HCoGMQWA$L)b=e3cK$RNE1V)!R(=SE;y3U2+aV-6qE^A|qBA;`et#`L|kkf*@xy%m?kqgzekUb26q!aN?9NO)8%6cAf0 zd2{b;a%u^cOI8Y333e*Bmv?U8Q>P2zUR}{Y)E=$qvAsS;9T5u)i=`_e2KXiohaNpI?t%$1+rrBN z4)NRYlRV$9AUx{gOnM!2-1E?aFTC42?Awloegy?iFP9?2`(b12{Wj4FA7!|pE>v@z zK`}r%6qQL^Ur28=$l~*eJiptspL2}f8TKoH0zaLP4fD;6QJ@^qxrHSRk#H&~n!3{C z&PQM+N5sM5Mrd?WUUU_S^I|F({*(FW_@#uP*$p*z`RJ4rhRuohmhe7HVv=865%&@;y^E52@u!m6!-!~5<~(#Z<`|gaYF=BbMuJ&ZLs|+w z(A@7Ze}M#thak0U)y{^#b`P8XTN`x>u*ur&$rj_>H|NWchHbZ>|I>X19$lxKfW*0X zy81bS8+dGI@2qdP8pe!I34Yb2^EZ^hh@*mslV1;^CY^W-1iifyYa`j=RkvruhXxxi zvBc24A#Yup%!bdx9C1Ed9kHIg<+?3B8V9GcdjA@Ibs+f%4Qp18Q|R#wmcLkyCX}K~kHENEHxmuQ@lg{-y8#eW(I!g^npToC5OZCzHj2l`;`^>7F8`j}ec zM@*~4?!H_b{E5}`&VNHmu#@h7QfVuv2&v+FZkBCjWOrCqIElC8A_UFG9PCPu)CJfXAv`E6W zMpj!f;MT>W>p~#j0T0G2VCzSBf_E@>odKom{D;KYqvzCbn^Rjl%|3v{-ASbpC=@-% z_e${tR?!*Je8tC=nr;U~-jJzX|H{Q%g5l4;6!$W$4LdG54^Xj%Ew!O2+B z66(Uq4foBuj_`8lwdUtLo7bCp*IOL_*Ye}Gr`I~fh|;bS<)0Qb<^9w5nI8qzbaZ5H z?*unXXPO>Le4gHMIc$H__f2*HdO?X>hx1kYSDF}um_OaLk>6hJNicFxG<|~lM>;ze zdO-YJC8ItLNC=&ex*|cd77RDX$#mZRe>1@zLRx-A?@r+F4`Q&amlDHt+p+{&VobKX z7L?Q*uD$7ZCjL0%_rNg2C`cJ9%EcI+F{-u;TJbupfZUu`YBuWFz`rFz3D{zhMN4d* zEl{%gyB&dId(Q}x??0LTO?YFf(VsXM7r1?&9tUdpaxC|HGXpwIKoK&)Mn=uc+b6!qDZz|%OKMwR$M>9^PK@un z#2a>#P0t3X`5-SLs7T7|vUj1!PqR%?WkWXefQCpf^mA~xzRv`I1T>B?qfL*Rw9NJF z0w+ks;WYO_%Kab z4yygS%sa>|fN+SPE8b{0cA#<-W1xS4ZQNuM2^Jt4Ru< zVZV`8Kg2L}8Oa0H>y9lr^2wdeyYY1Lb?;+-C~qxsD2|e^5{fLO;US9f>y8Qx+*rzd zfe}1ekw4FwIQ*_VUYC2DFord7+a7!cY#xLSdtjgq>+jBe|0d@QweoX4^(ldO-(F*) z<=rlwpf6FKuQ_3DrZ9fK=I!mOuAa-|?Vr^2dgy&7D3QwZDY1S2ryPS&66kgKvZasd z15lx-^C#J&~D_QDhp`=AzqAkKQpA zYPe7|fHnPL_Dg!8wEwdIV00iW%+-_8J7G06VaU@XSkDaT1oYTWPX|M?AX&qpF_<`0 z&SGy>5b!b=C`@a&%&DAoyNjQAMu;FG|J#uprK9-l-uWueqo~2o zvi2>Fiv*`XC(0Jlyf<9?w(@ z{qPRm0`Zu8!yTT`Znnr=KeX z9(Vl*r1Ekz#_gsCrt%>%C|0OZW-J?m|CY;O~MBXP}{i|PQ zw0*IN63dcoCp(k@h~)L4yrfVBfw3%M?4QQU9ly<1BA#=qJ!B& z-TPWhH#x36R+Wrwm(Os2*~w9x+^Z+UDT&U&4Fv<_v;MFP=*8l?iq~HB?|o#9*evi3 zA!9nV8u}{;P!?k(RL(0Jjz-Th1S2Z2$!O!q!`*UF)>$_huu%PWbYLzdS83T zj{%vzbsz!+)#WGj)p-;~URuOdjBuIPfWiuYu`eHdyr+#%sh?#cqJ%B=MTl(!wq|_E z{TMIXecVKJPJcd~@*0k%cU60oat0uaZ^xcf7k#6nT|r$0puFDRmbL}n#=W6sw&!x` zP7i*j)geBTRalX*xB3`bfg{O9G8xNSGW~v(Y7N2FQf9R5Jc5=TsTKD9`nq}jw)9e|ot|L<@@7*&bTHUcT}OxOZO6y;@_Ej01$A&^r<{#%-J+nC~XMt6?Ys(dI+l z*K(J)2dwuD&mTg84NI>U3PsAyXQmPueq_Ab61o0oSfSGi;$8QAi6xVJ2CMNah=rbV z)+-_(VI1x(11Wy{oH*@Q$$ec}N8p5)cC1HVYG4iB4_Y^tGr*AK{jm$=s#n>Z<;Lao zZxpp&bq;i`dEDHGO`D0(>5;Ws7s9l*)2UAW+jOXECuri0LgMtt7x?j08z=DKPl`iOWj;v?{)r&Xz>l*X zN!!n{ucx?Eh&=-#t&Sd7hQxj$oIz{0!6#Xm8$iF+tC{tgyVZ^Vw_P_~mL(@V!Qdr&tKZ)&HUHEra6fwrEiZ1ef6M8XOvTCqQs_ z3-0djPH=a3cL`2#cWB(*o!3XcQ}5^fdGD^SuIk#mm&;yrjxoo6n+IDcNCjpR#0$WF zx@)jny}}{jX{>RB2m~*ByoGGDAz`r~n)7&|N4gK`LOGju{xz#qePw{?(ib`uJary9(|UCdvrHYrIr_fFEIX_^+~SY%=0uMFV24&T zPS9sZ@FehMh)ZBROPMuwBsX711{bX`grs zkU6KCHgdsa^m-9Hu8b#;qjm;9g%ZUFVJU`BocXHI% zc-q~9vjch)Tjzbhe*vEr@=9`i_>O_ba)ex`roD*iB~*2+4dm6OpDS0PWsPx0v-g!7 z1Ix9}P+g$;^vg;wmSKI%bPKSA5}{w0*4$%(Zl;LeaDgHE=~4NVEtPP=!nGKjH$9l) zll4Jdq=H2gHCf_Aeo)B7?@SF=`$II3_ ze0Z?ia*KA9@m08cDVONcA1}P4I5-nNp}!aFtPht@dj*;-1e2|{(d|Eu}legaKi@_Lw zc7e~}kv%l7!E-JqZXf*&4SmrI6s*n*p=EV8=S_PN^`NHM znERavpcl*Szw#r>w9d4U!T4QyR_V2ykGYod{AA# z>G+Z=Q4G4LE-oh*7enrIstjMoSFE1p(8+{{uN>dNaoH<>eN`=@>YZ}?*6ajd*WMjW zyLYmT(nJ(Er3KkeEmhOy>}EddODg7GN+VaMm>UWLK_8(fhR7kG4_s78sU2cS+2NC{mkp}o7 z?5i!OP{9!MccxT=93V`*F)PlXg!da0xm=0dxX&!ue3!=i4t_Br45f`XIS&iNx0B=0 zo^z~1?XPAc@~0+d4Gg(9tASwmScOMm>D$13ieJHKYE?~Ll~>330Ro|E^)58O#mEvz zG2Om1roS4lWynt@7ZTtM`w_*1JpRR!fKo}fN(bMb(izi^>J1}*<*At>G;F<-;gJXi zBLT|B{__PZPTavqQvx@`=h{9dxUGR)1%EnsV_G25^zA^jXvD&qt0W$=aeqa0>B8dHQ%Yx)M9V3871v& z_P70wYOV^V$zHTbr#!k)$LH!6}3fewk=z z+{MFr5`R&2zfKTc3cXryljF;P*PwQpEo5xPD|O>@&sCkbWd0Zk9 z&l?iKJ$%|A5VrK!iHV95hArm^w45yY4V<9SI>a!OquXmAaL$EyX2IXLT5F)?9Jpmq zHNuVC3wKt(gZ#)24-ZcW0^yAL=8sHH9$3gCl@CSJZVa85m0WAIhmBNe z2837&c4UlneY+CMfrC(0nT_`m3-wQA+%%L@4(C8HWzrYTNQN!F#(l*k@uX_FTIm*j zB=|XUbqITLtQpPL7B4CFr|Iy z{IoMCPhu)XX%^1+a?|bipQzD1F!SL@6?{M2WK&3K&(5>+?egb0oPPKCh@PH_Jf-t# zD6GiBKJ#wzM&HC10hO}N4@#YCp#|qNLij@QTjU!8w?ea_zrc~cKYvGD-2m+acp(kg z%<;c}tK=Kda`SGMjboJ!m;OcI<;-#>3wWwi`^E@~yiK&Bsp1jn;m+-PF;Fs=aweUC_k80T)3T}!`fS|u>M+Mwg-6@uv>sf(!s0g8SgvJ@5MRA3cF?wD zYqJd6+tYPhAw^631V|faKrmUyd;+l<r4y%qzbj>v^ z-I3iLkeeaMDa^rCzY;Bqy@{AqT<2 z)hXEiM;Oxu^CL$SiK?oVuT~fZx`boBt^GlrtPx>Xh-}&2T3&j1gphZ4gA)rFjA|6C zU5Spug@tF3=tb^z7=gWB7uNFzVDnPcI_lv|N^-lqEA4&qxepoROLY)ox=kUqrD9Rb zoiHtgHPe{t68GHY_a(1=ZK9z(S$T^lj)yg z?j&w#Y}6e1{tVpo125vbO5*P1g>f5#;Hc?y1e4J_IA0dCo7e1H^qp9rj;3=upQ;>$ zhj}R9i?v`%zbvD*ElyHY;k@yfOTsNuNfK&lfA1#C0WTq;({}QIEgUKo9CF^lh)`^OzJ(M`hK6dBvT zp`p+2g9+B%`^sWF_-08|d-dTDJ!5$7-n-dqw2`8g9&0$Tz;gtdag5F-v-|?C8+5R% zCR=r8$?NApaRU)?VLwUUmgYDJwcPKaF^SHnEIz*vMB#~A-LwP|ymt@07q#SjypHX6 z_^w{?Vg4XEVt3XEt~lF7>c@b{9gs2)uHVC;sR(uFJu=YjNO`Mo5jIwtT*@+H+$MWEnAgbPM=dxSyBO&hJ4VWkuUg=>+U!SmiImqLi zec9;*_Y=f7Te3Y%{E0bx2wgq-UVyB0%OzlsJ{i#+;(Qy%r1P0yX{f?JlD^}{mbr)w zm+h!AEp=*EYPz_9EkM)zv|-Su4CuNA*jm14!}PshjmEmuN@ML|zNjikDtw$});+zE zYjBew2k#e7T{I=G)7#)JUtZ=-Pgi62!>LDGv43WPRg2dDLC)SUC=;`W7?N4O6n~PbAK_>DD<8-Z%Gu{La#q~ zspdyJFc?!ZRYnDKk0)9?g-+TYMM`3TqvY~wXJk-lQFidL39(047dP7L#a4N{%=NSU z1gl0d#t9q5HHXk6yEQ|cBRh# zvk6X}lr;5yrO8y_`FZL1#%!3Ufwe6f&@C6+_h?S={k5BnjwNJ2BmJs(*`>vfG5?E1 zO?KzrLV|$?)e}2i!1*bEN!u7+Fg*A|BLUwE7sY2)-{dMPUDgp1cVhXj7u&jGkMeRE z{dRn|RqpeI_X79{v@LGed_n?z5$&9#5Ogxb;z7#7;xf3)2ZVduur*>5jQvvT)rlJt ze#GuDUtJW=BW{HnLyZr0Q~l2KVTj$<76~e9%t9^nF?kV=g2&@`zL$8HsGtm6qOZhh z%l(?d(wku^jTx;!uWnAwkP2=1uI#m?e{GklPvl&d_F9g78M<7bNSp^03Z;Ed#KgqZ zt~u@#ACfZJJwd(!1)4tMJ*lI)Y-y=&btQyaKD^eo+Gx%?2ABeGnk|~r5e+J?+XfxK zI8T+p%F7TtY<@u~lZB*z=&F)fv3P6W8q&<~k)m`eH)T6j%)iF#?W|i1&q|Vtz#NzR z#mv~M;z2$d2qu8B?P(OYfJois_S?l20hSYW9>l(AaV-YAUI5}gHdJG{?{*TT7K>?C zhTg~H>SAzUH^PrtlHIf6e|*2sd1c`a1iz6*d)VMPD`i^OA!py^b$aLnZh!HYAu)LL zY4m$gCjI^)_iecy(Oeb@o8|w3!%YF8I`I_Io5>iz3bqdj^e4V99B3di<5Xb2ZvZDTjIHM22cyzF^wz%DL z`aAwA3U4JmEIiV0kH3({s$KLY1i@UX#=5f*6qwwzMRq%=6vbOKcJ~f_EYIZ7@ebEl z<$oK25z3vPThV(3-rnod2^u&{-J-mRX zh`ZYUg-HV>Ue(n}a z&SidlEb4uam`!*A`EaUbvUZq*7oc=|V60mc-wsXkj*s)QfRdPP`|V6+ZWHUqBV1C> zr$1H22)kb^%6Aq5s|eisrH1@$e8BRA_Njv8IP&WNO~=;dad>1TMhFO?Xe|r1ltS%c zRSk;BGiv<``$~$E;)9C-g<->B@kP%U<1_0LVD$DS^@dj$cbaf>WF0xy4`?-%(jnz! zeb+&m13spuWxX0V$T$<}X1k)n-2;eaSXjo89(%o;?@Ik0v>Y4mq$BksN1;?&r?*vD z`@|iAz7y8LdOSu+ji!>~T$$ATLv9QB45yoEVsEh>ot*N3lJZXHpFI_CVoLm-`L{)t zsj`rsl5CY>NEc&=XVagFZY`Jj$_=^|y8p;!+ z3U!CmWA7w~c~KKvsD;rY^6`=r`>eYXzIlPXyZ0-YWS6Rs)HhJIUyAY4JCgABw&HoH ziM-TTU?=8nJnt#zZ|56TO(!cpbSSiR(#riV|Htiw>dnoK`;`z+rG>Tg25Cxo?7D>P znoBGD!dB@d+3h^ZL*|6YM(!-gRn4Z73E~3%SwvwhwDYyeZAyxyA4UqzCGs zzIKMgund~qGh<>3T`u!BjgBFuIo-yNYeILHRegy`ec86IiEUG3b;Aixul8T-3@qgl z;0o2WJkj0Te(CZKhqGcpWIvQ07)mZ2VI7MyJO!O|yADlyeAQ!Hen!q+iltq~XwE+9 z|8i}wV9@RqkUHZ1R_zf~=Wm=+Be&9=J+T;gw6LoE&@o~EOQQqr3^<@IxZRsewece? zY&%fJ9a7+8QpDnG@w&hdK9?^_!+CcdRcTPd^Tx^;y~ z5&P?ZO;TOm>^I=R(&$QiapDv5Y2cWemYuta;7V|SOq|CXkQ~{xPW!d0)DCyP_W>HOK5PiYwx~&_goKfH z`V-3X9zLy$mmHjat5a$#?G)iXEOGJnn_gZy z0zVbAiNL!k(JWx7*zvS8UjX0#bl4I0R$X3hTy(=1I$`&YZ{?(7as?h1fQOo@cUW@k z*cCqVoIVX0fJ=V>0%uMm*v+DpN=U}5hDJ@LCU1c585(Lk@Jo5##Ew8BB_1WV)8AE9 zhz-RuhAZXHncUtX9HtZfld{nT?}2-Jd-3;&IoQz$JSYq0LvPQf>_m)Oe>2cN!<(F~ z`Irc&-=+3Wy!SABro%$H5%!w&kwIhRdrBtn$k>8fr+SR=)TO|{x7YLNiqzx>n>$4B zk0FZ|l_n9imoC@}^Xa^i2tsl~h>L{?;j2}#KFr5XX zoC(;)DHIG}ucTv8SB-vrI|EHZ&~F8K`9D1=j0fR=q!ynp+QRf?8Oxu%!CHFh)|gY> z&CARbws-QGbDsE{V)dlZZ_{y=-Y&y@Y;$F#hjX0<#FRGCJt%ZV4!$w}LV~j9)+C^2 zi!qz0kSk*g5~V~_+yM$n8^XK@hN@@pQz;Op1!LpF zwva`m;1UZmNiJ^DGFqW|9GZC!c9r!Lq|u40>%*=~Nn@r5HnNkQ&x2fN0(>PuSNtfh zGwGiL9Kb3Ppb}|z+1NrFlx$b!kAH5Bvq4URuz@D|06)!L?UTy`b}z(^P`v3P<9vFr zp7Ff$2NSO+e&MELGelLhh!}6db3j0Bz66t8iC6_7xeR!AVALwQAhKw8bC9z}^Qtp9 zILkHWHw!B2@QGfhZDHe%Pj_%5`9_+`IOoM!$O8u=DDpC3cZ}=k zC5p6l3O`~=Vrq=^yZcHsQ%cScs}Qy4+4z630NGoiRX;c}e2s!NqXsC33#@@eGODCJ z^|nQ7;s}@%Fem(>(>p=Nf}Z9Ajz+2|Dad<)tLDVFt0|m{w+!E0_Xvu~F+=n=T*sd- z$-L%EkQ=g3jeO2mzvmkPNhUq{ix$0VE)Kk(?tQ5aa(foziPFuoa!AR`W#{lE#hY=C%vn}V zfQgFMy!pb8pC+<|a2e3{$|;V6brCL73r6{~EXJo+L0N(ACR4!5a=mr|PFuy9zP!xi zUP^+rc3$*FnzPa4v*(fE&f5Y$Bdnf)nm$pN#hg@h8vKPMIX3ps7Dznj=lh7)r7}kx zC%0DPs>SCq+e3@4$s6si^!{2b@vE_Gw5QkSdV`I0MW8W7|519<*zvnt4bNtYXYWEq zoAXDdsI)Y^m9@ofav0vpi5u;)yf$yYE_QF6Y4*V`GUmMb+RlScSGv+^4)`szk7@R* zH&x7a@?6KvpX%(AX|3hm1N~T*OE~itteJ&{rFbzT?X&c}X2|}9+rq?#+PK+f9Gm87 z63_!FjH*oZt;`G$6Y`E}jbkYl+1y^x4=uzzIgYo;>po&Ct)JpQB1`e@tC{F%6nMBd zZgw>zTAa&|n_UHhizosEv-Rz!(SDuYX}3DTYT;=S)+!ZPSZQh7oD5uhH9ApzFEiEX zb|66ew2DnOuPLfNSELpnVllnUO8?D4*G^ns?W7F3nJW)0PXy z9X_d~(Q9R?%@RpCaV{(WOcq`bw6eC2kdWF%8U`57(+=h-_n8e^S>f96TOcjfEKS^^ z;;~!#$yiSgpzN@(EUP>2pDbv;BBaJ%^EmeI+tPoseD|I27va3EiF0{&DiT9bV@xl( zQY}C6kZRGAd)0!+U37&W=o*u)>MO9uBXqFQrHKl77PT22xNdYC2`@}2dAg}Mg0nyo z4(mt(t==fxct>}o$o8STI5;nGTHR5<_Qs6beBQZflNoOQQ+U5-&-0iPUJO;IfSm!ewJE zFE4-VW{#2|x<3H*|6Fko;-6KO9Mt6+Iljk>i}_ju2rKJKh0R{EkVI8DD{CvWWqH~8 z!HwZJoZ7Z3tz?iXa(Q)ml$qh<;R5)*BVSfsi(@CJrc)WX@oizA*ABhmo!-6^&{76t zKV>mrih`13`)k7V^oNwJ$$ILHN@X!EE~}Yffw)wn6m3*7@6GM)ziPKsgQeV!YWvlh z&1%^%1QE~Bz`(z6_Quvb{^DR2*Yg$HeSWy3yMxq5DILH6gm>=T6sMBDZ zdGlLv(T=Tm6ud$_q#}tZb8tH>{hqEo$*8e$(bmGX(Mbp1V=_vi{Bg`B)wh@C7#=m#I=(KC4lU%3s-d4F=@5_?Xuz zi#!0aNah;^8ftRo)${AC-b33e@U-S?4MbQz=NCLSK!xmi+I3)0#>8~p^IUx;VHD;@ z%qMPnuwDD+O#H}Ak_9!h`E1K-jJ1_ljD#)Yjw%HLm)l-US@9Kj@@l6q1MAqe)4Agu zCy4Vvm9r4^0J{AF14o7Hm945^64^Knxi>}%VS`Rs_lWNfIRxdsRF zud)U~xam>J{`OHx=i*Q9xx`2-~5>wb3)TMRxZt}JnF&%X~pB#HbP7U{#gd4X|%5|;O%Wy zFIYLOeSWzZ#r^qNo%Zy>^X29K6gyhHTk0*_yCn8%jmVTU%e`856?0)}sE)!qqcJ~J z3oGR5Zg_MwA_Vc&X1!kb%YSuBc0Tl3argTs`Tq3veW9&b)pKs6LH$P)#Cb=SH%D_l zyB!~qJ{B}1{!10Q&-dA_{YQM`HTnN{L-?O$g~L2Z{xuB${SVQuxc{kU+UpAv}z zBl-WxRHaz|%T;(D9`+wD7s*NR|Gml6omOmv;(NP%)`sfE5FPq{N*_Fhe}YeUd-D*w z51?Hl5gfg{fg$2anPB>&aha1Boz&Ui7beMgyB?TOHhwSpn+uz5gQULT>iX|y8t~2o z$@>Ti>2P>_yj^y(UnBZ(`Q*vK(_X`@F!Ryr~WJa;7}=ZyZqHAPZ=yhD9EI@F%v7M0QA zYYQ!Xl5RwB%l5;h*c_4FHS3$gm+l(Z-1)z^W_bGCpZ?zBkI1 zo3ps@P4!MLxE4srEZ=2RB2;C6Xmq+SY^b4#zN`jx%5VWg7E3q!N$HLw_evaUn@ogE0N7PaFU_{ zdf`p{E)bZx3@=H&eQ?V5Wq4{{lZ{NDOx1V=q1p(mgU~^+z|o~~Y=O`bWuvm2-x*8w z`Ila#sz^gc^$|_4sXRU`2H`Imo6E9KFJfkI;tf`Vzup%1ZRl;(9;Pa_@7V;7a}!S$x^^^*{BcdVj|o2I|rP$jg4mk8}9k*kjee&)6cy=JNXu%zv{HcXZWC{GE0W z^_VOtJ6J8|!`d7-4+i55Kqul{WgGz@!_%{i!PE5Na_cetLC+^RXd9K$_2DP!&#rOb zHAfkDo5B~D2E^4nlJO`;`@z)^Zd|)6#Mg6#EIW~zcVO1qSrR4lsR*UBk~fgvvGv7I z7^t4FW(f+Y&6`Pr`XBVvYQH58+R4b$Z!)`zXTmUtV@~V`ioY@R=G8oECt1+z??(cA z3fzw;e#O+L=?r!6{m9GcO<4sS;@vh7eYgmNp$NDNWq@p0K<@5 z#;#=ZxPYm6^SSaNPpbb6V4z0U*ICEINq}uH^uH>bdQ@X?y-_}UgNVzjKOjxwboziT zhltzPal2V!`e?&@CtqZggzVWKB(@Cyds#eY5>ZiT& zl>p{%zwE*RWw+6e_4Fn!th#)rD2tcL!_)YJvJmAykx-W1T0)(j61q*0P4#{JzQjsL z@X28M&MW-dhdW=biiBG-R&iHoYeWs^rkx86@5kCJ+qTxOmjHTxD!u0#fe3p*Qj-{ePHG%%}wz7iQgbzh`%46a&0Ty^;zw7ngNOsR8Vmc-w? zu&9#6W~qilJm~S9lEs39NUVmWl`^e6nSk>R4Ua>DnSm8D2Pt;GGJc$|GD@msV!G_k z`G>x16Z@?F!=7>N!=Jy^M@`xe4u2MVUy?hn)cU~V9qF&V>a4JsrUUJ@yKcG)H z%(w+~v`C;4Fr}w4dSF7Y_n`KIVzvNP@XlN~90tFt?TN#mjeuIF_@v*UMvX!H9mt^i zkv*o8U>qDtv_VJ4Mu0Zyqk%wXoNMx(hMgGlB) zB!uq4Cq=ON)sZf3H5xkNkv0+^FLb9p#(Guo?yIS=X>5V5<5zuBG7}tIZ;VOGoRuic z62DBnWpqrrVk0#ZSzkg%yxZoI{N&qBm)v|2o&U~=T-ofh_&7TRKLs+qa(e=?wU5j= zH+ZcgRCa3=dvOf^%Sp=8bh5zqF2~f`6Ey_CF@P=eW<`E{+7VnRagv4UXf%VA#Jrg8 z(cS)f|7v>NU?jGH7ZV8}1#l^e0Twb(Hc$+1wsNhq-BnXP1+Y8->s;5q#$gGS(FQ#{o_Uk)zD=aEZ!8NY342`9%x4MVIWw#n>4Bs`|U9E>| zO6A0B@DCe*=zQBL7zD5KN_q0RUVFRMb4;t>0!7X5uyNww~FKyfYib-_#gSX0qe2^l-V4#3I9ejij9mcflnUG{zV8Thk?j_*<)wl z)~dE@EttaZv?UFkGhxM-Uk><+z*#ER#Z#`B$%ec|;Bv2Du_}P)3O>`2g0ND5V4wo4 z19D9V1>4SHpk^f{p|vOD5*43ZRxyVl2himx7R})$OaXuy z;WD3gx7W>7{z@0|f?~Tz=^AqF6dx(x$yt?C^W|C+CCbh|vTWp~QbMCq7gg_+F{2tj zHQu5o!-qS3KoSy{``(@|P&>ck||T|yo(0D_C4&FtGAGH z%1WnluZ6NIn0qnqIW*Q}{BLObjjS==$GNg#fXmx>8Bk_=-9K9dV!4AiIe1QX_ZUy` zv%A~L#z3isPJO94c`0;Gbt^Jr!o^y(tmHHqS2sJ znhdWCf~DmtTn^RC1t>6S+bJ{{gLdagdQwjE_qqH*5p|94Pk<}M8{ z26X(g6IpN9LiXs#Q=e%4m4GyaTniLl~MHZlAC#6uDG1-jGEM;@H+<8o{89?5|YH3GBfWPcn89N(nBj2P6O0 ztW=*!1t3@a&$KHzg0%&^)!Jh^lv9@iXL!TXd!kGlxKoXkRyb-OfwAw0T8D}J161;9uTazA-u)fB`SZuKz zG6*hV?xUCev?1hD&#(P{I3!~!jlO5Vk_Ps*`C_V8KaUZ*#aHgm-wcx=YUuj+M-<-L z67OtUh6Iv+;J!?Yf4SM|u85YJC%T`4>6dxxQC4#q_l^IYTy|v369m(9QuK~rLr}xV z^r?L_uR+Hs(2H5^XnVx*q&}e_YrKOS&v%ZV9QUXrYfVL zItzLW4Iqp5V^cOR6MV>x^j~Py{O>BH)~6f;7$3eImoa8G)qSZ#nz-l`3yt&n-D3}mnX9)Lv}E}j z=!-!VHO_xjt)mI91eZ*)mnwFcy>I(uxEr|y%Vzeq9mZGG{N8=x4FFp_qTBCGSNj%^r1saG@>8lQ*wGTJ z-_zLY8FhmVoJ5aEckXf@yt2)W_@*f+Fc~Z$rHY_97)?jVO8Ch_chH)`APceyE~5>g z8gPJf7;I_e=h~AXr)nBRu?m)OXcE>y3`(~Jk^kj`U;<`;L@59S>LGmU0B=P-Ivj|Y zM?eV2)2MRI2;ya-ht4bw z#}qcmy{=h~*U{Q`u66(X!K%C7UoVGz^9P{hzA}urjL!kzx<{9SL3QtH%zrMGPHQ%A zT`Xk2@f@QsE@+o-3Pc?H)7(a7y-m;b@XzygMorGi*&9{vtNI z(Hv=s_XmOzj>rKa$bvH52D=j=6m?2xFzl4g_pY=Pb5c~yEj?Wxo0_Ycakr4k)mYU} z+U>az6y4%DGNDU`(kpvf$&BG?;|2_=h~iz%ZMHXzwcQf*6 z>)0#cP8Ss=ReMq5f3ck?F)N2=Ak4RRO%bo+Ywpo`D*dmOZUK#UvA*WA)q z#%Pn^u}+NPEjaywtF^a^P;&e#M!QVdbS!AZ)*1~v^2DtvJUcIK9tjm41=;%j0}yDeYkAm^d5BDJ3zRXk5pb463UVZFFK&249&U4!H2s+mQA^Nbjc$iSpU&lZB00_3PRU^ADVJM`TNn*=?(Jf z;<2Y0ZIbC?Ft}?uwzQp9u3fPWv{o8y&qkm97^kb-slu??gn-Fb8@VqLf$3ac~$8zWV5>uL$R>gtJ4exY6Md(r9a*uB*DS#U1vO5v%A z#rqqNar)%;j0+`jkKDcaqIYv!1Nhj-viKgg3HQ}y0zGr>1H-fBaKmjyQEbdb=%;5L zXqs{<<+%_a4lt+=9wbwn#+tTl|HM9#cy{Fn>hH71r8Ve;g)L8R>ge5!Rik#vxBU8% z64BzFyJlu`Lt&txceB~s=cCDyHwW0o=J>NeWGJ!nSJVqvTJ}15vGI;@98ZKVa?H#l z+K5uG-u%@i+1G9NORNka7S-EK>QhbPcIm{fTkkRad8I1(0R#@qghlr5%?DO2Yy8K& zWT6lk0J?ZK!g}?$!l`l&##b7~v-lEHbP?K$&X+=}4!fS=%@^t^KBJ$T2l@nDNdl8u zs|X=zKn&OuxOQBgIx@0m9HE6AMA%3eCNs%7Tm_5F8Rd3Q?nZMDCn$MKIJK#+NPO-a zz?iBv^~YoC@BX8OuJyWoZo?gm=9sfgUU~K1qf&;3d}|b=n3%IO?Vl=%6`gJPAES#2 zM)jfw1>#0(8{az*d=664msRFn6gJciO%MI7DOB(p8b-#!@jydMxmNQxGgai7Rjqwx zC&Pa#b^(fZQV1sbw}<5@?Xb4CR{wRe#(bk(rKy=GD}FQqA_o)$i+ip6J)+rq%-3nW ztC%xR^WIcsmh{U>he*>=XczRe)m%zY_Z7bPm-fZ~TA4r=-?9+rg}9Uw=uZzvmZfSP zBf)8a6&&!Vu|{idt{);^Kdc8gc3|(HC|{Y^wV;`vj!nJ})NYfyAcg;$^NLRP2xmzd zV{!efq7g4AeREn&r;JaV&pWYM5CnjeW~>JwolQ;p(B0Vj>s!V!0f$5o_{iONQ#%9{ z&|b$y<-caZ0RmN1B^PO_sS*9r3|o6@hVG{(ReCK$mb4#JBh)@sr$!%Mt#*WyvMThn zj+e}Z6bbnd@@h{%aQ;(_peLS+6hY0s7NwFf90tPhAiWV z>i=3P-=Y^R|7Uiz|1571i~jc-3i=9*|9{&E`F~P+V{cXu=3BY?`?kIPLnDw&Wad|S ztj#~&;5{alM=T&fBn=OLro71N=v6!UI-UEkivjQL+zJW=Fl22u51N(opOsQbnSlRq z^Hcv~N(VU}wEzC4`1AlrZn4rWIbSj-em~cSimtMDo1Sd0P6zoi{{6H9qOXbGwv-J6 za*I=W1N-S2;Vf{{B)7gUndu*iYS%pIbKJS*p>(A~hIx$)XVf2z7M}yNvjNca(Wm)b z|IPFp+f{BmGa?@Ap5lR?^Qy=T$zQK219i$h=%aYWm!u z&6z6JMf;T3Tj356JO5~hj{Fo&qvYOEY}#@NQRIULz6t*gcwF)vxJTjJ8fbH2*7 zUGMrW3eNaFmzJxv*Op-TpXhJexepdB(Paj>|5Aj znv+(_bZ4O>jFvMrML(X4)&jMbp0rG!_MG(s;Etm`^>ySP`y_{_Vqi=-7UB!+0r<027y|lu+HoQa-Q#LevC%v zpf70*lKo+wSu4zP3GE(Z5TE85vvfd!CZMtRqPcza`n?VR1y?>bJo}r_H?WBxDGZL_ z0K_Y_DB^F%9&_=d&(tNUqX$x9;U+F-jG6s3_WQHO4B972P$EZAmgho?J?`-^%#Uqs;BuO%@4~cPrjkw>L{GhYn;gR1& z|Dqdv+?ESC2Ux7g_k97;60C^%8V^@tseBP5+08s&N`+f=_SGj9EW9o#9iMlj>>rvc zwE? z9c6FG^snq#AIo4J=2SInGR4#s!nZ8|;1K_kLX{ECJq=N1I2voqjXK!;M#OL=XRqyx zbAc=K@(!^^bjALw%OUw>^;VlzcR#%+z`#|k0Ea7AXILTxS+y*NQ8ues+=5)+PIP#m zG)v5NRF@&JZ)P2<_Z#zLRj?HpN*Uk>PgAzGHwBhFV7#Dxb>yozS9=YEBjQ&P;r?*f zHW#qCNyXwGDg8t!=L)cb-|!gwM;45Z(I2HohSp2Jv=%Fr)sz))?^{@(?x?7pIMYkF zA=P<$T&mO%j%do6wXGp@z!Bh8&+{ zZYY3W`!C^Dg!4?9Po@4kki>+E=KaRqPo42|Llx@RWYnTEZi(pzQfU(B_Dj}utk|?= ziBS3BCsR!|qcg`-O2A6}5g3m92C7+at=6Au5BT*cj;U zr8C$@BJ%R_HS?b>}AuYHRmg zDO|3wUg86&z>}e#D8IO^hYT%7rFV0-q#;|Om7H3Xy7e_mpjP#izj|~MzJPJ=rk;${ z2~#x&QPG(qpdPS~pYjY2*LM-AKXM+o5U?c-S;)Z`UcV!S8>oZ>U`dBpcz3IKf()52 zE7fVX;Jk&^=wJYtyJz^#d&C6jcyf6Ig?B`Zy_$U)U+;ml2$`>UXeY+Rc%YX8(-N@| zrxQL^FAF~*2-rX4Z2`OvNSjmn`wgwb?pCx|jhEL;e0mNti#a5LZ?)OnLN*r?K~ru4 zKslJ^&*k(o-qw^(A$~!AEvcSCz3tE*HciMvuqLj`<=p*rJ>L)nT)&^?yVD=MP_cR= z<#*dv-2ID@5*j`2@gDo~0bb+U)SOZey&ZqG&pfcOPMX%#dk&>>6Gd<^VYscC+o1d1 zovyVBvFUvFHK}2)pbN!cd4UWk7J>emEzR~vrzT&Z5h?x*k6#DyJ|MK`e2p} z8A}TAS65>sXX@FtT++NIv}{gxwEiPM@6XSwT}R+MGJmMP@NlqTP402Fk?8$GF+BB? zf^@X#LJJX}=bk+j3p3^uoQET6Seo~~yceF+qc`JQ{svB3!O*B>cdUaYb2zX2L`)Ybc*+OF-p zHnG9e7IJo#)kHH1Wb()_$vp5k-`})%HbqnP`!yvthbH!L4eWj}f&XZJU}sD&S^P-$ zG>%rje8%&of5!aW%0u|g=2*1@89EL}Nv~so_r;2DEKkR?jmZau=E&aDVsx|`GjUO2 z%g1L;B+ikFAs9DRSL8&Lpv5_}(z0@9lW<99R^%GSLq~v5oUuD*2?b@JS{H|brWrt8 zQ5V+J{fttQ@rs6-|HtDRG8E|m?eR!ByVKWiY3*JH0y{s*WY-))Ri*<^qdN0>-VAS* zHbGXgRv^|-0r2E)k_jlSTq4}Ne1X9%)TQuTO3_xLzCu>E%c;+Nygk2N@8K58M!AAD zu}FmZ5xf=)^TXCfZIsKWIIXs<4nas<-jH=vZj9?e1^49lX0y7_I*%tT3Q2}Lw-)Js znX%1*YFgR6$iZj|wownBN7W9Wsx{xB#H#W|n*JwqyZU%CpPukI{^Bo-vn+ye#s{l| ziS_d{SofG=?O7`C?6GPgdpgamA-vC(XN^rYIYd(8M)!0F+bai4VlG^k!=J9mN zB7Rxfi{V*r$$*03CVL7h#o4(reROX6Jyj3fjk704X2_E8C_R@9xi>_y1tmwX(XY|q z<^=7&HiETsX@8{16wBb-=cDvzH27_zaXwal6SgsWWh28;?2gKE?w~y{Llq>HdDwh^kWX$cz=D5ucG?Mnu_3daFjjzuF#K zDFLeQ;{t!ZfrSnKJ!tfx!`=ynI%{BERH*x z*?u|9z*;6cUGiSUBekRU1^+JA!GK#cc)*^hbw+)JqB@F#q1$G@G5zE-TjtbV6sNR6O$*^v$w9T8@zwj}$Ps_y5hHEVfYb2rGzHVbbx zU{JGoFy47`+yUNt0!06eo_l6T&S(M!1)7L9POZ6N0F~c3Q>BLx`k(+a8dnz6{Es8b zarO^A$?sLIWz9KiiAADR3CH0T`SsjG342F!Rxan>TXEY(F{<>WWE2uXnfSap`&j<4%@#Vm@xe$UV8edBgR=^ zAUG;u*Vt)+z_}NK5f<5{-{m|K>boh56Pb`FzW8ArKR86zb0AG$stk(^`Jm0?3+AXc zEqv96rbl^_Kgo?O?{5hE6R5-4LgPa|?+R%w+Hw6*Jq2CK1sxO%s-ig$j6*1|0D z)2i}jpc}|E9=4yZVq`>AW_e(jchQ#$FK)w}6E6v=| zd;0jMT_G~u7+A|uKE2zaF>z5#7}dQoxdT}_R@x&=Fv^0kBrNSrOW-!erM0uvP< z?~!c?K2PQpoZ5?>`3BTCj3W|A+=)qlR-kEbq+?fBa^Xo<5do-Hn$8ggG6W;`kU)o+ za}(}W_reIY+b&h5E3b^TrddCAJBj^9|Gqx~ zg0dcD@5!f(1V<5n5bWRk7i8ID!coXstZ4Ls@rYIJ1)z2 zOkR*Xn9}9&)b_rD&=guKD>EkC3kf3Ph*z9dw-OTz=^4rfZ4teten6f+JBV#Tm=`C< zzrYaIuIPGndL41bp;HUbfxX8uOqKnxhMI93E@a@h?r1pdB)?=o*jC>RTtbEui>JeJ zcHN$}qBs;36aNT!4MzHt#z9_ZMKMP`^^diKN`e!lh!zTBVri@-IWIJvp{a(malGkY z(H#umo}V4n7Kv*s4hKB%N(ATs9-(-~y?jS*)U0lPx%~X1jV=N9ORD;*ZJi)EI5RisNo84J|Vx?F{1_T^>v~!S%9U{T9-?459)Bhs;9c;{U}U1P`CEvQp=}9 z&`j>V%Z7t1jVQPk$WpR_<*LU&T?kKr#Sc>jI9zpPNonf-;uPFq?i7*kUboli5Ht!m z|7@SwTd5=b^jQFbc5Lr1C6cla=}p{fDA&Oo&{PL}7m)bSYRCB!kT@ON)Jm{Ae>rGP z2or4SB&zcP7h7q`2(-1LTmBJWJR>8Y=#{Fh-u~t#b?+dhY<#DBMi`DtYh)}(TpG!w zu{O;m63&8vi!woE#r-%XS;8MKj5!pMBS@Ujgz?Y}_#<||J40*|ex-<5&@b7@#cqV) zlak-QGAZ&=RYCjo;C5KBUiV>V&RLg6S&gQyV*${b@vd9R3Y?&p>uNv^?dfra;mg!A(FZ0jY=is*TH~7x*L!3;kosh1iN+{dGEGp|)&2)KB3F`8}c6hZxS^_3a$r z0rRs1ZjTOLz30L<^bDUUrDz>y6(2CAp`8Gnu25jnv(Wh0CYV}vr$YXF_;@P0F$#T-ZlmvtUteD{m1*bf0gFUnpfc_A zi%VLGY;}N!W>oQatDbG{-p@RK8=8L?tT7x$TiMM*uUIRFoYN{MN_@Fb>w6QNmWLqTf zt92ef!XQwK_6K`&$_)pHz$H3LHMM(Ct%+sc+a+L&sr0Hpe>4#A?Pzr%Kf&`9ZtP}D za~Vp7_PfgsCkR%uJnvVo?h~@?$)cCnr2KSCVTMzGrj*vxGsHQV;H0FbLBlOCEgn{F zqlv>Hzw$W9jpyB0K|o!Og$W;a`Xx77@~3Li`eP4+6r&N2K&p=%@h3*I>e`$MGBjLI ziZo9R^#Y9$k%(|+Hw?%P8L`S|Yi_&ufK z?LGxA`?ch&y|71YaDHEu1p{A^`33~tJC*WhLj<6M7MEus6{D@M6CdG64Z9%+Y z()FyhvM8_*MeCE6b+F{(G~nYW!Bp`^?Ys)AwY3w(-+c~xQG#}~T1!Hj zvNxUco*zn$#0$FB;|o= z^%g2da^EasCcnHo-=3|VT!?zF3&f_*y`2td-{d&t=M}UW$S5Xf?;s>)UG@V-!?aUd!B~}JgZ|7~!XAmlo^9;t6{dQ*p|NXH9yoNh! zZYMF^efq52)$nwCH+x{Qd%YJT7ZXnoMNnK0)9ZH;opE$hv7Ti+6veEu%%W_DF+Zeb z=r|Ui1IECE>IQF8(@r~)S7o-EZm~H);0qftt9-VX0h~6JE%cI^RzZu*#Y6M7{NT&w zU0PgtbO@I$!w#q?H1Z-nY35E570nS!4A3nZ$bFBNrY2Er9EfhLi}Z;A6nUVaqw~Q-uic|MvLJi|5@6qvNY&ir^mo6gf-d1tHC@ zr5V<%E}J0j;-y6luHB`|{1sOYe%132t!Hu*b}jjyYw}b`z>!Mv6+Y2`O$%r;B9mVT zDje6O@kOe|`oxtZgmgnEeoJzoileo>lwd}sO+qahMaz@^yIHl4$pIgzWkIn0MuNw9 zxm?1tGrQ(&D38T;CNy9ux3O1Se4)PW3Kvkt{Y7N*2$joQHP_U?I=c)E*h*&(hB=}R z-moJlmsQc&H)ran&!2Cu|NA$$y+!07o*MptuW+Fh8;C$e;hdyKej?zIm;jHfq zYVEDf>M8%E^F2Kh=MtvpirPIhBTiElK`MM(K=3t7c6aF1S3_R%mjSk*9_%Z;)kDkc zxQ}v@NY@B;cCa#X6tTp^pJ3;5h!2*=fd+4zLjTMwkeJeVXZfih>v zJlW~Z)gMwCs;x4yV4hJ%2Xz;7Qp}18EnRe910!Pn2iH|L%Ra*m#ydCbD|`EBmU5mn zLmj{b#X%n?S*rIyG7z{>kFNn03fY?KMAFYhhbzP+fURWH3M7~wdUOMvExYtXqMc*# zRAT{G3Z&nj4D*~H(ABvZJW8E-uHKOyJ6tWBT;_Txh(AAK=Uy6eo}XLZ2hE`ez1eaZ zx{Geliv?SPS?+_Z)#7OA+SjUdF&SF#roS<(@7J5OXXqseYAJ6TDOmpLSgT36)F4k$ z)k+LRU9?FL3On2HDYH&IBd*>Y5=mg)W!N*Wzv~{&cZalNs$XqB1B?9yB^7X09;@`b zmP_`k#T;O9Fj-9&s<&oBU76ZzdUrAM|VpI09^4@?~LuEB2+iv_^y$h<8s2 z6}`v0i5tIXLR!KdIlN_{IWDob3_^vgIT3GWsFZ$5I~QNhC&#>;TyahF8@W9WQ9b|h znW&W(Xjec6o6E9ItbWF%0!5`|=lRVLG0~}@dH}c87nGSj7=ae?g z(r&1Rjk2dNl3Kk6Vs%P?k?7@*|7cb%^4+I-_1^`QWJWMq*BG=vl3aMUiw;lc`Dwp_ zQ?>Xe_1Ji#gHl~*1w3wri)7o#s+Uuom+6Wn&))P?SCl zQC65Toh0)fenw*NFKT6g?l$qbM$1}pS6+qiA|;03FbL3 zBKgkefmqAV@@gSZ4v1S`lyI67AHqqeT=y7t4Y4D0_^X|0Z7Deryo5hav-$)Kci zPAN`5&=LUwqoZ@*6*bgV>%+gk>rC^i7~$!VmkABc`ICc{w9PBOw2d>_I>I!jb>E|G!U#6G0{F|9h(UJ;gso z`kxE8B0j*D|KB^fN_`K}{?93i7K;BjZr6KI#y>I{eCsihBl4z|qxjzfsEWNUPX;Gn zJyXLT-H8QE{!Ho%j@E)chySU>#iOg*iC5}_k5XR$@6}d-vnO2J$;R6&pRccPj(|sm z!(t7fHBej}hDt7ew+D%ASL}61EGYETf6XGd)e3&*<>}6X9UouFi@6WFrp^5cy6!|n zQ?vJOBY1KQ$QAtm|Gp+Pqop?JhG{T??0otb%0VIvx`(aS1&=Z~T)bdzc-&X+q%Izn zciiLT=hwa?x3)!?mgwM{Ib(ezHSH~^9fBjrl&sdBUQ`@6ujsKwktCV1dViLw9ky-@ zD_jdsu0ws=3*n?rJ`o7KGf0dD$p868e7}=GEUMefu!hIY$LHTvn~;EsayP_D@u1h4+LpZtEgRgb+Ym`7 z6hsaYzJU#X%;&qWS(e;(eLs7qU=@DMDqA55d;dp!lwfu-;P1nmx>rpo(t6f-KG~Pv zQ-88!Ac8#LP;qpMh=zGsqarjaI*yKUx9p5FtPpQJ99?HM1oO&;M$5t zA7;K!h`&{|3vAPjKRP|12`f;so4Mj2Gh62yeM}9ez3}rqE z&n{}4!p?czx$b^jV!i#Pet*fFC%TG2FF(m>A?4nz8c4$YNt7?@fo#s=f<$p2B&d{_%c0LNZwr+f}#9+d3F34A&$Qn@^X$h8X7w30tiRj-V4D#RL2IY@!O+IAn zKTb1ozx@?SSQqPjqHCVhxNqL8TJplO(0WSHNt)Gf@MS4)9;q!Uxn|)^Pct>6M|*P% zw<64#jMX_*!A(70$|hHDGM&*gYote+4&R!70qm%zLw6k6yl-|PCc5-aUI#f=u5TTU zVRFD`;Y2Rq`M9dlK7&jv+=cgCdewEpzWo9p+Ubi75(zaS@f+Enfl zb!V#W{q<%!68rJqi))+@{$t{8L2WJJ!<87{v>Gkl+lbLmcp($Vqj;gS&5QdtN(Sb5 z6PFRwc`-gt)!g5|UZvXIZVA1_fIZRMj~LDD3hvs?)3%gQVleTq0>`UPhvCon>?aig z3Tyg<3mdDOH8FN%O0#d$W?JYD@m5@ALVW01s`Y2{eZ^fI3fJBK`g5my%v=x|8x-q5 z=gH0u@y_g8c`sCtPIO7y76zF!4e#Z(-O(!`2OO}EGpNi7%Jw5BN(A5bSiBcvOXxU0 z#H>7I5PI&#-?GNK)iJ88T3+PaP_q4$1OCN7Vj)7yo$3@!IP#w;^7CP$Tcle%-1ULn zcF96b3dkREv`)f-r85Ond#i)^4kRcWS(QOQ=9gWSqE`pUIku*7tRjO@EV3I(7Q8tU z-0|Cc9CtzO!6KvQXQj!zwE?B>pol%P+5>O0Dsz*4+}cRIlZ{vSN|K(RF7#S?MiafM z_>!sCv3pj;!)r03?zCALLFFvT;g+x^iVxUtnTCnVSoAvdd*pYQySO9a;aF)i@yNansr2S8xjM$v|DT!OY_SD$8tu`BSq}kzvcOM>9$kXzrC#iGb39e}lzXVyZ zM3{S)`tp|@D&W|XNFjvoO#g)4l^)k0C?y~*TiAI%*Uj}#kE;L>%^7ysW#>G7O3`v% zuk^^IMss&Lsj}>y(=dbxd&)t4@%DD7c~%~U^AEG6qVU+$nIn#1=u`4@N1ULL#I z)|R58n|s3Z*=hRgO_4c|`)FM)>f`(XIFGaJ{hQZ>wKsMP$@86EzWghLwTyKLGl}(8 zy8TmtBw~4RP^3x%-A9}s(&gy1jJ|@S>%-PVDM{6L4bawpOIb=c_#wyz&aDU=IYH6< zk?UODwy|+tw>h0#Mc6INXFG2-a`zEvhSWfuKfXN88QZ8u+vvhZse%n9m5ju;3FS4~ z)K3?=ZcNX1TZj#L@}5wmw^nBIutxm#Pl;;hOaI$%P&HirL#HC`Rwgw7hkyH{*0hjt z=M=|WQ&jIkvg6SLHHX;ZoNsi@x|y9HR?(TN>74D8FAp~GX3T+js(t@^xTrS{LHPyC z!{eyW45`T|Y*@*>SKD0%`{94)!7bPwYy7Cf8&0x7YNAv z1M{aY{%Hd*f^+cxh&dzO!Jf<*A)ea(8cKg$o~2M3ZCotg-E>9fuf(_5>gOR*Z+tXp zolIJoYcm(g(p_8+fv$n>2TjF0I*Xojg@M61SF?1S#~C0$$M%SA1^-K)OR%vN>+a=0 z6ijG`O=I1xb-9xY(k|1zV&n-r@U7(3sp!{Sut(Ei{9QUbQ_`wF`q z)i_lkRyVAxSwgeL&o>Q5U?l;_>n{3QSv?$x9&QO8_7OOv@?W_J%SK zpL4&PIX+f+ImyW_+TI=iM6~D;s`3dCv?y`}g90{a99fT_y(K>&6!N`1{UNx|F%By=xGptWBIzLD!53AN<4;LJ{1i9@%we^9>M)yPL&tGpUnaz*I8(zm`w zdXpZk#34DQTAtJxKT9JR`wYT!G8%1VzQH*)=FKlbWX(mhVn5y_m;4dxbj4W`ST!7w z3t#iZvpnO(xkv@TA~W!G7=a$kxqQ^^X&DG0h4ct}TFc#OOFmsPm$HGC%;J_yq-#xa}t}*7ucqg0a zoF`Av#_o~Tn@{u!=Yrdc7;sqVEVfipa~~GN%LCZd*aDEkz)@(%yWfbiMlR?f4~0+U zlM6|JU#V`JJ6E8N`tane?Vnfk#6EAxD}o-C6O993l(zB?MtrQvWEZ;)sg8O#paUUtHf}Wwfn^mmhzq<_;Fv{Zn|GZBq@ticKT?0eB!uK2}_M9uwx| z2*m)iA z<>Mkg+t5iI1!ztQ^nnfx^z5Ik(vb%0T-Rv59D}}nQ;>2Z5xP>)WxL(C%f?fFT51`; zkY2>QDW-8;c_t*nRhG80pKbN-)7Odn#G7PA#8+o=r8E}hd5wNDvJq5l6|6&;jT*x+ zQdb*NPCVLMrNXRid!%5$-!&LNp1oA(i#?hw)HPcy=Cib{5tr4OmW(Y!{9ucetvf~y zxD?*!*Cn0r9EgTAfhP3+O7lJ!eV;W+cemUL1GT#Bqb^j}A(13qEj2zQ6u%Rgz*2l{ zQ@OpaqMR>!a8Z#@SI6yQAMdI!0`}@HYA(spe)e>!Gxu*|sSSusZo9?-IS0kP_t-g& zVVw8a+|$|R7wY9X4Z4xC2~?L=wHO~%as2#(zr%m-^^v9avX^9Bd4>e@#v$JIH;v}6 zPmrRi^*U`@Wt(UV{4#sNm|(sn1~g;yAu-W{UFnZB?HTN(PvRbZ_c zM8xBzx?HJt?RD-N4mGxv~Tf``oZ6;64o||+2`krg6 z$5;N8B3k5Dx@Se3*mz{*8etfoZsxs`&DYj$IaqDDC&YISnFM=wf@3WihE!Hfk8HveqE$@bSa?h$& z>B+M^8+9ze>~L@h__sOhD zAV-_uZ*Tfz@`CcVJ+3|l&)ZrSwM_XRGclm@Tyjl4NAuZJ5)c$mwVJ$$JGL}Hs)Y@-4X2^ptOdLj>OwE+Jsnf4bW)NyjmXwxq<(wf*SY%A7P z6@yp;aXdu-6m%@TZB|>!%ueL^ADit+Q&BSdQ_h+Izef_l(%eyAnqRW7lsvl`9|xDrCF0R&JEl3)0~czwd91@W35+PCqg3H=8LxQ@lT)9 zmVnY1^2znDH#8UCY)LhBfbO|&gMr>vDrOev-XB7tx>+)9jLB{cxQ%Q=x4J(RGW+@2 z@ObL=v(#zX%$AF(gaelx(Q00A@uS%Kz4Y-s{V#J!oNlOG>gPFfgshkqcc}Ntc*9!5 z*T@!=UVYf{V@AAV!>{5jtQJ1c=)k1Nzfa1{d@yVOJyY4?N~9LfvA2cKTT}j9lH~!Z zQXdxwMSm*ji+S*4vFR!mwh^v-a*^+)3U4c^>T29xtvXj{bc0bZ(@%hi)bJDj;a4mS++GzKw`>}q+TjdOS zu(W^Rj(hL&_ElOy9E+lqbB1?m1>Zu2WXf&IAzSW|;z7lfvG%vPFvZ@$?N*C~v|aBM zeP1G3)o)D?tm=U0Xhg!_-)NfLJ46EVP?{+%S_?X^}#d#6!aoM<3UYykE+6b+o`j@w zpIn^C@k6CbavEGMyE?A>IqIRJ{wvUk$^`ZgV0gVX+iBe!4S(KT>VgLcONoE(hC*6> zcv^Q#8S z&nmREZXek}=gUMhlWm;@#9zthw-ac8^`L%~q!vN&1{c&rE?0%Ue+u9>eezOPDC!xc+{qD78US|T0w$Gs=BY&uzy6g-Mld@P=476p#q=|?sma5rw;N-&0=TNN1J%GG5%82=(r7J-x1CP%?BK1cpBv`qg#dzjQ9%>c+=Hy>(8 zLD3Teu`4U7tULIFKPV#+B%qIOby(u7AANdd8fbx!$0S$sT}lPfuVN})(NY$~>{G0W ze*!QqP>A<tuNEVFkbX!Pj4Rks6*G^>_=9@ND)P^x&oI~fqJb>$6-bp z)g?FV;$B5b9MLt*izmv+o9EWUF^rktukVLNWp)@%d^JvmpW)~qer^Ds3yioVJn*hh z?H+v|x&y6l{`6i&=K;g_^B$lnS}Zr@A{H$<)3B7VQG0}LB@HFz z54{Sj6x>s660yK(4TUflhtm?;eG8Hpp|4EJ+kw_W!r@Nmh%vSVIHbhV4JTpZ#E5Jv@nR7ns&-u{AfsBJS7 zyCiR*UhbCD!Jj3)6qUETBY|P^v8@~pmw5u={)cws>l~m&H)cT8Wy;)Hp&{_boKB9! zeqP|butQyiTEswN%ZzL8lZSXWF~BI#qoqdBs`MoaDJ1-M{$XrGb9z7X?6QCbk%D3! zu&#nQI^wf0b?p?2)rz!ZoBC&gXe6!cR__z6O1i2`g+6sgJ^P}j{%X&6xPR`)7RA$U z@^!#rq`clLr~DW>8;{KFE*OC>v6 zRS|;)@%dy5SX|&f*<$q~qeN4Lr{F^^Rhi>J;>r z*QQsj;DFWiR31da&s;B}2}3 z?a7G)r#%T>bg;6MXbJ|ZUY8cO9^T1KBH7Pbv;`=AJvvq2fgf}HmqK|?)8`j)TwTBMhNMC+gtJlS4ddS`p2tG>;C3ohf20qf z&5I2axzA%&A|NvHL?}YVI_T=nLR9#v<6gY#+t0#u)JUr2#JNV8*S=O-iTN)P^Lgg^3>aOUdR#05gDg5$9mL^>mSTwbr>HcA)Mc+k>^^U%CebE=(p3uX~ zDPEBQlMywHn~}{nA+98|U5vcDH?N;%KZTX@r4@nL`cO&NkQ0=3yV@Yg=(f4nG-0Zp))=nB zHb$*cjj)4JD)tx8(});qBVh1kkhNjn0W=PN?PoG18gH?x3eD-c#_PUEjKO7Tn;vm( z^Z$zsQ?K~eBjv4j>GuW=m?t?|y}^+C$+ze|{jr#p*CyT$A^16Iu>caQuBG24sBk)FOX$n0zU1hDYuSVNiwM4MHr{(8VFGtbfB zuvg!B?ZI^|Z;H`^+39U+psR;kv_7X_E>HZ){T%_=p>7J=x==@V6r{f)O8AP9n^DI0 zTb>JsE(RhQ3q)B>#?u5FpkUqXK0D=Si&NnPim7sMK&=ia@n-F~8D?J#;+xofu!y6w zq(EB{kLI2;o|+^`ye;Sy0Mxd#4%bAwNlKo>5A7#C>W{2Q%C`e8lx18)C3>tnIzo|i zBiQ?OV*;En*@XJ1BDc_Ks?XPxrpo=Kn7W9UKey#uyDiWtA z!uoz8&n>}e#wbWacTswHPftg4yoT%arlQNM^G-^P-7dECd4mCzn5l8xt0*&d%K*Ix?OGDS^L! z3kmqvggRLX7@xnz^JZTPiWI`1SwbU>>yWCP{$4p^CK%qrHTIYzwXVUlRpCpq^`W!o z#ro}$BW2I76V_yg29mzj;}PF8OiP^9!dVjQJFdwFuv;8L83#?z>l@UAKdAHg8{8e6 zc|N+MZkSBWI2o}>&Sm}CJL@XB2IK_^U{-e#Lxvm-9-E_$$#6?NMQ@xWp`y;WHg`{% z$dN_B>e`fxVQ+NvUE%!VvI!=Y3lFtgxi+O-y!D{8zgzuD>z1f%P0AeND8X|lB*9jRS7zX_8;4<>aT$$wsBav%=*fJ z!6Bxb;K&N0C;qp3`tr8n2t)bmN>E2@5(YN*OKZ%X(IFL{s zugua$W^*dFl_D1}uPX=esbe5fwRNaYXAV_9ZYE?vlXB_3F=npE8A57i`A1>h+Uvh* z%Fq;xg=D!QE=Iv*vM-Hhgn3(0DmibH(*Hb4ejj!8axi zXT#w8*DtaQr#IJE7q7-%bLZ=pC8A+C12_EZ<;~l!Cr-O4EN^6&!%ECTIX%akTfrwTsOUGJS`wCi{y@1afvKoo^?HOMpmIsp`+Us_i z8>*chn1ga325P}w9#iUbT?b$hj!RKC!BSwZ?A)#Qv=E%*hR=R+BP)~dsWcXj+%O+J zkN*fh1b^Z@Mv(K9m5$ToJd+O81iC;1fhzNkueAugU@^@InF3xt?-dC>#$TP@*I~TD zYCh55MvRQ!7-#fqDT61jb{E4g{+eV0?%A9`Q5NH9w{L0oBO6z&NUIb0e`UD*{mu~q zq*{dv(c;D{SYx9WDW6#+caT2-CbIu@*4H?AC!6JNbQ9cmdL++0s9@6CrKo zV!hGIV3)7LmkGoQQPSl({eNySf0+0n!{2;z22S>~IALJjB6tXjj8;P()^4G?#gh}` z7cQWN!zmeqWE5(J69EAQa_HvZrUc__%e}%uH<|A?0SqBg_YND;#(r#Jx=FnVNY=bkz01-Y@X%VjW=t1YqetC;4##H zIN1Q)lg_e^^kp_c;Oq62sW@6*0nZ56 z)2i1Yc*>81-umg>jq|ggbe5!bt*shp2iBeo&wn_<21femvB1gqZVehh<(A6`akfaOvPbgxU3|nus0b|j$8vQv7 zQDZC=6;IgkZ%!Sma^?h0_M%O-&q~kz?TIl_&k%c8-?$K*gFtv>y9Etp!w%eGQDgNZV;-jwMHq~fAA z=+4bhv%!NEH`<}^YbmV3YE`9RCt|a71u8FM6UgN`v02$jIo^z6Y}sRIW84GWzUcGaU0cqC+DGAZ}9U+n-YGaC8BL2<*h~cPki6ru-x_=jMxYjEgaQk^|~MVCh+Yw zA~9?pus+6u07D6DK)^}KWVhhx&m;)m<5A`Mo1<9e>%sfiwK;KU?hC;MmppNe*(Mtt zY|C>klkMd3l5x7!(Xx9G#oa-PiC7=iohqb`8|pytRj_bdiPISI)9M?dT_iXc%Ck{AbWie8PZsq{ihhVrDE^3ldyk_TvweNdA6$bhVL)DTVJ+I=}e0e^wYIRK|J} z^S>j-vjV;aKhL`Wf#19$bR)EX!~aAH!s*9poZ{BdV;LSV{RRmOYk{3cnlq#KL??|@8H3w5i_&(?5XR_ z;S8M1x40#{cMxO3GC6V!%&xUFEF&zKs zT+w1Sdu8MOgN}$NsK)-uWp;k-umJ!vYg>m+dwUCc*%&u`5oCP2Yw^l&{UFJoE&8Mr zG>r!{)mB2rHtF|RidwYD)Tco1MBdh$pV_s;(G z7z)l`MRxe8e78{O>4M`2k@EaEuIs~(uU~4>>0$_Ze%*Q_O}(DM(1yp^o>u&apYvV@ zmj{aB{}-WVn*P5$9@|g zV5fh@`V#CCIEgtthyI=Ab`B&=5nu~DC2C~Z_4xOnYNkRdZiWkdH^ha$XFP*&QykU| zl&Y1x((XW1=c1&ID!JoR#UYC35Q_55C77BiHT^Tk z+y(OpEZkt-x%h|mMaYt0y_P4w&bsH}=4kc$46Bu+>3%=Uu0ZD}K@T>eJY?HOMwEZ* z@q2d67)56Z{RJ8_H8(v%cSRej3l4+Oa+bwYUEePa&zAT|-k_%MhjOx9o_@^Bix(|? zpPIx-1d*@^cf(@Y|IOZBl=PE#Vdz5tTo-0gGBWl>XUly|Rzz0Y$HD#s%b4u7EOx;l zxSdy{KUTvsGL(PTc9g2Uj#jZeVYQW)7_d%ma1e(Yo5L+o8vex zQ=_oFF;5mFFg>J;w!L9-Cu?QYQQDK41R4Dl7E}lPkFc_$XHI_*XHyFbMVI*63W^dqC#3=ZD1M8k zUJxyo>~`XWH&H_z7f(L}#y&uIN?r0w^~4UrIxmnf?Gnt7DrA++5s0cbS>7M7XnSv# zm_O@3IO~|z9D?J|EEQKqOj z;S0$XWgNk&uLEo?Xn(^qJ($NXw#)n5W-=vH;jjoQ@zmd$o-tb7OM2eFdCASpU zuU}(e5U*Mdfo)O*Am%dx8lpkH@wW%R#^R2tB&N?i2z(ai^A59Vk0 z;Io!fCkw~X_=6}jZVYW^JGqN2>kk?b;td&32UAB2$Jvtdkc31@qp9$+#$~T*(TLaO z#yX(cb2$!}R*c-YHM|Ye;nSAAjw?gS94MAH_&JZBEQeg%K7b#v<9Y96|1t%C+1X+t z=7ga?;$fb#JF~^erj56muq%uHd@1nDlkli3?dDyU!g9wqcmf<_P^Nr>$tX7plls6oMov3WeNWM_mbokR^G4QGA;yMgba zBJXn%Yg#p10v%XicRi>6`vo>%qVa`oX+Zq>np|YCvPI$x&x;<{_dG&9Gy3{(9kB@M z%E~lW3d|0XO7uAY>Ye~}9`Y_)%lRy(Q6jN^-q{kTJ+qd%(KauK;@TksHt@AIZi=?+ zQovVF>afy|-bXf&$Mup~ymOWWTNA|TB?)tR$DXrLzJKI)4UI09aAYg+`(*CE8II18TOA4X2iU~~I?1w`Ln<{I-5e|8 zcK39c47%-UPBuKVhWx4_-=Z8l(O`#x*zRuXFc+H=>-Ph1@kbTyA5|~AQX#|f9MSPo!PRx_`0}bz3@BJi-s^#e))?q9mM{43riuG9iN5| z2&cI^HPb$t%)|jJJe_fmm~==6vxIzwuVvc~(GvML`>REFM#|6d&(`mKZGRVIaxIfw zWp6PU6Tk7mWC;_|0bOiMGEv3bD~a2`C6w1uclt*iMCWd?t#2Y2kR}+xdXEC;a)D{t zde2!-*~W77t{+~=N_t{)-Zc{~Yu=eXTL!XEZX|&+!WMQR!Z;g6N&?W(rb-XBv!T!Uo1;{FR-h&3Uar z*ZpX-F_nMz^4O-YezXD}b-52n7d5N&u5}jOy&+SH#bBp#I}8U(ybwe1e`k8HGc{M= ziP28Kts$7Bhe+7?gUTb^J=AXq6fBAQj^-(Hcu9Jd{AFRs=s>Q&UlAzIgSdPi3dzBs z!s!lSGqlKbYja*2x6N=M6pIraCLNY6?kB`)ldSnzg#qsm6@^z)-qF@Wc2vh7 ziLXpJPWHU7wrC!!n~18g|1AS08?+D!L}+>J&B@bfa2NfPcHe zheTad5oP*Pr|V!&*g%A&?BMa^topLz+O#o_zARpRhHLvb7Y;{(ypyC{8}!QxHq~tG zv&b@t^HgUqz)4DD_Wv;VRY7rfU6)9J;K74KaCZpq4#C}Bo5m&35S-xd4#Az^7Tn!w z+}&M=H}Cgf%*9mwRsT%Y-1NoMUHu&0XRo!_*;{a1O|nt>k!^R>OzsRPpaB7eA7kvk zEn#%DOfA8h5(MXYtfIrq$DS|JruOZLMJdPRrX*7x941|sy!SEBx>-SU0AJ<%RG&_u z1K707oUpvN+lj!XOve*9;?|))l9ne>EMd;o&jXAdAEcB3BnOry%fBfau&0|#S5B5W zqLIHmj#A#fIuNYY`z9+Gb4Qy%(wm-TjHi!n^t?{vM5rJD*=$Lf1h*eiVNxLg5ow}- zowSf4srN2fL0N6VZ9`x~O8^v_4fx?};#tUQoqN^P8U{zcQx6a&UGF2;McTN;)_}4= z4w*u*$cQE971)9X6zTO4u*%=Ig^Em0i({^*xix}iL9hq6+;K%@DUV(T1bJaM-$i?; zG@K??G#hSfqP@RjI33t;z1IiX_?U0~o;g66`AKZCDd1c3Xo%tyvwm$SC-65btwHmf z3Fpci%g?RKD2r#RruTF>j$fd!1VI-^1Oc$%JpF44tem^Md`^Ybf6aL=r)k0pSosrK z5X=&^0wc?`MJV#KFhxZJDm*=RK-^g=#QjdsJ!qW#SFr$LG6=Je zFDIh$YTvrQUwzAuwScXCW!Ev#9D~FmtU4ebHyk@8Bv5Dojb)4EF@&Y!MF76m?!J=# zqJzZW!nv5yksRPm?X>MnPU^e>3@5Vz;TUl~{_ET2CgulUbI$H&A*NsfJyD9eEvVRt z7qxN%Vue?11&etkr}Q!m5qY?EKKq;{PO$>~o+nMW9r-h%j0Fg63?S8|?ofB23nX~OT%TcjAT7s3pWP0%%JDL32ktJ-k#)&M|Y17M+zY_J?<}vWu#(H%Z zAt);}dy+}&rgfz$0N=+9Ukd8v&JL{2$P6eMQ^rGnTp|}<%;qX772Ybt$eZ+MCdeT< zE;URA>#MAqoLmY2a#39oOiN(%oaih5PU}KqqF!dvAF8CmFW*<`^f_m#bi9|BBvy-s zn046dr^%W3@Zv=;UHHMS)2zK-0#EeoOPAg&i_pKjbE$c2D1lA`?~%l6&4A=SQym$U z3{HF)w)&u;@F!eQ#qG>Q9qUS%ZV|eVkMMgQt}0&Zi`QhMuIWIy052SWJ?kphy$SXE zfpQt1eSuh{q!;1Ay&sW%dDT1a02ve=DJrx-(su0rW&M!#uUEBM z;Mm5R{$WZ-NQ(p}K|2B#t4$v~JQZxpjW_v28Jora5arsu_N1x&KQOLQ?H@Gx?uoIO z$HDVcK6P=3u#<%0=5?ClOECPM=pK$}qA49;Ed~9|K`ZeE>mUyVCE|+aQ=u)wAEiod z|Gsti3x9s@uIlQ2U9o8lF)3cCuG`-)awAO>^!^?-1z2;Ifn%Prd5Oi?3 z^4pOI?mgTZ;yuhgF6AUV*Zw3JVx4mkgvqC(jI}OGl3DrC|JS@VdNgsk!ie$H%9x0b zFfH?zGo4VcD~@<$`uE#s%_;qnderb-cscR7R(ER!yP4dte_Zl_!aN6z>=7_hJ5-x+ z@gQaPtlx%SGU;4}=v;C4^W`OTaE9>WUvJ~hpK-(e{OMvLA;x>!oC(J$_x=hRuUx8$ z1`lW=D!RjFxr13zu$qV-pu76y(1CS^-+49o=PDC|7OZpm4!Me-|lB4pi`X2$=-+RR}Nn$K5?%N zxsCwVlK+B_>4rnwG5W$`hg#Wj!{%gwE5RG+*8;UP*;!k(%;>}P>>B{|=}QYWs47nf z*JlDOm`ngF^F$0vG)GLPUU$&yWE0UwGEQ8CP@%M~nq5utqWP0MB?@l^Q}oI0Z7(0E z)D8YE!=`KS4v$D5!vswLbMOp*eqC+bfUHi8d}^5k0Y7`4Gj2a@@hokMOZ8J?j%rKV z8Z+(Q+~$g&wL2G8jbBwGF0AEpDV+>=*bOd?9p+Om6KjizL|hgntRW}S^bnS-`(Ktc zlxHhKh(Egy2F&KcuVyCnWPc%h6rm&1W;&(U=n3sD5h|`q7;H#t8s4$9y`fPqy12cz zSA&o>f`l!FDzE2kb5Wb^;Jhgf#|p!W4-IXbRi{S~*J??uFU(t+wX7r3XlN0=GK57% zWqi}#fX60wE<8G)IP?rG7vDz=Q*!6YQlM}tzjlEG3(6*TK_QeQ@agF>-I~0rYa$Wh zon98@qVfBGW?r_oapMJFK$fDlb%u65I8|Zia3%k#g8eU`za(X_`_71KH7o7$(||X{`ldaEzIg_LBlrZpsw7OpJ6MJZvFa5 z>f15nE6d=ngS65wAy2%`wd6ZciL3e=J_k%Zz4blDe!1NjG~Q6!o@i>qcfB@*$F3fM~V{a;EfFbQk59Lz9LlkU0SIe@)N}WAWLh63*o{6`R%Io_K0)9Nclq1v7dGIP-O&h;$)ayJsmA(soA!O@_||TW@Z(4FSELvDg{h- z>e)Wqiz+GmNru_y5)(^T?$&cwTD_FS*JKXbl*wsvCp^gr4)Jj^xu?bDjMvyU8a&*F zhmqxdqNedR&yhg^w#se7vCxu=fW|+~@hp*I>va zZtxQ~rM+9QFXJs-s^t87rSJO z5s$EgM2Mnvw<*KKZk{d)Bwocs7Kf4G)4AWwv+^qxfjm8RkH^eoa$cy<#z zJLY;bhJ-R758mDG8<$4?JczNOFT_E&^ch|2VYNZCJ8RwFW%xZ^Fq%^yCV~DH zS_>0TLajcf(VfRB$ooB)6Vq1Q{Hrin7M^}Bx$mqVD!<=bY$U4O!+4N&u3WbdZh9$q ztvxcrV))STg)#C4$@pN%tjwS-KCnC0k@VCF1wZ|;mJ&WUbH{%+OsnA%Cdf10XmrVc zUv~VA?Dq3}syAaDJpp&tkeMFh629rRI02Kv`YiaAOV+G1{k}&vCbW|T;gQgjd|rSi z;N>vvh84bLeDY>+{=Lb#M@jsBZF88$^=5{}lef6GvaNF9BK_YLCAxz!k)Zk1!bI@c zp8r8c6_M`vp%~dvB---PudR2Z{0)EGVPA)E>HK4o5vB|?IhFDL4JL8L-xsp|dNI2N zhVP~4h2+xc<@MEGuefP;IIn0#(1vd>BF6N+`=cfcHNh0^l`M!nNz)T z>2D|cqb|p2BRxO$s)&}wZ0oV^QyQc0;?}&$6~x@tI@ zP`#Rb+zoPJU2_wxJZo8Jz*HDcxX{SUc*?yRIzhm4-}Yi!i;jx$lvU z_gNPQ;3Sl9of{4LTPiyME<4|Vz_YUO z(dx!;mzEJ!!NvBnJt~Szf61?tFVD6&8tfFTw4cPsXp|8lZ7744%RY!B=aqttQh9Z5 zDS29@u`H~%7jlsHzlK!j+-91Kt9*}$$ORZ7IE)GBq(06T?xOkcgQr$o4shj6EiuXj z4|HEIa=w6!38>05LJ;ms3i4Ac{5>bfpoKd12!mN#^Af^=Ba%?JH6V6z(aZI|?mcWx?`fcD%r6RHp=g`t1*PN5{`mEF%GaNs@@^`S7GF-O1 z+Szs@y2NieUy3Nuh=GYE4yOQax)*cKDF>S|V#b5s#oPW?dzw`PWFZxhrR+$S4xQEX&fKDIl&p3)KjtiF zW2_76ItXbBS$=zE-w@&G^(p4&0KzV>BtTH9*-|CPd`wOo%J8e8v_#_D;{#c`abs3T zMp4UYyqQV?y_HOaz!TTXTgADno?bm6e3saXS?@7<%blI)4cc?7)eknxMBlUZ#6AGr z`eULw!d(fm(w}aTg0Ru90a_14{H>{pS+ymK3)pJ3<&7~;KjEaMnuOY`Kiep=Jo=%x z+Dr%8$)7unEg^7W+MT-F3}wkajQ52K(EYscLGr#oU=uY1}#HRnP=YIUa$fw@y0_lKQX34v%w;^jw+fKE44h=%$Tl*a)ozJz| z{W&DkN6Rj~P=kefdqTmP?D{cXqQX#5Y~Tld*l6?%Zk; zbJJ(tuP$wRVl7Mht@`u$ZTn8p%kJAf;@45lk&dFgiMDr_5W;P1OFw*dDZmv_f-j+s z3nKt2Pg?j{T*zjr2?1q^(sCtS_kQvtVCcK_ji7#CD3Ia_Afi)_-|y)B{B63%iFU>z zXM!+mR}J~D{Dh|QJqsjb)=HQ+X~*hr_N$zTE^O$8^zxauEyI6l0Sxji!t{5$6x69f zr{-u6NsM_DoOOZ?GyWBAywwi!=v3n++*%8%`_{pb8aexLo8#CR?5=$N-6uGCYLZGy zE@9th)gY-lULZxX3}rez{r6!7X`~L}Lrp-HqeoXGIEPOnzmB3ylo^Yh@4;V<%u?zs{s~ zkWLbvjZ`?NJT!Clx-+mQJUTs+|_D8&yfB)Z*!D_PYKw!UpR6(2!!G|Eg$CITC6 zAL}zW^O7;r8}4ki5U!-;xq&)-(r8kZiZHki;D*K&kB8~ zRCTe%6F2>YsBTze@S@} zcS{Y9Fx9uT`Qu+90*U zzhk**A1=#$LV~5!RKl3?siIOZ>U-PM89XzUjh z->m@s$Ulh&+YslfdFnC3`sz!w{xkZp4*l=MO$Gb4@Kk$;&^doO-Xn9aw)nF-bzdlN zrgqekz}kqirV#0=yQli+JDYcKqjFR&r#s@baqgLeRw~l1N0dOp{p3NddtAzSL&K`9 zX)3;PU}kVrzxf1%i9K6iUiNIqY&<&mQjdfW`8#9^!bDUy2JmDywJ_POr=C>~vq!gQrAQ9``@ZpLwc1wA&z@&dh=AvR;qj z$FQ*Du(JX>>C!8(f<@`@?rK|Q)NZOXE!K<)J8nwR0c`)>dp!4%~`72ZWc z9RKNGfBU}*1=4{3=emUd265DN@||%1Jq<;(e(--uCmb*u?R;nM>?)63sQ3<@y_&@!?@KBsTCuTLu25E-d;g`%~dAMJ<+paExFZ!4r^h5xBGm!j9?80atAPC;?QEAvWSJX>$) z4U)dE$c+T)I-4^=d2vMOVJVG=H_JIwg2(Z)gbq*0IPnJt zISgSHt>FX9R@lVAWiv49jJ8T(#f2;R6GwXKF z67fj1v~od?g!t^M(T9f;YoBn5?6o_j?#wq>Xc>{r7rzDR*9bidCEy5w-ZS+$2mm>Q zq!l-iOLX)5Xj#F-&K)V`N6ic3G5D3b{pPpLKhqadV!D?OXV{fTb}`5KK62l?%>*8< zome}@6NP9Gcc)dr?_w+9l|^9agO5)lOO9wILe~ZZFUD#O+hhjZ)j{zI{p%yN{!&AL z;Oi4yo+xp}?8S(5Y4Y!~xe%}g#!8meC(}Hn*VETye$i0)3*g=r7L{>`R zSXm!e5Aj)FMdaV@K;6$G$F-kXZ`o#zBULBQm;{!b4IO;_j?*&j1Jm&;hd%`?4xsad zjuFz1Vth{R-wZ&#uNCP%{mJryz4&|eulMpl{?$JCW1#Z4zHVZL&4_@6>vPn+UOj>N z;y$j5Y$Ybr5*aM~vJGG2KuVZi|nVCS#u1(+1sf4oNPo@dw&CZZer?TM5WzXam zkMaqx5y|OmUOA+j=RuNLw{p0ISEyyAO@^#0w_I`Nl^JQH`@Z z4>IR8X4m>7PFTA5DX%lUBnY6SM|e#cHtb5w=+|E2#TDM{b9qrKZf@T`5{l^daS^oGhfY5n1U$YfjB?K0 zPjlxVYn+*4$^3yT`t9qC0?!B<_i|>0w($0c7vfD$Fc{0Novv`!p+tYF2T&NAMKv93 zE(PbOKx^91KnY-IJxLR@;&lAE)YJM5@vE65CQjetHQ$idT;AkxkKX4=1wD3rD|w^j z_H1ZEn(2Hy`cLVQM*bRif>GEs#5v&uS~c5oC(jjGpL_@@4sl=kL&(6gTk_j0W9${c zO8#K>XAavgi>H(!M-EAfII6rwmaz0dn8CSzmY1;sDB^CbhIxG%(Tdz;kC)z{AuC@u z4rKW|^-oBroVNoHG<14YE}4}q622>CYxkp=!Eoj}kH8wFOfuAtv z8P{mlaRffe_UR2LTqn_L$L^C35vG?LRs9RmsMKWcJHuQDrI5^VwLqBR`I9{B83 z881IL=7+@tv0z>%0#nLW?@{Wf*1q<@&isnB{^vW4!8+=nUUV^cu<94ppQrEbhuCZf z>PDH6JzTMdB_8s+1`Zg2HC`)R`MYT{!9}GYo=GxC@~zi9BOZ;`B2}4iNsTJY3mo$8 zB?06*4Jz2?R)LBW0vk_*zYAZtG}q6z#ybd`pOQIRuZ;WA#zdo7f8a{uP+I2I4I&&B z-(mDA*>H_h+^t^!P&J13*r+Rk5{VKcXc-tH>*B2;`8*a^e<$~8iV6zZkOe$!0UGjy zkGhO~k>&c)>zvuxKy`WFd`Sm?gt3dxzu{8!c@sBaPG5ca9 z;P+QIwC^#rLi#k;7#N3J zCl%|7BFJ!Z2JiTNZUcMv`E7QEc`@@%%FL&Ju{n#>3>*2wL?$VFl)U<&FIPvOGx7MN z-1n?g*t7&UlrkUp@e7%)!3y5$csw)q*DgdpE`lkPdn=2A7;*5j6m12oot^IBVN>#S zu|0P(wwV0oniHqk*g=QZLSAW+#I{jT3wo}Dwf`Phj3VC5v5Opd)XzttD?FpwvENmf z?LqRc)~HjAvLi#P0!ApXxr9;DiLzQj!OTM&5;hJOFr$kdSu;vFw#b~&Z?Gco*j~Ks zWu@|pyXi`~X|2T+cB+!;Nn5}k4wbB{Pdx7(S=aRM#y;%Y%0z2reuCKzKMlcYkT|23 zA}Qx8bUA?dePw-e`4ZM~ko<1I+1}n(DfceLlgySpz|GBgw9&Z;CNrNTUoL;HrKsO# zp5mhubd->N#?z_>7XFygWy;Oe>ssQFb!REzu!f+|uh8ig=)d#anx{9Y0uu?ve~@VV zQ{$#lWjkjmGE;xq)UsP$wDd=_?YWFT{1ugXs~oEgb$m+8+1tRxrX;c@W%ntFwPk*qUSx^;UJ5c zz%vr!yw}hww1JcRIGmj0OsSzD{^n4w%2=NVy+Um;g$tELTWdhVS$iK{6u*e+f?=+w zC5io);Z=~Y6jQ%?Iqqd2!d!ccU)|XlSxrrEF!Yy?wH+3Na^$nCpC46qAk-f3*P%5X zF{JA>q_dtmaBoNbzjU9&jue+Bcd!g&S0xCD2|VG^t?6}jRqIVIfqCpMj*jgUJ|f=M zK3`pFDsB-I2%BcXeXMl;{yP%HR#-!_I7cL)RC%#V$A8Qp&J)>_Q622X6x3Q5)*ZaL z@OpuukNX6n6i4){u(V>}`D)*5xFU-5_1k=ZV$D(Bw>{12r+)*TMDCn6jw(!s+o4E{ zr}-fM?jbi~I<8|jt37W=fQ86?+|_41<1i{n=si}Cz4_L7%g)$GWa+*bq&i^X z&-7l;9reT0&TWTI+hh}b0h@tQxZgsQ@VvD$!4Q&d)u9iOf>2@ta=%TS)JXWr7|0o1 zTeB(2%TW1CGf)Vm#+jMscCdd?M37mT!`?E-dCj z_VG7mSun$Bft|x|$onYmPS41kju^Be7bU)%I(WICwu^-(MWtBjZA69}R6tht?3zp^ z3ff=3WK8mAxAXOglK3o1sB0l5+YStrj&W=(*CAi1my@#31u{e+upa@a$Xj9-^uhCXV(MO7YnOsryT4wNrD zOiNgS_i3(9x9A)tjAY=omVzyU2i5W#fsA$Hz|G*TW-F!Bg|1~Pm6S<9-3TQ&GJV8v zYR$2J#AInp<>YPDShfIUSSTJ$x@N^DN_nB9UbX+rBKh`StS^G7d+W?10R@^P?WB%% zFZOU>TMc%atL)VRKS(TS(eqx8oWj(XJA!Nw`%hRj5%fMYI+lV7?Y;s^J-=EIktD-suR2RQF)cEL?YV!_Xh z=UM1%E2k)cXr3j@p9J{6oDcX&w?-{&zpaj)kmhfQ|3rV9*HKS@D|CKbv8@WkjcYol zYtb%c?0}9)ozjpi(EcDXAFrKt$)8PYW+q;`A^S&7RGJ}K&P;HxkRsNgI^>1Fzeo<$ zrAw66ls1BJ#gkA`V#aFZ8n5D!1NbouRP99lRIsd&4uh0pwY`mJ>!g(68vtkh5y2+v z@`!C;d3s=wJ=%KQY^e(F*yn4NAq@Z;>kz?ZrfB%vh;2P6bEonXM|-<=Nut7XMNMMe zwndE1k1;HsFVKB$-N8W~Bdf_$?J!l_PS;ml+|5^HU$XRiYaBF~jMZw7@+$T;YyY(? z4ef7k!R3`_?;@1C)w${j6XJ%rG|uSTH&4v!EP(NFA_K>2fp}Qr^^st<@FB*`47L=T z_n<4Tl;>kG2A79P!qfd};Th!qM46ud%%t%2meQBDb|YC|z=EBhkKKX&N;D~I(yg(& zDJx#*0bP5qX1!*(jLp+#g?cHZP7Mq05W@+yx$L5`ptTD>AD*ZhFlyd@maL3keq3K{ z^m~LQPU)f_tO4<#^pPh-0wY!Vg@yTKK^i}Za)hn1;_LJ{O*BS8VGX?2@UDO z3U;GwBqj7D+s@dO_ls+ToIdQ#exH!_CCz7J4`-CQ(G!{EqK5DPVEr?1o;5AIr#ZC3`_kv~2+}>OG52>K(le{Mj^-*(EN0qHZKXUAf{B2D&YNGu~&3 z?C%&&1-j_y$EEYM{s;KGMZrvvzLA{NBsZ3n0ldmtDKmLizessW@|*jQRVAbcOjyb? za?JbpB{kE{JLBs^_f}EJZhO~D?~0Ml*TdaDf2D~-E#w<|uUcZCIid>vL46+oNJekG z+WhWcCLeSc_!e=6b2%`;(@&h_4g1IbLF1KZ5izWHsHN28{pp?~Sn%aQ!TI>p0BFOf zB~z`PbosaMwZ!yYCeb~YRcD8{oXJ*4J=-m?+q&+he=sX9F-!QUqki4D{*FVDVfaIY zBfVX`c+JUV9(A__x|aCvP?TrHqVM!i6xG}?&tOzSy3V4Osc9l()tIPH2RF#Ph<{?A zQN|e*SpXq|`&4M02#u8A>5H#rd1g0hTMvk^ock-|2QJ7pJt zl7cF3#t~_sy8+`z1Rd8fktjYHd6bAL_y&gF3w!jTGY~wkt=A~rq|hP9lL;gS$g~Lv z<=TPeVOmyaDIJ_H{QarRIRE%9jW--^;53V@bk)Zv6NRx4*^T#ttuLMLa_}*X^|jc& z%+#(dHJ7Kz3G-_@FZSkdEsaL+E-RIftIEY#v<7awH>+&>!w;fYqxZQ}$^+CQj@3R- z1i!mChO;4D_qAY`d-NmTA4+I+Qu5AX6de4)e2U^ys=2#-4zdLp8XGs!(ki(7A6ZI> zM%>Mqixti&aWDq6#!a60cJA^c+srXtshRUuqtD>77u=BW}ig0TR4uxcdK5qy_r<^5YfHTiO_22xWAfJGXy>bYb zLq5b%dd2&gGSpQ~<>6(5O(~1bYw%*=n#lVjwTfy_jWxX~(Mz)CyjLt}w0ab{%58zo z53Rv6G4Ds}BzWX{;$}@ur4Rb7-Mwm-bm$z((fSt+IOx=9m$g2O!RbD;5Wmeaq_C8q z8eOY9J&mRUga}jXcLL!GE{RK1I$1ClovkGk;!-Pho4WdZ044+dasQASi!lmQ-#pu3 zYpj0~U@$T6 zRU4=dt5HMrp6n^2t{W#UKl)s#7_Yep5WQN{j=|16x|tc~n{bf(^f7@Vluj~+X)dDN zgX*%%jI{&8ngZHUYi+L(D8+vlc)ew!XH^B`?$4A7kGBsV3kd8C(aZ{{>T(@gcZvmh zB)lAA$c0R=K|#IyMz@Qp1Eo{tL1RqbJ&#;OIl&4KPKr;G%%|lF5B5`aDD!QpchMfL z=w_9bG%*isf)sEZucR609VPIy_mbg8J5-fT-Y8ZPvpWPf-hZ99&D+iLn=Z>oE*zhc zLN!DKa{+#sJ3-mc<@=Fz^EF7S48K4=zOLmJ+I`oFbrdeBh+Au0Zn9|alo(sVuws{X zfc>3;t-)`f2RFz;!Ggw(9nAvxzA8zdsugG?9-x)R>8!MHzo(a`NbsC1oUAb$K`p zO1H-_lc)AllJb4OGPa-2jfTm8PbwtL=a;>ekLL|61zDVBfw zdP1-U0jT5er;T8OjQEQ5y8tjDB-sz1@95kkGC1PapWb8qhqBaBpKfVO`O4T_UFy&s zC$uEw#g}$*knDD^pCvmLMe{!36bJpP%dgvgqJ&@Ifr}|s*rf9gA&ftK?{|Q)hRk`g z-^dr+H-GaO({9mv+!p=oUy86}!sjC&69IirFK+iH8S8Xh8jO+$_?xpbw9G20U*KwO zH%3_tRsIqsA06mogud%2Z4pl;Fpp$UqR;H1^+g=|0e^4>t$=BCIQAzBbDuU7 zzx;cUiM>RNNBoBZ7m0Uj!{&(n|085!y;&%S9%Z4juyE68rr8wl9o};mF@KSqG|1;2 z&IU7o5v^t&&e^CgQKLY#rJ7k+P50&REQG&D34~_ya%*i@?-4gt9w&l^$?d-W*zC0I zY9oLNH}!6dYTUwMj&IBZ;PkD-o&Ab{U1ycXua9wW>gkPKu@tn2f<9A|0i|4bF_sT7o6}- zpOMZbgF_Ant;K$4k&$t1TjlnPDR)&Cl|I$B{P|L)a|K9dYUpc}gnH{5?#5!Y{qsL_fBjidTfPXzP9? zdb?8$fA&Vw4d?nxtCMBb#|F_N^w8N=jR&4!Y-%GdA-&rNeo+ei zw!e=4tWf*p&XS`-$Z;%3_sFrpfbzU0t?CkBvIF^7dU;O$lN&v< zY%4-f{ksA|B&j)m#iNQ|t+MJlUEnirc~Vg6V_})PBJ~er1RqwTn|nHKd5ShoaS5b8 zbiUTqcRfo8R;ij1SUx63_Leo1(aoe(Ax0!Zee1LYLVe2&NuBGre%(P^$$MC~I18hp zW2#sW-Xb!qZ{o@uymu7s7Ve*>ah7=od^J zMiwS{F4h^<8LLt2>eHzopX_gMUerEs&&FvK@JY!&*`Qq)Z#SxkBFJIVEYrO_>osHm zbdpZCYueQj5WRa#>~&GU&HotYwC}zudCJ3{mtSQ;_puW{JMATKc4_-MJ89h-o-=?v zZjPtxny($kf|)FIrSUuA_P4qNu^M0EEFs`v&&DR{ODTS)#!A20Q~B{)*pv_B`xPep z4y|ca`|~}{aBsi|G`t@|JP)1e?{|TiD#^&6)9+kU{8^r;k0%m1`)g@=mHr7dv44Wk z=V~)%?GO+eGJ7va0e3fTyOJ7lQ&@|My*8?$l4eZUUV-GS5tQJqa4l)pKv$W)0v+JtPsG+rX*NUR;xy<`n6HDNu4W%q2;H)ee9ve zZ-FoeVE2s|ugB4}PN71O-g^t1;7-jSb0rT{S>mi|101;;9OuKjWFvC#HN0u>-%eIM zbyZzn?=LjgnBa_`Sut^9!m_hT18|VgL;}$tU<(q@8AjA}8d!Y}D(dy>!_-|_TAEAC zwWalG9dH1%0qsSBIGB@S@i6jAN`HotFuUh-Hb(3^1kHayHX*GJd>8b*c3)2)=iUPe z?2Yj4@@L^+*Usg=>T+0ir&5VAP`gNKUfmXM$ItsNBI!4<865&cu1d{@yBZeOU-4J7 z@XX`#v8%6}uv97d#}VDQ&Uluhvp=gfUK`ovCZ3sI1lgkCL)7B-()kT4EG)md9)5$Q zevZerGWWh4%M;_wEc6S12&4YY95;V>BEEE_CP?XI8zbzLLJUo&-u1b@ys0~j(cn;7I8^w9e#yoY> zZC}e!-m4ajK6r&>JbsK5t&8aAPHRZ)wLx)=Oml!}JqszY2;%{~flRqIPJbNqBox+q zRif0&VvcvD_(>YUhH0Gbv7=BQM$M$?eavD{!&TBga^Ssh{hHE=IP7gYV>z&>7@%Lr z$8$=$mCV9`=L2)S*CFYGT2Odma>Ny4f0se(pzfBVYkqv#s(vj1g>`ZWfO`wfdI?*2;mF|gbM{*OG(jouk+rwIq8%4FtKVawvWAcE4&9oenA`H+kaPZ+d12zh6&+MfzPauo8 z3E3^7tAnZ_@0w_?YrRv>nA_D;I{8z-c4U~I(vng1@_bX}7x|Wxay}?bZIG5mWn?GZ zqu?HEm9sLL?Ra|>&x#Xfo$P;o=okCBvA7orcLUm%I z&NQ6Ax9re^g!+Zdgczoe`AfN0Qnfv?xb-I*w4_Lr>!?sldke~80mbBKN1Pb%@;ciz znjt!~sqm!ajXk8GFNqy(erouzXaaRvzYxHsyq@^O?`2XG%kySz=$S?deLIx<7c&l8 z6TI<6a?|EJ8$2i8TzSGQTqKoB2jz9dmQsNsUM>W}$iI#~>}K+|36u}A@Pcfjcs8GF z2A8!Yh5~+=@9|bs;NPi_;Y{1NJMn7O?|w|3WYdcO^h2V2_dGR9(|uKLJgD3GUZCb{ z#tThK4ty)K&!^R~Y{j7xjwjL$X>2NIN#S1w&+Ht??`h7TJe1yZ&v>}8c%G(xukSZ0IypCk7N>gDXE9re;%LXedM(%!&4J}2tJ*(HvOdwQcaN# zkjGQ9i_pUHumfO;jr&$civpOR3De;7?cXIK zQ(-=~FICnwI_>R0?pEBmC{>cSj>iZIT!_Rj_eqXSzl?oY$&icHpwMwm^i_NW;I*V4ZG-gzgOAHq>3qe(pCsa?_Zf_^|nXR{8gv^RzI5pA_Ew_)>;ar;p|b zVU*eU%m&j5i;fl1;;T=wXSa2~>1kGe%I*g{9+HT|3h{THim-LUo8VI&Pu@q6JVfe% zn`EFLS|UaEEoE7)`RzsmKKLQQEo$4wwYhyV055+eCK4L;wgEx(ZSrGMH(<;+Brq1@ z89WBNHq>X*xTCfb0!z375FbhG8c`pCcbfgE&^u2wUw!B{y8RjX)n(OS%3dXLSEaW? zY~?22H%YV{x#XaBo8NCeobzu|lof7ps0x)E`Rp?(eMyZ^U-p$i(aUk!O=PL|k+IWX zv1=l8Tl0!QWVT~A-Dh^@<1&9}hSOtbN8*Rs%y1c8-wvqt@Vj#d@*C?m6iPAY1_3U+_eI~es5rNhy>I{dg+9Um~0$7STjY5HV!w4U2ES3Pu^PXNxhu?Ttql0u8F>dWU7=S+DnY&QkiHJ_(B|9D8u&b^2Z+3{m!JmSQ+Blgfk|M@M&G0 z%x|aq->+1iYM>KXly>yzNdCBy_3%HvK6YU1yTU2T*$69yCh{H~-#MHoEN_Z+f)#4} z)5OE}IO?+zcwE5RN6XBEj~9mm2XOnoa0^nSUx6Pj;mEv1Oh&HDALTX1FlV4;Oq?^> zy4xRR{7`SHcXfIa)ZGBk+q+8_u;|-5JstH7wFd1Mzr^HGbp-paoP<<@Dxh=sv#Mj# zO}6%Nv?V*oly%RNzePhOm6^UKa+HEWQ8{TXT7PC$H zD0t1H;A`}=`zDs?j@o#hJ(5Vfg+K5@9DW7$At${q*Tf6wd4ZyEdn%Jzz#ab5gKww| z>3@_9y6<9cPPUG5mcM4sfBE4Mce*LJq@4+3OsgtFBc~Lb80Tr9I~_+1*15Q=Vc7nW ztJ#+bwJzX?J8dmJd>^0G@qniL{F8t`eIV}W>((w*QM}!Kyzc1!?s)azMZ_yD1+=%m zkXRk3?$*5Hhn)?)MwQ8_NTi+howkx4ApJ43=iP0HyiPQ>t+gR%x7?D-08GC42#AqV z>P$S&Yg}c?I4`ZY6{{`6f3xPPTx9(;!inxQ%*uEzD@8h4*=urSi_tOFNmdS}?=K~f zJ7fF>3r@Gqa^#p1z;v+Qc*0TjTZ)`9jWV29bUvoO_G6v~19$&&i1fuy?CZ2OP3f+W zn6D>04ZI2bwWF{~L)_h(z=Em-Z%E_BXxWknrip=tBcjbkhm9idicK|n9-`o{0j3m- zREiW@I94vF9v}hmm!?6~=YBSR0(XyBSk~ZRmd?{(zP6R(q?Y$2e5rHQ(tl5C!*`vo}RPws-%A13Jxw(BH#U0U|)mg;kq`|Dyypd<@BZO z^UU|q^{FE_%dIv}cBQQ!zB!Jq$=sW+nOEW?c91p<1?TtsEv>9Y?w{Wtp%^4NY7-hy z-`qh-4*T@fRVvgnd07lIK|pf8RrIWT(IraTwM=(6Mbh4=`+YY!E-^}X6jZ+@mR!{ zG<((|B_do>vvwgh{2MZmWwjB-zcajVxLn+(5S0kUv#8j{Gcl*R1abdh-nsQEA)TY; z)3Lcc&kMbYh0|qZHn&>P(I4`bzD8|o_xq-e>=IX0kNVP6Oqky1yk8s@q}W?9V~gx6 zHm!EzDjI_+wEJuBQAnz4Z|?E}E(&K$-CC8F`k5Tfi%|&H8-*j^z@px>(XM^eVCD1k zW~{3Qvvf15trnZnWhEO^s2cenJ=-He0` zIdn@m3|)8B_x<0`_ujSM`(@TyGtYYF>=V29Z{LtibXI=h`!FB(l_u#Zy_jt#PHB;u zvHJCcJ2H{rOqjcWX=z8Aa>?B3)zYCkxVh|3qM zthY!?%jG}82I9_SQ3}Y%E??u(L`A=dzW!J(W z=m)O!13gs?wVTfjSAPa)5~)AKTU@?wQ{fw&1?JX_Hr$)M@v0K;V{a(Y9^i)hw0;|j zZ^Yu^&xu4TP1rj8@YIS13+7d=k4lTb(~Q^qKH(noAQdm*y1g0AW%m2vM>Rj26-Nk{ zsq-wS!oHkTVm}U7icpj)6peZTYB_S`#wa>V4}yi8C*QLOAf5xDZ9jac`ktfbM|lJErYAAmMp>IsosnH+UxuSfOU8`{qt zfT3JKUtxt4pi`@FIGsr|+3SSDX12G@!QkA^a&NF|&S@y5g$BIW=c%={vO37f&U4j*hZF~x@U$$AY3Y}~p8Oh2(Hm$PN(VJ5IOtYl4hCwhck9+JFT@ei$&pW-17tI1VeSzsRPW=>Eb}I5L{vi=5)88S8XA-iPB;2`(v_B z#;>Rq^$zsHePWA4mvBAN%fR3F#Q{r(B{rQ_Qq4~<-_h$gq{B@e*0dHhlWTV+4E679 zA4AK(lR7#$Ah20@i7~roxLT673Ni5-Yq^%Z|RZ$KO?u}eq78FGW<6V_(<182*+s7`8 z5;0eYZna7EK=6;H9nrL!8-!%(tZD8O)6X`4EdO+F=$Ty)^d;_$ zo?j}?ypn2#1nN=O$X<(6XN&#utZ5R_mzj3iW*+3a;1>kJH2ULoU2(+r-3GObD-uNV z4{3IrcxQ4g>OATu(aS9s=a-fT^eq;FR29s`x};Y4sVl1MZxel7wk& zT<=l>Qhh=ME`F?faqM;Gw;=IVO`q{wBSc8hT#rUbs18f@`BfgYCKI&?f}J>(W73l$aXrjZ=a!zvC68rsHq?za^NWAa9?xaYBghSv@#%+zuv_ z15I_rAO^F!zaiTJr0-1U(g{YSrO7UK5!zNrav3WR*m5N;mwUvXLFEe{PmP5B|@NU(f7+*@mqcRH^)}ZTS;KN7QW$ ztZTHt+IOY~S%jQqOVvh5g@uLagq-L=;M42jY(d{N zy;ir=D&Rx-3sRpG-Y@?t77^gG5z*Gx9?EoI9@KMRGSj%p$@%d3a14x3PIiwZw?3-^ zK807TY&uovrQ|uUIF_8fL_qSreY-_G@?k}B-9CIx$Sy8x^6v_Ygc@YS|NWu!=}zd` zvuC{Z3h*Y}b8~YuG~t^IdteMU4) zxr>H3I{Uc(*_UY<;)|i^I0<`1r?1ZXO3O^%{{4qeY4~)}946(s^d`@et*0L^+Rmo4 zZ^mst(tXIdyQLnRsl{#dyhK^$Tat>}m9Kdm)A*guNO2T^+Lm@rfsGQ~-iEy={gZy2 z%Ug<&HA7JWd%-})Yzyku6_iltvyAT;gnPvX2mdK<>Ur*g$z2*m^_yI?WaBY-`TAP%S!^I)DMPNgMJ-5)UNmK=Vu#B ze>tNJb5Q-vt%SICzZG?-S;G{dQ42?>8sK7nx-*dd-qbm{&3^dsmA1CQ2;|9N)U7Wl z`&bA7Q2KECqP>zw_!d7n^12%v0lQ@#Ye-J}z6YtID$JZNN>SVXM#Vi3lUO4yW{-xU zq-*uJltoFETzFa3!3^m}P&=m>F}9Z0JxPs*i{Rfwek$`J0JkbnWqPyiwllm*%kksg z=`=q-Md6bAT)JIL*oye$o4M$!b@To(c=9A!ac5PV|4aA=97uTl{Cw|+As2-F^kE}# z6Eb%C25bJL<>*zGbZXbb(>ed#rXJ2BWN}Qw^I`1^*81_r94;y4J=z<`P2rQ!k^gGOEN!43bJHM+w;Q$)b6f;Wq7Tom=Sg7HuWlXe1E>_f;J zI%>4(ESnBXF1h_~egryk-`AbBk^70bxgDs$P|S&Ba9_uWn<(;Jm4LLe$II>j3Fg(y zZ|L~v6qd-g6i!7xtPPqdRJ<7N(JX!lC}@JfIPjygh1>*MDi_s+Q`Cv-gtWrRT;CcL z_-4Dtl|h+iQeHpQmIf#!^BwUlHQCV9_IHL4`le25GHV7R{N<)6A5i)Phy00gG}If5 zusDBNwp{+1bBFJT-hmOrW$K$>*aA!P6IoJbrts;ELqWN*6mmXMa?ql|0WY}}1w^W$ z#u0#YIb~F=vzs;=4)BXr(}gy5(d2B*;`ObAxu50d#tpsUj`1XKR-5%<8@l>ISqw^> zv~#?3H*Fvycg>I8Ce(9Ui-)6s{2UQ(ppP4(GO9Sh|R8ril8*YZ{6KxF6(LB8sK&%@)c?5tgo}MB|qu#`s#SekOOAd&Nu6%8n zqbwCt%e>cYtkitQm1fgc0f&@}NLhW|avFL)o|QGrv^mIdol{x{##!Neu_Fyi;Zlos zo1|0LMt5L8&>VIX_)1>0A)!4GcI1&t>s(v?>q@r19vV3Mb?}{JkA=b3Aw%C6hJ_h> z(d3MI?t!T~uJ{8q>zgj4zTjsm%)3_O)BZ=pH?nh%fzQ(KClzbLDWiqH@5VEw@J;Qq z?x}-|z{SkYfOC+dg6ANo-~w;NZf9g&o9ZKSbRoY&Lx8QQj@omxmJ)=S(R*0(ku?Ma8gR1quBNllfKVxMDeb9wgFga;B-ZJO(0bo0uZ zLv#J;Txd%`{NNE(=N|*vr(h`182rYT6j*0OwUh*B>VH_>Nzax$O$G0gRqE=IFoKWw z)=53;g!t}uRdrVyv*&ByI9NsikwA4~BKGat^A!1V<7L)#N^AaO0Q6Xb)qGy2{Ql0% z?QpKU5|Tv$?FVT!p63s|Z!w2yebRKs!e)GqK_D)2FPX=nMr-)X56&-<+Nr$^FL{yQDYH+=`N|vx<9HjYV{3KGR0#) z_q&p(f{ufxRbvJ(2eu@zkqwTlY$DM~fxyX>sR8C_MH_;F+E?#uoCalNiA*s-j}+PM z4`L=0Gv5jg6#hFGptObKz<5&MnstvgVus7k%wW{3L-Py;5=AmFWhn&>)RGv;NG6O| zvX%VkjLW#*8^m;a5E$FH%$FJ{V{Xqo2p9&@fZxKoAw^#_g)nC}G!KjYqZDQ>I!~Hz0aaSz9=>&Wy?W;4LTG2=$ZAzM@g`L+I%1xPETZks&3{ zkZ?3BwmV4%HSG;M0pr&GykyRbPvtgdS>T#M!b!;bS~SuZ43=EJInYz~pU0osb0j_f z^gym8kI;KMxfu@|eJlIYX*7TshuE#UVBW5;OT^E9BERp)tyCOFy=_L2G zZ@!_DH_~*S<_(BzKer=BPRFHy|2Jxp59eXExp&krZ~>UY${E{7Oy7t2Yv=eyC_2f7Sbnz&s zH|G@*-pCOaNZ0pHXd8&EXGed_zAK-TPYY&GIHK?#W;}bXZdk%$$UL2Ay$6{yzZxl7 z>74RoMY9NrqF5{n&CX_W=yO_p&jt_LG(+cIX9EI5KJukn@Vvb{k@V-RDopS?}Yq(C<0$#PoG9eE@R52kbEjHY)gbt??#K|Ig z+6xVs45L{Jl1Aqfhef^e^CJc*Xjg<}N=>42Rx~zzzNLy~g|RAEoD3EOmYWGni8e0X zomwAM?u*!*{p5r)x^_!h-`O){MLt!66(MF*71Sn=_hi9Cj9uFbDBPPP#9Aw## zY5w5JG8tmUl4_N{x7`8~a+p5z}RKtz`h zPCBpo2%dVmX7_x(_2DvjWhLADxcw@vZ!#w4@%+9<9eZLnC)ek^FU>95@%lgsp{LEh zm5PPa$*E`XZ3%dS!P$~)@M!brrPr)j@N;PC*~aS5 zBFVKScnum6=7nW-(*{%4Wd(H_zSsQ<+Chl-BYpMAoIQ4U9_9+7c%u61g@jVgN87GT z72k351`|bevNMzDuoLi4SFc+OmXmzi?|cl$XES$k#f!8%9>@J!*A4_69G+$_Kfz7> z_4xZvB+M;hA2pNKzy?xbzb@1q{pfBJZly!?Tebuu%RNS3m{L|dS6^EE?$~bCG5-(b zeKuN@98!~k5Espkik3Rm0g_2L7ixYrPV&{i#{D zNmV7uZ==tP(9Q%svx2;rA!jwe-HicujWzZhJIlhSXt zWf}f0ju0FW1pP7`5{P;jDOEvvS1$zmJ?w*aX%1SQyCO*Lc0`i{F>XvWxAa#hdID1* z0G-#$KWaO+et&B?B`62Jz##u&lvQ}EHGuDb;h}De)eHqf zTwHwIH89|^Axxrkvz{S56oWuI$6KNGQlL_(-``fo@m?XQ4%ObVwzvNH6+Uc%%fk)c zvqyF^40tm2be}JVDlvdwf4|9YL7~LB@QJ~V8p=xPWowd}6SHg~Bkxr2oC{5HE6|}P zaiXviQQl{8d5*G#J_)D23&MWv1VoZZ&Ifked1-# zc)eBo4?3dLctXSrXK6W~i76tjJNidhU}3ywvpuoU1571-ldxrXx%R-wk3Bu*Zl%-S znRv2nls2$5yYPIiE;g{GZgEF)EGM=vSd$GEa_9K~i4Ozm^-PQhl!V~MKh8Nv)Br7q z=?x9ZLcHL76SA1AWsc{YXb@Tz(0R^+a)ha3ltcD%AouBR{C%rPh z#)Cf>G2VnWH^kGs7TINfLWNOkZ0v|mU2|#PY~K+!T1t#i3mi%f1U9kT!{c=yd|(fO z`kQ?a+IuNMA0rCkD7h-n;6-pAWUEp0d@8y0l|B_^^-aH(ufUiz>p!74?>MP&XeO&M zn0q{g=de(S{cx}B>t~3>1iSz+LJ7mrUIL^|S>bl8%M+730^_{_j;9%N`A>+U{haXQ zuvD+i)58lA0{$b=DB#u!1l}#_SF!{bw;(XostPha~tW*A~<*xobJHwKaOL+H2IELEDSW( z8F+VJUXz-^|MJWlII1stgX)6fa0csw)OybO^N=?K@<0|E!|19^tR(+lf zm$`NnI6YBt?mlw6uI83~o74t+hTzqDQSfL$hr_W=F#LL-xZC@xJ+#U?y3AoKzCbR5 z0*Tt#U}=Q!YQA+f1Y5iFGhfmR#~wDC-)WE|uX=7vUsSXUTW9Z^ZPFMeqnp;ldI_EU zel|&KfWWL)qkPsi@|;1fytaXVovp!w+BoxLEq0BbR|PMpfMAxVw_J*>h9F_>KelET z8wevfbv^7}A$|Osk1JnYe1PDsKul3pju7(XVyHVyljjwLjf3eo-MW)zWj(GGE=(0~ zsVB^0S88Tq-6`b3zwV^U{BD)Og=jVd~mY=SJHwROK(!)Th7ej-C zVsXH~W&)z5$nEgh;89kmRR>ZSfoj-m34Wv(aN%Y;5ZI{U&UhVkNxq1{UC+^QiQ6}r zoP)U!;`lcIdH_5xv5z0BPNMMlE#qjZQ~zW#-228hLmv`vX7FFGIuRFCDapU?OZXT6 z>Sq*TcJYZd4c^wfv!r$~Gf1`HI6JOkNP;yU??b-s2c0BR=8V4OeUZ$Q!%ft{-ie)V}|#_z?eyy2~_}+Ivvy zL`Kr3Igs@XiCmeGlYmzLLGTsYB3>$g@E19TAgy$d!^88o>j{rr?em~;G3(UUCIs+_ z$3VfrMrn#trd~N%kych`#9Pd6F`hTeR3i~|Us2H6`Eu!;iMji!#o&}F+iLY%NWpP& z?VXh$KhlOamA%@*T#CY=78?!A3@av`v(Uy8taoSM@N)(lJ4Gs5M&t-j^}uL#)m4R=)9FZw}0Zhfaj72;@Q;6=Ks(YrFH}A5GYE%9O@E znkFl>-X?mfbt}~*l-4CR7f$zTuCvfFdbBi59K4*GQO(uB;pgX_^q9$8FC#@0~=dGW_;@YSlkPZm|I(R|dAd$kNrnPtGWg zY$?^4et%WJvHkCec*O+5f&m2{!x{%w&-9d#EndfD`4L?l7+FOu4N4nC12jLGBs$UU z%DX6}GZjj|B=5=4QdAW8&EO;YWfsj62*%ct5l7TLaSZBl-Yx~-QqFoH!qdxo7n*;) z1k%j^%$r`IEq&JCjh+UFLrm-W?O^?^jKp|6-T>aCT)2@X9E-ffoUO8(JoTneQ-rXC zsch3mL1%E!-%7Eo#0sC;4UH|Hphdj{;wLeubMT`st?g9>)Z=Y*}-#Vbax*Q#ATf*2@O%^brNL>=)pAq;kDqhscRKL-t;v znP_RYd4zEK_RWXH8~W>wf!-Z8#b2u|7W}}p_W{utY4F>$1;0%hYMJATAxfyLS(edk zJmnXC<*etvSqn?i8v2AXOc6E)+#$9C;K}VTNpg#^BR)3F{qSyTurzNV)i1BW>tJ5H z?X20372fZp4~R*?rYz#(Uo=y>R<{n2DO%Z=lgjWc0f-q7+eQ6uU&}K*T3PS(D|y&P ze=}ilHHf2mr8e@w#v{ zcoVP?{3>xpvHCicho*Wg=&|#rn(EMGS+C81GqoYUyov22N0Qymu&1Tg>$~$t&`xBh z68HC-`O`d<=5h_0gAAovpFqAyimMP$`>hIDI#+&^b6%cnn&f z4%u;bBRsAUG|ki%FXZ;+u>^RXUi-V>c#OB+yNZ*#>md!RN z+&xU%aLu%UCLzmIS!Ope-07W+zVXqx0-~TT=3&7RVL(OvLs@dI)JjOIy|(eqJ~r9A zEt2AP{sZI3?N6HSS>GnNK*qbR<+^A5rAL$n47v(6zoLi-X6V?Oz|0e!X#xuhb42BV zw#amE9eow2-lNt^kYZ5_^h%I+4uiv&e`lI94RP8TD`0R3_hTOFcV8}Ta`GkA`nn^N z#IhvA9R?O{C%a#Ilv8UHMWulQ;tew`HsZi)1e0|eLG4>c`lmDY_(g@-%WkTu(xZsb z!vO6Bh+leE7w)SwTGcz|kDy4XhciCkW%KE^^`8Z7^?~W4FMWsB(sk~BAo<23>v5~5 z{s~TUa>r1_s#S+}W4d%})#%7+1rHu}wh?@Vv~IRU(V4f-mkELSRBlBV+UCq6Jn)v9 zqH-03hl|*E8%%(W7uhuie8D$xdNvBrJz0vPs*)ZempE4A*<+<1&C2B$hTnAc=P_w! z9ghff*1HWKpWOT_tL=aXBGxQ-2(cxMbq(0BSwHe*^%Xomrx`^j;z;T%;2thuc?<~K zQTi3-%JXhNQn#E(!Dvfb9cNlAI$v2uC0sjx7^Lt<*btc4yLfGMC!OWZSA06`)wuel zh|*1>@%Yv9odfpWE+p_byzD7j@^ssa>d?2 z#q0HE(>)9k559OxH53LnC?Z(L)IGdw!wg1On53FAMvtXM0o*VnS*Or?!g7(SCdpfF zRph{l+6ps9FNs=^MZoshwyUPTbZ*O~^fn`Rl>(t zC45eXpGq-Yi%!V}d9aRuARTZcE`2l!?Q&XShp4jPlpdMo>Sy-R%b~WzAgq6 zQe%;r`oxa>{}M*L@rW^pbDKJ>yz?bz=Lk!5TIcexPw;!%eD&B7UM<(TL z??j6kG`E5(z&L%lr0=aG)&mo9yk=>Y`00_@=UO@a=P-u>kE3ToV=*PXt8W6HGZK*@`IXIm5cg!R3kXj_vCK|l_!%^4s z?lKQ~>#w(wAQD7~NIV(tI}ybqctx4Vi6tKnMc-C}n{v8K^``KgsLn zA`!TAr8nUW1GRC}I6l%RMb8YVxH~8uggvdNzS=1@-{_f{o7WtWjhu^6h(vUF5uM8~ zxXY~IdyNc6ItKW~W!GmALpn!}=>O>A`?6RQgu1@tUdysfy%yy~;;u&1JsXDXIT|=a zg1RH>&rl-iyDySGZ{pl-g-&yU<|I91AcbJp zY!(BSf!tNm7scJxSarnXZdrNah$1be7j~y8Fb2q6UAx|4{quQFL$`MZ-s}%y7@8yh5Qt9b8 z1h~D!dl~ws6OC;!DL&ElIebr(0F{$Att9lYNDS~sr0!)#q)Fenk2L#(Cn&Ne3xQj6 zd%$XVH?j>jU>Axnx_2#j?ZGYDEuE!3(@diyB*91B02kWWLOI;maom>ZWDF#Qc9HS+ zrS}d+^Jl74syS>EFmg!=Nar83wa=9bbr)ll<=$u+Bc!JeS8K+E^E__xh79ml0jK|D z8$VznQ=sk<=GKtqO1|Eh^giM1XMg9~qRJ$W>H8cy536^~s;5YH*B-NeCeX3r z1?2BmEF$57s@=uKxHbavsk~D~cUzv{AyaDv2MgtGg*wJnMZoOJoPjwE1&yyqNqw5G z`Syz5wKokC-PB{Rt3pQ#@@p`j0w{Yq<`t! zaE_>oe$fTOD^&o%*jIPfUa|AgrV;rj&FVyAFM|QW@x~=U)wh~GeqNEZ7N2Z};)w&1 zk`Ru7vuLtqAfJwVat@Cp+RO<{MYLo6Wa$!eLbLeUKtaj?wH%;aw7;-@sWLF8 z)w9#Zpq9hG8E_T0K~~ntm1`{MiU|D^zO^&w z@Qe<)hA8zK6M(n$JLud@iN!I(0fFrmw$u&rS-_5(Q4sV{e8q&B{23vdCKcC@K?BHu zGFP67x1LhqQr)N_KjbvnTPLmetO7^FMYeU;Q-Sy0I|*ZmRmZIaJb2|5P8a`Y^h!@>w95cX&oJ1)P zy2dt$Ga)2kE@E#n6VWl6nTe;MR7?T8XG&{B>vC}W-ssk8SVrKM%@T@~1eG&mj)u?x zl;*+rox9LN`n`A0j(kFesIII8IA?N4GSt8m3hHN14L@j7y4&Aejd--p#gVUeeQoM^ z=f@lZBVhY6hZwzZygfLDX>D9F#^s8_c9WqNzFjjo4=S+mZQc&+Mz3qEhv-V1uI%i?0qErg~^z{D(HsjkM%mQibvKv%{TM6=F| zl2QK-?)^oKe+|xDN5ktavkl%bVnzw62MFl)x*ZV`I-Y_e7 z?#7w)gIi9gZ>{p;7YLIrvu`IVOf$!@9x~d&PUc+!CJsw2p%RmyWD02ndQxxuQp{bU z46MQ5c8BLS1cGPji8l7|xq`i4S5h1*DAde%Bl6#}xlTx0P5h`j=pwGU%W~-puc;+j zGoJTK8ug3{Zg%GoI5IVNK)BNY4!ovJ!i}$x8T0_3dYmC{Rq78yyHfkyukZhMiq$pX zdVozT2H%dNs@NidJa`p3Si5stcac|t18VCR~u`x z+BFCCOmDGFi+)OLj=L?jKLblPX_|ait6R*o-0y-XM9xP+Dm@}ltRm>Xm$kY=7m^mr zN?6=B5gDPXMyh4A8vD0XiZ^~U^e~DP1IrQ3efamp=<*mJcbBDz( zp>f5T>{J7|+dR%6`&FM`(EGS=!9^1J9^&?Tqr}nP-FyFCi>Gd8!R~ig2j3DnlzjcO z=#&>N?D#>K*^#79jUWRIqdhgejrpAPvb#j;z~uaV?+N_x?;-N#7z@h(Ee$R{pq65G zasu8|!|}#pV#o&oW(BHS*EWbNAjd=I^&KRkMyS*O>+iWm+QIn0@`EYrZ-Sy7dT7{} zL$U{yD%@#{0geMd{RmR&m2BHQjgTL3F?5J19_-#$^bfMS>GUU_@?Re!{NtBy6_I?B z@4x&pIQ}yw#sAJw{J$O_zHDMcKtO1h`Xa3Q|N2g%%9${Eb=@ZY;{PC7BQ@E3}G@Av=n@#z!dO_xyRvW3!5I3Wm9V)9=q IMGXD_7lK973;+NC literal 0 HcmV?d00001 diff --git a/src/workshops/git-workflow/index.md b/src/workshops/git-workflow/index.md index 560264d9..61268534 100644 --- a/src/workshops/git-workflow/index.md +++ b/src/workshops/git-workflow/index.md @@ -47,6 +47,9 @@ Normally you would decide on which "features" you were going to build and then b For the sake of this exercise, we're just going to [add one issue](https://help.github.com/articles/creating-an-issue/) at the moment. Your client wants a beautifully styled heading for the homepage. It should be bold black writing with a background shadow that makes it stand out. +This is how the issues console looks on GitHub. +Github Issues + 1. Raise a new issue with a descriptive title. 1. In the body of the issue, provide more detail about how to complete the work. 1. Assign yourselves to this issue. @@ -72,6 +75,16 @@ Alternatively you can do this in a single step by using the `-b` flag to tell th git checkout -b create-heading-with-shadow ``` +An easy way to check which branch you are working on is to look at the VS status bar. In the following example, the branch is 'FAC30_updates.' Clicking on the name it will +VS Status bar +By clicking on the branch name, you can view all branches, both local and remote (those that are in the repository but not on your local machine)." +VS Status bar +This can be useful to get the big picture, but we highly recommend using the command line instead. The equivalent command to show all the branches is: + +```shell +git branch -a." +``` + ### Step 4: satisfy the requirements Now we need to write some code to add the new feature. @@ -130,7 +143,12 @@ Now we need to write some code to add the new feature. ### Step 5: stage your changes -1. Add `index.html` and `style.css` to the [staging area](http://softwareengineering.stackexchange.com/questions/119782/what-does-stage-mean-in-git). +#### Staging changes in Git: + +Staging in Git is like a preparation area for your next commit. When you modify files in your project, you can choose which changes to "stage" using the git add command. These staged changes are what will be included in your next commit. This allows you to selectively commit only certain changes, even if you've modified multiple files. Think of it as a way to review and organize your changes before making them permanent in your project's history. +For a more detailed explanation, you can refer to [staging area](http://softwareengineering.stackexchange.com/questions/119782/what-does-stage-mean-in-git). + +1. Add `index.html` and `style.css` to the staging area. ```shell git add index.html style.css @@ -157,31 +175,94 @@ Here are some [great guidelines](https://chris.beams.io/posts/git-commit/) on wr It's also important to link your code changes to the issues that track them. GitHub lets you use a hash symbol followed by a number to [connect a commit to an issue](https://help.github.com/articles/autolinked-references-and-urls/). For example if the message includes `Relates #1` it will show this commit in issue number 1 on the GitHub repo. If a commit totally _fixes_ an issue you can use `Closes #1`, and GitHub will automatically close the issue when the commit is pushed to GitHub. 1. Commit the files that are in the staging area. + ```shell git commit -m 'Add new page heading element with styles' -m 'Relates #1' ``` + Here we're using a second `-m` flag to add another line to our commit message with the extra issue info. You could also just run `git commit`, which will open your [default text editor](https://oliverjam.es/blog/make-your-terminal-nicer/#set-your-default-editor) so you can write longer commit messages in a more comfortable environment. repo visual after step 1 +One final note about committing: +Take a moment to review your changes before confirming your commit. While unstaging changes is straightforward, there's no simple "uncommit" command. Although it's possible to undo a commit, it can be a complex process, especially if you've already pushed the commit to a shared repository. It's always better to carefully consider your commit before finalizing it. + ### Step 7: push your changes to GitHub -At this point your remote repo on GitHub hasn't changed yet. You need to push your changes. +After committing your changes locally, your remote repository on GitHub remains unchanged. To synchronize your local changes with the remote repository, you need to push your changes. + +1. Ensure you're on the correct branch: Before pushing, double-check that you're on the branch you want to push: + + ```shell + git branch + ``` + + This should show `create-heading-with-shadow` with an asterisk next to it. + +2. Push the create-heading-with-shadow branch to the "origin": + The "origin" refers to the GitHub repository that you originally cloned from. Use the following command: -1. Push the `create-heading-with-shadow` branch up to the "origin" (the GitHub repo that you cloned from). ```shell git push origin create-heading-with-shadow ``` + This command tells Git to push your local create-heading-with-shadow branch to the same branch on the remote repository. + +3. Check the push result: After pushing, Git will display a message indicating the result. If successful, it will show something like: + ```shell + To https://github.com/your-username/your-repo.git + * [new branch] create-heading-with-shadow -> create-heading-with-shadow + ``` +4. Verify on GitHub: + After pushing, visit your GitHub repository in a web browser. You should see your new branch listed, and it will contain the changes you just pushed. + repo visual after step 1 ### Step 8: create a pull request -1. Programmer 1 navigates to the repository on GitHub and creates a pull request. - - Add a descriptive title (e.g. `Create page heading`) - - Add some more info about the change in the body. You can also link the PR to the issue here by including `Relates #1` or `Closes #1`. - - Select Programmer 2 as an [assignee](https://help.github.com/articles/assigning-issues-and-pull-requests-to-other-github-users/). +After pushing your changes to GitHub, the next step is to create a Pull Request (PR). A PR is a way to propose changes from a branch to the main codebase and request review from your teammates. + +1. Navigate to the repository on GitHub: + + - Open your web browser and go to the GitHub page of your repository. + +2. Initiate the Pull Request: + + - You should see a prompt suggesting to create a PR for your recently pushed branch. If not, click on the "Pull requests" tab, then click the "New pull request" button. + - Select the branch you want to merge (in this case, create-heading-with-shadow) into the main branch. + +3. Set up the Pull Request: + + 3.1 Add a descriptive title: + + - Choose a clear, concise title that summarizes the changes (e.g., "Create page heading with shadow effect"). + - Good titles help reviewers quickly understand the purpose of the PR. + + 3.2 Write a detailed description in the body: + + - Explain what changes you've made and why. + - Mention any potential impacts or dependencies. + - If applicable, include steps to test the changes. + - Link the PR to the relevant issue: + + - Use keywords like "Relates #1" to reference the issue without closing it automatically. + - Use "Closes #1" or "Fixes #1" if this PR should close the issue when merged. + + 3.3 Select reviewers and assignees: + + - Assign Programmer 2 as the reviewer. They will be notified to review your changes. + - You can also assign yourself or Programmer 2 to the PR, indicating who's responsible for moving it forward. + +4. Preview and submit: + + - Review all the information you've added to ensure it's complete and accurate. + - Click "Create pull request" to submit it. + +5. Post-creation actions: + + - After creating the PR, you can still edit its description, add comments, or include additional commits to the branch. + - GitHub will automatically run any configured checks or integrations. ### Step 9: merge the pull request @@ -195,7 +276,8 @@ Now your remote repo looks like this: repo visual after step 1 -You can go and close the issue tracking this feature now that the change is merged (If you put `Closes #1` in your commit message it will have automatically closed). +After the pull request is merged, you should address the related issue: +If you included "Closes #1" (or similar closing keywords) in your commit message or pull request description, GitHub will have automatically closed the associated issue. If not, you should manually close the issue that tracked this feature, as the work is now complete and merged into the main branch. --- @@ -216,7 +298,7 @@ Your quality assurance engineer has just noticed some problems with the recent c

    How the heading should look
    -**Programmer 1 will fix the first problem** and **Programmer 2 will fix the second**. When you begin working on your weekly projects, you will always be pairing. So Programmer 1 represents "pair 1" and Programmer 2 represents "pair 2". From this point on you both need to work on separate computers. +**Programmer 1 will fix the first problem** and **Programmer 2 will fix the second**. From this point on you both need to work on separate computers. **Note: Only one line in the `index.html` file needs to be modified.** @@ -233,6 +315,8 @@ Your quality assurance engineer has just noticed some problems with the recent c - `Fix typo in page heading` (Programmer 1) - `Correct the classname of page heading` (Programmer 2) +Remember or take note of the issue numbers when you create them, as you will need these later on. + ### Step 3: create your branches Git branches are used to make sure each person can work independently without affecting the code others in the team are working on. @@ -268,15 +352,20 @@ It's important to avoid making unrelated changes as you work. It can be tempting ### Step 6: commit your changes -1. Both programmers commit their change. Don't forget the multi-line commit message with the referenced issue. +1. Both programmers should commit their changes. Remember to use a multi-line commit message that references the relevant issue. (Refer back to the issue numbers you noted when you created them.) -repo visual after step 1 +repo visual after step 1 **Important: don't work in parallel from here**. We want to push, PR and merge Programmer 1's change first, _then_ move on to Programmer 2's change. ### Step 7: pull any new changes (Programmer 1) -On a real project there might be lots of other people contributing code simultaneously. It's a good idea to regularly incorporate changes from the remote `main` branch into your branch (especially if you've been working on this branch for a long time). You usually want to check for remote changes before pushing your branch. +Before pushing your branch, it's crucial to incorporate the latest changes from the remote `main` branch. In real-world projects, multiple team members often contribute code simultaneously, which can lead to divergence between your branch and the main codebase. To minimize conflicts and ensure your changes integrate smoothly: + 1. First, always fetch and merge the latest updates from the remote `main` branch into your working branch. + 2. Then, resolve any conflicts that may arise from this merge. + 3. Only after successfully integrating the latest `main` changes should you push your branch. + +Let's integrate this workflow in our workshop: 1. Programmer 1 switches to `main` branch. ```shell From e12dae3df9fb28ac5f8da9fe6e55006a10521500 Mon Sep 17 00:00:00 2001 From: Alexander Date: Wed, 4 Sep 2024 11:02:05 +0100 Subject: [PATCH 080/118] Style Step8 --- src/workshops/git-workflow/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/workshops/git-workflow/index.md b/src/workshops/git-workflow/index.md index 61268534..52e0c406 100644 --- a/src/workshops/git-workflow/index.md +++ b/src/workshops/git-workflow/index.md @@ -239,7 +239,7 @@ After pushing your changes to GitHub, the next step is to create a Pull Request - Choose a clear, concise title that summarizes the changes (e.g., "Create page heading with shadow effect"). - Good titles help reviewers quickly understand the purpose of the PR. - 3.2 Write a detailed description in the body: + 3.2 Write a detailed description in the body: - Explain what changes you've made and why. - Mention any potential impacts or dependencies. @@ -249,7 +249,7 @@ After pushing your changes to GitHub, the next step is to create a Pull Request - Use keywords like "Relates #1" to reference the issue without closing it automatically. - Use "Closes #1" or "Fixes #1" if this PR should close the issue when merged. - 3.3 Select reviewers and assignees: + 3.3 Select reviewers and assignees: - Assign Programmer 2 as the reviewer. They will be notified to review your changes. - You can also assign yourself or Programmer 2 to the PR, indicating who's responsible for moving it forward. From 03bc12474a361b3761908d2d9ca1ad46ffa51bbf Mon Sep 17 00:00:00 2001 From: Alexander Date: Wed, 4 Sep 2024 12:16:02 +0100 Subject: [PATCH 081/118] Created Github Projects Workshop --- src/workshops/git-workflow/index.md | 12 +- .../images/github-projects-main.png | Bin 0 -> 281103 bytes .../images/github-projects-roadmap.png | Bin 0 -> 238750 bytes .../images/github-projects-team.png | Bin 0 -> 139264 bytes .../github-projects-ticket-to-issue01.png | Bin 0 -> 227516 bytes .../github-projects-ticket-to-issue02.png | Bin 0 -> 55342 bytes .../images/github-projects-workflows.png | Bin 0 -> 74082 bytes src/workshops/github-projects/index.md | 134 ++++++++++++++++++ 8 files changed, 142 insertions(+), 4 deletions(-) create mode 100644 src/workshops/github-projects/images/github-projects-main.png create mode 100644 src/workshops/github-projects/images/github-projects-roadmap.png create mode 100644 src/workshops/github-projects/images/github-projects-team.png create mode 100644 src/workshops/github-projects/images/github-projects-ticket-to-issue01.png create mode 100644 src/workshops/github-projects/images/github-projects-ticket-to-issue02.png create mode 100644 src/workshops/github-projects/images/github-projects-workflows.png create mode 100644 src/workshops/github-projects/index.md diff --git a/src/workshops/git-workflow/index.md b/src/workshops/git-workflow/index.md index 52e0c406..26c513b9 100644 --- a/src/workshops/git-workflow/index.md +++ b/src/workshops/git-workflow/index.md @@ -48,7 +48,7 @@ Normally you would decide on which "features" you were going to build and then b For the sake of this exercise, we're just going to [add one issue](https://help.github.com/articles/creating-an-issue/) at the moment. Your client wants a beautifully styled heading for the homepage. It should be bold black writing with a background shadow that makes it stand out. This is how the issues console looks on GitHub. -Github Issues +Github Issues 1. Raise a new issue with a descriptive title. 1. In the body of the issue, provide more detail about how to complete the work. @@ -75,10 +75,14 @@ Alternatively you can do this in a single step by using the `-b` flag to tell th git checkout -b create-heading-with-shadow ``` -An easy way to check which branch you are working on is to look at the VS status bar. In the following example, the branch is 'FAC30_updates.' Clicking on the name it will -VS Status bar +An easy way to check which branch you are working on is to look at the VS status bar. In the following example, the branch is 'FAC30_updates.' + +VS Status bar + By clicking on the branch name, you can view all branches, both local and remote (those that are in the repository but not on your local machine)." + VS Status bar + This can be useful to get the big picture, but we highly recommend using the command line instead. The equivalent command to show all the branches is: ```shell @@ -279,7 +283,7 @@ Now your remote repo looks like this: After the pull request is merged, you should address the related issue: If you included "Closes #1" (or similar closing keywords) in your commit message or pull request description, GitHub will have automatically closed the associated issue. If not, you should manually close the issue that tracked this feature, as the work is now complete and merged into the main branch. ---- +---https://github.com/foundersandcoders/coursebook.git ## Part 2: splitting the work diff --git a/src/workshops/github-projects/images/github-projects-main.png b/src/workshops/github-projects/images/github-projects-main.png new file mode 100644 index 0000000000000000000000000000000000000000..7d8ef7e5ad6a168a0cc1f8ca08170881a1b04809 GIT binary patch literal 281103 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¹W9wB6Z0lE5wk!D%U;O%j zi&rkgseLZu3lPH8SQY63fsP8w@uGCI4ckbIv&Hb31FC*wTeWH$m1E36aAM+fR(jby zk+`Vq5ANN+E)_;)U4ii@@vv-F)miaej9$lFe5{8L>(XKIljQiD*}6gY>RBmrF1S`H zfD$|+B?{k}`dbhBhgG5A1LEjtr>lh~xIuv(Jx_Ko+GdoyqF8(Ypi@~WC^weh?TGlI z{BnevlV8d$i`(H_!=xTtIz*hqiMnu=bzz+(pZkD8UaYo)cu#Hy?OLwaH*cXm@f1=} zrl;r+R~4|nv1z!m1x1hv{-t**1F%fRk1&W&Ry=ZeI%<>Km$row40gMmmS6>S2l;&L z{4RK6XYp_s1fwD@65mbJ&U8$R@}_i%)-j>AH$$;7_^8-|3PXlFi&8XvU|X=IJ#vT` zd!wjawp!CA`eb^_1Jb%Vbwc-UIQmG9Il~;$XXx0BCLKGET{MV75fynAg@ouahmVnJ2+)r@vGs2`eHHWw|T;ONsGSC>2) zqTJ&4^8@QX-V56l>oa*MulCkLjfev0q|b+V-uPEAP7m;KeQt+j!diBz=JZ!l?T!=ctP#>YU-S;-)bv9p=~%SN^U3)lPjD0!iLb#u@xP6nRcShS=?V;grs+Tt>b4ml#>#} zhER%U?=F@h8otB zLKrP|DajSBgUWhn(2E~33X>EHZ7x+f@-x}L+|fyXgvazMsb{AcAn5iVxv>VEetiDQ zgx4wliIu-X=4chI;N7E!dXw3wlXo<1YEL9pLM$o<2le}Y_Wj19aqV<^Nfq7=`AHon zA!Z$u{wr7P*Bad^nWGCDb>#~iwPOtZb-bDcv1O83Hs&C$oz7YcSt4c7Sz)l-1&u#X z)y4Vwu-5;TYM$&M4S{94kc9+^pR5wgj_7+aW*+KY#Ko5FSB!?rR8>4v)8P>{v8~)z*{Sf>NL< zp0eQx+7?v8fc@VnAIls;Q$h3#IXP7NM+I|JNHkBLQaGAa(l*+%@~baZ$_9*)lWQ;Y zjBXK%bU6PjYb`)~DCzTVP$gFb-;`Ck^E3Z;LnO$(o0m3f934?56xJGfitjd;4KL73|Zcyy!_qCUt6v=`@PiV`%u{^p4`-AL_qp8ba#1OG0ByDlO zqlNo_=XyXUNzY?PR+PJN*Mmq1jx0rKxIofPIzEY`-HXbrvk-;+GDVpd-_n!ah2F#$ z6)jIr=M+Cap2HD>Z*NRjz*M$UE@Epu<%JF{Bi*fxKfYLbQc_cv6&ozQAx!q$Hd*7@ znf{oaeEAcwJ)Vw9nyw9psv=C+R8ilhpVnfD^vmt$1{-TzQY#L8E8$cT{W7m1Hs4rk z-7qin^(R|^XoF0b`%DRMMQoNH9TJ1*`9sU&iB(IijTO*}mK}?&I5-eYRvI3^^hriS z65VtsB8?TwFU>33PNs&!h=@>Z@$QtUrEg^wbmBvVIwsjMOrBV4kR7l~e~}O$zyB2L z#Cy7CB4CH9qh3mlHk_j^I}^noy09!JVr5m7AI8QiJ)tb-CHcXuEqBMqlxikYk=dT( zLBNJPM@+`-S$L`|Pimzk(WGV@cbqF^UNKpE>=5Q;m?B%eXKe$F+bQAa-umI31)
  • *X@PbnJw#e`9AZGECCyf`1$rH^LWsxS?i*@Uf zZlhXpqE@X;C}G{9qV;dzFcN(+S;9?F0X!Y zz9&<7Wz?L!KJ)%V^_pivnAnx<2iNCi5?wA;Vn#Bfp%5WYyBsgqZ35xx@=H;)dyHQ9 zh*lE82s3eGdjU6racEPqu7Ys*!aK+Eoh56C3GH+pP}fGLNGIL7$b+2S1GnSyy|L$z z><1T_Q9X7wJ;^=Bv8WSc^?(6wY60v&9crov&{mP)mIea#U(C$by9%!~Pt@)h8mwak zt#tUgFLheoDt0`|oSRz1%a8`TSTA?uIZwOn4$*wPHT58TWp*#t{cUl|%+NPZ1S+L! z5Y<5Jkh|wHI-sJAE*TU>zWvJ2%|zsg;gC;HBzcSIKGUBpAW_~Tu!*JaultbpFIrTb z<`?HHT5U#18{6ArLOND^)y3dQ)((SyrgFeT%$!R&t%Dlcqf|8EOT3Lv*vAALN_Ln} zw+h;YqoQACeMTQEz8sHAKwu^v;d(BBA7py+8e1U(DlQRP(-L3QFR?@%3EwV0{=HVw z!`(56`lMxs(l3GNFap|mB)LwjO;-MMiXbL!q#_*I>o6)u4>9x%I;Ed`o?S)zi0DG&wPwd2ywc;3mBh#a9)In^K_iD=;7qvYelF=596v-s! zhY##dLG)dU&=_}?|F)ZbBBG!c)r}Qpho!qed@xRfHL8*xM;Dh=-Hn#4kk2&Ldnq*5 zjPl!p`mZF^xNS%B3q{t&O5rp-5xwG5r`(9*T|~U<@s0}xsfbjjA#}9m)nt(jBWpaR zlZu^3Q`;MeQNhr7GJiG2?;F?7a<#xd8y5aHH#<^WB}~t5*;5Q&*V67p^_U8E>^BnKu9=p z7u&za&|JmEM2$5Ro}@BZx;j3z`%i{9zbT0t(i*vp_h-0x@9uuTjUdNZ$K$?ZCH9;@ zmcW}uF_og|QS1xtJk76fZ2qY|_g|Ap%;f-4!oT9?!DZp&AoB7zge8>qU*)ScrAxaA zv{?tAQg+h_#=rjs6WQ+Q@I5>fLs$G9Ydcr@tt`qc>V;^V^@6vJHKSComtl73q8xct zY@!N$<&F#?kt6D2f<+_`$Y*vO+Kg|qwevDEu)myCRHnS5xp zL0b>0juvxg@y+~=`_MwK?Os>2j<$BBM|ZyD4gTDA1U8uW=3s*kxc4;^h1!JnSA+^3 zgQWAXbGf%&&gi!Hts90Us?ZGmOmv^2QDmm%v-0I$3g;Mxz=nYbKTjXte*>>_9=MGr zCc8Yl#rp}`M3j`!4AmX*BmW=~Sr&)}Z@EuxgSG*CIs!V2dwW}lkb-FQSFt@3Z6)~j zZPODfTXxLV&^)_62{bd0=junBZS7J$yAr;k&wD%m0(|8xrQ)J;ZG3pR$8=l#stz0q zcHd_Nl?}2m?4!?MV4;}You1^vH!9M9AGM5uPIp7jztB4%WRc6CH|Ua`z$6`y8`%v} zt{0%*OWI?9&%~8QK$zzseg%_0e0ENsa1`IAtqWmili7DwqLOR(Ra=r|!#Zt9Ma#+m z{k6>^L)`)%q+NHwFDmoZRf|0Bv`uP0ntV=|OjF3cGAqIngIBWA-(o*x4p6n{kk|uNXdM0D2EQ#oWa>0B4h~CzuXHc(b_9yq z96z78y2mZ7b@S5@=%1_Sov6LPr-s8CZcU!U!?CMcK^YrRT4!&n^TYpf{X6*zyj$(% z#MRl4TL*M=lFE!iM6RjD)Rzxh01CV}U3D81aWfIzQ{xbEfIU=mL+!`lIB3CIEDbW} zGT5&&lhp%=6THAA^im5oX|N4$g18#-O5d$s9=AZX1{n_)}1>eh6ZZwz%Y*RpktiU z&(5U3f;dv`4erHG&%H;6_0P(3Z8ZXy@fUbrO^N2yO8z<{68lv1TVr#>;H!X5exXW~ zUDC8WgD3IR6F+4`w0#G$WHMtTX>e>ZKZQ^zE}5D@m<{V6?~%XvXIa>{o-d&&w49H+ zQOT$pmp3hV$a*I~I+XTO1S4H_0*KsA#^BiD_LdC&z6K!3bqx)@oQXvO6hA9U+6(;5 zo@_#<&dz$$O4;NMFL{}Y?SHo#3<_g-`HbxoaY|t0MkI^p?qh#HyVdw(?7_z#eLM?9 z8OFqcycUsuMp-xC5_Kh>Woao$QR}!Z`J{h>2r~SS2Pqx-=Mxo)HPOFMpTEm_G!35# zrh2nfh?5-KS{LvxGQWel43&7@?9)W`Gkh{yEEUsdK3y{6QZCjwY{J@Zy_KL!WNMH?lE=_}gHnqCR81La&V?v^AoekTIk`Q$C;@!1ku>X!3qNDS z#Ya9rmgwsGx5pbi#!;z}yJ9;{jt-IyAI|GnX7P?}q@-cZ7DAdn!9kZ54u%hY4zF@S z?$T=(9zfdyFm>r&OwWwV)A;sbb4C3YOMe3d>W9wqxl(qj^?RZ-%W$%1&|*6bR~Y@4 z8Bo;hBAs=;+Bq#dX3uWW-QvP8vw(f=GquAW!N~O~>u2BULrOb4cNpYq&WhVO#u{oM z-cJL!`E#`6=^F^8#lEz2^QQzyo@QqAx-W`eUEzS4CCpfWV+w}lIFQICynWQ2^N@r- z1H1b07=iNrF7(soP+in76dztEYbby`1qpP7eadVP+n2PH60=^BNUL8Bnw*$;8*n)V zJ|6J>n|vJ*fUuu$eanm+W-khkeu(Y20dm;YH~Jk~$RLYIe>FV5@^QvICKW!EI_qQj znx)v1Zz9)tC0cAnbw_gH@YFyrO0P=D!ar}lbPPlLJ!ynDq|)L9Pir6#ojl@Iu;^)uD1@linn3=UsKhhtspMQp!oMT_8kS_y{lP(Co#6N~ho$-aqe0Qrl zc%sRlB+W-SwNSYORXrF|k5=lN`gXIa$Q$2Ntj1wG$RrrGp7W{4|2uX5g>Jz2Z^C{< zrgl#^@&c^IRKJG^p9`t^L^I}!qPA%VEAUhj5;ESI#ShP2(>kgyZmPvdyo>>!1}-us zvg=CmNG=;@c2ll@!}Nx=oaDc+?=;oGF1}Ek({M3i6Aguv5rXq~LU_>e&r@{Q?ZHI; z6(|Q!;@<#O^g*hu6v)0s*YfK9JAqW|+k#=TR3d%D>(F3CVR+I^Av1gy>*moog>hG)RL&ZacXr!i~L;64P z5;IQ^W1bh-+I+Zo4GR_J_FHN=Ea9o%rb;e>T|%s*{4;f=1d3%_$2cZS+?q(tr>fw&)m zEsdLZ%AVE5w51 zSjBbrs0Th;&8|_#B-HTu%<%SmUN-L%N|!vk0ENq0Vuwy9-wR_P;wtHR-m;Xi6J|gUm~rbqWwj$|GA4gjU!(s< z>&9`f`gzvbUZO+T2MHYM-_A;65^v5Lhc>+&gN?DfJMo>{P*}kZ_2rIl%#%0zyw^ld zU=6CU*Oz)H@A6qlSpFksw5#vKJuS}y<`k3w{X5nEnQ8(zN)Qrn;aU4`V4Kw9&Z1rr zplcbd&0Rk60*}r{3-I(hWI0;s#{BNxp|Yv?0+ZnPvh(>Yd1*D^!`2~#eZfsnv zVz**#_zLHczx@HMWpC{bLVPmSr~7n+)aeeKWiQ28SC3#C+0!Iu7wJ>q+l6&)#!N5K z&s6_|Tus2H)NNzx8Fn7j&06{oI&GZdI2i8j>Hm7KXP~lXCl?g(mDCbKy!OywczK6m z4g3);ovn0=122C|@hPUVHn>X57B9eF-g;D)w!>g=hH1owGpm2Cp!;`WE-$5B^05(D z2`b{SIrPpPRvnsg!2&^1q?A z#USm~H9go>d`jfbIxrRBkdC-S5>d;m{nz8<9-dh*1JYeZ3aao|+)*K)?a^pJD zybOe>J!e5?a9CeI^&7%VE4U{pYFhEp3mBHsb(p>_^qs@%?|x2flgM2!e_H+v#c&=s&U+^BOk6E>;-V& z%Aw!j;g4~?LwnZxF+NQWY)-75Wb3MF!p4>d0fGCq_d)#aZZeU?IDdt`9@xiZ(y-2m zTu?gsEH2)Dy@4wSaFI!!s-NOziQT^u+bhYxZ9M9@&U`(wn0iYl+R1zL>ToLi>dUDv z7GNZ5L4)si7490?JKN9fn8*Edz>g{9N($+}WOtauI!F-!vpn`^eXBsZ4&2wis0Clpet z^?_8$L!?*+)VBrbSht6bX%ht9B8O<~|2p^6InWI|d|C|?CtutU-QyeVpYp1YHthIY zoKr*#FA|JV?F^&}wq7)P#?#ABH{*hrwSN#17UipDBPhI@w?Sgp9L2IdQ4G$hK-@-c z3r`BB=NHZEOB#oF?Qv!m?L4zDkUltWF~b2;j-ei@RCNqgllENAS1vkiF0N~67z{1Wif7lomlJkaU|kG7A@Tpz@C8Md zt_KYc7!K-#2KL=5F!4B|vp^^?dR9{BS$X3>vd0zw^(zexob~G<;Bd?79rgt_ zlc7gp_Z8dU?%e1<%~fOg8s&cA-w{7@N5AQn{+NC2V-&{c|Gkb`F^H*GO>m+2Z1+8# zmIiXq9d7@9_{~E`nU>JQj6BcEc9JNkv|z#6;qRFh1!!OBI{|B}fnkSfmsh8DYqkDU z=MnSO*tel9Pn?5{f}Q7NOe%R6-X{%uc3s(CcLjy=!CBrE3%!VxR+ytctyy+vjQ%|` zKoc`}TNL{D9UJhu+}9qn|7}@tDcONKNkVuL2@4r>|{P>P6aZ5Oli`O^$G34vSVTSe8 z!OzNIAi6a1(}oBjsCL4FG{JA9&$$K2uw*Tt@qADCJ*vC1v=9{9dH`6knk4)Te4EKw zP7YJ9RX0u6bMj`a^&q@{YA7E1*G^ogF)t4f#*pvvbs90$cNXX{ntMjwAm)z{LA{e z^#}iNN)){?v6Bn4^W;)c+{zE~9MBq;S7R3q&Jo=z7f3ndkXlgJYE_nXRjY(`TOD;h z@yDVPV|<#4+u-7x`OPmUrj?DVWw(u^O`S=VG605Ewc*PWxd)Viu-( z!`fr18vp^fBXDp68FPuoqh^QV=pDNGQp0qSFWxdwVBYZ>zFH89xM*Omus_e?{RM+l zceRDeKcaeFWx&optpMj*eHI^!9vC)$Y^+Pjw*$ik4in|ZG7~-un5)agWHO08fZ9JQ zI;86egFauVjO_P@p!TDMWyY+k-0TXN55SB2?Xy$6Vx(ttLF6j~`yW(h7!NkYXhK~p zIOG|!D6Z9O;o*I_VOJGx+h0by442!jujf%%(9*<977%bKK5$_>G zA&6&pA?ynl?~GHFF1a2?>j_ajdxc>^u5c6k#{rh?`rC|U6za62iAER>@5Zu)|f zQv6X?WW(bvGQzU88QK@85fT5IGm(EL{j3k3hz*lCR3Z(AXR1FZY4HMm_5{;JZE7kE zuL~ru)^3l-Zvzr%%I{dQFfiZz+Zt;X?%X)9_*3yf+n|m-9EBmV`+uu7o1whFd{uYD z+yA538U+*O*EEIu^_f4xUdrf$>)>hM$BZW;j>@}r`CJ1V#Jz3wB9$9p>$e=wzgvsH z0!$RtF+91@jR@Sk?rP3;aoFq0Nf}3M3|hj3XuAE5a+9x7izPwKfcxAO0@BqGHuqq* z)b@n=cS}^*;JN;DmuDh7H*-e{8QfsH(H^G>ynQRN3AVFfiIW3Z6?Objna)kV z!wtR2(>G1~%ZG#Bb(R`(mznzkBm zB9cx3r4YLQY@?GVY)ugQtpDryRTQ=BgqB?_F$v9ze9UKDv748#R^KT#D|RcjWp%#F z9#FSeJ&k!ILok9c)%$waL3Bdbc{B z(09*)`^4F}i_#=ttDr^H_$1wPijHAo7gBFJX^CF$zxH2JM?TwdcaHoN2QK@KN=2xFY(X-Lk)2fdl#1x9w_g>2%IWQ&$#UpNS4m zxvjZ+P`%*ow;2|lrqE_9X5og28Knb-WM)Vo2=uabNyY5_B*{Qu7fW5_lc~s`QvTI1 z#5B!H%;43*gG|vFm^=FBvTF1PX``lgY|-q-i>h{9mirsBY-B0xp~yPd>aw?CJqR7R z)Ogn^{&Y06%hFVfD_?NpNVYjcA1TEo7Rp3K?>0Xf7IlJ&a_g-u?!y=meQ@yJSGZwF zjEb%NaWhA<(MOUqX0!mrCzVrLO)(p`6=WFGEiq(oP^xVP0Qcp&j|mM*0j z#p<|1(3)Bx^Yks2)lfCyl8SZ?6sczFVqrq=Y{~e_TP;iOSOKXcN(0wRWd*0Wdp)US zalNjcWM8N2YOg4!lg;6XJFWJA8{(VEL(~eUSOsD#l<(rD(glFDMufs~%0JIbHlSar ztEw`gEG;j0G&<_h#ZvN?eAK;Bp#zcMEaG}4npCh|mrIeqP2e;r=r@hwMaf%+5A46{ zCgjWQo-z|zngQEga60mrrfKHATRaRsKY#w&e-0+5r&AMDS8$^9gepCA^NwMDg%&dk za~pqKkvXCkw<}Y52#};AX>wk3xIwkNiR0Br{ab(OS#`@D|03cyklDER!A-ASc%}MV zKR5Pi>9jS>7t871!H+?YvY!oIw~N4Vqs}j-tC@Em{Rk5a=i0{Xd|TpLb+C^Z|NX$V z4tw0;(MfTGRwOyt5H}Or3M;#su_cJmQ#;{N-53Qt0k(0MImpV$=aV7DzEjaiH&WTI z=(sX1r|5CC_q;?ptwKJg3Oy2(!zS_+B!S%QoCS+$HPWhZdrlYA_pDe!^(c^y9n=lg)@yHoOpG6?_fq}VuJ=XjvOzN3cf6Y)76)XO z8i%bSqO2FYX^sPDCJz_v=`28+POahLd^oD+9|!@H8_bA@9Y>1-69ZPYJZXhp%c$CDcKN3+7y5Lh>Q{t$%6q0YSMF{61GE zXQBuE`*$rr^L4%qiDWavUs6NYvh#!hey6gsB{5D%rY(vsU+S0KyWF<8S3TR)PQG+? zBY*j>oNK0u5ai9c_GDyp9<~ykjSib%p7H`&B3hQ1mQQ1jTSZo%-cnMk@iy4cGr%(w zE(atG|NcDBnp=!slk@y$I&n15cKz&9d1c7JadE=1P-)TnF1e6ZgB&ygpkUv8(9El5w9kgkn@)#NI=})I+x3HPhz0D6+y{4D~CmIFIHr zsA{_E_r>-l)kmgD3h{qhyE$*H62IRO%j|sRGQAj9@^{qW&y4HCmo*=re5sK>Lf~MF zTW4Uh*oj^uiD0p8T>6#n&WI|RCqtgsgKr~uID55u_MA`N%ZfMr!jwif&xWnV(2u+2 zjfqS!YvESns+b!sg^D!&=@D`0xMZ-BS2MfgC?epY2B*5Y<-{-n-%UjbkD0}2Al<-S z8%~+xumK+l0rCjTXtyg-*QCt1ZLd13#Z1pOF6RBGib&sW8xNBCan)Hr)F6vodIt43 z>q5VAg)^sQMC2Zd^fKB@?(C4%iwcVbHpK4atYB@)V%J^e8N4I6S9SAy67VTZP*hSE z&BAok1L5mB`aX12Y4t{aeRB&Nhy=WlJxR_uwPC&3KY?_4C{z z;9Z)7=^N>Mz^@JYbVl*Vd)`q3b+brhaA&kR@HHBkZBomyH;$*~xY2K28`VB%39b&w z2IV=d2?Aq4bxZH-ZvAM(Xwh@7Pc1=#x(+Ly-v}mBR9I8nU7*=Yk~b@! z7xanWV;)a`<+YV?F1@tyCxNy#0eH`xEL zR(SnqB$~#S4ju;Ht1}jX} zPDfU)3du_WmBYb4Nb0TFse7GWxxa14PFpQ$*~yLBuCbqNI`n|PgcyVuYjzGM9T)y2SOt&}mNUzT6wg42xG@4N^g%b^%IVyf*-qxmHCJ~rTP zoTR4PS22alds%#Q1a%X|An6wF-XN}L+E`)gk>GdS8<6Ocec5~?-ri!`)8?9#(YPqE z3%DCO&T7nlON9E%sU_+lvZ8YD65o2VFpemhqbzCfk_w;mdZe;uy17gOOxSU6zd!@+ zuLQK?M;NKf9F6N#$%cQ|yl!yBr^1;;;4-l?qb8o+UcKr@+i#&%2CH{h%J#fP3Jrb!OU`wp>vDgk2V7nv_ zez09+yW?Ng<3@-Hq*E!Q`fSqX$Eeo#BzyJr1U5tcM?gC@z^%YiS~O#ti#|#{+3s!m z%rK2bfoldPO0W<-zWZqWfrN!6BgyS+7v@R2_nCX>Dg|V11FqU)h}eX#LlMsCXaNWB zNnbf`tyvp{l1LB-2a7zNnB+*5wqwyWNvtOOiXNE%jySyfH*N#SR1nA&C zzuEb@n3_>fZW@8%rjeo-XWOG|d7LIF>TYa22zHIH@(;H>mTse?qy&?~DkPe5)J&i+ z(M|o^5242bMNlfZQq(iIWn4O8!3HXf#@W_IO3%4RyAzcA`3H3SqNauS)G6I>o!ogO}P|DBc+pwNC3 zlrs3$z{REGr}$lTCqvrf-$n2m|KJQF`?Ynn#+1W~*S_!O;8>e1)!4v#`&8+_?R~TW zmKb>oAC-wNr1GWHYTDg|JwYA^KQbN0F&$T$Z47?HA|otO_W7NpO%8h{ctPz3pR=*h z+`v4NTCh6d(maz(At;z$s`D{nNccaQCyW5?cCYF~z}4tU388#BRzdCqNZfbd<-AQ6Sr_musn?H*GHdqiKQY| z99}`y)jn)^+apu$kv7Yx3T84NhpO$^snTmeN>b43t<-k3V+{k+@;ZvdbDAm#@7*Y{ z`WCVSYTzjqAw97tm99u@nz3R2tZbjX<6=+p+2PEA$q-(>W0Zlot};-##<`_CE1iKl z0tWV;T(@lD4X(?5W$zW$1d@55z&?ke$QN?e#;w%Q537zP)FZ2@1dZMhJ5(8PYLnbo zlQFuzXBx_lqB1<-`W!ags!4ue#h7ydTdSr!(}-v&vfqC$ELE@O$uPGNrn~r7^G=&| zpWlHh;^E$n(VUC-GgVazZfAJB1CNZbj?>laD@jzFO2N=Iq6b>%Rektvj!af7jVe*>WrZ1qXN~CIY%Z z1K&rL`h>oNlR-}B?~&HpPQIGlM~A)cZMO#e>-T#q zzZBRB;xJB5fZUkZ%jELhbx>O2S6mn)S8?k`M$JRc-2>yAoy>dID4q*}!{vKc6oa^2 z!L>>AUIl6}PJ#K=0F%eJ)|)}!+pm7eJg;BARB{L69WR(AUUQv$@!l7;I{kCoitUMs zm5mO7-waGrngsMbX8&ES(4m*yA0SZ$+4VJEosn3uF}jB}w#sk+IV8_;Ot`7ssz_Yg>ja&T7wlFN6 zKZ&cMCp-UTPeV&$o&EWzm~8EL&@jG+7E=36v=X*R3EfpbnS-bLC!*7K zEhp&oR7|^9E}6Ivc4E~WQfT+w=jbHglD5phOV|KHEY9B8CCi&+El@c1oO8SF6Jo$Q z2S0oDD=gAwwdPsq}FD&;Bpm?pHnWcw$S9wXx?gcsPc9qtos-0EbuMEn`eZ6gjE1pWYVo zvCDRGUDPqYbWbxeW$nGJIjgO9B)@1-6ApB}$nODkAyC*2JMZF|jGaF3j<0V^VX<$7 zJ^eT&?iFe*BzjlT{uHiEgo6XJgPLG5= zI&IxQEsCex1_fAs*_JRkO}BJU@VE6 zS*kCi-06zl=W-y$GG)TRrRRFnLvMw)oqM%j-2~F$l~ScRYAi7p)3$zfKG;#Fe6@7> z?>^qNB4p;ZLU!wTJ&^#sqE&jO`2y;?d|YDck>Pi?6cCw0Ql^Hwuoi6*k?RTa3D_B& zD=jIR6H{y>+|$!0sqgXIns!<+6XsBe%1VZAkSS1k@h!A_9JWu)wi58tHx+p^+N;QP z@NNN=GKnl@MfL@g%LlL{IkuMn4X-HJK1(TqmyEuo%ST$EM6Z) z9EaymM-#lBX#th-A2EB{3{dGqGv|G1WV7ifeCESU@o%l`;nla&Jz%}VIgxx8(A2b# znagEK99>!3KcTnKZM!0>ZG=auufsdc`!v$KuIVy8s}jL7u|(0Bw5X(+m*0z{8!f-1 z^i)iY+=tfmA;aqz|B_f7Ulh*J@f1F$cQ|_F@J|@|RNsf!I^2!4GbQG^;H7~61DC7u z(EEqOazpoX?CN3u-)q&xtzFj!xL@sT{WD^2XdO$YA8&?{Uv-f->LSei=Z@c0_??Nh zkUA_E`Bm6D#KzFr&(3h?v@?0OmoiA=<&2Oxe+n#C*na;xTV`Gk-B|Jmua$9_u9b~6 zb$2;5h42i={ud!1B|d;kd0WU_S!%+A!2Y7yCyxYP8OLo>o4fJ{4Nxdj7?WhYQQp%G~9inIpHj2WXj@lT35Z%(NVc8waH3#6=F=BM0t@B7*Sne~#yQ!%N^e zxVZ1@d!3)_JV)EdFO^{Z$_s51M;in7$Yw?|5`<@O3^e}K!nZ!?kKJ=q=`u*|HEDbR zcXv~BB&-|{rBNqnT=%*5I&RZm?hf6Ue)HUVhIx3d)x*Lxb_^)4#y4D3Jiv2rCG*J!Xh?E@`>&9BH{^O0?PmVUZPe>dI9e>)iMGVSlHQSg z1Rjz+wLE<{mQT^M-rG&BWIX$NHqsxS*1u0<(RedhhT>dJ^`zYv)#pGAK09%2_j{wy z^U`$YlnE)85w+Ts|1pC1W(rqN7?j{=aga&u$@I%crW(@k1$M^=@WAj+&q$K0;qw}0 zLxaAzq=6e+Hg+ms|2(qcSHA-!G&AVl%lco75URl7S5Rb1mhEHF@_lZ#hj8@>v2Wa+ zQA#{+a|Ru~z3V4t^X`d0+wgbrW=e$o-NlX|9+`;@PI-ZM{Fj=}c?#lO0iJFcf&l05 zV~7%98?GalCHVY+s(9sy(@U-{CQ;Dwf#Z*3U2-6ywWJ#mi%gw`4UFsO9wmae)#X*V z{5wgjnFHhZgyB{>$xx|pxnTqkf^iPyqUQCyf=ka`4-%?eW1fCu@>G9Kw_5(4)Jw}K zR1?rFDq35YabRjMAJ!cZTYIdkv&(-^+r$-8n$h8*#!_Czbk`5e1hKp!j}#o;nzpW= zC}pr@_P55r1xMIEbGP?nRQ%xp_`20nKK||K0uYtf+}6d{ln33=C&|7}bal4;x2fWi zdc9|(tNtn!g}tZ@dKINU$gw6+Khdr_YazrKZkO4L_V-DikxDy6v~{~QCQeP9qF68J z$;_))Ds&=dc*{>6yc|XjKZtMXPW&hSM^K=TbuTi$9!?$UO_hULqhs*RT(E*rBJiXWkJ>I>mJv{?~@uMn4^ zknD`Z+0piL!T4%I;85Jr?GpS{7U|0Sv3x3X2!1T6FO(L>U?b~|MIJ~iQSvEU z=($_0{{Z~-PQUBF;5yyb_v1x*>Zs7HA;w~jZl$baHqj<%D1wV`*YEN3Dd&YT#_=<^zqtuE0G zvaVg18S6NW4o!OEhJ9t+Y}oRG@xKwv|4th_yF6^P$hF#<`AIQ-ZyyRNSjKm}4@&N~>fq^pW22bPOz zNFJs@ocEj{X z$yVL6M%0w*G^SwvbZ+vk&o;);Al5i-bv&mAQnW_gT%xkO*_{XfbZuzFAU*o zmxQSqhud~=R)2cwrlSZm%7Z;NRLss{#(CA-y%FlRlXorRCrU`OH)QI)N_D16je1In zUb-d+=(#f>FryZ>`56Q{{j7TWn`KflQmaLlFi{s|xqX{vf$IE$MtXA-C3zUeIxa0{ zei(LvJwlYonZwukS^w{;TDJ0o)kpHIQ4pGtL&zfbM*PGq$uIApMAiKj6LgAr5?>D8 zs&~EHNb_AZIIV110W7b$pd^s3i}UGmsz0F*8z2wo8-vI+Y-KUx zwUWs@%^-rH@W_}>{3-Ir;!uA!QIHxJGF30gExYLWz+1|uEE8(@Cga^$+5W$b)Z;mPjr=~L-|ttftwZFP5W zKCF`TInNJUw-{)L(tSuH>-A%us+C<|#r^nWqgnbSptbzr4`K6={NGV53G%<5s|}C! zc|@u!MRF-n8nvwzD?4#=NCQ@idQflgZi{s#byaD3N*b!6KQ?dSdYmC2R-hAYv!2A? z_pW@Fw!qu(%bV$o;oX9~9NiT1>^C3cgLc(wHz<24wR|g1Ift??>^ka|wM&v^JP<$*3&~Ln@F4Habv4pETL|uuGG43~WogPH zt<6$v&vsfJ_TLWoKay0}85rV0Z4FgqYQXi0P^p8>&pAE1>ZIWL(+M)@1=d8-S3~W5 zNB1yH3BCfKe_4170NfvNfY_BDe3EI&4&f^cI(y8PYhv2`$1dI3&)5$-Rk%xN!^%Kg zwvG}kz&%%W`fS5Mn&a>=V`}iw?7;#c4fBJI-)Z_Bb=2CFKj=&1I`Tu{tjVSu7m2y1 z5iWkwSTyEnW$5LnJ)3i{Zl(RIas0`3lCMuWg<7m9ih)m_)q#q#X|B6&79rlbAc2`W zW7F= zJt_Kqe&x>PspS=BMt9a`noe!FJGv*tt&>o6(hg?xI`T%rt zEDF%BPmx;13n=ZHBCaeqiunCBpKSJq+;nGmyR6syyvwimR{QOv_*-#$W<{_EUJxhx zvcl*VT^&mulNtdD0!e@27$>~sm!;LAbdqR`r4$K{SsCSV&)Tq0`cK&JrU@+lG+|ri zK^-VZ#?g|IpI?5Q{_cd17!$YiC!c<$=XV_51$Awxeha%Lv>{`FUs7y1_ifS9w`af` zi7>sYZI3X$Nsy6RQUnqHE6KN1n{e#JR)A(-L!11{pt1NVwL* zUAc8M4REz}5{kAz;P?je=fd-*9WB*OT(t2H&*Aiy?{j&E*?oo5y75Pt;kw!+h)1kg za49aNU}9*9*k%8H)V18+@fY|oYPpmcWBzA|dNbV_a_3<7DV`3FCij`FYlcv_NQ zUes)*_@w6Bx7SzN%sMDH5UC>b%r4%lXyWD#5}N&BOPpD9?ZCVAXYbtiZ-J{;_eA?^ zBGOc!=GFBmjB*leypA6&dnXwU1uQUF1nS9eQ{3lBD&egY?<%^Z?1&1ei}9Z)aL}ys zCC8bZ6bK-OP1aXvNb$yD{WJyPbLL@P&#uP(W%hD_>*Ft#DLmen3aTse4z4C-O^_cI z`2pv8wv0Nl%$)$*tuP@;(R{A$xb5c~i0ZOj{4w&|9JM%!xoQZQu!(1yeO(heUXXu! z`&M?q&&wDpgAL{yf#g}*VIBNfg0RSeT8I{Xb1O#umt^@>4UFW>$JQPPPc@DWhNB#5 z;ZTt~xQ}dE_V}a6AC{Ac!Sg1=fcw=jtL2*@;;N*5`IWAMrEra%7$eH3s zdWoe!E?R854kjk>HiOJSk9UKZe_P$-xNf~C-Rs8zRY?A>*lk8gg1?$Ke+0ux`TV+E zMPjj=Yio@O*%T&nXXU0vqLRc%g=CwU#7$gpUyM*{fPwn0RyDOw6@T+Jm3ZbbtNKO* z`Vo5Hl52TF<>y3$QSgZyKv9J{QDV6eVTrI*Cm%Vo9_qD;YQ(fBs~`^q~3sr(TU4V2SCmF3DXsFW`CNC8a9vxaaZ z*WU;Ay$b3CNeIx`NfeHqLz)L320D4);<%Wzr^7VF2A*!+{|A!e?k$OkLqc@smYU?) zZSL$guHwNs@7+&Jl!hER?#x;6E}PwF0Qoze@RDJ)<3uvlU*5Bg^xoLYZXV5U^)#Cm z!NiMGWW#piA-8&JEWI>6*=NDav9d$uXYVF;^7tz*vHIBVtZoTAGXpI4`H`2Sqkhxq zbP4k-eRzDzyKPOxO7^V@vA#Kp8wcTqhMW&pt+=!W*urIOS^UmTx`EL(eC*$De~%X zp2Zd(=K7&b*9h0B7^vICdAb%;G4?JzN0sjsXsPQjU=Lr25`kxW6IP0@I}T{%4&o%= z4SGc`S+wqSjE7D%)jjAE$So_(f571?>EWg25v@^?H1TvT=Kjujt8|oTSsyVhD|DB8 z^G~%msYs;ZzfX!_#~ityK4ft^V2lTJ|+J3OUyoIm{ui-(Hx0pdz*H;d9xzEGD>zk zSJvs^y4e8alPxsG`baweGynU)z9p2+b?M|FC`r)*sR&)$*-CJvY7oY#w9RkCzE>Di z7xazcNdQ!7A+LFdfXq$#@xgbh$?2?bdKo>pe+{@jA46SgrFRBJPdMR_UM1V4ETy0y zfWIiQAS#xhH#bH|P^x3`LTU2-`J>ymaph0(4l+u@TzguEdlxc;G^qHeRR=-3P9e32 z&r~Ftk5$$vfwFUKAY~a2)IDjYBg(1=T9Zsn1XR2& z5-m4kx1$y=hn@S}nRRFMe*6C8Kict2*K2q&3X07cL!{r__0}BXC*?}JD}g(#M|B^C zzg3KJUltzU@Q<$uOjT9-bC3q)+b*i`dvrhMJ2*Dc;$hNYQCetM<5f?_jSS{;j*9w8 z%WNQ_q(C1RQ(={D0J4W(wTc}zEgyJwLPR|>%3xHUGg6u^-e?S?6zgsl&hns|9{TJtE|jsz79vH7S* z${^ZSth`SQ-@Rn_O#BkEMZw$~g>BnEU6}xGLOU1Mc|eZ>^AYLj3q!|kb7hT;QSf8t zfb{E9I8JDA&@UKXUYWsgI_W35%19H31u6!44F3=CY2NyYCU5@DU#$;6oW$M-W0|SF z4GmIf2vv&VzOw#MPDH9ez$o^hr-P&SFF=U~@m+lfgWemRM+UXxW)AJIGbcKw|P7F$V9y<02 z%es>e&!gTZ?b#qU7Yxh&=5V`T4q=i~qs)(YbUtGkCf>Ks3(ueS0%es50%a?!ta+l| zR^Q}@W9XAMx$$cCg|npc-FjBEFvcz)cBjny3u_+Plq7TrY5mXmqwx5iVaZam1V9P# zLuWc`O}Z>S@~ci3-4oIy`@GESI%U&~e#SYcnfZNpMawXtS;*IZm9r&;i4pcn{7SVQ zB|E3ZWlK5DE~GTa_t}doU000fI@%-3euwt$VTRF(#{mBSn*kfWOdh;G3v0sqGRVCp{M901lnP{bYGiT%AA6Y@*H((Vc6EPst&d0Tb^U3jNwD&1OZQHKB+(4 z+#*qW00qM4RNF5>*3&7VE5K^>!+>cDjCWYEwuz3GHB7XZ5-z?6{eC+64<*!a#rdM= zL+4JJ!>6tojVC%5MYgtm?%giXUyAo?Vh1`d+J$O|B)*hnbALy#p!?4F^K1~YR>7#V zmx3B-PexK0{u=pxMh&-n%gQla4kb>M(a=IyM8TF?ZM$?eGpw)+gjjjMa`v_yc=pMEiAcZ1-5aQX1f`1fHZ4$A&JSEhr_ zz2-X-wPe0~ReJhrmNeT>OKoAxVZNU<3OTzI)#WYB4SE(aBlsz!gOQa6Y7xRDh1$y~Pu_5&pr4tqtws?=4rSC#znhvEQjyHA; zTF z0iUix_&OQq9DL?`7lg-@yy~&nvL6zprNW z6~g#;q${wBy%5r0q`IGf;$O1e-L;u3Uo%$Pp2jI$zoCuUCpBJE`1>g*p<8s>f(W{ zyCBzyV3$qH$Pk~lC+^Q(WZE0YNsU}z9pX8-RS?OQp!V9j28@u6+?#oz-#KFL}@sEgC9rH-mp=>Qm6s#vV^GbBU+W=5_UhYz2b?4pZ2f;X7c@yfc1fPmNYIDa3PZT=|M z^y|{tlmYR=BXvXB@k?!)ZpJ9tENt4_T7Y7y61UsA@B|Ash_F^bY+l@=T#GK@T$t@9 z3M%k@@JxF@`NNWVEt*$PtF!09HJ8>(BU5;$uZN(asjg%9xbHD$s?ab^Wg@GnA|iBT z&2_SIXGH3dL9jta_x>tGreJ9*-(k+mWwD=w!)pmm7^dDkmf4MooZ4e&+j2*CKyvt_1w3 zTYKnb*xio!w2k}yjm_2E<;r^|DkBH*#dxKKBtH($N^62#*}lNFmEYh~I8(RPaIn_F zp)I}h*)q-&f(&Q{^;h6^j~u3bRJ?SW{zAonJ~lM9>^0VXp8nc%d6hvCI$mS(i`CYZ>eRd7 zUb_QjhihSd(YjC(7r>&{Z8|)mn`C)klyW>dJ2}dtmbnHNyiF9~OPEBxOf8Hc7_2@~y3e;WbbFtl-8FD#p`c0zWWYKSR z{OG@p9G_$4!LM}b)FRy-`U5QF>RHrxXCt%}W+f}iAZ6KdyB`Ve%Eb5emPmara%pk| ziGfaLv&S)~uXd>9F0+-avh=k1h^V$)M`D)WR(o*LfCa@XWO|bu^L~=F-!5P}ACO{w zh&1S{14)J{8KNG}2J|(rd|@3*U2@j*o%6ETpZEUS$t}rtd*G>Hj566QPK7pfN;bpr zb~hjT4T=4YC2FvvcZn-_Xw7bP(`ufW3;L+|pxx0$7q{GE`w(WTIC zS~5*P3I2;$6OtCqIpYH^X|X!Bwe3LVx+`3^8Nt&7JJz)H&1GA>`09AcvCOM@h=Af_ z9G&2}*zKxqWt8mvz@==AT_mV#v}_<_{I`gr!RDh(PXt1?qJp{4&C*x_(}k5U`pI+U z_*1oAAcw_8Kkv2hRV=*Vgg(vdsyyY~900HrdE^=EN?aH_bb>)CY3RP|xlk zK0#V~En#l&%}&*(FYTlVu41-sl^XPe)`MiMic3%~D)TvA@h4Jn+!*jk!J z(3G4Dz3cnc?yl_zstrMY3P7s3gPYRlMa(eVE5|FR$`rq4i-;vYH4dLutgNV=G^d3h zT%z^HMVEHH@0%wLm@#yVQDx&=arJ+!+sg176Oo}TX;Cz_=%9jTb9)!$q+M?pC7Qro z6?|G}M}3JpLijB&lWOAP$pv(3b-?1Di!}iT*7m=VDOmzt;6K3ZLTshNw{K^H${HIv zltm4aEe^SREdW-xmCkloz{iNT{459k?($!p^cN&uo8R6!8ORYYK^^KIfb7DW1y-z8S$H_Dpf8^|@1cU{Gr^B@ z$^Swl?BtuDg8usV`r>V*lp2BICzMWyJU3r1fBiV(JXxJCU>@*;7fS~M>RUEAL0>l2 z7YB=wolDWceoLPpEwl|l?-8w>7H#L)G)Na?$fH1CUx0sK>UwQ&k}A8GN09z((jl!s zTGr)j#xJ*fQ=g|niACV?-osgvZ8`Vg5)j;;xtn%4!qM|_ z?NBvrFl4^0V+rItLqR5i(vT=*T z#iDYNTpZ&6@Yai@Vx@LVR6zdKiEgqh+%G8{VPisYkOAbqa6fo2NPQ4V!*Yq+FE8vT zOI(`vyyTMa@OUYA4z5^WHPzFmoj;!1CXm#fmb&s|qd9Ga=&E=AOh!AxKPqwD8;eIA zg+IvPHDyfg!Ua`)ee=Xq(fNHS;*pVZ>{S8AQQi`bnx@>m>L^`wQpf5$Ec4T8OGYc= z<1FR+BD&J z5YE`b_M~`LKl8A>^VY@8`I&)9)+cAEN>v|Rz+A*x?y53HCx;V!ot3*kxfgqJ7LAr8 z>Df!Xv5i>Ce$z%+EA9S{JlN2Mr?S%GqB0+4zoC-mKhsE~Kv{IA44cCr5_qv8y{8zS zE1hz5`;DM7Ug8TY+~PL3(DZWo^lDFuR78VBdBcM#psqe-9^E@hpE(xWkxO%$B7Bqo z%91AhmKnJ}db=*YY*!^%JKGyg&T@AvgxIyP5Va^poySGGgD0a6D;q&lUw|78w>D%U zsGJqB)Dl2bJ3&8_m?@1Ra}V{=3ch?dSw(HkFUPUsyP=FzL&>^xxHXRRDhCh$Acm}l zM@jQQ;uyHsWqw;o;jREV5P963jJ)DW`W(BD5sjJE9pYYK0 zgvHFu5~@{=r5kL^U*k)#NbD71BS-(I1Laf?_oCnnzpYGlyDO4lLZ|)-YdRT&25;AE zV0|wWQ?>CW8;sfAp&HXsPNg9#+!MNC7fdFK3jK_Uky`F__atLLZvSD$A<286f8npy z#knPw_L7gI_ij0>zq;=BAZ_yiMO>)SRb-DfC4|XNcmC%*A93z+JpW0l2~r3r-RLp1 zxOs7eF&i>HF09|1Qgt?3hrZB?nHVnNU~5PSRY(R{ad5IS#m#zzFKkI@krKa4MTfGe zu!}X?lt`d0o*!-sDkc7{tFP0=f4GcjC~ISU)yVwsVmbPXzyps_bN&K2dwGdbL^ncL zdXEUAfUte*5zA!kumA07hj~ob3rF-j-!YQ*-P2P?kt=5 z$}vCce!9)_!BFc{De`Xio5|;A(t-jRM@)d?*LaiEG zIN;?&-sPMPaP<77`UEwTSC!Em+!TzryE;ZN*T z4YF&w?`xN%@PYjA7&E_;bTw&&f4Mq83pf{K!^Juc>OFF+Ka_5%KDJ}`ho`M5*@@

    EhebpXzGf3K3{^jHLrFBK*zw>#*`Ki;aAOWfBf9NCNay<+x zr`@zn2|_pR#pq7fK2Ea@Np9Kj_RVX?=c3j12D>tX+0D7T5)5J|b+Q29dC_}i!|kLj`-xf zv?ddB{Pks|^HaLUCy(9+N^f6fsxr|*80q~9P%DF{4@J{t{~NEn>dwNTGa5>;uJe4hHoWJ3{|RgemPKj&>6xv=0(BaJ`Bylo6?ob=@eY3- z+e^LcW_^w8m^k77qhD>~UM6x#A|m&!gjqFsK;T}%ks^0R(aEu6I_e^=F^N5M z&ulk^?nbvvHlNu&8@LJmS^kYK2da$V=0)iu5u(Ab-F@#ck;U#{?=>fC5^fiGFHUkF zQtRcI^9DN42_)-QZ+&ATore--kz1eAF*gw6)B2xvBf_1m9|m5pe2X?$f7M8>Yh|Ya z!AI5FxOMu_5OpjJv^$&F-N=^yA~zRq)6&8#x|OlM0hu4eaH-)ie>tdMbAmj#-v6j< z^TuzlSxM@G_PKz&eNNay`ee3bG>vi>NqBY2ad)sYu)IGh8Ai)`1P)Axtf*x`cB!H5?YrF#T((lcm9~~C~pi* zzU!S_<35-#1>Av{_1$n8dPQtiImP9P#P4g4@UGy#%vWudfqR+N#c|Shl79N34K4d8 zVJqz%NF;3B*L9VTA~(O>HIA-8Sb9Ns*TK|)I_|q$;31j$u=)2C*jxUzKApUyi`bIq z8$=${`BPsYZKmw|@zq$}Ymk?NYxHlKp?0&)9{NT}RY@>iO(_85NjrD}ByUV4?#cWq z(LEcr;Mh3mw!gVjBVTlDV6f!dx2r0r)_mFc>Rh8q;S}Ya=y3#Gp&$<+zrnb=sm!+; z*`iVhU{xIMBb^64$?|)#(bo3Y%40c#!UTT0U% zFJfb~M>$v7(h64%U7mcy8*(-frfsyRC;RN%wWF z^*PW7-RY<&XI}kX*iiH?6FF=8yN}q}AQC(?iT$|K!|7CcdJVdNO+~3E7j0l2lb`dz zzvAo3$`a0qR@sm>TPq#B2RRH~^Iorqet3Z8gvr9H9xSq?= z(W7JF!_JZtZla)MnOBN9;U8*g%Pdp3gpNf^g|3LM9KUkt3Ozgmo#>OMW}_J;{R~2X z_WPMu>LP5@Y^kQmx$(23?v)y)F{vMc^JlL@A{=}H=>wTzolNBbJuMrh5PsAPjjB<+Nqi``|Z4wJ+t48On#Uy<5h&n z&gOUNh-<3O6WgkK;wl#Euhv{*8Jkh@%1Whs<1KDTZ17yGVM!yPUb{)e&$!$E!F7D9 z+~_Z-kSUJojR|RtG~;PCgonM}xm9NCZkRTgM3iIXgQuvQLs-{rVHc4O0V?u0krE?R z;1^#<09>{wR~J6{h+DgsC5x6SDBVw6#jgR!i=SCs6fF|%+>;scM!^09eRT6r(k9n^2yjhzaCDjqRS?n3lOPNDMD{D&*C+7fq#{DLWJ2C_ zo>e=K4;A5UV$rJDh!u0gv?d@`YJp zQZGL{>8eX9bqjIif?9mtlUKmKLAw(DHmj-_I}sfdxt*-(kU*XF`8nfvw-4J^;=0;B1p`tdY^s^AEcCB#t_vVslR33 zCJD4o2w@AWt)VBoN?IzNZb*-}`@Xkp*wZ<`S@eCJUf$r?=a4w==jmPgZ~F(r5uP^f zb>cQ~<*=yvrD^&79I+jscCMIMfMJE=)hs48@WV{0StWpf& zOHKiOZsz4lXR_!Y9@MOVIht^DjHv^WaE}9Q(>|<&e6cvL@BSkgtdit4a@g9ZPvX39^?i&K(W2FTNi- z%V%m4Eadv_Wg)3FBXBq2PvL&a<@&KQuyu5i`b zTEwMhb&}P2VE5gf_^??S>DiAEyDQNhPUAaRLV5ZM2p7LeqUU%E2R5i2yT8Vb+^xwX zu|VX?ThOc3FBCGmWBmjBMqSeoZEEyYsf{VQGOX`Cho0_7035z2r``LKe{XO4cpf0Q z6dXZX5gkT-MUdMo-Me;k?&F z^h*Wmt-mq?##|3y#IU#udW`=C{ydG8bItqmJoM(2f|HFQ`2=a`=+`G=`&cpjn*_)U z%$KQ86wK@bwruZJmkMWA)YgvyGv^lW2&oC}Lq;{g2^FDRS3}ld5ufSxUF7dQyP*}W zI@R-x%~J7d!DhnMDsS`h`I(Vz?%lA^Fv{Zy-bP~$Z#y)-sjodLI)|FwMK6Lb5`7!D z4p=FT)RzW9`{Z|Yo%Dtyo2tPg$<6HjE-%Gh)N3#44_e&F9AM|#3h-RxiX&N~xP8u6 zf-3Jx`3ynRauyRi!2}1lbv?V+F^;pXFVi-^V$|?G;k1t2z*}bw7Enj|8#W_xtPw>+ zs+mqwLp9oGkPd+?52Z)W(iwN7uVs(-ZZzKfdH8Opp@+r7!ra+wkMY%6J^*JS`n2JR3&Q4kzRk^3{ z22M+yZVnffH%))h&euEUu-3fW?>;xz89_vZ4xC~6cpHfxNKrJ6h{NclO++v)WvJ?| z=7%SRFE@j}+Cho)%PmVTe>BdKPCrediY08NU2y-_Yf7g1g(gFF%)4ua_yMd<23Fo0 z(|3-{tJJfLu$Hr6;o-ObFB}gekFfgd4K@D+*;0;8N1%X%6&X#)bMl zhS;bP;x4?(i$_tViRW6MWZ_e<*7h?wD0aS3)6^!YzU8htZyEFOblm0e0c!l5TP+v; z?1t3-6xbFW<+OoYcnmB)_)_;#d*jmAqN1KFljTMp9gmv^#ZG@-+#2atT|L0s5LW6d z_G<5No;yb)JbUu!B~u)#g*%P7zlM!-_K5&w5dG#Pv*389}twusWfBw1H^9Skx&;JMxP6QJgU4@#*>lG zHgP9VsvgbA<8!#Xv$;Rtv%3qR+~C-YiBwOI0kND!LvgP+*Ef$MESZE)N+r&lQIpaEMGg1yfXRHms{_M6sc+`;Z%VZ&;nC&xnZ= z8k$vz$ss4sq|2;Mm6p9y)~{m%a$MfFs0ZJ)jiG%ia;mpwvZI4@g_+TvJ4e-Rt&?t{ z)ABQ*$KIdEB3?FgVq#`wKGaGblE%}Qd;+(@-)Z9 zzp!|yICbhbW`9L3$k{t(41C5!f0&#P&J6bs*`II!-0R1UA(_z(QAa5JrF4>}*Y=f0 zX~Hx#>lCYz>0AmGlpaZwF;`niekzk1>KKKP^&8X#IGuWwDO4?XI}g1gc&eS2G7yvw z7|O6!Lo&cLCS{KV83QuHBKLTNxs>hz;^wJQ=C}1lsQa(_#PEtjJn#`*t&VhOqKAXa z(i|xQw;@D@r~V5+?_g(+cv^acqRe8~WXuN%-+K6|_#nfiU(zk$Zc-(rpd6OQZy$d@ z@XGN|hA9Jofe9!t-NnrTFDrYc#LX|P(*ShJ^}9VSLYZa3gH2|9i2P`1MpdX@U?Xm> z1#l4WJI;}OJLHe4M3iz7TvG7Pp4>-urQLXi6N{^i8{NFet)jh8t)j$8|a2PV-pCkF~2;*}o*;vN01bP`4;e{XIut0(;XqMkj=qefMx9#LQYHpjn3{N~sjnAq9z zqDfAw2kCfC*SkYZ>gg9Zo?!?SEYyB@H7`A|&U=RwC3d-y`}y|07N6T(S$kdWvl%`Y zb%)cxwmkQeru_9v?^h44?1!|e2C$tG?gsuQLSIq1%F*m-WFW1tIj!%&)qUJsQi=tR zTG2e%ayff-IL$g=3?(%1ZrvuR%aTthpVvB=2!(xHqO(YD&mjUY^~>E)E-~`&)gh9y z-IPrRGkmZ8q^h1pdB0t~bfS5BqjZvAcjLO}FtO9nd{>BwC43-DZ+UJA70_NzmiSok z25l*6POsgQ$(Iis{i(TGFE9HD|VjX0;`O z0;_ahe}5);bvr5%xF+1g<|-*a4jUJOSm|m4y1x&keSd9P1eq{?@I&c0-#PW;0MClz zk5JF_HuK7rLyk*aUPlLYw%?s?S=M-JSf`)3Ynb~;C-HXuZaILu@?Q3<52*brj&aZ* zo?I&M^RxLh%;_<^s_@j8_j;h4ZX4p9hnEI^jW0C(gid=u@fWOMY~oVvTE`8i|6Su* z;;LY-M?=K;)f5g3lcjT*?YYT;?6;yUR2e5ZS~YqklL`WmN-?Mw?TLf^zxLPF^dY4q zp=LnwN}X6mKC8J1{RI7R{TGte)z=?GbzS8pVh2{gl&%&vnWNC zzgDu>TzG=*5~3tl&o3z}JN501IMFGUZ*ptEygXLXzK0DS%)`!|f>p03%6$e?Zdq0 zdn$K4OuQdgcLZ*-SeTeI=13me&HX92E2i21TeB4w_tKl!>S){1t?{6dUsu_~wqQm2 z$;cflMhuDHLf>n<>j^bGHXRWH&KfLl$%)$jeXc1u& zT(Xa-20l7?Sm34(`y<4+HPM(9vHzl%JLQ~P$wmwe9W-YbtU-T}XYGd>;A_OkJyl06 z543)M9^jjPb99isoJFMON`xM>E^kGkpP6zAE!lwE%j|N0S`yK2 z`ceO`(&$3+!U#**Z87xGiXZDJ29Z^*UH~s=bKEfdbMEw38ZK&Rm647@l;9s*;Vw8S zR-Gl^R+wMqwGE8(DbM;D-|aAQ4#qM4Qm_KiZ6Y4f@8+3zQKtV>R_GMC-_-)goAYJ@ zs5Ry-{H)K_*@oJyepLg*3Jx^}R-&$wK8U2toZsEy znbq@Kz{=TaTCfyFePBIv5H@`3sJJ!S?G6)St>58?6qW_3MDA%eH4ajb&t&fe^3U(l zulXY!nV3#kU*Bh?ww^hX`KboYOjNpx92d9EFekLuaA{B~OmcMhNhzX2>Xos}5ivqI zI)5rR4Tfs{75;JQN?db)c9h%+<#aOFX_e zd|TIPlCcxx>n|BvWBp(EpT)(+$7LKgg8|iBDA!PBC#snDmm)`Lz4V-j)A#MSy@>~Q zJq_Q~xEceV?8c8K>jDN&*92x%8u}`tbsr;z!~T`6NYE<$=NtobJi!OR_$M^vb5qHb zZ13noKmWYr{qhCp3}|gms3LbG>5<90bDppZy5NMdt1O*1v3>boh=$^ux4BF9y?Em= zfgM8kBk5OTJGaydJ2^(Dx`$^{=I$JRm4d%(a#*@_i%XsQ*urma!1@l}<{@a~@OdPX zp?1paf_x|liECn~53}s{O+$|AR_6r7^>(u!R3xzvktCKvVO=jO*P@_H2>r)uG#&+tR9Z0q`641w~U?~T-n*bit*{+ zuqU7V7!wJJRfpJJqm3dL`e1LLy_{gBD z&K2)c{}Iw9NC*6&UT@~zv7teqoYWtytT0y9eOxLkuE0)>Uc9D`mfG^Lx;8&CABJXp zb9^hNw{|utT_J)LuiElYeX;FlyY?HJ4=pzG=5w1N;;Kll#ERxeTx`(fmi>9!Xi2%H0CH=y1*u`H|{b1rJ)?y+2R0;Mntp z;V6nOIB+(4WwLs&UAnhHJz2V;IPjGwTOhH_&hCEn?vNSmwz;RPa|7 zDHnxCX?-7J=g~f@XEC-Ip)Rz-g`B0H?!7x)mhhg)@jPfP^SV!!aXUBX`!90GMDAORmoHiOxeWPR zJ-?Og0=fw@QQ2x8>bpab?+lw4g=MjiZ#EGgbF5{x&1%GI-il{9sF}LdlsJQ65#wje zO$rnmMqXirJDBQoZ&D+YCy?vYsAV8@!>fLX>R2y}6yNx5y0G~ta_a2l2>Mp=bD8s} z-yW0y6?5!2zgM2Sr&!-r*7n+ja4Qx)X^HR5{+)C_P^dH3RPg=~Qa}yO7VeYisjJOa zD8yL?9dY3bw%yPRM<2|HA(qCso>!q>9o4p*2-cXq(!1cPF|5)aAI9JI`cnb1B#1@# zYjf^$IMUBUP%S+fW7d=JJ8M3p`zE}oMDZ?W0%7QNV6 z_t^NV3;X7ArXiPCm_4|t6^@Y}pZhwHhN$Me&P)lwEl)g3jf&TZ*pJFdrq81W?J8D; zZmymjMj>7qf{pNhaE`H)_>s84&Ija`m9ZPfiAWZ2yKJOSC7UuJq%UrEfVn}N4p^P@ zUnq#{De7tI`OftI{oc;#YetypLrki9sfCv=HHshWc_;C@*p~$21}DGT83HF0afwkFpGwC#u#4dpei`VfV$vtd4WBG;e0wNRaX`|J0$e9Z+Sf; zZRXB@^MWf^-gq!c80qwk3`V!>h0r_q!jb`;rBSQQfWn^N=YRYNx1!BqKJQn>&t5LI zlSbJ$>zhtXRB0F)GaRXK_EmJihe%Ru)5d3D5}HzXeCqQ#J1R0ol7P9Msj9cC8C{SQ z{^x9#f|V;}VEZ%gT#iE@9&^K?@o_pPO1k35m+a-AgjR(X#mLZ+tSl#>Yd%t#a47bpTB0joPXK zM^|K%?b2%KlT9n>;{(8Qg@|)k?QyU63a3aX)DN6;_m67ATh1p^jW0S?x>MeOq`o@+G`o?+X zCkhuVcVC80%tu+K|MuaYA9eFcd7}t$91JE*wb8DNoG9CgVWSv|(U@S3fZCkh=HGG- zi~>&YqxCzxXl!46X>V!NF2ujCInsFJMEl&PpsXd+YV$g9Tb>+}GaqfXFY%^wCh}j6} zvZ?GWb}GEtSbpj_+%pl0Z^jj`TqBLDBJ7Ghv}gcQ+Uu9lx=KyE+N@eO?Qd}(YaWpO z8jhhah07+!SChvjF8pOZbLpV5d+?+9PkI~fJ9$dI+ykr;i~V(Fr610|e@-jcb2}_A2ZJ`Vn4L0)9_Sym*Zt(vC4G{SUTIcV0M6TlZl9vJey^CM{ z3*3AD+~zx?97)MJFb{dgie!tH)l=u)$kiOLvR{*iUr*sG z|IzGR&Ow=z^bSDO!}cpo_^(495$^u@Gn%&j)Z^ie}b(_ zRT2jARSMR+mqjisKvF>*4p3OY&hR8KKPg3{Yf?I6g%RN9vxqymQ_*B44P;39GrmVA z_(puUHLw2x*nx~It20+6cTN#Gn73USl@VJ3OZKErFzsTN<-)e=Dbat-W;Fx50~5>9;g3CkvHqr)lfu_*pQW3b zn-CP#+*QIwwJZkkf0P?c!*00!2T}RlD@F;lu7+xLt%I^>Z<3-Fo?EM0>nQTP-<*@i zPm-T*^Cpg#u{QB7PgD2X%=zj^ zpRr0%KC(WN`lT&%^ahA}xJIBY3*_l$fk_5VPx(qR zUilRgWp!ISSpZc~3<71t#@67xDR0hqRBk~24@mc7^LQt>eFD|9H;(x%pE30$Aa};9 zQ5xzx&{p@r)>}QI@aLjdjYS^?0<@b8Ci#2O0P8{3>Fir=n!#tAtBQmB-TZsjOMCQu zEJtQCp|gnQm)M?n)nRXJgUcDhQP-Hel~q{Z^naUelxCSy^dee0I`dFRrB!U$KN4F- zE3(~N(RFz=lr!J!Rvr1yHq>r^f2L;hp2}&U$mCw_x ztdNQa25a`a8q{vkoOOMpgYkQ|psVwBV9TzX;{zVN-*R~g58d+JCMZ>dHY>R06x}ad z3KB)3-HHHFc%%|g zk62*cF=Oqu-gr>q<$}{qP|b#bGQ7YVvu8WO8s6>PgvU?267MS={$BaF!mX{vv1>_;{+VjdhgfooYOQFlL*?t4mmNIkF|P*^<$l8Ft(%K zW7@GP|Z-RtC9O1t4g4KxO5ifW{OyBmA-6CitZ!2zV0Ik78w&6zKyik#z zt;x)_ImL(cOeoEZN|;w>Y@x621sWX2QtJGvrqnq%{+??x>h^;tfl<={^tJDY>1?u$ zSp8*|rUQV(ZM_y*nHDE6Qs(SzozukMO_XL>Usx&HRyuy`EK`LslpE118M&+DKQPee zx`O*GpcH8;eT*-3-Oa9kYAaB3@wXNG25H^*!r}R(J_YSYncl^=$BhmJcELSf{;Qf% zFMS-=JI6o`vpyC0sGBHi5|EFl`*1FzIh!E3{F(TNQMyl?sdZ>!0=bS~QoE<4rMlXf z${$!dAW8LY>S=0M(m zfUkDn`}v$XQUAHL(4mO6DSnEVR@~W$adC$(?v>jr7w|b&oAlr(^VEnQVHkmMtI#XNrJ~xw0W$B-c^Fm zsPPMxf4iDJ4*b`@*ZH8|m=Yun5Fa0LchJ`K&-4(_wh%EzAbE0R4?nJ5^MkBQ;0=D2 zogbIYU{0j8=;W(qyZM4YoKMnOyw<&U=l?*W7hRJRSw~Uc<($gVcow12lYeK6mJ-TF zqmGN7MVRec%?`3K6YX!A-{V%~IknJr_Amu= zPO0NXg(u~#*EL@J9Xz}q)yNeJF#lI*T8SjoOLm1U`XdZ3Ua*v8h(|9n*cXBHdf6 zlL=LMooA(LXyGo3-{GSvbzijK1u3(ENvz^rHL9lMj50QZ@5b#G{ucxpYCPjVMVsBT z0QVh0T5XXBUPL}-2=tC$oenphaGDHh>pi7;-)N~A@D&$qvf8wd(WMBG!sG*9>9T$U znVSdwa zHa_r}blEFwS{g6Bm3G43?1ndE$n89aJG}MQeAU_@lX+VT{7(x3Z^Wnr2VuykKJn!0 zP0Ahe2zd1y2tc9GbkxY3#Ivno>eZhyy34?O0S;TWCtronsU^UNO0KW6Z0t$C_#26n z4_RocF}bok9~B}!-zX@(DVT=e%hT0!e&urP*lsv7in}*fLXw`8KU4J1mKi^L%fkiMwd}E6X2G332xTNvFH{lhvGxS*2 zqDTR>ILol}n<0#fpJ2WNBu47t{OZ|NUy*Qc=lwt%_zQ)fSMPZV(VA6VD6d#@*`<(m z);nG;oZ00>KTg_f82UJ)h2F zqPU77FIXQGvWyo9^`FR^fGC**3GmVUyj(q?Znr*`+g_UYEgIp6_H^)jtIkILtOI1F zHPu{vW^gGBu1H6m)ATn}osG*C;IDc5?VpqSHLASGvvR}@RPFb#&K7a7vkcD#5eaq0 z08j0{0a~CmGzR)<&nwW#8L`F$Ja++uODOJns;Wg!xkx^*=+#iK+-Yf6%y#;mjgtN; zV^*%FWGMc51b&IJmH1n6J-Wdp9Mdv*y5rLqwNyl!x-cqNrJ$m8RO9F4NzrXE@|GSB zi>%^lJ`Q@=HI4jJeMzdaD#!*jg|o)n5x)+y8y(4vJKJZnjHCsqtxdB#=~8t~1&*G* zsjU$kUyY}$L^;9zqB-n5->3$wJ8_0KvTUr4iCor`uQ@aPD1=kYBv+JuNbS+V+^JU9 zeXq}rZ-j0m^Vjh;fPV+aLp>>Mo&j-zc{&7^Rq;9q34{@N<7X$T-IdRk*j3ua{pI8& z>XgLzxM(J|WAR_{rVjp*{eC?A)3P8h`~3R{XQ?x1z-oD<(g!%Ufx&_>HnU{w7XEON z280Q#=Eju9xt&_!CG)PUL7QfA=yw7?BNItxL%529pxuFH_7f&cSo z5A$r?Ni&%D-I$zDc^08eiR*ZFP<@T$NSqE^rX~($?I`Q8S#S8w)xzll&m$$5+h&-a zT(S!HMuBJPtDHLA=Ydj#T{(6#}+^UubI1h*aw5!Ym&$9x2CR% z3raOKS3}9HljA=!M$dL;TDVIr>=nO|f`BS}3NOc%KpeH2>ESuKckN|8nc*k@+Z2>? z(JJ3SO;XN=uew5Xo#W9}PQ+UH9zJu@lF@AzeA&@u%r6E#Io%kmYFAnzT@%#zN**5m zDhMt5QjhQ|P^e)NxvN#P7nMAI^>rPmk^IX(y}PR&FyN9WSlW?$sTm@k4XE`y05Pa~ z=x~L;jpEExbim464VSL^M_b1}^_sWZ+R9L3CJ^1j?zbC_h^3;=Vi@c^Q1>k28ZHIC z_}X_c?sN(Z?v`F%hIWz-W0C@bryAhkULMQxYk_l2n6XDu=Z)~w-h-f`u8JvztNmdt zl@r8$qb^gzP3W*!_74wYJ?!d|q61;rp`iWZtL$lMQkNk)W2XHN<3}eM@q;~_t!R5t zs*d!*-Ya)R8myO;@mhg7U7Fn7*%0xmJ$%1~S1&)`4Ex<`F1d+HOgZrLkrv7wotzdI zS`vFo_;o=psQ31C$o8z;Rt|LesL-SDLv+xmoQ8#GDhCT1EAOFVeX{I9J$`Zhp9;A% zMeAEcyMZkxpJ&BFdf)B}jVcaK1R`*1o%Bhp4}j3MbbZt#E6?d@2>~STd6$o`343c? z(t;~m`@D@-M6Hd)zuaW5n`)o57^OoG)U*!r5OD9=IxAtQ@4Jfd&FAY|!36DJNmeo3 z65o~XJ|TTAk<8oc(9^U|D1-hu$kh#zACH9Q+{)d4U^%wEPAZFf5pu4KX-NE!PAU5} z0Rh@sg1&_o7*Jy<#3(CHsbN*q)iD)S#kzbsk9@BO+KEYc>;5Mb`iYT&OZJd)-% zY(dTG2kU&Ef>Y}G;Ab*yKM&8ubNuDSW;6ZB$SN-hWH@7BimRIm7dSv*@_3jZLl-9t zL(jmI6uy^x>8fRhUokNut9-*>w$|=#(8AUQS-qinC!EL${FV}DID$4EaWer2K9!@p zUuPey;))I@6XkZEnatX0eG7_=Pf&w?!SF?Ij~dDCeCvCz)ge-Vms7UQ(j_dtEIB`4 z0fA)jMSllyHSG9^v@{ie&efg|<-n*@ihN~um;IX@x@0A!h8byO3 zFf~+gqQQPb8feFY<2W|OKC~`}{BMej$#NM2v@$PE%|!9!XxI!w8DVpiS^x2dula5qWX~U4M+J0MxBbUGtu2@5i+07Lw;kaSIa8Up2`rUhzSWuoCakOWWuN&;9#49gNF5Iw)3 z7tBITI45FN-u>>s8RdIi%B@+Z7rNd!!yrnCe#J!qI+yM=dwWtm%e zYc0ZkA5wdM7hc8l+Wajrd!RniX{p%lRd$1+Hzi|c{d8CNnkD??0QefocspAZH19Wh znvysg;sE=Lzg_Qwq^rwC2b?uSX&sNpyW+@Rb=U-H6=oif>tGJ+%7XT4_jpf=E0I@X zrH39Z-j=P{n8UZ8GklX*%p@g|sML+q)D*3(BpEANi5jk@&Y`2$iGWW7f|CX|+4{sr zzq&3odt*eswmHKqjZ7hT@5Pz-u!3mI1)9}qn$`9atgNhc11ntQ!`Snujo<8|_#mrK_RlA3^RCOtfv&ytal+# z=Al7G7w3o)kZYV#|Zh)KPFGnY$v9u58rS_`TW2&pU1IX@1qG85Z=#>=Mc>x z=IQO8uYqzgQ063%&_69_LS*9z2x43g=S;fLMp0r7>c`Txl>wa(aM;aEW;)k}LG1|X zKkCIWzXQSCjvX(fUft}vC*P}nuO|4_7)Skj?4=p?xqFpm9m9deZ)Z%-S{J*SzF~kt z$;b{def%6r&i9aSJ=&Mdf5=dvsHqi!BjXa_%FmOOovT_mS4w-R1dRP0BM;Rp;Sdxn z89G>7M<?e%(NT}Xv6abI^lgbaP2#j1A*-ub zo?G?tfyUAOX~HLMx5=3|ZrjuJ9^s)WyhC<0PB@|$%|4jUAZ&_>sWWli9er?_ZQ%B4 zkCzxgg1*&OI@U;CsM8Pg#GZYXY6Bs6XAushFq&Bsh zQNSPbyYl^krCRmv(YBy^Z%dRkoi%RqtY;a@RW`Ti*JLim>9O6wHqVV!#axa^xJto= zd>7C^f1CLUjb+CoC@~|Qn83A4=H>I^zX+jF?7M9W#~$i<%{^@A^_96U$O>;u49{eh zoy}1&dh)t*M3Tb{_ViNzf3tK8_abyVWS*BZDJem4sK)*pg6@~MXRh0L!BTx^)T@x0QjKnxxk1a_k*IjDS@>>Qk?)^`WPt* z+2K0LePg!5n1`ZrWLpeW89`yq#Sx@eRtJUUDb^f;~>tZTJ3-$;XiKYuszuBu|G5PmEa^}G5Xq=IRa z$a#YD7ngC5t|3R?gaeH|@@u_hj~|Ynfjm3*PiJl14)ZBQfuf4lq>gCT=n+@1>=9|` zq4yOpNHX$`n(M+MaGgG_JBqM@4Ys15dJRQJXT=2Id_I5|)FFz=g3dBfAV zO+}|1!z{Vy2RR7LrXmz_P1B1f122xJMc6uH$mAe{p-Ds)MyI)@r5J(G7B!qPLk1r9 zrW=`bEAm4~IX7~baBlmZQhUR2YGCCp4)x(;M_}w+5N%G*oWy1`~?13iC~K;6M|a74>5<2 z=KrIhZ}uik-U%m1ypuB(Kv$M$fcD7|$*cM=^%E^u*|mE{v^<>b?oz_@g_`_Sx{ICKI1W!O&ml`S!#fPSFvn4DbNasxZ`v0hyIC7Nij$tXw&|HWF!qJ1+8VDeVDeRJD3$YH zgAzA9;l=h$>}_1Eo$GhIz+SK52Hobxp=SLym5k?#amjgj->Yf??UMHeo$2{`Ca4>3 zHt=@>T$C7Dl7u!4;o{Yf+JURsb!8xy7 z6=Q4bTx78hEeClTV)NDcwpa3``Qh469zt+KpHE6iN>~6-GKPvzS?(4g^!)n3d+ZD> z(5L}x<%Mqot%9~?+-ARsx%N#~jw%Gis=L6gm=&*&oD)jC4o}V+1v=F=G$eF9^c88M zyW~5t(VB}x_IXF~sPry86xd2pf5ZAo=~dwPNYL~RDmL-tM{V7|vr#vae!FEhboby~Auk8q^C8V2sPn`e^y#LXjP@WPP%BCk+>iN4>5+^}~3Kew@7 z%Fg+1To}mktu`ZD-IC1d+tTfX-?@8Oe2DMEdAyGc7^y}7`>w~m45{I!dr~4R`%`B) z&e9Cn)3Lf}scN>?GcJCkJ}o`KE%o`+AJcMSy_eUwNhx}OFnwXm+DDU>5w9M1 zNfb6e9y0E%Pg0qT<~>c2cM$%+Ner`XJSj*>jfE_bBRHpKB*h(?tJpMhvwF|CMcq%m zu4eOU#M!0QKC$3Ob6MfU`~N#tIslAb5iC{*fY90vl^qh+iE_Ov{q3hL`8uW1E#Sru zHh#UCPq4hSa!TQ@n#INl^Kc={_VuyD$jP5Ry6gg!ID@*pyy5>&7MB}DC2aYN(335T zwx$~_P*Pzc->&QPcLN?qtFk4;XDPUEg}N@xVdkd}qm(@^KuhC`mZ{XS&9%fpkv4wH zs;#b7r~VLFIU%=+^WeJZ&U%}c1JRRc-j&=3E*e?dR7O%DDd>4{+MFQPV4g?m>GmPk zU>l}b!ha}+cuN0}avVfsd_8HKJ&6m#H_r_GwQX#`QB^%J4bIJ#^Xm2S->lW^vze!b zQ@cXYR!M4GnO}ZGB|BM!eFy*dwKNk z^tWZBxJhxT$|=>E!Juv=((l%iY7uniu~)zeGM)R{8YvCEWmE@tEN}28hA@EZ_@g54 z*_}r3=?3#~CCI0P^r*1*dP28>L+i7Huul8T)`p-4dfx>vvK8BA)`iV1HqFQ|!Bq2% zs&v8%aN}9o=4?d2?_s--SxFC&4!CP4f4F=4@$1E4KB}SrTA%aNWuuwLfQ@3p)!PYf z0v?_k-svWYhJvv$flBcoXGY#VxfS*!$aj{JZ11f}u4(eeU6V;6T*o{M4-a=`q7`o2 zw6v_8k2g-vXxmWOOR%c{y0`ui@uPYHwQn{**X0%xdsb#XneEBI_)_-c@9}L9!uqXM%QvM=H8#JkVev5}-UJ?ijS$LOE>(pmW3}sg z?`CF4x?Yj+foDPKJ_`+@=jUs1j4T106?JhjMZV8U=I?}AlQtLhb9n}YrE_i43l++c zn==S>s;&z$>F+}8NVUbo_O18OSm)Lec>}8)%2f}*vuYchD(t=k{jdEqL{EVJO1f7N zKyj~v%@Y8^+cJ^D@WcJX>y+B&x{AGI0amaE^xoWEF`cZanjq6DY7KlZSx%5CUmsT} zpFb%Q<`A!#U)`-OP&)eNQcf(2>_;%G^A~e>hcQNM=7&_k0!?ajTf~Rh$QEz}n_@8Tuv)vl+7BZQ-JoXS*NTao)>@)g?gqvBcl9g6|(jW^4A#V)^$j0~3R6 zv&XxV68#d+-g{02SA8y)eHTFwFUFn{lagI#8o9F&+fjR^X|UeUM9fVC2({pNQ_Nr` zPV)#I8PXF}hwX1;-u|#u^J8Vo*xOgH9d;{;CoN=EYOCle4q-w=GMTNX?d8|Ynr@r2PYIhR6UO!m==DZ>0Tc(-VIk(jqzh2Ihfn5)vGa@;Q8MKw;*nuHpU zzjBw?I=b-RvfQhZMke8@`dixd?D}sk?^SINOz{bG=4idTB`VWF17DwN76-pFB$**i z3|4T>p7Fqgv(0e=ROjcy?Gf*MKfJ&E`|sb-y9Z~73H4ml&43dQ)yWd>bCn0n*4|;2 zH7rMK)$Eklk(~ImQ!~9avgKH0p2K(1KjNB^l!HW-#K1E=@5Zl+7|0*Kjg^1pF7xD- z%t9eXvdU>*I1Df2QbYG@zj|E{pYFbTYxFb}&N(wrl);V$JH|DTy;J7k-svY-W}nO2 z&MXzT+2Oii86R4VKJ)ScE#{(k)mGl}=7~gX*0!jjYOZeQ-TZ^1yxwkUoy(J|^CH1r zCje1W<)`HQgcRXxSR8@>eW`J_s99-9&(Q_5qBfV-zE{cS2?{ZqhJh`|!WLa5tQMxB znd?-tpmKr)xOW(0(3hS#iaMXMxt@{7W%A^7bzn3}78Pg^?SNs@_w-M-;7rO#YGKkB zvC^EqN2e`k@YZ&@enL^L?!)&YnBHY0_!XMrcMY2j4dTixAmNr`6*Om4)}`cnXt!-h zt7vZ_kH!s{dd(xG&$O-bmUv+9@+*_dE3N8NixA7ZN z71xB0bDke`Y2+*()K9dNRa}IY51HW}gUC(!^s?)AW@f8m$g0WdsNYrH2hACJ{y8tC zj?Nt8*v7{Ie{rZ$po-<*FY@(7%z3=8Gvsm;nbwZ`8EaAZn3PF@&Oqa~NI}*zfyV@E zZ{Y&_u1XU#J`=AlV5Y2lRc%C(&8J?Le$Y8$BA2!5Y-A0h3CxJ`7W54ee7)|pD?FbA z0Yfsb$$NCi8#4o9TGt+DsRlho*6=*a#;^SmBoj{~;T6_?s0urZ$NJXR?*5niPObea zDb3H}kq)sT8l@7cR;#FJaulj`@t zDJ4BW8lTi1jIg`*;Si%+uOM^F4=Ta8mP)&kAI#in6&*!xD5mdrqHTi%+ba`|Fr@i@ zfalp?TLVQhXzn}v-0tnj2cuV(@I@1(u5qt1H(DOkK{=aZ(rxC`ff}INa%t=b;{U1y zDSF(0@ZE|xMCkZt-H3W-9ABu7nq)$nXE>c++*0b%!uaN+rx(|s7w}0ENa76JtWEP@ zIz)?r;MZp|8sZ)?6FXe~ksKY$)98}Honqu2%q zCx;ROL-Ui~eBj#|#x!&}HP`2L#1Y5w5kFT3T+T&o_VnY&QXXxq1uW!NY&=w(&2;<8 z)490E-pIUbbo0WIiApYSu56QU*i^3&q0Ni+5&eZf3-zW@V3CHr`!L`v);c@m>$Sw< z>73L-TC7~urOOX%Ykyj1n_TF~T6GLSn;H2=NtFicRSaP zG`GUC0`xoGIk_d7dgaiHSav~*_Rxxca_;TlIuQG;6LLhhEq}MfvS0jQePt)jGCtgS ze__$~;djM+hb{zcZAPwg(5r~OY$ny%g|WtJ!(J4rCKFyAGbc}E4ThP8{W^HqTk3Tg zz{!kQ_g(N;1TS?y0oi2tGx3eb45EWb06|!CDF=3$|46$9jE^~WnmG|Of7&&v;7_QI zx(Nd!bvqLwhx7TGo?GfFYr}=EqqlA4N_A)vsNP8_LA!$(@=Pj-8l@-1L*ACw1$)3VXj?B;0KEN&^qcPv;xCy|U%( za3zDOyDgg9)}qEK$fOVcrwpDR1&e6AlhzFxpN~FCM}@4b_;XX*GlFhKe-ix#UK5Gi z(ZlU^PP1lpTRmb7o{iOLLnk-fV%W^3Tb^%#l>*nP0H=+P+Uz^U1WVP8>AxUT0#jB69 zV)NY<2gWl;N?oi=LY~tRT;2)L*^(__E_)_NCE`hzQ9jDWjehM5Nw1K_Y?lP=S(KN9 z+r_mkb@Z8N@C8d|zRxubeXtC>Fyns{|BBUe^8)Q#kXm;n1K9l;yPO;EN1h6M>_QwZ z(VO?TM<=oa0a92thqd!pd!WP5EFiB9^a6EE)t<_-*T9s$XRQOdHXbApGb>r6zXNHi zL#EqdGApcTcPrnxMUN}}oDq*5@gm=r5>~<%k4IFjP5yO&gTlD=SJu&quTxFN?gArs z5@`oX#+V<`%gJ$lYV#Bx|MBN>be*R_z9$2J(D>7&M3CEIqDgn^Y;eXbTe#cg_=UP5 zpu8J~^&mrhEI1{Icp?b{HXE7)X=>EIUb@@BQgphJV7O~O>SdlKCG&U%?Y7rl2k+Gm znY#xPww9jF&ill7oL_}!V+${;bon>XFk2i7#TSM2@vXNzLr-JK!67XI(sOkK(eW5e zp|;`@&tEo5J(B}AuAK=Q%flV3NALF2`A}Sca0Klpi-j?d4#)OlTj8UQZ8ysIm!o52 zLNJ+by?DKO@S-HAM~*01`9tD%Z=8wR-A<7si!;)}OLUL!{ki=sRO()+&?);?YBh!sCfD)AJtw?2 zl7WnQM0pYQ48Owz6q7tT+{*vo6yJHitqDVMC4h!Q#Y8pK}V+9(^i`^7i84|9p*nQfE7qG@p@oxvIa^u$(Lv`=zFC#lp~3n zX3_hiyHxT=?NyaY0NKT9^Ko!bkFWk> zhdIRdr$G0ZOA?Ov;F(J?ZX-HCP=d_EY(HJre!%)UtJ#*$J+M$#<&CZm!h7j{@y zM~ISN`O%Rlt_P&wR@wPF4{xt9$OH4Im(&Oqn+tdr($K-+AJt4)g7vG*awjMwJ7So!UC z$|1g!S!V2x;#-WE73aOSM*HYP-D_A;|L*pBx8oz@Q(-a59lQ&$j&z?1RP zmDEg|g?xz>Vn&VpZ(>a{I^lF|rs(W?BCYKvmj+WBg7Y;dRzqq;!_vqO#sY+2x zZ=6ERXQ&Co?{($udr@ip_UosTeNQ5)QzCp$zEu15723FUzGm-Bz58Fb zfXb2ckkYy7cnmA#JvsZVx4AaJ$q;mAf0zyLem1lZ=x%BPuqKUFR&r#roBHJ|2y9%G z8QTo^t)^U*QuF^3ZcQ@yO%$^0Y=}ixrHz6uHn?&=wp*-iw6RnH{+ZI_Y*nf&9WqG9ilK$-R9xQ*_o zWfs}vDGyRKN5{FX$ZI-6(#w`)HSP_>p!sc81K8yXTo#L+Qi5Ubqy!%D!hHqjxWdq? zZPwkk=;mfP3&l0_1}TJ(+zTp^0Zc#B4}Oqkd0ifP;p!;CdDTpc6ec`Tt@Y_yGkby^eJqmaSKgqCi7gp9g(A>0S zn#t9(?)!agXh2W_Xdxx1I>XHSIwgkL(kX{i7Un){>3T?VUrHr!Q3PIjeRf=gx709A z<6zbXXC3ZJV(oM5Gc)PMbqOb@9UdER(Wo-ZhavM~5`dF>G8v^mgfyRSY+`-``6(*f z!~xXeP1?@Ln-gB&n!5#U6Liaml=n{sd@;;z&4$ZKpLVoeW#;m&cBwCHUuK7f8J3?( ztNBOU0o0HS0*S}BJIKhK?`qiprlb@vltR@)O@-5F$EZU+=43{+r=DNkVla|gzPyZq zCZAqhZ;5I#MAIvY%Mk|XI~XdZ+Lgp>@|ZG~!Gu$Ps<2a|X%64FbZ=ea*jqF!>7BJ` zGt9#*xb02G%Y0^9wtw%%^^1yTx#%W&Q_u&J`TA{QM2k#q6p4myxqB8AACZIT=+N zk3#-=N}K&aA=k!n*le8aoH)AIu;F8WovnZn@5Bxet_i?$9bSd%*Q5<3-Z3ouf-bQ) z?6_$besr|;)^C$1@&wZuK>g~vld>>CXPK43-9%Y-SgVR87V+Eah9q+^!!Vkz|e>hzXjCufUSbvd*zCEqNOrIyr zHw0zlb)B`_<*q+cZQ(Cy?Y?sZ5@G3x0D78c@b*AG*^6c=bd+~8I+5r$Ggt41YU55Xi`bMP zRW9NfSJ^c)C7`o%gNX`3aBbIl=t0^vFMc^IV*6&?Hqh$e`dYI1lG<#fXwNunp7TWWM;;)$O9pI?5fi9j zNSZyC2ACj`lJmBFvXs4A1C4Y3S-q5ZHRNjJi)Ru^+n;{yt}ain9-5FeuDo#S3sJ59 zA+PXBVst!Sq?0QZ!KdMYD`V7XxqxsCM*yZR1|Tl%WgOYgu>!FV{C+*KyI>UPlT#6P z>=(9hLSOzMHmP5&c6jgX#M$VS1%I{1Dqs~x6RG@YuKDQdH4IH}uPHuS6sA{A$N;1Z zM&qUGw%hkw+X`jsCw(lG z?s@OH8QUk1G;Gp(7r0QtoDJhF2T$_gF7#kU@y*78VZ+&44)-CA;Rv4WN+czD#P3IX z6cfJS7RB{oTwxSXy)(iqQJD2;*cYVi`IzX4S10#v$WFd@fAAQ@o>KbI-m2=u9Uwb1 zE)eqwE3Tglhcc+D`@i{qAUV>{H6fF*U5Sd;fM6wbkZV}&K+V7JtIQPPPKCsc4-w*OI z_!m<6x_r5i%~w#yMB!u9R3xd9W!#yoQ={3p0W`nAW?k#A*fcdXtQcR9U>fj-nUc&o zS54ZpH|{>l4QzMYx(-+fZ_;hX@0g5V4(}H&%NX6PNv~6<@%lj@JGvBBjMzUf2e~#H z7eE{ns67JQ8tg)2QQ%U?nbkFwPcz&b>J}dC(K|O;ZFbJw(|&seR5{aOOP>Du=bH{Z zk5>49Yn<$!a|@aC-xyvR43`bn=)=!I)L{%J6hVuTw-)#;(m|Z{w_JZ$k%n z%C$HlDIuYyA~z!6`V_cM9r?#(Z{a(a|2)oqoit-4YW(GvNfrLa;pyVV^>t9dl5zU( zSm{$4^uYWWQAT8ZyOTuRPRX0|StoXc(CKb4ua+x$DJUf&q1?I%ET_uOa8n&Up=#|s z%~DBCZDV*P2fa+d$#&x2N_kc4DSc$1&Z~n>Wp%o%hq@h!%At2gf8v)`)o};7%JehHMa+(E zp_%Ro_Eu;W)nwvrwZBhxGacxAXRv|HI+1`NOa!;rtJ(Rop<^5tPBbGWte0i#qUu3; zkuSEW;GIt`O79GoibBa-+x(~B{-GXgFo&rxvYevM-uT@v1{dQ$CRn)kaA~Hir7z)* z2p=$wL-GeHW369-VnRrGOYY55Tl1Dv7@BzX8f>k?_e^>uLC*)ByVrVnZ0U3S^Y`Az z4v>t)3uYH~X(#asi6ioat>9?&-9=J8L~c{?!*F5T#@DaNr)?L{{1L~v6+K8VSWbY} zSkSun?`8;r%O|FQBT;s|ib`jtC}q13v!b8X=ua25KVu(NFjIR0>Ay_j{^dx>996O@ z%=4+)KVu}!?x6Y{Ano%*c$Jf1zli4p$03m_sVMLUpHa zEAN&CLCG+A~)=CH)1(CvC~-wz$J3 z8pSqeNape@hue#L zzjSz88?{{>k)3LWs}?njE~&EDBvE*2O`aF_bbLau^>};&b$GB>7U($0D#2VhkNF=o zazTFxU$~~C8awCM?iRqTBbl)`ANIarTVHTzM|^8QBAe;*{W#R_ASIr95$rN@`IMri z7W5@>Q`QWJ6MG86AMHp5c}CE0UiKn>0yA$DOi&6L9BLbm)m-f)rtF%DcBe89lB+sa zdmB9Z(-keMqx;y_bLy(eJ(t6rwK0a?pfnGX!jq&gllPXenm3_PM%{&swe@*X-V(#) zq}jvI2W9dz&wQjc+D2iZy~Bei4m`{jZgQSLXpyq#%%dYTeqdrV<-lM1Rd=+eU8>ub zdlbsuW>dm7q!lvi=w_gTMRQpD7D!$9MDZWpzfe2)k87pw1yDtpqK#)67MM72)7qlj zj{uPFd!utQl3!Y?Cmgl*klF)-BtxPY<^GK5Xd^UqR>_sB5kl>wY}R(=J*SdOm=96p zVz0!q4VDpt9Ij^enDar45e(QSH{1B5f#{ZHml63j3!bZ;8Y_uh|@3%-4?+;Yvu^0rf-CkJi*Zu)fXj|f*(RE!|S zw+84H-$aBr>-6D`Zn)KNE%?WP+)KZOx&YeZXsMhcjp9#F>`~M(h89OpZ}2frpGD_e z%5qXrhgQ$U*3~g=q~1I-bV7=HaUH9tvlFD&+8Wy@@TYc&V-T%_tz)Tt#;um<9L7_1 zNZEL%erhQH*-;0y-Xx?xXKEimOJ}ZVa7t)x3G}U=zHC>VfpIdOg5$Hc?`MfQ-sNJ2 zP^zHD#uIguP*+bs*s%u##?|?@56bFmzqQNu$JU}Q<+r{vqE4;P)FnIjVjf!U<7R=Y zutklZs+;N}Lmo|Eqfvrr#fELZy&1Jo9rv2XRx@V2{QE#IIYngY5X z<@q=Aa&n`H*Xjfh94a9hx7Yzw+IurY^P>TFxA6}^h(64Q>tz|&Aw6@6R zZT-^HIYHVcPL|e|Hm~#F^dIPzfu3$@?dg-2_VMC6(!X_$Nbd%jFuqf!?76#4-+Nz~ zwC7&ZyMC3lbZ?UJdx3>qU^Q%I2qTwUIqrXii{g4lc!FR_DR!Z zW6OAX?5Pd1e$y7&vU#g)-RidPt^V8ly{?8|?C?Xj`l=@24_S6~fFIv7evw+nl@)OKYtX zXdkrzwvMIjEx1(EDEz2y3Y=?CtXU)X-}guP`A=_^CD(sb?)cU1G5YkTTHse;F&>xV zNr4~Poi=^?kbYzrHB)~y7#ZTX>&LH?JN$L&Q`;r-b@Q$K(dMMCczK=h2iznx-t|Fw z!?UN#2mSczbkJumociSs2Cpki@$w~K=L>0XoHPgXt;$w-<$_>3xtZy zvr&@AD~3kuxblcHrjN2c+URp5Rs-xfHb(<(y|LNqn((o2>*`vi=%iGF9>Ag}r0dv; z0Q%6D*{ShUwc)c`tJA=5W9&1Z{gjqaOVH=m2tAIfUp7<$Co-RjGg50#dc6rg`HGhIE9P=m|#$#DP=eMEJ#$!Xwoo6m>sjDjq7vN#*uxXs%LasqHfJ4ymk zo1GL4WP(68PV{GbKpU<0J9O9Yr>-A2yZ^e+e7N*58L?wZ6hts<;td#VPGL?8_{(Au z48sjKJhbS0GxmMsMR`f)aRb&zzlJ^?(|T+egK@UN+Nl`*+&Eu=MQ;uJVZ36D&~M{5 z$J)AI{5+A*NbArBUEZ%n?+vj10CKUo-`3tHb7mhX#~=S3>FDTir*~eHi~L;Zufa)u zb>Fu7Z}6{L^C!9QcfXL08`jD|tBX2cYwJMNwK<=wH*UOi?6#-Btk1xft-8f$H}xQyUC1clV#5-6J@uKR+-q|BIDad#>;z~&6Up1@$%S%56Yh&dDt%k4~^9Q4X`t*nDv$A6UI?5)XX!|XB%|6pLS@qK0m*y z(04$7Mq>*RttR;#&~mTYTHx<-$GWe7biTRY2>b!5zrSzP{^h{VMzz4d)AMV&A76Lx zI#`Z5DtNXh2OWN1v@}P^^N+-3bMBL0-xxe8o_pB7GF~2+JCKL@w-5C3 z?MJOIkiP*BXdPkS`YX!NN0_91Jfes(u8(pmrxAn6(c=P)t+z%rqbUW+7@S3PF+C|e zK`@v}Tc6gl4q9Ea9;vYb{p_;^+P359SPI0MgVt?X3Jh*Q_o1~hOZ25aK+9PeX1Zk}kMcERuPIcVeNaR&XKSib;#)Hu5!L4GuAD66HheO;`qF#Oz_ z0b@{Wb9CRv^xP2Bo5lLj=eW8~o&7~93&)N>2cS_pkM1+BeRaku*aSZ2#IZGg9?G^Y z`1(=oeTao7haIP59!ch)uN|C>!_OCf z_@MLNtQ*Fl4KgE=34@6n-va0Np;#j$c6_4(H5zV~ln>MtP;gRK;}3YW3#|saXlk+) zo#TXF3!nDeegsHH^z2`me7w@`x~KmL+7S;PeWbVSje}v%cvJ4DNXTxen9&g<>*CD z`niCwb%1@{+C@@gb5pdmwMuKpIO&`)US9CR6Xbvc_Hz%3SlhLwo3uGaD@6XA{}?Kp zh4Xdyx5(z6erfBNl=<>@z{&fhbpSu=yPHhdW0p+ZbEaSTYjb(yTH0mGUUQ^l(hS+w z+TkzhgCEG1{(kA~ACR{09%6|oP+9!^e$&)6?v4_u<=bv!Ayzs=6 z<>ZAgkiUM`e0kmxhscrp?k9z_*Sp3U$LX87WftCzWzLa8J>~mBOklO*B%{ik?-G*1@4386(74;jtS0; zgI{;0T>h@u83o3l@ON_gsm1HqAM^fymscDrvh}w=l5aHpmjhE}#sND27`ga@7sFaLMB*j{SqptI!j|9N5Txauc7Pl~gBT<-oe{=GoA zbeI3sKt)Bxh`_f7fNuiOYFlgUTM6pWr;i$Iv!zXJzrtdVo<3qa#+LT~&)%5;R#ja8 z|C{w?Az@2cB#07FgII&8;09KSR>4+*_9xf{taYgsS}XW(7268d3f2nN1*<}91*?Dy zpw&>7xB(T3iUdJ|tO5yJ0@;`UIdkXSH+OR1OMu|k`_W-$&N*{txpVKkZ{E#ZIUjbx>-{ zR`BG_wD=)Zl66*Dg;AeJZMGv4rjFB+_bX$x$CEZ;xm~a6*ALs5*qeSL*)US41VQwS znPwaDDSk{nBYH;CW}a~80Au@*yj@NQ&oQ_BvQG3InWmC)&jpV%EO+%9m8E}7->R(T zhs&8RIqkMZWt_C9tQC9gP5(M5HOoatX-^r()HC9TP)S4QsYhaxDYdpyh@D|0NtNI- zY$IiKEH)|@owj$&i(KG5E5$(c9E;8m?blOI$_h$nIN(OxHqlVFT%Lls(OC!I3d6Xz zhTJr9i<6M$GN@8UXI(oLOU86Wh*&TuwoH~LGP@ALA~usUj3=#Q#;3T8=r}g*%x3%9 zn6`|mWBhFGnBg?nW!7h6+D5WD0{pre4b$Fk4wn}nN7B?I?WVI#>F*`HG%1)52ZhUc z7xFph-gma62%|MHC5Gg+Qp)>@&GFK?L$IC13IL)K|Fcd^7(#jsR26n=#GB#bD3ggV?ouKedJ0^94LrT~%3u zts9H6o44apTLT?U!pGd3X82%9Fww`R#r8I)jqSt6_9gaaxp10O-V#pEuEl$9gj>Xi zxSGcNXuMQ6;P40*_zifUecpzLaFMkdsoq9c<|L6_;{lU91dD`Fb z{IWH8?e0s_i{CPPl-Tk?8NT!28+h%Xf5qg<_u|o4SK;X!`XZ@%HU9DY$%wW?|MUNT zPrdNA|4sbD+k17JpT)HucKW`!7c18*dGG)G8~#4+E>TPGPgbF|Dn$M&fEwNGTtwcYgNhgq)> z$!BxES{a=TP$E1^Dp6>>vS0<*6p}Z7jR2>>sp3CXLa4dc$_Q-Tzne#s+uK#(_Gq=F_O3I)9r9$2{w^rroH$uiByh}wn%K+`julu&ang=+aJefU6N*u z^6s1z$h8%v5>mu^3Tn>jyxA5;r5T-PlpV#cEo0~v zk{7+igw*4NM>N6a0vYMgRV%qI>slj?4(WEss;HQ;HY%pevHy z4Yk;^=4}+OScG*;U%}QjtI;;2Et1=(p)ocN-B0X>3(r3dLoU7$efs7itwSb4R5ms- z8THkbXh1z;;^V0h~k`~G|Mf2n*v7uR0)15A5)J<3vhr=En`wEP?dK4}>u`S9zeh!nbycm;LXroBX`x&mC@)FjU@e6N9VayLMME8wdc8Tm6j{kb*@2nc9J_(MO^2fwY8w0)y)rUkRCt@pG4 z`g5qgGDr4M;CjMGBAmB_X=mamGx6((>65W-?D}lIpU+n1P&#Ec)W(*Z9g|>U>P_qp zi{6gePRdK#MC5|lTDT$~oh#FRR5kREYijxz{QQ`Z-u=G7G5KJh;@3?Zew2)2mT}-T z!?9VG{}EdbjxZdvPQ^~-U}ns;lx3{6YbFWSb2^eQ(@tz9Hes0`rk&W>v58rqjbAxV zOJGc$NlV*n!**tyB+o&7NLuoYlrhWNGC~!hygO&iv|!jPv@g?+lPb%$e)f#WDOU4N z%Vloah}^UjSBzP|vXx-MHY}sqQ;(fD%SI~0h)(3Tp3!BS*s#oyH)%8L7|#3EBSGvK z@hO;kDJw``d^1wsEF*#8*wizkV@$c&iOkjsW_iZV>x8Z6vUZ&kSS~u-Mg*oj8mf$r z&9vaA4Tq8JRG#hZ%1L3D@iB3AjOT=;v~Pd3jhOP}lF6%L!-r{OVw%}Hk#k!-?IFxO zC#9%m)&$YpcAj?Vn31&TB{tJvbIk6x2IeB=p<|bE@?npXk^{gg{+<%n@xQW&Z7ycV z#>J`abyC};;^K=hL|hy{8y`zkiAy@ma1CV68|pMR@?v=c8XG8XzuQYbNZ?1+O0bh;*+T#DO6Vo(Yty>!m}@9m4Ok3U8A)OQu?>s4r= zgB|`6f@5bEHAQ4%>&&n)oHlh5JM+?OD|!>#mlKCAO}%*V%9z^vI@JBo9pA4$F=_2P zH$7VaqwrQb%xnM2cNg?G78k2n;3xdsQ?N1ZOdEbF?`i#=7xUi!oA6dKUwdwU1zT?D zi`5Tz!zD-Y2ZVrtfUh69{m;aPq9UDZDg03+w-#nP5-qVgGIDyk()N*^e{{K*Vr$7HY2(VRvOEveoG{9|wuDOi*%<~Z@8p~W3m8e;<#d{na;{F(bWXPdx^8CZ zgKy%Vyi7HJzCVowq#ODdk_}5o;Uib#hxZwu(MCCioo7TA$=0t76G_e-YT0P{NIn?R znK2W|-X>CclSux}G~-v+#IJlbpMH8q@+OhWGPWNklD(g;jnb2WJ-MYUBPWD=@);-@ z#}vd*6Mx#k_M^(^yvIiJoV08iQ^vS*9ZTLs>2x`jG}9C~8L7N27kfr@Omi~Rub+=d zw*OOb$IStebaR9UPZsr?4y5Qr?pSduJ~08Y@d?Pz&c=)x(~y)LqUoXaG*6tx-bVEV zG`|Sfl=H%PcrloFx@mA^4fRNAIDmE`vX6^JeO--uNb&BLK3w$7IpQNB&$SRZ3P@ZHT{V2)S$Mu zjyt7$@y&-9^4*1R)oruybj;{~{$VDLLVO(mVB;M3u$|-?mf3lRWu{+7WTrji=ff;- zry1MEi_+3Rm9=zy)!zF746lC_u59iJ=c7;X1iyhS(qC|4p4v0t-jkmf>NzhuGniZO zTw};(asU05U%@B;0|Ej9jvD4ofqjGEcf(-be3&;Fez2Tvc)@fn*4Sb7o0xy!4H(cx z8GpSohlTK4+-KxAjAKbN9GgWfcVQhVY@I?o6P@i#t6j`ABQ{c=VH*i1V&f@8|F~%# zH@O#PY-g=WG~b?v>0rWnDR1i-*7=nYnZ)9QV%2}nOOQMx_BLW;mesi9$#7Z%W5!ZW zWP<1zi4B?fmv&2Decz+B`Mr;Ip7s!C-b}m2EPKY|!%lNSqfR$%+L?OJNIAi@6~sn# z9v_6{O})s>v<=%!88bHJjF~pE%P_Vr=gqc6!!9eBa!yC9!_NonL~iKSoKOiT_RJR@ zGb}glRMJftG76>-l_a66UfYSxlhW4kl)MJVcU5!t$#SnV(J& zoz!RMZJFtZb*9|37evnZ>C9LVJ6j$tZ|h7%XUBGX1XIpwvz+AZU}EN@>1`dS?Y{fj zN*t~IViOIvVO#NI`ioTFwz2Ibui8Kvp4^;v%jvv=^zO-EI@09?@uOlbQ+i#7<>E(d zq>KmlK@kV#k7e|aiV3mj$fu}N562SdAJdLyCaR2%8PS_|Vk35@jxqfUww+x@@@!|8 z_w)5XL$m=CA`OsZ?=0X;Stl(eMCuH=^RKd3d+EpEwEnqBN=_v)Z@xUvAr)0sdr*CF7h>x9dH)zx*3@B7=`QT}Yy*lvdLQfFdk=3E6ry6gY8MCZ%?j%)gmtkxhKjfz@ z`j3Ca2>8muSC#oA#`iBVZKsU>`ZNtRJR-4}QW3m3qXH zDvE|#CQ^And2_NzzL;n_6T?m&8_r9Ryp8AtZ4(pYov+Houe@1S(x#oAHrm0F{;ul6 z?N;j{I%aIUCf{oeyt+lWb%mf<$+_X_h z*&2CeqYEf8{o|fkO6jEKL{V9>*LLcJ)Uo8X%E9oX%4k25c6B;1c3RnUM%%hjUg@=* zBdK4?3rgoC6{1(=bznHQW#Z4w3#J`o=K~G_8d!5|6-@*loTW|~c4y$_hk%$^XMg=r zD1@H+K~Om~ydZ2Y;7c6d%B4Xq>K{CK5Np@2MZwagc>cKsc;l5t=#UzZxWstG@IroF zgR{pEd9LH9>>GF=`Z~2OP+VLJP4fixlz(GN3>v$~qVD7rRGr=t2TyH}nm&!_c3vvl zb?J;<2WzlqYXwRhjzM~_fk^7ohsvd)kze$i+8)&nRccRv?oUI_ew6Ioh>t(|5O2M` z0x!M16mPusA>LiH6>qL9!P1YmqpsF@$uIZA9zhv{=153LK!=P@IQIB#br|;T*-c&L zA1}UI)Y0+c#rn#cL*I*@t@%m+s@fVHtg1pqb(MN5o__$~dEmG+N08Gksly)iNch>Y zOoEBz53P>@Up&DAzX31QzqTY_ZKWgO@xMKywT}MYsdszy99U*<(Zh@Rrrz`s5D*aX zzX9I}d_gw>n_k7}?_a6IPz)Y&I|@qqz1x>z>>zD(RLMr4GqRCMH}Ons^xD3yV#Ken ze_g;&C*Okw$x3XN;WP)ke$Gn}d(+O;Go}q=>TFv^^2**+2!>32+IWh!$jHKMET^N{ z3X$ru<&o@KidkOTC9-Jkv~;R#joCQan6JvjYM+wnvNC@-=A_OlRGP{vxz0S zQJK~HHC^%^zeeDH?0Q5eT~m3>#*e5rrjGrZ4Ua}k?T(b@`e*7}FcuyTrw`G}aQ*gp z9twW#7gX$HG!#-! zM55zZom|?f`QgAiv1e2n4q`*GVXjbW@#RE{CU)Af>7QXcWozioAaL6BDSEfOf#^6e zW}0Dp&bwtPW9lW{oGc(Z_Hk(;yr|E^9Nun4%VJ~HLUpIiOtsj}^UiN^pLJ?+pW^D8 z8ho~S6JCD#WjyxS-|*8`H6IUr(&A&cgbt6m-byg+8a8fex8n zsZ0Z6Lv4Wg1od|UiAiaQr8@SM?8Nd9*Wo{_He%Vjo%nQLBPvomp{7Gu)V1x3Pj=N} z_kkK}7xksi*}COWhm^;#O`CLd?@9MjojYT1X(_gUwh;%)%d~};FLQeHllN6M)u^j) zjcsZg)$!-Q1Yn>1g8~0F05AI2svmD!^0a(QN5iz^Bcx`p4vZW%+m3N$Jiqw|pMb9( z!BGha2nYx`O8DIvd;#p3hefMOC=o)agCqJPF?)Tact%YeQ!H|hRhs@`H3!ZcreR|X z(~gn6Df7eh?fNhZ8c7wa>P;bIrVW(Xuf1C4*4G@7jQo5vrhQ9ngh=(+@e@sN~i4vm1emXa^%V==*U~hLR79T<0isM zw&S#~D^iF~>^W9xT|nf5S+B%q`2c^8czpCA%lI=Y+laXMc(h4tqeQGW7xg*tllrx_ zwK#C#0M@Vj1dsjgQT*+%4`9V>uVCwjjVLcGqe2acjj6}B?K`ny!zMJw@YX&J>M8!1 zdfoZ`a1=;$FDpZlrl^aU%_>zyX=Hs;( z&@&S~yLCZKbtxJS?565!QD1!k^^GxTtgpkK?Q8LF!7F&~^%YpQz62XT-;JI7%dq!A zIm#=_P*#2bo44%1>Y~rkz&}*zefMQp?cwFTpN`wtA+s}%?bS==Kl`KzyGwVeA3yxy zvgVL~k*I}u{woE!?zA#$OCO#e)OWR=PgNxjR92!||7AqD<7WMKTg;JWB<k>IowDka+bV(g-&ZpF zr{B+JV=37dt#}&aomagmGS9sM(_VZNtBOd+?O4463m>`x1G_k7IWXc^`E!y^oIMP; zJ-GzSSL=RISoP-9n0P6TCll!~k|XCHHy5Mtei};)KXA(zu2_Ppqm-3GjoCUH>nk!b z@cIX^Xoc8*faR~x#>7i>U4kB$`81^ce)a$s7P2jszf9|i?8_!$7JczprR!Yt(VLia z$1r4Ty-TlQxZSUR-!basKB|89#IQSzzO4HIOJBGbWBRjBBLhlgUNRn!yi9Fa!?xT8 zvY$I1zJEm0|7uKqfsT{5UA25MreBk*mD;Ty>+E5=Z|qa~rM^uXhF8CpGmuDjHw@+gk_kI0y7^k#M3^LBSL5<7% z+SkW4=I>JxC(Ox6GKy62p2a12}@3T54xE`o7JibyVpJV@6;*J*| zC+_0}Imc|My*vk=D$s4D@P5H_nEErCFYGUTP@1B3T>c4~L+|VIAJZIqYSLxMmhsSb znU{{o!!(EAr|XAfM|1e;@fgfXX+PO&a|@n-biUBJ<+PK}mnj&XJrU1RA7u>K1;0OK z9^1T2^M|veW?~uTS3WZyG74rLL+P5an*2RJRtpF|&iBx9Ua61s>W}DJN5`43b&+XA z&L0+&ueEsNLI3Oeko&l*xRL(flgLu&iJ^3jd4;YqW}9vs z7Jd&|tKdwMuP!ZZUnD#G1Y*19d~zAn&b0SCAzR|JB}DVloPX9!+ob)GV4W-!skD(Gc^Y$R?8 zzHK=|j)u?HM8@Z^+Zm}~j9Q$os;W|pvg#>)3cR4dfB$}b_St9n=%Wwu&YK08KldM) z_s_>szI_AQ#nqrsc2{)hn2h*@cqAt#AUTwb%9%1~cffd)!9RF$Ky_8@BbiSPplP`a-iuYbH1g`e-jCFgX(FGgL4^wd;T z?A(CHTHYIe3l8jh2NmV}uzBM~EPDAR%zVB8Pp{a9!cF_JZrdJwx^1tD*HXM@%U*o6 zVJlXCuwM18p{}0V6<(0HM@I7I)MOdIaJE~IzJCb4{0m!?LPjwzvK3ixk%cv42x9xLX;$CAv=o<#88u-_b472KLDXm z@@dTGA-}K$iCF_NX2t?czd{?Cw4a2@6Z4Rrs`L6?TbVQ-PuzDE2DB|h;X)ewXYx^4 zl8)RT-HRt48tE<=G83oWi_w1ln`ZYf7ZVpehp9ixMP^Mg@}D8U3zwm+%P>rQ;4*hn z&mF|eAHclnH(*egG8EC+^PDKyT8+#ey^yX=T;j4Z{eg+dOW%O}xlduyGCD}@vynHE zj;rK#pwI~ju|66 zDNB34E?4t)4)x7DU*!pX2j@j{oHwOTy=l1Up_v#zFoZSv(!LO~240Qn3-scxTiPM9 z-!x1an~St~C$BfMLC)AmFn`u~4DB64$*M)_JX&0^6*U>T81aYMm^V=`Xh);Ja}EsE z=YVq@oO9sehv*zoozPDDkH=Fl%*ME3ISB3JG1Kj*Yeq&_(to;C&5^}L)yjP9+dNhr z79u=a2IRKbcYG-r<2xbJ9Het>+{xO=B%9{I)RD;ATi~>(fb27JFm&SIG4JM_$YY|1 zJ;R(sa(<{eG)}&hY#isg`Z)KbN{8wPa1(WdN^Y>yDwV}E=9}DOhETD6% zG%*{4uBS13&>2Jj+72I{CtPP4%@e0iXP*3o=ZVj?_|PfB%%!{+e-fnhpWux*-oT45yntu^^)Ed8%rg|8#*6cwM#<*&=+-t7$FxsIX1io`$!v>bJ9j`_ zOe11xesbWw_1ACSiN8PlZ@lo*f3ULfBW&KX6?^yW#=!$+s5)?f;)B?@VLg_;y9`U; zc^6CHeg`YwFT~OntML5mAK>vNA7jPVeYp6-F1U11FYMj54Ik4zS7q%c)W?VL-m;Z= z`9B|G#>0QdAOG?M9$oM*@>lJ^2U{xf;r3b-?X1Vzope80(tuA(YVgUfDtuDB3;W9| z(OBPrhT2-`y^EQXG!L5$9m{xudjH-%*t&58_Uzi}Y%`>FY$xR;&qRt37pX(A^Gtn1 zy;@lJoZnvpyx3n`AKuQVf|}}F>P7T`9>rr@Q+W4NQ_U= z@_;X!n6&nt?IRly5D*X$aM#sJRF4WYOVEH2xFmd`a=p`Bj zKRG@%56GWz9>zbfg&JQSKRN!h9F*kWg26v`UbNdtvLZ{So+f^mpNcNR?A}*kDoOZ* zRc?RGSTOwzB0tK;lCdzRQTK866Ue!OJfA)h3ubelw_?%nM`7Z8r-zM=d6@S40~nUH z6jOe99iG}iWvP5)VO*d}*^x3F-W&&ourALnBxqn!U zIis?%_4(^?(Zr>WoUuFCcM=vZxC+@tPhik@r=nDJT?S%6)-o)6&oOhxIuoca!kp`` z#T2QF$o|=E%$Yb4Y3rZDh)X9s3rlhwO37~R988+>Fbd>d_FZqloc!^~DSisqUpE=c z`3D`YlNab;{5!_vlwi?MhhXBHEc59fq53yk_iuvJzsz4ejaSF#0yOSphfhVJ@=3(- z!aw=#8&bMHq+`a+`T!HpsYbzX&cqG#brXo}a|R;u?PYp_jE?0xXTFx?-;R+t&QtS~ z$K+H!#?^06MZd96urZCBw{I(`Z_ZHXV!{i$Z`TaLtpz~FjojWG6hC<#uAjUNrDUht z(4Xq$`BJ(F*MIvK@Gvyee4X(QKV?qy^#o_WavL0YF<<_yS`J{iKa8{R%1`h+PpVfJ zh1=(ljWPe2iwOhMv0?5N`0nr4lB`iZJv=opgwoOw_Ai}`Tc^)Mk(8mnK1F@arIDIF z<_b((spU+6(mhJLv<;Xud?@ZxFV*EI_``jerVR5imCk{op{2O%N7rGF%n|SOH~g-rjB}>o ziCH6&T~2-NPkmL=TQP6lSUT4En0WS0c!~TrcDY`SE6<@D^!ec&zg*n%!fZ8%7SkM> zNOOqi@B}@Fe=c*F{>eUfAVPW$J3R>ZTw# zSyx8KhsJEKBj%^{f6})Ie|P6)m}okiar#>Is5?)bYt=t#o@_JcNd$P_-lOO3_npgB zQ(2es_-FnN$lbdLzZ`T6mN;evKi&TvMjcy-NAs@444OB5jd?|1V{Xvb7zJHpp4Hcw zpVKvlrcyvl;FHNbk>uoJY`K{~Qv6QhLyiC=s!7ap-?$Kh)RMpscK%G>wRlk5^A!tL;trsq8&F z(5*u<65?Wzo}P}ZtSoft(gl^(HF#~sN7%M&KRUK;Lt~#v<6Mubx>{6KRimb|5^13r z#G(Nm+I2)+C;@x-??Y+HK9pD1(s4PUUcMVjj7L&p2=$a^+N7r7gyXv+rnUk5D@$?X zs8l+Rr(sFKc0B*~$Ea^?L`dzw-=JQYThkDO>i8s7rF24LY%Joa54<2BgE}PER3V|d ziu%!rdj3lV>JP(1>3)tIIC2L``^Ajd38vh(75rp^?Ykv*CcM2;CH0kGjQdrGe-MhN zxfdUofOy_3pF0&5?y(p}8W|J+QQ|Fy_$9%0^*lx`@$=1r*FOqZuF$zJkKhUZfPjF2 zfUh^@TTxh8s6!F9R%T+rFJ|M_=j2IFe-7ui!@fU?Z=#h6Bi5U-E zjhs*k@_#=H6Xunu2T0UIB%?=Sa28PX-0f;{Ux+~o=0CL@TMEp*33y%cJ3Re}Yh3HUfnk!R*3v$d*tlGh((3caACBI`Cmao+HsDB(v@*nan?lT+y zb`KVE`+J{;%Vet!T_&?`Ii_6wFbcx!oXEL;7;WnGG)K`m8O)bej zH`A4?{+V@>@4`Z>e=#|@?$TTuu??7i$5iO0U)>J!`*6OpS4e$|5JK&}PqA*$3!_H2 zf$BmmnCvX>Gwh=9;ibwh)FA`xf$ei{aQgPThDT~k<$DF0H+*Eu;j0@xG%B|m_2nN{R?F0 z@?SehYnXJTZJmXye`74}6HZ^Lg zjm3S2&Ve~{4vcU*bote|D4P$(EL^V^_q7k{f~SurW?wihdA8MQyO_#{{mpRCv9KYZ zV|?6_QjNd&(CX^Kd6;A@?z5}XwdgI?i22Do@6ZUGbLC+$9bDN&UCHwg=;FojOUi2oNCF< z^KR2KYS;jpuT$Pp{HnHB6wY1H)o#gHM7(bbfx>;hw<{ap>TR-KSEXLbD z?8Y)IGvum>&Z|XT(Hp)zS);6p=&hnIrd-k-i#v%;qWI*dh7#g%Ove;lGVoa3{QYm? z$=_apH)nho|GEFWcz()vF#pbrvGDFou;@=ivFxD{cxe0}{B-C^IQ!(zIIc^YD(~A? zA)3w)wvSZiP<=5{M#knye494B&`rmg7s5aK;3I6?whd)v`>=1H6UxfUuxHO6wdmha zTa7)t_n^AE2BA<0Nfc^$3!a*4oN|0ubnDm-6_s`BM}gFoBxlP`a^KJxi(Tcl*tV}0 z9~JMw`)fYKXWRB+Z$&K*R9B*|p&s!G2}p=ZP+R9DB*ddln>L7vi^r;UpX0w9OR%jh z7JvFj9e(wfckuMvpP;584sEE8wr$&>Q-}6QPj7=nI)q8JRY)q|h1i;d)Q&ppS{)Mf z;yy2Y*VWXxi~Ec-6ip|bIYgW`EhKN+Fy^5#ZA`fzk^C@bS`d5j?}3E8JL-kLgUzij8@834P-oc0Thr2R(8`B5Q-=5Jau|M-_g=YN8d@%t6{ zM~8r;Pq4rr5D*X$@bzZXs~G+LD|NU67oBz~ro2{yP~WRDb(*#mNC)~;TKjXX$3e}v-q?)NSb z63%hlinaf7{?@^!=)cawX4VPkI|6Sj6ocd(xQ5>|AmgROV{#7AjHG#%)32x6R;75E zw8dz+ zqj0s)OZA@L3h&j*{t-zp_vb&3{0&gs^o-Wq^Z;Wqq<=cFJ|DByJc}`obAh`Lyc_5^ zcO#v;*7>4aKDPj?%4xhk+w@$8^ZIdJuj;yFPE}*Ws;3-*2l6#{4b56=^KpHA-nGF! zXfhgyfO9Rr^TFBpC(V<0=~}hYohQb%_=qUMjF(qY553#; zg__z1R8`lbw!Tq4nZIl2E^Pg5Gq!ErhRU-2IKERG^gW>);%J;p_U^;J0|(VhUTf=| z?N}OP8qpBjfY@02G^gXi+uQKA=qX9bXq%dhl$1oIQk}*VXNlP6ye4O-OKz!Zc-xGOZzlx5R+R8`8RnB%k z^$kkj6knkQ+n6I8F2i#xj^-FI@TVk(C?q0@1OMPebBgr=M~7g6KOi6=AmAHDG3H!1 zNA0tmb^67=FF9?=ZA)`R@?qbzs4V@{QhP?pD7d^EZp2`a> z)hOaUwx4_oPf>983pWD47r-s3gEWfMT}EQ+k|mgb_jrsL)DPVfOR?eO0xVj@Px@-u zUdovrQhp0D^@i&(UF{V;5F>s&6AKHMVAgM(1#~a;MQ0yHoB%mcIn^^c>7;a*mny z4mAgPizC*Abxo~!k-TaB<{X-zB+OY+TwcJ5sLF{e0NY-M(3bn$IGyhLtF~$x;F8MBg?^*R1F5J)Xah5(w z;J)dg-g#iw!)eKLO#NO;Gb&>MhRO@T$L3)`8rL;n*A=7dDnscuCGcSbw($x$jdRmy z>bbXaOqw1W2eXX^G*9lKdGajHli|iZS!`a5TZ>uwSk6Co&}ZckCCI_>GqdS*T!lCF zwnKDwxz`x)n44jqag7OR4gBs6WGY3NIZYw^7TdN45vIB=_OvO|>0!{~KD1hAO-E(} z{TeGWF2iXZlnXz5R)~KyZTew2Z`(4aPpwxXip7L6(~RV8xxjL*>yQ@0O_!g7$8Q~s z>%Q9u15fUPlu*1{KyE4R+Jtawua5ZMxyRwx|Cft@+%^RNo;C~*{qj6qbb5ERO-+p4 z78~0xQn^Ewn?$oQbuICwY2>}od7+=5rmn6*U7hn{R$kmxTij608|=i!#iK*JG-R}I zi$u!Ts2>3ipsKP8^%d1fCaXSKoiXIp6EX0FEcETs3GLGo5f@7zKk*4jOo&Ch)Fd2} z*$$yZ%2OLN(^7F<=l1mZ%nSU<$jInGx)4%RQmC$WXo!hZFG*Dku@v*RK?&sRn691C zrE>-{GuvZVSvB<`7MjgbH01-{U7%G?q{!Ot>03`erV(s z&@~JT(fYlI75Fgup?%&d_6IIiZFWfE{e-K~B`SpIQMV7K$jJ15@|*lu+Ygc3)Ln)A z`i4(I^8cGXaLuvhy(>lwRiP=FM6L=OD}&eH_fd`}sF4hnug>ZiZ16L-OA{7t@gNvd z;m3-O$@bEzz;8)^@y%JS!N<@a4vCywkl|*#I^v4IHhA^P;Q@;ek?mM;&Pq(x^GymI zu`NxU&Q1B~he@T>2KSF64N8dv+^odL!YL-(;~>+&O@rS@+AZdPvf@zOJ<0xgobDP2*tT)4{ zdAHg{tb{Bwd39L(Sv;WK)UI?plhu{-Ljb_m{Y3)|GdeBP=j?^Aq@r(qi$xy*fU< zYa}If0DQ$|z9E3)f%yI@%dEhe^k28|Yj7~TjuMRMeWgqC8RqDdIYDE)tZFb`!WHBl z9z?MF6mZczmU`SyAH;0LgCQ;=Oukwq*e*G~j#ZD?&`bB4d@ONx zlexX+XVs57rSaSxQ&m3IR(IN^i+~%wFNS6Zr^y^N*wc5M&-AfZ7xGFHb`H{J%!}jy z1||zirl+ZY$QL7GV_mb+z#fs@@15+gN~3~(vzs3{NZM@49O?({jy7;l`grs*@deMO z(OGob9@~fCibe zCi?Z2Yv|EaL&ztW5=Ju(slrklk%)acbr6uPW&+- zX9!m(P`O`cy7Y0$$yxI{0Zy*LAMV(n|=?E7rhA`w5!p%88RvM=4YbjT8(Yq2A;pj znYrSNzzxpMjsUL761!_kx0V>rc-R|_l_>*!C}iAAOWJfSAjBx_5e zdzWUE1Ho_RJjtu_qsbd0bk(NXW*CJV<1_xv?B*M4jpbaJ^942Q01NQ@YU5Rqdxh8* zF4xf9?xuphU~=wT#Cc#B-2L%r`aV&pP4B+bUoJ20L=qPSlIaDtE-E!$SbErw>gE=W#)L8!|Tfn~_IdZ<`{BWosgHFb^J#dcD z$Jrh&(mIdmvLSC@K}#JZhK>-dM?&)!Jht&VH5WkmCR~Ev&AH!v#cAb(f*S|w_nbke z6+}0oW~|n0N>Jd+oHia;_oAH0?^nr<1>S|G+fetuAd??lhFgp~4^?Q)Q9yCrOINiQFxjF>d68qDo{r`dJIVtL@~&$$j~y<5p( z;|_@WW?Hcl%%oaFE4$DCs=)dAnQ}^NL-q)77L&GN!EKq3QRg3B@eBNe>g`#J+>F+> zG!J}c_ex@dsJ&|WKJZ*Vi#9xEI2S2*SZdG&xxVrwoK=U;!LdZjqn9DAfMAF6|F)c`?JAjXy#*309(mh_zrlKB@(dJ^aJ) z-kb|@8TYVSN2KILyQ%E{tfEoR{3K8H51cO1{UyAoufdAJ34O-*@kyc8%E%sTi2xc4 zDnjUx!3Kjm2bgJH3NlZ@!1(^{e(EQ*`4c|Lwolju(1xc0|nVJV*|u#*Yh$OLHlPFYEV&KZQnw9LuB zYNy1OI+m6kOZ?s&#CV@=Izu}{*1A>pr+ekh)_r8CuOE>W=5~w7zd9XU|Exs=K48@` zz~Y^%t)9dFo6XKbR=Zhm2#VcVsURmJB0jy@Rx15)C8F;3Ds*3PTEcu$M(BW#6#*Yq zX~{SyyEgu@%KcZ|mb$cD-QX6zdC58U*jvWljyN51B}iM9jZ(BvE9T6>jBL+RiD*K~ zeXU!BFcD($h~saugPsLr{GZn9L@mmBi%;LpezOjrnGZ zdIqxi`$Kg65D5aAQXY0b(PG9K5c*L2^*^hrjc8`bv$mLPul?aQhh!SvSs#XCBz`n)YlUt%gYFH(~aHOv6-vZ*U(3iY?OMx<8o`Dso9mv0$WeM1*B*DM2=@bI-uQS z;PBBZ2GeCv@Ohq0);DBek#2orSD&WDpDVO3;3eNXCQrT8iQ9!uY@JE1;E*Ev26|l3 z$(+0~^T?tQ-3$fRy5rQzi2f)uEq^sWC&_F4ul3*Myu(?d1-uUCm@CvmjX4FSQ0lVb zxb81?>f}(+^DzOa;}eGj2X0o}d{6Ld6VR}Mh&MXXvO&( zx|_(Uxp=+ywUJG3F?av;uU(vHtik@9vmN z#%7T3iW=Bmxud5YOgB!QOy*)={13Txw<+<~Fy)vEfqlm}nkL)%qCS}{KfP%;jf+As zkBc?%H-cclF~%kHSZ8qIL}9KK3%cujw29Lvy=U^XW~~Fay(bP?4D;aB-0lwCP!d9k zsARUjsM}2d`Bl+KBK<$Ue&7X}E7LetxdAnYX$H&)9Sx40fIpE--JCE&EV%yIghc(Kd5aLiYNmbLpM=lW5DT=tzWQFLmRIM|W4{j=-f|2pjhy zMwaE3dX|qw*_qH#FpU&k`n-RlKGxx~?7sE(W&7D8DD`qKtQoE{zLqSU-M9L13h+k_ zYfsNE1OgXC%7#yO{QNN+10UJW(@szRA=bm%K6RTBLk967J>{zGL zKVN)pS-2LPWUfAC{hBGlX0fxau^iR5UunU-*lhAEi5;?^GrCcfQ>@%0@ znQk0Eci-8ac&?Ys8vvhN@HUdzW*&k_fFYmnqhe%ADp}1hMP6FC+|~Xu!DeaGdUqKr z+2>yHYma{r6(A@{b+EIuu9M0r@UMGXA$_Y|M^t>_p$kX6n;mweIpICzDTaEsdScoo zm_W^~%ql2jwTE%qEwFpyDTak+4t%!#pyz<-y}PRa^j4_*6*^u2;)Q?5t_$I|$Xx^8 z`1;J1anB*SdA=`{ZVXkAB*||*Oy$MLDEj;XVS7O|Z{wxd)4-InHZvTcs!syU@4LF} zZGYq-a9Ou%_mJh2UJ@tPIBF)xwv6=}9r`M2rB^%^E`Bp*3iMI4sXLt>t)oG5JQSDd zLZVP9iaqpAdqv4K_-1?J-htbSo6AZ8zS~a~iyxE%>^YM^rNwYsHFz9QTo&B7srs%P zDBqZ9pfwQV_v@G9<9$8kCEryWYuQ4R;=$=I)fF5UtAOvjquiXo_d4&ZFgZ%Ti@Yq< zF4$Rpbib_k64ndPS6b$HsAWt=u8}N>?HY~wnsL5ISUfAbN#*pZ)ksOjE(a3*M9uhd zAT5l(jdiCo>3m-|yGp2LPJK8aVl@`P@)_LU;;8ewtgkJpc>SVk8V9{a@&*G}f!`>N-l4@iZ!VB(hN5qTOj4x1GqO>hGjJjucE~#Z? z5c(Q8p-@hinaJjmfBV@O&K}jBZfMbsE8dXzcz2=rc0t1@;*f`vOm3^;71>9}Lve6}4 zgNOa(@8Ke5ctS=N`wZV_eQ~?a!B^Hc3&hXLP@!;}_oM#D^RKInyC(D{ zGrbd+QJ&qtsOAF%6S46-rOYX3yr&2fx2|gxn%-W z2XAPFAWjo550O59G`wMNiV3Cg5d}3uG|xZfp1SXI=|wZ2Q}!T3_kH0QR?20aY``ZH zZIg|MwOGwsT~Bmx{4cdGo=Xm3B-Wl_I8p)XNv{#sx!%OEv{W-fWe{SRNaP5T$eisn z)w*eRTKDI3Q#XZV0E_=c{QJ3P#w*eMYEB(^&L}zjokxt%lSlu6Fpn5PeMzBMW48Rp z1dmI-H7h4rYU*Vs9}?W52P#8WX!zG=<){c-DhjtnZz}l(S7~YB{lXJmmG&b(8j{1`iVKsi^Mtw~0>5>wH zb>GD8m50nrpQ-RWs9~Rp`nmUG4SGq;L1-pA0}T4&bFzy3rtvWXd;y@!s;n9_gkw?) z;BT!V_hg>oYa)rrQoHE>qkyf5s5rOm&JwZd>Hj2R$vj9Bh$JY4uInMnF3GXw$|3sD-t?4epj_qO9Z)%rAGw-$dr7trpv>B>F z5a`K5^vO0PRP8XHgNMeY<72}8f8sUx6wPw0l|$+-1Z}o zfu`|%76bHaX8!g zeDUP6thf=99oIo%R%LSg(uM39KGd~{g4U8QRJ%y)cQSqJ%b6f|PiF+}pK$GiO>Zh) zC|uzF9UT#d5K(UyCK6?u*yB|Z%u%l?lxWtS&>M+y&+X&rT6zwkSYs1qpUgG&Tfi-K zDyK=^%BP_qV;12JD`;)%ReFgFg*;fq%1uL|R=UGqCsCX<(Pkxy4m+eYuASfa8u7Us zM*esj9*hB(Su5cI{j|ZmC=@L8pP*(b5Ol9_0kRr{sbS~Tv_%6k_SSf-w*@Y`x!@s_ zgIOEvhx;=bVh)`w_UF^OcqPc9Xh=%VgZFPf)A=}2gpzTk-;0}L!2-40l?vT_^=B|X z-&nVoG>CPj*m^U>_eQNe58>j1?;gBg^9aCf2G%oMf05>eV~N?yhP_DFUq)bRH>YCH zp+==I9)GffsNO^J!CLfephKCB_RIe3yT1LJ{9*Q@ZQW3)KU?Qa7L$%iQm1wrvapf) zdQiPppLj+}_mn-yEherO@kZj%wVJbuVlMSb#s}^R@~#C!tV_0sg_Ww&>9p&{$l61^ zBDVMOdltH6WwdD8Ldk+SCbxsx9m!pcKLWhypu=XS0bSt@6$cDLp&YkDPCUuYUjL)irL1*MJXf zVx26!{#FA|*jR6&svX3BnMTYP z__{T(Dw(*@vCySl%ERMN{okC_Tt_>zHygEfDwLN8;t`vCHaio7#4f|{4n(~P0F|&G zD&T|9FwesYL}<1^rwo6C)2h*7PM4V%mi*;`G}!_od)mOErQYEVZ>s<8U9;J*m1119 z$%#&|5!W+WE3Xbr$XQ!kT3sz;XqctHR9#*DysPvI_S|hU9z{m#)U%Xg)SHN2W8GD$ zUrYlHwRm|~kDKK|W(3erw5KIZ^p`#62jfd|0mAZX_eO$yM#4W@`z=cEuAWYJev7>g z4k=|Xmsa#;-M}m=4|`1I>9QD3#_7yq<+`-_-n(LJBT|0jjlqN6W%X5bx!Pz}0a;Nz zpm$PTAXtrP<1Tm2+836CX1q6jaDE`yu%9+CP{>PzC8jd-nj-yob9ZS z)<=h~(Xng7MA)OE{fD}oN8whUGepaUO>y1jeeeL8+k>n)PCsZ#rQ2DZ3j_+6z?OMak znL7F*#O2eva1}{!u_wZIm}G4WPjV`+%}KY!u4ah7_Hst?GOF7Q?5|t9EH8bH-dFn( zX%&ZL4d=I@DDL9MmH4|0_SC0_N!3#S=x?$*y%6? z@U*=3t>uN!<~QC4s8Jt!0%#r&eiM#Q+SWSU6HpODjZiRj{UwHYV04nj7}un^VnZv1 zfny432Q&GBE86G*W`}B9E3dZB^Sa!sy7&ti^%*ma`LY^Z(JJgGrB5*+O14T?-9L3M zS68$Geo9M8;U3+Nx?MZ}v%2p32q?A{wte0?aC(+s;GSo4`HG4TzZf!}4Gk`f z(o`la$j*#YlFc=bUbHRLu=I1c&In#i_%md^D$TZNWocQ8aT9tid9c`lx&O1Nw0|sH zv^Ccd29}kL&=DuGU%3?orzGWS40`S;T6lMzi5B_Qv{h15W-Zcjat1lZ_+aM}5HZ`c z3I5<;d8E+dG4ju>sPO4t@d>hZFvPvhNeIcz7CoI@G)1#fpQ9lHld1+$(krGB2h{2A z@`S`H_kv=CE>?vf0&(riC$9Bq-r&y`)MndvY~#6TzUQVrwJLgBO#kmUeuZjN-Op9q z3S1NircQ*w8VI9HvnhCRJJ5dhUK@lEpuxZ3vgz2u8-x%hnDwXHbc-by|9R`%8;hXD zc!+zH4}UEG5m#Uz@6oV+5!dtkqx;b)y?5~ct+^Et5#oMqm}l|q`<lOB=&glV$y&x8*yf4`iWe4G@Bx=V2T zE;rAWd8O~O1y<&`=ZHUu4UHcAl=md~A5V@c3PeFxiDgI-E9E4zBv7x>Ek6<2t@fk$mPU3ciD z$FYH7{3IV1b6)5P@xzo-Yzm zjCQ$xdS$asL7}$I9uT`LEw)(vE{Wo+zOTW>CQx+aWVSrcrKV1vt$Ac+ml_G3Z3h}R z0J*b$c0K$XswlR$wo0qZ)v-~w9|1EicuRzoFT&5x0}oE$_2DXhfp_{&clkcK0B9GO z1d6`dAJR@6eM|8R7EaSx>R0hBhSWV!QtUeNfg`zNB*O!n6;2?x%9TWZTaq7sOT&5u z5adY}iA9+jp|cFf%YnId!FYc38yi`NjniZXgw?{Xic(GhgW)I|nX{1Kl`e5+w9j~W zPc9IBWw-{cQvXlQWzQ-&br}WR?3v{}tb^KHh}vjdM6HAQcrHfBhwn#9{a*f@5#`2+ z6|7zs*a^<|!-i4bostN>us5Ep*%w$6y8mum&gL2N;h4}xnuYHTfz1<5J*e{F`fIE# zPy8QcW<7ox3N8>3d2|n$)h(L~i+#*>rPhNXwh`WaPBc(^Vw+!-;Y$E8DeTm?oOp6> zZyem?-A zpTX~)zOn9piI@4xKEo&~;O0(%NPiH}WaRsn_E4nP2G7z-&|y?R_?m0I*%yE32=k8~ufU?cHqcM{dcJ`>T=jQ7#Bo ztxKZsM(tsIa)NByPJ6v6O_<6_$Z=K}b5{pZSM#>1rsiz^#&=$6px2WJ6bO(X=%|8% zr#)K|M=~}zW&BhCo%fb8UH#QSuJlAb0>=ZMIw?7bULFZYOo_@M{?N6r1^%0$Mj^r2 z|M6>b9)<@s@BZwxRe7|ZDhelRC<+s`4=%Kzpf}n3r~7PD)fm*8{$?6E>PbbVYB(3M z{QDGbvBb;pI+BHo0Oj$7uCFnLv&y|VzPC@e0_1-HKGr{YJymS4K>CPj)dU4FH- zWht-ts9IO@BF3e5$7QKjRzX1nyA*5Kfq*zC;>{c6OpfEg%2|l*dLoscOx^9RbYl&G zs@E?Kq^hSCmCj;I-lYp}4PPAgD_3ATH@EppZ|WCLApQX(24<^vHSmS!U>j)D7{&Rd z3cxgeiJM_d2n`o|x+r6iZtiC|d*$~vQ63+6@8j{uaRbN;YMSfa+mPRouYqhu`(|bY zqu9r%rx8(6b29vk*LO5t(w%?86x=E+ZK_WEJ|-+5`hT?*&UsO;axc|w61e-YM`S-q z{2w3YL^<^lndlM71zRoZQd4#$Rk$$~V81xl|F2%OWC4?L>2BV#<{oSB{TE?EQ5aXI zjtwD4)darw^~{;Y2K2qkp#H3pS5$Un2!~Nes1|`$m4>{!{<43hQ&$5x#=O9Pr*ii6 zYl7LkEsOPRjo5)&tkE=QqY=*7j*v3$tzbRrDPx(~2Qtx1S-cLXrvu?)18>mF$q{cUfc4_c6@NmcTdk|)%b)zD1=j_CK1c|)W@Se` z71VnbWGpE>uvqb+uz5D@?N6baE1 zfEN|0b-JIy1{dk&n!M=;N>0^gMruOhtS=g-Fmw0mzE{Q!f;``ehK$hQiy| zDbx3?R#WJu2Ed!J2w`qb?8CwFET1U25C&$%HR8bKL_;R}9*)F#!ItkHET7VU~3hVV?AlOuwy7y{nyp zi>c&%a8p96URY}1TS1bzs^`C!)y~>!bg+2B{FAuqQW}68~ zF)#D#Hr^(v!`?CrYO$H01v3k31`_^dUtT`*VK%xuwmlHnmAidG#9N91M9ijE*(Oyp z3CGSDlaEsi!j?M|qfj-(mu2ci*SSZIo}y{H+? ze_7yZ3hJEhT$1w)5J%1HQAvHEYALzsj$8j1b%bkRFqLm#d4P(+WL^MiK*Xs5JX*MF@Fg_sB>&J!z7rD0t zPu5161B%PUTq&!+9Vq%S9o~Q8BZ|d++($9hogjk6m6@65Bfddg#51-zMyZv3GOWe) z_qrOZ^!{v>Fka7?jf|Nw*u+w5&|=NrncNcht>$g$42-8FUP1Jk*xVNE)u6Mdf$d@c zq^!)#4jt(x1?$-$VsOdxyV+A&C9E=x=D0b>{wc57wIyzqp0WVH?^~c8liRVBY18|i zbwsYa7v)(>)j&cKpd4e1vj8HKqI_8EwECs6sAw%1c}sV-2|pPy0Kj{BGn}Qn>>KCD zJAEGQfjyaODHNs)fphEZaqXd%WvA6A!k$0jUa zyF(G)aRXrY)u(UfD0r*de^t-&UU+_KcTlAlA35HwSr!bkR8(YDS65dBXn>lR%=>6F ze%xNMOxFAZK6RouttUpynz*&1M1;_HE45{tq}tWv^DBi;#8Kf|TAv%2@rGeGRBVY@ z1#1nVXi!?RCir#(80{PB+EmG!neO+d&hJ7Rgh!*M=0ece*#67@5*bKNi@EZ$Ja*f} zLy4D#<>O3CYHCvGb)RJ4;Gm#ea@;%IG=C?Z69U)ol>Mwaz8&+&JwgeizeY*cTgHNN zHW2`FVmQ&XwwS4Xt2I{pLoFQXAau1wDAN7kpaA-U+9gJ9gAzud;FcH%&@Pm?S9q=7gGZ(Yin=FTA zjZowsJ+npu3L>vTrc~d1==SKUiacFUpZ<|4OtTp8v!1Wls-AKaUEH#8CYNspxZbk)Ug0wu4y(bh{@#pFYA|5R4r(ZvFZww4v{%B!c=`zA6HB$CEv(S#ohYAKRqv`s5 z{n>+*S1=(?f{B@#vO`&b5RvuhpsA&uZ!aFBV)lH|YbW9yd|2Z!`X1$XN|*HeaE|dA zT{luRDX9=V9Y2V!X%EPTp%bt<{g+-&^b0S*4iC;qd`Fa~cvoS{IL(7ev_(8NP%C>4 zpX~a-w}Sp}Yi!guW)&rD9-!C>m|{o@3k=(I5L^dZ)o#9)VDfe(5sZNCds#*OevEQvEHU@4{r?EQT!5u2+M?7ZR zkJ809K~LJ+Lz0ru*1r{kd2|3~BlaChI;!fx!te7CIbp`kBw}vQ^mzZjbHvD0u1gov zjv-1vyjS3*PfU`D+?Cu8`ljQO_1NP(&e;gxuisdu@pofR=~dKJngFj+k^=1Br#;B* z4onU^2-SQ;qbA$mk|IX>te&e*G_^T_h~pwC%sMf>5PZJQRP1%I2qOI`E@f&e;@G+^ zYtUs|Li*$qdI{I#ui~Quo{Bx<0|GJ$ zaEgn;C!0wF>NHNVH`s*i2NjRIITFE#S-$G9hA#+5J(do;J5S9%owuLZNo$#FOMUWi zV*GBffF(4q9octHVf}fvvHFcE!TRmwInyhBx_$VLA*p5?syfaDxH&UB8?8>^!XRh8 zKzl*6CXiKMFc?wz7tIbSLYXPJvg_% zW4fWA{LTZ4-kG|V`z1IFP>I~5Hvk0) zKDuT@P4skoqJ&J*-;2tigqsmwQ*t$)u_QifkAQN}@|W3QcOT@=WHGf9^}S{1AeFEq z)S9ORUtpx+{7J+4XWEgc4rMBN{hbArb&%;%MX##hc#l{S{}?yxgt;6Slg$0{`7};; zYUY@dXu}n3SY4QbHX=#6C~KbmpX>@NU^bkyC=*QHBFXMLI1t23ovB8waHDhf)Y$64 zY{*B0Y?mU#6KFxVC3p$>j2R#GC(V+s2m_LVE0G15sX95k3Gq5o>oL#~&S$)o2#E?t13d+_37NnUK= zlhW>>^2PTB<=^9}Ki}o1y4IJb&2fr{jjI5W(A${y-1*OWkOlUfN3LKfZu>I!{s(RL zfvvxnw~=O6&eVaO^Fk`w+%eX3dG!CGe2K<%20*P!D@7s(3U&KvQeI6w#`N=Aiwx0x zZ;tj)Ga!#cKL&mJFq;0z_ zUma=tOkXv2Cq(bu=c>2>pcZ%s>wmvk(niccxlPe)N~DD5iGPjyFZ}QPN?7oEK5BkW z2FY;>S7gYyO$bN;^Wlk?xq3FT^OIaRV24%1l{;^wB3gQiq|H_MeYCHrD?U1Gy)J@j z<6^fqhZmpbA-8P#{h*mSo~Jm4W4&5k`Jgf3o9>1ZW<&HW1^4N?7pnkxf302A&4Ef< zInnydS_7h?F2ZuOw(y@GEdfEiEOF=-TUJD;B#ZsH;!mxF$J2WLE#(7$hO~#QepgIo z!ACjBH){T^eB!ha>z>Cn^#P4=y19XC98xM$yB5QgiYD`CC0Uuo!anhwMv?Qc);0e= zz6M%lZ8FAsTBf_UWl}1fd^8(H?b&r^awqByI4|Ph94~je8e+YkJC@E!dcnXnKrebR z(bT<;QM1WlwV&mAs6O+sfa01jRHYli*EE^gi_vWZ3MY3o(H=i|W%<$tuI)0diDOjE z%!(vBQU+y<0B75$JuImg}q=8S*R>QP>=!T)*t-7wkaJQ@vpd|Bw0AF1v= zXi=CfR^n>)u&Fj6vJBM2*zRb?8SkvYIabXYmc!avEXzW=`(v+Pp2R&z(Z6E9HujyZ zy*62iq?i)_k5xT4KtI73^u;jXdAV)$A6tg)@3c?2`S6qbLgmlI3D0TM6W#1#k}SQ} zG~$f^R1Up%rsX;e90s@9_R8Gfhc`*>Qh?^Gu%@M3ACiA9sR=ee{KHdC9}q2epeBOI zODQ(J;Hms0eINKS2JqxXTac!<82NnBzK+E!IXC-cUZ_d=zU_?Bu?#lwXO~h2&-9$| z-60bb6Fp*6!+HBheGR$_x&1OnXSo(fz~9^64t?zP^vcNYx}%OxPxmaKC>TBaU*xRT z-XK?93Ugnx9MSD~0>?MyN5{_s$Y=|fS{F1e<@2+dxmpdxcl`g?9!d*p!|cKm?_Yg! z+hAHdHO!PUFPPJ4)S^5Js-wve3PJ|g&DfAzd?(>ZaLg+IWiyxH&Vx4?3;n7v!Uf#A zA4%_2nxADQAFkR;Wvk=#kTKHuJJ}ST=h5FomMI{ERV3v|3Q1bS!jak=Xe`Si8;V#G&KP7Lzpb}1XD z_q)g5IR5n`Vd;YQb|N?O_K>4@y(EzIuZbdhZ@;HfyZ%O@ds zS&2DihxkcOLxV=VnZ}EGBmE#;*p(R^Vc{JZz$|v%Kw=<|XN!#ue^RkuPeio+lqe7E z2A}OYC-3&Ug4f5Vl6)OTz|@Su#%u|#s%i6|P9vx!-RODAE^?-G*L&r8sI6=KUBaW` zW&|)XyjoFWf{fpgO_zu(splx;q-K8xK`M=H8?cvB14zgwOfha#a^N^Tn5anlyP`M*wImXpGu zXJs3W7D+L-4NaAHEVz7T#(keT&VZ(IfUde=W-Ael=g;U&$IG`l4)Gi9dFXC_BV)$9 z3PS}#iOeQN>v7K@JK-i)G@$IkLcpo1ID9D%+QHawC$><0d2HO_$z2z_8_~cgw`X$? zxL*_b=F`8hSN%+EwFO_}$lwR}?J3`9CX?+0o&Sgc3pnbW;$?Pc1HyJES0yPM_5T=m z=HKDchvWXWAkQgYdG5@!9?()@_eRyw0Hnfq+-p|>USAz;`VNof;)T3lGL2Kj3nklA z$Q_g&W^fXku!-vwY{nt(HvZ}#JTf~oBg6%Xz#Swp6&|F2$mIJB638uo`X8;fEAjxJ z?^n8|hAEDzFyq@|1rgJsaN|1Ikii*=RzYpP5!<=2*l^i`3BN-(IJluVT9n5_)xbFJ z=bo+nji3|FbW37VsF@#i+?UnPC%X7rFZS~;~KHG;{dM_HM*&m{yDqv%vrEy!r8s)*c&5hweXb;!`ST z0QibOz1i-dC3n3~^~oZOE{w7;&1)Bs`?_rA`ZZt*v=vJX!^ZlZ2`vsN&2ggPG=x3)Xekw4>J=y1*;u?kh`H``G6j2Tn1>6z3wMp z19E~jQx%r({>5GW4S0GYkR zK2Q!1E;RV5CQXK`Wq(Ubchj`F!Ia+tAau|hl8<2!1t)MG&}rLilax)#o>@~Xr}eH! zl{2mFM`Zdjc{+iB9l{&I(7I_)UP=cESrs`=*c|nz_76sSY6aPqRb_wr&#uJ!FSGnO zeftEDG;S)Qz-ucYvh}3QBi*KTHyojlnDpUUk%bJ8e?pV1Q6yJl%>?9`bL7iy9+GHf z$XPMv(zZJg30A)_KbGr=RXcvZmh!Y>e@bmLk?pP~-bCSmO;sg#Z!pncMWM&+*N<>@V|VuFni;JeHN98KdV`mQV4!; zmE}i!dAJ6=y|2wFd*CKf#&sbz7wRj*|kq_2ilh5i&YIkJ^%aI<`(O__?Qkb`Y{&m z-rk5JX7%3^ZM3??S}?5XY9|T<1W4~zUEj=*mtDP_o|%DvmukFK>wbv(F>5{wc|L#Q zLpkfX7?uCeuhth%YyY0o=>obr^6pu^AjsQCEyp60BOpzTZp(nhN|r3~^D6ZeoPgN$ zIcVSwSEZw5@0a_APQzHNjJr82I&eJ7do$DJ^@;IM%~?%!7~kWn1Hp6=D7eo5LBIYD zJG=jv4%AGcne1KZ1#n})>{9=^|d$YwJ6%JPz%BKkkc{NDFIRt zr7u~X(muMNhn0UF%6r7DCz${Bgd?pTqiDxzZ$m$t=_=bW7Bu*1luzl8N5pIzHYlD$ zK(!+-bk8;Z7PGP5}ymXJf}_CV}}xNR6KlV@?-gHugWCw-Z7F5Ny%X7f__lVFF}H?Y9LDjm;NEMxPyg9TqS#UGO3BtIy2A9{>{`xE4eD#+l4gkkPT94+_8b13782A|t&Y76MJ6#p4a(#tj+aQS2Q!Ok3yO==zDTlY4Ou@7F4D02&Y5 zR5=83s_L(>YO&nwW(#7seP@ z-e%d!L|`|{DnaxR--QV5-hZQ`#wI*yo~$yHkJ4+dBg+l&sj&d^#dA1h@gUl4Sf->ZDbll@$gTZLewhFXJx zLM@V`j7#lFcf;T2<4ml2SqL-4`ev2=zPG4J*96R8F9@YM7fPbyu75RH><`P-nMe+# zf)yKFqsy8`rRmeN^it9su{?zfMWA#5?V{`uk5c9SmA`X2fJt}s72AMJ#CXv_>!3mG zGP$cq;p}Ra>7&k6Si+F2LdjUN zci#cX;K@|%5;?^6H35T0sLQGr>y+%Dus~62N}8#i2HQR>19{HFAoAbG27>`A_o*E4 z$&|?|LzabNwDtHYBGcztr=MJ4Ap^)A7h+6yQr4?-P0QwaSkc!8IPBXX&B@!T@Ayz% zD&=FrX1jkri%uR2?K88bVEwitWx`RUnv*4_q5?HHQ@m*ss?LhMPCVlSFO63fSx_dY z)fgQ}&TTYk)U<-POIeSw2d~Dov2Pq;jlD-xMARbAKgwgiARva**q*E24p?H$`UQWU zcg8X>FwijzVqm$i@bmHI=7I4zPhEK0Or3K#-r8CNFN6a=|1S;yPvUYdF2d)zWshsn zc{Y`j0%G&VjJMtY@Fy;Hnl)uDhXQBuw+XJ6eTys>X&a4gIjhf*n;#OrXhLen^{%3x0%w41i^K&XfpY_=xbWCbx#=H`6sLjg zzpa^HN0-On#q5Vn<#Sm?$5GLL`4wbCpZY%2<<6uKqn6YqQEY*99wXl*#YvqKqYPB* zAZ0Z|KS^Y)$PftJLPeM}0j0(z>rUT3gVx$uk5C#jrCV<)+PBF*P{35&E}uS?!8bZM z_WOo;E?6b%>*W+hT(_vcgl97hA+7-XEQ>-jfKoUKN>Ma zcBgw7oMs3k))L;`J74TLeH30<4ZMUZsHwLCyq370`CZZUNz@xjfjk{fpcS1l(XqRw zm6h7;o48>;hcIKKAdBOGa$xR`+gEj1g7Vm!V`@GMe`)9|o z`#5&p=XHMLqfCjUd$?9K+^)?)In=A+qD2R&`D>IhVKu~@uhDx8JHv5Lml$VR-^{;K ze5A=*qMto>zWZ)`%G&CmtIhJ+Xw$#-@N_D`%N&4HXYDt8=Jb!>)07^DvXsrbFdsl{ zA0CVS5V;CjN$t=3VpA2HpYHMaNY3TeIB>nrHXS=z^>6RE-BgjxRb!a!m~R=!%4Bc( zZO+5fnyxm_`Gl-v zf%xiUJaSE)MVeF@JH1g~C;=cIX1W{xDPTau_<(V1arDi!HNqTeS}j~=4a@U%Vb+2J ztnK&fqaS&gY}x|3y+nsE?)Nr00|zq_D7k8?oN>oCM)Mue%9TgogaY@ROkzbjY15^- zG}uXQO4ZE?+ui+Y8WfK+gC^765m{1bi+xOai`4JIB9kVK@717z?=yN;brk;Q+oPQA zfRL6c|Jf#I-nWwRq1YlrLJXZ|+f@Z&7SC5r>y(JK6ii&4iX0uS2lr|nGfD?%C*qJ0 zV)5M?RD15(?qT9ABgtdjh~9}Dm1~Lgf9V#OiAkY6vwiK@iSmA<-{voRc!1X@U6@JN z*)}o~h>(n;tUD6F$&W}OvyV)R(SF-0st}_`JvuMt+TC^RAt538UbIcqmb>p{L$hyh zvO>(3Z-AtFCA>gIm&q9@*VID-bxfF?3np@Iu_7nPZPt)yG^KM!$X5nSJwISS3 zuiw6^*zkEaCQO68Wg*w2(YlbGb}4iJc_v7=^%p>ek$7Q2J0{*=3p6@#wXxcnF)cVW zi|NxAdSw|g-TydV{t-#XSm$>f^tCX8M@9j!QYi&eI#d0syiT(dYD$EajIG9RmStDo zvgngE3MB6r9Lt6d-?Pm7+wztpe>+{^rd^^bh1ZguTr5Dm$IH!p@3HGEzcX%+*zBPy zEk5#+dEnDq0=3lNqekr?pq2K*F|tn{+sx2W=<&W~&r6v>B-1zb*0*69($+O$&CL8m zsb{OoC!>QGh0ZJ~;zO57^sKbHVWJqTU4tbu%Ak#?e7Be;{j_^?F!{_Mf5{p%|Y9j&kSTZmY_ zN+7fXkL^0YMepX=e^7k3^Svr1GX%<;85>I^KzsvNFPNVfNXgcz zs~D@@xVM@`kjvr3Y13d8D0en;(Ue=h8d7zI|B9mfe*Z3g<#Z$Io!TqYCm|ts`&thh zV~iM6Qh$N(|7T&MPG67BltZ#Vc|WdicJF45dXbjZSWSc@uVkKWZ|Bc z&@rBO+_kcY^AzwrN{kE9vh`6x0M5E2lo0O9Q#^~KlEqoo5fS2a6Vt5O7Oj2yX3piw zffqNm|KFrs`&6f4YX#xCrUy0q`{=dPVvgT&CMa8yZhWFYtj=nKNxX<+94H~DvQ9d0 zlhY)Ml|F>6oZ0rTRl~S62xro%2-=J~Y~74YMB4ezEz6x^6oz>3d!)lXQTJL=S z^{N!ga9YHdKPFg-Iz}hDIJakJ-(sV3j=$&j>b#y5^i|Cqt5NXhNT_(#BFWj? zcT6v@f$e1NizH>y#D!ZUL2!9`+Z^|AsPO9ysJ=GpN$LRC%UPd^*jue$BgaWOt4%2% zAIb0+)Zbji<1B*k${#*_0Fru=I0c_mmQB07@i!LpKi}KAn(cwOAHjckNgL{fVh}Pc z?-j_mAFq;!^lceVV3nJL$ zk}|$0e!!mA&Y7R;I=J30;Ivb)P^?UoKKHM~T#h0+!Y3lMs7|s@6rG^%H&4MZ5PR1M zY5K0qahd|}QS-A1N!~9@IhNOBpEfPY&Ut2G{_T#xdyYLkC!FDuv%y3*e$|TrxsJHz z7n`u$(1_?O`2AzM!15W!SLI;<#!$5y{Rxbb7#DoT&c1h+9YfV|k~p7%$8^l?J|Prt-!r-#Xh<{7BR%wk4yU8nl%7E*;pSw^R)e zy2k*6R_uGE*|0>=`_|bZySqCPlXWHHc%XYJ z@6byJamzOTW2>cu$^_NP5ldC`GEpH|n0z$MU`FQ%*V3{OL*KQ; zDY3Qs$AX0Z>zW3hgs!>o`|zzaA8K~rF~EHtYbZOaIb4j%0iR2nV%p}PC{RxSKH0~j z3mM!_tvmW21Xp(b8W-x}Z$rFFfvu4?_b;7Z$**F!2_$($z8_M+#BAn-2C1*QRtcj#LNZzkNytMwy!&9UDO*BH=<%x9pX@WvkA#i~hR?SZ z{xky%e;_;dI}*WkCQQyMR{mW6(K7VN=IBA1?XXlVuQ=!O?f+Hw0EE^lAJf2uVwcUR z&fk5k?Uv(y6a)Vl9&L6+70d_;oEG(k&!qZ&9nXsmGfH+IzDrq?oeWGq#vGuY8$V+n z&1e%D|CV$3<>PC>ZICF}LsB>h>;7kKr+^Y5%tw2*4$>5016Z0dEYxoqUVZdPn((k- zYVZE{Z{Q%@RwGLCwoBFR4eq?%&lVL*SxP%>4kp~o_HyI?&ITaSLBrScjGSZgE?hQD zrqKzQt=aH(ndHtbD~`5EiyGYL!LJFP^w2nwA#Bovg$%2Y(B#eDP2(rxb!UgLCnpcPqCLXF+g(KjJwON}nxQD&PNM_Fh< z7?_q??~;P;q8xsfcO>_ve=!bRgtmq&8)rPOdvU0$?%>B+}=G~2X--f)#e ze8=g5aY1qM^1-~S<A2roOUHVe*s=l^NF!Iv{(rg=h|G2IR= zm{#b42&^vArQv0mnQfpAk#>_~YFQEDeH+wN>q??a~d6j3p z4r&|X)odI-AP>-=d$5)I{+(I&I9p9x>i2Bml31ab;ewL?$Roab_09$txjV(U4%1p0 zp*uP9&9_`}pC}bmtEuKK7Jn#&N*qof8jyCZiG=p&0ad_l6c#HCSn23653BaN8r__c zIJr3G-#RL%opXQTNdG^(ms;7tgu-@ton_&qKyI5rI*`{fxw>iyaDAcCo?Ba1AVE4{ zh7`35BL7&<-<|H|SY@NhnJk|*Td_`{MqFR#$DN2FVTh2S7*_LxPg z&H+O8$w8v%cn#-A3W(QB!{SwLewH&X4<>^!j}&+0j>9HB%qt4S~WckCRZtvtt@lA1&WMskwBFTh+KRWRsx^^v5os z_*C#KRA?<8?Tg*m@U=)PKGNY#hO@iE0O3)f3g`qA)lvIs#rZb#lFU;BliU6Rb{u#1 zJ?MGmYZj_3L^v8?7RuX2P|Y!Krf=J4V{ny5F$M%t zdgX<~&Q;`#!4{HDYQeO%3;cnV8r@HwAo?_;K_VA-!yz%iQsi@SbQfM&Za)y%EFS*A zC8rN?>UY5{+*(Sd{o!Mw4M(xtjf~Cpzcvm)JU@Oh2l) zG6r7kxE&}KdmV6|lcmXRW10xGx_n*^@l!ltDZE4TS!bA?D#&!{;{DE(?f`XEsVI;^ z(x9G!aXFs^3{W|Eu7`%rhdw2a@`d__&z-D|v&rd);h);kE-Errc2qi-;477sqBqMw zijUF0q*B*_u5&vu{;!0#!nDvV}VX02t=?zZ}o0A#EJCm!>VV zXTn5tj(YsxYuW@}x*nqO3o!Lj%Avio!;m269dY2sLf)IwAX#5eo0ii||E!n>KU_tU zqr`m43(#e(=boKb(^{JV0MZ=q1-~G~q5Xc%4eqaDbSDdkTA)i$D(%G*HE-S=n7}b) zrA@h=-_+q}u|4r^d_zN)J?{W^jH4c^9g!Yh0KN1qik^|-g1h|)2GMO4Xvo=)nj6J& z7iU@)kJHA3zOC0ji%#@#J6N27V4>F|$WfSoXw(eV(wT_v7%Y50t9HiMkrFs}wQ}C` zI3?~=UQDRgyo7;vX9~6OX60fv6C`jah=zlB;~3n=+!5p?lN|&kTe>Q^Ij=^02@h4~ z;ZOYXEG#>h5q*`JT3Cp?4`x3*Q2Nb?X1KTNKGzTfO?^hOW*|k=H-R(@CCTsQ_1zaF zKZo?``r1gHo?PHxe};oJ^o^%a%g`+*D$DB()kjBrfiUd6`b~Cop?B5Sm`N*5=2MPq8{K4)6Qipj-Q7MILu8Cq z9OzYy1mJiu{UIOy$WAYBZz=v1;pg<%I8`|Niht>HfOQ6k}Lhv3i zi~aAsS{Y%ZWa3pFPXL&bXbeW`SCP6R{T#$-1kHOQ1;BS75WF{$&bF$ULKP=LF!+3!5O(^q<;pE^s7k?z&u{t`Cc%hTo)vj|S#0c%Me6AUbi|)4>18 zUL_Ybx5-V);zqey?dQSP76d04XIf1cf3st>@cUv6k|NcHRsrx zE-Trl0^?9EDjo($xcu7NE!sXhloFnPsp7`#2 zkG)Bm{*k5j zN{zOKYzRnXY-)u)T#rlp%au2l^Lx`CD~P~n`yUL^IpFzLSHib1mBZb+&5C_tRCX}` z&1k4HomN3U8!xbzM*eEccO(C#?G2nws8j`>YTsCr1CxrLWlWnI_U315kbeuE%+`Z$ zt`vpat}>oK90oZ^f`>p3#XefrWilIq9I)q#bekU8igZish~WOsK{;P7Rq_34DF#7t zZ6ht!Jz4(7w+sPrkO)3v;S1)hFc`zdU@-`f`wfwS`n9LQUso;jk4V)I>rjLgdXE_dv-01%}JxRF;dus^?~)52GCsLx9%$tfC$GQVFw9|mk8 z(Y%TGR|jmDdiiCbs|M3_eWGTv%cl*~zpyn~jhCgaWzLZQWI_$diM2cdL0n!jx@bgw zWjdP60O-w|IL02U)M_q8{GoOHdDo(tw=k0lZnU>-u6G-SS)%;LuO~b=$thT;;Gr!` z$1Q}Dsc6SZ(sUg8XU<)j78KPgn+CSdHLE%!8HNB(^jf#?4f#E-dbFQlc$YP1l3IJW z#PzyrDC}#N+i|7VOD8Kf#r8w)Kv_rj(sNl8O?IlfE62YpfL;B}_@p0jRQ)o4%@;<7 z*3VM^)ujK@UrB*E89o!9Eo6P$d{GpjL=H*YV10Qgn4TpSXCgJFKF0~#a}u~5zE+U5 z2^>3ePj%g+1e~c_3*|(q-V*4kMGExa5`2?Vm0IV^b?Y&s)g^zvh#qBDO82JqwaGGD z%e|wLCm%fWD^5WoR$HI%b26;u3_!h_tPMTa9%;a)!~R2ZS`vN>+*eEuA01auBrOMK ze}ipqaQMv+fV8!ETK+%A3*CFeLA1{PL0w7FwS-%y;pBty+Y#ajO3S|aH#U_E5^GUW z7+oma!`KL1o@)HR-*?i|W4BXmb0r}6R2HP^3Y{wc_5Qrt{B-$OAdyLoXa$pV%{xQ*PR3 z)7au;D0hlS4fMUz$EOV8go1!XPkUAoTdc@JA$VjIAM@;u{VG@>OYAzGfT222%i`C> zOKL!|34$f|O(6K^hZz0GuZ7Xl>3aGIt0ql9+O!dk)ol4s1HCV?8<=Lg zooh$q_&<@Ovc+cdIR^tn>q#oGHiGQJDQy|Tg*wVAamao)xs~RHl%pG zoUTC^UD@WQZ?0;jN9M_%p8E^6yRo;6qcv5fE!)9X^J$SC#=l~LKq2szYkH)@HZuWy z&1HS)?!`c(yAVMEo~Aqn=8!|uIVYTSvi{O^GrW)?h9!F1+0 zCkuiIA%X}xnsMPuZ7LYK*ZWuWb(MyLpRKUm7<9O6alV_15cuSm<^1qN3oam*Mm|7_ zSV+BXw?y3WyBGfqtY$Hs!4SS?4xQ-JhJtp4k@+%xYtrF!zr({&6EzUe&57;&ESb~p zK!svoE%h2w5=f>lb2IVjCI_pc#RB>>>^KD@le_(DqeaILBkR<2`ZkEBP=6|M*Ko7U zEJPGzBif%(6cwOmr;%2G-!q-z%-{DEGmZT$kZ7Kw%heO;3G)&|7vS@)jRUc+CXsb)&5e9ZkHVb>3upP&MR#{1ZgUW%=3x#lpkDq&3!8 zUlY`<>GoQ4CoTjl>7Idq9@^qvn~qFxpEYoDqFJ>9jtX*<`{8Tc&}oZt^KxXAXjMW~ zng1%`6VJ{r>*V+u`&{881;M_>A;`txX(|pyPAbf?otT=kToo4Taff>AI{OFo@ueza ztWD1oIGF>zV=mnv5u@qchxM60Ewi-gd^C?xQfhp=zoE1}%}r8FD6nCk<7CT19KfXY8=Hcl7L`ezL0M2m0N*2)F}4#XPn#(Uc3Scoqv}! z#M77qX0H|G-i!o8Bd_8D?;^CjPd8T;Yk-VDBz4%Ra?80zXTDtcFh{<7J@BW{ut&SX z_H%A5cUNWuiOsdo>=x0asZFbrnO)9EnL>Ql+9(FZF~cSzuV@?-5|;Tx;6xxAU^p2E?L`$gAqqyBrPwA-@m_u0Q*NxKLr1|L(*& zbvbAE1rc5`)Ev`m81;%jVcuk;e;#-(j z%U=x&*B0PJrvHgxkOVtLe`cOhIi7OT711q>%24gNOa0Mpemu@E^8|7~%;FKqx;^_@ z^BcKM;9v)pJ)G5d=U1&nJNmJykG)Xz-YtQ~V5W0TD$#ua`HJ6GoAii`ibWJeH7Fn& z^<~OT=04hiMl#u)SdoIR4CP4Adv~H+Lhw>Uqx5IDP`*`6ApM&S->O35AubV=QNe@dk zRM^8&ip(x&$|(uCH*RWr0PE9|XVUNRaNFncr^UxqLIuV-H^~;R-nM%QQeXM(Jsz{q zYj#rvL#G*gYESmx86HUv@6?)RmI(=2UWqK7g^TXeIO+YDYaR z*(A)NT*E;|_f>feMZ$>>pM>n`smO9Uo0uPcw{_3qHxprr96m&V7oCzv8^2Z3Nfb{= zSJN%BwX0PAl(9ZbLM2Z0p=sM10q*hwe`E$Wh>qsrUVC3d)ZoOo>7wHyeiy5crQStE z)w?eV^nlFYV{)v}YngOfb0p7`X4a`2i!XyrvE!_6dKklsO}H^J+()eGWQL36*a040m*4}G=c#I?kPal8n@ zOP4l2Io0e5>m}cw=FkVBOr|!qT@Na?)Osu1Ik&yJ$d}JXNR_=jFbCtR3r*<{$kAp* zJ9Yq{-t6zRpcA9Y#AMlfXx{hBUHH>Nloa{|GF7%8SfBFoSKj4F&gEw4WxYNB)`-x9 zS*X{mD{tq8P#<#~vdR(A?CDT^w$_32$sffu!X@|~>YNNn%Ac(}HZHd&Oin3cn94hM zU4x?jRIpdsEJ~_Xc1`WWE!Yc+9&?gh3a+hq(M?zY>w~1{rQ`EHdwuHaR8=H1zdkbe zE|ZD6V%9!nB1nLIN$X#f=AL~1=ljy6q=rM9CeE(M(U~jKlGZBheIQ$fHucmciKNWa*lQlWb z8z!>OrmbVoNi{K!0dL%VnxSwT=#m|#nw=IINmNZBAu$-B zs)N)?l~gv7YjpoLvdXYo>#Qk7ghBa2xWFD4@N`Y2?@+UW@v<9>_;K`I(72a+n3JZ_ zkA71@nx5NZU69)HR#xYbx=GcU(gA3m%IHMkva;r9npgLyv9w6eKI|v|63m-$B8ayG z75E;WxP&f#?Zo%hQl{*~$DzbW3^Lr6&@9sMchOzud)}sRSc3YXV$inu-BG*T2%!zt zmD!l4d_%E4#1)tJe1w##`1cW1c=z(9FGaEalf@6;Jd(!LTrz6M_oYCL{v66W_M%h< zj!h=QXxvBHd>TW(K6R4G-g!n>eycY7t@3lpKk+PoPOZdJ+VAS!m#v_?#j>&RNpcu; zO=Bi`2Wv;kqX}Rue`6^M*wFA?%hmm;)}BLFkf4H;|ub7 zJ_3Bq0SS^kV3RW(2BnD;n6;bzcf9Q6g$>x%6?2vhnZVjT4oTo%g`9~~C$B~V)I8(O zDcvi{3w@9QMSoP&kR`hrGRz`eX~Z<}_#&_sW6rsRfxU5Mm8!7VQs6BxE<;(VG+aLs zCV9P4hCk{btdvjcCT}!<0!Mf)B}AKqO546{%yWKIsmoFiy7K@cyqbjZ^sE*ZqN-0C zxyLo**BdW-*)xKg&FHrX77e~cFHmSThn*vQ&Z>NRkYQixfW}4RZqVdSw_IdW`^`5w z0Ze#0mY|?znZCm(KZDR&XRzKvkLb;Va&tRa$t<=f^`&OTqE6Ky(mwHAsdcy8^^|I`#eT9O+fw%pXxe zSE1EV^#Dp#lHi>%z5e-ouKZa*hJ!DIYGo&0Dur#*HkNmaGczYP%Ew`8goRqmPrEWR z`|s`Peak$0la=5<=!S4V;~ZF!GTygS+wNGvW$A!R_hZtAq?%uQ^bWMrt zCtOs6+Z8f-t?JF2C!_!_nZ9a!AGI*SBHia<5$=q5v_@nt0N?&3>CE2;g9yBwhVP47 z&0PD>L`{I1nxGizq zMqHn-6?}JxyiH>}+k@1|9R6gfRy`?JMMHyZ73ioi{j?t!hzbQ$9?J-S72S1PUjcSE zo@Ey0-v6Q@j+w5LR=8h!z2V*=0ZI$` zt6!!#4ga4YZ|8;G)ONWx8J*M2um;)ss68MUgnw|+#STZz8>9|C47H*k*Ua1gLu?f6pp=B%f{mmW#t#Pc>DLC z(I47StgtA}VWCM?n8pMNU6s@S8}xFZPKrZ3Xz9sg{^+>W%?SmG;%xkyG)=KgQXy)> z3ZylAI*Io9E&V8}0I2ab=Ic&5?17A*Lj6Opz&DmN{C;5pU?D~s1I{Xnd+B0A-1|Bb zT!NvtDlBRZRl@s-)4mI<%Q3BYvLEdQ4Aj0xCAKBM6VO_a*9$vtyWceZBszfPB;WAV z<&pLvfA}tCxyd4`uiVo-We0O3P}i$iNi5CxcG3az}_^s zzsZcucIWgJDkXeh7?;tMjc+6iP+!jUA9Z4xii`n@@4pAR3F3#mtyrgIup5Qu{S)eQ zLcsc-5bJwfzc$-bYVUj9uS!N*t_0BV3z*u>jQQQW&;=wt5d_%*vh}pD>Xbu6-3Tw* z?w&9CW<4)Hp3GbYfInDoj!1Ty5UBE7acyz;Q@o{QO6OjD-i&hxs=bwcSQMRkFIz8o z{C-}h5G{wQ*5`&U&)oIA`{YnI*sBm|vK8WaPqj1shyDu<(9@4Ox_heR?oXc9ESf@e%XS$;QLW&ubb)HF0x2q>PlH8%vViMh0fT*f#A@TID;7oZ!Xc#-w4p zH`6AQQ*Tc8)85zv@Ev56H9c5n%^8QnmrEP^VI%RBX!jjT!Ur!i@2#bB?*14>fE0eu z>a(YYDygb}6}a}^Os|Y^V;Q#Kw0@>Qt1K*gry~a&lo`}dIn!GAA#|vH8~~`8jpEDp zC*wQY`N6R$_7l`CI-{=}b_Fns@*!MB%neyEuH@?=|7m}`5?&Iom*6+8#4A-nQ67iOTEoIj!Io_RUj8FK?>z$zn0lO|2ui3RQw0K97<|2q#3*! zYkmqw`B{O$m>a)ALPz2nno#B0=FP-q(S&0wxSv+p^6hX9w%A;Mtt^O|QYK{E4tE4y zbEg>QM^OfJpE`Dm=~F<}@+@CAzA&a*gk|{0maD{6ViRirv0PeZ05_vQGcy`fJr`=$ zWGicmi=hF(O4T`iFL265&4T;vZbbPb>Df3ROVgRG^T}jV0K2SMlGo=&SvT^;ifPFT z86IhG{OuJ_;M%S8*7iy1NsxEQ1iY9i+mj&MZN#GzIVN&_ovU7&T*P#@%n`_I7 z^eXRoQ8q|kE&=Dm$RGD>H%6jFTx;x|s>_-F-GHeyg0$;gOVZ9v z6(Df{n*3YJIrOcUSlqg#O-8!1lT6XCP1YdGrA@XPB`r}PyG@2cpJzeCv^CxJdhY;b zN{sP#(N5M|v;2~!mSM>)xAVlK=dv~wh!RU_RJUk)5v`O7l;NkCSZW zD5KJBK4cSCQm^{DCIFOT)(UzlJQUKbze!BP1c>PMCW{|=l?bIhs1)1T|lu8tSoKtixgR| z%3@z?2q2ZD#RvkZyI?B|$_s$cpWZO04SfBveZim0Q43zqE`Cux-KQy;i9g!g5Zy#G z4{@!nxX9E-UlN~@Q&O?j3=#J;G4(fCg3^xtRoc7TUhCmbTZ{og>p|zw>N#Ey%**N2 zyC|t8A9nx9NLlIRCAM_VgczP&zH{v@?gfs6GA6tg1bKKuH!l&cz2zMjg3aFhrG?jd z|9?tU=LPcm$f7Zp_ouaoZKs$x;7)y=>(xg~GNrFbL5kpsk8+uv-AmW55l`N|e))l( zIW^ja^VjFeS1`0wx6*BveXrxUsV#Sh)K;9v#ka)Py~!k72{&P8jF%<&;Ybp@%;U76 z;qLgb5%WiTcIwtc!fMHy$ZA*25QE9WEDu9^;SEWdHDYy3@=Gi~H8_H5LeH$mr>FcaG>8`qx8s^yxl zZ+AV#B?7{SU%^B9O2n$)BlcH5z(ZvmGNQ^ekY1b3qk=vM2^yzgjz!y{@2EoegLDX1 zc3NnJLZ6|iUnu5S?dxXZ)u~WCUB7{9H%dwx68$qPn6tZ`8|vv-H5t; zh>Ey$3Hmv$zZ z?i5t|x0dH4O>HW}4h!7ZVQS8jqv?4IyTng6YYW`{kkm6W zym+SCV5t)qpomZ9x)|HH=c?mx_0|6C0`-6uUUn#-R&HD(axXR8RFZP54^Ev2#SW8Y zjQUM!Vt3u8J`KpUNybT{J3(@+Z|lXXl6`FR;5COKEDDb|6Q4J$rU2mVQ0c*hmVu1 z+vJDK-I&YOq8zht@H9>26PxiF=3s=6k7{2RsUYk5?_E~`%}3^UKj2-KQ$e_1MLa-V zw$w0a3G}GR9h$$cRty$c{v?0{(Z?se2vvz=aCb*bw_goliF;<0U-b1ah;2bOpA0?U z-`5B=711=kG1RL&a$k*ne8TjJ`ZJ>O(`1vhbe4iJ``Mk3sXRpy>8tUnR0TJFe4}ps zT1_)g1G`Kno@asDui67P+oi+>9L~VvsI0@l`3tzmVas9b6`UP^Q3*`R3ge2?$Ot7E z#zTzWPs}qPrO-X!rYY66S2p--|DDg?bdlpCqI9eyX8Fx!3Pc8g2)si29#GU&?a1IG z8g4J8+oCFIUUjU@rwiX$YFAa_E|u3Ux!>-2A}YO;N?NvfQts@w5NUo8$v@Zxkw5tG z{w2A|HIJ{G7Qfw%EWEFdE39t0WLpAUWDkz1MHZ0bbIO(A;NYB7@i6lvv#9u%uTu9U zkL^<>6NIcT>G~S=!mJ)KT23K<(De%D(R$_oC>K0YV(gHP06Z!Yz28Gut8=TZdXGoI zNY&5Lcm9{1Ky_s4WZNrea+mHzmixf{+nMfbRW9yoBXr!A?6LH9o$;!NPpedkHvLx3 zPx4_4JRA>+C8WEE&^dDq+B}o|>75QYF`?1VX-H&Vd}D^6(ijvbzt6%^d`}6D$3$=(zX3-$gj{DX)Ei zzD(6V(&}oi8db)_eaH2U2Bcsz>iDQQ2xRJIwN`s9kAy zvgEghy5B)V3BdDl_m|Nyn!XwJ{-&zWiq`j0JkS7lwG8srp)XV&d5!jxBdea? zswgAA#qDKqzmMceMH{4dIjP(Ce=FQfW$`?^DO)WNtG8HXVC5MuOrG^q#12-7-E1GT zd-aDF=qf+X#(k=--BpyHb@K!lEJ@NOxa5fp1$`0Z^k1jmkI3MyWiwGQ~b;o3OMys18WYSc^E(yjCA( z_y-V%MxVSXia4h^<^tV&j_Vb*NoZkG>q-C%f&a)t!O%>V7HXu z?NkHB-%9|%BKm@nePw7c34f-ZBb`+u4!ht3El;~GN*`vf#fQz9EJSaU+9p{ zI!F&xY2E?pD1yO;-h;h-bEsir?fxcm48k%N~`Dmz$f3%o=}?(UeR+X z&)b`5isNL-+q1(er?ZFF`ufUX-iiizKU#w8afkaJ9iZQ6S|OrC{w%$z1p@4(z6iQH z>4XF3`{lnkXdgbT`3+wd^ic`)zuoS?@KSnvh{AFn9CUP;Mm;hz6GiGNiUC4tpzf-W zhx%zBQi@!GKq?YQ_KrFD>>Ug@{XrgsHS^sLg#br)K}Tb_V)R%mU)6ea%E-+7*jL$C zf-&D(OqA%=Q#0kbi$31HfCp7%S}!CoAAmou%8#t%O#&qkQxK6jAe~a=aobyk2;ae_ zVZg(q=xeTYJwC_NANBM33MCHD53Ndm1^la9|LIzX?8T6I$|<)C#=csw-|K>p{fy6qua zC|oWDV8m_RTM+Abkfs1#+q^0U4n`X+$EyqX^&*kc;egD~2mXBubifKDZdr!$gEkHW zQ-5+^qL-|TVmafpNoBX8+z;y>7h?EqBg1cBnMJK08KbnIt`lZQPEz~GRwgf{s5EJI zNb8xdsmH#n8?w#d)9bR1&_2slHw+Cd5J!t!9aMKm7bYC-ZZ|CVcD=wym89;}ssR}p z(fdgXVQa7!zLnKykYFXkL`D4qr0>)>WX?othe{rIvX}}ZRJL+Jz=02WV{;o($f!e$ zWram|b<0hztH^I;h+ea4^KU~C2(^$Dooofv6|6{3y(JzWk#PBSO#**<;)%1wy+7HM zd-tt_>vL4MM;indijtu5rW$=Pa`%xgA{PA=zPh(`GNAg z#huN*9e4cehrv@cVVR2L2zfUKu+5x5AiK#~-hVj9q*dMI>eHM+znjZAcLMJkz3ygJ z;1)U~I%mi=^;)OR@7Ux?18!6I|bBowf zGUKY{bEf4h`OrS(u-T@iwtn1A22!P?#6E2yGaR;7E2DUort^(Xs=GpyJq$yXCev1u>|>i|G83ckNC%7W zNo4$JG1^$;TeYQwcdgNRKoa0d3GP=6wm`$!j{<>iR5p$Nj7!fK7rIQ(FP zPaxm5xJaHJR5^WhWXfVyn_`9iyeGoY6VD##W;Bqz7~+VCrQu$87u z|A((WGrTj9Z#;~BBDL#*^w+Yv7l95OJ*^fpMWeZot8Pn_)A!jJWWMfi0=Yi&_&O5f z3Tsq^qM{=2eWQ#9nb35~m-GG1iwlUb#I_!JD3 zUrp#!nhHO=Gk`ofLReEg)n#b&Z)q;MtDtMIQnnv8(}Dzb4grpIpXj4oo$F}-B2zh; z(Q=hxT>WoIe*X5+lw5I^n~0*%GKUR41RrKop!=?dg2)dAL@AtOQ)kbLpUsRc#K;|H z#3C2H#0!Ves4H+75_tvGXg@W@;S7+y>&Tp7N8%B?DP~t3U8zb8ISZS7vVLrbsMm9- zk((KPEk1pnyy2&?&lUsr(xBq&g(6WpPE_kLYS>3Qty(`9Tq`B-)G-XluA(}^2zV^3 zUA21Qzr#(Vyw613n^&5=!RF5u-kX>O?<6jE^I@%Dkz0@A%*7v?*G$7q_S+s@9yC3m z(>s50x!ukZ7>ILWKAAKdY5l_@Z2FwS5miYGFtr{j^Ks1t9rzix`qH~J5}54l?O)1f zsdRwxBl))4#rhobwpXqV>|uZ-`;)CMI;tzXyy{Mim;b#Mx){SuDgU)JS}YmD`g*H? z?p^yee;?1&DXX$aGH5H(1H)oFV|nt06<(?Y|roedULf)rZG87 z*jP=$cwQ{NkCKf!(c%bRX?rNLdq#!-2?-GiEakJsL*HNtI6saf? z9bqLYdJDy~8w*{?!S_mTnS4cm-F8Xd^yoA!%Q!n*n1Wt){Ztn#h<1;s2qu+AJ4_f zzV?l~;jvZNgT?#8CEk~oUEg=@Gb^Cnk^9nFFV-dyQ4CPcpeiTcKEY-xQ|~*5Zi_5f zf?%JF*S9pigd;DA)|*i7MT0#WYJMdtO5|m7w6KEjO%**8)q|w2A&4vm-y#b>!2~$u zjJhmJecsHWOy?b9s$ZNT0%R>2+zMyU2p-q%d+5QhvU*Ql1_%yA6(v5_4 zH%K=~E1l9D-Q96VN|#7?mvncRbi>glokt!V@$q}(d;f=ho}Hc9ogsn6oH)M*$;@MX z4yiqLoX5JcNevO2EP|vRS~wZ;p>K-#{q4X%R34Y zCuBPeZea`49}*T)>Ihz206o_PJd_Y#7*#WiSHqLfPXhW_#yy4`)27Z_vO%y9Zu-h0 z4}p*qSB|Jvp6R=L#!Akl>Rfk+&thTYPATwn3Jn>YI;;j*uKfg1|z)9KwTNs z@JpE8lW^E)Ym6*ElQIE~wyL2typtUKf+Z)>&|%|$Y>ig>U(m(K#W2MDCm99S{3n;8 z4>!_QXe&GjmCDL}_YU=X`%b_a9u6(Kh@PdJz0ahblUZ-Bh*^9gLvKXLxNYU3{@Vx%gsmKDuch{$?|1N`z|8Qs7G0GF073m)$Moe72@uwF_3O1v!O#tA zbESz$XlU`*gTvj}tbp#zln)L{puveUL@Ol&^U0Z?(ym`Ja;zm>kH1CUGdn1WIGqt$ zD18w5dVwg`oxOV&vR;-Gw+$bg6IXERtyK4XKKZhmH9itY(o&yajCOtFhAZ-&Gf9fg zT#Ueg(bmczZ3LYv4P#s#BL=0D5Wn*;ETqXijY$Sk3h5@ZPSw@TXbOS$?c-K2B=}Cc zb^Lo!yI|)O$e)DOV93~p2bX06qEo*OM>zNzkQuy`&w z$9k}dS2St)eNEi_MnB6bjV42_ONn^a8QUXzUfHleNBZq?GMW( zV|Q1PAKaA#e-?czCiu2Gi|@aj?8#m(!49tn3YvFD-d5^74ZX=87U>4Yr3wU(2swSv z)hCxaGyhG3aN{+RZ*k>uDuyHEYx!puErtVgdcu`SgWX0&X}~O3^}!Qpen^gVSu#^L zzLsL_Pg?2*jD8qB7LRJ%1))IRxaJFQTzlJ=0&N+$|l5NvPV4&=2 zz;iWOC~4dZ_81vx$!@#e$6={?iHP5c!Vg+NUeIa{U%ci=oSu;};YBKFgICq@Xh|sG zf+s3uf*?cc$BzLWx2$nDa07yxS4M%~oo0%}1{~T6a?Wp5B`caPnle0!%W{KIm`Zcu zLh@kf{rMq4|MUHB{?*@GR_jH!hdYMXL{w2WS&OF7y*Ru=Q$iO?GT`X^bfhRS4d(Rq zi|0K8?F>%#y25}QhxWzkzb74l?7xz6W^a2~ONT=?^$h7V2_Rt#tz^bq#YU@~l$e#dN zcK+1;7Lk;d>k6yGYa8sD4WZ!MgM)R*r^QcVp9l{pkCaLtu~yX#%AajWYa=4XZyH$p zFOQ^i#tB!FDb2IEq)PO4l#)$OB(LGuOEdQppE7&7B~w5KGKeec8fNd52Lr5-M<^(e zT8`m=*i`Md8qr;IT5@eUnfb6!@ZqWGo!IRBhI3A{>zD$`&UKgY{O1j} zFoMoG2%b-|P0eOiPVWpr7}x#zBefEc2Ip^lOe^)KHkfSs*~n@R+4x@sy^pS?0E z82zqKh#|92m%)3`*w=Lra*5rHLEGxiNW1o!fe$BbjT-HC5|Qm{rO(eTIrxtffZgSF41% zsDDhTz;8Oi-l{=IfSiSC_6 zRuV=RSWvu9hMe>R>d1?QR%Zsy?PN&}uz`JKY*Tr>qdscX4~3-2YW+3U+t5xA1eodf zhRS`E34PcY0;#+rQN>KM80}6Lm>)K=7zy=K2M(7kTMpkoG0CJ&K=e}8|>8S|!$r{?wicTL`$c0l=B7ohfq zo=0kUns>M5&)Zh@WpGzyTjkO5uYV9T&J{n@fQyd@?J#xjADU%oK0lUnl@&2>{+gjp zoo~Lr3|tvY1@4a=6Z|mVUsg7Lz`dZhxxxpB!lX#J%w$W?sHA0wr1ox zKfHtx6m)iyinZOS>4O%OFEaq^;i&AX0f^^0p(3IX(yr)9*I}otJpiuJG;+cRm@CCxH_C_+01LaZ9nNDN>hjDb4R5YjXb&q{|G@$75n; zNmIK_hMbR@XLUWT-rzg7g~iBdEYPyo=`4?qTmJCNs~h=d;kwSXPaRP3>D$yLEguV0 zs=r6yh=s9jxw_PQ>QGDx`)3k`Zdrs(RK>-iz)?;7oeu)y%{d0ns^!jVnu$Lbu~#U= z^_p6+60hmso(;2GnxG^W(ShpQv-$lsrNBzbFv}fLsb|mhp?3iF@}B`VX5k_P2hP=C zpFl2j4~k}haf&p)LnF+A?A52@q`u4$PI}$&N7WfkXer7(l>I~{jt$lTP7J&cD+QY{t-y8ZZBnC@8r1LJ#-K;AvZ7a{!#sxaY0Ee|MDS~XFa8{n1x}l_ny`W z#28{P#4a1?F1PGH*v0(ItKYsZd!9yAf;?-^fW^qIF|yR22-X^;FR##sz1 zLA8n*DE6!%@6$#4r)S4m|_nIk&TfOsJ1;%Q zP98re2(87++U3}Y*Wf9k%D_saZLM+t$ByU4)#7p2xBSuj;e~{%-tY7|Cio|a=QY6( zJ6pdbWp@(ihD^`bTD@K#E=6P7PuqwmySHHckEyj_iwt{``)>FoR-ZSd^ahu}6*YP{ zc;s48V>m!;lFuBjPGW3V^c<%>_2t;QtOkPKJD@wByXq?KWr#pV%5e;XsFsfY6FugQ z%`HfN5*~VvAljXneMi!e=2A&+J|-NRikd$PH*xV66RbFxd{y!+v(PIXS}kOZl1;1? zHt5JYv_p`R`@Zvw(Q6)|s2K(4Q%B@x+^}=P{>T0Iatqtn+}|8R7e767W<*AP4aHUrP0X5fLKGSiti6m}&4sJ6vZ%_1J;aN_H;<6Q1N1ZCRL8vlUA)CB_)&6Dh-q90c-CztJ z)b)=a3UMaB(eqJcfde)cF7mY&eCYO0LyTU5P3 zWm8P{B0ud*Urq`+ zh8;78jN*&@mt6Qs<5IN0d+oA{8U734H|F+3E5&HBE!J2}E5mG~gBe0EB3e)}h+oIq zIfnq2MsMEk<@iDZ5arg!Wo~{A0vw(1c+ z%dy^L%M~DiF^H`PRyms1l-+W2bwepBGAa! zAJ8_Ua*~SBRdq3(VtaWj8J5sw+2bz5w!@g+##Xn*Irp1zfXhaoPNLg50+d^2o{Xk1 z$A;t;JJJBQ>Quub-7NVEv}bC=8S`f}0Ur1X2Alms2}6f*Dv4bAf-TC=PJgNF*cux; zHID-A$A#JO5X(ihV$dtywdWeBH}r3RDW%MZErtN2>$x>NnR&V${*i@JMvr|Z_JOPGQjIOym~ukNP^ zTP`?52!44M4K?uCK#U-i9t65JKMnQ!je?_dQ%^lazniI9U)LDAhWQtxSnrIy#Zi6u zx9VbLFc+EpX+nII*PPGWx%<^)bz5&!09DW4fZ**O>TM_uB)l#vxNH`>81T24LSb#Y zz7yIMJYi{QZr*-8sp5%(J;_HwN^)Y)npVlgI{s1Bzr`i)mzC6*EW0!`aPKzrJ&!_{ z{b27c9Q`)Z57hfZ^E@v$yo@)5J0A9l4RqIDzvQ_f{*UmK@#$63^AeU~Of?7Gci(fV zEcYQTI7Bm8h?`|L9wW%T3S0!{y7`DNBSLgS@@^g^7WJVS`r}F6J>iso>w8Tz=(dDN zlI_?~b5)$K5$QlwG;An^DB|hgUvidvm^gY=$qYFLd(wGPKDr@_2;&3kxgLTMr?%qdV&qGRAwN@s6?M$O*mxyvsj=gg!jM+D|sqjyhE0v(8?q$!1EELE+2 zLz`lP?k<)Fv9fcx-UQ1oLjkCVLG1&1pqnhC8{PfPr|0v>Q#8)Re+lbyGhf-vBq*{Y zdLdB+Lehw&b_g=1E+6MGR8JYSbf><;3fEGY;{(~tjjn?p6PptvN`9A?oyRC&@SqHn z`+QUziB_*+V0)2sNEr@3`SJT2&P#R7kiA|5e`uFuLuHt4WT{#^a+tgo{uOxqqhhQ| zR%ql8igV!vT*JD$DCyKM`}fQGTqeb2?FXXlZzlb647>y&8s&xLJk>+twa2OmryDa#>^q( zZ?gY!Fkfz?JG{%84qlzXW-~}WP_{4ThxacOu_=m-ddy=UOtk%%*uw&p{FxF*!0Bt5 zvhm>6CokjdP9m$YI1t*BQWx2)&nd^#IUiqMW#z;rQDdjicC;gi*cWt_(6UoUzJ0r7 zD9MyHq@^tI3BbRD^t7{*W4b>#mCCUNc%S)@Re!l0jL}!^*zsOj_{FOxU@8hG8%-2E zrv&@#(E1RUdKb5&OvdXj-%Lyg&$B>c}Qrxf~U*D>Vfb-_`h{r-AvSKDCyhRG5N- z&KOasyniUS=ELXr!Tmne1E_vbf|ml1cu9n|UkQP=JM%h*-7JSiXjsZI`mV&YUQaIB?p>PddCr(VwM9mK#CK*;DGB8k0D|vR`4o<3+_vOrj{H{-C^} zL!O-A`N8A_Hod0^=@w978gc=naSY=)52!OzWcT#KVtZ3WeNk-w_{?Ih+8Td{)8j>` z2CuHs77Pn)ww^=mcVt)Srsu%{N0{r;VcA`uh+T+(DbT2-R1Iz&`+*tjKQ+;|@urCj z4tXYB_q*2@pL@+ZP$p7XI)nAB&%Y&o~T2$clH!o~wE=K^1d~?pbP6i?JjElYs=0=Wuo9G%I zmPPZR-<>WN#iK-h1l>x-7cx!_ty_yg__Hy?C&VrWF7py9vmO^%T2^y%|9!9Kr*KCXNv@QhR+>p+ zJ@qj8ibQ+IA<5S#YK!qU+z24X^B>sOu1M41Mk9Iuu#0TOi=^G1=dFGpy=J zO3ehBHo6cu&2%V{*`MFxCA;B8f9W6gqDD3MGb8_FIzZoZ(D^ta3bHMQ#^HD~3V+NxjOWkXM_Zz-b&MdJc zA|HqS_h=MyUa+#g9~t{sPZE50TdIK{FyHKcgkGNLuS4FOD(~dHOmH26y|Mheo_XsJ z*}?Yr>l5%Gtt#!~}|EPc#gJIhkeywI#>{%@=5xpr!MQ%j8Y~i!3+*0229aVn?zBd@ozdu5v%`aD` zwEN9@kQvRKB1D*!J5I1Wt}dv=R$Qbaqk)$^8sjRTo|&NKkCZ=#)q3g12He)1w$`%p z)@oC9bE^td`b|a^m`;a%v0L+vIns(4UIOpzHHo2{tiTr`7@cGw0s=_ho6pdtLPp{Qdl4tYU416nTvvB)0IMCGHWt zg^QF3Hd0pZ@Qf|OzZgXmObDb=pE!fPizqlDgO|6hr?53V=u0y~n+_rXcD3V272ijX zh&g-&XhYIGvY~f(;R4t>;NK{wy?9IOiMz#g1tr4kH6-JaxiYg@Ow1vCaF1UvLVFf60dG0;GBLItj0`H1jE<9w?EAQsz&0n95dQ-p=CYj-+hgzj40w8rrss_%4)qs> zzQcbr-`MazARW)*8Ybb&5xC^qmk$d;#V71cPbUMnZSs;w3PG7spZ>dp+x_U+M12A- z7gi6ZCdJ3Jg8AcR+$`(h1q$yX8_FKge$wZqeVaT>v>~(CO#no` zxY6Yr!ES#5yEIpet;6nCOHR}I{6h?7{K5*L>whiYoLk=LZZW4R7BsOfi3R4EA*Ii* z>I#jJkmX>9TaoLpEA<|}9LuN25*$qy@4z6?SM|Xd5*cHJn50s}BeBk@i~(yD!p2&w z*#(QXPEgy%HZ!*bc_l@J;Z2TcOd@DLVy?l{lfL*Lu9oK{%@8{6RMkd3@*?Np7MKc* z<90P3q`>K>^KH$9U3`6RXE)Ax>$kNRO@|3(?=Qx?^E!#pALzLA(d}z_|CydK(0Ds{ z1ZXgslVM~i4Na_Hb^IkM0ei3hrg?~+1AhM}?gke@=(ugl_xP9KN`q&r=#Ne@Vk%5E_MI5QoN&wWcdgR}SeX$K$iuI>ol6dSw`$$#;Czy~HjTH@()gX}+Ja?2DhV{6Nt%&r$|*A7yGzew7gpEqk- z*6IAy5;FP5Hbqa7yD$`sJz?z&iw%!+$i$I}I6d-B^{};{1`$`ie%SCkVZAwDM?{Pv z45XHc8?qFI>HJ6dApGKl=!yoBcmbPs+u2<_u4WZuY+U%CwwS5{y8rxtmR1%s!!@wm z3)#%tRop77$?iM6!JRo=s}c@TN~0p7Dp@MQTR#8*Qrypi)LbSkt-218<3@W23!cB* z(fqV`@j*UP6+?89#uc2d@+oc{hu)3}UZ547^2j|z9_xw=EWh&0xy!d!9h{pvr6ssk z|K(ww<_s01A?A`=U#K>^?je^Kw>1BF-2h6&ki2FNyYQzLB<5hfcW>w1**g`I;OAmLa3TWa|Nugl*d7hdpTKKu+ji zpj#MuQ3<8XX0kP@y5$wsHxv9R&>6#Fwy9hknYwXn$i6k{q)?zok>W%Y4vIC~nwvvQ z(|AbksSAYOJhb?OXtjpGC@)IU&FI6z_kMQU#02lH5RhM~1CvfjHJKl;$1`|iAUdxH zb-v2b)sqhr6k<15EuA{W%|t{E?|Vj8gC@SFO;SCc6H-E+6SNVLYVa07AO?{2@Bosi)W z^2G5eTBFo3axE47j;+^yV#n0yN1m1XGmF=!&bvn%9JkYsFOJ#U{?Ejl19=59+nC)j zbc?C<5I4b?3xFGksQ+P}cFUG|g+cpA_vc4r=q0?cpK0&?6HR3-3CeVIv0E8 z5EXra#O-EYWQEaZd;Q-wkSt~qK2#pC=th1jU)6lG7rT!tH7UFe^R{-Y!Vaw_H?Ou$ zv7+VRj@xejW;F>S3Ld4xNi&nbkM;q1m&iFa8Oqn)rNIHRHnY$RV#yN02Rp7q{(NnM0KiN(xJs zJ>pc(DJK#&s9G-qdJM7Crs&g?>nfYfHBdw@VK-^rN@Owmey8?%DkKm%DwW&Q?bg4_ z-C-Fum`tnE{bTfv%_TJX$cZp9tcvtQe!+8MFgP+Rj=>P`NwD3fB+niQ^Fo85IaaHM zm|_sc{b!Dk@R}XXWb+I=!evuunH9^Fj|@s`g_CsK{o2%t&PCQi%4)mOtK`0F(oP17 zNRgCW^{KG2{fes_UlBpQKpo+xh@;v0M`fV^rLj>&HA#VjsN`BfG|Wy9<3R%LKZ5VK z29c%Miq`L<4(Bq;5Yi_Icb$eK?{GKzyN`}y2*czsksD(EfdK;9z9DHff3GxV#_-L< z$F11BaT;bm%)1!+%at7g?Wa4S1x3zSJW38VD_jBv1W-F(O_H#0pXE5*Vn?mC+{713 z>Ot7_{FGPvxrO?78q>APqM3nM;T;sg=i=e}X~&KTcNdJ!aB^6YoKR(`n{JEt)r?YE zJ%F%k+hUx>x`+GPtvj_&H+Sg~ZZ!vA;yOr-{iY;=u^#N`r(-O&RxOV7$t~#9Sjz4T z>?KgkP$ztt95jF0-96O>+iBTV?s*G~BUXR8q304U0X@4#^Fv)*EM}!Mx9UK8+p#4Y9Kb(_0g%gc>tEq(XK8Q;AmEvEm)3&5Ki+Viag{oeuBtu-^8 zmDHDKZL#Otk1lMU_<6-TS|=P0B5$A2`s|mbh|Is4)~>1yRY-xE+tAR18=a-ZPeFD2 zT#Af^CtiWs$;hen5Tvsc*=1{~k+EgB{R@9QzhLhWw~$Jr#ebs56FHpOWEi zCIdB{M->B!e>CzMnRmUnMI{bcq2V1^nFe>fue7hUhf_^TQ+~&N*Dk67#7F>Uh-ZPq0B6l+bb=DpvC}* zSCWQHQVP!=a3b_{yZ#i&W*O=+4Bw44c;^4msN=PJmh#5&EweaB8a2jB+Py`B2$WP_ z2>^>gtg$P8#HYe`gf@@2k{v}vR(4;F&pzWVR_uQ=8u(E~f#_XWb}?Jc(lclO6~2)w zMz~25BPaK!%nJi%5wMPWb~pu+?8-24Zt$H+loU{$BhSn*gK2gV8l_*HE4RNT_j-tW zM3INSz~u$SZn4)Vv+0=N-?y?qEHQV)iLyV{M>`M17jQUjVR+rI7iqVe(30|L61MbX z@IQr9b3Doe`dp`85Suq$qL!=uS6`l;H-27ZuohNzpMTa^x~X8f)cP-W>T)Kyy9aPA zF=W``_VW^?Bd{Jz;3I9AXdoM2ylA28JJXPZAmMs0TVx)s=0e`3#3+L5YJaG)=AO^0 z?yiqv@EW22)x4IEsI#UEioJqI${vvDUJoQ?oioaI?DuATM&YH7B&}#S#3?8>#^xEw zMD6CZGmwN7Tnw3-3cD@P$xR)6PjgkYg_;L8m2Gun`keB*leC*&ES=E5KG6t=Cd-o* zQDe3J-KAx1CNw9ay9eo{k!(v(4VoGP!GkQ!$a=`iH!M^64D}>>-QW5z&j#g87Jt

    +!Jpzp*!1mlWD9p%x&wmYP~Ky+c}rOYU<3( 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

  • <${Link} url=${url} href="/course/syllabus/foundation/pre-course/schedule/">Pre-course
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/markup/schedule/">Week 01
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/node/schedule/">Week 02
  • +
  • <${Link} url=${url} href="/course/syllabus/foundation/week01/overview/">Week 01
  • +
  • <${Link} url=${url} href="/course/syllabus/foundation/week02/schedule/">Week 02
  • <${Section} title="Developer" url=${url} subpath="course/syllabus/developer"> diff --git a/src/_includes/syllabus.11ty.js b/src/_includes/syllabus.11ty.js index 4f6dd270..0e2db4e3 100644 --- a/src/_includes/syllabus.11ty.js +++ b/src/_includes/syllabus.11ty.js @@ -23,6 +23,10 @@ exports.render = ({

    ${topic} ${section}

    <${Tabs}> + ${ + tabs.overview !== false && + html`<${Tab} page=${page} href="overview">Overview` + } ${ tabs.schedule !== false && html`<${Tab} page=${page} href="schedule">Schedule` diff --git a/src/course/syllabus/foundation/markup/employability.md b/src/course/syllabus/foundation/week01/employability.md similarity index 100% rename from src/course/syllabus/foundation/markup/employability.md rename to src/course/syllabus/foundation/week01/employability.md diff --git a/src/course/syllabus/foundation/markup/homework.md b/src/course/syllabus/foundation/week01/homework.md similarity index 100% rename from src/course/syllabus/foundation/markup/homework.md rename to src/course/syllabus/foundation/week01/homework.md diff --git a/src/course/syllabus/foundation/markup/learning-outcomes.md b/src/course/syllabus/foundation/week01/learning-outcomes.md similarity index 100% rename from src/course/syllabus/foundation/markup/learning-outcomes.md rename to src/course/syllabus/foundation/week01/learning-outcomes.md diff --git a/src/course/syllabus/foundation/markup/schedule.md b/src/course/syllabus/foundation/week01/overview.md similarity index 75% rename from src/course/syllabus/foundation/markup/schedule.md rename to src/course/syllabus/foundation/week01/overview.md index b5abde24..b8bc287f 100644 --- a/src/course/syllabus/foundation/markup/schedule.md +++ b/src/course/syllabus/foundation/week01/overview.md @@ -4,51 +4,36 @@ This topic is focused on the fundamental building blocks of web pages—accessib _To be completed ahead of Week 1_ -- [Git workflow workshop](/workshops/git-workflow/) -- [GitHub Projects workshop](/workshops/github-projects) - [CSS Layout workshop](/workshops/css-layout/) - [Semantic HTML workshop](/workshops/semantic-html/) - [Accessibility workshop](/workshops/learn-a11y/) - [HTML Forms workshop](/workshops/html-forms/) -## Weeks 0 - 3 +_To be completed ahead of Induction day_ + +- [Git workflow workshop](/workshops/git-workflow/) +- [GitHub Projects workshop](/workshops/github-projects) -### Week 0 +## Week 1 - Dev machine setup - Intro to Git and GitHub - Safeguarding and Prevent +- User Manuals (on GitHub) - Workshops: Git, CSS, Semantic HTML, Accessibility, HTML forms -- Knowledge Quiz -### Week 1 - -- Q&A -- Feedback session -- Employability introduction -- Review workshops -- Introduction to GitHub profiles +- Introduction to GitHub profiles. + _**[GitHub Profile Generator](https://rahuldkjain.github.io/gh-profile-readme-generator/)**_ + https://rahuldkjain.github.io/gh-profile-readme-generator/ - Project introduction -- Knowledge Quiz - -### Week 2 -- Q&A - GitHub profile crit - HackMD - Project planning and development - Project updates - Introduction to mock interviews -- Knowledge Quiz - -### Week 3 - Project planning and development - Live code session: project code review - Project code reviews - Project presentations -- Knowledge Quiz - -### OpenAi Unschool - -**_Saturday 27th January_** diff --git a/src/course/syllabus/foundation/markup/project.md b/src/course/syllabus/foundation/week01/project.md similarity index 100% rename from src/course/syllabus/foundation/markup/project.md rename to src/course/syllabus/foundation/week01/project.md diff --git a/src/course/syllabus/foundation/week01/schedule.md b/src/course/syllabus/foundation/week01/schedule.md new file mode 100644 index 00000000..2eafa405 --- /dev/null +++ b/src/course/syllabus/foundation/week01/schedule.md @@ -0,0 +1,37 @@ +--- +layout: schedule +schedule: + monday: + - name: Sanitize & validate challenge + url: https://github.com/foundersandcoders/sanitize-validate-challenge + type: challenge + start: 11:00 + end: 12:00 + # - name: Thought of the week (Misinformation, Disinformation and the threat to Democracy) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 11:00 + # end: 11:45 + # - name: SQL challenge + # url: https://github.com/foundersandcoders/sql-challenge + # type: challenge + # start: 11:45 + # end: 13:00 + # - name: Issue management and estimation + # start: 15:45 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/estimation/ + tuesday: + wednesday: + thursday: + # - name: Reading for next topic + # start: 15:30 + # end: 16:00 + # url: /course/syllabus/developer/database/topicIntro/ + friday: + - name: Cypress Learning + url: https://learn.cypress.io/#courses + type: workshop + start: 9:30 + end: 18:00 +--- diff --git a/src/course/syllabus/foundation/markup/spikes.md b/src/course/syllabus/foundation/week01/spikes.md similarity index 100% rename from src/course/syllabus/foundation/markup/spikes.md rename to src/course/syllabus/foundation/week01/spikes.md diff --git a/src/course/syllabus/foundation/week01/week01.json b/src/course/syllabus/foundation/week01/week01.json new file mode 100644 index 00000000..05178c00 --- /dev/null +++ b/src/course/syllabus/foundation/week01/week01.json @@ -0,0 +1,11 @@ +{ + "tabs": { + "overview": true, + "schedule": true, + "project": true, + "learnings": true, + "spikes": true, + "employability": false, + "homework": true + } +} diff --git a/src/course/syllabus/foundation/node/employability.md b/src/course/syllabus/foundation/week02/employability.md similarity index 100% rename from src/course/syllabus/foundation/node/employability.md rename to src/course/syllabus/foundation/week02/employability.md diff --git a/src/course/syllabus/foundation/node/homework.md b/src/course/syllabus/foundation/week02/homework.md similarity index 100% rename from src/course/syllabus/foundation/node/homework.md rename to src/course/syllabus/foundation/week02/homework.md diff --git a/src/course/syllabus/foundation/node/learning-outcomes.md b/src/course/syllabus/foundation/week02/learning-outcomes.md similarity index 100% rename from src/course/syllabus/foundation/node/learning-outcomes.md rename to src/course/syllabus/foundation/week02/learning-outcomes.md diff --git a/src/course/syllabus/foundation/node/project.md b/src/course/syllabus/foundation/week02/project.md similarity index 100% rename from src/course/syllabus/foundation/node/project.md rename to src/course/syllabus/foundation/week02/project.md diff --git a/src/course/syllabus/foundation/node/schedule.md b/src/course/syllabus/foundation/week02/schedule.md similarity index 100% rename from src/course/syllabus/foundation/node/schedule.md rename to src/course/syllabus/foundation/week02/schedule.md diff --git a/src/course/syllabus/foundation/node/spikes.md b/src/course/syllabus/foundation/week02/spikes.md similarity index 100% rename from src/course/syllabus/foundation/node/spikes.md rename to src/course/syllabus/foundation/week02/spikes.md diff --git a/src/course/syllabus/foundation/week02/week02.json b/src/course/syllabus/foundation/week02/week02.json new file mode 100644 index 00000000..a46763f0 --- /dev/null +++ b/src/course/syllabus/foundation/week02/week02.json @@ -0,0 +1,10 @@ +{ + "tabs": { + "project": true, + "learnings": true, + "spikes": true, + "employability": false, + "homework": true + } + } + \ No newline at end of file From 9e3591d7d1a28a99715a58ae16c9c906bb8de0f3 Mon Sep 17 00:00:00 2001 From: Alexander Date: Thu, 5 Sep 2024 14:07:13 +0100 Subject: [PATCH 084/118] Updated Schedule --- src/_data/defaultSchedule.yml | 53 +++++++++------- .../syllabus/foundation/week01/homework.md | 16 +---- .../syllabus/foundation/week01/overview.md | 16 ++--- .../syllabus/foundation/week01/schedule.md | 60 ++++++++++--------- .../syllabus/foundation/week02/homework.md | 2 +- 5 files changed, 71 insertions(+), 76 deletions(-) diff --git a/src/_data/defaultSchedule.yml b/src/_data/defaultSchedule.yml index ae6ce266..39be69d4 100644 --- a/src/_data/defaultSchedule.yml +++ b/src/_data/defaultSchedule.yml @@ -3,13 +3,13 @@ monday: end: 9:45 name: Check in - start: 9:45 - end: 10:00 + end: 10:30 name: Exec program - - start: 10:00 - end: 11:00 + - start: 10:30 + end: 11:15 name: Workshop group discussion type: workshop - - start: 11:00 + - start: 11:15 end: 12:00 name: Workshop class discussion type: workshop @@ -19,7 +19,7 @@ monday: url: https://foundersandcoders.notion.site/Retrospectives-cbfd57e19cd24c61a6bd8db16fe0f347 - start: 13:00 end: 14:00 - name: lunch + name: Lunch - start: 14:00 end: 15:00 name: Sprint planning @@ -35,15 +35,15 @@ monday: tuesday: - start: 9:30 end: 9:45 - name: Check-in & Mentor Intro + name: Check in & Mentor Intro - start: 9:45 - end: 10:00 + end: 10:30 name: Exec program - - start: 10:00 - end: 12:00 + - start: 10:30 + end: 11:00 name: Project type: project - - start: 12:00 + - start: 11:00 end: 13:00 name: Project type: project @@ -69,15 +69,18 @@ tuesday: wednesday: - start: 9:30 end: 9:45 - name: Check-in & Mentor Intro + name: Check in & Mentor Intro - start: 9:45 - end: 10:00 + end: 10:30 name: Exec program - - start: 10:00 - end: 12:00 + - start: 10:30 + end: 13:00 name: Project type: project - - start: 12:00 + - start: 10:30 + end: 10:45 + name: Thought of the Week + - start: 10:45 end: 13:00 name: Project type: project @@ -103,11 +106,11 @@ wednesday: thursday: - start: 9:30 end: 9:45 - name: Thought of the Week + name: Check in - start: 9:45 - end: 10:00 + end: 10:30 name: Exec program - - start: 10:00 + - start: 10:30 end: 11:00 name: Class Code Review url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c @@ -135,13 +138,19 @@ thursday: name: Speaker/Tfb friday: + # - start: 9:30 + # end: 9:45 + # name: Exec program + # - start: 9:45 + # end: 10:30 + # name: Workshop - start: 9:30 end: 9:45 - name: Exec program + name: Check in - start: 9:45 - end: 10:00 - name: Workshop - - start: 10:00 + end: 10:30 + name: Exec program + - start: 10:30 end: 11:00 name: Workshop - start: 11:00 diff --git a/src/course/syllabus/foundation/week01/homework.md b/src/course/syllabus/foundation/week01/homework.md index 037b1597..34d5b745 100644 --- a/src/course/syllabus/foundation/week01/homework.md +++ b/src/course/syllabus/foundation/week01/homework.md @@ -2,24 +2,12 @@ This is a guide to what you should be doing for homework each week. Please reach out to your CFs if you are unsure of what to prioritise between sessions. -During this module you should be working on: [Execute Program Modern Javascript Level 1](https://www.executeprogram.com) +During this module you should be working on: [Execute Program Javascript Concurrency](https://www.executeprogram.com/courses/javascript-concurrency) - We expect you to complete Modern Javascript Level 1 by the end of Week 3 - -### Week 0 +### Tasks - Complete the Git, CSS, Semantic HTML, Accessibility and HTML forms workshops ahead of Week 1 - -### Week 1 - - Complete github profiles - Project work - -### Week 2 - -- Complete projects ahead of Week 3 code reviews - -### Week 3 - - Complete the Asynchronous JS, Promises & fetch, Real-world fetch and Promise practice workshops ahead of Week 4 diff --git a/src/course/syllabus/foundation/week01/overview.md b/src/course/syllabus/foundation/week01/overview.md index b8bc287f..06f15922 100644 --- a/src/course/syllabus/foundation/week01/overview.md +++ b/src/course/syllabus/foundation/week01/overview.md @@ -9,31 +9,23 @@ _To be completed ahead of Week 1_ - [Accessibility workshop](/workshops/learn-a11y/) - [HTML Forms workshop](/workshops/html-forms/) -_To be completed ahead of Induction day_ +_To be completed on Induction day_ - [Git workflow workshop](/workshops/git-workflow/) - [GitHub Projects workshop](/workshops/github-projects) -## Week 1 +## Curriculum +- Safeguarding and Prevent - Dev machine setup - Intro to Git and GitHub -- Safeguarding and Prevent +- Project planning and development (GitHub Projects) - User Manuals (on GitHub) -- Workshops: Git, CSS, Semantic HTML, Accessibility, HTML forms - - Introduction to GitHub profiles. _**[GitHub Profile Generator](https://rahuldkjain.github.io/gh-profile-readme-generator/)**_ https://rahuldkjain.github.io/gh-profile-readme-generator/ - Project introduction - -- GitHub profile crit - HackMD -- Project planning and development -- Project updates -- Introduction to mock interviews - -- Project planning and development - Live code session: project code review - Project code reviews - Project presentations diff --git a/src/course/syllabus/foundation/week01/schedule.md b/src/course/syllabus/foundation/week01/schedule.md index 2eafa405..7773920c 100644 --- a/src/course/syllabus/foundation/week01/schedule.md +++ b/src/course/syllabus/foundation/week01/schedule.md @@ -2,36 +2,42 @@ layout: schedule schedule: monday: - - name: Sanitize & validate challenge - url: https://github.com/foundersandcoders/sanitize-validate-challenge - type: challenge - start: 11:00 + - name: Induction + type: personal-development + start: 9:45 end: 12:00 - # - name: Thought of the week (Misinformation, Disinformation and the threat to Democracy) - # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - # type: personal-development - # start: 11:00 - # end: 11:45 - # - name: SQL challenge - # url: https://github.com/foundersandcoders/sql-challenge - # type: challenge - # start: 11:45 - # end: 13:00 - # - name: Issue management and estimation - # start: 15:45 - # end: 16:00 - # url: https://fac-slides.netlify.app/slides/estimation/ + - name: Workshops Recap + url: https://learn.foundersandcoders.com/workshops/git-workflow/ + type: workshop + start: 12:00 + end: 13:00 + + - name: Git Workshop + url: https://learn.foundersandcoders.com/workshops/git-workflow/ + type: workshop + start: 14:00 + end: 16:00 + - name: GitHub Projects Workshop + url: https://learn.foundersandcoders.com/workshops/github-projects/ + type: workshop + start: 16:00 + end: 18:00 + tuesday: + - name: Check in + start: 9:30 + end: 9:45 + + - name: Project Presentation + type: project + start: 10:30 + end: 11:00 + wednesday: + - name: Check in + start: 9:30 + end: 9:45 thursday: - # - name: Reading for next topic - # start: 15:30 - # end: 16:00 - # url: /course/syllabus/developer/database/topicIntro/ friday: - - name: Cypress Learning - url: https://learn.cypress.io/#courses - type: workshop - start: 9:30 - end: 18:00 + --- diff --git a/src/course/syllabus/foundation/week02/homework.md b/src/course/syllabus/foundation/week02/homework.md index d53b5e9e..f41ef7b7 100644 --- a/src/course/syllabus/foundation/week02/homework.md +++ b/src/course/syllabus/foundation/week02/homework.md @@ -2,7 +2,7 @@ This is a guide to what you should be doing for homework each week. Please reach out to your CFs if you are unsure of what to prioritise between sessions. -During this module you should be working on: [Execute Program Modern Javascript Concurrency](https://www.executeprogram.com) +During this module you should be working on: [Execute Program: Javascript Concurrency](https://www.executeprogram.com) We expect you to complete Modern Javascript Concurrency (all levels) by the end of Week 6 From 32065b91b7066ecf00e1d895403e068a74bb9416 Mon Sep 17 00:00:00 2001 From: Alexander Date: Sat, 7 Sep 2024 13:43:27 +0100 Subject: [PATCH 085/118] Organise menu per weeks --- src/_data/defaultSchedule.yml | 6 -- src/_includes/course.11ty.js | 39 +++++----- .../syllabus/foundation/week01/overview.md | 18 +++-- .../syllabus/foundation/week01/schedule.md | 15 +++- .../syllabus/foundation/week02/overview.md | 50 +++++++++++++ .../syllabus/foundation/week02/schedule.md | 71 ++++++------------- .../syllabus/foundation/week02/week02.json | 17 ++--- src/styles/partials/components.css | 5 ++ src/styles/partials/main.css | 3 +- src/styles/partials/navigation.css | 2 + 10 files changed, 137 insertions(+), 89 deletions(-) create mode 100644 src/course/syllabus/foundation/week02/overview.md diff --git a/src/_data/defaultSchedule.yml b/src/_data/defaultSchedule.yml index 39be69d4..2a3f67ef 100644 --- a/src/_data/defaultSchedule.yml +++ b/src/_data/defaultSchedule.yml @@ -138,12 +138,6 @@ thursday: name: Speaker/Tfb friday: - # - start: 9:30 - # end: 9:45 - # name: Exec program - # - start: 9:45 - # end: 10:30 - # name: Workshop - start: 9:30 end: 9:45 name: Check in diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 5008a443..7e90e634 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -23,27 +23,30 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/handbook/software-foundation/">Software Foundation
  • <${Link} url=${url} href="/course/handbook/software-developer/">Software Developer
  • - <${Section} title="Foundation" url=${url} subpath="course/syllabus/foundation"> + <${Section} title="Developer" url=${url} subpath="course/syllabus/developer">
  • <${Link} url=${url} href="/course/syllabus/foundation/pre-course/schedule/">Pre-course
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/week01/overview/">Week 01
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/week02/schedule/">Week 02
  • +
  • <${Link} url=${url} href="/course/syllabus/foundation/week01/overview/">W01/P1: Basics
  • +
  • <${Link} url=${url} href="/course/syllabus/foundation/week02/overview/">W02.P2: Async
  • + + + + +
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-server/schedule/">W03_P3: Server
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-frontend/schedule/">W04_P3: Frontend
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-test-deploy/schedule/">W05_P3: Test & Deploy
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-1/schedule/">W06_P4: Databases
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-2/schedule/">W07_P4: Authentication
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-3/schedule/">W08_P4: Test & Deploy
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/">W09: READING WEEK
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/DOTNET-intro/schedule">W10_P5: .NET
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/dotnet-with-testing/schedule">W11_P5: .NET With Testing
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/project-3-week-3/schedule">W12_P5: Test and Deploy
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/schedule">W14.TFB: Design
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-1/schedule">W15.TFB: Build
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-2/schedule">W16.TFB: Build
  • - <${Section} title="Developer" url=${url} subpath="course/syllabus/developer"> -
  • <${Link} url=${url} href="/course/syllabus/developer/introduction/schedule">Introduction
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-server/schedule/">Project 1: Server
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-frontend/schedule/">Project 1: Frontend
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-test-deploy/schedule/">Project 1: Test & Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-1/schedule/">Project 2: Databases
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-2/schedule/">Project 2: Authentication
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-3/schedule/">Project 2: Test & Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/DOTNET-intro/schedule">Project 3: .NET
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/dotnet-with-testing/schedule">Project 3: .NET With Testing
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/project-3-week-3/schedule">Project 3: Test and Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/schedule">TFB Design Sprint
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-1/schedule">TFB Build Sprint 1
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-2/schedule">TFB Build Sprint 2
  • - + <${Section} title="Tech for Better" url=${url} subpath="course/syllabus/tfb">
  • <${Link} url=${url} href="/course/syllabus/tfb/week 1/content">Week 1: Introduction
  • <${Link} url=${url} href="/course/syllabus/tfb/week 2/content">Week 2: Product Pitches and Discovery
  • diff --git a/src/course/syllabus/foundation/week01/overview.md b/src/course/syllabus/foundation/week01/overview.md index 06f15922..7eb2a9d8 100644 --- a/src/course/syllabus/foundation/week01/overview.md +++ b/src/course/syllabus/foundation/week01/overview.md @@ -1,19 +1,28 @@ -This topic is focused on the fundamental building blocks of web pages—accessible, semantic HTML, and well-organised CSS. +### Week of September 9th + +This week is focused on the fundamental building blocks of web pages—accessible, semantic HTML, and well-organised CSS. ### Workshops -_To be completed ahead of Week 1_ +#### _To be completed AHEAD of Week 1_ - [CSS Layout workshop](/workshops/css-layout/) - [Semantic HTML workshop](/workshops/semantic-html/) - [Accessibility workshop](/workshops/learn-a11y/) - [HTML Forms workshop](/workshops/html-forms/) -_To be completed on Induction day_ +#### _To be completed on Induction day_ - [Git workflow workshop](/workshops/git-workflow/) - [GitHub Projects workshop](/workshops/github-projects) +#### _To be completed ON Week01_ + +- [Asynchronous JS workshop](/workshops/functions-callbacks-async/) +- [Promises & fetch workshop](/workshops/learn-fetch/) +- [Real-world fetch workshop](/workshops/real-world-fetch) +- [Promise practice workshop](/workshops/promise-practice/) + ## Curriculum - Safeguarding and Prevent @@ -25,7 +34,6 @@ _To be completed on Induction day_ _**[GitHub Profile Generator](https://rahuldkjain.github.io/gh-profile-readme-generator/)**_ https://rahuldkjain.github.io/gh-profile-readme-generator/ - Project introduction -- HackMD -- Live code session: project code review - Project code reviews +- [HackMD](https://hackmd.io/) - Project presentations diff --git a/src/course/syllabus/foundation/week01/schedule.md b/src/course/syllabus/foundation/week01/schedule.md index 7773920c..ad92a1b3 100644 --- a/src/course/syllabus/foundation/week01/schedule.md +++ b/src/course/syllabus/foundation/week01/schedule.md @@ -37,7 +37,20 @@ schedule: - name: Check in start: 9:30 end: 9:45 + thursday: - friday: + - name: HackMD Introduction + type: workshop + url: https://hackmd.io/ + start: 11:00 + end: 11:30 + - name: Presentation Prep + url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 + start: 11:30 + end: 13:00 + - name: Speaker (Ivan - AI.) + start: 16:30 + end: 17:30 + friday: --- diff --git a/src/course/syllabus/foundation/week02/overview.md b/src/course/syllabus/foundation/week02/overview.md new file mode 100644 index 00000000..70495cbf --- /dev/null +++ b/src/course/syllabus/foundation/week02/overview.md @@ -0,0 +1,50 @@ +Learn how to manage asynchronous tasks and send HTTP requests using JavaScript. + +### Workshops + +_To be completed ahead of Week 4_ + +- [Asynchronous JS workshop](/workshops/functions-callbacks-async/) +- [Promises & fetch workshop](/workshops/learn-fetch/) +- [Real-world fetch workshop](/workshops/real-world-fetch) +- [Promise practice workshop](/workshops/promise-practice/) + +## Weeks 4 - 6 + +### Week 4 + +- Q&A +- JavaScript concurrency workshop review +- LinkedIn and online presence +- Mock interviews +- Live code session: Introduction to commonJS modules +- [Node & npm introduction workshop](/workshops/node-npm-intro/) +- Knowledge Quiz + +### Week 5 + +- Q&A +- LinkedIn profile crit +- Node & npm workshop review +- Discord chatbot project introduction +- Project development +- Live code session: Javascript object methods +- Mock interviews +- Project updates +- Project planning and development +- Knowledge Quiz + +### Week 6 + +- Q&A +- Mock interviews +- Project planning and development +- Live code session: Introduction to testing +- Live code session: Project code review +- Project code reviews +- Intro to testing, Build a testing library, Unit testing, Integration testing and TDD workshops +- Knowledge Quiz + +### DevOps Unschool + +**_Saturday 17th February_** diff --git a/src/course/syllabus/foundation/week02/schedule.md b/src/course/syllabus/foundation/week02/schedule.md index 70495cbf..c56db61e 100644 --- a/src/course/syllabus/foundation/week02/schedule.md +++ b/src/course/syllabus/foundation/week02/schedule.md @@ -1,50 +1,21 @@ -Learn how to manage asynchronous tasks and send HTTP requests using JavaScript. - -### Workshops - -_To be completed ahead of Week 4_ - -- [Asynchronous JS workshop](/workshops/functions-callbacks-async/) -- [Promises & fetch workshop](/workshops/learn-fetch/) -- [Real-world fetch workshop](/workshops/real-world-fetch) -- [Promise practice workshop](/workshops/promise-practice/) - -## Weeks 4 - 6 - -### Week 4 - -- Q&A -- JavaScript concurrency workshop review -- LinkedIn and online presence -- Mock interviews -- Live code session: Introduction to commonJS modules -- [Node & npm introduction workshop](/workshops/node-npm-intro/) -- Knowledge Quiz - -### Week 5 - -- Q&A -- LinkedIn profile crit -- Node & npm workshop review -- Discord chatbot project introduction -- Project development -- Live code session: Javascript object methods -- Mock interviews -- Project updates -- Project planning and development -- Knowledge Quiz - -### Week 6 - -- Q&A -- Mock interviews -- Project planning and development -- Live code session: Introduction to testing -- Live code session: Project code review -- Project code reviews -- Intro to testing, Build a testing library, Unit testing, Integration testing and TDD workshops -- Knowledge Quiz - -### DevOps Unschool - -**_Saturday 17th February_** +--- +layout: schedule +schedule: + monday: + + tuesday: + - name: Check in + start: 9:30 + end: 9:45 + + wednesday: + - name: Check in + start: 9:30 + end: 9:45 + + thursday: + - name: Speaker (Shaughn) + start: 16:30 + end: 17:30 + friday: +--- diff --git a/src/course/syllabus/foundation/week02/week02.json b/src/course/syllabus/foundation/week02/week02.json index a46763f0..05178c00 100644 --- a/src/course/syllabus/foundation/week02/week02.json +++ b/src/course/syllabus/foundation/week02/week02.json @@ -1,10 +1,11 @@ { - "tabs": { - "project": true, - "learnings": true, - "spikes": true, - "employability": false, - "homework": true - } + "tabs": { + "overview": true, + "schedule": true, + "project": true, + "learnings": true, + "spikes": true, + "employability": false, + "homework": true } - \ No newline at end of file +} diff --git a/src/styles/partials/components.css b/src/styles/partials/components.css index e053a21e..dab45e0c 100644 --- a/src/styles/partials/components.css +++ b/src/styles/partials/components.css @@ -167,3 +167,8 @@ copy-text > button { --shadow: var(--quarternary-100); --bg: var(--quarternary-100); } + + +.vstack > li::marker { + content: none; +} diff --git a/src/styles/partials/main.css b/src/styles/partials/main.css index cacbc08c..c72ac5ed 100644 --- a/src/styles/partials/main.css +++ b/src/styles/partials/main.css @@ -44,7 +44,7 @@ html { --quarternary-700: var(--red-700); --tertiary-100: var(--green-100); --tertiary-700: var(--green-700); - --body-bg: hsl(226.5,94.4%,98%); + --body-bg: hsl(226.5, 94.4%, 98%); --info-bg: hsl(220, 85%, 96%); --info-fg: hsl(220, 60%, 10%); --border-title: 1px solid var(--bg-200); @@ -261,3 +261,4 @@ kbd { background-color: var(--primary); background-image: url('data:image/svg+xml;utf8,'); } + diff --git a/src/styles/partials/navigation.css b/src/styles/partials/navigation.css index 3f08d8f2..03341d95 100644 --- a/src/styles/partials/navigation.css +++ b/src/styles/partials/navigation.css @@ -109,6 +109,8 @@ nav a { display: block; } + + @media (min-width: 50em) { .layout { display: grid; From 26c8e541a3f3d99794fa99525449ad3331f6d8b0 Mon Sep 17 00:00:00 2001 From: Alexander Date: Sat, 7 Sep 2024 17:07:53 +0100 Subject: [PATCH 086/118] Moved dotnet project to developer folder --- src/_includes/course.11ty.js | 39 ++++++++----------- src/course/syllabus/developer/developer.json | 3 -- .../learning-outcomes.md | 0 .../{TFB-design => weekTFB-design}/project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../{TFB-design => weekTFB-design}/spikes.md | 0 .../week00-pre-course/overview.md} | 0 .../week00-pre-course}/spikes.md | 0 .../week00-pre-course/week00-pre-course.json | 12 ++++++ .../week01-project01-basics}/employability.md | 0 .../week01-project01-basics}/homework.md | 0 .../learning-outcomes.md | 0 .../week01-project01-basics}/overview.md | 0 .../week01-project01-basics}/project.md | 0 .../week01-project01-basics/resources.md | 1 + .../week01-project01-basics}/schedule.md | 0 .../week01-project01-basics}/spikes.md | 0 .../week01-project01-basics}/week01.json | 1 + .../employability.md | 0 .../week02-project02-chatbot}/homework.md | 0 .../learning-outcomes.md | 0 .../week02-project02-chatbot}/overview.md | 2 + .../week02-project02-chatbot}/project.md | 0 .../week02-project02-chatbot/resources.md | 1 + .../week02-project02-chatbot}/schedule.md | 0 .../week02-project02-chatbot}/spikes.md | 0 .../week02-project02-chatbot}/week02.json | 0 .../learning-outcomes.md | 0 .../week03-project03-server/overview.md | 39 +++++++++++++++++++ .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../week09-reading-week/learning-outcomes.md | 24 ++++++++++++ .../developer/week09-reading-week/overview.md | 3 ++ .../developer/week09-reading-week/project.md | 3 ++ .../week09-reading-week/resources.md | 1 + .../developer/week09-reading-week/schedule.md | 37 ++++++++++++++++++ .../week09-reading-week.json | 11 ++++++ .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../learning-outcomes.md | 0 .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../spikes.md | 0 .../foundation/pre-course/pre-course.json | 9 ----- .../syllabus/foundation/pre-course/project.md | 0 74 files changed, 152 insertions(+), 34 deletions(-) rename src/course/syllabus/developer/projects/{TFB-design => weekTFB-design}/learning-outcomes.md (100%) rename src/course/syllabus/developer/projects/{TFB-design => weekTFB-design}/project.md (100%) rename src/course/syllabus/developer/projects/{TFB-design => weekTFB-design}/resources.md (100%) rename src/course/syllabus/developer/projects/{TFB-design => weekTFB-design}/schedule.md (100%) rename src/course/syllabus/developer/projects/{TFB-design => weekTFB-design}/spikes.md (100%) rename src/course/syllabus/{foundation/pre-course/schedule.md => developer/week00-pre-course/overview.md} (100%) rename src/course/syllabus/{foundation/pre-course => developer/week00-pre-course}/spikes.md (100%) create mode 100644 src/course/syllabus/developer/week00-pre-course/week00-pre-course.json rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/employability.md (100%) rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/homework.md (100%) rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/learning-outcomes.md (100%) rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/overview.md (100%) rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/project.md (100%) create mode 100644 src/course/syllabus/developer/week01-project01-basics/resources.md rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/schedule.md (100%) rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/spikes.md (100%) rename src/course/syllabus/{foundation/week01 => developer/week01-project01-basics}/week01.json (88%) rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/employability.md (100%) rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/homework.md (100%) rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/learning-outcomes.md (100%) rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/overview.md (97%) rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/project.md (100%) create mode 100644 src/course/syllabus/developer/week02-project02-chatbot/resources.md rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/schedule.md (100%) rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/spikes.md (100%) rename src/course/syllabus/{foundation/week02 => developer/week02-project02-chatbot}/week02.json (100%) rename src/course/syllabus/developer/{project-1-server => week03-project03-server}/learning-outcomes.md (100%) create mode 100644 src/course/syllabus/developer/week03-project03-server/overview.md rename src/course/syllabus/developer/{project-1-server => week03-project03-server}/project.md (100%) rename src/course/syllabus/developer/{project-1-server => week03-project03-server}/resources.md (100%) rename src/course/syllabus/developer/{project-1-server => week03-project03-server}/schedule.md (100%) rename src/course/syllabus/developer/{project-1-frontend => week04-project03-frontend}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{project-1-frontend => week04-project03-frontend}/project.md (100%) rename src/course/syllabus/developer/{project-1-frontend => week04-project03-frontend}/resources.md (100%) rename src/course/syllabus/developer/{project-1-frontend => week04-project03-frontend}/schedule.md (100%) rename src/course/syllabus/developer/{project-1-test-deploy => week05-project03-test-deploy}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{project-1-test-deploy => week05-project03-test-deploy}/project.md (100%) rename src/course/syllabus/developer/{project-1-test-deploy => week05-project03-test-deploy}/resources.md (100%) rename src/course/syllabus/developer/{project-1-test-deploy => week05-project03-test-deploy}/schedule.md (100%) rename src/course/syllabus/developer/{project-2-week-1 => week06-project04-databases}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{project-2-week-1 => week06-project04-databases}/project.md (100%) rename src/course/syllabus/developer/{project-2-week-1 => week06-project04-databases}/resources.md (100%) rename src/course/syllabus/developer/{project-2-week-1 => week06-project04-databases}/schedule.md (100%) rename src/course/syllabus/developer/{project-2-week-2 => week07-project04-authentication}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{project-2-week-2 => week07-project04-authentication}/project.md (100%) rename src/course/syllabus/developer/{project-2-week-2 => week07-project04-authentication}/resources.md (100%) rename src/course/syllabus/developer/{project-2-week-2 => week07-project04-authentication}/schedule.md (100%) rename src/course/syllabus/developer/{project-2-week-3 => week08-project04-test-deploy}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{project-2-week-3 => week08-project04-test-deploy}/project.md (100%) rename src/course/syllabus/developer/{project-2-week-3 => week08-project04-test-deploy}/resources.md (100%) rename src/course/syllabus/developer/{project-2-week-3 => week08-project04-test-deploy}/schedule.md (100%) create mode 100644 src/course/syllabus/developer/week09-reading-week/learning-outcomes.md create mode 100644 src/course/syllabus/developer/week09-reading-week/overview.md create mode 100644 src/course/syllabus/developer/week09-reading-week/project.md create mode 100644 src/course/syllabus/developer/week09-reading-week/resources.md create mode 100644 src/course/syllabus/developer/week09-reading-week/schedule.md create mode 100644 src/course/syllabus/developer/week09-reading-week/week09-reading-week.json rename src/course/syllabus/developer/{projects/DOTNET-intro => week10-project05-DOTNET-intro}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{projects/DOTNET-intro => week10-project05-DOTNET-intro}/project.md (100%) rename src/course/syllabus/developer/{projects/DOTNET-intro => week10-project05-DOTNET-intro}/resources.md (100%) rename src/course/syllabus/developer/{projects/DOTNET-intro => week10-project05-DOTNET-intro}/schedule.md (100%) rename src/course/syllabus/developer/{projects/dotnet-with-testing => week11-project05-DOTNET-testing}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{projects/dotnet-with-testing => week11-project05-DOTNET-testing}/project.md (100%) rename src/course/syllabus/developer/{projects/dotnet-with-testing => week11-project05-DOTNET-testing}/resources.md (100%) rename src/course/syllabus/developer/{projects/dotnet-with-testing => week11-project05-DOTNET-testing}/schedule.md (100%) rename src/course/syllabus/developer/{projects/project-3-week-3 => week12-project05-DOTNET-deploy}/learning-outcomes.md (100%) rename src/course/syllabus/developer/{projects/project-3-week-3 => week12-project05-DOTNET-deploy}/project.md (100%) rename src/course/syllabus/developer/{projects/project-3-week-3 => week12-project05-DOTNET-deploy}/resources.md (100%) rename src/course/syllabus/developer/{projects/project-3-week-3 => week12-project05-DOTNET-deploy}/schedule.md (100%) rename src/course/syllabus/developer/{projects/project-3-week-3 => week12-project05-DOTNET-deploy}/spikes.md (100%) delete mode 100644 src/course/syllabus/foundation/pre-course/pre-course.json delete mode 100644 src/course/syllabus/foundation/pre-course/project.md diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 7e90e634..9e58df89 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -23,28 +23,23 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/handbook/software-foundation/">Software Foundation
  • <${Link} url=${url} href="/course/handbook/software-developer/">Software Developer
  • - <${Section} title="Developer" url=${url} subpath="course/syllabus/developer"> -
  • <${Link} url=${url} href="/course/syllabus/foundation/pre-course/schedule/">Pre-course
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/week01/overview/">W01/P1: Basics
  • -
  • <${Link} url=${url} href="/course/syllabus/foundation/week02/overview/">W02.P2: Async
  • - - - - - -
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-server/schedule/">W03_P3: Server
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-frontend/schedule/">W04_P3: Frontend
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-1-test-deploy/schedule/">W05_P3: Test & Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-1/schedule/">W06_P4: Databases
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-2/schedule/">W07_P4: Authentication
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/project-2-week-3/schedule/">W08_P4: Test & Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/">W09: READING WEEK
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/DOTNET-intro/schedule">W10_P5: .NET
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/dotnet-with-testing/schedule">W11_P5: .NET With Testing
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/project-3-week-3/schedule">W12_P5: Test and Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/schedule">W14.TFB: Design
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-1/schedule">W15.TFB: Build
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-2/schedule">W16.TFB: Build
  • + <${Section} title="SW Developer" url=${url} subpath="course/syllabus/developer"> +
  • <${Link} url=${url} href="/course/syllabus/developer/week00-pre-course/overview/">Pre-course
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week01-project01-basics/overview/">W01→P1: Basics
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week02-project02-chatbot/overview/">W02→P2: Async
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week03-project03-server/overview/">W03→P3: Server
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week04-project03-frontend/overview/">W04→P3: Frontend
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week05-project03-test-deploy/overview/">W05→P3: Test & Deploy
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week06-project04-databases/overview/">W06→P4: Databases
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week07-project04-authentication/overview/">W07→P4: Auth
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week08-project04-test-deploy/overview/">W08→P4: Test & Deploy
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week09-reading-week/overview">W09: READING WEEK
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week10-project05-DOTNET-intro/overview">W10→P5: .NET
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week11-project05-DOTNET-testing/overview">W11→P5: .NET & Testing
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week12-project05-DOTNET-deploy/overview">W12→P5: .NET & Test & Deploy
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/overview">W14→TFB: Design
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-1/overview">W15→TFB: Build
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-2/overview">W16→TFB: Build
  • <${Section} title="Tech for Better" url=${url} subpath="course/syllabus/tfb"> diff --git a/src/course/syllabus/developer/developer.json b/src/course/syllabus/developer/developer.json index 39b36303..f170702b 100644 --- a/src/course/syllabus/developer/developer.json +++ b/src/course/syllabus/developer/developer.json @@ -1,6 +1,3 @@ { - "tabs": { - "spikes": false - }, "isDeveloperPage": true } diff --git a/src/course/syllabus/developer/projects/TFB-design/learning-outcomes.md b/src/course/syllabus/developer/projects/weekTFB-design/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-design/learning-outcomes.md rename to src/course/syllabus/developer/projects/weekTFB-design/learning-outcomes.md diff --git a/src/course/syllabus/developer/projects/TFB-design/project.md b/src/course/syllabus/developer/projects/weekTFB-design/project.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-design/project.md rename to src/course/syllabus/developer/projects/weekTFB-design/project.md diff --git a/src/course/syllabus/developer/projects/TFB-design/resources.md b/src/course/syllabus/developer/projects/weekTFB-design/resources.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-design/resources.md rename to src/course/syllabus/developer/projects/weekTFB-design/resources.md diff --git a/src/course/syllabus/developer/projects/TFB-design/schedule.md b/src/course/syllabus/developer/projects/weekTFB-design/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-design/schedule.md rename to src/course/syllabus/developer/projects/weekTFB-design/schedule.md diff --git a/src/course/syllabus/developer/projects/TFB-design/spikes.md b/src/course/syllabus/developer/projects/weekTFB-design/spikes.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-design/spikes.md rename to src/course/syllabus/developer/projects/weekTFB-design/spikes.md diff --git a/src/course/syllabus/foundation/pre-course/schedule.md b/src/course/syllabus/developer/week00-pre-course/overview.md similarity index 100% rename from src/course/syllabus/foundation/pre-course/schedule.md rename to src/course/syllabus/developer/week00-pre-course/overview.md diff --git a/src/course/syllabus/foundation/pre-course/spikes.md b/src/course/syllabus/developer/week00-pre-course/spikes.md similarity index 100% rename from src/course/syllabus/foundation/pre-course/spikes.md rename to src/course/syllabus/developer/week00-pre-course/spikes.md diff --git a/src/course/syllabus/developer/week00-pre-course/week00-pre-course.json b/src/course/syllabus/developer/week00-pre-course/week00-pre-course.json new file mode 100644 index 00000000..8531936f --- /dev/null +++ b/src/course/syllabus/developer/week00-pre-course/week00-pre-course.json @@ -0,0 +1,12 @@ +{ + "tabs": { + "overview": true, + "schedule": false, + "project": false, + "learnings": false, + "spikes": true, + "employability": false, + "resources": false, + "homework": false + } +} diff --git a/src/course/syllabus/foundation/week01/employability.md b/src/course/syllabus/developer/week01-project01-basics/employability.md similarity index 100% rename from src/course/syllabus/foundation/week01/employability.md rename to src/course/syllabus/developer/week01-project01-basics/employability.md diff --git a/src/course/syllabus/foundation/week01/homework.md b/src/course/syllabus/developer/week01-project01-basics/homework.md similarity index 100% rename from src/course/syllabus/foundation/week01/homework.md rename to src/course/syllabus/developer/week01-project01-basics/homework.md diff --git a/src/course/syllabus/foundation/week01/learning-outcomes.md b/src/course/syllabus/developer/week01-project01-basics/learning-outcomes.md similarity index 100% rename from src/course/syllabus/foundation/week01/learning-outcomes.md rename to src/course/syllabus/developer/week01-project01-basics/learning-outcomes.md diff --git a/src/course/syllabus/foundation/week01/overview.md b/src/course/syllabus/developer/week01-project01-basics/overview.md similarity index 100% rename from src/course/syllabus/foundation/week01/overview.md rename to src/course/syllabus/developer/week01-project01-basics/overview.md diff --git a/src/course/syllabus/foundation/week01/project.md b/src/course/syllabus/developer/week01-project01-basics/project.md similarity index 100% rename from src/course/syllabus/foundation/week01/project.md rename to src/course/syllabus/developer/week01-project01-basics/project.md diff --git a/src/course/syllabus/developer/week01-project01-basics/resources.md b/src/course/syllabus/developer/week01-project01-basics/resources.md new file mode 100644 index 00000000..09572a97 --- /dev/null +++ b/src/course/syllabus/developer/week01-project01-basics/resources.md @@ -0,0 +1 @@ +These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. diff --git a/src/course/syllabus/foundation/week01/schedule.md b/src/course/syllabus/developer/week01-project01-basics/schedule.md similarity index 100% rename from src/course/syllabus/foundation/week01/schedule.md rename to src/course/syllabus/developer/week01-project01-basics/schedule.md diff --git a/src/course/syllabus/foundation/week01/spikes.md b/src/course/syllabus/developer/week01-project01-basics/spikes.md similarity index 100% rename from src/course/syllabus/foundation/week01/spikes.md rename to src/course/syllabus/developer/week01-project01-basics/spikes.md diff --git a/src/course/syllabus/foundation/week01/week01.json b/src/course/syllabus/developer/week01-project01-basics/week01.json similarity index 88% rename from src/course/syllabus/foundation/week01/week01.json rename to src/course/syllabus/developer/week01-project01-basics/week01.json index 05178c00..5367e157 100644 --- a/src/course/syllabus/foundation/week01/week01.json +++ b/src/course/syllabus/developer/week01-project01-basics/week01.json @@ -6,6 +6,7 @@ "learnings": true, "spikes": true, "employability": false, + "resources": true, "homework": true } } diff --git a/src/course/syllabus/foundation/week02/employability.md b/src/course/syllabus/developer/week02-project02-chatbot/employability.md similarity index 100% rename from src/course/syllabus/foundation/week02/employability.md rename to src/course/syllabus/developer/week02-project02-chatbot/employability.md diff --git a/src/course/syllabus/foundation/week02/homework.md b/src/course/syllabus/developer/week02-project02-chatbot/homework.md similarity index 100% rename from src/course/syllabus/foundation/week02/homework.md rename to src/course/syllabus/developer/week02-project02-chatbot/homework.md diff --git a/src/course/syllabus/foundation/week02/learning-outcomes.md b/src/course/syllabus/developer/week02-project02-chatbot/learning-outcomes.md similarity index 100% rename from src/course/syllabus/foundation/week02/learning-outcomes.md rename to src/course/syllabus/developer/week02-project02-chatbot/learning-outcomes.md diff --git a/src/course/syllabus/foundation/week02/overview.md b/src/course/syllabus/developer/week02-project02-chatbot/overview.md similarity index 97% rename from src/course/syllabus/foundation/week02/overview.md rename to src/course/syllabus/developer/week02-project02-chatbot/overview.md index 70495cbf..69cc5ebe 100644 --- a/src/course/syllabus/foundation/week02/overview.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/overview.md @@ -1,3 +1,5 @@ +### Week of September 16th + Learn how to manage asynchronous tasks and send HTTP requests using JavaScript. ### Workshops diff --git a/src/course/syllabus/foundation/week02/project.md b/src/course/syllabus/developer/week02-project02-chatbot/project.md similarity index 100% rename from src/course/syllabus/foundation/week02/project.md rename to src/course/syllabus/developer/week02-project02-chatbot/project.md diff --git a/src/course/syllabus/developer/week02-project02-chatbot/resources.md b/src/course/syllabus/developer/week02-project02-chatbot/resources.md new file mode 100644 index 00000000..09572a97 --- /dev/null +++ b/src/course/syllabus/developer/week02-project02-chatbot/resources.md @@ -0,0 +1 @@ +These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. diff --git a/src/course/syllabus/foundation/week02/schedule.md b/src/course/syllabus/developer/week02-project02-chatbot/schedule.md similarity index 100% rename from src/course/syllabus/foundation/week02/schedule.md rename to src/course/syllabus/developer/week02-project02-chatbot/schedule.md diff --git a/src/course/syllabus/foundation/week02/spikes.md b/src/course/syllabus/developer/week02-project02-chatbot/spikes.md similarity index 100% rename from src/course/syllabus/foundation/week02/spikes.md rename to src/course/syllabus/developer/week02-project02-chatbot/spikes.md diff --git a/src/course/syllabus/foundation/week02/week02.json b/src/course/syllabus/developer/week02-project02-chatbot/week02.json similarity index 100% rename from src/course/syllabus/foundation/week02/week02.json rename to src/course/syllabus/developer/week02-project02-chatbot/week02.json diff --git a/src/course/syllabus/developer/project-1-server/learning-outcomes.md b/src/course/syllabus/developer/week03-project03-server/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/project-1-server/learning-outcomes.md rename to src/course/syllabus/developer/week03-project03-server/learning-outcomes.md diff --git a/src/course/syllabus/developer/week03-project03-server/overview.md b/src/course/syllabus/developer/week03-project03-server/overview.md new file mode 100644 index 00000000..7eb2a9d8 --- /dev/null +++ b/src/course/syllabus/developer/week03-project03-server/overview.md @@ -0,0 +1,39 @@ +### Week of September 9th + +This week is focused on the fundamental building blocks of web pages—accessible, semantic HTML, and well-organised CSS. + +### Workshops + +#### _To be completed AHEAD of Week 1_ + +- [CSS Layout workshop](/workshops/css-layout/) +- [Semantic HTML workshop](/workshops/semantic-html/) +- [Accessibility workshop](/workshops/learn-a11y/) +- [HTML Forms workshop](/workshops/html-forms/) + +#### _To be completed on Induction day_ + +- [Git workflow workshop](/workshops/git-workflow/) +- [GitHub Projects workshop](/workshops/github-projects) + +#### _To be completed ON Week01_ + +- [Asynchronous JS workshop](/workshops/functions-callbacks-async/) +- [Promises & fetch workshop](/workshops/learn-fetch/) +- [Real-world fetch workshop](/workshops/real-world-fetch) +- [Promise practice workshop](/workshops/promise-practice/) + +## Curriculum + +- Safeguarding and Prevent +- Dev machine setup +- Intro to Git and GitHub +- Project planning and development (GitHub Projects) +- User Manuals (on GitHub) +- Introduction to GitHub profiles. + _**[GitHub Profile Generator](https://rahuldkjain.github.io/gh-profile-readme-generator/)**_ + https://rahuldkjain.github.io/gh-profile-readme-generator/ +- Project introduction +- Project code reviews +- [HackMD](https://hackmd.io/) +- Project presentations diff --git a/src/course/syllabus/developer/project-1-server/project.md b/src/course/syllabus/developer/week03-project03-server/project.md similarity index 100% rename from src/course/syllabus/developer/project-1-server/project.md rename to src/course/syllabus/developer/week03-project03-server/project.md diff --git a/src/course/syllabus/developer/project-1-server/resources.md b/src/course/syllabus/developer/week03-project03-server/resources.md similarity index 100% rename from src/course/syllabus/developer/project-1-server/resources.md rename to src/course/syllabus/developer/week03-project03-server/resources.md diff --git a/src/course/syllabus/developer/project-1-server/schedule.md b/src/course/syllabus/developer/week03-project03-server/schedule.md similarity index 100% rename from src/course/syllabus/developer/project-1-server/schedule.md rename to src/course/syllabus/developer/week03-project03-server/schedule.md diff --git a/src/course/syllabus/developer/project-1-frontend/learning-outcomes.md b/src/course/syllabus/developer/week04-project03-frontend/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/project-1-frontend/learning-outcomes.md rename to src/course/syllabus/developer/week04-project03-frontend/learning-outcomes.md diff --git a/src/course/syllabus/developer/project-1-frontend/project.md b/src/course/syllabus/developer/week04-project03-frontend/project.md similarity index 100% rename from src/course/syllabus/developer/project-1-frontend/project.md rename to src/course/syllabus/developer/week04-project03-frontend/project.md diff --git a/src/course/syllabus/developer/project-1-frontend/resources.md b/src/course/syllabus/developer/week04-project03-frontend/resources.md similarity index 100% rename from src/course/syllabus/developer/project-1-frontend/resources.md rename to src/course/syllabus/developer/week04-project03-frontend/resources.md diff --git a/src/course/syllabus/developer/project-1-frontend/schedule.md b/src/course/syllabus/developer/week04-project03-frontend/schedule.md similarity index 100% rename from src/course/syllabus/developer/project-1-frontend/schedule.md rename to src/course/syllabus/developer/week04-project03-frontend/schedule.md diff --git a/src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md b/src/course/syllabus/developer/week05-project03-test-deploy/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/project-1-test-deploy/learning-outcomes.md rename to src/course/syllabus/developer/week05-project03-test-deploy/learning-outcomes.md diff --git a/src/course/syllabus/developer/project-1-test-deploy/project.md b/src/course/syllabus/developer/week05-project03-test-deploy/project.md similarity index 100% rename from src/course/syllabus/developer/project-1-test-deploy/project.md rename to src/course/syllabus/developer/week05-project03-test-deploy/project.md diff --git a/src/course/syllabus/developer/project-1-test-deploy/resources.md b/src/course/syllabus/developer/week05-project03-test-deploy/resources.md similarity index 100% rename from src/course/syllabus/developer/project-1-test-deploy/resources.md rename to src/course/syllabus/developer/week05-project03-test-deploy/resources.md diff --git a/src/course/syllabus/developer/project-1-test-deploy/schedule.md b/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md similarity index 100% rename from src/course/syllabus/developer/project-1-test-deploy/schedule.md rename to src/course/syllabus/developer/week05-project03-test-deploy/schedule.md diff --git a/src/course/syllabus/developer/project-2-week-1/learning-outcomes.md b/src/course/syllabus/developer/week06-project04-databases/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-1/learning-outcomes.md rename to src/course/syllabus/developer/week06-project04-databases/learning-outcomes.md diff --git a/src/course/syllabus/developer/project-2-week-1/project.md b/src/course/syllabus/developer/week06-project04-databases/project.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-1/project.md rename to src/course/syllabus/developer/week06-project04-databases/project.md diff --git a/src/course/syllabus/developer/project-2-week-1/resources.md b/src/course/syllabus/developer/week06-project04-databases/resources.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-1/resources.md rename to src/course/syllabus/developer/week06-project04-databases/resources.md diff --git a/src/course/syllabus/developer/project-2-week-1/schedule.md b/src/course/syllabus/developer/week06-project04-databases/schedule.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-1/schedule.md rename to src/course/syllabus/developer/week06-project04-databases/schedule.md diff --git a/src/course/syllabus/developer/project-2-week-2/learning-outcomes.md b/src/course/syllabus/developer/week07-project04-authentication/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-2/learning-outcomes.md rename to src/course/syllabus/developer/week07-project04-authentication/learning-outcomes.md diff --git a/src/course/syllabus/developer/project-2-week-2/project.md b/src/course/syllabus/developer/week07-project04-authentication/project.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-2/project.md rename to src/course/syllabus/developer/week07-project04-authentication/project.md diff --git a/src/course/syllabus/developer/project-2-week-2/resources.md b/src/course/syllabus/developer/week07-project04-authentication/resources.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-2/resources.md rename to src/course/syllabus/developer/week07-project04-authentication/resources.md diff --git a/src/course/syllabus/developer/project-2-week-2/schedule.md b/src/course/syllabus/developer/week07-project04-authentication/schedule.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-2/schedule.md rename to src/course/syllabus/developer/week07-project04-authentication/schedule.md diff --git a/src/course/syllabus/developer/project-2-week-3/learning-outcomes.md b/src/course/syllabus/developer/week08-project04-test-deploy/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-3/learning-outcomes.md rename to src/course/syllabus/developer/week08-project04-test-deploy/learning-outcomes.md diff --git a/src/course/syllabus/developer/project-2-week-3/project.md b/src/course/syllabus/developer/week08-project04-test-deploy/project.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-3/project.md rename to src/course/syllabus/developer/week08-project04-test-deploy/project.md diff --git a/src/course/syllabus/developer/project-2-week-3/resources.md b/src/course/syllabus/developer/week08-project04-test-deploy/resources.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-3/resources.md rename to src/course/syllabus/developer/week08-project04-test-deploy/resources.md diff --git a/src/course/syllabus/developer/project-2-week-3/schedule.md b/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md similarity index 100% rename from src/course/syllabus/developer/project-2-week-3/schedule.md rename to src/course/syllabus/developer/week08-project04-test-deploy/schedule.md diff --git a/src/course/syllabus/developer/week09-reading-week/learning-outcomes.md b/src/course/syllabus/developer/week09-reading-week/learning-outcomes.md new file mode 100644 index 00000000..1768db46 --- /dev/null +++ b/src/course/syllabus/developer/week09-reading-week/learning-outcomes.md @@ -0,0 +1,24 @@ +## Learning Outcomes + +{% box %} + +[Here's a reminder of the full list of KSB's](/course/ksb) + +{% endbox %} + +### Testing +- [ ] Learn how to write unit tests, integration tests, and end-to-end tests using testing frameworks like Cypress (K12, S4, S5, S13) +- [ ] Understand the importance of code organisation, modularity, and reusability (K7, S1, S11) +- [ ] Solidify typescript skills (K7, S1, S11, S12) +- [ ] Understand the differences between development, staging, and production environments (K1, K3, K8) + + +### Deployment +- [ ] Understand the concept of infrastructure as code (K1, K5, K7) +- [ ] Configure the necessary environment variables and settings for deployment (S10, S14) +- [ ] Understand the basic syntax of provisioning resources with AWS CDK (S10, S14, S16) +- [ ] Have good working understanding of the permissions involved when deploying on AWS, (i.e security groups) (K8, B5) +- [ ] Gain experience in deploying a full-stack web application to a cloud platform (S10, S14, B3) +- [ ] Configure the necessary environment variables and settings for deployment (S10, S14, B3) +- [ ] Understand the process of building and optimising the application for production (S10, S14, B3) +- [ ] Gain experience in using a continuous integration and deployment (CI/CD) pipeline (S10, S14, B3) \ No newline at end of file diff --git a/src/course/syllabus/developer/week09-reading-week/overview.md b/src/course/syllabus/developer/week09-reading-week/overview.md new file mode 100644 index 00000000..d4d7e7f9 --- /dev/null +++ b/src/course/syllabus/developer/week09-reading-week/overview.md @@ -0,0 +1,3 @@ +### Week of XXX + +READING WEEK diff --git a/src/course/syllabus/developer/week09-reading-week/project.md b/src/course/syllabus/developer/week09-reading-week/project.md new file mode 100644 index 00000000..03d758e4 --- /dev/null +++ b/src/course/syllabus/developer/week09-reading-week/project.md @@ -0,0 +1,3 @@ +## Project +READING WEEK + diff --git a/src/course/syllabus/developer/week09-reading-week/resources.md b/src/course/syllabus/developer/week09-reading-week/resources.md new file mode 100644 index 00000000..c457c3e2 --- /dev/null +++ b/src/course/syllabus/developer/week09-reading-week/resources.md @@ -0,0 +1 @@ +## Resources diff --git a/src/course/syllabus/developer/week09-reading-week/schedule.md b/src/course/syllabus/developer/week09-reading-week/schedule.md new file mode 100644 index 00000000..48333b59 --- /dev/null +++ b/src/course/syllabus/developer/week09-reading-week/schedule.md @@ -0,0 +1,37 @@ +--- +layout: schedule +schedule: + monday: + # - name: Thought of the week (extra-curricular) + # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 + # type: personal-development + # start: 11:00 + # end: 11.45 + # - name: Project intro + # url: ../project/ + # type: project + # start: 12:00 + # end: 13:00 + # - name: Schedule research and testing + # start: 15:45 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/research-and-testing/ + # - name: Project + # url: ../project/ + # type: project + # start: 16:00 + # end: 17:45 + tuesday: + wednesday: + thursday: + # - name: Design Week Intro + # start: 15:30 + # end: 16:00 + # url: https://fac-slides.netlify.app/slides/design-sprint/ + friday: + - name: .NET workshop + url: /learn/DOTNET + type: workshop + start: 9:30 + end: 18:00 +--- diff --git a/src/course/syllabus/developer/week09-reading-week/week09-reading-week.json b/src/course/syllabus/developer/week09-reading-week/week09-reading-week.json new file mode 100644 index 00000000..0f6b926f --- /dev/null +++ b/src/course/syllabus/developer/week09-reading-week/week09-reading-week.json @@ -0,0 +1,11 @@ +{ + "tabs": { + "overview": true, + "schedule": false, + "project": false, + "learnings": true, + "spikes": true, + "employability": false, + "homework": true + } +} diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/projects/DOTNET-intro/learning-outcomes.md rename to src/course/syllabus/developer/week10-project05-DOTNET-intro/learning-outcomes.md diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/project.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/project.md similarity index 100% rename from src/course/syllabus/developer/projects/DOTNET-intro/project.md rename to src/course/syllabus/developer/week10-project05-DOTNET-intro/project.md diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/resources.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/resources.md similarity index 100% rename from src/course/syllabus/developer/projects/DOTNET-intro/resources.md rename to src/course/syllabus/developer/week10-project05-DOTNET-intro/resources.md diff --git a/src/course/syllabus/developer/projects/DOTNET-intro/schedule.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/DOTNET-intro/schedule.md rename to src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/learning-outcomes.md b/src/course/syllabus/developer/week11-project05-DOTNET-testing/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/projects/dotnet-with-testing/learning-outcomes.md rename to src/course/syllabus/developer/week11-project05-DOTNET-testing/learning-outcomes.md diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/project.md b/src/course/syllabus/developer/week11-project05-DOTNET-testing/project.md similarity index 100% rename from src/course/syllabus/developer/projects/dotnet-with-testing/project.md rename to src/course/syllabus/developer/week11-project05-DOTNET-testing/project.md diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/resources.md b/src/course/syllabus/developer/week11-project05-DOTNET-testing/resources.md similarity index 100% rename from src/course/syllabus/developer/projects/dotnet-with-testing/resources.md rename to src/course/syllabus/developer/week11-project05-DOTNET-testing/resources.md diff --git a/src/course/syllabus/developer/projects/dotnet-with-testing/schedule.md b/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/dotnet-with-testing/schedule.md rename to src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md diff --git a/src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/projects/project-3-week-3/learning-outcomes.md rename to src/course/syllabus/developer/week12-project05-DOTNET-deploy/learning-outcomes.md diff --git a/src/course/syllabus/developer/projects/project-3-week-3/project.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/project.md similarity index 100% rename from src/course/syllabus/developer/projects/project-3-week-3/project.md rename to src/course/syllabus/developer/week12-project05-DOTNET-deploy/project.md diff --git a/src/course/syllabus/developer/projects/project-3-week-3/resources.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/resources.md similarity index 100% rename from src/course/syllabus/developer/projects/project-3-week-3/resources.md rename to src/course/syllabus/developer/week12-project05-DOTNET-deploy/resources.md diff --git a/src/course/syllabus/developer/projects/project-3-week-3/schedule.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/project-3-week-3/schedule.md rename to src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md diff --git a/src/course/syllabus/developer/projects/project-3-week-3/spikes.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/spikes.md similarity index 100% rename from src/course/syllabus/developer/projects/project-3-week-3/spikes.md rename to src/course/syllabus/developer/week12-project05-DOTNET-deploy/spikes.md diff --git a/src/course/syllabus/foundation/pre-course/pre-course.json b/src/course/syllabus/foundation/pre-course/pre-course.json deleted file mode 100644 index 362c0a6d..00000000 --- a/src/course/syllabus/foundation/pre-course/pre-course.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "tabs": { - "learnings": false, - "project": false, - "employability": false, - "homework": false, - "spikes": true - } -} diff --git a/src/course/syllabus/foundation/pre-course/project.md b/src/course/syllabus/foundation/pre-course/project.md deleted file mode 100644 index e69de29b..00000000 From cfc4a814f0a69f8d9b336bb5d36addd35bffabcb Mon Sep 17 00:00:00 2001 From: Alexander Date: Sat, 7 Sep 2024 22:25:07 +0100 Subject: [PATCH 087/118] Included thought of the week on schedules --- src/_data/defaultSchedule.yml | 8 ++-- src/_includes/course.11ty.js | 6 +-- src/_includes/syllabus.11ty.js | 1 - src/course/syllabus/developer/developer.json | 9 ++++ .../week01-project01-basics/homework.md | 10 ++-- .../week01-project01-basics/overview.md | 34 ++++++++------ .../week01-project01-basics/project.md | 4 ++ .../week01-project01-basics/resources.md | 28 +++++++++++ .../week01-project01-basics/schedule.md | 7 ++- .../week01-project01-basics/spikes.md | 46 ++++--------------- .../week01-project01-basics.json | 5 ++ .../week01-project01-basics/week01.json | 12 ----- .../week02-project02-chatbot/overview.md | 36 ++++----------- .../week02-project02-chatbot/project.md | 4 ++ .../week02-project02-chatbot/resources.md | 13 ++++++ .../week02-project02-chatbot/schedule.md | 4 ++ .../week02-project02-chatbot/spikes.md | 19 +------- .../week02-project02-chatbot.json | 5 ++ .../week02-project02-chatbot/week02.json | 11 ----- .../week03-project03-server/overview.md | 39 +--------------- .../week03-project03-server/project.md | 4 ++ .../week03-project03-server/schedule.md | 5 ++ .../week04-project03-frontend/overview.md | 4 ++ .../week04-project03-frontend/schedule.md | 4 ++ .../week05-project03-test-deploy/overview.md | 3 ++ .../week05-project03-test-deploy/schedule.md | 5 ++ .../week06-project04-databases/overview.md | 4 ++ .../week06-project04-databases/project.md | 4 ++ .../week06-project04-databases/schedule.md | 4 ++ .../overview.md | 4 ++ .../schedule.md | 4 ++ .../week08-project04-test-deploy/overview.md | 4 ++ .../week08-project04-test-deploy/schedule.md | 4 ++ .../developer/week09-reading-week/overview.md | 5 +- .../week10-project05-DOTNET-intro/overview.md | 4 ++ .../week10-project05-DOTNET-intro/project.md | 4 ++ .../week10-project05-DOTNET-intro/schedule.md | 5 ++ .../overview.md | 4 ++ .../schedule.md | 30 ++++++------ .../overview.md | 4 ++ .../schedule.md | 31 +++++++------ .../learning-outcomes.md | 0 .../developer/week13-TFB-design/overview.md | 4 ++ .../project.md | 4 ++ .../resources.md | 0 .../schedule.md | 4 ++ .../spikes.md | 0 .../learning-outcomes.md | 0 .../developer/week14-TFB-build/overview.md | 4 ++ .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../spikes.md | 0 .../learning-outcomes.md | 0 .../developer/week15-TFB-build/overview.md | 6 +++ .../project.md | 0 .../resources.md | 0 .../schedule.md | 0 .../spikes.md | 0 59 files changed, 262 insertions(+), 201 deletions(-) create mode 100644 src/course/syllabus/developer/week01-project01-basics/week01-project01-basics.json delete mode 100644 src/course/syllabus/developer/week01-project01-basics/week01.json create mode 100644 src/course/syllabus/developer/week02-project02-chatbot/week02-project02-chatbot.json delete mode 100644 src/course/syllabus/developer/week02-project02-chatbot/week02.json create mode 100644 src/course/syllabus/developer/week04-project03-frontend/overview.md create mode 100644 src/course/syllabus/developer/week05-project03-test-deploy/overview.md create mode 100644 src/course/syllabus/developer/week06-project04-databases/overview.md create mode 100644 src/course/syllabus/developer/week07-project04-authentication/overview.md create mode 100644 src/course/syllabus/developer/week08-project04-test-deploy/overview.md create mode 100644 src/course/syllabus/developer/week10-project05-DOTNET-intro/overview.md create mode 100644 src/course/syllabus/developer/week11-project05-DOTNET-testing/overview.md create mode 100644 src/course/syllabus/developer/week12-project05-DOTNET-deploy/overview.md rename src/course/syllabus/developer/{projects/weekTFB-design => week13-TFB-design}/learning-outcomes.md (100%) create mode 100644 src/course/syllabus/developer/week13-TFB-design/overview.md rename src/course/syllabus/developer/{projects/weekTFB-design => week13-TFB-design}/project.md (84%) rename src/course/syllabus/developer/{projects/weekTFB-design => week13-TFB-design}/resources.md (100%) rename src/course/syllabus/developer/{projects/weekTFB-design => week13-TFB-design}/schedule.md (83%) rename src/course/syllabus/developer/{projects/weekTFB-design => week13-TFB-design}/spikes.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-1 => week14-TFB-build}/learning-outcomes.md (100%) create mode 100644 src/course/syllabus/developer/week14-TFB-build/overview.md rename src/course/syllabus/developer/{projects/TFB-build-1 => week14-TFB-build}/project.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-1 => week14-TFB-build}/resources.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-1 => week14-TFB-build}/schedule.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-1 => week14-TFB-build}/spikes.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-2 => week15-TFB-build}/learning-outcomes.md (100%) create mode 100644 src/course/syllabus/developer/week15-TFB-build/overview.md rename src/course/syllabus/developer/{projects/TFB-build-2 => week15-TFB-build}/project.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-2 => week15-TFB-build}/resources.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-2 => week15-TFB-build}/schedule.md (100%) rename src/course/syllabus/developer/{projects/TFB-build-2 => week15-TFB-build}/spikes.md (100%) diff --git a/src/_data/defaultSchedule.yml b/src/_data/defaultSchedule.yml index 2a3f67ef..9d13ac70 100644 --- a/src/_data/defaultSchedule.yml +++ b/src/_data/defaultSchedule.yml @@ -132,10 +132,10 @@ thursday: name: Next Week Intro - start: 16:00 end: 17:00 - name: Speaker/Tfb + name: TFB - start: 17:00 end: 18:00 - name: Speaker/Tfb + name: TFB friday: - start: 9:30 @@ -143,7 +143,9 @@ friday: name: Check in - start: 9:45 end: 10:30 - name: Exec program + name: Progress Log + type: workshop + url: https://github.com/fac30/Progress-Log - start: 10:30 end: 11:00 name: Workshop diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index 9e58df89..f83d719a 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -37,9 +37,9 @@ exports.render = ({ page: { url }, content }) => {
  • <${Link} url=${url} href="/course/syllabus/developer/week10-project05-DOTNET-intro/overview">W10→P5: .NET
  • <${Link} url=${url} href="/course/syllabus/developer/week11-project05-DOTNET-testing/overview">W11→P5: .NET & Testing
  • <${Link} url=${url} href="/course/syllabus/developer/week12-project05-DOTNET-deploy/overview">W12→P5: .NET & Test & Deploy
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-design/overview">W14→TFB: Design
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-1/overview">W15→TFB: Build
  • -
  • <${Link} url=${url} href="/course/syllabus/developer/projects/TFB-build-2/overview">W16→TFB: Build
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week13-TFB-design/overview">W13→TFB: Design
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week14-TFB-build/overview">W14→TFB: Build
  • +
  • <${Link} url=${url} href="/course/syllabus/developer/week15-TFB-build/overview">W15→TFB: Build
  • <${Section} title="Tech for Better" url=${url} subpath="course/syllabus/tfb"> diff --git a/src/_includes/syllabus.11ty.js b/src/_includes/syllabus.11ty.js index 0e2db4e3..520ec5a1 100644 --- a/src/_includes/syllabus.11ty.js +++ b/src/_includes/syllabus.11ty.js @@ -55,7 +55,6 @@ exports.render = ({ } ${ tabs.homework !== false && - !isDeveloperPage && !isApplicationPage && !isTechforBetterPage && html`<${Tab} page=${page} href="homework">Homework` diff --git a/src/course/syllabus/developer/developer.json b/src/course/syllabus/developer/developer.json index f170702b..37a4935b 100644 --- a/src/course/syllabus/developer/developer.json +++ b/src/course/syllabus/developer/developer.json @@ -1,3 +1,12 @@ { + "tabs": { + "overview": true, + "schedule": true, + "project": true, + "learnings": true, + "spikes": true, + "employability": false, + "homework": true + }, "isDeveloperPage": true } diff --git a/src/course/syllabus/developer/week01-project01-basics/homework.md b/src/course/syllabus/developer/week01-project01-basics/homework.md index 34d5b745..9515ea2d 100644 --- a/src/course/syllabus/developer/week01-project01-basics/homework.md +++ b/src/course/syllabus/developer/week01-project01-basics/homework.md @@ -2,12 +2,10 @@ This is a guide to what you should be doing for homework each week. Please reach out to your CFs if you are unsure of what to prioritise between sessions. -During this module you should be working on: [Execute Program Javascript Concurrency](https://www.executeprogram.com/courses/javascript-concurrency) - -### Tasks - - Complete the Git, CSS, Semantic HTML, Accessibility and HTML forms workshops ahead of Week 1 +- Complete the Asynchronous JS, Promises & fetch, Real-world fetch and Promise practice workshops ahead of Week 2 +- Complete your user manual +- Complete your Week01 progress log - Complete github profiles - Project work -- Complete the Asynchronous JS, Promises & fetch, Real-world fetch and Promise practice workshops ahead of Week 4 - +- Create a presentation on HackMD diff --git a/src/course/syllabus/developer/week01-project01-basics/overview.md b/src/course/syllabus/developer/week01-project01-basics/overview.md index 7eb2a9d8..07ce5aee 100644 --- a/src/course/syllabus/developer/week01-project01-basics/overview.md +++ b/src/course/syllabus/developer/week01-project01-basics/overview.md @@ -1,10 +1,10 @@ -### Week of September 9th +## Week of September 9th This week is focused on the fundamental building blocks of web pages—accessible, semantic HTML, and well-organised CSS. ### Workshops -#### _To be completed AHEAD of Week 1_ +#### _To be completed AHEAD of Week01_ - [CSS Layout workshop](/workshops/css-layout/) - [Semantic HTML workshop](/workshops/semantic-html/) @@ -13,27 +13,31 @@ This week is focused on the fundamental building blocks of web pages—accessibl #### _To be completed on Induction day_ -- [Git workflow workshop](/workshops/git-workflow/) -- [GitHub Projects workshop](/workshops/github-projects) +- [Git workflow workshop](/workshops/git-workflow/). Repo name: Work01_Git_YourName +- [GitHub Projects workshop](/workshops/github-projects). Repo name: Work02_GitHubProjects_YourName -#### _To be completed ON Week01_ +#### _To be completed on Week01_ -- [Asynchronous JS workshop](/workshops/functions-callbacks-async/) -- [Promises & fetch workshop](/workshops/learn-fetch/) -- [Real-world fetch workshop](/workshops/real-world-fetch) -- [Promise practice workshop](/workshops/promise-practice/) +- [Asynchronous JS workshop](/workshops/functions-callbacks-async/). Repo name: Work03_Async_YourName +- [Promises & fetch workshop](/workshops/learn-fetch/). Repo name: Work04_FetchAndPromises_YourName +- [Real-world fetch workshop](/workshops/real-world-fetch). Repo name: Work05_Fetch_YourName +- [Promise practice workshop](/workshops/promise-practice/). Repo name: Work06_Promises_YourName -## Curriculum +### Execute Program +- [Execute Program Javascript Concurrency](https://www.executeprogram.com/courses/javascript-concurrency) -- Safeguarding and Prevent +### Topics + +- [Safeguarding and Prevent](https://docs.google.com/presentation/d/1SbZchQ8f_VH6r1gjwk8kyZjG2csl0nBamuz6Eaoa8FQ/edit#slide=id.g2da7c98d7e9_0_0) +- Safeguarding Quiz - Dev machine setup -- Intro to Git and GitHub - Project planning and development (GitHub Projects) -- User Manuals (on GitHub) +- [User Manuals](https://github.com/fac30/User-Manuals) +- [Progress Logs](https://github.com/fac30/Progress-Log) - Introduction to GitHub profiles. _**[GitHub Profile Generator](https://rahuldkjain.github.io/gh-profile-readme-generator/)**_ https://rahuldkjain.github.io/gh-profile-readme-generator/ - Project introduction -- Project code reviews +- Live code session: project code review - [HackMD](https://hackmd.io/) -- Project presentations +- [Project presentations](https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9) diff --git a/src/course/syllabus/developer/week01-project01-basics/project.md b/src/course/syllabus/developer/week01-project01-basics/project.md index 88fa4bd0..931c6911 100644 --- a/src/course/syllabus/developer/week01-project01-basics/project.md +++ b/src/course/syllabus/developer/week01-project01-basics/project.md @@ -25,6 +25,10 @@ _**A [user story](https://www.visual-paradigm.com/guide/agile-software-developme - Navigate your website using keyboard controls - Hear my screen reader describe the content on your website +## Repository naming convention +Please name your repo following this template: +PRO01_Name1_Name2_Name3_Name4 + ## Acceptance Criteria _**User stories come with [acceptance criteria](https://blog.easyagile.com/how-to-write-good-user-stories-in-agile-software-development-d4b25356b604?gi=dc603f56ed77) - a detailed scope of a user’s requirements.**_ diff --git a/src/course/syllabus/developer/week01-project01-basics/resources.md b/src/course/syllabus/developer/week01-project01-basics/resources.md index 09572a97..a71faa43 100644 --- a/src/course/syllabus/developer/week01-project01-basics/resources.md +++ b/src/course/syllabus/developer/week01-project01-basics/resources.md @@ -1 +1,29 @@ These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. + + +### Project +- [Quickstart for Projects](https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/quickstart-for-projects) + +### Async + +- [Async JavaScript Youtube tutorial](https://www.youtube.com/watch?v=QSqc6MMS6Fk) +- [JavaScript Promises Youtube tutorial](https://www.youtube.com/watch?v=TnhCX0KkPqs&t=1958s) +- [Async Await vs Promises Youtube tutorial](https://www.youtube.com/watch?v=spvYqO_Kp9Q&t=1s) +- [Introducing asynchronous JS](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Asynchronous/Introducing) + +### CSS + +- [Units - Every Layout](https://every-layout.dev/rudiments/units/) +- [The lengths of CSS](https://css-tricks.com/the-lengths-of-css/) +- [How To Write Mobile-first CSS](https://zellwk.com/blog/how-to-write-mobile-first-css/) +- [Flex children examples](https://codepen.io/oliverjam/full/YzXYRzw) + An explanation of how `flex-grow`, `flex-shrink` and `flex-basis` work for elements inside a flexbox container. +- [CSS Guidelines](https://cssguidelin.es/) +- [BEM Methodology](http://getbem.com/introduction/) +- [Composition - Every Layout](https://every-layout.dev/rudiments/composition/) +- [Boxes - Every Layout](https://every-layout.dev/rudiments/boxes/) +- [CSS Layout - MDN](https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout) + +### Accessibility +- [What a Year of Learning and Teaching Accessibility Taught Me](https://www.24a11y.com/2019/what-a-year-of-learning-and-teaching-accessibility-taught-me/) +- [Why, How, and When to Use Semantic HTML and ARIA](https://css-tricks.com/why-how-and-when-to-use-semantic-html-and-aria/) \ No newline at end of file diff --git a/src/course/syllabus/developer/week01-project01-basics/schedule.md b/src/course/syllabus/developer/week01-project01-basics/schedule.md index ad92a1b3..206d8a37 100644 --- a/src/course/syllabus/developer/week01-project01-basics/schedule.md +++ b/src/course/syllabus/developer/week01-project01-basics/schedule.md @@ -28,7 +28,7 @@ schedule: start: 9:30 end: 9:45 - - name: Project Presentation + - name: Project Presentation / Create Teams type: project start: 10:30 end: 11:00 @@ -38,6 +38,11 @@ schedule: start: 9:30 end: 9:45 + - name: Though of the week. Psychological safety + start: 10:30 + end: 10:45 + url: https://docs.google.com/presentation/d/16aYTQXPnceAxQWrLTuQUMekCJcQ9xt1uJhSGjD2GyLE/edit#slide=id.g2ded454d323_0_103 + thursday: - name: HackMD Introduction type: workshop diff --git a/src/course/syllabus/developer/week01-project01-basics/spikes.md b/src/course/syllabus/developer/week01-project01-basics/spikes.md index 5a4b7104..af6e5626 100644 --- a/src/course/syllabus/developer/week01-project01-basics/spikes.md +++ b/src/course/syllabus/developer/week01-project01-basics/spikes.md @@ -1,18 +1,3 @@ -## Accessibility - -How do you write markup so that your page is accessible to as many users as possible? - -### Questions to consider - -1. Who does semantic HTML benefit? -1. How does ARIA relate to HTML? -1. What's the difference between _accessible_ and _inclusive_? - -### Useful resources - -- [What a Year of Learning and Teaching Accessibility Taught Me](https://www.24a11y.com/2019/what-a-year-of-learning-and-teaching-accessibility-taught-me/) -- [Why, How, and When to Use Semantic HTML and ARIA](https://css-tricks.com/why-how-and-when-to-use-semantic-html-and-aria/) - ## CSS architecture How should you write CSS to ensure it's easy to read, maintain and scale as a website grows? @@ -23,12 +8,6 @@ How should you write CSS to ensure it's easy to read, maintain and scale as a we 1. When might specificity become a problem? 1. How can _composition_ help us build UIs? -### Useful resources - -- [CSS Guidelines](https://cssguidelin.es/) -- [BEM Methodology](http://getbem.com/introduction/) -- [Composition - Every Layout](https://every-layout.dev/rudiments/composition/) - ## CSS layout How does CSS decide where to put elements on the page? @@ -39,11 +18,6 @@ How does CSS decide where to put elements on the page? 1. How does the `display` property affect layout? 1. How does the `position` property affect layout? -### Useful resources - -- [Boxes - Every Layout](https://every-layout.dev/rudiments/boxes/) -- [CSS Layout - MDN](https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout) - ## Responsive design How do you design and build a webpage that looks good on any device? @@ -54,23 +28,19 @@ How do you design and build a webpage that looks good on any device? 1. When should you use a media query? Are they only for screen size? 1. How can mobile-first CSS make responsive styling easier? -### Useful resources - -- [Units - Every Layout](https://every-layout.dev/rudiments/units/) -- [The lengths of CSS](https://css-tricks.com/the-lengths-of-css/) -- [How To Write Mobile-first CSS](https://zellwk.com/blog/how-to-write-mobile-first-css/) - -## Github projects (stretch) +## Github projects ### Questions to consider 1. How can we leverage Github projects to help us plan and track work? -### Useful resources +## Accessibility + +How do you write markup so that your page is accessible to as many users as possible? -These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. +### Questions to consider -- ### [Flex children examples](https://codepen.io/oliverjam/full/YzXYRzw) - An explanation of how `flex-grow`, `flex-shrink` and `flex-basis` work for elements inside a flexbox container. +1. Who does semantic HTML benefit? +1. How does ARIA relate to HTML? +1. What's the difference between _accessible_ and _inclusive_? -- ### [Quickstart for Projects](https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/quickstart-for-projects) diff --git a/src/course/syllabus/developer/week01-project01-basics/week01-project01-basics.json b/src/course/syllabus/developer/week01-project01-basics/week01-project01-basics.json new file mode 100644 index 00000000..bf7b1a93 --- /dev/null +++ b/src/course/syllabus/developer/week01-project01-basics/week01-project01-basics.json @@ -0,0 +1,5 @@ +{ + "tabs": { + "homework": false + } +} diff --git a/src/course/syllabus/developer/week01-project01-basics/week01.json b/src/course/syllabus/developer/week01-project01-basics/week01.json deleted file mode 100644 index 5367e157..00000000 --- a/src/course/syllabus/developer/week01-project01-basics/week01.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "tabs": { - "overview": true, - "schedule": true, - "project": true, - "learnings": true, - "spikes": true, - "employability": false, - "resources": true, - "homework": true - } -} diff --git a/src/course/syllabus/developer/week02-project02-chatbot/overview.md b/src/course/syllabus/developer/week02-project02-chatbot/overview.md index 69cc5ebe..f3eddea2 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/overview.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/overview.md @@ -1,52 +1,34 @@ -### Week of September 16th +## Week of September 16th Learn how to manage asynchronous tasks and send HTTP requests using JavaScript. ### Workshops -_To be completed ahead of Week 4_ +- [Node & npm introduction workshop](/workshops/node-npm-intro/). Repo name: Work07_Node_YourName -- [Asynchronous JS workshop](/workshops/functions-callbacks-async/) -- [Promises & fetch workshop](/workshops/learn-fetch/) -- [Real-world fetch workshop](/workshops/real-world-fetch) -- [Promise practice workshop](/workshops/promise-practice/) +### Execute Program +- [Execute Program Everyday Typescript](https://www.executeprogram.com/courses/everyday-typescript) +#### Stretch +- [Execute Program Advanced Typescript](https://www.executeprogram.com/courses/advanced-typescript) -## Weeks 4 - 6 - -### Week 4 +### Topics - Q&A - JavaScript concurrency workshop review -- LinkedIn and online presence -- Mock interviews - Live code session: Introduction to commonJS modules -- [Node & npm introduction workshop](/workshops/node-npm-intro/) - Knowledge Quiz - -### Week 5 - -- Q&A -- LinkedIn profile crit - Node & npm workshop review - Discord chatbot project introduction - Project development - Live code session: Javascript object methods -- Mock interviews -- Project updates + - Project planning and development - Knowledge Quiz -### Week 6 -- Q&A -- Mock interviews - Project planning and development - Live code session: Introduction to testing - Live code session: Project code review - Project code reviews - Intro to testing, Build a testing library, Unit testing, Integration testing and TDD workshops -- Knowledge Quiz - -### DevOps Unschool - -**_Saturday 17th February_** +- Knowledge Quiz \ No newline at end of file diff --git a/src/course/syllabus/developer/week02-project02-chatbot/project.md b/src/course/syllabus/developer/week02-project02-chatbot/project.md index 3523bf2f..85c54c00 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/project.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/project.md @@ -1,3 +1,7 @@ You are going to create a chatbot that you will deploy in a Discord channel +## Repository naming convention +Please name your repo following this template: +PRO02_Name1_Name2_Name3_Name4 + [A-Discord-AI-Chatbot](https://foundersandcoders.notion.site/A-Discord-AI-Chatbot-2d60ae72f6ca4017aa8d567688b2770c?pvs=4) \ No newline at end of file diff --git a/src/course/syllabus/developer/week02-project02-chatbot/resources.md b/src/course/syllabus/developer/week02-project02-chatbot/resources.md index 09572a97..aac4e2d8 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/resources.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/resources.md @@ -1 +1,14 @@ These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. + + +### Useful resources + + +- [HTTP topic intro](https://fac-slides.netlify.app/slides/http/) +- [How DNS Works](https://howdns.works) + A comic explaining what happens when you type a URL into your browser. +- [HTTP Overview - MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview) + Describes the HTTP protocol in a lot more detail. May be useful if you like learning exactly how stuff works under-the-hood, but may also be overwhelming. +- [First-class Functions](https://oliverjam.es/blog/first-class-functions/) + How functions and callbacks work in JavaScript. Based on a workshop from this week's curriculum. +- [What the heck is the event loop anyway? (video)](https://2014.jsconf.eu/speakers/philip-roberts-what-the-heck-is-the-event-loop-anyway.html) diff --git a/src/course/syllabus/developer/week02-project02-chatbot/schedule.md b/src/course/syllabus/developer/week02-project02-chatbot/schedule.md index c56db61e..0b000563 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/schedule.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/schedule.md @@ -12,6 +12,10 @@ schedule: - name: Check in start: 9:30 end: 9:45 + + - name: Though of the week. Giving Feedback Effectively + start: 10:30 + end: 10:45 thursday: - name: Speaker (Shaughn) diff --git a/src/course/syllabus/developer/week02-project02-chatbot/spikes.md b/src/course/syllabus/developer/week02-project02-chatbot/spikes.md index 54d63893..2a1d1f55 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/spikes.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/spikes.md @@ -6,21 +6,4 @@ How does JS handle asynchronous code? 1. What's the difference between "synchronous" and "asynchronous" code? Why might synchronous code be called "blocking"? 1. What are the event loop and the call stack? -1. How do callbacks and promises help us? - -### Useful resources - - -These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. - -- ### [HTTP topic intro](https://fac-slides.netlify.app/slides/http/) -- ### [How DNS Works](https://howdns.works) - A comic explaining what happens when you type a URL into your browser. -- ### [HTTP Overview - MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview) - Describes the HTTP protocol in a lot more detail. May be useful if you like learning exactly how stuff works under-the-hood, but may also be overwhelming. -- ### [First-class Functions](https://oliverjam.es/blog/first-class-functions/) - How functions and callbacks work in JavaScript. Based on a workshop from this week's curriculum. - -- ### [Asynchronous concepts](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Asynchronous/Concepts) -- ### [Introducing asynchronous JS](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Asynchronous/Introducing) -- ### [What the heck is the event loop anyway? (video)](https://2014.jsconf.eu/speakers/philip-roberts-what-the-heck-is-the-event-loop-anyway.html) +1. How do callbacks and promises help us? \ No newline at end of file diff --git a/src/course/syllabus/developer/week02-project02-chatbot/week02-project02-chatbot.json b/src/course/syllabus/developer/week02-project02-chatbot/week02-project02-chatbot.json new file mode 100644 index 00000000..bf7b1a93 --- /dev/null +++ b/src/course/syllabus/developer/week02-project02-chatbot/week02-project02-chatbot.json @@ -0,0 +1,5 @@ +{ + "tabs": { + "homework": false + } +} diff --git a/src/course/syllabus/developer/week02-project02-chatbot/week02.json b/src/course/syllabus/developer/week02-project02-chatbot/week02.json deleted file mode 100644 index 05178c00..00000000 --- a/src/course/syllabus/developer/week02-project02-chatbot/week02.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "tabs": { - "overview": true, - "schedule": true, - "project": true, - "learnings": true, - "spikes": true, - "employability": false, - "homework": true - } -} diff --git a/src/course/syllabus/developer/week03-project03-server/overview.md b/src/course/syllabus/developer/week03-project03-server/overview.md index 7eb2a9d8..9c4e3bca 100644 --- a/src/course/syllabus/developer/week03-project03-server/overview.md +++ b/src/course/syllabus/developer/week03-project03-server/overview.md @@ -1,39 +1,4 @@ -### Week of September 9th +### Week of September 23th -This week is focused on the fundamental building blocks of web pages—accessible, semantic HTML, and well-organised CSS. +### This week is not updated to FAC30 -### Workshops - -#### _To be completed AHEAD of Week 1_ - -- [CSS Layout workshop](/workshops/css-layout/) -- [Semantic HTML workshop](/workshops/semantic-html/) -- [Accessibility workshop](/workshops/learn-a11y/) -- [HTML Forms workshop](/workshops/html-forms/) - -#### _To be completed on Induction day_ - -- [Git workflow workshop](/workshops/git-workflow/) -- [GitHub Projects workshop](/workshops/github-projects) - -#### _To be completed ON Week01_ - -- [Asynchronous JS workshop](/workshops/functions-callbacks-async/) -- [Promises & fetch workshop](/workshops/learn-fetch/) -- [Real-world fetch workshop](/workshops/real-world-fetch) -- [Promise practice workshop](/workshops/promise-practice/) - -## Curriculum - -- Safeguarding and Prevent -- Dev machine setup -- Intro to Git and GitHub -- Project planning and development (GitHub Projects) -- User Manuals (on GitHub) -- Introduction to GitHub profiles. - _**[GitHub Profile Generator](https://rahuldkjain.github.io/gh-profile-readme-generator/)**_ - https://rahuldkjain.github.io/gh-profile-readme-generator/ -- Project introduction -- Project code reviews -- [HackMD](https://hackmd.io/) -- Project presentations diff --git a/src/course/syllabus/developer/week03-project03-server/project.md b/src/course/syllabus/developer/week03-project03-server/project.md index 065c4af2..dc6ee1f9 100644 --- a/src/course/syllabus/developer/week03-project03-server/project.md +++ b/src/course/syllabus/developer/week03-project03-server/project.md @@ -21,6 +21,10 @@ As a **quizzer**, I want to: - View a summary of my quiz results, including areas of strength and weakness. - Add, edit, and delete quiz questions and answers. +## Repository naming convention +Please name your repo following this template: +PRO03_Name1_Name2_Name3_Name4 + ### Acceptance Criteria **The API should:** diff --git a/src/course/syllabus/developer/week03-project03-server/schedule.md b/src/course/syllabus/developer/week03-project03-server/schedule.md index e545442f..179fd76e 100644 --- a/src/course/syllabus/developer/week03-project03-server/schedule.md +++ b/src/course/syllabus/developer/week03-project03-server/schedule.md @@ -21,6 +21,11 @@ schedule: tuesday: wednesday: + - name: Though of the week. Extra-curricular and learning opportunities + url: https://docs.google.com/presentation/d/1V3JDk5_qO2xM9_2fBMWeZuf4UCgIZFIgZ3l8hrX76Hc/edit#slide=id.g25e05124422_0_0 + start: 10:30 + end: 10:45 + thursday: - name: Thought of the week (British values) url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 diff --git a/src/course/syllabus/developer/week04-project03-frontend/overview.md b/src/course/syllabus/developer/week04-project03-frontend/overview.md new file mode 100644 index 00000000..ee1cae02 --- /dev/null +++ b/src/course/syllabus/developer/week04-project03-frontend/overview.md @@ -0,0 +1,4 @@ +### Week of September 30th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/week04-project03-frontend/schedule.md b/src/course/syllabus/developer/week04-project03-frontend/schedule.md index 2eafa405..c98f5777 100644 --- a/src/course/syllabus/developer/week04-project03-frontend/schedule.md +++ b/src/course/syllabus/developer/week04-project03-frontend/schedule.md @@ -23,6 +23,10 @@ schedule: # url: https://fac-slides.netlify.app/slides/estimation/ tuesday: wednesday: + - name: Though of the week. CIAG - Career paths and freelance work + url: https://www.notion.so/foundersandcoders/Professional-progression-support-7a3c713bf582457fb0f7d5717df8aff4 + start: 10:30 + end: 10:45 thursday: # - name: Reading for next topic # start: 15:30 diff --git a/src/course/syllabus/developer/week05-project03-test-deploy/overview.md b/src/course/syllabus/developer/week05-project03-test-deploy/overview.md new file mode 100644 index 00000000..2499f744 --- /dev/null +++ b/src/course/syllabus/developer/week05-project03-test-deploy/overview.md @@ -0,0 +1,3 @@ +### Week of October 7th + +### This week is not updated to FAC30 diff --git a/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md b/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md index 01d9804f..e394b5da 100644 --- a/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md +++ b/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md @@ -90,6 +90,11 @@ schedule: # - start: 17:45 # end: 18:00 # name: Check-out + + - name: Though of the week. Safeguarding - Digital and financial wellbeing + url: https://docs.google.com/presentation/d/1ttovT29sBRG_TFcBDpaNy_BKaL-CW95mZbKZltqEeJc/edit#slide=id.g25e05124422_0_0 + start: 10:30 + end: 10:45 thursday: # - name: Check-in diff --git a/src/course/syllabus/developer/week06-project04-databases/overview.md b/src/course/syllabus/developer/week06-project04-databases/overview.md new file mode 100644 index 00000000..a1d5614d --- /dev/null +++ b/src/course/syllabus/developer/week06-project04-databases/overview.md @@ -0,0 +1,4 @@ +### Week of October 14th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/week06-project04-databases/project.md b/src/course/syllabus/developer/week06-project04-databases/project.md index 6de07a70..62f04563 100644 --- a/src/course/syllabus/developer/week06-project04-databases/project.md +++ b/src/course/syllabus/developer/week06-project04-databases/project.md @@ -43,6 +43,10 @@ As a **shopper**, I want to: - View previous orders and order history - Complete checkout and payments to simulate purchasing products +## Repository naming convention +Please name your repo following this template: +PRO04_Name1_Name2_Name3_Name4 + ## Acceptance criteria - [ ] Store product data in a database diff --git a/src/course/syllabus/developer/week06-project04-databases/schedule.md b/src/course/syllabus/developer/week06-project04-databases/schedule.md index e251d2f3..74a02854 100644 --- a/src/course/syllabus/developer/week06-project04-databases/schedule.md +++ b/src/course/syllabus/developer/week06-project04-databases/schedule.md @@ -9,6 +9,10 @@ schedule: end: 12:00 tuesday: wednesday: + - name: Though of the week. Diversity in Tech + url: https://docs.google.com/presentation/d/1-mpW5zfrpBUdkk7DCctWZjcLzDD9VGrx-X4fF469rsg/edit#slide=id.g25e05124422_0_0 + start: 10:30 + end: 10:45 thursday: # - name: Reading for next topic # start: 15:30 diff --git a/src/course/syllabus/developer/week07-project04-authentication/overview.md b/src/course/syllabus/developer/week07-project04-authentication/overview.md new file mode 100644 index 00000000..2c0db645 --- /dev/null +++ b/src/course/syllabus/developer/week07-project04-authentication/overview.md @@ -0,0 +1,4 @@ +### Week of October 21th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/week07-project04-authentication/schedule.md b/src/course/syllabus/developer/week07-project04-authentication/schedule.md index 8c2f8775..aa6f6c2a 100644 --- a/src/course/syllabus/developer/week07-project04-authentication/schedule.md +++ b/src/course/syllabus/developer/week07-project04-authentication/schedule.md @@ -26,6 +26,10 @@ schedule: # end: 17:45 tuesday: wednesday: + - name: Though of the week. Extra-curricular and learning opportunities 2 + url: https://docs.google.com/presentation/d/1GwYX_NLH2KayD2QIpKlJnUQCO8ohvF_wY8RO-fMAu6w/edit#slide=id.g25e05124422_0_0 + start: 10:30 + end: 10:45 thursday: # - start: 9:45 # end: 10:00 diff --git a/src/course/syllabus/developer/week08-project04-test-deploy/overview.md b/src/course/syllabus/developer/week08-project04-test-deploy/overview.md new file mode 100644 index 00000000..a9c8cdeb --- /dev/null +++ b/src/course/syllabus/developer/week08-project04-test-deploy/overview.md @@ -0,0 +1,4 @@ +### Week of October 28th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md b/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md index 48333b59..702d9e50 100644 --- a/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md +++ b/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md @@ -23,6 +23,10 @@ schedule: # end: 17:45 tuesday: wednesday: + - name: Though of the week. Misinformation, Disinformation and the threat to Democracy + url: https://docs.google.com/presentation/d/1BxTrWRsPldIpbgRF8dm5FqCFmeoBil2Be0ZUu7HGEgE/edit#slide=id.g25e05124422_0_0 + start: 10:30 + end: 10:45 thursday: # - name: Design Week Intro # start: 15:30 diff --git a/src/course/syllabus/developer/week09-reading-week/overview.md b/src/course/syllabus/developer/week09-reading-week/overview.md index d4d7e7f9..7581e98e 100644 --- a/src/course/syllabus/developer/week09-reading-week/overview.md +++ b/src/course/syllabus/developer/week09-reading-week/overview.md @@ -1,3 +1,4 @@ -### Week of XXX +### Week of November 4th + +### This week is not updated to FAC30 -READING WEEK diff --git a/src/course/syllabus/developer/week10-project05-DOTNET-intro/overview.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/overview.md new file mode 100644 index 00000000..00005631 --- /dev/null +++ b/src/course/syllabus/developer/week10-project05-DOTNET-intro/overview.md @@ -0,0 +1,4 @@ +### Week of November 11th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/week10-project05-DOTNET-intro/project.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/project.md index 20d4710c..0a171af9 100644 --- a/src/course/syllabus/developer/week10-project05-DOTNET-intro/project.md +++ b/src/course/syllabus/developer/week10-project05-DOTNET-intro/project.md @@ -42,6 +42,10 @@ As a **user**, I want to: - Stop duplicate items being uploaded - Suggest collections based on favourites +## Repository naming convention +Please name your repo following this template: +PRO05_Name1_Name2_Name3_Name4 + ## Acceptance criteria - [ ] Backend is in a mostly completed state and attached to a rough draft front end diff --git a/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md index 4d518507..ff531244 100644 --- a/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md +++ b/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md @@ -29,6 +29,10 @@ schedule: # end: 17:45 # type: project wednesday: + - name: Object Oriented Programming + url: https://docs.google.com/presentation/d/1uj464EeKvm38dJzVUH7Y3c3rYNB_6zSbqVYbNtTAJtQ/edit#slide=id.g2ea5f80184e_0_34 + start: 10:30 + end: 10:45 # - name: Web Science # start: 10:00 # end: 11:00 @@ -48,6 +52,7 @@ schedule: # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c + thursday: # - name: Review issues # start: 10:00 diff --git a/src/course/syllabus/developer/week11-project05-DOTNET-testing/overview.md b/src/course/syllabus/developer/week11-project05-DOTNET-testing/overview.md new file mode 100644 index 00000000..e8696639 --- /dev/null +++ b/src/course/syllabus/developer/week11-project05-DOTNET-testing/overview.md @@ -0,0 +1,4 @@ +### Week of November 18th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md b/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md index ac0ecb7a..c2bd74ad 100644 --- a/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md +++ b/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md @@ -2,24 +2,28 @@ layout: schedule schedule: -monday: # - name: Build # start: 10:00 # end: 13:00 # type: project # - name: Thought of the Week # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 # type: personal-development # start: 14:00 # end: 14:45 # - name: Build # start: 14:45 # end: 17:45 # type: project # - name: Check out # start: 17:45 # end: 18:00 -tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c -wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project -thursday: # - name: Update READMEs # start: 10:00 # end: 10:15 # - name: Sprint Review # start: 10:15 # end: 11:45 # - start: 11:45 # end: 13:00 # name: Presentation prep # url: https://foundersandcoders.notion.site/In-House-Project-Presentation-e1936ce95a8041b9b8a93e5d4f638ff6 # - name: Project documentation # start: 15:30 # end: 16:00 -friday: + monday: # - name: Build # start: 10:00 # end: 13:00 # type: project # - name: Thought of the Week # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 # type: personal-development # start: 14:00 # end: 14:45 # - name: Build # start: 14:45 # end: 17:45 # type: project # - name: Check out # start: 17:45 # end: 18:00 + tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c + wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project + - name: Thought of the week. Healthy Working Relationships and Conflict Resolution + url: https://docs.google.com/presentation/d/1phpxhz6laAZcph84D04u02QaBEeKJ_U_1VLqDNV3hjo/edit#slide=id.g25ece6437ef_0_0 + start: 10:30 + end: 10:45 + thursday: # - name: Update READMEs # start: 10:00 # end: 10:15 # - name: Sprint Review # start: 10:15 # end: 11:45 # - start: 11:45 # end: 13:00 # name: Presentation prep # url: https://foundersandcoders.notion.site/In-House-Project-Presentation-e1936ce95a8041b9b8a93e5d4f638ff6 # - name: Project documentation # start: 15:30 # end: 16:00 + friday: -# - name: Progress Log Review + # - name: Progress Log Review -# start: 10:00 + # start: 10:00 -# end: 11:30 + # end: 11:30 -# type: expert-feedback + # type: expert-feedback -# - name: Consolidation day + # - name: Consolidation day -# start: 11:30 + # start: 11:30 -# end: 18:00 + # end: 18:00 -# --- + # --- diff --git a/src/course/syllabus/developer/week12-project05-DOTNET-deploy/overview.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/overview.md new file mode 100644 index 00000000..a5468e9d --- /dev/null +++ b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/overview.md @@ -0,0 +1,4 @@ +### Week of November 25th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md index ac0ecb7a..13b03dd6 100644 --- a/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md +++ b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md @@ -1,25 +1,28 @@ --- - layout: schedule schedule: -monday: # - name: Build # start: 10:00 # end: 13:00 # type: project # - name: Thought of the Week # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 # type: personal-development # start: 14:00 # end: 14:45 # - name: Build # start: 14:45 # end: 17:45 # type: project # - name: Check out # start: 17:45 # end: 18:00 -tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c -wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project -thursday: # - name: Update READMEs # start: 10:00 # end: 10:15 # - name: Sprint Review # start: 10:15 # end: 11:45 # - start: 11:45 # end: 13:00 # name: Presentation prep # url: https://foundersandcoders.notion.site/In-House-Project-Presentation-e1936ce95a8041b9b8a93e5d4f638ff6 # - name: Project documentation # start: 15:30 # end: 16:00 -friday: + monday: # - name: Build # start: 10:00 # end: 13:00 # type: project # - name: Thought of the Week # url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 # type: personal-development # start: 14:00 # end: 14:45 # - name: Build # start: 14:45 # end: 17:45 # type: project # - name: Check out # start: 17:45 # end: 18:00 + tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c + wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project + - name: Apprenticeship Training EPA + url: https://docs.google.com/presentation/d/1phpxhz6laAZcph84D04u02QaBEeKJ_U_1VLqDNV3hjo/edit#slide=id.g25ece6437ef_0_0 + start: 10:30 + end: 10:45 + thursday: # - name: Update READMEs # start: 10:00 # end: 10:15 # - name: Sprint Review # start: 10:15 # end: 11:45 # - start: 11:45 # end: 13:00 # name: Presentation prep # url: https://foundersandcoders.notion.site/In-House-Project-Presentation-e1936ce95a8041b9b8a93e5d4f638ff6 # - name: Project documentation # start: 15:30 # end: 16:00 + friday: -# - name: Progress Log Review + # - name: Progress Log Review -# start: 10:00 + # start: 10:00 -# end: 11:30 + # end: 11:30 -# type: expert-feedback + # type: expert-feedback -# - name: Consolidation day + # - name: Consolidation day -# start: 11:30 + # start: 11:30 -# end: 18:00 + # end: 18:00 -# --- + # --- diff --git a/src/course/syllabus/developer/projects/weekTFB-design/learning-outcomes.md b/src/course/syllabus/developer/week13-TFB-design/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/projects/weekTFB-design/learning-outcomes.md rename to src/course/syllabus/developer/week13-TFB-design/learning-outcomes.md diff --git a/src/course/syllabus/developer/week13-TFB-design/overview.md b/src/course/syllabus/developer/week13-TFB-design/overview.md new file mode 100644 index 00000000..b12653f2 --- /dev/null +++ b/src/course/syllabus/developer/week13-TFB-design/overview.md @@ -0,0 +1,4 @@ +### Week of December 2th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/projects/weekTFB-design/project.md b/src/course/syllabus/developer/week13-TFB-design/project.md similarity index 84% rename from src/course/syllabus/developer/projects/weekTFB-design/project.md rename to src/course/syllabus/developer/week13-TFB-design/project.md index 9328924f..666ac2cd 100644 --- a/src/course/syllabus/developer/projects/weekTFB-design/project.md +++ b/src/course/syllabus/developer/week13-TFB-design/project.md @@ -1,5 +1,9 @@ # Project +## Repository naming convention +Please name your repo following this template: +PROTFB_Project_Name + Your project in Design Week is to create a wireframe in [Figma](https://www.figma.com/) and test it with your Product Owners' user group. Take ideas from your Definition workshop and the sketches you did there. You can consider the ideas you came up with there as _low-fidelity prototypes_ and with Figma, you'll create a _high-fidelity prototype_. diff --git a/src/course/syllabus/developer/projects/weekTFB-design/resources.md b/src/course/syllabus/developer/week13-TFB-design/resources.md similarity index 100% rename from src/course/syllabus/developer/projects/weekTFB-design/resources.md rename to src/course/syllabus/developer/week13-TFB-design/resources.md diff --git a/src/course/syllabus/developer/projects/weekTFB-design/schedule.md b/src/course/syllabus/developer/week13-TFB-design/schedule.md similarity index 83% rename from src/course/syllabus/developer/projects/weekTFB-design/schedule.md rename to src/course/syllabus/developer/week13-TFB-design/schedule.md index a1ad8c2b..ecbfe135 100644 --- a/src/course/syllabus/developer/projects/weekTFB-design/schedule.md +++ b/src/course/syllabus/developer/week13-TFB-design/schedule.md @@ -24,6 +24,10 @@ schedule: start: 9:45 end: 13:00 type: project + - name: CIAG - Presentation Feedback + url: https://docs.google.com/presentation/d/1JIG5JlBbFkYdDxFMmhu07FHkFdnCTSEau2n6AVxzqpY/edit#slide=id.g29c2f2d9915_0_75 + start: 10:30 + end: 10:45 thursday: # - name: Sprint planning diff --git a/src/course/syllabus/developer/projects/weekTFB-design/spikes.md b/src/course/syllabus/developer/week13-TFB-design/spikes.md similarity index 100% rename from src/course/syllabus/developer/projects/weekTFB-design/spikes.md rename to src/course/syllabus/developer/week13-TFB-design/spikes.md diff --git a/src/course/syllabus/developer/projects/TFB-build-1/learning-outcomes.md b/src/course/syllabus/developer/week14-TFB-build/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-1/learning-outcomes.md rename to src/course/syllabus/developer/week14-TFB-build/learning-outcomes.md diff --git a/src/course/syllabus/developer/week14-TFB-build/overview.md b/src/course/syllabus/developer/week14-TFB-build/overview.md new file mode 100644 index 00000000..e9a0c65d --- /dev/null +++ b/src/course/syllabus/developer/week14-TFB-build/overview.md @@ -0,0 +1,4 @@ +### Week of December 9th + +### This week is not updated to FAC30 + diff --git a/src/course/syllabus/developer/projects/TFB-build-1/project.md b/src/course/syllabus/developer/week14-TFB-build/project.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-1/project.md rename to src/course/syllabus/developer/week14-TFB-build/project.md diff --git a/src/course/syllabus/developer/projects/TFB-build-1/resources.md b/src/course/syllabus/developer/week14-TFB-build/resources.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-1/resources.md rename to src/course/syllabus/developer/week14-TFB-build/resources.md diff --git a/src/course/syllabus/developer/projects/TFB-build-1/schedule.md b/src/course/syllabus/developer/week14-TFB-build/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-1/schedule.md rename to src/course/syllabus/developer/week14-TFB-build/schedule.md diff --git a/src/course/syllabus/developer/projects/TFB-build-1/spikes.md b/src/course/syllabus/developer/week14-TFB-build/spikes.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-1/spikes.md rename to src/course/syllabus/developer/week14-TFB-build/spikes.md diff --git a/src/course/syllabus/developer/projects/TFB-build-2/learning-outcomes.md b/src/course/syllabus/developer/week15-TFB-build/learning-outcomes.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-2/learning-outcomes.md rename to src/course/syllabus/developer/week15-TFB-build/learning-outcomes.md diff --git a/src/course/syllabus/developer/week15-TFB-build/overview.md b/src/course/syllabus/developer/week15-TFB-build/overview.md new file mode 100644 index 00000000..b288fd13 --- /dev/null +++ b/src/course/syllabus/developer/week15-TFB-build/overview.md @@ -0,0 +1,6 @@ +### Week of December 16th + +### This week is not updated to FAC30 + + + diff --git a/src/course/syllabus/developer/projects/TFB-build-2/project.md b/src/course/syllabus/developer/week15-TFB-build/project.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-2/project.md rename to src/course/syllabus/developer/week15-TFB-build/project.md diff --git a/src/course/syllabus/developer/projects/TFB-build-2/resources.md b/src/course/syllabus/developer/week15-TFB-build/resources.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-2/resources.md rename to src/course/syllabus/developer/week15-TFB-build/resources.md diff --git a/src/course/syllabus/developer/projects/TFB-build-2/schedule.md b/src/course/syllabus/developer/week15-TFB-build/schedule.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-2/schedule.md rename to src/course/syllabus/developer/week15-TFB-build/schedule.md diff --git a/src/course/syllabus/developer/projects/TFB-build-2/spikes.md b/src/course/syllabus/developer/week15-TFB-build/spikes.md similarity index 100% rename from src/course/syllabus/developer/projects/TFB-build-2/spikes.md rename to src/course/syllabus/developer/week15-TFB-build/spikes.md From 313e788b2cafa1cd0b56fbc696179d7511b2bf39 Mon Sep 17 00:00:00 2001 From: Alexander Date: Sun, 8 Sep 2024 21:42:42 +0100 Subject: [PATCH 088/118] updated colors on schedule --- src/_data/defaultSchedule.yml | 36 +++++++++++--- .../week01-project01-basics/schedule.md | 7 ++- .../week02-project02-chatbot/overview.md | 2 + .../week02-project02-chatbot/schedule.md | 4 ++ .../week03-project03-server/schedule.md | 8 ++- .../week04-project03-frontend/schedule.md | 5 ++ .../week05-project03-test-deploy/schedule.md | 9 +++- .../week06-project04-databases/schedule.md | 1 + .../schedule.md | 1 + .../week08-project04-test-deploy/schedule.md | 3 +- .../week10-project05-DOTNET-intro/schedule.md | 1 + .../schedule.md | 1 + .../schedule.md | 1 + src/styles/partials/timetable.css | 49 ++++++++++++++++++- 14 files changed, 116 insertions(+), 12 deletions(-) diff --git a/src/_data/defaultSchedule.yml b/src/_data/defaultSchedule.yml index 9d13ac70..843a29f1 100644 --- a/src/_data/defaultSchedule.yml +++ b/src/_data/defaultSchedule.yml @@ -2,14 +2,16 @@ monday: - start: 9:30 end: 9:45 name: Check in + type: checkin - start: 9:45 end: 10:30 name: Exec program + type: exec-program - start: 10:30 - end: 11:15 + end: 11:00 name: Workshop group discussion type: workshop - - start: 11:15 + - start: 11:00 end: 12:00 name: Workshop class discussion type: workshop @@ -20,6 +22,7 @@ monday: - start: 13:00 end: 14:00 name: Lunch + type: lunch - start: 14:00 end: 15:00 name: Sprint planning @@ -36,9 +39,11 @@ tuesday: - start: 9:30 end: 9:45 name: Check in & Mentor Intro + type: checkin - start: 9:45 end: 10:30 name: Exec program + type: exec-program - start: 10:30 end: 11:00 name: Project @@ -50,6 +55,7 @@ tuesday: - start: 13:00 end: 14:00 name: Lunch + type: lunch - start: 14:00 end: 15:00 name: Office Hours @@ -70,9 +76,11 @@ wednesday: - start: 9:30 end: 9:45 name: Check in & Mentor Intro + type: checkin - start: 9:45 end: 10:30 name: Exec program + type: exec-program - start: 10:30 end: 13:00 name: Project @@ -80,6 +88,7 @@ wednesday: - start: 10:30 end: 10:45 name: Thought of the Week + type: thought - start: 10:45 end: 13:00 name: Project @@ -87,6 +96,7 @@ wednesday: - start: 13:00 end: 14:00 name: Lunch + type: lunch - start: 14:00 end: 15:00 name: Office Hours @@ -107,9 +117,11 @@ thursday: - start: 9:30 end: 9:45 name: Check in + type: checkin - start: 9:45 end: 10:30 name: Exec program + type: exec-program - start: 10:30 end: 11:00 name: Class Code Review @@ -120,13 +132,16 @@ thursday: - start: 12:00 end: 13:00 name: Presentation Prep + type: presentation url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 - start: 13:00 end: 14:00 name: Lunch + type: lunch - start: 14:00 end: 15:00 name: Presentations + type: presentation - start: 15:00 end: 16:00 name: Next Week Intro @@ -140,33 +155,42 @@ thursday: friday: - start: 9:30 end: 9:45 - name: Check in + name: Online Check in + type: checkin + url: https://us02web.zoom.us/j/8465567424 - start: 9:45 end: 10:30 - name: Progress Log + name: Workshop type: workshop - url: https://github.com/fac30/Progress-Log - start: 10:30 end: 11:00 name: Workshop + type: workshop - start: 11:00 end: 12:00 name: Workshop + type: workshop - start: 12:00 end: 13:00 name: Workshop + type: workshop - start: 13:00 end: 14:00 name: Lunch + type: lunch - start: 14:00 end: 15:00 name: Workshop + type: workshop - start: 15:00 end: 16:00 name: Workshop + type: workshop - start: 16:00 end: 17:00 name: Workshop + type: workshop - start: 17:00 end: 18:00 - name: Workshop + name: Progress Log + url: https://github.com/fac30/Progress-Log diff --git a/src/course/syllabus/developer/week01-project01-basics/schedule.md b/src/course/syllabus/developer/week01-project01-basics/schedule.md index 206d8a37..1394949a 100644 --- a/src/course/syllabus/developer/week01-project01-basics/schedule.md +++ b/src/course/syllabus/developer/week01-project01-basics/schedule.md @@ -25,6 +25,7 @@ schedule: tuesday: - name: Check in + type: checkin start: 9:30 end: 9:45 @@ -35,13 +36,15 @@ schedule: wednesday: - name: Check in + type: checkin start: 9:30 end: 9:45 - name: Though of the week. Psychological safety + type: thought start: 10:30 end: 10:45 - url: https://docs.google.com/presentation/d/16aYTQXPnceAxQWrLTuQUMekCJcQ9xt1uJhSGjD2GyLE/edit#slide=id.g2ded454d323_0_103 + thursday: - name: HackMD Introduction @@ -50,11 +53,13 @@ schedule: start: 11:00 end: 11:30 - name: Presentation Prep + type: presentation url: https://foundersandcoders.notion.site/Project-presentations-d8787b65e78a4314b62475552e7989e9 start: 11:30 end: 13:00 - name: Speaker (Ivan - AI.) + type: speech start: 16:30 end: 17:30 friday: diff --git a/src/course/syllabus/developer/week02-project02-chatbot/overview.md b/src/course/syllabus/developer/week02-project02-chatbot/overview.md index f3eddea2..1ae74607 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/overview.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/overview.md @@ -1,5 +1,7 @@ ## Week of September 16th +### This week is not updated to FAC30 + Learn how to manage asynchronous tasks and send HTTP requests using JavaScript. ### Workshops diff --git a/src/course/syllabus/developer/week02-project02-chatbot/schedule.md b/src/course/syllabus/developer/week02-project02-chatbot/schedule.md index 0b000563..3b892b90 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/schedule.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/schedule.md @@ -5,20 +5,24 @@ schedule: tuesday: - name: Check in + type: checkin start: 9:30 end: 9:45 wednesday: - name: Check in + type: checkin start: 9:30 end: 9:45 - name: Though of the week. Giving Feedback Effectively + type: thought start: 10:30 end: 10:45 thursday: - name: Speaker (Shaughn) + type: speech start: 16:30 end: 17:30 friday: diff --git a/src/course/syllabus/developer/week03-project03-server/schedule.md b/src/course/syllabus/developer/week03-project03-server/schedule.md index 179fd76e..24f902c0 100644 --- a/src/course/syllabus/developer/week03-project03-server/schedule.md +++ b/src/course/syllabus/developer/week03-project03-server/schedule.md @@ -22,17 +22,23 @@ schedule: tuesday: wednesday: - name: Though of the week. Extra-curricular and learning opportunities + type: thought url: https://docs.google.com/presentation/d/1V3JDk5_qO2xM9_2fBMWeZuf4UCgIZFIgZ3l8hrX76Hc/edit#slide=id.g25e05124422_0_0 start: 10:30 end: 10:45 thursday: - name: Thought of the week (British values) + type: thought url: https://www.notion.so/foundersandcoders/Personal-Development-91fe75c7e2cc4f989954108729a2c834 - type: personal-development start: 9:45 end: 10:00 + - name: Speaker (Nich) + type: speech + start: 16:30 + end: 17:30 + # - name: Reading for next topic # start: 15:30 # end: 16:00 diff --git a/src/course/syllabus/developer/week04-project03-frontend/schedule.md b/src/course/syllabus/developer/week04-project03-frontend/schedule.md index c98f5777..c2d24dc9 100644 --- a/src/course/syllabus/developer/week04-project03-frontend/schedule.md +++ b/src/course/syllabus/developer/week04-project03-frontend/schedule.md @@ -24,6 +24,7 @@ schedule: tuesday: wednesday: - name: Though of the week. CIAG - Career paths and freelance work + type: thought url: https://www.notion.so/foundersandcoders/Professional-progression-support-7a3c713bf582457fb0f7d5717df8aff4 start: 10:30 end: 10:45 @@ -32,6 +33,10 @@ schedule: # start: 15:30 # end: 16:00 # url: /course/syllabus/developer/database/topicIntro/ + - name: Speaker (Senior Dev Alphonso) + type: speech + start: 16:30 + end: 17:30 friday: - name: Cypress Learning url: https://learn.cypress.io/#courses diff --git a/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md b/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md index e394b5da..03faf928 100644 --- a/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md +++ b/src/course/syllabus/developer/week05-project03-test-deploy/schedule.md @@ -90,8 +90,9 @@ schedule: # - start: 17:45 # end: 18:00 # name: Check-out - - - name: Though of the week. Safeguarding - Digital and financial wellbeing + + - name: Though of the week. Safeguarding - Digital and financial wellbeing + type: thought url: https://docs.google.com/presentation/d/1ttovT29sBRG_TFcBDpaNy_BKaL-CW95mZbKZltqEeJc/edit#slide=id.g25e05124422_0_0 start: 10:30 end: 10:45 @@ -134,6 +135,10 @@ schedule: # - start: 17:45 # end: 18:00 # name: Check-out + - name: Speaker (Laurie) + type: speech + start: 16:30 + end: 17:30 friday: - name: Database workshop url: /learn/database diff --git a/src/course/syllabus/developer/week06-project04-databases/schedule.md b/src/course/syllabus/developer/week06-project04-databases/schedule.md index 74a02854..dc8444c5 100644 --- a/src/course/syllabus/developer/week06-project04-databases/schedule.md +++ b/src/course/syllabus/developer/week06-project04-databases/schedule.md @@ -10,6 +10,7 @@ schedule: tuesday: wednesday: - name: Though of the week. Diversity in Tech + type: thought url: https://docs.google.com/presentation/d/1-mpW5zfrpBUdkk7DCctWZjcLzDD9VGrx-X4fF469rsg/edit#slide=id.g25e05124422_0_0 start: 10:30 end: 10:45 diff --git a/src/course/syllabus/developer/week07-project04-authentication/schedule.md b/src/course/syllabus/developer/week07-project04-authentication/schedule.md index aa6f6c2a..82844254 100644 --- a/src/course/syllabus/developer/week07-project04-authentication/schedule.md +++ b/src/course/syllabus/developer/week07-project04-authentication/schedule.md @@ -27,6 +27,7 @@ schedule: tuesday: wednesday: - name: Though of the week. Extra-curricular and learning opportunities 2 + type: thought url: https://docs.google.com/presentation/d/1GwYX_NLH2KayD2QIpKlJnUQCO8ohvF_wY8RO-fMAu6w/edit#slide=id.g25e05124422_0_0 start: 10:30 end: 10:45 diff --git a/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md b/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md index 702d9e50..5046a8df 100644 --- a/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md +++ b/src/course/syllabus/developer/week08-project04-test-deploy/schedule.md @@ -23,7 +23,8 @@ schedule: # end: 17:45 tuesday: wednesday: - - name: Though of the week. Misinformation, Disinformation and the threat to Democracy + - name: Though of the week. Misinformation, Disinformation and the threat to Democracy + type: thought url: https://docs.google.com/presentation/d/1BxTrWRsPldIpbgRF8dm5FqCFmeoBil2Be0ZUu7HGEgE/edit#slide=id.g25e05124422_0_0 start: 10:30 end: 10:45 diff --git a/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md b/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md index ff531244..5659d746 100644 --- a/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md +++ b/src/course/syllabus/developer/week10-project05-DOTNET-intro/schedule.md @@ -30,6 +30,7 @@ schedule: # type: project wednesday: - name: Object Oriented Programming + type: thought url: https://docs.google.com/presentation/d/1uj464EeKvm38dJzVUH7Y3c3rYNB_6zSbqVYbNtTAJtQ/edit#slide=id.g2ea5f80184e_0_34 start: 10:30 end: 10:45 diff --git a/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md b/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md index c2bd74ad..c28dd3fc 100644 --- a/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md +++ b/src/course/syllabus/developer/week11-project05-DOTNET-testing/schedule.md @@ -6,6 +6,7 @@ schedule: tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project - name: Thought of the week. Healthy Working Relationships and Conflict Resolution + type: thought url: https://docs.google.com/presentation/d/1phpxhz6laAZcph84D04u02QaBEeKJ_U_1VLqDNV3hjo/edit#slide=id.g25ece6437ef_0_0 start: 10:30 end: 10:45 diff --git a/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md index 13b03dd6..a53f10b6 100644 --- a/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md +++ b/src/course/syllabus/developer/week12-project05-DOTNET-deploy/schedule.md @@ -5,6 +5,7 @@ schedule: tuesday: # - name: Build # start: 10:00 # end: 12:45 # type: project # - name: Role circles # start: 12:45 # end: 13:00 # url: https://foundersandcoders.notion.site/Role-circles-a2371aab24f34955a69904b87ffc1f05 # - name: Build # start: 14:00 # end: 16:00 # type: project # - name: Update READMEs # start: 16:00 # end: 16:15 # - name: Team code review # start: 16:15 # end: 17:45 # url: https://foundersandcoders.notion.site/Code-Reviews-5c3b987ed1204e46b4c738da538a758c wednesday: # - name: Web Science # start: 10:00 # end: 11:00 # type: presentation # - name: Build # start: 11:00 # end: 13:00 # type: project # - name: Build # start: 14:00 # end: 17:45 # type: project - name: Apprenticeship Training EPA + type: thought url: https://docs.google.com/presentation/d/1phpxhz6laAZcph84D04u02QaBEeKJ_U_1VLqDNV3hjo/edit#slide=id.g25ece6437ef_0_0 start: 10:30 end: 10:45 diff --git a/src/styles/partials/timetable.css b/src/styles/partials/timetable.css index da5e3c31..115d4f11 100644 --- a/src/styles/partials/timetable.css +++ b/src/styles/partials/timetable.css @@ -1,3 +1,20 @@ +:root { + --stripe-pattern-25: repeating-linear-gradient( + 25deg, + rgba(0, 0, 0, 0.1) 0px, + rgba(0, 0, 0, 0.1) 1px, + var(--stripe-color, transparent) 1px, + var(--stripe-color, transparent) 30px + ); + --stripe-pattern-135: repeating-linear-gradient( + 135deg, + rgba(0, 0, 0, 0.1) 0px, + rgba(0, 0, 0, 0.1) 1px, + var(--stripe-color, transparent) 1px, + var(--stripe-color, transparent) 30px + ); +} + .timetable { display: grid; } @@ -59,11 +76,22 @@ --sat: 80%; } +.entry.exec-program { + --hue: 170; + --sat: 90%; +} + .entry.presentation { - --hue: 20; + --hue: 30; --sat: 60%; } +.entry.thought { + --hue: 25; + --sat: 80%; + background-image: var(--stripe-pattern-25); +} + .entry.challenge { --hue: 0; --sat: 60%; @@ -81,6 +109,25 @@ .entry.expert-feedback { --hue: 100; --sat: 60%; + background-image: var(--stripe-pattern-25); +} + +.entry.checkin { + --hue: 0; + --sat: 60%; + background-image: var(--stripe-pattern-25); +} + +.entry.lunch { + --hue: 110; + --sat: 70%; + background-image: var(--stripe-pattern-25); +} + +.entry.speech { + --hue: 200; + --sat: 100%; + background-image: var(--stripe-pattern-25); } .entry dt { From f4a4c929f86ac9de082684ff41bf57fdfa7d1569 Mon Sep 17 00:00:00 2001 From: Alexander Date: Sun, 8 Sep 2024 22:49:32 +0100 Subject: [PATCH 089/118] Integrated old testing into week02 --- .../learning-outcomes.md | 4 -- .../week02-project02-chatbot/employability.md | 9 ++++ .../week02-project02-chatbot/homework.md | 16 +------ .../learning-outcomes.md | 12 +++-- .../week02-project02-chatbot/overview.md | 25 +++++------ .../week02-project02-chatbot/project.md | 34 ++++++++++++-- .../week02-project02-chatbot/resources.md | 13 ++++-- .../week02-project02-chatbot/schedule.md | 7 ++- .../week02-project02-chatbot/spikes.md | 12 ++++- .../foundation/full-stack/homework.md | 2 +- .../foundation/testing/employability.md | 7 --- .../syllabus/foundation/testing/homework.md | 22 --------- .../foundation/testing/learning-outcomes.md | 20 --------- .../syllabus/foundation/testing/project.md | 26 ----------- .../syllabus/foundation/testing/schedule.md | 45 ------------------- .../syllabus/foundation/testing/spikes.md | 22 --------- 16 files changed, 87 insertions(+), 189 deletions(-) diff --git a/src/course/syllabus/developer/week01-project01-basics/learning-outcomes.md b/src/course/syllabus/developer/week01-project01-basics/learning-outcomes.md index 7bc9b618..f827a2e6 100644 --- a/src/course/syllabus/developer/week01-project01-basics/learning-outcomes.md +++ b/src/course/syllabus/developer/week01-project01-basics/learning-outcomes.md @@ -1,7 +1,3 @@ -## Learning Outcomes - -You should be focusing on meeting these learning outcomes over the three-week period. You will be tested on your learning during weekly quizzes. - ## Accessibility - [ ] Structure a site using semantic HTML to aid accessibility diff --git a/src/course/syllabus/developer/week02-project02-chatbot/employability.md b/src/course/syllabus/developer/week02-project02-chatbot/employability.md index 2a65b07d..c0763ed2 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/employability.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/employability.md @@ -3,3 +3,12 @@ - Introduce the importance of building an online presence and ‘learning in public’ - Discuss the benefits of maintaining an up-to-date LinkedIn profile + +### Introduction to CVs and the Elevator pitch + +- Understand the importance of building and maintaining an up-to-date CV +- Understand the the concept of an ‘elevator pitch’ +- Learn best practices when pitching yourself + + + diff --git a/src/course/syllabus/developer/week02-project02-chatbot/homework.md b/src/course/syllabus/developer/week02-project02-chatbot/homework.md index f41ef7b7..91dc2c5b 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/homework.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/homework.md @@ -2,20 +2,6 @@ This is a guide to what you should be doing for homework each week. Please reach out to your CFs if you are unsure of what to prioritise between sessions. -During this module you should be working on: [Execute Program: Javascript Concurrency](https://www.executeprogram.com) - - We expect you to complete Modern Javascript Concurrency (all levels) by the end of Week 6 - -### Week 4 - - Complete LinkedIn profile -- Complete [Node & npm introduction workshop](/workshops/node-npm-intro/) - -### Week 5 - -- Project work -- Complete projects ahead of Week 6 code reviews - -### Week 6 -- Complete the Intro to testing, Build a testing library, Unit testing, Integration testing and TDD workshops ahead of Week 7 +- Complete the Express and Dev Tooling workshops \ No newline at end of file diff --git a/src/course/syllabus/developer/week02-project02-chatbot/learning-outcomes.md b/src/course/syllabus/developer/week02-project02-chatbot/learning-outcomes.md index 539f4985..16c0d9ca 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/learning-outcomes.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/learning-outcomes.md @@ -1,7 +1,3 @@ -## Learning Outcomes - -You should be focusing on meeting these learning outcomes over the three-week period. You will be tested on your learning during weekly quizzes. - ## JavaScript - [ ] Write code that executes asynchronously @@ -18,3 +14,11 @@ You should be focusing on meeting these learning outcomes over the three-week pe - [ ] Use environment variables for managing secrets and sensitive keys in Node.js - [ ] Use npm to manage project dependencies and scripts in a Node.js environment. +## Testing + +- [ ] Check that passing a given input into our tests returns the expected output +- [ ] Write tests to mimic the behaviour of a user performing different actions +- [ ] Design functions for common testing patterns, like checking for matches, equality or inequality +- [ ] Organise tests using descriptive names and groupings to clarify their purpose and outcomes +- [ ] Implement custom messages in test assertions to provide specific feedback for pass/fail outcomes +- [ ] Write modular, single-responsibility functions that are easy to test in isolation diff --git a/src/course/syllabus/developer/week02-project02-chatbot/overview.md b/src/course/syllabus/developer/week02-project02-chatbot/overview.md index 1ae74607..98b304be 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/overview.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/overview.md @@ -1,36 +1,35 @@ ## Week of September 16th -### This week is not updated to FAC30 - Learn how to manage asynchronous tasks and send HTTP requests using JavaScript. ### Workshops - [Node & npm introduction workshop](/workshops/node-npm-intro/). Repo name: Work07_Node_YourName +- [Intro to testing](https://fac-slides.netlify.app/slides/testing). Repo name: Work08_IntroTesting_YourName +- [Build a testing library](/workshops/learn-testing/). Repo name: Work09_TestLibrary_YourName +- [Unit testing workshop](/workshops/learn-unit-testing/). Repo name: Work10_UnitTesting_YourName +- [Integration testing workshop](/workshops/learn-integration-testing/). Repo name: Work11_IntegrationTesting_YourName +- [TDD workshop](/workshops/tdd-array-methods/). Repo name: Work12_DD_YourName ### Execute Program -- [Execute Program Everyday Typescript](https://www.executeprogram.com/courses/everyday-typescript) -#### Stretch -- [Execute Program Advanced Typescript](https://www.executeprogram.com/courses/advanced-typescript) +- [Execute Program Basic Typescript](https://www.executeprogram.com/courses/typescript-basics) -### Topics +### Topics [NOT UPDATED] - Q&A - JavaScript concurrency workshop review - Live code session: Introduction to commonJS modules -- Knowledge Quiz - Node & npm workshop review - Discord chatbot project introduction - Project development - Live code session: Javascript object methods - -- Project planning and development -- Knowledge Quiz - - - Project planning and development - Live code session: Introduction to testing - Live code session: Project code review - Project code reviews - Intro to testing, Build a testing library, Unit testing, Integration testing and TDD workshops -- Knowledge Quiz \ No newline at end of file +- Discord chatBot group user testing +- **Elevator pitch workshop** +- Live code session: Introduction to Express +- Project presentations +- Knowledge Quiz diff --git a/src/course/syllabus/developer/week02-project02-chatbot/project.md b/src/course/syllabus/developer/week02-project02-chatbot/project.md index 85c54c00..230f8603 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/project.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/project.md @@ -1,7 +1,33 @@ -You are going to create a chatbot that you will deploy in a Discord channel +1. You are going to create a chatbot that you will deploy in a Discord channel +[A-Discord-AI-Chatbot](https://foundersandcoders.notion.site/A-Discord-AI-Chatbot-2d60ae72f6ca4017aa8d567688b2770c?pvs=4) + +2. You are going to integrate testing into your Discord chatBot project. + +The following user stories are designed to guide you as you integrate testing into your Discord chatBot project. If there are some which are not appropriate to your project, you do not have to integrate these. You can create your own tests that are relevant to your project. + +### Possible user stories: +As a back-end developer, I want to... + +- verify Discord.js integration by creating a test function that creates a new Discord client + +- ensure that the OpenAI library is correctly integrated by creating a test function that attempts to use the OpenAI API to create a simple chat completion or query + +- test that my bot securely loads API keys from the .env file, confirming that no sensitive information is hard-coded + +- ensure that my bot initialises and logs into Discord successfully + +- simulate receiving a message and verify that my bot responds with a "hello" message, testing the message event listener's functionality + +- simulate commands directed at my bot to check if it accurately processes these commands from general messages + +- introduce faults or exceptions in bot interactions to verify that my bot's error handling mechanisms effectively manage and log errors + +- mock the process of sending responses back to the Discord channel, verifying that my bot formats and dispatches messages correctly + +- ensure my bot can send direct messages to users, testing the user.send() method's functionality + +- test my bot's ability to send multimedia responses under specified conditions, ensuring it can handle images, GIFs, and audio clips effectively ## Repository naming convention Please name your repo following this template: -PRO02_Name1_Name2_Name3_Name4 - -[A-Discord-AI-Chatbot](https://foundersandcoders.notion.site/A-Discord-AI-Chatbot-2d60ae72f6ca4017aa8d567688b2770c?pvs=4) \ No newline at end of file +PRO02_Name1_Name2_Name3_Name4 \ No newline at end of file diff --git a/src/course/syllabus/developer/week02-project02-chatbot/resources.md b/src/course/syllabus/developer/week02-project02-chatbot/resources.md index aac4e2d8..5b2ed47a 100644 --- a/src/course/syllabus/developer/week02-project02-chatbot/resources.md +++ b/src/course/syllabus/developer/week02-project02-chatbot/resources.md @@ -1,9 +1,5 @@ These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum. - -### Useful resources - - - [HTTP topic intro](https://fac-slides.netlify.app/slides/http/) - [How DNS Works](https://howdns.works) A comic explaining what happens when you type a URL into your browser. @@ -12,3 +8,12 @@ These resources are helpful extra reading that may clarify or enhance concepts y - [First-class Functions](https://oliverjam.es/blog/first-class-functions/) How functions and callbacks work in JavaScript. Based on a workshop from this week's curriculum. - [What the heck is the event loop anyway? (video)](https://2014.jsconf.eu/speakers/philip-roberts-what-the-heck-is-the-event-loop-anyway.html) + +- [TDD changed my life](https://medium.com/javascript-scene/tdd-changed-my-life-5af0ce099f80) +- [Behavior Driven Development and Functional Testing](https://medium.com/javascript-scene/behavior-driven-development-bdd-and-functional-testing-62084ad7f1f2) +- [Test Coverage](https://www.martinfowler.com/bliki/TestCoverage.html) + +- [Make Your Test Fail](https://kentcdodds.com/blog/make-your-test-fail) + Good testing practices so you can be confident your tests are working. +- [The advantages of the template element](https://codepen.io/oliverjam/pen/yLNEOQO?editors=1010) + A comparison of creating DOM elements manually versus using the `
  • -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 H=b`@#Oz&qY literal 0 HcmV?d00001 diff --git a/src/workshops/github-projects/images/github-projects-team.png b/src/workshops/github-projects/images/github-projects-team.png new file mode 100644 index 0000000000000000000000000000000000000000..cb0c3a6d0381d345a27972b0b63c3856f3ab31ab GIT binary patch literal 139264 zcmeFZcT`i|*FT7&A}FE)A|Rk59YKVE5Sk(&y>|i%(h}*tizrA}kQRFHAiad5A_fQn zDM=uN-UFeBUMBcFzTbDfYySAH-^{F;KjyAQlAGLn&pG?-v-kdd_CADZsw+}cF;S6` zkx?tXc&<%GcFBv3?1Jp&OQdg*^`K{@w{x!AiqFW(d+#ifPA=FyReMTCRvB~U=+#Bi zIi=GJBUduAYwc%$=irWougSK|Z$jl46SyZd=<=Ut2rs-8oDXUT|%lShI>fxlBV-ZefF8cT?2` zuk+_2!~f$eQHODdw)20l%3S1~YW~kz(%o<5e}B^KxjuRB?+Lf{<@LXx$>@YHkOcMb z5zcsC^6zJ|j;rTb|DL?H2qB~Sdm<|&_m<-CNoLZ$|MO-h@9Sm1R^s|ltyOi|0gfo0 zidkQG@_jusPuSu6doy?X`C#4>?U(c*`se$~#2)1!^aLBtei&WL0evtj|7mFY~wij=}^eL(OD%$dwKh};xLWkU4s2Khu?C>Jx zr||@7&%#F6S4o_s$_Y(4EX{`rUFQFG2@kE|9tVNJ<|@Oxk&~xS2p|AS8Q6I+6@AkkD0TSeD8hm?*nD0?E14Cr82!> zugN9Hzo)IWn%EUYgeS!K6(<4ueSCj{@S62i-SI@v{3pu$B{)>=&}<#h-Nc`(!jR`- z1>o5^BtpOcMlP3vux5wTl>kwJFuR~lf?+klXDypd51 zi^~960hUB`**T9Dg-mp6PU2vxeuB=9i(^ZpU#tfTq9Gk7r@wFe{(b)Bvxa$Su{u>p zKL^7k5B@ugp09Qet8Hwa2Vw(|VLLnaQ1{+saZlD$$e8%7J#xbBH@%2B94mRO5yiAx zEH%5f@cLj#Kjzf6hIMWHDY1AT(e@=S4f#~ff6_+}fG`s>^o%wm%>K0r0+-T&p4s}E z_nLCgOUg?(SZ+6g)FiWk@Wja9)b&@x*il4yhVtmT&IhejMhTSs1VYmQpV9wxv2jNU(515Fn=dn$Z_27kbYr;`%8zy{KTdh z6vIXrHt=V%#{>D%Y_6q^H;C0dV-sqxHI=f7_}KmA&>o){Jx^Ee?IYb$+`du5pj<5{ zUJ9@Ca00)v-|OcA7ev1gO?h(hU&}c;Fw275clz-h7`3(b7_!GMDT!kpY4C;}`v`4Z zUA-f|nG=1qmy;%qkxn@XlRB+NzbUmypwX4G(N!MY9b`qf1Y38Pe6GXkK}v401r)IDg9!igbp?yZ2GTw^mrq_4_o;YN;U z$zfry`g)J6IEc5Ntt@%4bdG2F_1;UzP+w~a%YP?IbI$?nSrQu;ms)ugW>Sw1V0pBD zt_;KsDQIaV7i05Ve--_dd2O8)H7c8}4d6^n{wJSBgVTuU|7q*?M@M+=Xu{NmTltg`JUyn;kU?PsJ@PAL6@f8CT zp(ylMHHyJh)p#95f%M=Pv(-WbtNm9*DS9{gLvBs*!FZQgdk6uZJLW7sZxil-;I8*U zUh)qdPS%t?sl9|(12)9v*Z7ZaAGgjZZ|j){LJ6A@vY;Ru+!FLFwJ665cx_?fh#>u zT<4*&2qv&C)rO`up%2NQLuosw*Q@H92%CpOQgPXY?27MO3(=m#!LPu>4<7hc>pDKZ|1)?Zh3TZtYa8MY0Tqe-6Z?IW|I; z4Dr{77EW18uC0zZre)TNUBxKa3@x76Sy&6(Q!LoMT$F;&F>S@xTC4Zg8dK>9!#$iD z6?PisW(>q<%0loFJUJ*%%j!ErM<@62GnFrm5=LX|mT0M49KTvO(h$J*#64J?$bA)B zM>Bv|x^d|-yRifybf9KqtgVnBBUzWBRUhmlCXrd>Dp}9;uWHbhyMlt@B#E@s$h^J) zl!R=iE>HF*4^3`d`#G!2+|^PZVw7=?oUO)OD%o9VdDc4rbS}EL*YHF$ctLUx{5^5! zWfGGl=k00azJwm zu)*@YK;LWX)!U<7wu`f<=65t&VVy2ya6vWaF zid%Sw!8vc0Tg{Z9ql)HccnYB6dL_Ef+5+P7d|-hCvY4rBKX2!YY9K!9dweah1s2j< zu4(-wdM_2E(P8!6J)hpdi}&_tep8VmUXm@KF)vlhO5(eAA<9M_QMaJ zPOmeB|DSxlQvLUexX+TJ03mDGen8ZpvJZpB6CAKXr$ z*yjc2E)|qD%o>!|?tr>e9$lcP^fxFMjhl}gSj5nq(sP(`fEt`6>>(b5M zddssk(ibgA(%1B5z1ofm5f`irp-X!VZcdbl8d}JRN-!Y*>lZaw8X#Y1>2Z(FT^G)@ zZJ0eTsZdF?X`8>}b@74lJ9@4GNpPC3CN^ZsXEUrhbVIAxB)nRux1_8b>gF6PEn;WZ zo+Dmw`o=tWBY0JF5O2VfeR{$EsK2XzPYh-fER_QP>$@{QnZ}aD)p^NVL3LoEeRO_2 zE3h^TtUam(eEd#g(4uBcNqNpqu0E@=k58ssPfLv}IngB^EM9cw<(w$NIhJ!4wYerf z^tH&NLII~W!PwQdW*Lh6V?ZBy|r~tfZFzwB^hs`v=s6h{2d`D#XS;|bJ&=nA9oHSig0^o zEtOAC{1T@S1ASuV&}`t?qc(KH zc9Y)HQ4sT0QrZX+Qs09!qhMId!K8`&9oL7&|3ntz)y{&Zcl#8V7uPv^U$90y4*kpu zM8&yE$}tJV!=h0=o)pDOMqKQQ6o8VzkC%E~6vocn9pYC>TueAW#lo(^@tKE5+Yk?Q z5fjTRIXn%)e*y|su_c%Y$1Cmmqv>(|4|VLRH!N!s3a-WbB3oqGb;jq6qr=e*F(Mm` z4UY#(`&zexjiH-azR6OFgBC5Pg~SunwBf>ymXqSoDpiiY|Mr}lU#u3U*VUy&GW+iw72H1YQ*CONr3E1^ELS>qfp00|CvboXqDDW8lSf;Ao4h=XS54~ zm|rb$_oL_5t`G(6#tgRF?sNXhjAMA=IM&7q{^W^G1J*1sG(ENM#l#x0yhf+@0{cTX z_^$n6_`V~=b{Rbq4E)uqF|;6f3~=snVA(Z&Uo#`I*Dhr9b8fQ6*UjdX()iWGiiL&T zV=qmLYe4o7w!}^}7<2k3mM$%3SF<}51*0Q83++a47=v=cB~2O;7IOrN8BO0{eI4M{OM={{?|30Yo6o5o<|FgV z(2JQSBEJ~_1xIhEr&UR@I`z49VL4j+hFRTJVtNxS7?@C_h7dt1{k0C7cdk!<@5ozt z@G#~?H^&E{WyQs(BjwIU%u8q+`)-MKF57$aWl`;42ruibL&E9D8*sMX+XA^)D%mct zPu`!Y=#BzH)_wc2q}Ul2cay%_E2@rz19JMg7P|hzL{DIjuJ%r<%riMIarS?PM5Y;; zdUEV}yt7=vYgCmR7kuUWo4{%|DiUZlZ6?7g)5h*%Pk(0R0D!-N7JwAWX_$N`vNuI zI~VKP!GC(WC$}0d>Tuw#L+u659#YOSqyGWElrG-2} zwfRxJ&3{N2&B#1fnf$f-H&rQM*k(6hnrW&=o=Rd}oo8n2MAOLl3B&pS2K5`;c|vRK z{7cIlj$A+!yQV34qeWc-<%%h20}QMCGBO@Y!{U^GOZwoyn4Zb|+B}6- z09~zbdgq#s!ui}rtT^d3-Htu*VjwfTi%qHR!Ay+I_Gm>Lz92(8-evLaH8zPw)kdfP zbd|&piS(awXn&6X7ic81|G`!z8nv@cO-=1|7Tq+!{tr6LV^!)Ui4J?KVnF!RgiUT3 zWBf-CWVN2t+W#HH|5aY=e|G5qA^Pn9Z{~l4bNv6l&}5x4_SqJ@1f5vMTaj*$BT7Dp zyHp?!!tm3xe|Vs`rGM5Qo#tV^e&hM;HrL;GZjN7Mr=Oi&D2h z(zV6|(iE5Q?1!&Jk>qxRS^5SGZ3E?@jxSeQN;=qVLWvhdIe~N@_|w{?w)`3SIeAsp zkflO|i!f1Gdr4vmcl8Y;XJFh5jXp0&Vtze$kJ3V+NmB8l_|mplS?Xf$zr%|-8{W6% zq)LS_^~Zr~W$tv-iH^oxfWtHotxn0Aa^6*!mrrAS8+Liv1pvoUA^{sGa zU^LqLxz}d@5Efa_&Hp=Ib+p#7{}5!yqZ_sA6f1qP$UT@z-B@|}kz#1-Kk-+C+l@2h z`GkGLxGA6_t`}BR`}NwZ;?-PQOPOu2ii~HDi}+msrJ{L8mfaQ9y!?jxKN#7x`||qi z6c$@c+>1N?ji_jSMZ;;oNs>Uqk)U+7s9L#N*~KD=S7Ds`Z|r_(RkIlP%B?xWQyW9u+sKb2+3%$eztr>r9=tKmYh07gMth4~S>V~Oqae=Ld@ydb zE4Z1uKiuA%hP@-KL7Pq}`g*=+P4&G8V-aP<^p~%LmY_PgT~|#%KK2F~0@S-)DbKf{ zG1TeT%U!5up0TAg+$vv*D8Q$k^B$V-jwybH-&lE$G-NG6vM#6A^d0onBDTARTQ6cm zsg{bf*3?n4wdjpWahYnGEz-+)jx^M!%oAM8gUR6Ow zGl{>7ykut3+tu08bph$WA3&WP+wU;O$W&D5PtydJ%j5t3DZirRNU>Uk_i+wG_R7F6 zcvaXF+!=X?sRFW}$=ST0dtc6Fgtg9%1Id~t5Tn|c#n?R0wAXJab%T*NkPFULO(PNQ zqCmy_;eM>jLgNtrJWF;TCDhXgs!qy}@#4s)+*%K_AYD8^?O#l3#W~ z*o<`)1PpVv(u3lMTEb&I>T;4N=3A8A*W}ELcZS~Y3s+z89MHZ=w|vKd5gsJ`5H`>B zWDFb1iueSjOQ{^27f}0sZ&#F$How(T1J#+(+fb0ePV5?G{mxR&x@z@kxl+JPNzr9^ z&zglZvPbe#k0^5Z(jYxOOUe7=rN+`fb3vyzG}$G8dX5GglkQ~RkZ%O2MsO$R|*!LHvAgMP?YyIAt85RzoD^K_J!}NMd{Y;b(3|&FWeO-X6R}H|=w8vj z8%IA9@V=^t$FC-Ve{oslX`O*9TZ4|AA6kS`>u|K&t_xGy>-E$f^`1CG?``!idz>-L zW+JRtKZU!dPZ#M`+X4w(XrNJ(1!s--6z;p3R<6;YX$1u7#jxF>zQsSCIl&|KTOe08665J;e=$<^kke(XKDjw>ia?qzepuxl{d!^{;$yKXX(w zOf-V9i!|rNZN?^KatM0r=cr4+1O7U(jk;5RSJ+mo;zN~QA$Ym4m{&@j5QxGrpTqG`yr{9p>kFROc)(sj_YHcSP$@C+Fko#mdilv> z+zp&i5KNzGnyafEp8->dJS)}Jx3Kp(aLNKs>(<+JPcA096YYeGvq5ivcyv*Csg^N|4PH&Li$-2>j%JYpi+!(~Wj1&O zkLzM4IbjbYo!(|>W{eUnSlXsnM5RhY$xQCY&J+2T!;i)bLv*jC$?Ln@$ z2G`t8^gaHZdBqZE-`c1(%15os6q*6xwg^mEI;!BIJ{77R>8=JTt zpB=5)RdP6T%k`NLo=^!&o5u=7${j{8G}EAT%EpjLBe=~FY3{1tN|T|@3r%p*-4E{G+QRc1x-nbyvm@&vO+#h*_=lGu<#Fz<@2OJ?IUt_k z)oOKxtSf`RX%cxn79^wGTprIoF1ucTgDi8;aI>w)y5xwt7A?zVKQVjFb7FS91Q}69 zp~6|(TN)Ib7gkwZMn4^W)f+%aD9I%lK`8fKwi~q5UW?i<^X5D)d0xS!*l3*j{(8y zFxb;-@S!SdY$NSwEi?`zx}E24tMKx%J!FN^bQhQXDH4L#B!WI2pUZy}442qXbT#mG zO+MOj>wtN>y@W^!NhwrDaDrdQJc97e37imU=;z9L78r_I*90*0Ny$F0vWHiga{uUY zwLGnTbShL&IEV#Sk!E7*Pe@{t;p|H^#x%W?S;!5m16>)))3LF!EtszbE+bL!ykZu> z_QsBS)-+$P)|C(XM8r3e(sz%|C<+4J(=*XnQj}FQvN30 zzN;y@`K)f*7jI-|hO2Ly8cHee?)aP}bS)%rX#|+b=jZlZ$ygg4;PDhlZUoi_R3jl8unP z+pAE?1^v?TfLGCDLJq`R^{H@=iF0JK-~BV=Q~X70MKf!053TYz%84ww8!PPvs)fc+ z)KZ9-X}SuLpIYqde|%0b%WM*o*L96Dy`ICU;i+e+7xV4KfpcCytMXw&h zj7XuY771%f+UdMn$3`VY{aKDlQFM!og;OF#YsOy=H4(HB`Sj zi#2K#KQ81-moZ&w=8Bn&pyhIA8IBijV?dbuIXh9_?qcwHhbrW192|tsX%uZ|xm>ldkTa3)YSC`Y z0iEaQzGx-cKRTE5go6+<_}<}ZxZkUE(KR78Q~n{^Ubj9jeOesSd<9oDyl**FpQrO6 zc<{9EAZ$c}`xj{CA07iH3&AeZzRjaz!7i0uVJL`WzUN+G3h$m-qtjUxM z*q0Rf5JJF1naS7`>_E#U$ZV(Bmn6%d4@%@x3LvwfvLWti4=Ew*=xkwVe%$$TUrkzR zma;oPt~Qn&eB^8%(0Z!=meYOAEvo6%15lxFl0{uQS1VniQUDWK54*wCh<|CVcHfa} zu+NLFDKEVz6=u#Da}0IlkytH9>GSG^v6op1bUtzp+p=~HGk)yw^?nLk|FAVjM4VSz z__sc%?&m&r6c@P*)!-fNqsSZh8~vI{pk%q&f&w3pB_pC}|7{p_1J6kKQySH9*ESnz z@$PX5C0^I*ykz?EVgqFLHmBDNYa5zphH=pub6G+L%-wku6L6$yts`))ZGHw|E$e#m ziP!~GvA7>1PS|G{+7hd4ydLG=_g$hB9^~;XHl;HGEVC4>uWau9cFC1aKFS?)lb^;6 zrg^`}`m6!o%>8WS__D@N+m!)1L<{;c8~D0x9?JDd#w2t2So=2sz5Sj8`f3j8p6;S< zJQbkr8eJt*kX(cay#jdk!dFj*am@$pzIu}*kD|!u;{tW)UE-c?!uS%#cuu`Z+E+oh zRQo)%WDQm=k`=m~as1QKbosjDsa%^u|IUI*d+MTT!Ca9pNG)kS7kk*T%(pD%nzO4+ zkBkc0@ZlQZu@u(0DOi)Xowy%ao-!3&y#|4aXYj%)`UWY?oyRmc zLN@oH^ViPrLp`Jcfmu0YJ&3G5+lsoOW4c=-&nRpp%R6tObX%|lCabwi)V}f>xI4Ku z)NF++!TR`(uOyxMx@teF3HtSu7bU1lZqA$rmsw#U_Kwo<^1G9efo*>0A)DuXzq*E> z|BI8UUAx&w1%*(^P)bapcZXX?+k{cn{ndf%TNmbO$%k_6h26c8yj8E7#%nfjt+@lD zoc*c~m5?-F23?^8!T48Yq0xqj>-{6dA$)ras@2(qI?aNq%$1U9=d*%*g3b}#bIE$4 zI-{Yj+F^wlG(8whx4-E6xbHc<&#V2QxkLG2q?u1Ih0s?Y5~kvkmQbKTK=~0akKyX- zk4NNItLhqC`~X8I={-%NPutTCGMr>E0d_d`UFfkzg@%pVUY2PcnTBCZG*$JE?@`-m zQOoiBjTxrlqIlz7Kcy?FkICNN|5jZDXuA#w>|}p&2C$e@YXsB%_jDagcL>ZGRusE7 zua+!2U^(Pg#)XyvvMOfo|Hb=8R@5#5hCMw7` zl3xrcHfyVm>uqC(GzM#FPyeFvqwu%`Dh)<}fcz=KW1;C)+tes6npt|GF6%H0+A+1P zc%2AfuVu^3PjR2=^gtUkHUsMTlBrq0VYagRGDtD^?#^aO`R{jY5@*`baQE`Mq2%G9 zIR1jY2Lbo04JsRBGa;E@7Y*F29^{z`h?yFT>1(_`R9Nd1XO2h zM|OY$FXY!Wy$dv=8vLY=EDJoM6`5hnpWKDLINfcDFT@yohQc=e@Pj&p5|xeW zP>4%H0f@%#7gxV>Y{s*8-=?Z2slw=c+Sn!89ghS#;deV)4r+W4?=v#Aq(uKS>E=M6gudvs8}_>?bk}vqC~>oO<`w|_Oo#Y* z509rF8m1nq|J-J@g5*rPs*7q}sPIXQx#DzfPZB8@uf|CG9ToF!itZv0-R#YdgVJ~< zUAJF-IXp)t17H&YumJ*6AhTb4PE<(27Y{B|SDiNjarNDo?LP6l77x8+3{Ihka)J+2 z7DiUE-Ltr7kG;2cO}}Y3Ua&Hb9wH~WUcvVCr_QZf3bh^nMx4;l*J43@oG(bkRUzxe z=4fa$cXdYQ+Z490LN$=nEAaT^nB7&4p{z(IIU_**4rsL$f~_8P|FdA9nr@zBrTrvy zymUK1kj1m?4hd|*mP7~JdS^6F+F1{1yngoz58|wlB``-;ot@MR-apvf4y;EChUJBc z)@_e2-U&m!&uSs&$8f!+ZS!sCd*l?sgsC!f@w0ehR!KR}0vH;GF*DN;QbLE3f$ybW zALKh91Ul0UHetoe&%ZN09(@m>sdZd=px`Tr7&(wZ0@Q52*p+>bxCQ=EEk&O|xD;I7 z8pJ}3-gPlSczYr z$$5vBENYBnt%2;$bK-03x7ujbPQ%z94n`KFIgj3JImWjUAlFmeqX1y^b87pzc8{v) zV680%e40aVgV3D2nkdc4@H@KwZU*S1pBQN;O7M^ldx5uL=#63u&Y!cm)118huj$|^ z2Ma--dn$u%ENU|GTZ*Gd>cg9EaM$oRvyr)6JOOoaXBpJD_oK=B9+tn1q#RB4Yf(ay-pHwwY0xP>s2s2MmEAxj=BfMEhc|>g}i8S>&yl6mcmeaaTFCm_rYp?!T z?rqWfeHQVg8QOMNf+GF#tidn9s){V5D})!c;c+S@epUTcmPO4Ho)`pn;4F*Zh2%_0`=tTwQIw z-^Hf7g`B}WEnxk1LPmKIxf*RjuUE$-qCZCBv=o%j$QIRKsFef2Bg3GTlIoNZ@RCqq zgX?26+Dq4dM_#Gyk#5Or;xHi4K8OGS zZ`^w592i~Ql2ec}??l4`o{q&;09~-5%ZYZYH5*2|S?-{X=dTO9#r?&tA7SqH@ptas zIfVf6VN1@~H}>t3Gm~RQJMKn5HaGCTpii~&QXR`kh7-cJz3oOxR%bz(|77FUot=~d z5{&2d=)X7`1r&#Wmr>XPCfrJ-QDgg6Q286fKl#>mEtqqXv2J)vi zR+#hdOG6{9KDg6{@tTt`LBlsc_8nU-tY8z2=2!}7VDO;3o88Qc~$qYOAdu z_3DY;O4S_Qms*ZW*9TgziXQq~SbM3yOdc{Dl|MxtZqm>wokvv2=w=&?rX7NxGK`a; zA^dGwpoQbk2s}D|V%TjKW!_Sp$P7Mo;}|x zDf^iOjbrJ$+N>1EAPc}{h{Nq!biwb73>6Ptx5|AitCQp7Tn>X7 z7r}peK};~eqd-j(I%H(>9g)MOF|QxINs5bMO8<36+cDme$lW`g8+YyVu0J5Be#4yA zImN~e9y23BBc^6$6{+%E_bVc=_6XoHkFN%S{_;OhmY7_0C@|#r4+ja$ObmQ2GEY^c zSxckEsC!}Penbn(a(33wKD4^%I~_2;+QEZ$@dfcH$!&|#b=$hn1OGUmtYzKkaDDt1 zveYW0oFk3nU#m|dcyc?3%}0Bie!f8sa0(Z`*M5h3Mbyx-7nJ?}7#=^* z_*}VOdSV66nB%tgkQ&tvuVX}=3Pc@w1zE(E?#?%?+yI}xK)2GJVf@TOSPv6vhnDBq zjft~#r4Nr#5Yu42y84PWwi)VBP5xB<5u8B>0cW|)+weIYyPNq#)GrgyqA2byzPzcG z3W{LIf3{{?M45RFS6=}vWIcj)eP%^BOP-F|OTS6ammD`WC=HM+gSE~b2`~G3bf2fT zllX>uZ-`P95j#)<>;iKOr|Kb-S7QQwOX|>_3{Buc@)#g8>ffyBw|k`2j^`MVBM~Nv zuHrC4Bs`k)s6ACQ>*EwNSQb?Z7d>8oeR;5O?h2~jr*yn@Y{WsCeX~pt`nxP-z^~NN zHY1FQNkmpo(!n&+^s5GWJFQ5gB`|8ccqDF1gl&`?L~`aLqZiHl(P+x&D-e!cU5m4^w6-7o$y(b^4OT}XWLO^ z{+kzxfqTJF7>RuxwvUg&a3N+y+G}*ut7O?J8iRr2!>0)f{%^n$7kFIWMC$i?){>w0 ziVUKURH>W4+udvzHPUEqkPTJ8Sae(xK?n0I9^bH?@GG|oZLFl+SqK@I(#mMILppxf zm70Q1%PC4h>UX6zXiKYhB>aGbt6qD*W0x3_nzlEW6 zSwYm7%(TbRL*l8Mdr{Z?5}6@}!pS*eq0vs@%7$S=&2E64s~DSsY}pRpqTVqe0-7kE ztCmjhlWjIoO>61?f`qTu&`0I*IM7`ihO+qliR8@r@S1L@dqXA8Sw2wGP)ZW=EvffC za4b(O=jIn<&LNcO;RLW)i_u^tOAt7BM@ul~_j`9Vtis;0OveDl9Y3-e;4s(=HR^Q; z28{Hyfg!%k#IGLR8x@L0a1bQ*S@O-c2>qkaF2$=gdJ{SRNs!T90%-Q&zqXdqk%~ye z>TpR=V15h>E!jceN*|%Q%^f!CfJR<$4_7b;F2oL|4$spJHMbYyAUl&s4c?@HWx4np z%8|Qf*+iX_j7|V*`zISq#(i*>8qZO$hHz$Do|m$IWH&Q?W!3P<@tjRd?s3vHr-k#B z%h&VqXvjcaNBPx1YD{|ZyZbHfiYJn#&l-b6Hi9DWQ+VhW4%CY8oTlEP%g+>LC(e&$ zY5O!M^scXl{oOhFR#l|mBh1(0fEOTB^_(Y&KwLlrW-~+-$=NUQbtgw}O^$dgHvl!m zV6^cK0Tt0jsbJi1Q!&x1x;9c`DZo>{_0BTgrMEv6|CYANvjMyWoZ*3j1!&MgF@ici zzG;=5dPUi3q504uN}qMZAc};T^UTeO1dJX*u9VQ`9mFY#3!1$4?>O#i44qZK7-;2sN6(p6vaNm=WkpaD;&Qngf-#||G#HL5QBh{ow z{8uWZNBrM;;8tarW8u+(!29~lIZ6%4$a=Y4%Y_#1xUT+VrO2od@(hzg8d@n_#plSl zRp)VXYX9!Vpi78YRUev5G+)gnBjYwr4gN<~nuY?!WHENEq1Gd$v~IXKMZYfdKfh4P zeWqC-YMQYEovz&SeYAx8!rh?;Ap7>Aqwy?AARQmFUXU1f*#Z~DIIpuj!Ot0+Si9YXEwkxscSLg@%D z_*d$r$K?Lkp5cXY@*RklbGwRfs;>Tol)<2qm0r_!yn6BE$xvMy*06oU5-xH=2o!G= zShWjDw(d?cmd>}1p}b^o+V&K-yHd5)XN>WrKend0D3McyFxQPZ8B7&2_py71+X8#W zL-?)wEx}T@t&j_3PEU_E5q;{#Ud1fh20+?+pk-&pO%9c!*Ilu^TG_b*e6Iv5dq{%} zuaMb>FUhzaY_A<0leWqp?CPkWG)w4{jr%~9=rXLkGfW4B}MF@hk1F0z| zp@tsmij*ywcwfp^%d%vkgA?^RvTq&uBQrU#``^x5*;yI4Z}V}baKr_%&~Ed5;lv#= z@n(m@q+{wsdk@VlRv}b?ZeOz#EHdVa*9*IbD zOGQ8~J6`a*1CN27mjpmiRpwIO=$?(MWQ~V-qe{PIDKiAzx6d>@HcoBmmj+Ves2g#OjKPWG7I9BbBCrzcmxx|r$(`s+3L|i4si&@-V}(0# zIaxx%!pF-E$&=A`0mw(SeyW;q6MW^&PDxRRtAM@HjU3&$Lgp-oC_*W}#5N4%UW(Z! zF2^Ue%gF?Z5eN9gj#Wg26#18Q(CpgU7g|v?ubW8sq1YzRz5~ zzG?`wfR%}~^P-T$ZEucc7o+7Cj}aLZf@kVx;WhSraF{Q!N#?LoeJ22+tC*JVYOmmClUX{qb{v|% zjMjHAHWaR(PxBdoHu8*S#-*n}(L0tr{|uRa@XQrX)E3r3f4%jyLRpx|v|EF{)KJw7 z@O8`29$%{XI7zmD?0`HiaLYTq$o(Wc@t3-7+cz8cI3ckV1++Nq#+l zKU>ANWOJ-NTP}NS=yTWkEeQCJqb1ax$1r%Vb^*BIn z^feL_w*R_+&rV7vGnpl6WYe*lAAOYap~yK#32X6AH;6@Kg=a0(z+)+NM#O$NgV0xv zX#+VT$ETqB3w4L6uJ{^h$0W|y;ip0KFn5;-YZ?Cn<50s4gHr_}Bg_=oV`I#8?es;T zViTIrf0%8y2?~9)a=nIl(k_PrtnqJ^( zNKbQO95wkIJg(Do&IVUyIW1Y{dO%K9$~fiIvg-kGmG`V!j2ibjHL5PQRBZ&E6jjhd6%CUINeAhh0s{pn=;K!A1dFNw)1HFmq(zllY zm%O2J4KBh^rd4ZL}0 zEZfS}wCgHGK955|T<`V5@u6bxtxtf{>SSD)O9Qf01sRZtL&aCI_y!p_d@(uiAx&(2_Of5bR5BtXq6IjJ=}}0 zL|g6~gu8-YT=YySszv1E;}5acgd8pzD^k3Luew>2LPPc~Z&kINq9KIj*%vl_CSz&V zlbFOqD2I|{ql+qMA}IG7QeFxps{m&aN`ZQE>Ww4PKeHIL>1(9keA9mzVG6K4Vye-u z;MHzly-}WWIBF^48>cjzsq7hby2Gb-Tj)g^R#c~Yl5A<{9$`2=w*Sj;vM_0Pq3+Q8 z0-|O?9oTx;l|64oRW}^d!>s524p1=Q@8=L6zxF`*Id?;B+!2qG^YV-zjmb?bPpvO; zw=^KDKLoeCbH-5jvXhyh9ZyJ@HHObLz9{b9m>TLh)xmz_j$7F()mNhdjd??5aJ-R# zdrZunM+g$w1>gmwbkqDe~co7n9W($y(!IEm_c@V zJ(V^PJSxC`TX-#^aR=g{8pS&JCgsNJ1uxZ?@C$)Ghhw$gk}1wW2JI7oMv3Z!_KIYQ ztN8L062SQE*749saN*_qymp=Tq3;(22I_6GvIT6=<N4wTSv8ByunT&mDx(hGT1rQ!`$jCvQD2g?t};iG3~es z0{AUCbP|?1U=^wJU}v4&RkK;$(5_F#k@Eajz0(pbHjnB|~3H1mMm z{y$iI&#yk0t5)5q@L*Wyzlp2*ZFb&ocS}?T3Kt&b+0+^d(1J$yd2($?jOA^ z9TWZbtSGT`MB}!(_AVUynlSX%qIxH2w!eDeKTYjKX4s=LM^&c+gHno>m3Bn)^2oBX z&+g0lS5GnF5wE^#%{Zdx@Zs$7x1~abn-OliHGgnP zX2$)^>qnh+FVjxnglnT`x;^9WxdT@g6~C4b-fDH%oXQUSn*N7>X}FB=i%=a!z8hL{ zDOEL}WIVHjfPJVy<%U1V$hpNv1^JajmZ4keo(n$%FR6VB37A~wH#;s)eN6B6-tm?% z2$QGZ*l^Nxx(*J-iIYkg5k(FZS$ zEEsy@^xe`Ldaqz9wm-M=uJ)<#-Oc9D^5LY+W*Tvc&a%3A)+W!Ld#h!J9u#e0OM(aS?L?=3(;Kg#IBx z5_PoUp{ex>?!z*uSBOXKqvrw*b|pMqR0&8(B$s;GlX0Em0eTSYueI}lB+$>{!UO(j z+A#&+p}D=LeF*nF?1t^+_L5vwPh<+X#|pdUTu>GM6fe#M+u}+ehs0fu$-%uSoW{C~@_i7!;)FnN^zf&=T9WW&fazCgs%w#f;p{ae}NsTZSv% z*jGEe%4Y5Odv|D&^E}gFtjOo&=h?Mid%MXQwEgsw5m4H_Nrz7BT~5W2E-qE;p?Qcm_>vD~C{da_ zej%XBM{UP#woJ&nj|%u|X0F5gbpQ4Hk*876?X=6(YGNjn7yMNyVxq+QAk^M&qrUW1)r4vVeEt-LXdD7372x@05=wJZDSlU8F7%%#G*B51 znI1!uskx{yrYtmPrv%j12zz}D8=PKczJSL@0O?1Heip5yui3LZBm-P(Z8Wf_7Cu}M zTNwq-%tiYngbNXv`+bZVCq8ng)OFgsZTXfhn}J=}MG3E^X(MvkVX>D5|5qsef0nNY z+sqJ_BdfJ%J8vl^%G%SfK2s5qM3A`aHL1$^kho!T@8_40qSaPGXSLNqVV2rC2si#w zydL+fD7Y)RA$?XcGfYg@_2J_!y#1$33hCINs(T~;`+7vaO6)c~zc)`SoPS)}py8>s zV{o-(`M+_KWLk>Z`42Dol4Z|pmJj^T(WfQ$KD0T{Rn~SWGn*oh2OX_dQghEa;sohj z6+gIHqmXYt@O~g=Vdg#g+Ufr}$Mo1PS;;4V_vEzP0*MzZ^U{7sq!-+ARpi}Az47#3 zDB&=MzmF(kf9rgHopajyf3=&vEvD#$ZDQ)n!FDdOTdtOh>41enCw(Ph=8_AB?~L4* zvc_Lug!oK{`y3|rU%ezEa`E8k)l1Yrg)`IndF>lk31MRSL!|sLyR4Ym|3wU3%@e{N zDSGh)ddNG(^>P08Ol|6Jk?$YBy9zT*VSDt^rg)DbffVB?>ST?FF28Lpwsg0GoAms@ zFqo}YdmDL+v|%ZDDF-gRsh8lPAr@z0Dz9of-uU7AP0o(+MhYc_xW)qoHQ_G@JI8Gd z+`5B=2vLH1sJQYI|Ewp`Ed#uwTDRaKw&|Gzq2bV-PBJy`f(Xk)eQzoC^I^y7ym z`5!}9Z75|}2&RNBZ3i!p)PPhn)FaGYFZ-DkJh0pO^ea)PS>@CPkV`E=J{JVttj{l! zPS$#S+HVkh=65{GV}3kW2B5y3GfOGR$r37Yr_tBi(6EiKDZPKkCJdI4KFa59Sq1)3{uK`8t-{%?x^Tbs8vXDd)q7XhK5yr^6ae8glV zEkLpUf$c9OH21hrqjS=FYPZM(c$P>qveEOcNbeW1lVPjhcST>c9?e!5y>r4ohqk>o z6V88rMNAkKYA?m>rvgdY3ZR}na&u9qNl!hn=k8d_9zEUkXD>i3|48pI3p_O`w=cf4 z6h`{1N?WkuLey^Q=Vd=u`=ko))(PsP>OqC6heTHILl%A)oI#@xH6y*VJ=nBez3IJ- zSZH2RPb52~ zM{p0iW~I-16io~2uN*BfsQEPjB`6>LpwWZPB1Yc1(ym&@P2BfOvi@kgG_7DaO3Nm0 zm#5ZNj>h5&BtUm+P8Ep#oa#93fSPtx4f8sdJqn4K3XO`O+-p;dHOtEzx9DhY(=a#k zk{?W!s{iLpx{GtgOeyEPM)o$jKB0h>mU=+MG{w(;>T>u}IWPNUgv-yk0xoLUmN4lP zF3eJ|*y5x6R$gY4PUgm4d6~Pee(bj>JE5saLz;>x+;6zqG?~Lj&b9rcGLiMusU|gF zZtK;-;eP7)UkUy|>vv*Us#{P)cD<6}g!WQa^zb{s%H7<&3XATHwJlWS9w;Yn;(eS? z+2zLP|J-}^!f5dJ^5WjkK5W}Qk%sa{+?no+)8K6UJ+lnxzgJUSW2`Uj5#l%PDKbOc zNahleb7%DbbkF;hEeCm=GuDe~LTSi!A6%WRpPxfq$TZOUE<^zKKmYBf5V!*UL$f;u z+_%9fpR7sEi?@3an|*MfNa5w*4t+L-7ex5a(B8Mh zgua%|23+f%(36+$m-F1Sp<_L--`0YxcJl8KIl%V~ zzugpVE(8GB>Q;lbWr&j0n2^AmW}PZi^x_X+%d|qtH=QO0UmDoWYs#KlF~L`Fx^qdK zk;qB5U@Xh}YNGek*{0?lJ)Stxqn!YQ%c*E_F7g>=9{rwbYw3mOGLpb@ZDCBVedB zDfMY?Sh-!t?c4DuTR78bOs_SuD9eI+Uk@k$88@5+W;c`7L=C!8IQ4_L58kvJ#{PDqZ?WX2)K|+`C_Ym`YDV z{+%1y2^8DlI)#$Eh#If40GyU>0RnXUX!D8w5BHVj6>helJ9{Zer-3%(GDmNR%@pp~ zrJHFpbK-`(`#KFz6j8G$(YM17)Wfr@`AT?YPk96odmMMN+%IYv_$BVr9-Wb5XxC@s zrlA#DyJu`nyukUL8@N98@x&M3xkGu9{uym?VQBv#w12KP=d`PBkvApN~yF??EC%ruW#Q>ASG3$N3<=#1}<|( zRr&bXrQ+o~6r;*91NJ=!(S7VC`*t>0F>vrxl$narQv>%)$-)=)Xk6F9vBDW^M2IkG z+_A55ROOVu^aBao+_&;M zl&DSeX%Zi}K-;wa)LP)Xcutn~^+FxQ&i8oB+)JdnZc^T6u0FN<$3GE+$_Nqwj?v6d zoDR$1FOn-)>X_`ori|41q~wK*dN*@M*Lroe!^gEBgJoH7cn}DqK~779smU}dI2a}N zI`yo~uO+nSDI(UB2{#_m>NJ3Ccg1}OJykJ_x^6WzK`8q&JcrY-gN%Thho zq`uo0zUTo~T(#_xNpw(+=0}NbcdJc@OerQH6s~zgI=N?>)~ZY$J1@)_9sD;7=cno8 zx5H(bR}5a65G7^@GtY;PK+!Hai^^rGg%03GtA(^KyfImKzSP6Bz<$dn`bpiLW>5sNirlPuTz2fDk=p_VWbYV*+A@x} zO~4cX+A=P74|uW+d-Fy+s9#l@k2iWVJD2=A{~}0TT#)G<0Gkpy=&-dlH!l^Dm1>w#|ntcR&E z*-NyS(OSV1p~8iq4$A>lz55`v=D1(iE_yD)DMD;u9`CSC_@X+c>}0{+1qrjKC=l57 zesg=T+0`m{N=d%Dx3SU>3JYcYm3{w-fdc)5V^5UdBkx8A)B#oGT^fIJ*&%nLBNPS4 zD>@q*z=f8Y7C4WshQQqO0Q8s5{!cTRV@%5teNf*9$2oX&Hyi1}S!o<^Sa0pKzFoi? z=;48>7dV4u{H%^G8P zHQ}74IbpDf53+X~;t4;s)#jX2%G*t%kZ<-@mECXFS%2^vXZ~!_85$|ooT9F-xM{^; zwFgGk(RU^vJNU?f2JPKuD}F6EyPEHo99%e)6ss7W3XNxi2i;T&^B(lvIb+>_)FQzW zh(A5^@?00S9u%lQmAWq)aY2Y%M>ii>dHWYV*MtcZ6AIUz`NnrzmcA#$GB}&yCTKqg z=*>Q&MHLe?IHghuy;g9K0P+Me@cg5*(ZbJIQpf&~qTzTA@MiwqueYU@rLYa+Hm+Q&B|F?-XIv1X~CkOU`MfIeY)rF4*WIQv? z{y7}-Is;d__zJYKP^Q8cCP!2sRJu zpW1eyk5{4esSDwXS?UXP{Cwhnd-IQ@mLG3 zNH0s$lI`EfqRKb8Z^Gf#`l&FI+47RKQ$|5WtkLDL%DN8LIM;7Q2GB5vbYV-l2;0?1fD=Y%yQ< z-OW;lOjm{%!$&9Q-sqqJQbl~oP!elGKLu(B6n;Or>)`n;?1sHn)^5M@yAh;5snJEL z2pbj8)x)Qj10 zW^&OPlUp3*Q@P@{cz^QcXwCJZ+eGvTh6Njyw{R`^TS~opCWU^wMm&$SBNWyC&x!_K zd!1jtAW!&Ih~T5ioKssZj+3qRO5uC-7Z`$!oUnsE!lz-t5B!be1q2)VxKFDO~N9_LE#mSE^qK zrpq8I;=!}s<}M3GAZ-TbFDx{*-9eHB^uB4G8-`3ECHmX+03 zd4Oh_Z8~GlYm;SPQZuR-umElMHyRhnTV|77gG-HK?QzAAtf!im`p*zX{_YZ{HL}9| zTTk3=BimjJY|h?+XKxZ;pl1FVN-6z0f~*-s{rqIr2^>?#UUAk5*sYmeGw@g@oAytv z!Bd#^oq=GEScduIP7fh)@HOwiymOOTQ;w1a6}3h1-QFI_qMj-VxttHQ z^czQz4Z^{sSLjHng^)gV#Dk!aJn;H9ha>Q^**8I z{kt}L)t2F+VP)^t3L&>Oz6(8lQ@EI{>2~jp=2Lw!eZQse;t=POy6g#7nm2LCS}ZiC zTUWd0guuLKIN*UI9y(;rAnv?MfBinVpeg6k0UNa9ao;&KZ^>BXnq>J4T|8i`)lBH8z?yPdYSnfWf=3A+g=dZMsOW~jtppPjx8`8faO!#l7 zMD_s-%Ys4zpSv*Of*lMtEV=jo#PJ1uAJss&n>+mAgCr(bAILLs>AIWoY4kXwHzx-M zlDQqx3A#20S#tA^EExQDJZ~;ir0}gWnD`|1+A;Y(lK#C1Hv27~-n6zEcCtpM^HyKX zu7+5iWS9qzFpMRDw0H0#a*JueKArhOzJPn9uYOCa|KYH{dhC0r6?(C^l}KBf+(u^i zU7L`5FL~MP6fM;VW%AzfjWlBRtUfqvYoE@)mAx(!eoMn`32d64zMRyrIQo8Veu$6~ zwbiKGby0{k_$;>3{@2{GQ8!LDO334oFZv%=Wb5(&Wc&+Cv9J5B#ViN4_65={ctPUb|Tvxj|%;?i2Wb;1tu>E`jj9C;`bRF!^D1MudyG zD85E0;cN>@mF@jQe4ns$+oUNURd!1Xs;&`;f%3xm={XTaw0O{K*?K?6$I7t&M-)bX z!~qjy)C}v)p8AT7dKm8gsEips1z8Hf=D2_q=K5Xlq>D$vKmN@M5si=0YjS6ZHGyU* z`ZF21v{(gtJ~g_zE295f38TD*^V-WSx&5GsAt{F1Ys_1iS}`z> zb6DR{c4Q}IM_TtZ^nv1(_=Um5JmGls*>p7Iw03B0g=!{T%LVOCDmKomnbhi>$f_W4 zjO3sLlnTaeldSijrI@Ve^dElhXT=cHFx62HRa~m)T;4rZ6A@Qm6~~H7aI7}w4fVVD z%G(^nuSu|E{mScIrOEwy!XCs^BBAr`!1Ub66^e_|fw6Wc}%J^^iLF2sEO{f{it4h#>YT)LuE zX+M8Xy%0OOG-~o3=}Qq7Mc=1=Afs;!?^p?)6C#pwpM0zIXqoFXAPJ1}(b9&$2Bj-P z*k=7pPuBE%-~A8Sg6N`rVu#ks8o-K{=(sPt z{g9SdzkDgrU@8lG`fHBg3g#kY@6lgn7;WFK{N~`$(uVU1yYl~&^!r2vwg6K3!=||4 z1L7iWLJ0d8hWjgFH~zH^#v>-O%h!_YV*(2tvh3@N96qpeYXN#3a^ydN?uQe|NOJa_a)(V9x=}sIzHnn??u}UtyujJBQ)1YINd)wTXKJ16t%S-KCwC| zJ8^MCb!Wi}AOk5W$SzvvTfN)eXit9O!ayvLQ1d^3B1c6b_hR9xUk&p9%a1MeJ@etI zzZwokSUJg0aEG(RS`3>Cvfp-xu*l_B#GoW^-$`nAoOXe+YVJ!{$>IwlQ_7n!v_U5Y5wkR;agMOZ5Sx8j0(@0l-?*l z`mOTmN!gym`4#iT)Fi_BF_qXn^vo2DknpN-baZeU-*m^N#I?gqQiqx4^x-gWwq)xT$f zC|asD8hqc=&Hi0l7&~pyivNDf!JPm23<}hy6d?}q9k(=!dpTVAHQUN+;LmS^qxK_9akp!%rC>~+k3@4qvgJ;C#%0>Mr zF20`)>zLX?%SI9wGwP1SInh69$f+po9H;IbQ{q*wd&V}l3VmtixSgUZ+jC~I;!b2p zx=+>z?}?>Lv_S^l4B~UG$((Ysd{Jyq-Z=M<*Wk}#WJC-Btu6=k)d)+*Vx_0=WOhyj zl274sK^bQPgY9+UYS5 zqN0{dRW%pZp`$3!l<{IXO{QtNZfuz7_Us8_q*N?ncone$s4)-MNXHJ?EeGLCqq~_X zU_CvE$DR+02n(BxPL+1zT)z$4oG%*+|4XSM$Ebj$rC#=I`7yiex!uy@nhUauR@9he(ADTT`x}Va-Z(u32*{oxdh+ zB3W`!EYRr#9#bs_mvYT}n651IJ+$dWceF%%4~5}(0*uvk)Q@?KC9+>7UywncGuRV0 z%hEkxY4tW4$4-IsJ}KP~PUpBFtB!6ASzDFv2Iz-iKaNqUUS^K;xLFIeOn(8 zKYw1ncfcBHqB6ngJBUSKtjc1Fns4SL0rwbnY-X z{Moe^hi%CTCiMA5b=IdBH+XhzAmAVr*GcZ2|NceLf$wC+l1QH?Q2N`~$w;RG_74|i ztObT;6w-)AA>vSERa_VLLeWr%t^V6jm%!c14$VNblzuDsKyx?v^VFt?4hySqWqF){ zCIwjIw8Z5s+G{!!xRCG+FdB(;d!mo3m4gI4tvjfH46PbxrPtW#I|}L(pSSbn{6Vv* z43t?f=fkf*s>4lUn~PvNcy zjoYV)Z=Cv?+79b9p`zX47Q!hY)qGH#w& zj8)*!iwSH+==37V_roWIZ7LKy7~c{fyT76Y*U+IV7FS$58-xv|WEJ5(?HZKQK^rV0T)+{`c;re*x; z1{+o)Y#j%blkH+<7gA&Oj9icIH0+0=a95yXf{mxFN#TYUTveW=%O|Dp<^6nHw5z9E zC|TY760^RpE&h@e;N44mk@IK8aRnvAZW_jM8%0^m((LTO7qJ%YO1y88zJk@yzRRw; zzOjNJhh>wg<@k z_Xjr{84+#)7L0711l0~}xLTWg!>NutW@&~C$J*M9%kR&(91NV7>}j11cu{^+p6(M# zP6g^tdd5!0*m0!ZdIp^Pe(gM9Hfkb@dRh#=sAps_cp^XQj*z^bb8WY|UWstnKOE}W zJ(JxE{d>HX^{2Fu%FS2XQ5f|n@k>L2XMT=Cn!fmtd=@~K;*M&0b?%M5ys2loJ#}Vb z-aOVX2|)`B4xQ$xFE7|<1f-fzy(dM8y(U@taS%5bSP_%>(w35{K5Lr|5A=hqFHQK^ zSM;Pnuiatyf1o#MF_$+1rX%T(%+aLBJSW{NeUcuCJkX=FLuWoayILW5cnHwLIQuR{QlrB{P=XN<$7pw-mmAx^`Jg?_nl1jU*0gO8`Sb{p!)XA+Y ziN&6q+m(>5dcR4%CcVLa7W+CG^R{Ss2(Ap))!epM`)8P)H&HQTkoz+9-P{Dq4!{oH zIjWyEt5hb*tG)zO{8<))4><&3+0JH=F)$Fy&9=ZGGI^)~I;BhBAZQ+RbuMwhET1;g zKW+CHOBw0ExJy28%1eS{#{-nOtFZoFf4kDy3OGraKj4^1a24ttGFPwZSN;rWF=UJN zO#Y0NU&OKN4-Y@JW;xg^iqi5CEw?7N`ZX8BjderFCdjcz?O_5{pXhViE?tv|+v+KK z*zLr3$D&82dt{-QJ`R}9HGT+Rh|L_-v828oP+xc|Z(26vFxB;$;rdQ5^72g6nXbwL z1&!Y4Oitd6H0q)xh2h;xl{r45C!6`=6n6F?JT`U(E1EE^ZR2tFgQqj7Ri*AhxVYdS zLR-=3GV4~#7=Qy|-d|SYg^kxB#QbUH3Gr zd~pXnDakH5eLJkC(-H5kd;=9PWPH(VNU!~fRn_J>mlCK|%eM!mU}5Q;e8AIV%HXrM z?Yf9}GbXo6(De_jF75$fGgy;G&{@cb_3;Mo=$~2gO-+etM*f9Qo^B45Y)AHDH~eX} z(v<6L#WfNmJ{|eU&m#kmC_nnbmyk~cwD)V8V@uW!oQEFEJ|$P;yo zEV1xuxf*>*JKAN21~!Dq=M6T(B_}2xN1Bf#ShL4R;&4=-&92v`f%JKKzm>f`BQZBf z>Ed>&Uniyc(<;)FMJ4F{yB=}JwhF^5%wJ=Z9hSpiTb0&}jPyK~10p}Gm;Joh{fYp} zm^w1eO6)|se(l+O*jRZ}Ijh;uq*Sl90E)GbWV(qpS?%&F_B^1c+ZV22p1xVnFQtDy z2<}=qJgNQKFnz5CkqozlnUNl!E&mwMbnbmK3_Dfq$LO=Y2gz83)Y*$V`h772L#enD z$qMy%w(RJ6nA)?l4{alc-wYB9(De$qFmiK8t9FDi`KLJDb{z4+ zR0rY(oA259^O&Lm24pD{o2{c(;&7%IKRN*?WQ%6LNybv5gSs>PM#>|nbcgZz>9afe z$M&$+r>+&tWk8n<1U=FsjeL(5E;ZY3@LCIZ@?Oclh@sUu5b8<0VN!0!055V(z$`AU zfL)4xKr*2>4Lkfyl|aLu7fA9}&YQ~n^s0NU{oTT{6mLCcQP&5<6-67lwp}P8NA)Kr zRIGTOu-JzTPXuky#CyUl{cr*MC4*aaO;8YBi7wyw%Q5J0(J9xi&!n%8gVRbxF-Ia) zwqNTyU|ipaCpVgsBD81i(zqUnmTPie#<-qQKRiG-E2`yVMAHLFO1gUhGswSCQDF&` zJGbmA(}{}&;%Ku!5#*N=q5IB@4gQeorUB{MgtSiLoMH7$2I$CTvntRbFD-44CN*ASg zfX==9tzE`6bj)jx1@uhXLXday^TRHG!BmjVL%Q2YPr^peFcL_wVp;(FN(}VzcD%xB zY$UJ?=1;S;%poc>|5mbfKZ95-2A#tKqnn$yc27T{g_PB4P?S}{yWBaN()*SHGcMdNVQzTk8v%2O>Su+>t%-*WLolq% zc?zSyf+yJI8b?JWp~iQd@M!RDuO4M?)Sa9tgPC3Q zQw+hlzFGh=8L1^RS#^^sAUJTUPi6Mfqz0&&(D2SuR z=-E*v8eXlL%EbmulHz;UmPqiXFWvPSJv&Jc1ijv!oCqv`D&MyLgjn)Y7j5Ze z2)3B4(eBHNnyFB5`XJkSsz1{puRDhS!pEpR!YL*B9fh$X8*m4URL~wLJ-7OCIDL4f z^=cC`m%1j~@4T!(QE^QB5`sRMyfj!Z$iuyD$se0+4}xB&*OPgmH_P?pk}D*G$rw1T zcQd+ROMCc)o5W8JHz#p-?#WoWJp`?Y4Tr`k7j2To1i2*E_sjaJu@>`CW0Q9#E>!c8 z_`HgiuX>p=cd)rwK`BWLb+?gcJ$;n9Y7Oj(7SBHH^70?1=XNezH z@&1&^S+q+{?c~DP*kzxt^eLz;ZR=x8pBrZe+QarvwR#xaDiL#A?a5wu=){K{m zEs#3?%{roC8qEGt7)q!DT9U(q8mn~|OK-ZIG(y?55be8urX?$=QFA4ZcdkUezh*ju zIT?8#mSv_pnGVULW=F&2 zEF2tCHv`f=t>r|M8+JR9gN89=qdFLibpCyIYTZ6$lKh^L=UrO0a z>5tPURtW6RNR{+JUj8t5?2q*BaG}lmQBh1L`nuFz<@TR`Pm&o{5#-?mbuTU{>3h57 zetY8y<2ntATFIqLRAFCkwbQ@p@qd_Gn^&tS>>rk%?>t`~8_ymY-JdC{Tb+}$5gyrc ztWnEHRPu%SL8M>aUBpDmw&4?l7f3xHH5(||?|bK}O z6D(s1I^pKqZwiAvB|tP56hMk^-x6qN6IhsJtjIo*t_B*p@MpBN)GuZl$Q?U8QY;=GM&!lWG@5qiq{S z0JEW5yJyVE7c)a9Er+DLRoxavsN$3XMl?uE{ioB>`Cf=R$_S7cM6~FyQn}8e@t=l4 zwdLsfKPr!GIUoNik5X>PNS!U03&&{tKqpXf_jzWDS~u_&UgIsE=+xKbDoYDYKKFJPyban5O7=hP3nyy~DRpf%` z`X$BMlq&CZPWY!?C2qD9Pm>J55J42#Zb=4oW>M=;iqjn`@kO)y8jsk+Lv{}NZU2J|+LD5HN4dzf02R7CNfJYBx3I6=erVk4bwhp>CJ z8$RK!T632MftuDdXX`P)&D5QjB?*1&dox``>4>E71(Kxkm@jHFDgbvDW4=r_iFx@1 z2PD`KU&Mf}TP(C&QX&)=5ec_1D+mhBjroneSL2nNSdZaN+NH@&MhV^9zomynORl(=0!)QR_V~9)6&u_BOiM$H# zWoGQt&_ISXy?#pn8WzJS+W(*&_{?RBm3kl{R5W6pcQPO8kYu$8Gb=}XBjSfBW(r^R zJ&|xvx!6>IZz=onV0;f$^N9f;Pk^kx!Zsl@NXY@3Bp9~u4*G8th#`}Gomo3qk5382 z#5k-`f^uj<(E2F%siG&`70KZf2nG`&mM)+_e!?L5_pXk=W&M4Tbn6A)(5Oe-tz4NG zbA|5YOy62|%&YK?{jvvBp+a0b$cUh}@LFErMVE5;W#K@QNBD#GHwAPg*EM20mi>F43+2+XWhlnJPT=9X z-Xc~ZAO*&L7!}oZcr6H~Nk>?|F(=n`hF5JS+FuCTw>?>~?33RboX?=|;ttveZ36S(pq=j@`>VBZu1BUYNwJs|R&uXJOUi$aZv{Xj)7vzkgm zJ=1p<(#*k;je~C}zU0jr)VH}aVsu#1HMFin(dt}6gX%SWx5)>}MkF+Rgs1O%?9@9t zbh`rwysk~GdwmuH#xiuU{rs*RIveN}2K!XkMD%bYBN0V`ys;h>6drHqxL9+d%AEJf zTvTf~NfnI@8#TtnPrk8b&ZC+roQj>r_5fh@q-!z3b!bCJyR!FexJM^1{E_u=XG;z67G|ssAoP~*f-3lrh+aDhifetA; z*2Jw(ZJI_+rAr%JH5oBEO-OgI%R#wEV|Js`23nH@sXNGE6Y>9o3qer} zN(YOxOUF_G2xr9=Q?R~u(~@0B_8x%V`CBN-;w~b>nsao*skM>W!evSIE8FcVFlsNk=xK)1v`M$8zjtSmAYq;o3(H`oWAzV9{@ zl}5T|R;QjBdH$j*zFE4i0{i`q;-$F-J9EpR<@fB_2*0*&nEv-2&mU)&eXHTy?_OT3 zm_$*XgvTv1&FQ6-&tg>RSV9_QNNIdm3k-6FS?$dL=U=(XiP#3m1nzIjs$9ujV} zLIC~3Xm5j)sGoP}wPQfyPnk6!Va*8;G;k~FsfFK6Q=Xo&Yv^>naue21dmp#@Iy%Dn z_^mn{)3C#tf{vr>IER}^S-Qk9T^4Gwa znv8|GqTV3a^apsP(^V-{28G=b1f5&Ff#zBTfCyJfFKX?UJDt!sLTc-L4xHV70MOni z<5tlja6tt`cf+gas#YGgOh5tZ=<5S(*c@~D3dArY#o=FpM%x{JruU5?`)U_iC@2tk z96hmukbz7g`FS{Uy4myw17QgWdyiMggb?c6{U%=IozTA8DOiBBnyi2ZvjyxW5Vbix zD1|KCUkMTtyGQ#%#Eq#yypOA>-lu=B zg(fOsZ}Ro4V&Bd2gA!RMM1SgY_c(C&L*+6h97@g|(uUim)w#6$t|un}TX65OP&)ts z%Lbq|i5#m)sEI$gY5==7J;fC_=&z=egsh$Cdg9?w+MG79(F12y459~-)D_8+-o#8P z6l!TsXh>O8VjhMt>#lO3?I*X?HDSA*&1g&u*OG+C6l3Z`d1>_69$mEgAT^3p zq&M0ymL13AO%@I>Qqi|(7WG?#lQy&S(o$wF^)c+kJ16^{cxRQBRlAy;$HH@9xq&@g znF~;!Am(SzZMF#=Asf2HtMo~v$X0H;J+vgRMkIUYwAW2;BfkiylnLCG0BG$RH7enc z19l}{6C@BZ@3I|*t%^lL&1Hw`g)4O5!~tUl*~rc{?d+CsJ9#1SbAy|0UVMewt%wz8 zJ+dDRga3?_CGGGj3|;^#nEec{YJauN2mzL^wQp~7@*P_*A4h~XXDr;=va}6ftbf7_ zisIwW9HxCUcry;euT1F|quI|(~i89>fScK7c2fH9O1OtOc*w|FY)PqDi zSHUe3RtQhX#~v6W^}i8{g{Uc+X!9FJ`!ZAO2qZzWazN93>31-Gg(M(bX|}T6<_Afb zCy1#M^{GhkA)S@lWEq+!wM4o6_8xM8^TZ7B3$vaDjlCG@Q8z__V)fH^Kn|~_@^ZJ? zy?IX=vF=oxeJ!%*zY>|4@3b$cQg&%pO->Edtsi5VUy64UbV>M47_h?bI=@&!%Ho!L z`${Bdf>kBqHZ~RdN_vv7NN(`YJa&hN+ib#VtcMz<(_m(sq1>z>1{b`=adiBvg@f|? zt|Z?p$TS94PU10`9sjYrZb8wf&Za9n4YTzMoaxi9w~7aQabG#kWw~P}S<223Y@6`bnz&&QrnAF{b)TmH@lzkwIS1^RXu=ej@_hifaT5gxK8AIJ8jTA+H z+IHgcTe)L*sJaA1)#eqyeJ_R`cDme{+a5puZZY<13@^?d1W<=-C&89dR&oQ$Z9^)JQ_V3wS=K^d1eujMymR~) zi&;%{M66>oyc+W_7q?8w4aPr$Z0cx@y<1wlKDvzvTKF_SEA!B$#V-tN~)%Bs0 zzDCe{@!}n%KY&hBRwrQ|nng=k$X^#-Z1PBy8i%K019^`jCbhOb95d9*2tZ~46t+}b z(CH*G97Lc*?!9jpc0t1yb*dEIRZRc3$?X3;vJjER1vIk^j+B4r6p_o@MGyMxnFAQE z6_q|^DzzS0WEC4EWd!R-dA?FnO<+7_Ju?SQhqhhq`IlNjYSn(WzC!1?YFBv?}G@f(6+k z@c;giE~v5uHh-b-FjLWzIlgW=0AwJwp<`h3p*&FV^sTt5X8!34AQ+D|d>0_F=+^+) zVqTW5s4M{K1+g;UN&BK&X1?LOx0gfn*PI%g*)dw1>f}t7mh6Jcy6Eb7 z7}!>s8DFRH*XB@c9EsOWXBwv44V{z*Mbj&ZJb&Wm?87^kITzOuYzU6pyoniP@1f*A zfw~AfBhN1vu>87)+QU8)I=KnJ$0q(vkIl1|>#u&EQ-N8=v46a?nj5)X zfd^wcLY~?iP=&(jf(_Jqr}go7CCkPOhQ&ZS;~(Y*^a;_$H@|f2ZUE`6S81CF;1P{t`Z zSo!is-6)qF?Rubjo(ACd*{nYtZ&*NSpt0Gmz8YL&*`9$=$(e~~GrjjYUtEzYF%|QD zIU6O^AZolA$P3t^3hJfSEXpQ-@dG7jgBieM+8-tF)qSEgxI+3RzelJAB-Le4J(50? zr42LJa>SqpSAv|Bc4|qG=l3a1<=`=Y^gr_6!z))_OCCY`m>JWwHyrJK)~k{ZP}FUe zoj@^t%dab!FRzGL6`JKw%>U1*?Mc}O4{m9;Q-Qt+?kJW~e%fo-0 zj}+s3L!Gcw`=Fa$%~;Qusln`Z1SJx8qf$C98bK4E2Qj9K@~}*Nrw_mG*n9--PHxYZ zalv|o(E|leZ`X-}ld-4vH0JA81O(+hjp3C_EiwX+l^**Ema<(-J3`7&WjS{NN@gQg6!JGW6)=LvX3G|VR;%uv3d>EiTg7AP*`dt;hq4V-F0wHa0?nd zxVyVExVyUzF!9*gpKHJG#r5bW(i%VZ z{$6{fD{<$G-wIhW)I$M0%_ZAjvErl>3w~~X7`^J#sr22s(bcP!rUnX;32m5yS}htu z$wvvUC+>P04_X4BT59=q|Lx1<$Y{mGI??f9s=aKu2x6?0JUltRj{ z-0Q74F)AOPVG;lYHNL^4VclydCGwvCu`Ol7$wTm+@#{|`g5H9;qY-Rsd><5!3d^B$ zozSEEmxXJv{q}YI!DGC+by>>(6g2uGsFptS8H`sQuX{CI4khk=ekt==JyDt^+<&fk z0kEbo=l-@NS+VJ3^Ssaca6L9ZN~7fMdv@d#UcV06ezQ=AtM4VNwBmP3`v@x@vq%_c z!FGBWZfB8TTUgBa`Kmwo$jkg$NZa}#eM?~+(d~hliXjwW)!@$a+xu?>f)s%NexC(ZG->Xx0MJ$ZCQTK#(Lwz; zA>u6PA5K5(P9`H zbD3Pe`K;(1=SuGmjR1ScU}(;GzZ9kytPSmlR^}O~N6ZM$l^B|RSHpsMkrK{3s28={ zuL0d&qDR;^{mM(yGFtdpy!5#Q6G|q(8rrs&0N3DeHqU8pu0y5NJ7p6~Ozdedx<* z6Y}z#D^zLKhI1|Zd&9%{V#`w+w6?Noy?8aPJ4bB!KJEe-%HaouNTS|ZrrM?ArL*4j%upKBCI)VAF~=?SJ%&#ZL7{M^z;X$mKe!O_xnDF^@qHb>FFkxrKdO(&ESow&yH zxpv0YwC~~Or-bAQBvq4j@|o|JbwKXpD?tHltANb${ng*kctsVo``1o3ooFvQUh* zxt&a50-IY&A$3yvy~iN4tk#wFS+U*5gZn&L5p6v#pwq zZl~p5Nc;uB5TTvxFUs>kDCYetlE?Fe^YssoLhsLmkQW`F{rk8!zDL)kBjpM&Ef4Qx zKxOR#t5*v>suhxYMh+Vq3^V45+M}{$64ntbWY5%vCHs@VF3NJ8Ogw06wU8UTR3%fGWjLQ-Nsgg{j)7_6{w-f5393avqAb zRi2*a`C?^dH~5?LeoXoP;A=v?J_RNR$BjARA}5csi67M(hJY*QB3P`!&7n!e&ZzI ztEFmNsTJ53L*3%n+^TKn+?2go^uuf7Mgylmv9U1Be(b|l`G^3oB=%8^op~BM3gfl~ zCIi03f)6|}An8249-WYJflfBI{PozWB4>?R(x~R{MFjxkth2|j`*cY=F6-lNsX-S%{Dvh9>1t-P-S4#?Uw=}$@}E^44{C! z(ZdFd^)lt*7rv#6qT%^>qvLAwz~A4&xvM8RgacG2nep}%s2aaLQs)LIHS8LtA3z{AIR0v05COcMH*KQ|LUBQAIP+iD*mT5{!8F-f*{{HmIBUm{crSM67HlH&S# z=)irUJFE_uM5C!h{)T#tRrO7wqj{8fmIp)MN3iFXD#8;yB7yWg!>c#tNOO&{QEd=Y zeSfBj?p;Sn*GfGi!9lwCc6Y{4pUL0K%AFpxd92{aR4sGc;&Cq?TY;qV<;Xi5c%8G` z-rXfX;59JB8uR0-72YN}1qDTk^YpLJgmy_>I(0Ns%+<6gHL*qiElRyH-vFDri7#d+cU^7SE;!`=LaP@`GT z&BQ7nKmx6jW@En$nLlmj#%ljCWfr25m;AyfkLxEwgo^5Nc*qzXQs{*X2BXx+r#+y`w?6ep+tHwsgRz(N5sM=uu1NZDsH5&nN@R!Wbz1X zC#@f9*Jg4&2OINRx5McntKaQa@GCh`cVEoTS|&rd=h$_AR*nppbR9$%fbi}B^&)Q9 z1a0>Zgzo13A#a{3(1gUZirTFy>@jx*?s~LvGTOGL>Rw%Vxg~kBmB;eyVLzwyl`rty zfY!y^P_MOkkKRhwxth@AQ#Ag%;6?&}Xo#g%)U-ib9?FL4I9{tX411r=T5~v@!B*!f zt*KPRrd>4CjkrOCUfXM5Xg;2%f`X0`KP#%vkI_aXbn0cC3i#sDhu05nFm<=xqgI{l z%)LR^j?tAIPl9HssP4hcapmPe(|MthAQ~i`cH9X$WpLxKWAD+zf=4>yr}1~V;NMIi!u!`T5E-EEg9NXk*BlRax1y%yc5CY<%MeC z9}*fGT79EtB$J9X-zP)B@BgwVuLRT+ZHN zG6>+)m_q#+GB(w=_|VLDiG@X4H0(mg9Zpu^qScjuS=cC1@~9FqEJZh>uJYo2bD*dm zr7>~cM%I)ks-3R0jA@7pILY;rsZ+8;F3mZXPmM3!^=Jrc_0mL^B9?q~iq7Q?vC!|< zvXoG-buX zk93A9?H%(ZCdB*e8iEa%2I48F!fwI#K>mK!l^7nHiFBc-5#vhrur{xf!%vl{ zcE((276a%{Y}Lyb<CcYyXLa9Nwo&sB&T;% zR1f6Sq}-)QOJdpX8-zq-T!>{Hh~)z#Dk%^j`Euo=QP+wO_x9gB{*d`#`aapb6-;)do0jSr@o&>(#a` zy=Q`p)(z=ut-TXYrbq)RT@B}_#uh0^)}{vCQK@|#NOP6!@}c7O#T61eJtMAgZOQBa zYScD6J$k`(o(J1%{|=_M)_mRdc$XOEY~B)hQVNZ1{gT z@I9wIwA_D~F{SX_kiIC*5kNw|4pA-cWQ;zn?@o0CTCg2VmLzL*I>w_lRM9rK$fh)r zDXwC>zR<=MqIuRDZhzKJ;vSUrn|~dkmg$SPuVI83wQO`AdREm!d&^Uj;C3NzdaO7< zKk(rf5}~%^Z1_lfZ2l=Aa}kPybzrpEPNm>kD|k-2sz=mo(sx!lNT^E`Au#lLavXXC zrYx<1!#kvJ_~NTrO>-qX94$Nf@WFxTQ$>B;n3+bC@o#%34y7s3_mUH@qd)8StxxIr z#f{ziyzn*=H*f|&Gktxo_wlSp0=WD1tNpc;S(ef7R<3|^|dI5P?=WGW(G6YRfU zIYH>dZqNWAgncnm%y`Il=5r(|naf&?x=+syr|s%^e)~BVu1|@?!8$#}okdrNO0bts zWKO2`_%Ohb)!<8-ul)C`gcAX;Sa7TMK5` z5-|WOq9}><&vYX<(Jq{RIN=%*SJ@I&9%sRckTp#XY}%_&p&NADxm}aJt1PwR6WO9D zq%XzQ5Z|l!^~uCQgWuJ~BeW6y9SGHm<&Op?6Yn>cb0Rrw>^)+b@m2SI^p!znyRH?* zYnT3sO>W_IT|DKQ_7~d1NL_a1jS*Y*4YoImS!JkH+6kX1C~|@e#7EQydHodRfAQb| z*wu{dk7yZ5gnmS-txfGz@NG>s3V8zDB#{A_?(Xh66Pr_b9FvF)b`#>>i!wH!r}k^- zbSeD2Hh0%Eq-d4;W)3(8?u}R874pt8Cl~O=L=LP?HrAppb9ROs3;71XoA+1dpfpDg z5I^LW2EpqP6XgDBrg`9vIF%nOzP{a~F3fdQS8Q^>5O7u1Q0` zd{6oAQkUYoriF$i_3C4=s}(X`5QkR7QQ$hIq_MxTv5BO8-@wj;?ND2M$}%fo9Y9iO zLZQlX8jmyDDdpvy^za8=7*)(q4-daO@tF0qsz#(~qn@hDbER=29b0EEPd7XCw3X>< z$cg~BWja-Y+vt^6*p5%3z;bg#-<*U3-r ziC*}eYhK+;#UDJmm;U_9r{u*X`Z@JX|0`qZquN--$Bg*EkDv5hBqkUc4?O{-E-n^f z1M*tgV>cRT0EZ zlN-_{s^b@?-6>M%{i&M5V>oUDN%xUAyF8a0yd7fK3fFGndWgr`$0I9a9bO>-76E2H zPxUUT5#_2`fE_U<1RY3Q8tA`n2k$Mq=e+JjVd4sM?o_YwwRG-fl~tuCD?6s#)^)@oOAy9^roVdZ(_nPZ$m~2{w(W*|f_Oaz~sJ3gn^Mpu}Cw zG`7Z8K&o|7B;8j*(Mg5zzs@+(g4VRHfK}zdcX!Cw!mR^Fq+Gs{q>2QP>atVp10mgX z{nICaun^eJVrlWUT6w>h-JL~b#|l<(nMRr3GaI9xGSooFFLUVf^1DNUBjDNzYhi3n zuc@>-aj}wbN>wKfliz_$2Py?Sv0W9hC=eDXkG+aN;`Z~OIuEq-J-C7qRtmP+vg=zl zCVcSb%CX!?d8pP!8V;vs-k!Ez2P%Jnr(baa`aen(xY6g--)E?k9)ujmhs zI({ChchRv0!N-haRMif`ydS6ThH!JrM1YLnxG9J5V}R~t_ke#}uFzJ9@p1<47Hv(M z>-(%ug>9k(a$jwPXw|&tm+yjUqgiQJ=Xj9!1rLv1f_z9JY;uCkpsGM2+H((s?STaH z*&EZP*Qe=x)_cK5LA6v0;h^^O_q<+&%eUa*@l&mArG1jJl{l3gv#&7M_OqsA#}$$L zMv@OLcEs8);L59`XMTgR)I+BGOL|k@I_UXKLbA2M!emauyD=18hTJyU;mGM${({%) z9BCRS69kgI?nF6;tRF5 z9Cc{gH>Xfcj~So_c2GBzikN0v<4ZNu3o`NY{t=xJ-1eDykCS7wNiD=gLJ&?eHesA~ zk*@yO&eVZRd?sOjz&9nT+ey6ZDbYg4w8L6f77kY4iwxfi4!j4If?Ulv8ll_ zXAnm6UH!M-8VC)U?vsCQQ(R<|QyK!Rs{b9hr%LvztLk`>l(Ijj8fQUf{a4wa(xJPH zAgVWOnUOX@A0E(&qkoBdb(dQ*Zg)W6*;lfhK5^n-IHr8III1|f0%69Od1!T*3jMxT zHqqIyJQ}oH#t}d+HVrqXyQ)|zyiAn5(GHMEk>b|!hAI%riU-g;s^{?Jo@8|n1m`YQ zSnKz7)K^CmM}niDTma{4a0Jw74dkbE z&M@1IHDcw;f!*nSLGH^w|8X!J*zuv6xegQ^;N&CPk_&H=33=C|n6VeW`$cwMt!yRM z-v*WM`r``Ak!?*L+RCW2KFyvq9wqFSqFFN8@4)zezm%}D8=MA#Tiq)`^x3M0k%<{NSbBKEl z0TDi<3Ij}85fCwPh?23>3$*HIh&O2%sKH#D>?WDH?fJ#Cd_aB)CAMKtpzZl5w;m4? z_ifyxE9OHpUaXgf_qb29w0YXRbb*l*Pt%{9Gx zj^z>76K78o8Vy#899DHIa^5FcyF(N4wQm>Ie{F`VEKM|*B0GwlS>@)u^hI7qQ&Z|z zKxJs(%g#0wl`TJ~=ZcJ-pp2mRBQ-WqS^XpuyEb&h=(``|e{cPwRdHzUE>0XRx{a;W zV38iy^juT0bQ9jb(0ZH&fEPIZ7E2)rPU;9DjcANgl}>zIZN9LoLR0;4P*Ko9NOkHg zy+IP8cFb3#Zmkpf@_wY}eWm@@wS@1P8&S|NVp9e*)Vfm+vDSSVjCH_pWFnnnq9!co zp^gEV{w`Z6@lnDbDYwK?C~CA^@8)=e^%(c%R{U|Cbn`V4_JLi{=c{8)D;4n({(*^z zyDR^4T0*oFyHYj}qq5jl?UonUs+QkjJ5-O8;lb7@KWhh*_B&^}zTJmj4n;*p zTZ%9Fqu&^@u&_8@RoD^#N^qBhr9#04RD>=Y4G2|Qg}+X{W1&TTiXLxIIXAEm?Gr0=ykEqucJP3S=@hp?+a=m|Ljv@OGG1YtXo z6jM?9S8izPO*Gi@P1ctCJxr?hsT@-}lMJE4g28mc8R5&Zy)7;{-Ba+72|Us!yqapz z2ou&s4#gD1pE3n&>k#1Y1Lm&o*S20l{!@BxRoqu}B3x9L#Xc=mDh)xq!QX;E%WG#z zGA|Bc>4HfEG8rl<9CxgqoPyypkqQso+b##mR*$Ah%2Vt7bz2z^1x!AX;7t+VHXe|( z7;*UWYqAl?e88GBO=J*F2SJiiw; zCuN2o2>UE=IEh@Qmw+F3@xR&)8vOsR_oJsq?&Y>C4a;KlKXv}~mnv`=w8=qFJRIWt z8mm(pQGe}GRP7vy&7sDEo{eUBC`iJj;PFP_j63>pmncz2Mg2zDVAAA{PjBG1Ntw1h z81KR0WOT^A$lRDHLP4ax8MIu68Z5wxwIhKE+!W5V_z0y_&{4ah%|7*E+Uf^Bw`X73nt>S1Qlt1$&WmLZHF&-y(@1O|g z@tU$7_N=>UA#E(S5o@gbi?YsA9xjkbtzEJCuKE#pSm9vJ$zMJmr4|+za{fw)t7!jg z(Y<@e^H|bhz}b%}#uirj1F&H$A|GkhX+EgY3@(yB-4Zy1L$k?@oW#Z|nkQxe;X9Y$ji5a7AE;pY_Jw0jabmToFud$k-lL$3YNf@lB3ec9r zf!IkZBb_C0Zy{AS+66N7LA?Tad@YzZ@$*J|N%6EwG}h;G9fXVZmz{SPbuxJbW?v7o zKd>x5Qn)>vqu&;*l#u>6?*JPREG2=RSB(m8Rje9CN3=ERa0f%IP4O}5<<1TUN`9Yw zF7UoDgl$DUI_!2Tl3OYgR5TDEKxo#30|3*9YV&=sFNqUtAI|&$z7yq^n z52Ns8U zt*ET=)u0gOCzn;1R{7MT2Tt5x65=4=Xe1M`Ml_%S5Bx#%k8Reg$g_j!hK6J53%X`0 zzB+6W*8s&;NoJlBXyWBYwCyU$GG5*aAHI*(CUPa-pR~6_%;n)mphUawG-k^9A-A?2 zn|^m^NF6mcqYgW(Vkrz`2O2PC=P9VXP+3b9W!CF4|EZ3<6D~yUg>?92p?wOCyZsJL zOK&|gcSKK24>+-P5li#3$c8N0=v~Mv9b^DWhHNeFzfqvai$J9Y4luhA^4<(dE&>*lgjJMdP<<$L+sU{n!630&Qo@?&lXe5NR5P7 zcG~{&ECtFpJhVtwjvS;O z=3JC}xzJwl!)uv^K^!|sWH+-t%_4{D0SgWB6rmt6Cb7N3rp5UDH~Ha0x0(yJVwt^1mrR>QFy$9#s4dl%ea`WK|LuKIyuX7)F z&NhA8C9$-j20wNGsTd5&i3X%+KMYB--87BeaJGf3?hxjtQsOe$q4YAq3VRtIq@`+& zW|wv=i7J8M_VbSq!g=kj$hPvyj#PvfLS_9ei|--kr=Et_&!U@CdhNIRjTnn!);r?)Z1H?NZA?2 z+lb58F?4q{z-=#=}GF(Vm2lwMJPG%+`V z5mC-(-rClDq&_$wnK}18Bu8^rUr6B|A8O^?Nwbygo5%Um(H=wQkkHCaGW5pJhhw{r z2%A5N!1+M0c+}PYj9@}xAf{A($3(xm-K;}7Tz5nzc~0enZO!X7YnTU}qpo3`9Tf?K zd5{;YsT%B>@hoL!ljwfp5*K-x|3}yACRLx+=wFRx71LHkJDz=w>ty3F@eJra9uOBEY(DRz zMP6CK_wH>}c}cQw$2os9SV5`)xCS+bphp9Vdc}=hgv*7P7}TCSP2hl!nY}YX8UAIt zi_cerM0|eO4X0~Ux%L2dg>d0%@tq9$Uyw}8-3czJP7U{S$)T;g%0i6tEWYYn)TLRJ>|##M7N`ZN-Z}?P?Ra}I2EZ9zR#q$fg<~mOb@95b#HZsuL6|69sfY#zT0D2 z)?%jRRkLH7(leC`JQ;>t}TP;3Ngt&fpA2EK8Oq%x|372 zs01`G;dwpU5qmo7V-IBKODu;=6p9%;%7eDkNW`rkIp(b+-0uJ=d+n{Bf)5lDt~Nhb zcaW=%6^Y`;wR6hTQ29OUfcNdl-`v9@a#ydW@ZYqxqNnOTptt7qaik}O;1IVlchzzb zaIkba2x6`D^SWBC_%(jzBUN0Cu=aTDmRnsP#=;oS*ffj}YFpo7Zqenum4KBuYLluu zYl(FPRvkI)Fuz~U8byu_$pT@hiwbi$%p4#hUM4%?AOkcDS0rTLHM*p!Hw+m>lO6FI z8z~vw-U{ucL{H2(tHkC_2=O-WI`of3xN zEwpDS*h#WdZ+vjc@70lCXc?m4rjr7a!Y)UMc3Qz8e-r)+5NX5KJwZ3vnjRHT z>!&wO^3(*X8q5mqOK=%%%%0PIo@y0{eGZ}XM&={4?&O}3oUjH?RX^*VTX^AnVPj8MM6QoXStsg;eU}E)H5@HJVZ?tz^m&$woChGpX#i0EnW8lu5r% zG(`PMuF-!a5^{TBJ+oLRx*uYZ8XXiJPa#@8I}F7Em{2f^*u*~(@%s`L*2oER6^)nJ z;ODTT{Y}!9SkTTBV*W|E*|@gjlCv5@$XyyJkeL*>C9e*dZkz>c`+KwDfRq9T&B^9OVf9o&QB6@2(P}myN15DqP^L* z{>cK;uS?oDgW2@w=w8G7`qoN}Dzod0?W1uuz%R}%mz_!0rnlJ4A%4Z@h}-wgMxZf; zVtyc>$PNjc!N!Z5$>{^1(?~grBYtDO&qudtoF?zj2+53Q*-9af7VG1$JHa{;-q@Qh zjDsJ`^_hQW9+X!R*ow}rg*Zd8qQ=dS}eU-lWxHAnqkllK2 zz%U_$z}b)bL^yn8)$^h$HV5wq7L5#@AWCv&hpoobZ9Ko2^!C=+18#!yR@eS4*7H1Z z3l-Q_;qw+Yj_-=I_#+ZX^?}X12&?m6jJ!>aT|dF#-Z1?R@%5wfCKnTqagsZ9MD^(k z`xHN8 zL*=TAV+`{Hg+mLEH(89Dl=Fr)dR$(MdVF^87uf;v`iQJH+P!B_X7s2_dA1WnJIGah z@X$(t)a13Pse__o;`sDviuHv7d2C7C^b=XPw+ zb#w=8>^@3Bq3tQBn^QZC?%aBF3#zeEXdZ&-8TAlw@mf~c4sF305+HAc+dfVRvPk^{ z>a9Vqk9j8L+0}<~>$Y^~dxX45#MH2{%iRE|8ZdRlP_VimLvTlXc7(zMx~VPMaLU(p zuA47FzUhNQy@@>r;XKESjSl{E*&G^|_iCRACcLhFb(%qTE-sEDGar<=-Grf-#{Pwt zrSnaA^++QN-a&)5R@$`A^!52Ee2~PZGs0%$YZIZSu$^kUUE3cLM+;4>FF{_$4kGkb zWL&yWek9B8BRg(Lt)iX1dMP2@8J@W?L#v^{d)vUE)dg5Qw?b#EsIap9&vc7Rv3sig zPB6c(d?~$r(UT0*Vn6UKns#iE6Vov(gj{gs+HaMmDu&qMh^)s~O3hLNad5Q(|B(?+ zErWkjIA3q#71;NT*@Uz&Nq{QnbFv!+wNhDS`3GJLKoR}q)!CU=d6K@MeoS3B`;01j zRGq6{-<;D572Cm^ni#6EpG`d_RT;E=i%m_hX}HJ)bWft36{{iP+Dz5@_k#*(N^d2k zxo^fqo{9_DhgN4p7&Ca;GLa|>#ci^?Th9mW)nZ9Eb zLHl*NBFIP+#{#^aGcAMLNQD;0)89zNwO2Q9lad|gs6BfFxcTIZvZ9ltMB_~Z%&6?@tapP{9e=$$Tcsdk^gd6$WkJ;cw2@@4A{Hma?T?OhudQVrOm; z@FpcTpLt!2PMB>kK40?q(r2a|@}ix;QB+I`)^vVB+Q{xL<-ki8{kI*suw~qjE$XN{ z(tKBp=v1q+Emy=HRuK12BH*ey^=}yS58QZPpSG|d+x3V-71Z-8CNUmua54Kd zPxRb7zwbP@a9%7Xe{D@`U1X_x@QWi+CGmPReYGISODOOWzT09s=Ms}nyYBFHj2Ha7 zyF(Q@FAoeo57nD~qXisKLSgDr9rXqPuLal1+Q8Fu3&`*c^|{_uqy95i8SBVvq>!^i zzy{?TZ&;3#ymFba9wVppM_ktrzgUVL7i(ykv7I#S+9ly+pNdI;-DaZyD4q%@DOueY zDqi5EKzY-0dQa?e*|xISb9c*M4S7>jNwA5<4Ii_yfNU#^;3=a%?n{YDqcAMcDEi2E zld$|N;zQU%$mGjxAdQ(|h}>R3g&LAS@mV*FFYzbqgiU6wq^g!C0&yFKD&xmV`N*m( zwKXb^IvcQtb-@Rj#^c$H^1`8bOEO0UU9gMNdJWHd{Syt9s&%Z1JlXv2U%nEo<)j@! zylVjzvdJkGT;e7&xAGKvPE1K8wnL+F6SWcE`AE`eRj~{+83KV|O3q|f8&x=BZ4C}= zrUN$FN>!zx%kgwm}Bn_R~ofjwbm}7)ATRj1k zw0Aowr3#mRXCaC4RIv@1JXH3aP))r`t`>LZqEuGL>58o#Nx=M{ zQku;ON0#>%(>LTzLbW7o)PAA+<+Sg=Rf`;i==adgkOn}z7^`Z(e7zk)I9YbdyS_5r zZ<)4U*d>P%yz2i1uTfb?CQc3_!qZH2mkq(;?eD$Tj))kP;|c zEzMs@|Ew2Lg3?2tEt8J`LIJg*d~U!G7#xY z@HWeeN=Qp}P9C=fe!Qec2de2ZpIjWA506ZAcP69#RG9>OEOa6dCq#_0S=D_TBN`dj zfi$SG+T*b9Nq$t~!P|6fm-R}7OI4*yQnhAA@`xNMV?`#F^R#AgBa#yl(IWURAN)HJ zj`qV}zyj8k_7=6YL6q3dtvY`;HXCZ}vfERQt;>J<$7*|`Nwua#tvEYUc+%vIVN^?T zt^Z8)D7UHC!mDRABsH=BBHy~I?>pu%!8W<7*_O!@E&G$Jth2X2!TXQA`l3dO7Oy!5 zrR0DO<5PG9E*#-P2;7LC1vQ4@cy;CQ=}rOrLY=GD_C$im;Ig&vpfs1hHHa5is4HdS zVW+G0D%O)5-NJ*5m;agPL`G<=rNVe~V-96$%KCgCWWSk#O-gYc!Tj{mC+B;2e4x;t zt7%u3`Is)M6}O&S=)^6F5SrVoxK8~*k1Je*C15EQK?6x^bUKHhs6HYcC^zsrLj!U~ z=_3|-6$c09SFGC=_&m@6)Y!ep} z%ksOB*{l0OE(ZT7AL6Z63}Ybj9O{GnlPe-cZu~nzb*jJk^54N|pI;x+jY?td8dF`z zlLv+&2;|HCrA(n1I2IDhxGm*6hpc4abmiBYrKYjU3`lG4%1vCykbm1>OKI~g)n!xHOEmZ#xIlKjCG%2iV^E?VW*Af`9$#sRg~ zkr@G=Mhi^kDJw3Lq2tD=GQTn&*qf4i_LCmk^oqp zZPa>Y9S&zu{0X)fPb!{$lKQv(q1t6=BiP`Kp!_$+>8@*fxG2@5YfUw6HAC?rKa-wT zqxv&{;^bU;UtPAtBsKMPX;&GYBm7|vRl7rIPDV_$d==9rl)gW%i^bk7jSa` zFoA=<(O0)*1*w2px|D%;V;S&5A>N;UCdRZ1L+}l5vX2uv)v3-lhi}1m=YCI(K{gpAw z1&a26lyQ@=gKPB)u_g{E1m8C&2zutp_4SXWCEBtu|Cw+Nc!hevf_IWlEw+B>LlYoz z%EJ9esBE~++La*X((--)XRav45dpVDJE+WCwhpfuZCnqs!^u(jEw|P16oSp`xwJKr z_b#t5;mtJBN^lvSzbmBkPqQs`4W>__*(+RAS*CeFwyU{1*(0+PQxU%EHwSK<_0EXk< z72cQ{9d3mfMpGRtaMb*zwa~gqFDC=LqNIMuHZYdSN(he4(@O+H$H^FbQ`HC=e-Z{9e&{a|62pMt0|zlyoE z&8o_Nx~=~uH+eWQnr;V1#_3=^Ru(3dTLREp8~f&#$}pdh8*xXZBu-w!PrT8IM`Uy$ zOI{ch@@*T$$U=dcoTj?jN1m@f$Qu+rAd}BIqn*#PtTWzj+rMt;Xu}$y)`ej{|1?@k zfg_5xtdxMxND>TtFgc7njV9N*ff(Fo;tf5`M1jcudNIaxGkx6vQ0$_cQ0%ILd)^W- zKpRl-csql%M9#$WI$H=dhLT9lM=PQo+&zZL)WM9M3+7-nhDG@r+~w5O&e4@x9Kz_m zu(sZd?T87(6CcsOTL^G-O40B#zE}SB+aqp|g0HOsAZXDd5DxAfV#zeUVtif;?OIhg zw~%*Fl)aU{>PONUtrd>gLY;ihw{^gOKg2v_1&KC!E^k>qAbqOPwkYW7Q6Cg| ztHIrpGqktUWU;(8scnYlz(u{(DTwjH@e+E< zd|rI8$y8bB1%Hm~=yTf^_ZI(!Iq|u+>1763mW(rD%1qX>vLGC zy`wP6;-5H%Xklikpv_hy-wv?`wQFgbKVx_UpMcZ&yJwJVEITz0UV# zEkbbTw>|-x$7=-T&DSbr(T+dyKTbKHUo`Ye-N`f1eR<1b=)76F|L?f1bUGqXgG5fK z*juCR7kS-^{LHIC{@ADRqoa}Fk+E0~+mQob$hQh1dnNvtt%FEsb}x&Q1yd8pnD{D$ zbo-RUtD-gAmw1QOS6rs0rBilO%plku8hq9P@q8k9-R*AL;yZ#m~`4H9}v8Xd4^ z6M%LBrA;pDeh1aXbIafDF3DX4lIu=xYhjCiE_}h11`9;w6+I8O+n`%>Db^+QX1FzZ zx(O+S2t|mJLqqs$<;hJcXn3SsdvDE$E1Sx`bKI{uD!DDLeVk_ zu{k->8=mqIj6(!|a1xjOBJD(y?9eN^Ok@zU#I0e}$khbgLwB}jOKTUQ=u%od=(xkJ zj0%!upV)CMVO4oQN4;Q|khS|P*uslUnVW9Py)*5oMs-_>Hng@TNDs3|bn8kEnYd0a zsbm+sf||Kc54^&CEQtcgPA#Tq;q2L&^-kii%H*`$U906{w z_)Fz`dks2cRmbg6chV=r2f-?lv#l|W`)<$jV96!9by*|)WyecUOr~wXtbWh=?IX6P z1W(1l_M_`|>fIWOozZ=7OXJsWu$7*xX}|GCm=4~uEAVSI_|g;Pukv)+@AYO){j4zh z>^r}R&~oH;fo`2CTI&j;+S1V7p7Vu=%9N>v)xL(>ehb%r)L-hxFrU+(yYybmytHeN zr01)JMY76M&NcDO7Yi@1dXXU&%pt85SZ(yiO(OpL@Z(+E%^e0IhW#nXeWNT$O+0H4h(LtE9ng%$sDxr5*#sRSpX285+ZlN8+Ib zfBXIU(~xHeu7kze>mO&xPwE3!0cq)dQet+B!fvvF$jhsMc2gt@v)i6oSBlmH_fZlM z+(9d_w=<3Edt-=!Y>tjEZ37a6XdX^q3R2AT$R<0j#yGQ~Stc4D0}0}z?3d6blAl3^ z=nf>is2lrA?%4+)e}I}{2!6D)D=0Lt&)6z_l!d)qj&27wm2@c`Zq-R4{J~X(Hs$zE6X4 zJ{Gq65{wX_5mfk*^;<5Y-!Ps@W-1OB7_8C60dH{{v}EmO2wYykT9mIeRQ~jSBuGzu zl6+~AJ~qAvQP_!B3iHf@v5)-v-fQY~{jIz3xR)={)4n7*@-5!wot(hL3x~$%eOu`% z!hm)MDMnEY)+S{SWl|E_Bwx5+&_hhFW;eO9x@l z=b+FcI99wrKJWKcN-jilXkjcR{4y5hAYg+ys$3?kycY)zA0280&ZxR_OKMTK@h*oW zR-jo-h`KCKV$6@w{x>LEkwr7hHfyW$T5PuXSTkE3JaSY?{oYYT#LYVZSilfd)TVWCAN2LD}?l&-+TPOnRKFAK zM8gVU>?+WH6)4i#kA|EW@b47KYNBKAH?B8jnmJ!6I`p}*VcY|%*|Uj(H3#SQj#en% z&fv->j1cEAE2y$Fz|La6(j3P+x?RqrG_xIcVI`MYK8A@vKHgC7Oe|v5ijIO7{X?S*nr8$EBEydrLk|25aO1pz3KGB!aRC)(h|BWzk<4|!SMYPCG((w$%QEL6MfSdGq` z^=(Cja_@GNbU?posr7Z+vs8aA(;iVanWeMFayFsqG3_v@PFDnMM}(bqEit@7S55hE znkibw+bmY@sXDJW4P8tNq_e<)tm~b}1;ta1pJ87O#B|Mmi+?wEg!o3U3F|G-*w&WN z+W`2J0A~uHwU2TcG&AVu=Y%oRJHb6iCz8Jjs;0dCX|^|hw^B%qItPP|<2S*9JsqCg z>*@aZPU~4l#8#TOG)aa7Go3mMS&FmKpYw3)0+L4|2^!=6`%Uk#191lwgbytf|C40@ zGj^w(EIL=$*R#}d-wE_2-8*`NdjW?IFnq{RmE&>oe?}S@(_@b5zmvJttRi9E5Y)7d zG+UJ!X#|tOprqm&)6i-5yH_!2gM(d>C;Bv{sXixzrqcSA+7az6KLz$+6X!X)zcn8& zbJ&lijQ&}kR011O0;822L=uum3qyy37Lz{~Q-SwZ;eX4(hW>@#Z9IQr$oK!yepIkw zQwK8qT}M|Ka8l05IVK?{c0&x$zqd1n50fD7pJjMCCI4D|Vukqsd{9*UN|Evg7GeHx zyFvJ0MkxCKO>i2uHEP;FIx3d`l%Ho^2~)(ZLvxF(*!OJ~7+(o5Rjas~5V*WdFwe

    h(3A*Z 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

    QTluO|p@5itXyv?P!2$8)v>s~ya%@bZa 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 P1HoU&C`lJRH}v^`Y-AP9 literal 0 HcmV?d00001 diff --git a/src/workshops/github-projects/images/github-projects-ticket-to-issue01.png b/src/workshops/github-projects/images/github-projects-ticket-to-issue01.png new file mode 100644 index 0000000000000000000000000000000000000000..e31652fbd628d9c6de4b92ea4d332259c05e91ed GIT binary patch literal 227516 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 W6b!YMuqsLJjF!mRpwIr`x!BoB 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

    A3MAj1SfX~CQMj*~s(FWQj7E1&;hJCC| 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 z.K=0fyv!fA|4sUfc;j(JBo50FMVS+jcE?L4XV; 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 literal 0 HcmV?d00001 diff --git a/src/workshops/github-projects/images/github-projects-workflows.png b/src/workshops/github-projects/images/github-projects-workflows.png new file mode 100644 index 0000000000000000000000000000000000000000..ca99599def652c05336919c8e239f8a01178be74 GIT binary patch literal 74082 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 z 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 literal 0 HcmV?d00001 diff --git a/src/workshops/github-projects/index.md b/src/workshops/github-projects/index.md new file mode 100644 index 00000000..d49d9b3d --- /dev/null +++ b/src/workshops/github-projects/index.md @@ -0,0 +1,134 @@ +--- +title: GitHub Projects Workflow +description: Learn how to use GitHub Projects for effective project management and collaboration. +tags: + - workshop + - github + - project management +keywords: + - github projects + - agile + - project planning +author: Alexander +starter: false +--- + +# GitHub Projects Workflow Workshop + +This workshop will guide you through the process of setting up and using GitHub Projects for effective project management and collaboration. You'll learn how to create a project, add tasks, link them to issues, and use different views to track progress. + +## Part 1: Understanding GitHub Projects + +### Step 1: What is GitHub Projects? + +Despite its name, GitHub Projects is not tied to a single repository. It's a project management tool that can be used across multiple repositories or even without any repository at all. + +1. GitHub Projects is a flexible tool for planning and tracking work. +2. It can be used for various purposes, from software development to event planning. +3. Projects are not automatically tied to repositories when created. + +initialise repo with readme + +### Step 2: Creating a GitHub Project + +1. Go to your GitHub profile or organization. +2. Click on "Projects" in the top navigation bar. +3. Click "New project". +4. Choose a template or start from scratch. +5. Give your project a name and description. + +### Step 3: Managing Access + +Like repositories, GitHub Projects can be public or private, and you need to manage access to them. + +1. Go to your newly created project. +2. Click on the three dots (...) menu in the top right corner. +3. Select "Settings". +4. Go to "Manage access". +5. Add collaborators as needed. + +initialise repo with readme + +## Part 2: Working with GitHub Projects + +### Step 1: Exploring Different Views + +GitHub Projects offers different views to help you visualize your work: + +1. Board view: A Kanban-style board for task management. +2. Table view: A spreadsheet-like view for detailed tracking. +3. Roadmap view: A Gantt chart for timeline visualization. + +Let's explore each of these: + +1. In your project, click on the dropdown next to the current view name (likely "Board"). +2. Select each view and observe how the information is presented differently. + +### Step 2: Creating Tasks (Tickets) + +In the Board view: + +1. Click the "+ Add item" button at the bottom of a column. +2. Type a title for your task. +3. Press Enter to create the task. + +### Step 3: Converting Tasks to Issues + +Converting a task to an issue allows for better traceability and automation. + +#### Method 1: From the task detail + 1. Click on a task to open its details. + 2. Click on the "Convert to issue" button. + 3. Select the repository where you want to create the issue. + 4. Click "Create issue". + +initialise repo with readme + +#### Method 2: Using the three dots menu + 1. Click on the three dots (...) menu next to the task. + 2. Select "Convert to issue" from the dropdown menu. + +initialise repo with readme + +### Step 4: Assigning Tasks + +1. Click on a task to open its details. +2. In the sidebar, click on "Assignees". +3. Select the team member you want to assign the task to. + +### Step 5: Using the Roadmap View + +The Roadmap view helps in setting deadlines and visualizing the project timeline. + +1. Switch to the Roadmap view. +2. Click and drag on a task to set its start and end dates. +3. Observe how tasks are arranged on the timeline. + +initialise repo with readme + +## Part 3: Integrating with Repositories + +### Step 1: Linking a Project to a Repository + +1. Go to your repository on GitHub. +2. Click on the "Projects" tab. +3. Click "Link a project". +4. Select your project from the list. + +Repeat these steps for each repository you want to link to the project. This allows you to: + +- Track issues and pull requests from multiple repositories in one place +- Create cross-repository dependencies +- Get a holistic view of your entire project, even when the code is distributed across different repositories + +Remember, you can link as many repositories as needed to a single project, making it easier to manage large, multi-component software projects. + +### Step 2: Automating Workflows + +GitHub Projects can automate certain tasks based on repository activity. + +1. In your project, go to "Settings" > "Workflows". +2. Click "New workflow". +3. Set up a rule, for example: "When an issue is closed, set its status to Done" (Note: This workflow may already exist by default in some project templates). + +initialise repo with readme \ No newline at end of file From 54331bd24c515a343154755ad5dc08727873939f Mon Sep 17 00:00:00 2001 From: Alexander Date: Wed, 4 Sep 2024 12:19:23 +0100 Subject: [PATCH 082/118] Added github projects workshop to week1 --- src/course/syllabus/foundation/markup/schedule.md | 1 + 1 file changed, 1 insertion(+) diff --git a/src/course/syllabus/foundation/markup/schedule.md b/src/course/syllabus/foundation/markup/schedule.md index 376d8d3e..b5abde24 100644 --- a/src/course/syllabus/foundation/markup/schedule.md +++ b/src/course/syllabus/foundation/markup/schedule.md @@ -5,6 +5,7 @@ This topic is focused on the fundamental building blocks of web pages—accessib _To be completed ahead of Week 1_ - [Git workflow workshop](/workshops/git-workflow/) +- [GitHub Projects workshop](/workshops/github-projects) - [CSS Layout workshop](/workshops/css-layout/) - [Semantic HTML workshop](/workshops/semantic-html/) - [Accessibility workshop](/workshops/learn-a11y/) From 1b370ef57b95495bca789ce754180f811c36b656 Mon Sep 17 00:00:00 2001 From: Alexander Date: Thu, 5 Sep 2024 12:23:05 +0100 Subject: [PATCH 083/118] Added support for Overview tab --- src/_includes/course.11ty.js | 4 +- src/_includes/syllabus.11ty.js | 4 ++ .../{markup => week01}/employability.md | 0 .../foundation/{markup => week01}/homework.md | 0 .../{markup => week01}/learning-outcomes.md | 0 .../schedule.md => week01/overview.md} | 33 +++++------------ .../foundation/{markup => week01}/project.md | 0 .../syllabus/foundation/week01/schedule.md | 37 +++++++++++++++++++ .../foundation/{markup => week01}/spikes.md | 0 .../syllabus/foundation/week01/week01.json | 11 ++++++ .../{node => week02}/employability.md | 0 .../foundation/{node => week02}/homework.md | 0 .../{node => week02}/learning-outcomes.md | 0 .../foundation/{node => week02}/project.md | 0 .../foundation/{node => week02}/schedule.md | 0 .../foundation/{node => week02}/spikes.md | 0 .../syllabus/foundation/week02/week02.json | 10 +++++ 17 files changed, 73 insertions(+), 26 deletions(-) rename src/course/syllabus/foundation/{markup => week01}/employability.md (100%) rename src/course/syllabus/foundation/{markup => week01}/homework.md (100%) rename src/course/syllabus/foundation/{markup => week01}/learning-outcomes.md (100%) rename src/course/syllabus/foundation/{markup/schedule.md => week01/overview.md} (75%) rename src/course/syllabus/foundation/{markup => week01}/project.md (100%) create mode 100644 src/course/syllabus/foundation/week01/schedule.md rename src/course/syllabus/foundation/{markup => week01}/spikes.md (100%) create mode 100644 src/course/syllabus/foundation/week01/week01.json rename src/course/syllabus/foundation/{node => week02}/employability.md (100%) rename src/course/syllabus/foundation/{node => week02}/homework.md (100%) rename src/course/syllabus/foundation/{node => week02}/learning-outcomes.md (100%) rename src/course/syllabus/foundation/{node => week02}/project.md (100%) rename src/course/syllabus/foundation/{node => week02}/schedule.md (100%) rename src/course/syllabus/foundation/{node => week02}/spikes.md (100%) create mode 100644 src/course/syllabus/foundation/week02/week02.json diff --git a/src/_includes/course.11ty.js b/src/_includes/course.11ty.js index f04ac3e1..5008a443 100644 --- a/src/_includes/course.11ty.js +++ b/src/_includes/course.11ty.js @@ -25,8 +25,8 @@ exports.render = ({ page: { url }, content }) => { <${Section} title="Foundation" url=${url} subpath="course/syllabus/foundation">

    rp9I`XB;>oziL<#o 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