From d67cd073bf8f9ca58c4e6a787c033c3513c3a2cf Mon Sep 17 00:00:00 2001 From: jamil314 Date: Tue, 28 May 2024 18:40:07 +0600 Subject: [PATCH 01/19] feat: set up death test case - 1 --- e2e/helpers.ts | 23 +- e2e/testcases/death/.gitkeep | 0 .../death/1-death-event-declaration.spec.ts | 506 ++++++++++++++++++ 3 files changed, 528 insertions(+), 1 deletion(-) delete mode 100644 e2e/testcases/death/.gitkeep create mode 100644 e2e/testcases/death/1-death-event-declaration.spec.ts diff --git a/e2e/helpers.ts b/e2e/helpers.ts index a768d6132..cb9d5d144 100644 --- a/e2e/helpers.ts +++ b/e2e/helpers.ts @@ -14,7 +14,7 @@ export async function createPIN(page: Page) { } } -async function getToken(username: string, password: string) { +export async function getToken(username: string, password: string) { const authUrl = `${AUTH_URL}/authenticate` const verifyUrl = `${AUTH_URL}/verifyCode` @@ -45,6 +45,27 @@ async function getToken(username: string, password: string) { return verifyBody.token } +export const goToSection = async ( + page: Page, + section: 'child' | 'informant' | 'father' | 'mother' | 'documents' | 'preview' +) => { + while (!page.url().includes(section)) { + await page.getByRole('button', { name: 'Continue' }).click() + } +} + +export const getRandomDate = (minAge: number, range: number) => { + const randomDate = new Date() + randomDate.setDate( + new Date().getDate() - + Math.random() * range - + minAge * 365 - + (minAge + 3) / 4 + ) + const [yyyy, mm, dd] = randomDate.toISOString().split('T')[0].split('-') + return { dd, mm, yyyy } +} + export async function ensureLoginPageReady(page: Page) { /* * Wait until config for loading page has been loaded diff --git a/e2e/testcases/death/.gitkeep b/e2e/testcases/death/.gitkeep deleted file mode 100644 index e69de29bb..000000000 diff --git a/e2e/testcases/death/1-death-event-declaration.spec.ts b/e2e/testcases/death/1-death-event-declaration.spec.ts new file mode 100644 index 000000000..bb7474e7c --- /dev/null +++ b/e2e/testcases/death/1-death-event-declaration.spec.ts @@ -0,0 +1,506 @@ +import { expect, test, type Page } from '@playwright/test' +import { createPIN, login } from '../../helpers' + +test.describe('1. Death event declaration', () => { + test.describe.serial('Fill all form sections. Save & Exit', () => { + let page: Page + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test('1.1. Navigate to the death event declaration page', async () => { + await login(page, 'k.mweene', 'test') + await createPIN(page) + await page.click('#header_new_event') + await expect(page.getByText('New Declaration')).toBeVisible() + await expect(page.getByText('Event type')).toBeVisible() + }) + + test.describe('1.2. Validate event selection page', async () => { + test('1.2.1 Validate the contents of the event type page', async () => { + /* + * Expected result: should show + * - Radio buttons of the events + * - Continue button + * - Exit button + */ + await expect(page.getByLabel('Death')).toBeVisible() + await expect(page.getByLabel('Death')).toBeVisible() + await expect(page.getByLabel('Marriage')).toBeVisible() + await expect( + page.getByRole('button', { name: 'Continue' }) + ).toBeVisible() + await expect(page.getByRole('button', { name: 'Exit' })).toBeVisible() + }) + + test('1.2.2 Click the "Continue" button without selecting any event', async () => { + await page.getByRole('button', { name: 'Continue' }).click() + /* + * Expected result: should throw an error as below: + * "Please select the type of event" + */ + await expect( + page.getByText('Please select the type of event') + ).toBeVisible() + }) + + test('1.2.3 Select the "Death" event and click "Continue" button', async () => { + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + + /* + * Expected result: User should navigate to the "Introduction" page + */ + }) + }) + + test.describe('1.3 Validate "Introduction" page', async () => { + test('1.3.1 Validate the contents of introduction page', async () => { + /* + * Expected result: should show + * - verbiage of death event introduction + * - Continue Button + * - Exit Button + * - Save and exit button + * - 3dot menu (delete option) + */ + // await expect(page.getByLabel('Continue')).toBeVisible() + await expect( + page.getByText( + 'Introduce the death registration process to the informant' + ) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Continue' }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Exit', exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Save & Exit' }) + ).toBeVisible() + + await page.locator('#eventToggleMenuToggleButton').click() + await expect( + page.getByRole('button', { name: 'Delete declaration' }) + ).toBeVisible() + }) + + test('1.3.2 Verify the verbiage of introduction page of death event', async () => { + /* + * Expected result: should show + * - I am going to help you make a declaration of death. + * - As the legal Informant it is important that all the information provided by you is accurate. + * - Once the declaration is processed you will receive you will receive an email to tell you + * when to visit the office to collect the certificate - Take your ID with you. + * - Make sure you collect the certificate. A death certificate is critical to support with + * inheritance claims and to resolve the affairs of the deceased e.g. closing bank accounts and setting loans. + */ + await expect( + page.getByText('I am going to help you make a declaration of death.') + ).toBeVisible() + await expect( + page.getByText( + 'As the legal Informant it is important that all the information provided by you is accurate.' + ) + ).toBeVisible() + await expect( + page.getByText( + 'Once the declaration is processed you will receive you will receive an email to tell you when to visit the office to collect the certificate - Take your ID with you.' + ) + ).toBeVisible() + await expect( + page.getByText( + 'Make sure you collect the certificate. A death certificate is critical to support with inheritance claims and to resolve the affairs of the deceased e.g. closing bank accounts and setting loans.' + ) + ).toBeVisible() + }) + + test('1.3.3 Click the "continue" button', async () => { + await page.getByRole('button', { name: 'Continue' }).click() + /* + * Expected result: should navigate to the "Deceased details" page + */ + await expect(page.getByText("Deceased's details")).toBeVisible() + }) + }) + + test.describe('1.4 Validate "Deceased Details" page', async () => { + test('1.4.1 Validate the contents of Deceased details page', async () => { + /* + * Expected result: should see + * - Deceased details block + * - Continue Button + * - Exit Button + * - Save and exit button + * - 3dot menu (delete option) + */ + await expect( + page.getByRole('button', { name: 'Continue' }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Exit', exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Save & Exit' }) + ).toBeVisible() + + await page.locator('#eventToggleMenuToggleButton').click() + await expect( + page.getByRole('button', { name: 'Delete declaration' }) + ).toBeVisible() + }) + + test.skip('1.4.2 Validate Deceased details block', async () => {}) + + test('1.4.3 Click "continue"', async () => { + await page.getByRole('button', { name: 'Continue' }).click() + + /* + * Expected result: should navigate to 'event details' page + */ + await expect(page.getByText('Event details')).toBeVisible() + }) + }) + + test.describe('1.5 Validate "Event Details" page', async () => { + test('1.5.1 Validate the contents of Event details page', async () => { + /* + * Expected result: should see + * - Event details block + * - Continue Button + * - Exit Button + * - Save and exit button + * - 3dot menu (delete option) + */ + await expect( + page.getByRole('button', { name: 'Continue' }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Exit', exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Save & Exit' }) + ).toBeVisible() + + await page.locator('#eventToggleMenuToggleButton').click() + await expect( + page.getByRole('button', { name: 'Delete declaration' }) + ).toBeVisible() + }) + + test.skip('1.5.2 Validate Event details block', async () => {}) + + test('1.5.3 Click "continue"', async () => { + await page.getByRole('button', { name: 'Continue' }).click() + + /* + * Expected result: should navigate to 'informant details' page + */ + await expect(page.getByText("Informant's details")).toBeVisible() + }) + }) + + test.describe('1.6 Validate "Informant details" page', async () => { + test('1.6.1 Validate the contents of informant details page', async () => { + /* + * Expected result: should see + * - Relationship to deceased dropdown + * - Phone number field + * - Email address field + * - Continue button + * - Exit button + * - Save &exit button + * - 3dot menu (delete option) + */ + await expect(page.getByText('Informant Type')).toBeVisible() + await expect(page.getByText('Phone number')).toBeVisible() + await expect(page.getByText('Email')).toBeVisible() + await expect( + page.getByRole('button', { name: 'Continue' }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Exit', exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Save & Exit' }) + ).toBeVisible() + await page.locator('#eventToggleMenuToggleButton').click() + await expect( + page.getByRole('button', { name: 'Delete declaration' }) + ).toBeVisible() + }) + + test.skip('1.6.2 Click the "continue" button without selecting any relationship to deceased', async () => {}) + + test('1.6.3 Select eny option in relatinship to deceased and click the "continue" button', async () => { + await page.getByText('Select').click() + await page.getByText('Son', { exact: true }).click() + await page.getByRole('button', { name: 'Continue' }).click() + + /* + * Expected result: should navigate to "sposue details" page + */ + await expect( + page.getByText('Spouse details', { exact: true }) + ).toBeVisible() + }) + }) + + test.describe('1.7 Validate "Spouse Details" page', async () => { + test('1.7.1 validate the contents of spouse details page', async () => { + /* + * Expected result: should see + * - Mother's details block + * - Continue button + * - Exit button + * - Save & exit button + * - 3dot menu (delete option) + */ + + await expect( + page.getByText('Spouse details', { exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Continue' }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Exit', exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Save & Exit' }) + ).toBeVisible() + await page.locator('#eventToggleMenuToggleButton').click() + await expect( + page.getByRole('button', { name: 'Delete declaration' }) + ).toBeVisible() + }) + + test.skip('1.7.2 Validate Spouse details block', async () => {}) + + test('1.7.3 click continue', async () => { + await page.getByRole('button', { name: 'Continue' }).click() + + /* + * Expected result: should navigate to "Supporting documents" page + */ + await expect( + page.getByText('Upload supporting documents', { exact: true }) + ).toBeVisible() + }) + }) + + test.describe('1.8 Validate "Supporting Document" page', async () => { + test('1.8.1 validate the contents of Supporting Document page', async () => { + /* + * Expected result: should see + * - Supporting Document block + * - Continue button + * - Exit button + * - Save & exit button + * - 3dot menu (delete option) + */ + + await expect( + page.getByText('Upload supporting documents', { exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Continue' }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Exit', exact: true }) + ).toBeVisible() + await expect( + page.getByRole('button', { name: 'Save & Exit' }) + ).toBeVisible() + await page.locator('#eventToggleMenuToggleButton').click() + await expect( + page.getByRole('button', { name: 'Delete declaration' }) + ).toBeVisible() + }) + + test.skip('1.8.2 Validate Supporting Document block', async () => {}) + + test('1.8.3 click continue', async () => { + await page.getByRole('button', { name: 'Continue' }).click() + + /* + * Expected result: should navigate to "Review" page + */ + await expect( + page + .getByRole('button', { name: 'Send for review' }) + .or(page.getByRole('button', { name: 'Register' })) + ).toBeVisible() + }) + }) + + test.describe('1.9 Validate "Save & Exit" Button ', async () => { + test('1.9.1 Click the "Save & Exit" button from any page', async () => { + await page.getByRole('button', { name: 'Save & Exit' }).click() + + /* + * Expected result: should open modal with: + * - Title: Save & Exit + * - Helper text: All inputted data will be kept secure for future editing. + * Are you ready to save any changes to this declaration form? + * - Cancel Button + * - Confirm Button + */ + await expect( + page.getByRole('heading', { name: 'Save & exit?' }) + ).toBeVisible() + await expect( + page.getByText( + 'All inputted data will be kept secure for future editing. Are you ready to save any changes to this declaration form?' + ) + ).toBeVisible() + await expect(page.getByRole('button', { name: 'Cancel' })).toBeVisible() + await expect( + page.getByRole('button', { name: 'Confirm' }) + ).toBeVisible() + }) + + test('1.9.2 Click Cancel', async () => { + await page.getByRole('button', { name: 'Cancel' }).click() + + /* + * Expected result: should close the modal + */ + await expect( + page.getByRole('heading', { name: 'Save & exit?' }) + ).toBeHidden() + }) + + test('1.9.3 Click Confirm', async () => { + await page.getByRole('button', { name: 'Save & Exit' }).click() + await page.getByRole('button', { name: 'Confirm' }).click() + + /* + * Expected result: should + * - be navigated to "in-progress" tab + * - find the declared death event record on this page list with saved data + */ + await expect(page.locator('#content-name')).toHaveText('In progress') + await expect(page.getByText('0 seconds ago')).toBeVisible() + }) + }) + }) + test.describe('1.10 Validate "Exit" Button', async () => { + test.beforeEach(async ({ page }) => { + await login(page, 'k.mweene', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + + await page.getByRole('button', { name: 'Exit', exact: true }).click() + }) + + test('1.10.1 Click the "Exit" button from any page', async ({ page }) => { + /* + * Expected result: should open modal with: + * - Title: Exit without saving changes? + * - Helper text: You have unsaved changes on your declaration form. Are you sure you want to exit without saving? + * - Cancel Button + * - Confirm Button + */ + await expect( + page.getByRole('heading', { name: 'Exit without saving changes?' }) + ).toBeVisible() + await expect( + page.getByText( + 'You have unsaved changes on your declaration form. Are you sure you want to exit without saving?' + ) + ).toBeVisible() + await expect(page.getByRole('button', { name: 'Cancel' })).toBeVisible() + await expect(page.getByRole('button', { name: 'Confirm' })).toBeVisible() + }) + + test('1.10.2 Click Cancel', async ({ page }) => { + await page.getByRole('button', { name: 'Cancel' }).click() + + /* + * Expected result: should close the modal + */ + await expect( + page.getByRole('heading', { name: 'Exit without saving changes?' }) + ).toBeHidden() + }) + + test('1.10.3 Click Confirm', async ({ page }) => { + await page.getByRole('button', { name: 'Confirm' }).click() + /* + * Expected result: should be navigated to "in-progress" tab but no draft will be saved + */ + expect(page.locator('#content-name', { hasText: 'In progress' })) + await expect(page.getByText('0 seconds ago')).toBeHidden() + }) + }) + + test.describe('1.11 Validate "Delete Declaration" Button ', async () => { + test.beforeEach(async ({ page }) => { + await login(page, 'k.mweene', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + + await page.locator('#eventToggleMenuToggleButton').click() + await page + .getByRole('button', { name: 'Delete declaration', exact: true }) + .click() + }) + + test('1.11.1 Click the "Delete Declaration" button from any page', async ({ + page + }) => { + /* + * Expected result: should open modal with: + * - Title: Delete draft? + * - Helper text: Are you certain you want to delete this draft declaration form? Please note, this action cant be undone. + * - Cancel Button + * - Confirm Button + */ + await expect( + page.getByRole('heading', { name: 'Delete draft?' }) + ).toBeVisible() + await expect( + page.getByText( + 'Are you certain you want to delete this draft declaration form? Please note, this action cant be undone.' + ) + ).toBeVisible() + await expect(page.getByRole('button', { name: 'Cancel' })).toBeVisible() + await expect(page.getByRole('button', { name: 'Confirm' })).toBeVisible() + }) + + test('1.11.2 Click Cancel', async ({ page }) => { + await page.getByRole('button', { name: 'Cancel' }).click() + + /* + * Expected result: should close the modal + */ + await expect( + page.getByRole('heading', { name: 'Exit without saving changes?' }) + ).toBeHidden() + }) + + test('1.11.3 Click Confirm', async ({ page }) => { + await page.getByRole('button', { name: 'Confirm' }).click() + + /* + * Expected result: should be navigated to "in-progress" tab but no draft will be saved + */ + expect(page.locator('#content-name', { hasText: 'In progress' })) + await expect(page.getByText('0 seconds ago')).toBeHidden() + }) + }) + + test.describe('1.12 Technical test for shortcuts', () => { + test.skip('Shortcut for quickly creating declarations', async () => {}) + }) +}) From d454d5318f5b8c752581ed7c3cbdcc33f52bdb45 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Tue, 28 May 2024 20:44:37 +0600 Subject: [PATCH 02/19] feat: implemented death testcase - 8 --- ...8-validate-declaration-review-page.spec.ts | 1182 +++++++++++++++++ 1 file changed, 1182 insertions(+) create mode 100644 e2e/testcases/death/8-validate-declaration-review-page.spec.ts diff --git a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts new file mode 100644 index 000000000..971297e1d --- /dev/null +++ b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts @@ -0,0 +1,1182 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('8. Validate declaration review page', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + gender: 'Male', + birthDate: getRandomDate(75, 200), + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'National ID' + }, + address: { + Country: 'Farajaland', + Province: 'Pualula', + District: 'Pili' + } + }, + event: { + date: getRandomDate(0, 20), + cause: { + established: false, + details: '' + }, + place: "Deceased's usual place of residence" + }, + informantType: 'Spouse', + informantEmail: faker.internet.email(), + spouse: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + birthDate: getRandomDate(50, 200), + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'National ID' + }, + address: { + sameAsDeceased: true + } + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + await login(page, 'k.bwalya', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('8.1 Field agent actions', async () => { + test.describe('8.1.0 Fill up death registration form', async () => { + test('8.1.0.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page + .getByText(declaration.deceased.gender, { exact: true }) + .click() + + await page + .getByPlaceholder('dd') + .fill(declaration.deceased.birthDate.dd) + await page + .getByPlaceholder('mm') + .fill(declaration.deceased.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.deceased.birthDate.yyyy) + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + + await page + .locator('#deceasedNationalId') + .fill(declaration.deceased.identifier.id) + + await page.locator('#statePrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.Province, { exact: true }) + .click() + await page.locator('#districtPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.District, { exact: true }) + .click() + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('8.1.0.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place).click() + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('8.1.0.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page + .locator('#registrationEmail') + .fill(declaration.informantEmail) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('8.1.0.4 Fill spouse details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.spouse.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.spouse.name.familyName) + + await page.getByPlaceholder('dd').fill(declaration.spouse.birthDate.dd) + await page.getByPlaceholder('mm').fill(declaration.spouse.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.spouse.birthDate.yyyy) + + await page.locator('#spouseIdType').click() + await page + .getByText(declaration.spouse.identifier.type, { exact: true }) + .click() + + await page + .locator('#spouseNationalId') + .fill(declaration.spouse.identifier.id) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + }) + + test.describe('8.1.1 Navigate to declaration preview page', async () => { + test('8.1.1.1 Verify informations added in previous pages', async () => { + goToSection(page, 'preview') + + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's date of death + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Mother's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Mother's Type of Id + * - Mother's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Mother's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.District + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect( + page.locator('#informant-content #Informant') + ).toContainText(declaration.informantType) + await expect( + page.locator('#informant-content #Informant') + ).toContainText('Change') + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's date of death + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText( + format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect( + page.locator('#spouse-content #Nationality') + ).toContainText(declaration.spouse.nationality) + await expect( + page.locator('#spouse-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText( + 'Yes' + ) + }) + }) + + test.describe('8.1.2 Click any "Change" link', async () => { + test("8.1.2.1 Change deceased's name", async () => { + await page + .locator('#deceased-content #Full') + .getByText('Change') + .click() + declaration.deceased.name = { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + } + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's name + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + }) + + test("8.1.2.2 Change deceased's gender", async () => { + await page.locator('#deceased-content #Sex').getByText('Change').click() + declaration.deceased.gender = 'Female' + await page.locator('#gender').click() + await page + .getByText(declaration.deceased.gender, { exact: true }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's gender + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + }) + + test("8.1.2.3 Change deceased's birthday", async () => { + await page + .locator('#deceased-content #Date') + .getByText('Change') + .click() + declaration.deceased.birthDate = getRandomDate(5, 200) + await page + .getByPlaceholder('dd') + .fill(declaration.deceased.birthDate.dd) + await page + .getByPlaceholder('mm') + .fill(declaration.deceased.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.deceased.birthDate.yyyy) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's birthday + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + }) + + test("8.1.2.4 Change deceased's ID type", async () => { + await page + .locator('#deceased-content #Type') + .getByText('Change') + .click() + declaration.deceased.identifier.type = 'Passport' + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's ID type + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + }) + test("8.1.2.5 Change deceased's ID", async () => { + await page.locator('#deceased-content #ID').getByText('Change').click() + declaration.deceased.identifier.id = faker.random.numeric(10) + await page + .locator('#deceasedPassport') + .fill(declaration.deceased.identifier.id) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's ID + */ + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + }) + + test("8.1.2.6 Change deceased's address", async () => { + await page + .locator('#deceased-content #Usual') + .getByText('Change') + .click() + declaration.deceased.address.Province = 'Sulaka' + declaration.deceased.address.District = 'Afue' + await page.locator('#statePrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.Province, { exact: true }) + .click() + await page.locator('#districtPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.District, { exact: true }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's address + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.District + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Province + ) + }) + + test.skip('8.1.2.7 Change informant type', async () => { + await page + .locator('#informant-content #Informant') + .getByText('Change') + .click() + declaration.informantType = 'Father' + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change informant type + */ + await expect( + page.locator('#informant-content #Informant') + ).toContainText(declaration.informantType) + }) + + test('8.1.2.8 Change registration email', async () => { + await page + .locator('#informant-content #Email') + .getByText('Change') + .click() + declaration.informantEmail = faker.internet.email() + await page + .locator('#registrationEmail') + .fill(declaration.informantEmail) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change registration email + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + }) + + test("8.1.2.9 Change spouse's name", async () => { + await page.locator('#spouse-content #Full').getByText('Change').click() + declaration.spouse.name.firstNames = faker.name.firstName('female') + declaration.spouse.name.familyName = faker.name.lastName('female') + await page + .locator('#firstNamesEng') + .fill(declaration.spouse.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.spouse.name.familyName) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's name + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + }) + test("8.1.2.10 Change spouse's birthday", async () => { + await page.locator('#spouse-content #Date').getByText('Change').click() + declaration.spouse.birthDate = getRandomDate(19, 200) + await page.getByPlaceholder('dd').fill(declaration.spouse.birthDate.dd) + await page.getByPlaceholder('mm').fill(declaration.spouse.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.spouse.birthDate.yyyy) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's birthday + */ + await expect(page.locator('#spouse-content #Date')).toContainText( + format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + }) + test("8.1.2.11 Change spouse's nationality", async () => { + await page + .locator('#spouse-content #Nationality') + .getByText('Change') + .click() + declaration.spouse.nationality = 'Holy See' + await page.locator('#nationality').click() + await page + .getByText(declaration.spouse.nationality, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's nationality + */ + await expect( + page.locator('#spouse-content #Nationality') + ).toContainText(declaration.spouse.nationality) + }) + test("8.1.2.12 Change spouse's ID type", async () => { + await page.locator('#spouse-content #Type').getByText('Change').click() + declaration.spouse.identifier.type = 'Passport' + await page.locator('#spouseIdType').click() + await page + .getByText(declaration.spouse.identifier.type, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's ID type + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + }) + test("8.1.2.13 Change spouse's ID", async () => { + await page.locator('#spouse-content #ID').getByText('Change').click() + declaration.spouse.identifier.id = faker.random.numeric(10) + await page + .locator('#spousePassport') + .fill(declaration.spouse.identifier.id) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's ID + */ + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + }) + }) + + test.describe('8.1.3 Validate supporting document', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.1.4 Validate additional comments box', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.1.5 Validate the declaration send button', async () => { + test.skip('Skipped for now', async () => {}) + }) + + test('8.1.6 Click send button', async () => { + await page.getByRole('button', { name: 'Send for review' }).click() + await expect(page.getByText('Send for review?')).toBeVisible() + }) + + test('8.1.7 Confirm the declaration to send for review', async () => { + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await page.getByRole('button', { name: 'Sent for review' }).click() + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + /* + * Expected result: The declaration should be in sent for review + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('8.2 Registration agent actions', async () => { + test('8.2.1 Navigate to the declaration preview page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready for review' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Review', exact: true }).click() + }) + test('8.2.1.1 Verify informations added in previous pages', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's date of death + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Mother's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Mother's Type of Id + * - Mother's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Mother's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.District + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's date of death + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText( + format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + + test.describe('8.2.2 Click any "Change" link', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.2.3 Validate supporting document', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.2.4 Validate additional comments box', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.2.5 Validate the declaration send button', async () => { + test.skip('Skipped for now', async () => {}) + }) + + test('8.2.6 Click send button', async () => { + await page.getByRole('button', { name: 'Send for approval' }).click() + await expect(page.getByText('Send for approval?')).toBeVisible() + }) + + test('8.2.7 Confirm the declaration to send for approval', async () => { + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await page.getByRole('button', { name: 'Sent for approval' }).click() + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + /* + * Expected result: The declaration should be in sent for approval + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('8.3 Local registrar actions', async () => { + test('8.3.1 Navigate to the declaration preview page', async () => { + await login(page, 'k.mweene', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready for review' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Review', exact: true }).click() + }) + test('8.3.1.1 Verify informations added in previous pages', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's date of death + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Mother's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Mother's Type of Id + * - Mother's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Mother's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.District + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's date of death + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText( + format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + + test.describe('8.3.2 Click any "Change" link', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.3.3 Validate supporting document', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.3.4 Validate additional comments box', async () => { + test.skip('Skipped for now', async () => {}) + }) + test.describe('8.3.5 Validate the register button', async () => { + test.skip('Skipped for now', async () => {}) + }) + + test('8.3.6 Click send button', async () => { + await page.getByRole('button', { name: 'Register' }).click() + await expect(page.getByText('Register the death?')).toBeVisible() + }) + + test('8.3.7 Confirm the declaration to ready for print', async () => { + await page.locator('#submit_confirm').click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await page.getByRole('button', { name: 'Ready to print' }).click() + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + /* + * Expected result: The declaration should be in Ready to print + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) +}) From ffe88abee7d0d0de968359d54d680085061256e1 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Wed, 29 May 2024 16:55:23 +0600 Subject: [PATCH 03/19] fix: testcase - 8 --- ...8-validate-declaration-review-page.spec.ts | 336 +++++++++++++++++- 1 file changed, 323 insertions(+), 13 deletions(-) diff --git a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts index 971297e1d..b8beec755 100644 --- a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts +++ b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts @@ -222,7 +222,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's Nationality + * - Deceased's Nationality * - Change button */ await expect( @@ -234,8 +234,8 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's Type of Id - * - Mother's Id Number + * - Deceased's Type of Id + * - Deceased's Id Number * - Change button */ await expect(page.locator('#deceased-content #Type')).toContainText( @@ -253,7 +253,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's address + * - Deceased's address * - Change button */ await expect(page.locator('#deceased-content #Usual')).toContainText( @@ -269,6 +269,49 @@ test.describe.serial('8. Validate declaration review page', () => { 'Change' ) + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + /* * Expected result: should include * - Informant type @@ -744,7 +787,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's Nationality + * - Deceased's Nationality * - Change button */ await expect( @@ -756,8 +799,8 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's Type of Id - * - Mother's Id Number + * - Deceased's Type of Id + * - Deceased's Id Number * - Change button */ await expect(page.locator('#deceased-content #Type')).toContainText( @@ -775,7 +818,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's address + * - Deceased's address * - Change button */ await expect(page.locator('#deceased-content #Usual')).toContainText( @@ -888,7 +931,274 @@ test.describe.serial('8. Validate declaration review page', () => { }) test.describe('8.2.2 Click any "Change" link', async () => { - test.skip('Skipped for now', async () => {}) + test("8.1.2.1 Change deceased's name", async () => { + await page + .locator('#deceased-content #Full') + .getByText('Change') + .click() + declaration.deceased.name = { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + } + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's name + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + }) + + test("8.1.2.2 Change deceased's gender", async () => { + await page.locator('#deceased-content #Sex').getByText('Change').click() + declaration.deceased.gender = 'Female' + await page.locator('#gender').click() + await page + .getByText(declaration.deceased.gender, { exact: true }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's gender + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + }) + + test("8.1.2.3 Change deceased's birthday", async () => { + await page + .locator('#deceased-content #Date') + .getByText('Change') + .click() + declaration.deceased.birthDate = getRandomDate(5, 200) + await page + .getByPlaceholder('dd') + .fill(declaration.deceased.birthDate.dd) + await page + .getByPlaceholder('mm') + .fill(declaration.deceased.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.deceased.birthDate.yyyy) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's birthday + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + }) + + test("8.1.2.4 Change deceased's ID type", async () => { + await page + .locator('#deceased-content #Type') + .getByText('Change') + .click() + declaration.deceased.identifier.type = 'Passport' + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's ID type + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + }) + test("8.1.2.5 Change deceased's ID", async () => { + await page.locator('#deceased-content #ID').getByText('Change').click() + declaration.deceased.identifier.id = faker.random.numeric(10) + await page + .locator('#deceasedPassport') + .fill(declaration.deceased.identifier.id) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's ID + */ + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + }) + + test("8.1.2.6 Change deceased's address", async () => { + await page + .locator('#deceased-content #Usual') + .getByText('Change') + .click() + declaration.deceased.address.Province = 'Sulaka' + declaration.deceased.address.District = 'Afue' + await page.locator('#statePrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.Province, { exact: true }) + .click() + await page.locator('#districtPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.District, { exact: true }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change deceased's address + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.District + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.Province + ) + }) + + test.skip('8.1.2.7 Change informant type', async () => { + await page + .locator('#informant-content #Informant') + .getByText('Change') + .click() + declaration.informantType = 'Father' + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change informant type + */ + await expect( + page.locator('#informant-content #Informant') + ).toContainText(declaration.informantType) + }) + + test('8.1.2.8 Change registration email', async () => { + await page + .locator('#informant-content #Email') + .getByText('Change') + .click() + declaration.informantEmail = faker.internet.email() + await page + .locator('#registrationEmail') + .fill(declaration.informantEmail) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change registration email + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + }) + + test("8.1.2.9 Change spouse's name", async () => { + await page.locator('#spouse-content #Full').getByText('Change').click() + declaration.spouse.name.firstNames = faker.name.firstName('female') + declaration.spouse.name.familyName = faker.name.lastName('female') + await page + .locator('#firstNamesEng') + .fill(declaration.spouse.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.spouse.name.familyName) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's name + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + }) + test("8.1.2.10 Change spouse's birthday", async () => { + await page.locator('#spouse-content #Date').getByText('Change').click() + declaration.spouse.birthDate = getRandomDate(19, 200) + await page.getByPlaceholder('dd').fill(declaration.spouse.birthDate.dd) + await page.getByPlaceholder('mm').fill(declaration.spouse.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.spouse.birthDate.yyyy) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's birthday + */ + await expect(page.locator('#spouse-content #Date')).toContainText( + format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + }) + test("8.1.2.11 Change spouse's nationality", async () => { + await page + .locator('#spouse-content #Nationality') + .getByText('Change') + .click() + declaration.spouse.nationality = 'Holy See' + await page.locator('#nationality').click() + await page + .getByText(declaration.spouse.nationality, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's nationality + */ + await expect( + page.locator('#spouse-content #Nationality') + ).toContainText(declaration.spouse.nationality) + }) + test("8.1.2.12 Change spouse's ID type", async () => { + await page.locator('#spouse-content #Type').getByText('Change').click() + declaration.spouse.identifier.type = 'Passport' + await page.locator('#spouseIdType').click() + await page + .getByText(declaration.spouse.identifier.type, { + exact: true + }) + .click() + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's ID type + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + }) + test("8.1.2.13 Change spouse's ID", async () => { + await page.locator('#spouse-content #ID').getByText('Change').click() + declaration.spouse.identifier.id = faker.random.numeric(10) + await page + .locator('#spousePassport') + .fill(declaration.spouse.identifier.id) + await page.getByRole('button', { name: 'Back to review' }).click() + /* + * Expected result: should change spouse's ID + */ + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + }) }) test.describe('8.2.3 Validate supporting document', async () => { test.skip('Skipped for now', async () => {}) @@ -994,7 +1304,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's Nationality + * - Deceased's Nationality * - Change button */ await expect( @@ -1006,8 +1316,8 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's Type of Id - * - Mother's Id Number + * - Deceased's Type of Id + * - Deceased's Id Number * - Change button */ await expect(page.locator('#deceased-content #Type')).toContainText( @@ -1025,7 +1335,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should include - * - Mother's address + * - Deceased's address * - Change button */ await expect(page.locator('#deceased-content #Usual')).toContainText( From 153add00a59c3880b01e9087cb6b29317f989bca Mon Sep 17 00:00:00 2001 From: jamil314 Date: Wed, 29 May 2024 16:56:05 +0600 Subject: [PATCH 04/19] feat: implemented death declaration - 1 --- .../declaration/death-declaration-1.spec.ts | 824 ++++++++++++++++++ 1 file changed, 824 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-1.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-1.spec.ts b/e2e/testcases/death/declaration/death-declaration-1.spec.ts new file mode 100644 index 000000000..d127c7043 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-1.spec.ts @@ -0,0 +1,824 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('1. Death declaration case - 1', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + gender: 'Male', + birthDate: getRandomDate(75, 200), + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'National ID' + }, + maritalStatus: 'Single', + address: { + country: 'Farajaland', + province: 'Sulaka', + district: 'Zobwe', + urbanOrRural: 'Urban', + town: faker.address.city(), + residentialArea: faker.address.county(), + street: faker.address.streetName(), + number: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Natural causes', + date: getRandomDate(0, 20), + cause: { + established: true, + source: 'Physician' + }, + place: "Deceased's usual place of residence" + }, + informantType: 'Spouse', + informantEmail: faker.internet.email(), + spouse: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + birthDate: getRandomDate(50, 200), + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'National ID' + }, + address: { + sameAsDeceased: true + } + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('1.1 Declaratin started by FA', async () => { + test.beforeAll(async () => { + await login(page, 'k.bwalya', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('1.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page.getByText(declaration.deceased.gender, { exact: true }).click() + + await page.getByPlaceholder('dd').fill(declaration.deceased.birthDate.dd) + await page.getByPlaceholder('mm').fill(declaration.deceased.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.deceased.birthDate.yyyy) + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + await page + .locator('#deceasedNationalId') + .fill(declaration.deceased.identifier.id) + + await page.locator('#maritalStatus').click() + await page + .getByText(declaration.deceased.maritalStatus, { exact: true }) + .click() + + await page.locator('#statePrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.province, { exact: true }) + .click() + await page.locator('#districtPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.district, { exact: true }) + .click() + + await page + .locator('#cityPrimaryDeceased') + .fill(declaration.deceased.address.town) + await page + .locator('#addressLine1UrbanOptionPrimaryDeceased') + .fill(declaration.deceased.address.residentialArea) + await page + .locator('#addressLine2UrbanOptionPrimaryDeceased') + .fill(declaration.deceased.address.street) + await page + .locator('#addressLine3UrbanOptionPrimaryDeceased') + .fill(declaration.deceased.address.number) + await page + .locator('#postalCodePrimaryDeceased') + .fill(declaration.deceased.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('1.1.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#mannerOfDeath').click() + await page.getByText(declaration.event.manner, { exact: true }).click() + + page.getByLabel('Cause of death has been established').check() + + await page.locator('#causeOfDeathMethod').click() + await page + .getByText(declaration.event.cause.source, { exact: true }) + .click() + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place, { exact: true }).click() + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('1.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page.locator('#registrationEmail').fill(declaration.informantEmail) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('1.1.4 Fill spouse details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.spouse.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.spouse.name.familyName) + + await page.getByPlaceholder('dd').fill(declaration.spouse.birthDate.dd) + await page.getByPlaceholder('mm').fill(declaration.spouse.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.spouse.birthDate.yyyy) + + await page.locator('#spouseIdType').click() + await page + .getByText(declaration.spouse.identifier.type, { exact: true }) + .click() + + await page + .locator('#spouseNationalId') + .fill(declaration.spouse.identifier.id) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('1.1.5 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('1.1.6 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's date of death + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Deceased's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.residentialArea + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.street + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.number + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's date of death + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText( + format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + + test('1.1.7 Send for review', async () => { + await page.getByRole('button', { name: 'Send for review' }).click() + await expect(page.getByText('Send for review?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Sent for review' }).click() + + /* + * Expected result: The declaration should be in sent for review + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('1.2 Declaration Review by RA', async () => { + test('1.2.1 Navigate to the declaration review page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready for review' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Review', exact: true }).click() + }) + + test('1.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's date of death + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Deceased's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.residentialArea + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.street + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.number + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's date of death + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText( + format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + }) +}) From 9a7bc48015a428859045a148d670ed2645d822d7 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Wed, 29 May 2024 18:01:39 +0600 Subject: [PATCH 05/19] fix: change made by RAin testcase - 8 --- ...8-validate-declaration-review-page.spec.ts | 62 ++++++++++++------- 1 file changed, 41 insertions(+), 21 deletions(-) diff --git a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts index b8beec755..2067ff94a 100644 --- a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts +++ b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts @@ -931,11 +931,13 @@ test.describe.serial('8. Validate declaration review page', () => { }) test.describe('8.2.2 Click any "Change" link', async () => { - test("8.1.2.1 Change deceased's name", async () => { + test("8.2.2.1 Change deceased's name", async () => { await page .locator('#deceased-content #Full') .getByText('Change') .click() + await page.getByRole('button', { name: 'Continue' }).click() + declaration.deceased.name = { firstNames: faker.name.firstName('male'), familyName: faker.name.lastName('male') @@ -958,9 +960,10 @@ test.describe.serial('8. Validate declaration review page', () => { ) }) - test("8.1.2.2 Change deceased's gender", async () => { + test("8.2.2.2 Change deceased's gender", async () => { await page.locator('#deceased-content #Sex').getByText('Change').click() - declaration.deceased.gender = 'Female' + await page.getByRole('button', { name: 'Continue' }).click() + declaration.deceased.gender = 'Male' await page.locator('#gender').click() await page .getByText(declaration.deceased.gender, { exact: true }) @@ -974,11 +977,13 @@ test.describe.serial('8. Validate declaration review page', () => { ) }) - test("8.1.2.3 Change deceased's birthday", async () => { + test("8.2.2.3 Change deceased's birthday", async () => { await page .locator('#deceased-content #Date') .getByText('Change') .click() + await page.getByRole('button', { name: 'Continue' }).click() + declaration.deceased.birthDate = getRandomDate(5, 200) await page .getByPlaceholder('dd') @@ -1005,12 +1010,14 @@ test.describe.serial('8. Validate declaration review page', () => { ) }) - test("8.1.2.4 Change deceased's ID type", async () => { + test("8.2.2.4 Change deceased's ID type", async () => { await page .locator('#deceased-content #Type') .getByText('Change') .click() - declaration.deceased.identifier.type = 'Passport' + await page.getByRole('button', { name: 'Continue' }).click() + + declaration.deceased.identifier.type = 'Birth Registration Number' await page.locator('#deceasedIdType').click() await page .getByText(declaration.deceased.identifier.type, { @@ -1025,11 +1032,12 @@ test.describe.serial('8. Validate declaration review page', () => { declaration.deceased.identifier.type ) }) - test("8.1.2.5 Change deceased's ID", async () => { + test("8.2.2.5 Change deceased's ID", async () => { await page.locator('#deceased-content #ID').getByText('Change').click() + await page.getByRole('button', { name: 'Continue' }).click() declaration.deceased.identifier.id = faker.random.numeric(10) await page - .locator('#deceasedPassport') + .locator('#deceasedBirthRegistrationNumber') .fill(declaration.deceased.identifier.id) await page.getByRole('button', { name: 'Back to review' }).click() /* @@ -1040,13 +1048,15 @@ test.describe.serial('8. Validate declaration review page', () => { ) }) - test("8.1.2.6 Change deceased's address", async () => { + test("8.2.2.6 Change deceased's address", async () => { await page .locator('#deceased-content #Usual') .getByText('Change') .click() - declaration.deceased.address.Province = 'Sulaka' - declaration.deceased.address.District = 'Afue' + await page.getByRole('button', { name: 'Continue' }).click() + + declaration.deceased.address.Province = 'Central' + declaration.deceased.address.District = 'Itambo' await page.locator('#statePrimaryDeceased').click() await page .getByText(declaration.deceased.address.Province, { exact: true }) @@ -1067,11 +1077,13 @@ test.describe.serial('8. Validate declaration review page', () => { ) }) - test.skip('8.1.2.7 Change informant type', async () => { + test.skip('8.2.2.7 Change informant type', async () => { await page .locator('#informant-content #Informant') .getByText('Change') .click() + await page.getByRole('button', { name: 'Continue' }).click() + declaration.informantType = 'Father' await page.waitForTimeout(500) await page.locator('#informantType').click() @@ -1089,11 +1101,13 @@ test.describe.serial('8. Validate declaration review page', () => { ).toContainText(declaration.informantType) }) - test('8.1.2.8 Change registration email', async () => { + test('8.2.2.8 Change registration email', async () => { await page .locator('#informant-content #Email') .getByText('Change') .click() + await page.getByRole('button', { name: 'Continue' }).click() + declaration.informantEmail = faker.internet.email() await page .locator('#registrationEmail') @@ -1107,8 +1121,9 @@ test.describe.serial('8. Validate declaration review page', () => { ) }) - test("8.1.2.9 Change spouse's name", async () => { + test("8.2.2.9 Change spouse's name", async () => { await page.locator('#spouse-content #Full').getByText('Change').click() + await page.getByRole('button', { name: 'Continue' }).click() declaration.spouse.name.firstNames = faker.name.firstName('female') declaration.spouse.name.familyName = faker.name.lastName('female') await page @@ -1125,8 +1140,9 @@ test.describe.serial('8. Validate declaration review page', () => { declaration.spouse.name.firstNames ) }) - test("8.1.2.10 Change spouse's birthday", async () => { + test("8.2.2.10 Change spouse's birthday", async () => { await page.locator('#spouse-content #Date').getByText('Change').click() + await page.getByRole('button', { name: 'Continue' }).click() declaration.spouse.birthDate = getRandomDate(19, 200) await page.getByPlaceholder('dd').fill(declaration.spouse.birthDate.dd) await page.getByPlaceholder('mm').fill(declaration.spouse.birthDate.mm) @@ -1148,12 +1164,14 @@ test.describe.serial('8. Validate declaration review page', () => { ) ) }) - test("8.1.2.11 Change spouse's nationality", async () => { + test("8.2.2.11 Change spouse's nationality", async () => { await page .locator('#spouse-content #Nationality') .getByText('Change') .click() - declaration.spouse.nationality = 'Holy See' + await page.getByRole('button', { name: 'Continue' }).click() + + declaration.spouse.nationality = 'Japan' await page.locator('#nationality').click() await page .getByText(declaration.spouse.nationality, { @@ -1168,9 +1186,10 @@ test.describe.serial('8. Validate declaration review page', () => { page.locator('#spouse-content #Nationality') ).toContainText(declaration.spouse.nationality) }) - test("8.1.2.12 Change spouse's ID type", async () => { + test("8.2.2.12 Change spouse's ID type", async () => { await page.locator('#spouse-content #Type').getByText('Change').click() - declaration.spouse.identifier.type = 'Passport' + await page.getByRole('button', { name: 'Continue' }).click() + declaration.spouse.identifier.type = 'Birth Registration Number' await page.locator('#spouseIdType').click() await page .getByText(declaration.spouse.identifier.type, { @@ -1185,11 +1204,12 @@ test.describe.serial('8. Validate declaration review page', () => { declaration.spouse.identifier.type ) }) - test("8.1.2.13 Change spouse's ID", async () => { + test("8.2.2.13 Change spouse's ID", async () => { await page.locator('#spouse-content #ID').getByText('Change').click() + await page.getByRole('button', { name: 'Continue' }).click() declaration.spouse.identifier.id = faker.random.numeric(10) await page - .locator('#spousePassport') + .locator('#spouseBirthRegistrationNumber') .fill(declaration.spouse.identifier.id) await page.getByRole('button', { name: 'Back to review' }).click() /* From 0f4f004a6873a7842af04bfd15cdedc54ca3f15c Mon Sep 17 00:00:00 2001 From: jamil314 Date: Wed, 29 May 2024 18:24:53 +0600 Subject: [PATCH 06/19] fix: add no. of dependants in declaration 1 --- .../declaration/death-declaration-1.spec.ts | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/e2e/testcases/death/declaration/death-declaration-1.spec.ts b/e2e/testcases/death/declaration/death-declaration-1.spec.ts index d127c7043..795eb92ae 100644 --- a/e2e/testcases/death/declaration/death-declaration-1.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-1.spec.ts @@ -19,6 +19,7 @@ test.describe.serial('1. Death declaration case - 1', () => { type: 'National ID' }, maritalStatus: 'Single', + dependants: 3, address: { country: 'Farajaland', province: 'Sulaka', @@ -105,6 +106,10 @@ test.describe.serial('1. Death declaration case - 1', () => { .getByText(declaration.deceased.maritalStatus, { exact: true }) .click() + await page + .locator('#numberOfDependants') + .fill(declaration.deceased.dependants.toString()) + await page.locator('#statePrimaryDeceased').click() await page .getByText(declaration.deceased.address.province, { exact: true }) @@ -295,6 +300,14 @@ test.describe.serial('1. Death declaration case - 1', () => { 'Change' ) + /* + * Expected result: should include + * - Number of Deceased's Dependants + */ + await expect(page.locator('#deceased-content')).toContainText( + 'No. of dependants' + declaration.deceased.dependants.toString() + ) + /* * Expected result: should include * - Deceased's address @@ -625,6 +638,15 @@ test.describe.serial('1. Death declaration case - 1', () => { 'Change' ) + /* + * Expected result: should include + * - Number of Deceased's Dependants + * - Change button + */ + await expect(page.locator('#deceased-content')).toContainText( + 'No. of dependants' + declaration.deceased.dependants.toString() + ) + /* * Expected result: should include * - Deceased's address From a8775d96c07b10e00a8eb02529eb8052d632b807 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Wed, 29 May 2024 19:55:17 +0600 Subject: [PATCH 07/19] feat: implemented death declaration - 2 --- .../declaration/death-declaration-2.spec.ts | 1066 +++++++++++++++++ 1 file changed, 1066 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-2.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-2.spec.ts b/e2e/testcases/death/declaration/death-declaration-2.spec.ts new file mode 100644 index 000000000..d779ec532 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-2.spec.ts @@ -0,0 +1,1066 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('2. Death declaration case - 2', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + gender: 'Female', + age: 65, + nationality: 'Guernsey', + identifier: { + id: faker.random.numeric(10), + type: 'Passport' + }, + maritalStatus: 'Married', + address: { + country: 'Farajaland', + province: 'Sulaka', + district: 'Zobwe', + urbanOrRural: 'Rural', + village: faker.address.county() + } + }, + event: { + manner: 'Accident', + date: getRandomDate(0, 20), + cause: { + established: true, + source: 'Lay reported', + description: "T'was an accident sire" + }, + place: "Deceased's usual place of residence" + }, + informantType: 'Son', + informantEmail: faker.internet.email(), + informant: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + birthDate: getRandomDate(50, 200), + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'National ID' + }, + address: { + sameAsDeceased: true + } + }, + spouse: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + age: 68, + nationality: 'Canada', + identifier: { + id: faker.random.numeric(10), + type: 'Passport' + }, + address: { + sameAsDeceased: false, + country: 'Farajaland', + province: 'Chuminga', + district: 'Nsali', + urbanOrRural: 'Urban', + town: faker.address.city(), + residentialArea: faker.address.county(), + street: faker.address.streetName(), + number: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('2.1 Declaratin started by FA', async () => { + test.beforeAll(async () => { + await login(page, 'k.bwalya', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('2.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page.getByText(declaration.deceased.gender, { exact: true }).click() + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.deceased.age.toString()) + + await page.locator('#nationality').click() + await page + .getByText(declaration.deceased.nationality, { exact: true }) + .click() + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + + await page + .locator('#deceasedPassport') + .fill(declaration.deceased.identifier.id) + + await page.locator('#maritalStatus').click() + await page + .getByText(declaration.deceased.maritalStatus, { exact: true }) + .click() + + await page.locator('#statePrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.province, { exact: true }) + .click() + await page.locator('#districtPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.district, { exact: true }) + .click() + + await page.getByLabel('Rural').check() + + await page + .locator('#addressLine1RuralOptionPrimaryDeceased') + .fill(declaration.deceased.address.village) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('2.1.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#mannerOfDeath').click() + await page.getByText(declaration.event.manner, { exact: true }).click() + + page.getByLabel('Cause of death has been established').check() + + await page.locator('#causeOfDeathMethod').click() + await page + .getByText(declaration.event.cause.source, { exact: true }) + .click() + await page + .locator('#deathDescription') + .fill(declaration.event.cause.description) + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place, { exact: true }).click() + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('2.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page.locator('#registrationEmail').fill(declaration.informantEmail) + + await page + .locator('#firstNamesEng') + .fill(declaration.informant.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.informant.name.familyName) + + await page.getByPlaceholder('dd').fill(declaration.informant.birthDate.dd) + await page.getByPlaceholder('mm').fill(declaration.informant.birthDate.mm) + await page + .getByPlaceholder('yyyy') + .fill(declaration.informant.birthDate.yyyy) + + await page.locator('#informantIdType').click() + await page + .getByText(declaration.informant.identifier.type, { exact: true }) + .click() + + await page + .locator('#informantNationalId') + .fill(declaration.informant.identifier.id) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('2.1.4 Fill spouse details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.spouse.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.spouse.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.spouse.age.toString()) + + await page.locator('#nationality').click() + await page + .getByText(declaration.spouse.nationality, { exact: true }) + .click() + + await page.locator('#spouseIdType').click() + await page + .getByText(declaration.spouse.identifier.type, { exact: true }) + .click() + + await page + .locator('#spousePassport') + .fill(declaration.spouse.identifier.id) + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#statePrimarySpouse').click() + await page + .getByText(declaration.spouse.address.province, { exact: true }) + .click() + await page.locator('#districtPrimarySpouse').click() + await page + .getByText(declaration.spouse.address.district, { exact: true }) + .click() + + await page + .locator('#cityPrimarySpouse') + .fill(declaration.spouse.address.town) + await page + .locator('#addressLine1UrbanOptionPrimarySpouse') + .fill(declaration.spouse.address.residentialArea) + await page + .locator('#addressLine2UrbanOptionPrimarySpouse') + .fill(declaration.spouse.address.street) + await page + .locator('#addressLine3UrbanOptionPrimarySpouse') + .fill(declaration.spouse.address.number) + await page + .locator('#postalCodePrimarySpouse') + .fill(declaration.spouse.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('2.1.5 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('2.1.6 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Deceased's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.village + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Description cause of death + * - Change button + */ + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText(declaration.event.cause.description) + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText('Change') + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's date of birth + * - Change button + */ + await expect(page.locator('#informant-content #Date')).toContainText( + format( + new Date( + Number(declaration.informant.birthDate.yyyy), + Number(declaration.informant.birthDate.mm) - 1, + Number(declaration.informant.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#informant-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - informant's Id Number + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#informant-content #ID')).toContainText( + declaration.informant.identifier.id + ) + await expect(page.locator('#informant-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Yes' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's age + * - Change button + */ + await expect(page.locator('#spouse-content #Age')).toContainText( + declaration.spouse.age + ' years' + ) + await expect(page.locator('#spouse-content #Age')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.country + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.district + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.province + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.town + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.residentialArea + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.street + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.number + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.postcodeOrZip + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + 'Change' + ) + }) + + test('2.1.7 Send for review', async () => { + await page.getByRole('button', { name: 'Send for review' }).click() + await expect(page.getByText('Send for review?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Sent for review' }).click() + + /* + * Expected result: The declaration should be in sent for review + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('2.2 Declaration Review by RA', async () => { + test('2.2.1 Navigate to the declaration review page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready for review' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Review', exact: true }).click() + }) + + test('2.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Deceased's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.village + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Description cause of death + * - Change button + */ + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText(declaration.event.cause.description) + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText('Change') + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's date of birth + * - Change button + */ + await expect(page.locator('#informant-content #Date')).toContainText( + format( + new Date( + Number(declaration.informant.birthDate.yyyy), + Number(declaration.informant.birthDate.mm) - 1, + Number(declaration.informant.birthDate.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#informant-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - informant's Id Number + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#informant-content #ID')).toContainText( + declaration.informant.identifier.id + ) + await expect(page.locator('#informant-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Yes' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's age + * - Change button + */ + await expect(page.locator('#spouse-content #Age')).toContainText( + declaration.spouse.age + ' years' + ) + await expect(page.locator('#spouse-content #Age')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.country + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.district + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.province + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.town + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.residentialArea + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.street + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.number + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.postcodeOrZip + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + 'Change' + ) + }) + }) +}) From 1799eaaac34160b9303322961dbbc63e5d0089a1 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Thu, 30 May 2024 17:28:16 +0600 Subject: [PATCH 08/19] feat: implemented death declaration - 3 --- .../declaration/death-declaration-3.spec.ts | 1137 +++++++++++++++++ 1 file changed, 1137 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-3.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-3.spec.ts b/e2e/testcases/death/declaration/death-declaration-3.spec.ts new file mode 100644 index 000000000..512bff0e9 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-3.spec.ts @@ -0,0 +1,1137 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('3. Death declaration case - 3', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('male') + ' the 2nd', + familyName: faker.name.lastName('male') + }, + gender: 'Unknown', + age: 45, + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'Birth Registration Number' + }, + maritalStatus: 'Widowed', + address: { + country: 'Guam', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Suicide', + date: getRandomDate(0, 20), + cause: { + established: true, + source: 'Verbal autopsy', + description: 'Hanging from ceiling' + }, + place: "Deceased's usual place of residence" + }, + informantType: 'Daughter', + informantEmail: faker.internet.email(), + informant: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + age: 17, + nationality: 'Malawi', + identifier: { + id: faker.random.numeric(10), + type: 'Passport' + }, + address: { + sameAsDeceased: false, + country: 'Farajaland', + province: 'Chuminga', + district: 'Nsali', + urbanOrRural: 'Urban', + town: faker.address.city(), + residentialArea: faker.address.county(), + street: faker.address.streetName(), + number: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + spouse: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + age: 42, + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'Birth Registration Number' + }, + address: { + sameAsDeceased: false, + country: 'Farajaland', + province: 'Chuminga', + district: 'Nsali', + urbanOrRural: 'Rural', + village: faker.address.county() + } + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('3.1 Declaratin started by FA', async () => { + test.beforeAll(async () => { + await login(page, 'k.bwalya', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('3.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page.getByText(declaration.deceased.gender, { exact: true }).click() + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.deceased.age.toString()) + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + + await page + .locator('#deceasedBirthRegistrationNumber') + .fill(declaration.deceased.identifier.id) + + await page.locator('#maritalStatus').click() + await page + .getByText(declaration.deceased.maritalStatus, { exact: true }) + .click() + + await page.locator('#countryPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryDeceased') + .fill(declaration.deceased.address.state) + await page + .locator('#internationalDistrictPrimaryDeceased') + .fill(declaration.deceased.address.district) + await page + .locator('#internationalCityPrimaryDeceased') + .fill(declaration.deceased.address.town) + await page + .locator('#internationalAddressLine1PrimaryDeceased') + .fill(declaration.deceased.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryDeceased') + .fill(declaration.deceased.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryDeceased') + .fill(declaration.deceased.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryDeceased') + .fill(declaration.deceased.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('3.1.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#mannerOfDeath').click() + await page.getByText(declaration.event.manner, { exact: true }).click() + + page.getByLabel('Cause of death has been established').check() + + await page.locator('#causeOfDeathMethod').click() + await page + .getByText(declaration.event.cause.source, { exact: true }) + .click() + await page + .locator('#deathDescription') + .fill(declaration.event.cause.description) + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place, { exact: true }).click() + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('3.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page.locator('#registrationEmail').fill(declaration.informantEmail) + + await page + .locator('#firstNamesEng') + .fill(declaration.informant.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.informant.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.informant.age.toString()) + + await page.locator('#nationality').click() + await page + .getByText(declaration.informant.nationality, { exact: true }) + .click() + + await page.locator('#informantIdType').click() + await page + .getByText(declaration.informant.identifier.type, { exact: true }) + .click() + + await page + .locator('#informantPassport') + .fill(declaration.informant.identifier.id) + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#statePrimaryInformant').click() + await page + .getByText(declaration.informant.address.province, { exact: true }) + .click() + await page.locator('#districtPrimaryInformant').click() + await page + .getByText(declaration.informant.address.district, { exact: true }) + .click() + + await page + .locator('#cityPrimaryInformant') + .fill(declaration.informant.address.town) + await page + .locator('#addressLine1UrbanOptionPrimaryInformant') + .fill(declaration.informant.address.residentialArea) + await page + .locator('#addressLine2UrbanOptionPrimaryInformant') + .fill(declaration.informant.address.street) + await page + .locator('#addressLine3UrbanOptionPrimaryInformant') + .fill(declaration.informant.address.number) + await page + .locator('#postalCodePrimaryInformant') + .fill(declaration.informant.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('3.1.4 Fill spouse details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.spouse.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.spouse.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.spouse.age.toString()) + + await page.locator('#spouseIdType').click() + await page + .getByText(declaration.spouse.identifier.type, { exact: true }) + .click() + + await page + .locator('#spouseBirthRegistrationNumber') + .fill(declaration.spouse.identifier.id) + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#statePrimarySpouse').click() + await page + .getByText(declaration.spouse.address.province, { exact: true }) + .click() + await page.locator('#districtPrimarySpouse').click() + await page + .getByText(declaration.spouse.address.district, { exact: true }) + .click() + + await page.getByLabel('Rural').check() + + await page + .locator('#addressLine1RuralOptionPrimarySpouse') + .fill(declaration.spouse.address.village) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('3.1.5 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('3.1.6 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Deceased's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Description cause of death + * - Change button + */ + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText(declaration.event.cause.description) + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText('Change') + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - informant's Id Number + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#informant-content #ID')).toContainText( + declaration.informant.identifier.id + ) + await expect(page.locator('#informant-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.province + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.residentialArea + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.street + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.number + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's age + * - Change button + */ + await expect(page.locator('#spouse-content #Age')).toContainText( + declaration.spouse.age + ' years' + ) + await expect(page.locator('#spouse-content #Age')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.country + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.district + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.province + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.village + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + 'Change' + ) + }) + + test('3.1.7 Send for review', async () => { + await page.getByRole('button', { name: 'Send for review' }).click() + await expect(page.getByText('Send for review?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Sent for review' }).click() + + /* + * Expected result: The declaration should be in sent for review + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('3.2 Declaration Review by RA', async () => { + test('3.2.1 Navigate to the declaration review page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready for review' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Review', exact: true }).click() + }) + + test('3.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Deceased's Id Number + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + declaration.deceased.identifier.id + ) + await expect(page.locator('#deceased-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Description cause of death + * - Change button + */ + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText(declaration.event.cause.description) + await expect( + page.locator('#deathEvent-content #Description') + ).toContainText('Change') + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - informant's Id Number + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#informant-content #ID')).toContainText( + declaration.informant.identifier.id + ) + await expect(page.locator('#informant-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.province + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.residentialArea + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.street + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.number + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's age + * - Change button + */ + await expect(page.locator('#spouse-content #Age')).toContainText( + declaration.spouse.age + ' years' + ) + await expect(page.locator('#spouse-content #Age')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Spouse's Id Number + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#spouse-content #ID')).toContainText( + declaration.spouse.identifier.id + ) + await expect(page.locator('#spouse-content #ID')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.country + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.district + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.province + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.village + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + 'Change' + ) + }) + }) +}) From f83467e34f6c141ba10dfe31413be15fa68cc0d0 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Thu, 30 May 2024 19:39:53 +0600 Subject: [PATCH 09/19] feat: implemented death declaration - 4 --- .../declaration/death-declaration-4.spec.ts | 1091 +++++++++++++++++ 1 file changed, 1091 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-4.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-4.spec.ts b/e2e/testcases/death/declaration/death-declaration-4.spec.ts new file mode 100644 index 000000000..518d1f051 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-4.spec.ts @@ -0,0 +1,1091 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('4. Death declaration case - 4', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('female') + '_Nolas', + familyName: faker.name.lastName('female') + }, + gender: 'Female', + age: 45, + nationality: 'Farajaland', + identifier: { + type: 'None' + }, + maritalStatus: 'Divorced', + address: { + country: 'Guam', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Homicide', + date: getRandomDate(0, 20), + cause: { + established: true, + source: 'Medically Certified Cause of Death' + }, + place: 'Health Institution', + deathLocation: 'Railway GRZ Urban Health Centre' + }, + informantType: 'Son in law', + informantEmail: faker.internet.email(), + informant: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + age: 17, + nationality: 'Malawi', + identifier: { + id: faker.random.numeric(10), + type: 'Birth Registration Number' + }, + address: { + sameAsDeceased: false, + country: 'Farajaland', + province: 'Chuminga', + district: 'Nsali', + urbanOrRural: 'Rural', + village: faker.address.county() + } + }, + spouse: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + age: 42, + nationality: 'Farajaland', + identifier: { + type: 'None' + }, + address: { + sameAsDeceased: false, + country: 'Guam', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('4.1 Declaratin started by RA', async () => { + test.beforeAll(async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('4.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page.getByText(declaration.deceased.gender, { exact: true }).click() + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.deceased.age.toString()) + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + + await page.locator('#maritalStatus').click() + await page + .getByText(declaration.deceased.maritalStatus, { exact: true }) + .click() + + await page.locator('#countryPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryDeceased') + .fill(declaration.deceased.address.state) + await page + .locator('#internationalDistrictPrimaryDeceased') + .fill(declaration.deceased.address.district) + await page + .locator('#internationalCityPrimaryDeceased') + .fill(declaration.deceased.address.town) + await page + .locator('#internationalAddressLine1PrimaryDeceased') + .fill(declaration.deceased.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryDeceased') + .fill(declaration.deceased.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryDeceased') + .fill(declaration.deceased.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryDeceased') + .fill(declaration.deceased.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('4.1.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#mannerOfDeath').click() + await page.getByText(declaration.event.manner, { exact: true }).click() + + page.getByLabel('Cause of death has been established').check() + + await page.locator('#causeOfDeathMethod').click() + await page + .getByText(declaration.event.cause.source, { exact: true }) + .click() + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place, { exact: true }).click() + + await page + .locator('#deathLocation') + .fill(declaration.event.deathLocation.slice(0, 3)) + + await page + .getByText(declaration.event.deathLocation, { exact: true }) + .click() + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('4.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page.locator('#registrationEmail').fill(declaration.informantEmail) + + await page + .locator('#firstNamesEng') + .fill(declaration.informant.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.informant.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.informant.age.toString()) + + await page.locator('#nationality').click() + await page + .getByText(declaration.informant.nationality, { exact: true }) + .click() + + await page.locator('#informantIdType').click() + await page + .getByText(declaration.informant.identifier.type, { exact: true }) + .click() + + await page + .locator('#informantBirthRegistrationNumber') + .fill(declaration.informant.identifier.id) + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#statePrimaryInformant').click() + await page + .getByText(declaration.informant.address.province, { exact: true }) + .click() + await page.locator('#districtPrimaryInformant').click() + await page + .getByText(declaration.informant.address.district, { exact: true }) + .click() + + await page.getByText('Rural', { exact: true }).click() + + await page + .locator('#addressLine1RuralOptionPrimaryInformant') + .fill(declaration.informant.address.village) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('4.1.4 Fill spouse details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.spouse.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.spouse.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.spouse.age.toString()) + + await page.locator('#spouseIdType').click() + await page + .getByText(declaration.spouse.identifier.type, { exact: true }) + .click() + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#countryPrimarySpouse').click() + await page + .getByText(declaration.spouse.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimarySpouse') + .fill(declaration.spouse.address.state) + await page + .locator('#internationalDistrictPrimarySpouse') + .fill(declaration.spouse.address.district) + await page + .locator('#internationalCityPrimarySpouse') + .fill(declaration.spouse.address.town) + await page + .locator('#internationalAddressLine1PrimarySpouse') + .fill(declaration.spouse.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimarySpouse') + .fill(declaration.spouse.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimarySpouse') + .fill(declaration.spouse.address.addressLine3) + await page + .locator('#internationalPostalCodePrimarySpouse') + .fill(declaration.spouse.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('4.1.5 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('4.1.6 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - informant's Id Number + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#informant-content #ID')).toContainText( + declaration.informant.identifier.id + ) + await expect(page.locator('#informant-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.province + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.village + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's age + * - Change button + */ + await expect(page.locator('#spouse-content #Age')).toContainText( + declaration.spouse.age + ' years' + ) + await expect(page.locator('#spouse-content #Age')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.country + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.district + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.state + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.town + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.addressLine1 + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.addressLine2 + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.addressLine3 + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.postcodeOrZip + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + 'Change' + ) + }) + + test('4.1.7 Send for approval', async () => { + await page.getByRole('button', { name: 'Send for approval' }).click() + await expect(page.getByText('Send for approval?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Sent for approval' }).click() + + /* + * Expected result: The declaration should be in sent for approval + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('4.2 Declaration Review by Local Registrar', async () => { + test('4.2.1 Navigate to the declaration review page', async () => { + await login(page, 'k.mweene', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready for review' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Review', exact: true }).click() + }) + + test('4.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Yes' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Source cause of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Source')).toContainText( + declaration.event.cause.source + ) + await expect(page.locator('#deathEvent-content #Source')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - informant's Id Number + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + await expect(page.locator('#informant-content #ID')).toContainText( + declaration.informant.identifier.id + ) + await expect(page.locator('#informant-content #ID')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.province + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.village + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.firstNames + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + declaration.spouse.name.familyName + ) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's age + * - Change button + */ + await expect(page.locator('#spouse-content #Age')).toContainText( + declaration.spouse.age + ' years' + ) + await expect(page.locator('#spouse-content #Age')).toContainText('Change') + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + declaration.spouse.nationality + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText( + declaration.spouse.identifier.type + ) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.country + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.district + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.state + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.town + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.addressLine1 + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.addressLine2 + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.addressLine3 + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + declaration.spouse.address.postcodeOrZip + ) + await expect(page.locator('#spouse-content #Usual')).toContainText( + 'Change' + ) + }) + }) +}) From 0bef9886ddc16ea59a4f878b6b82890353d8c53b Mon Sep 17 00:00:00 2001 From: jamil314 Date: Fri, 31 May 2024 12:49:27 +0600 Subject: [PATCH 10/19] feat: implemented death declaration - 5 --- .../declaration/death-declaration-5.spec.ts | 954 ++++++++++++++++++ 1 file changed, 954 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-5.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-5.spec.ts b/e2e/testcases/death/declaration/death-declaration-5.spec.ts new file mode 100644 index 000000000..74e34a3c5 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-5.spec.ts @@ -0,0 +1,954 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('5. Death declaration case - 5', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('female') + '-Peter', + familyName: faker.name.lastName('female') + }, + gender: 'Female', + age: 45, + nationality: 'Farajaland', + identifier: { + type: 'None' + }, + maritalStatus: 'Separated', + address: { + country: 'Guam', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Manner undetermined', + date: getRandomDate(0, 20), + cause: { + established: false + }, + place: 'Other', + deathLocation: { + country: 'Farajaland', + province: 'Chuminga', + district: 'Nsali', + urbanOrRural: 'Urban', + town: faker.address.city(), + residentialArea: faker.address.county(), + street: faker.address.streetName(), + number: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + informantType: 'Daughter in law', + informantEmail: faker.internet.email(), + informant: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + age: 17, + nationality: 'Malawi', + identifier: { + type: 'None' + }, + address: { + sameAsDeceased: false, + country: 'Comoros', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + spouse: { + detailsAvailable: false, + reason: 'Spouse ran away' + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('5.1 Declaratin started by RA', async () => { + test.beforeAll(async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('5.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page.getByText(declaration.deceased.gender, { exact: true }).click() + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.deceased.age.toString()) + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + + await page.locator('#maritalStatus').click() + await page + .getByText(declaration.deceased.maritalStatus, { exact: true }) + .click() + + await page.locator('#countryPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryDeceased') + .fill(declaration.deceased.address.state) + await page + .locator('#internationalDistrictPrimaryDeceased') + .fill(declaration.deceased.address.district) + await page + .locator('#internationalCityPrimaryDeceased') + .fill(declaration.deceased.address.town) + await page + .locator('#internationalAddressLine1PrimaryDeceased') + .fill(declaration.deceased.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryDeceased') + .fill(declaration.deceased.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryDeceased') + .fill(declaration.deceased.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryDeceased') + .fill(declaration.deceased.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('5.1.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#mannerOfDeath').click() + await page.getByText(declaration.event.manner, { exact: true }).click() + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place, { exact: true }).click() + + await page.locator('#statePlaceofdeath').click() + await page + .getByText(declaration.event.deathLocation.province, { exact: true }) + .click() + await page.locator('#districtPlaceofdeath').click() + await page + .getByText(declaration.event.deathLocation.district, { exact: true }) + .click() + + await page + .locator('#cityPlaceofdeath') + .fill(declaration.event.deathLocation.town) + await page + .locator('#addressLine1UrbanOptionPlaceofdeath') + .fill(declaration.event.deathLocation.residentialArea) + await page + .locator('#addressLine2UrbanOptionPlaceofdeath') + .fill(declaration.event.deathLocation.street) + await page + .locator('#addressLine3UrbanOptionPlaceofdeath') + .fill(declaration.event.deathLocation.number) + await page + .locator('#postalCodePlaceofdeath') + .fill(declaration.event.deathLocation.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('5.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page.locator('#registrationEmail').fill(declaration.informantEmail) + + await page + .locator('#firstNamesEng') + .fill(declaration.informant.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.informant.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.informant.age.toString()) + + await page.locator('#nationality').click() + await page + .getByText(declaration.informant.nationality, { exact: true }) + .click() + + await page.locator('#informantIdType').click() + await page + .getByText(declaration.informant.identifier.type, { exact: true }) + .click() + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#countryPrimaryInformant').click() + await page + .getByText(declaration.informant.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryInformant') + .fill(declaration.informant.address.state) + await page + .locator('#internationalDistrictPrimaryInformant') + .fill(declaration.informant.address.district) + await page + .locator('#internationalCityPrimaryInformant') + .fill(declaration.informant.address.town) + await page + .locator('#internationalAddressLine1PrimaryInformant') + .fill(declaration.informant.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryInformant') + .fill(declaration.informant.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryInformant') + .fill(declaration.informant.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryInformant') + .fill(declaration.informant.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('5.1.4 Fill spouse details', async () => { + await page.getByLabel("Spouse's details are not available").check() + + await page.locator('#reasonNotApplying').fill(declaration.spouse.reason) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('5.1.5 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('5.1.6 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.country + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.province + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.district + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.town + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.residentialArea + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.street + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.number + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.postcodeOrZip + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.state + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine1 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine2 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine3 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's details not available + * - Reason + * - Change button + */ + await expect(page.locator('#spouse-content')).toContainText( + "Spouse's details are not availableYes" + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + declaration.spouse.reason + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + 'Change' + ) + }) + + test('5.1.7 Send for approval', async () => { + await page.getByRole('button', { name: 'Send for approval' }).click() + await expect(page.getByText('Send for approval?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Sent for approval' }).click() + + /* + * Expected result: The declaration should be in sent for approval + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('5.2 Declaration Review by Local Registrar', async () => { + test('5.2.1 Navigate to the declaration review page', async () => { + await login(page, 'k.mweene', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready for review' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Review', exact: true }).click() + }) + + test('5.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.country + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.province + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.district + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.town + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.residentialArea + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.street + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.number + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.postcodeOrZip + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.state + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine1 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine2 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine3 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's details not available + * - Reason + * - Change button + */ + await expect(page.locator('#spouse-content')).toContainText( + "Spouse's details are not availableYes" + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + declaration.spouse.reason + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + 'Change' + ) + }) + }) +}) From ce0d706399ad6b48be12210de42cad2ac7db268c Mon Sep 17 00:00:00 2001 From: jamil314 Date: Fri, 31 May 2024 15:08:54 +0600 Subject: [PATCH 11/19] feat: implemented death declaration - 6 --- .../declaration/death-declaration-6.spec.ts | 840 ++++++++++++++++++ 1 file changed, 840 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-6.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-6.spec.ts b/e2e/testcases/death/declaration/death-declaration-6.spec.ts new file mode 100644 index 000000000..82a00cdc0 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-6.spec.ts @@ -0,0 +1,840 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('6. Death declaration case - 6', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('female') + " O'Nila", + familyName: faker.name.lastName('female') + }, + gender: 'Female', + age: 45, + nationality: 'Farajaland', + identifier: { + type: 'None' + }, + maritalStatus: 'Not stated', + address: { + country: 'Guam', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Manner undetermined', + date: getRandomDate(0, 20), + cause: { + established: false + }, + place: 'Other', + deathLocation: { + country: 'Farajaland', + province: 'Chuminga', + district: 'Nsali', + urbanOrRural: 'Rural', + village: faker.address.county() + } + }, + informantType: 'Mother', + informantEmail: faker.internet.email(), + informant: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + age: 17, + nationality: 'Malawi', + identifier: { + type: 'None' + }, + address: { + sameAsDeceased: false, + country: 'Comoros', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + spouse: { + detailsAvailable: false, + reason: 'Spouse ran away' + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('6.1 Declaratin started by Local Registrar', async () => { + test.beforeAll(async () => { + await login(page, 'k.mweene', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('6.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page.getByText(declaration.deceased.gender, { exact: true }).click() + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.deceased.age.toString()) + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + + await page.locator('#maritalStatus').click() + await page + .getByText(declaration.deceased.maritalStatus, { exact: true }) + .click() + + await page.locator('#countryPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryDeceased') + .fill(declaration.deceased.address.state) + await page + .locator('#internationalDistrictPrimaryDeceased') + .fill(declaration.deceased.address.district) + await page + .locator('#internationalCityPrimaryDeceased') + .fill(declaration.deceased.address.town) + await page + .locator('#internationalAddressLine1PrimaryDeceased') + .fill(declaration.deceased.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryDeceased') + .fill(declaration.deceased.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryDeceased') + .fill(declaration.deceased.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryDeceased') + .fill(declaration.deceased.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('6.1.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#mannerOfDeath').click() + await page.getByText(declaration.event.manner, { exact: true }).click() + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place, { exact: true }).click() + + await page.locator('#statePlaceofdeath').click() + await page + .getByText(declaration.event.deathLocation.province, { exact: true }) + .click() + await page.locator('#districtPlaceofdeath').click() + await page + .getByText(declaration.event.deathLocation.district, { exact: true }) + .click() + + await page.getByLabel('Rural').check() + + await page + .locator('#addressLine1RuralOptionPlaceofdeath') + .fill(declaration.event.deathLocation.village) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('6.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page.locator('#registrationEmail').fill(declaration.informantEmail) + + await page + .locator('#firstNamesEng') + .fill(declaration.informant.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.informant.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.informant.age.toString()) + + await page.locator('#nationality').click() + await page + .getByText(declaration.informant.nationality, { exact: true }) + .click() + + await page.locator('#informantIdType').click() + await page + .getByText(declaration.informant.identifier.type, { exact: true }) + .click() + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#countryPrimaryInformant').click() + await page + .getByText(declaration.informant.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryInformant') + .fill(declaration.informant.address.state) + await page + .locator('#internationalDistrictPrimaryInformant') + .fill(declaration.informant.address.district) + await page + .locator('#internationalCityPrimaryInformant') + .fill(declaration.informant.address.town) + await page + .locator('#internationalAddressLine1PrimaryInformant') + .fill(declaration.informant.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryInformant') + .fill(declaration.informant.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryInformant') + .fill(declaration.informant.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryInformant') + .fill(declaration.informant.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('6.1.4 Fill spouse details', async () => { + await page.getByLabel("Spouse's details are not available").check() + + await page.locator('#reasonNotApplying').fill(declaration.spouse.reason) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('6.1.5 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('6.1.6 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.country + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.province + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.district + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.village + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.state + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine1 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine2 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine3 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's details not available + * - Reason + * - Change button + */ + await expect(page.locator('#spouse-content')).toContainText( + "Spouse's details are not availableYes" + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + declaration.spouse.reason + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + 'Change' + ) + }) + + test('6.1.7 Register', async () => { + await page.getByRole('button', { name: 'Register' }).click() + await expect(page.getByText('Register the death?')).toBeVisible() + await page.locator('#submit_confirm').click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Ready to print' }).click() + + /* + * Expected result: The declaration should be in Ready to print + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('6.2 Declaration Review by Local Registrar', async () => { + test('6.2.1 Navigate to the declaration review page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'Ready to print' }).click() + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'View', exact: true }).click() + }) + + test('6.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + + /* + * Expected result: should include + * - Deceased's Gender + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + + /* + * Expected result: should include + * - Deceased's age + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + + /* + * Expected result: should include + * - Deceased's Type of Id + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + + /* + * Expected result: should include + * - Deceased's marital status + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + + /* + * Expected result: should include + * - Deceased's address + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + + /* + * Expected result: should include + * - Date of death + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + + /* + * Expected result: should include + * - Manner of death has been established + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + + /* + * Expected result: should include + * - Cause of death has been established + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + + /* + * Expected result: should include + * - Place of death + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.country + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.province + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.district + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.village + ) + + /* + * Expected result: should include + * - Informant type + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + + /* + * Expected result: should include + * - informant's age + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + + /* + * Expected result: should include + * - informant's Nationality + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + + /* + * Expected result: should include + * - informant's Type of Id + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + + /* + * Expected result: should include + * - informant's address + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.state + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine1 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine2 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine3 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + + /* + * Expected result: should include + * - Informant's Email + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + + /* + * Expected result: should include + * - Spouse's details not available + * - Reason + */ + await expect(page.locator('#spouse-content')).toContainText( + "Spouse's details are not availableYes" + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + declaration.spouse.reason + ) + }) + }) +}) From 88d04c5b1c8899fecff3970b0446dd11b6ea8ebe Mon Sep 17 00:00:00 2001 From: jamil314 Date: Fri, 31 May 2024 15:52:11 +0600 Subject: [PATCH 12/19] feat: implemented death declaration - 7 --- .../declaration/death-declaration-7.spec.ts | 877 ++++++++++++++++++ 1 file changed, 877 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-7.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-7.spec.ts b/e2e/testcases/death/declaration/death-declaration-7.spec.ts new file mode 100644 index 000000000..22f3ae6c5 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-7.spec.ts @@ -0,0 +1,877 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, getRandomDate, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' +import { format } from 'date-fns' + +test.describe.serial('7. Death declaration case - 7', () => { + let page: Page + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + gender: 'Female', + age: 45, + nationality: 'Farajaland', + identifier: { + type: 'None' + }, + maritalStatus: 'Not stated', + address: { + country: 'Guam', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Manner undetermined', + date: getRandomDate(0, 20), + cause: { + established: false + }, + place: 'Other', + deathLocation: { + country: 'Germany', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + informantType: 'Father', + informantEmail: faker.internet.email(), + informant: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + age: 17, + nationality: 'Malawi', + identifier: { + type: 'None' + }, + address: { + sameAsDeceased: false, + country: 'Comoros', + state: faker.address.state(), + district: faker.address.county(), + town: faker.address.city(), + addressLine1: faker.address.county(), + addressLine2: faker.address.streetName(), + addressLine3: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + spouse: { + detailsAvailable: false, + reason: 'Spouse ran away' + } + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('7.1 Declaratin started by National Registrar', async () => { + test.beforeAll(async () => { + await login(page, 'j.musonda', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('7.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.locator('#gender').click() + await page.getByText(declaration.deceased.gender, { exact: true }).click() + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.deceased.age.toString()) + + await page.locator('#deceasedIdType').click() + await page + .getByText(declaration.deceased.identifier.type, { exact: true }) + .click() + + await page.locator('#maritalStatus').click() + await page + .getByText(declaration.deceased.maritalStatus, { exact: true }) + .click() + + await page.locator('#countryPrimaryDeceased').click() + await page + .getByText(declaration.deceased.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryDeceased') + .fill(declaration.deceased.address.state) + await page + .locator('#internationalDistrictPrimaryDeceased') + .fill(declaration.deceased.address.district) + await page + .locator('#internationalCityPrimaryDeceased') + .fill(declaration.deceased.address.town) + await page + .locator('#internationalAddressLine1PrimaryDeceased') + .fill(declaration.deceased.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryDeceased') + .fill(declaration.deceased.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryDeceased') + .fill(declaration.deceased.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryDeceased') + .fill(declaration.deceased.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('7.1.2 Fill event details', async () => { + await page.getByPlaceholder('dd').fill(declaration.event.date.dd) + await page.getByPlaceholder('mm').fill(declaration.event.date.mm) + await page.getByPlaceholder('yyyy').fill(declaration.event.date.yyyy) + + await page.locator('#mannerOfDeath').click() + await page.getByText(declaration.event.manner, { exact: true }).click() + + await page.locator('#placeOfDeath').click() + await page.getByText(declaration.event.place, { exact: true }).click() + + await page.locator('#countryPlaceofdeath').click() + await page + .getByText(declaration.event.deathLocation.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePlaceofdeath') + .fill(declaration.event.deathLocation.state) + await page + .locator('#internationalDistrictPlaceofdeath') + .fill(declaration.event.deathLocation.district) + await page + .locator('#internationalCityPlaceofdeath') + .fill(declaration.event.deathLocation.town) + await page + .locator('#internationalAddressLine1Placeofdeath') + .fill(declaration.event.deathLocation.addressLine1) + await page + .locator('#internationalAddressLine2Placeofdeath') + .fill(declaration.event.deathLocation.addressLine2) + await page + .locator('#internationalAddressLine3Placeofdeath') + .fill(declaration.event.deathLocation.addressLine3) + await page + .locator('#internationalPostalCodePlaceofdeath') + .fill(declaration.event.deathLocation.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('7.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + + await page.locator('#registrationEmail').fill(declaration.informantEmail) + + await page + .locator('#firstNamesEng') + .fill(declaration.informant.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.informant.name.familyName) + + await page.getByLabel('Exact date of birth unknown').check() + await page + .locator('#ageOfIndividualInYears') + .fill(declaration.informant.age.toString()) + + await page.locator('#nationality').click() + await page + .getByText(declaration.informant.nationality, { exact: true }) + .click() + + await page.locator('#informantIdType').click() + await page + .getByText(declaration.informant.identifier.type, { exact: true }) + .click() + + await page.getByLabel('No', { exact: true }).check() + + await page.locator('#countryPrimaryInformant').click() + await page + .getByText(declaration.informant.address.country, { exact: true }) + .click() + + await page + .locator('#internationalStatePrimaryInformant') + .fill(declaration.informant.address.state) + await page + .locator('#internationalDistrictPrimaryInformant') + .fill(declaration.informant.address.district) + await page + .locator('#internationalCityPrimaryInformant') + .fill(declaration.informant.address.town) + await page + .locator('#internationalAddressLine1PrimaryInformant') + .fill(declaration.informant.address.addressLine1) + await page + .locator('#internationalAddressLine2PrimaryInformant') + .fill(declaration.informant.address.addressLine2) + await page + .locator('#internationalAddressLine3PrimaryInformant') + .fill(declaration.informant.address.addressLine3) + await page + .locator('#internationalPostalCodePrimaryInformant') + .fill(declaration.informant.address.postcodeOrZip) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('7.1.4 Fill spouse details', async () => { + await page.getByLabel("Spouse's details are not available").check() + + await page.locator('#reasonNotApplying').fill(declaration.spouse.reason) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('7.1.5 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('7.1.6 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's age + * - Change button + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + await expect(page.locator('#deceased-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's marital status + * - Change button + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + await expect(page.locator('#deceased-content #Marital')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Manner of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.country + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.state + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.district + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.town + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.addressLine1 + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.addressLine2 + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.addressLine3 + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.postcodeOrZip + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + * - Change button + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + await expect(page.locator('#informant-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's age + * - Change button + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + await expect(page.locator('#informant-content #Age')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's Nationality + * - Change button + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + await expect( + page.locator('#informant-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should include + * - informant's Type of Id + * - Change button + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + await expect(page.locator('#informant-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - informant's address + * - Change button + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.state + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine1 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine2 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine3 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's details not available + * - Reason + * - Change button + */ + await expect(page.locator('#spouse-content')).toContainText( + "Spouse's details are not availableYes" + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + declaration.spouse.reason + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + 'Change' + ) + }) + + test('7.1.7 Register', async () => { + await page.getByRole('button', { name: 'Register' }).click() + await expect(page.getByText('Register the death?')).toBeVisible() + await page.locator('#submit_confirm').click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Ready to print' }).click() + + /* + * Expected result: The declaration should be in Ready to print + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + test('7.1.8 Verify informations in view page', async () => { + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + + await page.getByRole('button', { name: 'View', exact: true }).click() + + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + + /* + * Expected result: should include + * - Deceased's Gender + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + declaration.deceased.gender + ) + + /* + * Expected result: should include + * - Deceased's age + */ + await expect(page.locator('#deceased-content #Age')).toContainText( + declaration.deceased.age + ' years' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + + /* + * Expected result: should include + * - Deceased's Type of Id + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + declaration.deceased.identifier.type + ) + + /* + * Expected result: should include + * - Deceased's marital status + */ + await expect(page.locator('#deceased-content #Marital')).toContainText( + declaration.deceased.maritalStatus + ) + + /* + * Expected result: should include + * - Deceased's address + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.state + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.town + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine1 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine2 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.addressLine3 + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.postcodeOrZip + ) + + /* + * Expected result: should include + * - Date of death + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'dd MMMM yyyy' + ) + ) + + /* + * Expected result: should include + * - Manner of death has been established + */ + await expect(page.locator('#deathEvent-content #Manner')).toContainText( + declaration.event.manner + ) + + /* + * Expected result: should include + * - Cause of death has been established + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + + /* + * Expected result: should include + * - Place of death + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.place + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.country + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.state + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.district + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.town + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.addressLine1 + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.addressLine2 + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + declaration.event.deathLocation.addressLine3 + ) + + // Bug: This should be visible but is not + // await expect(page.locator('#deathEvent-content #Place')).toContainText( + // declaration.event.deathLocation.postcodeOrZip + // ) + + /* + * Expected result: should include + * - Informant type + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + + /* + * Expected result: should include + * - Informant's First Name + * - Informant's Family Name + */ + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.firstNames + ) + await expect(page.locator('#informant-content #Full')).toContainText( + declaration.informant.name.familyName + ) + + /* + * Expected result: should include + * - informant's age + */ + await expect(page.locator('#informant-content #Age')).toContainText( + declaration.informant.age + ' years' + ) + + /* + * Expected result: should include + * - informant's Nationality + */ + await expect( + page.locator('#informant-content #Nationality') + ).toContainText(declaration.informant.nationality) + + /* + * Expected result: should include + * - informant's Type of Id + */ + await expect(page.locator('#informant-content #Type')).toContainText( + declaration.informant.identifier.type + ) + + /* + * Expected result: should include + * - informant's address + */ + await expect(page.locator('#informant-content #Usual')).toContainText( + 'No' + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.country + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.state + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.district + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.town + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine1 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine2 + ) + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.addressLine3 + ) + + await expect(page.locator('#informant-content #Usual')).toContainText( + declaration.informant.address.postcodeOrZip + ) + + /* + * Expected result: should include + * - Informant's Email + */ + await expect(page.locator('#informant-content #Email')).toContainText( + declaration.informantEmail + ) + + /* + * Expected result: should include + * - Spouse's details not available + * - Reason + */ + await expect(page.locator('#spouse-content')).toContainText( + "Spouse's details are not availableYes" + ) + await expect(page.locator('#spouse-content #Reason')).toContainText( + declaration.spouse.reason + ) + }) + }) + + // await page.getByLabel('Assign record').click() + // await page.getByRole('button', { name: 'Assign', exact: true }).click() + // await page.getByRole('button', { name: 'View', exact: true }).click() +}) From 0f22e3f7f94bb90c2379e3745010196e6ba86ead Mon Sep 17 00:00:00 2001 From: jamil314 Date: Fri, 31 May 2024 20:05:12 +0600 Subject: [PATCH 13/19] feat: implemented death declaration - 8 --- .../declaration/death-declaration-8.spec.ts | 509 ++++++++++++++++++ 1 file changed, 509 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-8.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-8.spec.ts b/e2e/testcases/death/declaration/death-declaration-8.spec.ts new file mode 100644 index 000000000..fdfd785d7 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-8.spec.ts @@ -0,0 +1,509 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' + +test.describe.serial('8. Death declaration case - 8', () => { + let page: Page + const require = 'Required for registration' + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + address: { + country: 'Farajaland', + province: 'Central', + district: 'Ibombo' + }, + nationality: 'Farajaland' + }, + informantType: 'Grandson' + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('8.1 Declaratin started by FA', async () => { + test.beforeAll(async () => { + await login(page, 'k.bwalya', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('8.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + await page + .locator('#familyNameEng') + .fill(declaration.deceased.name.familyName) + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('8.1.2 Fill event details', async () => { + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('8.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('8.1.4 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('8.1.5 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's date of birth + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should require + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Must be a valid date of death' + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + require + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + 'Must be a valid email address' + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + + await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's date of birth + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Farajaland' + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + + test('8.1.6 Send for review', async () => { + await page.getByRole('button', { name: 'Send for review' }).click() + await expect(page.getByText('Send for review?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Sent for review' }).click() + + /* + * Expected result: The declaration should be in sent for review + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + ).toBeVisible() + }) + }) + + test.describe('8.2 Declaration Review by RA', async () => { + test('8.2.1 Navigate to the declaration review page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'In Progress' }).click() + await page.getByRole('button', { name: 'Field Agents' }).click() + + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames} ${declaration.deceased.name.familyName}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Update', exact: true }).click() + }) + + test('8.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.familyName + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's date of birth + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should require + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Must be a valid date of death' + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + require + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + 'Must be a valid email address' + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + + await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's date of birth + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Farajaland' + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + }) +}) From 147596b72db2363ae804ea573751ed02479b5414 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Fri, 31 May 2024 20:05:25 +0600 Subject: [PATCH 14/19] feat: implemented death declaration - 9 --- .../declaration/death-declaration-9.spec.ts | 508 ++++++++++++++++++ 1 file changed, 508 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-9.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-9.spec.ts b/e2e/testcases/death/declaration/death-declaration-9.spec.ts new file mode 100644 index 000000000..5eef8b140 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-9.spec.ts @@ -0,0 +1,508 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, goToSection, login } from '../../../helpers' +import faker from '@faker-js/faker' + +test.describe.serial('9. Death declaration case - 9', () => { + let page: Page + const require = 'Required for registration' + const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('male') + }, + address: { + country: 'Farajaland', + province: 'Central', + district: 'Ibombo' + }, + nationality: 'Farajaland' + }, + informantType: 'Grandson' + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('9.1 Declaratin started by FA', async () => { + test.beforeAll(async () => { + await login(page, 'k.bwalya', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('9.1.1 Fill deceased details', async () => { + await page + .locator('#firstNamesEng') + .fill(declaration.deceased.name.firstNames) + + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('9.1.2 Fill event details', async () => { + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('9.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('9.1.4 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('9.1.5 Verify informations in preview page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * * Should require + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's date of birth + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should require + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Must be a valid date of death' + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + require + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + 'Must be a valid email address' + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + + await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's date of birth + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Farajaland' + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + + test('9.1.6 Send for review', async () => { + await page.getByRole('button', { name: 'Send for review' }).click() + await expect(page.getByText('Send for review?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + + await page.getByRole('button', { name: 'Sent for review' }).click() + + /* + * Expected result: The declaration should be in sent for review + */ + await expect( + page.getByRole('button', { + name: `${declaration.deceased.name.firstNames}` + }) + ).toBeVisible() + }) + }) + + test.describe('9.2 Declaration Review by RA', async () => { + test('9.2.1 Navigate to the declaration review page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'In Progress' }).click() + await page.getByRole('button', { name: 'Field Agents' }).click() + + await page + .getByRole('button', { + name: `${declaration.deceased.name.firstNames}` + }) + .click() + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Update', exact: true }).click() + }) + + test('9.2.2 Verify informations in review page', async () => { + /* + * Expected result: should include + * - Deceased's First Name + * * Should require + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + declaration.deceased.name.firstNames + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's date of birth + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should require + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Must be a valid date of death' + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + require + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + 'Must be a valid email address' + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + + await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's date of birth + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Farajaland' + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + }) +}) From b5cb23b0d1159553c96d2b9fa46742ed16fda509 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Fri, 31 May 2024 20:05:40 +0600 Subject: [PATCH 15/19] feat: implemented death declaration - 10 --- .../declaration/death-declaration-10.spec.ts | 487 ++++++++++++++++++ 1 file changed, 487 insertions(+) create mode 100644 e2e/testcases/death/declaration/death-declaration-10.spec.ts diff --git a/e2e/testcases/death/declaration/death-declaration-10.spec.ts b/e2e/testcases/death/declaration/death-declaration-10.spec.ts new file mode 100644 index 000000000..a71bfe794 --- /dev/null +++ b/e2e/testcases/death/declaration/death-declaration-10.spec.ts @@ -0,0 +1,487 @@ +import { test, expect, type Page } from '@playwright/test' +import { createPIN, goToSection, login } from '../../../helpers' + +test.describe.serial('10. Death declaration case - 10', () => { + let page: Page + const require = 'Required for registration' + const declaration = { + deceased: { + address: { + country: 'Farajaland', + province: 'Central', + district: 'Ibombo' + }, + nationality: 'Farajaland' + }, + informantType: 'Grandson' + } + test.beforeAll(async ({ browser }) => { + page = await browser.newPage() + }) + + test.afterAll(async () => { + await page.close() + }) + + test.describe('10.1 Declaratin started by FA', async () => { + test.beforeAll(async () => { + await login(page, 'k.bwalya', 'test') + await createPIN(page) + await page.click('#header_new_event') + await page.getByLabel('Death').click() + await page.getByRole('button', { name: 'Continue' }).click() + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('10.1.1 Fill deceased details', async () => { + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('10.1.2 Fill event details', async () => { + await page.waitForTimeout(500) + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('10.1.3 Fill informant details', async () => { + await page.waitForTimeout(500) + await page.locator('#informantType').click() + await page + .getByText(declaration.informantType, { + exact: true + }) + .click() + + await page.waitForTimeout(500) // Temporary measurement untill the bug is fixed. BUG: rerenders after selecting relation with deceased + await page.getByRole('button', { name: 'Continue' }).click() + }) + + test('10.1.4 Go to preview', async () => { + goToSection(page, 'preview') + }) + + test('10.1.5 Verify informations in preview page', async () => { + /* + * Expected result: should require + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's date of birth + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should require + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Must be a valid date of death' + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + require + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + 'Must be a valid email address' + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + + await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's date of birth + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Farajaland' + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + + test('10.1.6 Send for review', async () => { + await page.getByRole('button', { name: 'Send for review' }).click() + await expect(page.getByText('Send for review?')).toBeVisible() + await page.getByRole('button', { name: 'Confirm' }).click() + await expect(page.getByText('Farajaland CRS')).toBeVisible() + + /* + * Expected result: should redirect to registration home + */ + expect(page.url().includes('registration-home')) + + await expect(page.locator('#navigation_outbox')).not.toContainText('1', { + timeout: 1000 * 30 + }) + }) + }) + + test.describe('10.2 Declaration Review by RA', async () => { + test('10.2.1 Navigate to the declaration review page', async () => { + await login(page, 'f.katongo', 'test') + await createPIN(page) + await page.getByRole('button', { name: 'In Progress' }).click() + await page.getByRole('button', { name: 'Field Agents' }).click() + + await expect(page.locator('#name_0')).toBeVisible() + const [firstButton] = await page + .getByRole('button', { + name: 'No name provided' + }) + .all() + await firstButton.click() + + await page.getByLabel('Assign record').click() + await page.getByRole('button', { name: 'Assign', exact: true }).click() + await page.getByRole('button', { name: 'Update', exact: true }).click() + }) + + test('10.2.2 Verify informations in review page', async () => { + /* + * Expected result: should require + * - Deceased's First Name + * - Deceased's Family Name + * - Change button + */ + await expect(page.locator('#deceased-content #Full')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's Gender + * - Change button + */ + await expect(page.locator('#deceased-content #Sex')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Sex')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Deceased's date of birth + * - Change button + */ + await expect(page.locator('#deceased-content #Date')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's Nationality + * - Change button + */ + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText(declaration.deceased.nationality) + await expect( + page.locator('#deceased-content #Nationality') + ).toContainText('Change') + + /* + * Expected result: should require + * - Deceased's Type of Id + * - Change button + */ + await expect(page.locator('#deceased-content #Type')).toContainText( + require + ) + await expect(page.locator('#deceased-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Deceased's address + * - Change button + */ + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.country + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.district + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + declaration.deceased.address.province + ) + await expect(page.locator('#deceased-content #Usual')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Date of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Must be a valid date of death' + ) + await expect(page.locator('#deathEvent-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Cause of death has been established + * - Change button + */ + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'No' + ) + await expect(page.locator('#deathEvent-content #Cause')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Place of death + * - Change button + */ + await expect(page.locator('#deathEvent-content #Place')).toContainText( + require + ) + await expect(page.locator('#deathEvent-content #Place')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Informant type + * - Change button + */ + await expect(page.locator('#informant-content #Informant')).toContainText( + declaration.informantType + ) + await expect(page.locator('#informant-content #Informant')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Informant's Email + * - Change button + */ + await expect(page.locator('#informant-content #Email')).toContainText( + 'Must be a valid email address' + ) + await expect(page.locator('#informant-content #Email')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's First Name + * - Spouse's Family Name + * - Change button + */ + + await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's date of birth + * - Change button + */ + await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + 'Change' + ) + + /* + * Expected result: should include + * - Spouse's Nationality + * - Change button + */ + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Farajaland' + ) + await expect(page.locator('#spouse-content #Nationality')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's Type of Id + * - Change button + */ + await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + 'Change' + ) + + /* + * Expected result: should require + * - Spouse's address + * - Change button + */ + await expect(page.locator('#spouse-content #Usual')).toContainText('Yes') + }) + }) +}) From 6ae52fccc442e3d333841edc8a9b85e1f5150a90 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Mon, 3 Jun 2024 18:18:13 +0600 Subject: [PATCH 16/19] feat: implemented shortcut declaration --- e2e/constants.ts | 1 + .../death/1-death-event-declaration.spec.ts | 14 +- .../death/data/assets/528KB-random.png | Bin 0 -> 541131 bytes e2e/testcases/death/data/declarationData.js | 55 ++++ e2e/testcases/death/helpers.ts | 240 ++++++++++++++++++ 5 files changed, 308 insertions(+), 2 deletions(-) create mode 100644 e2e/testcases/death/data/assets/528KB-random.png create mode 100644 e2e/testcases/death/data/declarationData.js create mode 100644 e2e/testcases/death/helpers.ts diff --git a/e2e/constants.ts b/e2e/constants.ts index 7683fdde3..e86d68b50 100644 --- a/e2e/constants.ts +++ b/e2e/constants.ts @@ -2,3 +2,4 @@ export const DOMAIN = process.env.DOMAIN || 'farajaland-dev.opencrvs.org' export const LOGIN_URL = 'https://login.' + DOMAIN export const AUTH_URL = 'https://auth.' + DOMAIN export const CLIENT_URL = 'https://register.' + DOMAIN +export const GATEWAY_HOST = 'https://gateway.' + DOMAIN diff --git a/e2e/testcases/death/1-death-event-declaration.spec.ts b/e2e/testcases/death/1-death-event-declaration.spec.ts index bb7474e7c..328cb2a4e 100644 --- a/e2e/testcases/death/1-death-event-declaration.spec.ts +++ b/e2e/testcases/death/1-death-event-declaration.spec.ts @@ -1,5 +1,6 @@ import { expect, test, type Page } from '@playwright/test' -import { createPIN, login } from '../../helpers' +import { createPIN, getToken, login } from '../../helpers' +import { createDeathDeclaration } from './helpers' test.describe('1. Death event declaration', () => { test.describe.serial('Fill all form sections. Save & Exit', () => { @@ -501,6 +502,15 @@ test.describe('1. Death event declaration', () => { }) test.describe('1.12 Technical test for shortcuts', () => { - test.skip('Shortcut for quickly creating declarations', async () => {}) + test('Shortcut for quickly creating declarations', async ({ page }) => { + const token = await getToken('k.mweene', 'test') + const res = await createDeathDeclaration(token) + expect(res).toStrictEqual({ + trackingId: expect.any(String), + compositionId: expect.any(String), + isPotentiallyDuplicate: false, + __typename: 'CreatedIds' + }) + }) }) }) diff --git a/e2e/testcases/death/data/assets/528KB-random.png b/e2e/testcases/death/data/assets/528KB-random.png new file mode 100644 index 0000000000000000000000000000000000000000..02bd690173b5871fdb1ed8aae018191e0acdf856 GIT binary patch literal 541131 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

=6c~Va28CKbv;1A-}%gJut$)$M56) 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≤Aty<9eCK51)zhop?~c z8uf(z4NTF`yFrKg8pPWZyyM!YQ}+5ZiPv@8C{8bP*)McMcYOqcW+A;uDe5L+%Mj0x zX?5e6@zeb%;lJxu`Ta5j2A(ENRu752hWU74g9%dSrNohq#1;QQP>Ip!bUxu1xejxm zdq~`=Faw`6QRF^8XNz+k#Mk}nB?#+%im_uk*76V?35Ulyg|l2{dAerG9!~+3cuvBy z>-*+ZSmDy!+rVt5oMUvSQvVFN-Hz?632GnAN?vfID4R zI*;_eXi^;$_+bbfJl8QEy%6V~rtQguNcc*a9C1*;Wsajzx%sMIBsfc0)Y>Xx?dxw!rP1G*#eBfC`icdBY)p64u3HGQ)t0 zob~tr`gaY7uwSurZ24X{+9V9V0b5tHzCU;IugT;kqI7mmE`I>dAgBf*iKWjHO~8Vn zGTE>16_IgFuLcwauNqGxPKkssCoZ^k_2|FGe1UfoM9OJ8{{ycA7{xdy5*h@TuyFoo z63Ruq4#8j|pYpfK4EJIHOoY{dXx zINfww(+2E+xao|G&mqKYkl=59zev)+a|xRzc8R@=If+FQbm6>K@2Ry?5D^=b3Bh-{ z*BsAje0d11NCwplNDLBTTKz7q6>;mn>(2>;)_GabxPKw8FY(rZVzQt5A$l84W%lUL zzis|;Ehe~EA7XBav>6kP^C#Z=29U38vUdm5Ce^OacyxqY8yPRbfJo{c(Vo$^_XUl=A1jAH%N_Y@~$hYbMMs)sqNKV5@e^I67Nc=7L7 z%g79UH1P&wRJ|r~qY-y=5^BT_!2j!*&ifEse*EO^m9vRR^_RjS4FFbiGXP%;8Og|l zNuZMwCM8sD2!-6qVu#K`f@GNhCqV5f(g9wBbon!he0!|~Arm{rfw5+@bTOyq=A<}p zMjS->r$ZO6hD5{0`DG$3ARNW-hKYDDLS``(K=Los?IHM)+zoa*zdEBNblOxn$j>=l zc1#4s7g(AM6yUCXdk+by1y1p{fyszTtpW9_sU&br{2rvF>j80F^-|b@Mv&s)IgFSS z=M|@uR97wp5|Tu9yy^$M8%D=E2IQCo?Q?+{3vrHVw7(2T}B}>#Cb>ZKl0`hyWa(l8&ijQ z%Dw!$Swdd0OnBpli~(~R507j#j2HlO`{#T<@fjOhILE%HXQsGz{?QaD{5Y`Vb&WLLp`WtQ%keNrS@>%z@yn zhVsWVx*AbTxU_$}L~Qo_-SKlzLw$W@G?mwtvI~$!&byg}t2XI8oL8fX1Ty`3{_*qi zeB{e$W(E&VP?CXT@>fkTO?{MS%&`F+sWGJ6APFoea7=8R=Z*oN=e#0r(6FdyIN!tH zQ<+%4fbVlAX@71!Y7j$A8GHi{F2PI^gR`t0d6H2R;y{o`W8k|2>1u=M`?)b~5cZAc z7wR+_RBWWg-6dj=31$?bGCG(xk*woP`1>@u>Sv|6y6%NL$^05vQR@h|R92n7FgB5i z@4_QNF-HI4)&}FSgs`vb@c_8T|6s(dJV}#c)hoXf9NoZ^@I+%i9r zr%{}~gcNH%^?$}y{c-F&@GFY>g-I5b?pF!ZefC~knqDd|#?2VrJ~2jK`0Jdl&kX}x zJjw!o+|-nzwr;49Gav??FG*v3KR1R8FYHf7D9<$1UGK^3gDy(-eeu#U7<=Ty&?jD_ za^mE(_*~>M#5ULa#T^+Va{4gLc;<{S&uyr`n{H3Z=x40`oMF&}IyYat*73ms^ZTo( z`E!GGhP(0x@UbWZk`6V2wj1gocMiPCdN}yulBhusce0u=36RD0H^LDt)od#+29|$6 zPuEpm6VddHblB^;Nx0}|gAjWUYD`WdHprOt$GZ&NjL9-5j=#_7+zEv35;CJP6KoC8 zT%f1@l_vo3GzsJ*dJ;tt4~=3O0CE%S_i37+rl-T$soXD7>*Fo^TL;-!ypEEuTf~bH1j2r0IL-koc1KI(o=Oq8}5kf&Y(M8=TC! z8i;Nb&EJ<@Vx{X#wMgU9eR~wc7XD=APpm^_}sj0Rek_qwwl|C)YFf>#VxwoFk~e&NIZ$ zrby$0`2l%n7}oTDLan(MeCjgv?cO`Fh!`0id^zn&J zG76o!sOMWOj@pwk#aFL9^}0>$yw@KMZ`4zob9 zi5RCQsSY(Tv})4=igg+Yl;in{m(Mpf`U4-CU;QjKKsVH?=aDGl5;CyA2F%DP5lTf2z`J88ZM_S)S+5$e&41Qsu>%muGQ$5F9V_Yxu2lXAf zkMJn<{aXL}-9gle6>IpS^BO%m@gVoiv`++hyt{Ihq}U&4-6?U+uUSh`si8Jr(fy|YFF&$gfdAwnTJq-@(+e*UT#fP}AIz#qJ@Pt)2 z>T!LRex`F+JtoC){ES@1xvAQ+xo&J69Fu!P9w+1Y{NC}5#s9>&8WTNe3bzg#znHsK zQ|3%QyU;HpPp@25J$F6m=H<%su%7zv)ms^Za~OeK^37rz9jgWcCJf`}!L^7+xw zDQ?=SF&$U%k`c3juyPG~NDPP*l~<1Gd?VQ*03WrmZkSk{xu#fi$))#|bQ=f69mgUN zr-2a`7p&j!y2iwb@l*XrgYJ)n?8^NPjRft=b7LCT`Kb#N8q^6L@YTb@mC~*=-Rc;1 zrS&Wk73$4|a^!L#WXo(wf4bm)8rD3>&QVJXt1Pnl-^@AXcK37D0CD*eed8RRo5cMe z^_He`S3iw}()*KPFmQ^PlJJ7x^}khX7Hr1DB}mi@N9=trhv7S>jt4$gJ*>WxhD70< zR_s}uNn}FQCH|N4dGvSY9&#m4!mfHr`9>UmOtQzCWxQGtnhUrF22Ua$hwI!iFTZ(^ z_%Hj!!XmwE@N{ACXHcEDm3lAt>+@tkPkN|w zIT<1RSsF}L9*482t*oJiOraPzVcj4*`JLFWD+50gYApKY4tX-Zpx;Y4Vx)G`l zU3cTG*fbtjfH>jq+z8i~{$k2pdC?doup8#!kuNy5&p%Db#-ElPn3hbJg^Oyy*Cb)A z*`iw$rpk#HxP{Z#UQvs&=B_g>{Hxzfye}~lFqQEb^%ab=@jM?8F`VxShJrDkjX9Y~ z<7bKV@!f@u!qf9A8~ViO+|Zktznx0~>j%N9Gr`$JV!-Ecx|OCbFPwPA8hJBJ8H)|9 zIhs+t6%|C<$oJz}>_Y?VmD?+=O#0c2UAxGGkHFA(mjDh#F^S6|suE!jQiaYn1c+-MY1+{y5@$ zor`MqGF1voN4&{3j(3l9l`wG+B3>oF6pa$rh%q~1n+%oi!|pu@bcv+G&r388K4w7| zZc+_S%^YRTgg$ho;nGPOZQ@^^4{pAXlc)+h{iP5#gNL1@BG95>+0RX%}@ zS)5!M5}8B_kW>T?Hsk(z0D?%s4*+TKOH+02gMYJXcQQ^{1IfLvISv7(Ya)qsUXA1v z7Xqh+nhD(ZvqMaTqKU%NO_hW+H2VR_j{+ECp~1>knuUk-W4?r2WSka7b^69F{IK}sv%bYtL`;WCV=dVk2b z;%aoE`7>8XZGYd*`i;%H@bMtEJg+t7LhP<{S^2x93JmeZbg?rm_LmfN5fpgD45i%W-fPLF|6|+w=$S3;ktL{r0};f=RpK~-F*>V zBqaB}CThgP^l#l@@vV_RVG0S*tJep?VNu}od6|=gu>BC%Ki`Ac{EJ~EN z%h(f>Ap(rAnz8uoT-0Y9=djLY`tf&3Olj|*T;-V(2!o-!ZmPJqdlFdj2&CHP;}9Sg ztn4*fugwpe4lAB7G2#J3x(ZJ0<{1T^)@!-2q@Kn6WIkPku7{8){E3+6o-G5#!hVUS zFo;@4hH|JdCOtdxGJbt&AD;&?Pkd#>UU6h>7_TKJL;fy<__5!Azv94b-P%k2Kjmj( zNfM`F`tCikCoOJ{7)GPdeU`l4>#E#6%+3)D@?CQ*J_mbF`B*qg?rtn0CXD=I{JnP7 z3cok{Fq=<(Xfz}@FD5OYiUb~;3QeQG=HGdm7@Ej%%a6kN``yN$1jq#R%d|)WFpvkocYrJN@liV!JAQWv1@6hD)YxDX(9Noz zm73UfBSGI87>~0Vcoy~>YX^HHIT&ZIe5jmQ`C!cBEfK{j=5G>N!h(b!&i!Gai1>Ew zg#D3JrQEj=PuRg8c###Eh9sv$l)8St8(4xf2nCDVmw-zXNY}8*u+7R5Tjz|0p6mYL z0iz}p`IpFy#uXm2CjP+0fh9aw^psU2kA7?Z^6!z0i*SSNT}OT{lgf4Fi8Ok8B>xhP zFXMlRZ`W10K{L)GeEx$Y2_JbTCh4lTU*<*X-L9QAtU`^gGc;kxTK%r;zsLL3TZ#|3 zR+FhfE=OTA^6aR)$T3`Oq3=Xpff#VWRqNnm2j{ik5Z0}FG3Q`zun*$j)f;LJi;|tT+Ga9>mV=47yW1g`(>Agc&b$pFiIP{@8l9(n& z39tGwI_uY;b}ZcCeuQ_O7t}uAc+`1Wk5#OBTRHXCKL7ZDO45|Xm#Cq*NDcD<%S)gn zG59&q(A4Un#}#chMmHJ)I{=jccL}jYZYLs9RU6nHi zmvDw7HU}8Rybby0yh>MW*DVIDsdMB%V1P*>k8X$|0{z4=b5mNvBGkh; zTgAe4F!rjmJb!2MX?K|KG{zq1K=W}By?U13xu)=H`pe8DwmwA8zt=5H{?SmQ5VRrc zhDb3llY?Zku(*D<1XsX-*M!~}@XI_-q>SX*xc!MA&+N!gi>F>!%9ro+mH=lTJ9_oA zFB$7iifEes!0&_$(LfR&4B|!1|Gsb4LRtrNE5u|O^M~+XHDer2Jw@wjGmCkdYT@b| z7KCBaHzvdnZdJK>5qsBGU z1t$V$g0mVW-A_BAI)DNKg61N*R{#W-1l&OaRh$c?6qI(w=pG4RRt#9IBFQVBDAe(; zRK&s2?qXuG3ap(>t1x+<;oo-MMl(xd($4DfwqS6*3AkjM zy(Vx&P^A6aDRm=s4znTH1^)hSObL)jCJ!HsVtx7Csty&~)s&e~p?1d^^Y@OsC$UMu zyNQ@saxI=b`DVdUBNR>k_rP_$yKC==H|w;PNc`-d9ma%7_xfAhL)dWriww%>8Q9|9 z@gU!0??1lxsY%{|Af7&^B_n3~K6`+tFYGC+cDYv9A@b;)Z1Ajg?)CNl?nN$H&#d*o z+)4v#?R!KX(kVuMr#W_rUs3 z&0ZL2O_#WS;J#xo{(Z>jPfSu@N;(QTVBR})fpYxnX$;ZG7oU^rqR%jqtrk`$3ZZ}p z7z8o%435BXIWxZUsY%HIIT6hQ^ID&$W%YX(@oLxtht;qsJ`Kzg+)-F5!8)F7GLBP$ zgbHLeK{VQ*!<2R(oPIRUY=4hM$l3x*`9HqxNJV8~^QV zrZf)>2OJX(DdyG)^Vb!F)^S3~Y0+8@E}|6Hc;KJs{*y z?dR3=Iww_|Pk{;iTm}T|2lzzsM2s4unF14s^Xe00Zzguc`E;(w+4Za4(`!E>>zy|| zSFNAotnoZ?hU1-_433xszuhN1^jHGa>lN0$>Sgt$OZ1SBN#GCc5@%c_I27yPXudI{ zvmf#2`T0z3T&jMTNgd3YW%h9`-iLBN{RzOT-;g(-vtrH}502bT^)p0Z%JriUjq`Nv ztH*nC+3Qc*g8c{2b)Bw>Wnp8$s}(QQLf13S-Zf{T?dR1qh+RHM#=z!HEobGe>*R>* z(f}z31J8{^mhWN)ZZn@WoPC)HHpEyC!(e-HdUBmZTwlgd9#kSiffSRS9HD?`J=#9*D@7lb-?jCBC#kzhd-3}DbiDBW;K zj#dJtk&7}BxOX~=EdKiUy3S4Twh*ydfpdw()H(YAQvy1T3j*^JscaaBAWLBLc~>Cd zpWIIX7eN1PE)sYqpRs9LF#o}QzosJ*kJOB!DMjJM+7I}&nx#dp5{=|?)TJAp1Xyy^ zhp5K67)RVRmRe5DoF^~w&&hWnsVNRav@ti3&jSx!tHSq_)UgjGA!eYpQ4-?Tm=yAH33y{y zBJsqsSDqx1m_GmA)0jkudTneF9xpDGexLS!#M=ELim`x8#v*frWVrHYtd}Utk!y?G z6Ni!etnYIOgdXAdt|^sGii;>e^5_+p@w*oW*M2GLlL1bQG3Thf)Be|RBXPsZr$f+w z;&yPH)jya^$IvTrpaBI*00z#nOi}KGF)gmD^CiYLcQ>!)cZrY38e`tSurICcz=XxM zg#(R^=8r!HmE;dy_Xj_7jdvX?Khm&t80cZ`eV!Li6I)d)R8jh(A+ zI^Vb_u21V8?+yD{u?w2=b56`boq4a79~?p#fw6nIMB!^1NAaSoN2j=CAu`#yi8Q(U zMU(;v^3Zsol?-D7;P?CbMrvBfsv#nia5@O`=MhMRb!Lk3azc-5t?_!_i&UZLQvr7) z2tc?@6cynT*ede+_#hr`$N>P7dE$5`VEF*GCgID4Bl*yII+q5y@a+i3%YTF7ob@{a zDg>}4@+*f73bn`7Ecn1A1nk~FrY29JeUOJFFju`&Y@kjokbNcWtS2{@fIrc|6tVgD z{6S=dk<6vW8b3q(sl1J18Rtu*i*+-aF`pf3EeiPW!`4;uAiPulttnK%(_u^)i_)4U zHmmL~SAO8SzPtLINqL$WxIqi6W1cU})ZZm0 z0H+J9MqORp;QPIV?H#ZBOyH5HKsU!p|NVV#8J3-+L13J{hsMJr?}ss#@cw%UuO8HR zq%(gSO$iU3@5UJ9QPZ9Hpg^*ElfNH0|_t2&$tKF_uwweDJGZ%P$Tgj z*K(ZT_-`Mu0g=hMTs1Z&2ZGIsz?XzN$!|T=#K0h^@5FVd=E4cGNJWLkAZH=jG2_0p z$JO|_ehJ2L28fSAYcy}i5%0f%*d$~*z!ZdvcNfwx0;C*e0VVUIp8M~A2k~Svi{!Qu zaDlP`NL3pF^2mkZOoF^5fofyqbu}&;4?%QvT;%F?Zdd>STz{G}B*JVw*E53PxyW8R zYnm$Sdjj#7OB_Y`F#%qJnO6Z>Yi_P?+7|KOoEik%=Vy=?4kw|ua?{wINMg!MFWFOoz+uP|Dl0-;P=4zBpj;_h1q4QF~$QM-RqePs>9CH zqfaE#TkoRy;28}5alD)L@!3b9W#b-~H__aaUT%*=>@asBO;*0Y#uA5kY z@bJN{lwYIvUOdC~mPEg}+c3qCUOdv-y@$2Tex)0ujInR=F}H>x{OSihE3OIgiRXpy zC7ri&IAKNLBu~w7415w78$A{8jvQV%>Rxg39CES1F(L*c3B2x64~%c%wvDrCkbA_{ zG5H@SPy|X}U8DFjKof|=?=09B@EXYZj4+k@{JIkL5~WJ;5%f@WKW_{G98!`G01}X- z$yqm2HC>+t_d1$Q5Pr)gH$nTZD@_XMlC$s&kjErWe-<#-rFWd`_brQ*Uz}bk{tfCT zEoqABrtFC|n}Qldr(zJ1y*C!OiRkxt16(NJ!c``|bCB*s1T7K3{5#0nnrsSqM#I7L zs+Lo}q-pISc8SEOPUH0PATY*&&edxQ%jU*&3PR;qd@kZrc{xPok)t+gOte?i_qh_I zT|db&Pd7vY!A)4meI>%T#D~a-8~l2Pdw@vEFjj1G@VhpL+$T`0o`C$q=@TO#f@n++ zD%WWm>V{e8KR-(`;O_>EkAK>O=f&Q6-V`7sqUbivW>lXn=zxl=281_Xj-OnsQg4vabH96Y{XK8pS1|x@k zP7kA`@!LX*xaAykPw`qz)-5KIaqz&GKXKWx#?((b&cZ0>R~tx*_nJDhzE#UB-+im~ zA%rY~Vqdd?qTF}xEQ|}H^U?_H@zs;+XAAd^Y5Fp-4qhirv70L-yLzA+Yd= zh)$&KO4dV&Em4lZ^RPJ0Be96&&!Bs_-%I?P)Lp_&#a!!gV;G>9#H<=-yb7qs-=KL- z78UrULu$gqeFi}l34CZ6CUX`S5lBrw zl(Xy49SVS7=Pf}%Q|PnRL~aP|iHwAwt@`D;^7F4f8IL6Th#{lKE&{`8nsLH85`LdR zeHb?Z%)Lg#mZ!GHqWXNQc@rhZ-1WQ8)|f-0d=Vq`gH-QBh%gt~@GLL_UZs6~upyB3 z+Ly7hKcB>L<+<_I`4I@g606=DpUHSJpPU5v@2Alk_A>gFxq*qcjjvi$G91hshz&Ls zjO7V`E*woa>_Qza0sIo(^)5|3mI>v2=DICJ!xVU#k?HoruiVF4JD0hC-vDq`3G$ELW$e|LWe>FNrO-tn2*uMHK>+$nEt*7_MpFir4?}={vH$fG7Si# zl{B^Q^>;|sEC8x-UiipFlXAH+XA0YD=PbHf-(0tfpVCIE;miGzjRWr(^)m)R?#TzigJ zczGTYdxIzgXPzbp@@Tg&EiAssLg=aNA%(k3=wSb!&m=NvVWD$g z`3}5V)2ehsO6Dg`(`%Y{n)y2S%P6Jsnd%#l z;o0QEp~uYO(jWO_ZvVxd{M;H&B#ngr4Q?lP#7X4j$j`N(;IUR=b=3yY%;pT=m~`%Y zoz~MIMeun;!M8*?+!0rF{CR$AC^!bcxM}e!F%`7eTK<~;$7cGKYsRL0VO(e8TgB$3 z3H7s2T_WE`-B>XVP4=jr%DpwTG>;k6)@z>iI*2e891E907)dYVo;sBzhHE2CrqzYC zNiqr0P%z2M;EU{{c-y%7Ie!tTV{*i)Vhe3LV7=2F%w-^SE?tUUd3A=bsnkzn8uq%3EjydR7%jY{M7My- zIIJQ{=QqsXFJq7^~9vXw=%u|t*1o2@qEH>lY=-40uqHv#?<0xei$6Z^&}Hmd!;cZ-@uG5y>c;wErm3lXo6XX6$23 zw-u1pSmXObzAbz+c9m;9qoix%XL9<;0o`ax6LmH&JEr32G-NRUjX{ZYJn6-UV?(i< zZk_O5jg8>RuI9G+VtMVWwqyQ%&nfY7J>U3=&2jKz)L7=?;R#Y>ZN<3u6bn=v?^Lj2 z!(*yPK`?l2N<;>Ikofl#1fc+Kkcq@-uHt887DyP8U_eYGxe_^2j6?D-!B8Q`5T&AJ z?I#!rcR>d^CV@Q&WW?oV5W>`DkaiH6j)N72@krPCzn`~RE-a;vZvAYX9SQb0<3(h_ z0I>=6!4C=3M4^uC5CDDFVsc$0jMItZJ?UIV9+Hp}wsfWSgAsl1{1t)2q<_vuT*31k zO}@kx>HXlM*kCfpsX$scCxY4L-dBOZ{RAVpa?~8=i5%Da-CN&Wk#P2TCT_N=xC{~V z%mSXS2%8^5(c}WYi$I>A_US3tpo{C=twTX~Y?9bWa`TV)bgm==yfmcNgGNL@)BHe_ zk*1z_)>RP1;@Xp-3;)T4rKW5!;I;2@&dzyYcTLID-o!UP3vRX>@apgE7uLBinljv&9-kjd_pxtu3I)APPF#$T#wsV={u>J z(Rm7fU4tLyf9+eQ-Z-gsvtd2(sRqV4&trHnymsKA(O9~s?&4bezo(pLqa(^#b=RNgae>Yn*@z1Z6F1k~ z%s6fg8GoO61RaT(Pa++PKCXS3fM76I{s*lXcvkV!yajIT^G^k-n^#Ak^b|%swsPR$ zi_SlCry3gOEf#O%&u&TwzrdU!x3ainV`rH&#;P9hi(~M)b>_c{+t4WY?U2zBc7Z0s zST{=;BN^RT%%;M%FqO2)#Rv7~`{&|{j*aqn@TBltm|yxt?G4!SyAqE?|12ILe#bdz zpQ9-mVorW>lWycSo;%*H0-lq^=BVU@^>4+^{m#qN1YV7N#`UJy1-}z>PW;044Q>wJ zz;RmVq&1GS2u1NKz`$+Idr2!ogMba6!A;Bo)=9yq4h=duZ`5nbjSg)no<|*|bre>( z2M?f}pQG-iroflAr?rkBd^=(ee)#0T!9R|B$`?0A|K$C^=lx8ZE(UIN4_P$Qs2)?z z7;FLLSHa4>TEgNhMod;6-U_G>m*SiZ$9EyoxTfT<&tC<=O9*9duEHlylCGjaYm6dI zaQ*^6pJ##+9^3%(-v>c_pS7mmS3L3VJ{#;K;dkKs`&=gDnnFE{+7Kieye4X`F`C`f zwIk-(P3Qh<{TH4=iZ-)@(A{Cbj2FrI!o9iSAm&9_&RKrXXAn$ykvacsvW|sHDDd5J zPX*&LtH5sLREocwLcA_!&R~8y{_d804G@^crM{w;il~bhjrA9wnx_lD#Acd`V!`9w zSUei1^_`$eosSfA3oyA?&pNN}9Sx4fJqc&w`toR+3HQEg8g=b;vm;=s__sMQ>435F zOD_*Ic@_GVv$el?11GKBIpqRarZE;xN$ZGF7nM5iqyecxHuzV?>}q_uU{X9s6QG`z z3aE5TBHUzgvwy6|8sf>8xOm+lx%lkx7{k=lu*z@`9Y1pG^O?lE(x{OG$os}4$upT~ zbAa(5ikeZ7rWndM*iU=Nbu}^v@6#_7j|z(wixJ=BM%!p?q~QSLV9bXz(mE*6bXPVmB$P-gn z1IYX~iVLmhDnJKTRCF0fgA2cZ@pFyk{(HD`W?CHleH2Aw&xdhb-FX=gu4&}13bJ4P zGWeO;zBtpLDLy1`k-IC#p~p&*ex+z=h~hHhtTm<>uwk{<8cg@dGXv>IP9;43 zYETajNCp}>?|f8Y^6%f%gmh@)_e{#p@8n=XCAzGGSp4U z2U~L@Mt*pXPi{CrrIRl&J%(lSq~qDiyYj{Yb2BwqLZj6U1{! z1_X0u9F)mB5aW4hF0d+5E8&>%{+WZt1GNB$#2Vdy0u_lp$mcS{BuNS4zaa9U;?y<8 zD^2zbTsB(|V2`+`YuSAFV~QOo#Eeq_^Ir;&*LCDhtVC?zck{~XD0+LyVZ-g5_fV*L zN8ESefAG{*bcGvBjrCCEL_Sf|dQ3?#Un4IvwCKVG^W}SRiU-jC1V$oGyLi$Q3Ou{k)D zO`ys*<$KD@c#AiNkjfoU9}xXtmj5MLC$0o}n3mKX z5|9}%Un_~%>%X&9Dvy3kUFB@_1FJ)fG0`IAn5ZI7yl~5m4C?yd~!++EuQ}p z;_K>IGUZ1shmmFzvG(`N)SZLqm0V03`If;>=_xzcW`t z!4v;CAf&5o;`JFJHrx}J@#}V*H6rods&~YnLr2Ip9x8>Huz2LU$28TsGd}pArb;UM zhqq1j%8_eq(0=x2d?d~ae6T!0;)vq@!pO^W9nB2$LGxYG4f+4#xP|f5IJ$Bp@M!Xg zSFVnK4{`Xc(Z(i$t~V}2yj~0dodsk{Q~+@#B!lYdO(2&6ut3xeIunZHKtc1tYE7d< z_2YX>sK4tlQLV|Y)_a+*S3x=w|JU!OctYxP(0bMc%2$hY=EKBPqS{pA-v|Cg2#cU8 zj1Y)H-l;owkU%W9G`*>0UtLAxOcREff5wo{ig8H-j6J7oi(NcZ2w4bS|L%!Z5*-Q( z2{%0Rv-gK_G}&5k7dev;5cic^!AOnr>mga_bAqbX^1&rJc9FFg?Ihz2X8T#m&tRUr~M_) zp?;fde#JF#Psg76;T*$zesYtIsczV@NjWfE{A})1tYZ;$7{V2Qo~ezmpP_=NsZ-yh zl%*+LbBplQP2_s7_J1}~sY%Dp2FKWq;lX$2rtgLp$GP!a>viKO6xxfYaHcUY!c;Fd zAu3lrMB$;NpV3pP$cW8tHhG*U2X0ogh-)&pB%eV()jJly%9nZw_sKKzjXa&XpZK_@ zsnptmrz2LY!Hu&Up;113ayZ?FAWm7Qn7jCQ-}bd$geIt)R;dYiHEinD92hkx38Uny zp|`+F#bR-&V&wYM`n7z9{7Qe`xxsu3UjJ%nUtHH`8*0f|e>3++x8op`Wh@P@hhZ3` zCDQ#RVkv=QQdK~C$TCs`{3e3**&x6ToJRrccwUqJRb(gQ0C0O^!lGgb(_!!`Zr9ZE zDtJbsedD$Y8prCp?qNt%!{k?CXuR;sG|nvI=$QPIAYxbgNFtID$SqK#rv_XTxaKvTwK3dHvvf{+w`01Bq+r?$JM~@` zl+M*xkul;y9jA_hcSekmM8ljixx{y)!Eoinq2VmD(pfpD8Kco84^4l2*;RBTpHgvg zZUwG!fi`eoald>pH@xBSRQ`t8^kMK%f~#pGEH$u6Ig5En#Xtjs|fy{ za5VNVKT{Y<1#>E}qE0YI{&f@Z>9vmGORfL>e*KJR9`+h@>bu5KXR+}^{z_g>dNOhe zcppADt@F|c;AS*Wl7<}GZH#>4D()FP?sukJS?S8V{i^sQ@{)APO{Kr&QPi3Sur@lb zl0A$@9c26+QxX}Tp9rFU?0~O=(PB`*G^u^xy^6zB08>m~wm*?H-ACGI^Y9V-_?UX$A^H+_y*_r3Fv`y{T3E%U3+=$b-BzQA{fd9~4V z^Owd)#^dvzWLllCN!!R9#mztdt$zILR#C5udnP7m#E=)uA6!MR^%yZ)%>wV~(y=sM zIZSmdND}`AUSh5-94EdO=dQ+KYFgXC>KumI_6-ej^UqsYz;VCwm)^o)n51I= z^R>X4%Omo+!AI4W(tpna+)b0Kj^Z#W<%-t^T)c89HF{Pf(y z+n#f1(RWRsVOnS~^!lth?!poAsX<5ttP<+;E}4~ca?hgn@w?LvY>V_| z@CE8re66Y9Mclsf_+7&)kb|hjE;X+i1~82z_GBeYDn92dGwN<{ECzhtF%$tjbK|K+ zkFkCvv;~d1u?YLXWfIJVa~qTE3X?i-Hd(d4HJLGa0}rW~PsHv0Cej|5e-&F6q$FrT zC@rj4Y)2eSm@d!{VHx>{_4bW{#35-KS;AN`H)g?a<1B)St7WXoLomv#F?JApo!K&5 zLCDjj*7#YNG_NLpc$xZx7bEunB9=Iho(!eErW+)6R(j7W?t-3FoCkh{O&9k4or80e z*tSpyy&K%fJ%nb!__dB&r#U+mr!n_jq=$TZ6)?jnveKAoY5#G z6u;t37nSSpx`DF_K;_H7=aPF@q4Hf{tu0Q*!NpH=2z(DdNVxY^*3isp9Z`NY6&(e6 zV~Eoy6~b#G27ZeZtyD;p6P@n?16|yQ+hJo^#5f+lbLEL+44$gbt|Gq9{_-&9m+ymC zK^%OP^^oMg@TdHk(hzeDQran;xRjU&?;Hpr2M1Pj{~lv)>o<WC9PZLX0tCei*~a zFk7I+scRoH5EkRsmyk;~fU&`G6vCr1!+j-zm04^Kdrc)I+PyDgLh&5ue`o{ak@hh1 zjCibb3}%GsWL+HCO4w!7*wYur;A+yO+XFH~y}n=onMu&nV?%q_pclpK2Euj zaMB*&HIP(JUs}y)EvzV4JP2Mnk#3%m&%`Zf4(U5rEtPm;4Lplq=&On|j-l#*ioMW9 z=>XZ7C1CL-0*JfGzmlxTzQCBS-mDIFxL)B2=9orMu!DHJa4fMI)5Ao@zWxN1jiTD` zKfvARBGT$aO-A=v!ytJRwBi@9V3;Tpa9x0!L>MzZ&rOGGefs`5r|-|!KK)J`-EfZX zutkAWVtvFc7&aU1H9ZmjMv?ElR1vVcl*#m3OpJGTvBPbP)DTLB+&Ol2D$``J1-i%! zlbfq3T6vm^I-FB;i?Fw*GO5@K*t1}LFrb|Gl&Nv@D0o(*ipA(P*`VK^NH%Gd#{4xbiu1yMC?<0O!Io&kwT{*Bms$XBEZ& z`@O+0M}u(~pBMLoLw`+qBS&77X`AAs2&wbxNi;ctXP+8#Nz;)BjA4hIu}EujPH|#Q zT)SxhL-S!3&A$pho(=ZZ0}<=kVFEj!h|}+P$I#_y1~mR%VA&_i)6{!w>7G5@C(bHPT)}~thapEL?=}jlIzQtbyq$b^=NoyL z8phZw|L9E@2U(+xZJtA#aFg58uQa&9Y3v_*h<S8Zy3>5vGIDAZ|$JwW6g`yxe??&E``yPDE*Zpjs+5;wShUSb0x-s(o+-Ty{qh>4esrA8Z(Mtd-#3no)vAqfzUkWfz)rwh$0y{>YS5@I zTAJ*e9v(sjoUeL3bv)`I*5nAnV>3NEjSP~5o~ES;{EM7o_my1=ixz@BCUS}VllZCN zGC`*Tb%|9d1bmQ*V3_P{(x}ca6UT&6&lv{oK_0z+nVBYYb=^qfUh^o@3XBiI^0UUi zWIUs3C>(*5P3CSSu)CTJeJnK9ZHvtZPDE`CNw_xDER+(VkrXcDLlHURT|^Y8EHV*` zjJ^IqW>?c{U^xji;xW!6P2hMAhxxt)zViZmSp~+gf+}%O5?2_YRFpSHLyq+4N#?|P zC~5|#-CR@AZ!@~gDY+)#c>THpllIY-u3TS5k}>U=@b5w33)j3cKwi2ge2Mqs#N;ZD zbw0yiM4Jw`0S}{{OJjhr_F0> zs3qS%@aZB>#Ud%Z{gOZPXySD|FYa~@C67YyEi8?}nc_}7^?B7=5!b{oYbYqKw5F8S zxTuPH^NmHFL#m(nZ(}GUpES;gSaPGqy2CFfA4$(DoUP__(hD{}@GjS0tsTa7Xr{$M zW8vr8PpDBwo&uLcyMV*irz7@*o07i|#d|N;wG6RQYpXpDpd2=Dq3+25E#njkWuVl`}aN-4&Nq zL?}s3ycX9_68Ie!YVXgYc{B!A5u8Mf>m|XPY>3zIpX0SG8Y6cu0~vK;l-`H4utBRI zowpY*vb1oKxKf-+1kMLxb{U>T{wk(Fua_8J1?k!|NlOhh<0{7K`@nbwl#`=0?f8KY z=h%lk{@3C>2 zXs|&?e0!wz4CmE4$b3UHI(l*s1+72Qh|zT8nUE*NO=C-0=ZU(FfiAE7wvq67Q=TfT4HTu;z@=Ip>*BQU2W$`G||A`hy(a# z83E#zr27pXi^x=1lizv*nVLkx+aOe8!qbTQp!3SjGZhl4;9Jvac9>}@jw$ywsWTpj zc%`E85cV;xy)dG}g#2P%IQfr7z6zjvhM(*Fr+%!ds+%@E8=a@8l@Vj)UUR{5hRY=L zy=l+FAn_TEER90Sn~+z@X#RVTr*R{;flKN;L+er=^A>?{W1U=6G=0~+x*BT8@6iA% z9{v7zo%fY@o{Fa8LRd(K)Vxl#_t3Cw zO~h#0`-Pq4o5X{|lLWx50<+da-0@tjEkUzaQ(3WGzs|u1xEuQ#6f#E={*&h?FU2C< zjem20IFr=OOL|8xSyOGEmG#TD6`LXEN%`*LEZ>~@_xHrn!&CUIj+-Z=A>b)|Xud2? zF~0EL;T4F-pf|+Q;5>P%l?PrU-?NCuohTyjNC+Onv+(*pE18loP77*{s_ zVP6+1npiqV#04g{AvWn+Q8KAG?}#booDH(WlGZRd4S5-jYvl;vO9K`7(1OtWpjncU z=Vz8!i5D-7tb9s*f}F2+j@;nXf*46nw1iCw>ou8Kx#9R8&*?P>qZB9UG@6VDV``IA zKMReA(Il|mDW^IgjIq=ZK0aeD`YbJ(^Tc^b22bfbF9MbaURk(f-DzE`5pSbLPGSM& zywK--=FP#x$Z;1aJ-vX#9Gf{@xr&C!r7#&7JQ{e3NK3@x7R% zh8RsPd6hWqy1be_jeU=Jdgw;|%!94K#iMBkY^8m;Nz2?S9~k5K8q5W5E$%gs6qoeR zrC;&)!w;Qqy!njOI7m&~<}~V{V)t1ic~(XK&_Zy|@WagMFnsZ?i`IDN0dZ98SqJGL zUFPPxu5<{{00==TG93g6l3=3Rz_2K_!5ZYJLr9=)Qj~FN0AlTZ_#{;y{)6aj@KQ0d z3Xm6&(pgCi2#m3Q0gN$D$rlZ{i%61=&)FiuxGI^(wRtAGg}Bav4G0@s7s2e3I{E4> zMNEao{x6OEG0hy9P3umk9Pf3L;4Jh_L`R`>?!iPF&Lwqz>tm}p{_f#2A@O>T^R)in z39BidbKnc(nhG0!6#V^B%(x@R1 zhTw~T5*~e{z+L=xJ(fDAMuwZfqX0=dLVS~BU2q*!6*nIi?=nwagetdAv*&eRS5l#| zgM-O);!GEL_A4tlh55y|c)odcH4n9~w3hK5KAT0L_nrJvVFtY6rtq3}CB8^a#MC@W z4G89~;?%r#ozLY(m3No^opF=~|9idlyZ(($$j`r}ro>}k3zNpbHN^fvXTF+{^qAt) z#+I}HQZr@^UECP4zXtYK?4V!u&i<95*R8E^ ztF2zsz9RWz`>1-q_y}%od!OAn=q~UiIFZ(UW_;a>2j-4o}o20HllLyTKNt}fc4u)O2UXTpN3v{CZ zQ1`*+X%K@&@9Ok^15E?u?sfw(7^Xztku*ha%hX#GxUPz)6OAWKV5fBo_|do&=zfs4 z&1o&eUFLYMItPB2iJqp~Bo;Sq#&a%F38w5aaLeGP~lHsd=3teD7`XyL#VrOGR98*Np$g{{hexEfR;#KQ)5j%<=@l|@> zB{UyGKZu%~I?N7*Ef|DoEO;j3;%N9e@idMlh$D}I=iZyo$(YC5uDtF1wHSw7ac=TF z#(4$}oeDE{$i{{kmnZz~G1M-}~#efPd>r>ymBk}c4Cq^TO6HkS6seZaUo}~oV@A^p2^G4r(vRQ_*}&s zz3qsDJwWh4{(Wd_#cFEudC>b+n1;oHqviYg3g6!AFhv@jAVEDd-Mk8a)L*aOnj3toQThjfvElL~ZgVaHFUq zaoTiUf9IxtiS9+r7re_3ImIm5_J8K6(mxv?-bDRUl%ixw0s?#WbbDo z4z<5gSO*ceIV6d$WD1Emu1+VRO8a*#0`ZY(hB@~c`1eEth6ZURAtYH9aR#&4v3Y&| zF9zfw>d!iBeTOkE!t6aU9v1Pi78eQY{3S}m_@-$_m`uk>9%BZa)_#6XVY%-?l*)%S zT}rnd_yAvZN+O(oKTFSGuEau#ToQQJ1$|+S-S<)GGS~jXtuio|;Iff3MDh~B;?=-Q zHuN+|tAX*2rwzg?%mY4GtO{#1u{K-b_sbTpj_Y;HoL^I6p9}Ul-lfmEh#4k_pJg5; zGl|cp;%YQM)9>5iOk0~0r(iQ~!aa*R7K|>4Qt=e_Yku+>4)aYva2T*;DARdc3p)Rk zHl)JBTIpB>4ENq1pQTSrXVyH*XH*WOXy}~6I{y9f@;n_6=E7mz*Y5;Nvqx-k=A$v> z^Q-+J56EAu@e-a}u^In+9eVD<+h2p{`b8gphEL^1~+9?XqdAIlnqkb@6T7Y9SZ=XUO< z8xetb8qXE$q!HG*@b}Mi66bjH_WJZz_S1oj>v1D*zyHWdbozCcj*V+JHIzD65R;_0 z=Ci>Gj6ZQ{4SNl0c)lx9bd`vK@nmXrCo5R#y6AO1i3gztkDxoT^^PV+7bN~Y7hh*S zz!{Ca_V@3v>q@AB6%J@j`42)fwwD=ZvBeK3(1)Uwgq0==%b>fs^L3$D_xre_$;m8Z z`AVi$gdD$Hw5D=4JRvzgYxqM!KXM?D`5Ll|tBICkDnVay_S7;I z*Q+qK2!DBO7-V*U!CjqS{5Rsroa{o<<}q=@RVY&6l?T5j1!H<9gJS*|niUMy*#MA; zHbi7zuC)+SgI7yukdKM;#)SI&ox%O)0~wCh^l$@;hLD&cPh97H6bQ|mfn!g@n)E9e z<4KxQk^lf807*naRM%9?LxE)yjcI7T^>lCr&T0)Wj@X>*wDI&*M*1}hiNyW98m)%t z(mZ&JILS-DYf3+o*6M<@FnaA17`C>4c*xvAufn`#F7RFQHpOk`!GE!NX+>;$9k)rS z|09Qg@S?dSHjiAS1@AU=S?_G#LoN<)eC3$9CN^@w7j81gIv~a4D$2-XK`$MvZj=ds zjVbc=H;=j@Meipc!t;zAPlD&46W4^|Z)jY|<uev`kBx}bygQ19k(WG|5VsaC z7Xc#t&bc5QG4BKBDp#0OgY=1G;_f9H6ue}rQv7w5x;}CV$6D{v2uZ|G&Kh~aJt-GP zQ-?engp08sXUTJ741&-P4pY25x$i>8`Fu4yz+1m!VY9hzt*}U8ffcwZatJWp#^k{H z(vH*|OS*Dh>BKo&yZQ`Wge8M3jT^=zH3gD3h4;is=7TTVs~nzT=^PvMZq|!a#@SFG z@VQGDjIn_!7bD*sjLnsUBZfzFk#X?PWey|vVZX6Bx^CRiyQKK0JhWz;*B*E@50E1V zp9cLI&05BgJc#u&PU$?|Y;f)~P2=#1xRP%k0~I_d?myhLbF(=%53S>`2_MgqdT?Ml z`Q&;;x~;Wt1^KxlKGz;oqrHnZ>|@*z-~dp%wRD(Vs9dxbu0k|%Yl^Mc@c3SAMA=s< z=hC{OHnGu_@cQsU+=3fo)c$q$$B=b3voB2AD<&?W57u*1Je`kmf)A~2%oL6T->hbE z@!%*NOqMcZ*Hj=~!&sfZdiHfq!X4p|7%hBQ=h+!K%(=nv30?)$#zSJ!q#qJ{G&)jJ zC&KeS_&t%5-%ZmxNW)E%?{i2%m-!whf#w(cZM^u#Lpra}xgOWv755ci8Sd3QN=1s! zeVKWza}>RSTpDj8#7k6$A-pEd^&Z9ab#?ACWUIMVXYInsooiz2MYKM5n!iv~3>=25 zo4sCt*Th9bte-`U7LLCEb<=T~(9mc|jXrY2XmBY{ZLSliGH;55Ry;z}k1?(FL`)OE z%&QQ;&-+83yz+1GZ1I+FONl=#e~NoXK_fHYAq|GF^AK?#rsB8}Q*m|!kjFQ$@hCjg z`7NW7iq7NuCW}!P3$F&b`N(*<&eeQBns3e-_EwN1vqz3iZfK|HnJrKr+uFkJnN)ZH?1Ce?Jv@ z(jphSiOXETx=GOdsVNdce3OAY+um(WBTSV;TFKCYonb0B#poln|t__vf_gFlaT5~Hbc7;zt( z;*D+drkb3M=fG`IOM|Zd@;swh*4eI{wDyr3>_^?O4RJU*AUumYNR1rYHRqG zuI631{d6|Mz6X*TZDRlce(AHZsI8-NEfw&6*g5v@N7;o0RYFnZ!7K*veKMN+BD9VYMw`sg@^&i-ZOR$+4y zCH6YH&rJMeo|I6lI~~Mo?F~ski1sxN`r?h9yk+*8aG@|C>j(uFv9ipEr$G{qB{Yuj z{~&0o;B0}o@D%Wu3fWaG97M|f#PuAeX&K8pHyI3?YntB+532|fxsLUQ!p-j+om!ch z&%4sUaWCZ4A33p_n#Xrr_!8He-_wnt;&Ew6GOAYtz>}zv2h7i-(P~bQIZ7jlg8F9z z#bCE zEGFD=O{V+6>e9JnZuxGlfA}lroG@yS((!#Y%XubTf31hSOI#=YOx&S;Ee(Y3e{zvN zfxP6;;XE!3jeOT&EEc@R6nRVM-*}@Jr6!nDQ#`Mt)00~0$m^D2FPE{xITa3zV`F3V z(%ECcwhC3mY+QFv*a}0glzTjev*rr1tnb-BteZ-KuNljJj^iqP4864P<{5^Y#~(Z~ zw=aB$&wTQRad#dSF2mU@ANKu>n-lepRAjGQK+b(K=7Og(37D^NmNOw;*^QX^GycR#;gerasQleFb~FTlLXC2xYiS= z2}-^dJBz!LxIXV@&)AQ#L#%kezYMp9wVs^{SNv>DCiKoT$85A8&4@0j4ntCSt%)7+ z>#1a6gGJil9OCrBEdwW)Az_|hH$Q^;;u?JuX-(vUnXIGf=ln49amr@{OL3&J3-N01 zJOs9WzD%~7j;Sd(_(%m8b2TeRsKHzwTEe(a&`^jjk(%?PPkQbxMhhsdK8+=Cy+NoVMV@A9)q5M zeuRY%b0hwKx^KB8%?CEBAYM7dJzE>;L5}lSe#GzmfuZ4F5*F=y#i_BO=RJWB&Ugn6 zS~rI1UAzwFGIP@Z?pq$`%nXsQLF3ZPh zkkD&}j;@&2`)qE8VJyH?JOH9$LVUf&1&O+*Ozvn_5?CzQtqlK}FpYp=&HNY>iqpIL z%=K>$;1GcDuI|8)&=P?=o=A#x%_EtvRhS&+pamcm#J}QAQ9j~cv5m!gzyrlM#nZ;P zgm!ewMRa42#Ka*2$z=C?EHvS)R>zxI@HvDlV3)x-3l<4mnuexH7-P3gzVLg-BoNm! z1r#^rtIdZep)aC!POfV~Cja`o`6~$TAZv(hD$3&Taq>JUF6JsiNVK zNxp)}ck>J$rhwc%P$aC&yn`F@If;Oq>u3)^+VT;9_AHnv|Lx>6yz&9>pR#cr;FodGf7zuCb|g zu7=fde*WBF21rZKg3d0U*DaRS#65g2^*Z7x3?e$N@&g@K{QKF+w67q>QlTo&rcQUf z0#3(Tr8muWZsG$UE|lVT(q6<9Xx=MN7Y}Rg)|i3yG|B&d-%X2AXUHEejZmDD zwh#lQUC!5aUd+eG&4}^6I%|Kv_9;Al;{VX$&P(c*YKZZDPs9UPpOgJGV8ebCjxkNY zu;a5}T}A)wrVZmVynCwcjH}BN+OP2}(v_+a{6tjWT@Qm34yuxj2Ak%ON%HT{OBBL} zl5y_u5`;2#77mj--#nDc$!Msm}iVeT{FE&>tsKn3U|HKPF%xbUq z#TUjAxz{&K5c`O=bi3ezi+_)EgJTuP=HxU9<~nU?lR+-*uy|tN>)(reL#`)H?DO_> zU4Vg0Qj_3=W1E;dr-WHeX_MKjwbg%9{tfOz9OER_1ypDbt$gGj7+Z3a&jyQ%P5A3N zE!TthrYX@c53`zVTocbSHH?_I@<-Qm{qN+RPtF`3q4H^H*~@38TNcp0;gRH1lJ8x` zKQTm1AKJGX=;keIx^vW%R-DVwVB$rMpsT@=nsceSnFdzo1amTDHU?W4=luHhi6ehv z!~CW1#0H-E@=4KCSDqhvG6rUemwkJzp2Pnhm>oPSe_Y(;dTZ1u_JA6k`qw2Q$9lLB zn&zi(u%5bBaAQEc)EbRgrFV@X6GcGh(b|DC9kt>RkpB*XhgXsYjQIO~i9Z++c?;%V@yo0EW0EJVcusTE{{w4uW%~?PM;C`<6B!gY?4RMGC-uLq<8Qlqwlc8f$Lp(L{ zh~$R2kR-1d29o3yAm$gz~gq3@y##e$patN5$WrZux6L>wb%Yt1xmD#kjGj3KVSeugt2 z(>MP6VVF8cc(~+3t^czwbA!LDNhkAg;E5i9{AAA4p2xM;RQOd~8PimxR(zQ6k9QZg z*o>{M$AaA&LL3W2gU9JD(s>hyA=arlzcj;xAntJ#JOQ7}(6@FKK0|VA z@O-N{3un3}m&7e{_WWELIthPnemYlTQS_sb9nTDUur$y6@(r2b#Ui(V|M6$tp`2MY zMe?5H=X$xh__Ysf%_G;B-mA%E%#U0Snl^Y`b-;*Y?Xlwc@Ra`E;BmyIbYW>^xG6KR z7W}(w0Q1`jzrSxEjt{5CNz$d^4Qw<>SgA`;i(O_$g5}QJDvnen)YsP`6QsdJbT9*$ z(`1oJO@Um5?BojObeUiP&kc+*NxX`S@b5NqBWVQe0VEo1lQFnHYJZcf3scFbTlywN5uYF0zQz z+i$F@a2t)8(EV?cEAq7vgsXI`_~v&cET>2-4zWPSxx0XUVvPn|*zNq+eqAtJq7Wxn zHeD$O^}a_#>(v2H*UMV`%?aFp=*oAFaGgPP#w6re|9BR-x;3Nt@yf{~9>3z83L|5p zux))?`4#x6v>_P~!rjdmYue%kHr*I6a`$l+cj#5fQ@-10?2muWhqwv(z(T3>CNyx@ z6jC@C>r&(9)s$SZr56CtJsY?$y*&I#^KIqPtALc=tVvqsSSmDAPK2C%HS|yKRNU#c zU)V|j0gu%Av$@s&?&8u*BNKMbnIT@*6616ITpF`5AI_$}GKL_+EI$()SJWKD=1)a} zn=C1YNf$j>0AK%$(`rf}Hsop#KkOgOF{4o*{Bm)yy|(rC^6mZoFtKe;;$9J(#)r=% z?Onxw@AK72(#@&CL&0NTF^K*!-H=GbGkcvdP+Y?~H)#=%RSUAAK~6EIijSGwp42}Y zx8t@HV!qD7e$E=ohJ$!1=|ppaaijcctQ~`d%Ar{2gmw6K*x;1axx%K07=+DV#ba%N z6V+aHBCNlXHxB$NNJh8+A$t9&2dLL1iy|EWN5UH2upgHX$}&5iMz~4!VVMg5N>1537m}m zGGgC{jL)W+*T1FpxXTa1?P#`2RiQoNl>D3WZ9arHdk8P5hoK@qTH@ zcqaI+8x3_ve5b|Q0$uM9!fd@*HyLQY!j;=mJc@&z2eEmGCg8epWloo|ink$zrE7Y- znq8^r3p`%BbQU_Pco5&O>1ohGb7S%&Cx%{zITfSfMqrxI4t@^!8#?X0H^*`+2b{C% zvnH;dKGr^!^PCVi-yAV!UU66wn?~X0*oA{+LdRMjMMCmBe$Oh7!7==7nw%xx8-DAh zf64qiPs6YBtce)U{LrJ;PM&k&4*$KH5`DHVEMNQ>`~eGcPFI)CU!K_<>iz2Hbv_pk zDlP-BI)lD7R{LQy2k*ZcjILo)ahP(;XLc6W!H0hMg<9tNM|?bLn$$>?UrNK!;c-pZ+zCr{dZlX#*jA{IH3P={&J5Y z_SczxexberpapSZt79Js>afO?4up4^xhu)|ykVj&oM~@1?%!C&3F47( zE6x`oUkQAi&p0O13>U}l&7#K`9Q)uFkGZ{v# z&R52!*P#M~|4z=h_E!1rVq$#Pw`OD*#xq>JrfEtrMX}L>^QRuT02^lYF!iGVx=a}{ z6^vx(k@z+?qm4E3N#i6nRZ`LUhr)8FyA zo$+R#@w|Hv;eCr+4}+MrDCXDUI~tpem-b;^V8J^0nV2VrzW<*5AkQ)7zt1^-{=mq1 zo-wF+Hosd}<+myp_IRD6-Z%H|V&^DEN7F2=hv(y>L|$ZJ&->x$!+J(s_%4CMMI^mz zYSeg=eR8Pdr@S_Aq$1DxusF}2T0FA~?eCiYG{r0pOvRV^!naPuffq*&9`Si1C$C(p zkaDQ7h8}!Q;D?dhzizA1JJ{17Iq~oHYkk1Rc{3ttp=-N(_TV!3K>M^ckVszK+L$oK z9CEYK>tBT^Szy9-i~|4X zuqB3ZVi|~kkV_y#7HCbp*w5h10$4CxBW@~ymH?$BQ1RgFgKP3AGLHoT618LLpI^r4V)gN7YkpTkU$^|b1Wk30~a=q0$~UM@y4rA z#;eVUW1_VT%wQv__-3v#-$nyNVn-4-zD8bItbGOSB|hAfNU`(P&5mS>jPsO(-+$|? zpszx~pRK=}I}XgJYf`K8Uiik@t-=!VvB4ejIm~@OTKqF`Z|)7}_c{NU@kMT(lSG>o z;eYKftgF`D1|Vnx_uMhUxus%pVU1>i=7_gHw7%6e|3kjUCb7?)x$Sor?yWD!yKA3r zex-tX#5fc+SJ6Et&>>%V&emraCfAJ|7pBEksn~F%a2261ZYPgC3WkB*z+8y}^PtYPo69)=`nUBf3#kA%ZaiS1=Lm(3b$`W0&tErZJfNz01b+K)Qs8M8C54On z?CZ8nx((Ow(0iH>UwR%m=d&K`yo&+(Pru94y`kY(vxIp_&b&AnIP@*DziR*D-lQQ1 ze|f^ba1~hbr4AE_;UvyiS2;@1hg9pd{;7VE__JTPAmldb+aH9q4lV=NB?Ym<{&wO^h%~C zIIlaIea8G@!fmD&S+S@IR}06)&F36MWu12rfE5d^feA!1a(qS{O{5^0*a6c^ej4J` zNC`&7Q=Lj`8_v(ZSP07S47{q4J#$LA)Hr2M2k{wG92)(~Ep}YN9it&b14VPf_mTXF z3%uvwACrKt2BOy1#~Cr5pV^4<&f8rE)m6%9oJsA);T{_>f z|D^-rD(;{u7fzum&}%iPk{@Mgdf$#~FzIcMcq4*mBuGM4aazhI=~Z}q z&%obLvGuK?gy+GT#M_Zu<2>rTr9a&J;LA{8`Rr5UapZ07U;O;?fxU*bKVnE4F!;JY z7dYPgt@rs%ypN%Ee16j1N8ZMK*E1GAsDC``^?Ui&!#@o?2~(@aF=rNT4;;U|YV(=S=&BR0rbjJlG@$}_jv9fv{%feE z&wgTj)WYdT%m1?okXQ%c1k6MfYm+wRiNq|{!5prJ0Dv`;Ed>q<_YrA6pNZ}b$zcB^ zM(+*pja~U**hcK}^CF!BY!_gMk+wNcO@vR}el;bKaLZ(HeI`s7UKPt!kXaN+kXU2= zvxU`0e~5J`M#ecFh0-$4fp}UxNpjeyi7T1yI#*61Y@`|!SZm7J7@tIl>CBbeECPm+ zdUWFl#_`_ntjc5=)5Jcpxe7Ptv&m1U$M25DGhk$3EO3f{<;F4U{3HLR;?Fts-P>he zmys0@zOG%4qC@NY#NLJHwRW9t<4(ny1=RSg{J5s%0|QuJua&&v4!d*GSJT1`s?kiU zbFdi-?;QKb&y!}EbFUi?Hs&K%kDFt)mStW-Q(ud7%}`cKXKu47##)o0ePchvXv>lcelk?)^)Q)g)8s8iI^kjD<)z+7se zXbp`anN)fOHd97E68|{2)u;{mWzHOYg?y%tuGPjei!wtV-yf5x>aVmV#+$>=(F)o~gkA@NR6e5_!=UNZ*G)zM%l>U8f6tvV185%aN z&c+H01aq%U-RIq*2<(E_#`^~c##|_l)>?*-NFLx3tIv6};b_g2Av!;=9AGgza+pP% z&bj}}*aVH@=Q!2Bc&k3Y_&?k%8U;RcRvem&VZZ0|_anB(9P=TXF-%+>y=3JIxNDsM zkDMdN4t(M)|NB1@m%5Kg_|avck;G>bpjRTAU=);*bXV8T8#g#F^Y#5)?PX1cE6KQT zO8pGQL69$Aec3I)&ylFAx%r+G8MG1{l1JgO{bekx{AxD!Z6H5 zK$UOCW#x;D8j^LbBQ%j34+*!2`A!WGPwMJ%%{|Kd{<)2c@k}w7@otkV&KMX7qG;1w zYay@Ld_Jc@IFs7%5R){0Mx$tOgmKREHxIf<^OOepR_DwDg8AR)beRb9dCCXn_UCz5 zu97dDg9q<>Lh2%9G;k_rbuN#a6R815Z1#;W0@^uv6ol;bSNwSL;@sChr3D>R7e*RLq%gUtOMY$O>ydlOw>4jy+f(tv!H=)CGEbq6w>kg- zAOJ~3K~&h(NVxSe%2n(33w5%$-LX|LC@p?~ss;9pkLSe~tO zIPu@n*!)YrCH}gaS3bk!UBJzl!0RG2>o0Is7(V}T8nzyqV1&i5pb z>?Zxc^$e5X!(&8r<*Es3IOYVH(-xuXsw1Qc12R`DOTx9bT&XAm$&L?VxbZRsd4{q(; z`u-utDR6-~bn!mpW*i;n&s^D1A7I5R$~THwRk$Boy) z%gM7T&fc?mGQ~R9!bi^17hm4~!jr=Fxv9ke8}*b)BAJ})N>e24m#N~!Pf6B-s;joE zunt`Y63^9zw?Q6-2gSh&bzRx9pkY7J_*Amv#Dfz-8aAqYmM zML1n8b)jH`RdG#(uSwR5pG0~Uf_Qe^6OFdBBZ*14mhQ zJaXH^T!;Kxo%o;yZMvNY$l>uB<@VK>ScNAz?=KsR^1#`@#~4ek{o$OuxJh~izF{25H#Yg}dFj_eScK~48Tryp zgM`^y;#uT=Kd>|+X(M!@)-eiD<;H4~^XH*Ja2|U~oto|!e>Q&c&QZMZJku0j{%x(r zHG%NyB7f8r7l%6L_Uiik;%{ozA8r(`coY^mSbK2Dz<}~2HWkDAV@>2@*k1j@ChI%b zJo0GQFzt0Sg83D5ocx~sO1n08wb%^mWTNkc$F=om9C66GUI2#tmT{6|cH(1^1jb@4UAY2h`)N>=^U9$g{O;;$XVZK zjoTsi2=$qCqwdH9=H-bW-&zekwHgDV8N%G-@FPy)U(FPr9dV`@jUfqREsr$L>(Vd9 zZ+SU$L(p>Tyc=G17H&*8j1E3u&rMCGG#KNaF8w?B^e^Xa-~Bv)o#VK9R$tWFjM|4o z*MmPtT&+*m;re;;3f3?N8A<<8FO5cDiuZM<(%j)m#a*!>MNUfm;sKsN?|d0Ap?D!s zsc`H=S3;L^_bQfjww~}_oMeGrrWJd9T@CNO$S4m(Xbujz{mc1Yrhvyd z^2UXd&3wrDHK}vc_%LVAALrL=?Q2pWIDTD|7M9G1OH06`#L}94xCjb4^6xvN=^D6} z@mN?;zK-=A4dd2N7uWo}HTq%ty#CaDWA66!$rv)P8*`l2sS!JJCpGw`X9Hv6GHQI~ z{5U%4-iK4%OufwB%YQu@TJ?@vhj}Dw3q9HQii*k={`_qbD?74DZRj*Oas|oBSCEIWABc z9~LG72dinFa`(DjLf&!iv1#V1X_(eGmjrGw&z&43ZfkuBx)5*M+6$!{tH4FyhOAt% z_e=PrPK4p&%R7JY5cr!uB{oH<*KTGeKgc{4cMshvF40hNtMpZZdxFYi@*N;EEOWj*!db}6F^FUG^zatXI;NNu4gV&dUQNa1jihYzW|p-`Tq07*3llSpDG1s|dSJxlEpb}EVvv%b@e7IimjWeS zi(zP1F(iZIY1M_dWza#N49WA!Qk zN6Z`po;5x=#MYl-VPiu}doGka9BKXMcaG;T zUOS4hJ`S`=yU% zA%1IbiL5HoF9JwKst$5pkNdu7U1Li|g~*{;5%@IQBnM4hmPttQW3@?+ct{=MV|q2P5CmZSlcqOU+?FX;w|KoX zJ@>-GCFXvIr#=)4#cJg0Yb_>Ktue*wD)>h;A*OPS1dwK592QL z)R;L;&%bpfejAMqt!LrT<~bEdIIDkuv~H}zlh_xBem?uisn7bZ0>bf21x4T+J~K8e zjtN(5vkkd$m8L?bD&xK}<5(PCtGUYOBag=O?c$goDSZEG^sFXcaVNc4oo8W$Txfi% zvBo?~etfJy@y+oo4$sD4I?IG_-$39##a*LNln<N5?CnyB|I%T;RXgU|=;&j;2aC$H^D=QUQ-^oj%83MRW3U=H8&L!(gjbhXpJ_sbSbRWh z@$kCi60UFZq>UCN}-9 z^rge2As9SKuMy3HpD_wtJ_@6tY0Ia%I1u-bp+>@VtpR6u77o6>mI_N1kahl}aRH5X zkbJnNn;s<4TjM3^*B~yR;TWu;h;uUJeezO{O_HDZ zzuj=)yERXBNk2E76Z2x^5SudAir`m2@1QOy?$2g1bJ7is#4QK@n0qdy8G~LY0?yAb zeA72rQ!c+5{8i$cRq#9R6?|2}kt=WPE$O~EsUrXBiTXY2-aNx6H8o)@s-IZ+y#7FjmuZYmp$pq-vTaQ844qdx z|7X)ndmQ@LTpvG(KQGf%u_yN&e&LGm%28jtB_6T&c*W7T{e)9CgZ*ANT825tb4DY{ zg$uYTotKM#pGV({Q8BQFA3iJLXlOr+AI2}`qxbpnc&o8~+>}^DCgLNX=E}CNWH|payuDWgi~A!#d0K-f&aw!?iCDsr3$Dsq`z?~iOWx!KrFDy(OmKhH?@&ga?UkXmcHZ99Asu^aa1 zrk?TIF{%6<#n5pW5%gNfXTJalg<%nC;|%fj+dvB5i=5I8sT4E|H2N7zu0m8o@q5ve8n?? zJzfOo3dz+B2JXlHe1pWMwD3i|`DTp%UffZB%gxltzry+l$L4LV zZ4{a0`(v`5%y8$Wi%wwdEJ&H()~@8$?9aecymDg=v3>qB02V%N#L;VUj6#sp7aFjJBaQf-f-0-z8JGlNiwFO33VXD22dWg*g z;+$(Zxcq|~;qJ=+r5&jm;~Nt%JRSAO8KbbbfSM!K z@LVsR_1@?w(0D5hzux1Ts&$6m_46PCzKERHb;99|plb3Fg_0!bP9dLPpHrbT7Vi$E z4uyZEp&CM%h@3>{WUx`-`VwHml@q>ykPr_&O_3-P{;bdL5M2YthTA|&MwE$9!Wd=- zv3QE63L)Zfb;G}lTSX3yxe{lYvkN0K>|@QuVoFRT{hBI2im3Gtc6kFyqNe z`d{ZF(M}V$RFtGCSuDKx{A8XjZt3Y$Yg(creB`k-apjsY*tl~M<;PX76If$`*rfVd4gP`XESGbsk@$u^t@pi47ryzt3IzJS(8);UwQkpzqkjc_yP`#Dai z&9j{Trb04Z<6H3p<`xEyB4$nDi7oCg73P&M0b|1u`ubpKz8NQ@-~`|Io|#`)jxZh< zf9lz53Qy3ab$cBZv)Xgw3dSuoe=aNxzYwkjkLjHojcVxCw#KA5_^ZyfG+|E@KkUsD z>9Maz+*8huB1LENStE-9;i368UGJApFfPVIYB;UNZ{>Q@CpL!h^X86<-La;@U!j2% z8|dFJojfcK>taJ|SrcgB{A`G){k$;tIEz*LVBL(%I1ggX#ise}@F&Y7l-GKAfOzFP z)i#@XQ zEj2=<>G4KxnC3Ts5WC5@rUYDI2<9YCwhjZ*0_dRq2r?6hq&`SRYcnw=0@pGIs0J|y zbGyua_DgMYC;XedaWS{3bD{6 z9Ejp9WGN^i4!vd)oEiwRIQWbC{b7_M;Rj3(KDo}8m<>kEUFVNLDbHKne@&}xjx2r_ zNMbdSyvg3@6!K+ti~SjzR&iG4YvD8%Q`fIB3=Y9rr3OagwSm)$8=u4Tmla% zB57dY#=@0_I!y{){H#JQ#W+kC#%`-hGjl?bYnpDa&hAzU!vS@Vq=kolnKE8w%C{);{)S!ON}v9I>c4 zHNOVj`&lQ~T}^{WO<@gkJ;ykY9H@9)>rMC;);u7{AQl;pcVjSyAvW9t<~^N zI5Btl?1O1bjo8Gosrl8p;Qf)e=>v{j^|L$HJP(^yzazZ!FU1>+f(oB~!0=S*hK%u- z{!VX0pOW%T=d_A)oO3MtuGsj!_DjVZspxZ#a|#u%bW^uJ+{kB&!r3Vf2IG3MYDT*^%4M}Px_kQ@P#Zzp;SqsIz7dBGyMXl}qSl7QlSRUj1UVFvl zX+FFVIBl#c_S&K=^keuehsD1k{&uVRT8iEnG5^H1Ag|%<8NEw@wk8AtEKQs|P$UDvyFiHVFd>}`Bn1lp04so+IxjZJb?BS`B`~ks z2o?zwX~i1xd>VFleGZ`2_SO_fh9wn}W1^ZwQD?XCbC}MEA(6x)Uz((J{)$^Hx@>UL zHI)*Hi-fpN6LCn&ioXj5H=mZMaX)p|BmuqalLyX4cjR0^s-TOxq;nsJ){UL-xs1sv z*M68O8}*gPG=1h0o`H)MPqi+CYjRBFirBgH-DiB{_~4LmCghYMCWUij|H!+`h{mRh z#T{Hv-b@7ybMyLD9_!VwXO5p=#*&3OfpE#S3JjqKdIegZ&y=;CXWUd`$;ic z9BK{@zaB%3oC5_JbDoLKVr+`RAg;!6I)kI3u(+E#nz+keL>$o7BW<&}F{2V$$cCnk<*s3Wd({w)QQ@-#zpj4fo_p$S>i{`%Hr0_~gLD zpRKhde+n{+&l2V@tjBsU6_9M^9KLwu2jg68rDvsnliTf?So;W9g`MVD)mbUeVy;-1 zc%E(oS$~hFx$`qMo>@D09u(G7cOrH9S29th3Zy;&g2$pMVEbBuA7242(tZk$3zt_B zWAmaz@j6CV6vSQYN>kR)+DW>}Xx6jRdQ8~q?^sK`CY=BuOzc^Rq(X?|9ZaTUH%z{h zEEw3c$VgK|#t+XPaSsCcIk#H-%jA$ukAiD-JrkiY-aIcA3GSYr*WN8+weL_A52Dan zr5L&UPeSWlJdE(bJLAAO3-6;~KM3~1!{Ua}l&PX9<>x8@h#z-!gMl3w3e(8c;J7;J z1B>9(bw&@K=)6lp_-aJ3$O)6|&vTO@(`RWWN2B%VQYUP#DHodyA$NRx$G;LXnq@L) z#OsKi8=xqfDi-zmWsV%D!2g%I?)BjO`JU36wC;%S)L1ZnY@`xbU8X7Vt@v*hFM$`B z$Bi`>eHN5pdQbhmjHL~%bZ(q0V`fi*wRxJy92jSo3Jcvh9QX4>wTyUWTzT#nPm;g5 zCvo%351jtZxX0fsr~0{A>u5}{0TaG|4KBv{1pmk8tefXKFD3v0AOJ~3K~%A6O?~D~ zp1$^E17mXiE`FJKnb%d!;&4fnvBSvE9^^4Pt18MDL8O2)6LmQ3?}#As|O5lHVCkCdSi+iQ;aowy+2vLtGDI)utvjfgEe*)nAI1qtP@BgYf66mC3BO zm~L*YGyR2abvaFbCmz@w`o4qQwVDTvqozhtT)vw$UwQ9qLaIiEjTzVFKYvIbW`7C6 zQ6Mc5a#3oY08cNYW-NrFe|3-jnP6mM@y_o(a)UWNa)tXSKE0;vEViXng|YKy3(eE3 z;IlCW7g%eeaUh?DX>R1p!(2A*Qj8ykc*lbNf;xK{JjS0fA_rGI*o+K5W#~A*^Z8>c zvV*yeIv_6m(Bqv;Jgy^5nNo*{?HTjo?s)+qLi1KrfG zwE%QLi@$|JXf#IxFR$}+UZ#e;@D%xuXT=RA10Q_N$d};5m=}Ef`S0>ee178&pNY*2 z<00`lagzLSibZNj1l{7$FX~d_D8Enn8~s1EJm6t?yrh9HB87jS7xABljH^NYsxz+m zCvT?Mxbb4ns*f+vaNH^x#rngeTN{R#O?>-f&~*(!FK-<`|Eg0Cj=lyDpZp2~G{?sr zo;3M`6>EMP0uTqQC``qZ#U~LM#ZJPB|HGK%>h7F&HEe zio|r?vyC4_sa}*JbZ+{H;guPY-##YaQJgk$5=GU z*jA3$x%I7qv_E@-5a*Et;D$K;N+0I>QuD-xNYKD*5k@U{vXPn*rT zse$y;pimGsKOdU^`8k_sZh~23cwQk7*KjHEMesO->ro zbTU#160s#B^SRs9m^4f@0dGA~GiGoO{aTYENj?y6eedcplMIIe3e%BFwr*Vf9}GFq zf2<9r+?~BKHMruLFdOpB1@$S)_-?|>Cl)Wll_86tPt*J`1>)JSNouVl;Ihf_GLY%o z+hvZ@^F_GhY>#)Y!aJF-&?LIzmoVg|E?8y8!&v~6T&MzJK z%QQXUq4UtwaB9J!S*e)uq~fzT-3VN{uYLA2TzH$)4^zkH^|~SSFt>@n3gfj8#%o|A z8Tad&vcNWY=ViXHa|nh$Hud~DX!_7GtZy`Nk#8eb+>d!i9O?$5n@7uoQOk~k;Fp)Y zhF(iwJ(vjIj5uh1S3y2JlVf8|q>uk{3o+Mz!;OdUb5}#w+E&jjPL@Y|4g|G!d$8uM zu(nl56>o-kL=Jj1Ay&iDc-2j{pObXvfrmEo%*|)Y#h1T$`M9(AF73nK#_c0iO#|n1SZC*mv0ZBkK4Ua6po0TP^n~_i*Lev4pWHIV6j)hTrw&t?48bTi zQ55^C;)r8Nw#IrYuoS>`wbTJ-2mM!^9;7{DZlZz+_$uyauOw;WF^~v9+a^tUk*2J1 zGDoah*j*6Ro_yZis|}BGljr(6!y#09FR|*pxf&qMq461#J4N4u9?t#h^p1CtBa#ut z``7odhEs63{=*2KoP=}xaLHj-E8fv~vk-N0LH|M9uz zE1ywp(9+D4pB^SLb^cc|sRqkx(Bb@(nS3@UL;Oec+J@`F8`d;8s9fN8vGXd%jaA`( z8G7SVv9aDn%{Jc!pHX}LG;_#{)=r*u zFT<;NkY8MEJNC?};X$oWjyDUf>nz|osGX~kXCLI|W-5}c!RGsbf#z0w&hHOi4b|c| zK4biwytSL4>-J&gREQ&Mi^e>)3pzK7d}zxw|x4{`hJxk7gfzxo{XYhj_sm5A7sYjEP^( zufQeoEED%J{>g9X=b!vx(z$?)q~U@O9qV+Z&PDkul#~psgZIl+TYLuUz6Gj*nT$IQ ztsh}>&}T+*5~i%nKm{UQMSFqJCOnxd7Fu3^GRXYQuNb7Y3e4l`2;)uzB5@k#MFezp zrdP2^5-<^7!byRE;fTaq$#uNPIWw-nfkgiOk)66x1ilCsn2ttE*Y#Eo<1C&{7~@B= zR4T2j*6T_y&(pbL6U{x6Ly)UWER1R9ihgzp)Mdy%WSGbr=Xu=Gh=Wq|XcPkB z8ePSbg<3uKulsx!M~DlJcxr|-&V9zz1wQLx(u#*{Y{^?AUw9LZ21%OHIg`#aoE48} z9X_Md`&U;Dm~;*E1URh|kE?D&7A|rv>!8b{CP&Mr@(8l8KCHyXz116XZeFpga^IU>qi8wwcu47_CQ=1BXCR4>% zBDTcjg?kyL+On_J{5q5Rd1I%}MuZ!U3<*&;+ip9CPt} z#B$`UKO?es5jF~zR2XYgGYVV_%^yuOImZPC8+_wNQW7U}p>MGiCb|D4#20>?Crw}~ z`o%GfPb$dFgB6Q`Z}G@5IKRZ**b0;L$gjrQgUe!}`2GAa7cj28)rC-g48l2CD#Jk@ z@}$%To1Ds@(L@6`G*h2E3O4}~<_9)?1E;u2yf|=Q@$#=*@Vnr+sO8eaHIWOq{MMv8 z{0fI}7_AAbIh65ak>|Z|f=vGQIu$o#YMh5OI~Iq=1Tja0nhLKMhgYug`8xahQEbFN z@DaV^%fL>l{89RRLby#2j9YP5Yt4vvdx4%_)W{w?h%KxJ9`>8o;SZAWnVO z2M;~%_oN&q=>`0a0?h+J@L*Naz;Kj3TBFj`CR_qe6}6Zb!E1|$t|Q{S4z0WQyDc++cty0x=%*?eW4bP>(> z9JxSTT>O_fyqgG#fL7Nckmn!*5=9b1T}e9+M$Z|aGeJp^ojmpTRr~}HM$>UjW>fKd zb%#fH$x{L(|4I`5%-8$IErX+DR|-RLqZwMxlnWORGN--gg`sb5 z*LPxZ&HT516H~#*+q+#iX45UM8<&hG^kN5ohOS^>+?xF z!?d0}Gq}>6Vjq;^fEX0N`u0`io7BWedi~c1Q_>c$?eX(?JCU(8w!hC!*W}Y}w8{x` zDY13sR?-$~KpOIloJ|cr@*?%V_QV``PH4k4I(1FjtgvGYB3qLn9aR6EAU~$opMWtD zQ-b=6UOMPs#!X3{I)bS<9p>LeadgyOtc~QQQFq)}6on)j22f|y?+gi9pd3jaij803 zUEMD4CB=v5nYyP(A(!I*O1fx>Tol)N&N5U*)CqZ915y*2CX5UzLd`Y~i ziSuZtjhMI~JdDS>W~tn%wYHfEhAd4ZQv+jQ0X*%`uAFltP&qcl%o9{L$b|WL<=F-~ zOo*b^Px%6#r)eTCjI2gaVJfW2YafMJIFnRlugT7#rR1`!aWnGe7jHAJ z7ryBku12cjlM1!h74FZOhI~3Xi5wt~z0BD)<^E^_bI|6E{12RvUsG{y?il%g-KMd& z;`|cs-6ZI|Ej>xi51jdG8a!^Z#DRyoJUpA2b*!%|T!)d+MmH58GTUaT`JoCp6Bf5nH*npaa^J|#}H%`wio zLr(@~sAVwBf2ko+s|B1^&!zVRVH56he_Kg zB)^+l(~%;cAd;W&Gnoz%bb$JM?iPaNNc1Gj)ImG<;ZBtcvoxLbzep$;0!Lh;-akG=7%y=s-0=Q9O-JB_zAbv4ElY@z2R@^VwnVt8t~n zuxR+EgcG;oNkXVUyMZ)fTBInFb&lEauXCw**!1!FHaFmsAxKwYaA8X1nfB|eYMlJI zgM139@UzTz!eb!)%aHaN(u@N;g?WncHF=FwDW4Jk-cx|k^f;TWDjF7dn0GCPCZIH# z(Hh4zkVZwiH26E|g3QsF>?60y+rH8qIbWvi(?mP)oN{VRB#$C3PNjvDYidfKSUHy_ zbl)@Tvvp(Snx+M8bwe>UzsPrubMq~AB2B_=n!juJly}77(2;m%L7T4giufbur1Sjz zb9(6Y^4zaK%X>vLubU<7yp`)oXF8pw)z_50@~3s2JRXYT&X?flxSoL}n{whAw~AOa zKJ$_WS+^_5xh}X)PiRaWoap?B&nLf!92;?FF{Fmb@IhB&R9fusR1Q}IFBX0wKN}PN znYCXYcwx*kZy^Df-^Np*%(=cSRRzs=t z;qV`$jKufr`DLnrpRiM zG!4HS7@-5Z3W;DYlF$q>b?gO@D{)t|CYYgB7zMNcni3F4HVCzcSZvB{_h%)heTJ!E zhB;Uhfz*jsGA~?_e3B4Ra7?}wT2EGhw>AAtad;F-i!2`|EdDA*Fv-8JPbK2Naxd|Z zMU1(%L@x+v#D)xII*x9L97WSu$1mJ7Z*kWBUYbhr*P4>)3>=SSM!NZAj5??5-6|%2 zihpV_aGx$DT*QjoN23vWI zrJKYQ|7}d}<(=$97DlWG$br=W!nut+5YLRpp3mmNhgaj+Ikg&u7w1_AxqcU~#3XRK z&NLMF!w-JHyYxl8y?h=ISDZNXKkbQmrGjs8jQO6Qefb#=$>c2uwhunA_glR4-TxZS zP$v>rweB%oaLfb$M4zIwsK1V!)j9wBE8l$wE- z=^xTfj^N#|x}|+MI42HQX1L6A$w`M83{f`!}7Q=0L86PU?8T)Rp}zn=*b9)^y2pmXwi;(0TVHDRdl z|C&%F1N%ACWcqD%G?j?OWH4?+NW?|lH?d}nB;sr=9_FoZ!Pq43V-a_mh%x22kfmE1 zAnOsQWWa)H?E;rLVZJ6YWpN=)e_~;7VeXLw@$WXu7Q2yq-|wYH-74Umz?F02s;e7+ zH8N6>9-BfZ+h<6A3x%-v5luAogPh)6AZ$b(2s(DX z`@C6Kn4#WF`(MUB<>jlWT7{pQ8LOZSxLlY_SP0iQuV&7QtvOVB#?%?P#vib;CY?{y z!sj);^&4Jb5y5J^nm= zC-LY!35~VLAM}pqG*7pUqaOu7b!%v?^NhR&e5c!=qe-R$HWk#=y52u=Kz(!llbRB* z#-F}Fh6UjU)0I21FvR&XmY?MxHAU^Wwz#}6y@qe*Ft&X6t3iRajGG#v(Xa-9*u#?p z?K>ZT_kPz<$~TtM@HO~s$1}xuc%zXB4&Xs{ZE8eXKKzwfGBXwklTj+9#yehOtWH{i z@$>tlHX{ab*ms;92f=eB?~ zO!B%8E1%T3qrl^O#_!Q5!eab`@f}2DVr5J!w^b`iaG$@INuwRk>S`=e$P)Y3BrIVV z*1e_|%sq*!Pu&prO)9~-vDO%uQG>|KWvVQcB@#|S>n`-s(C9dd&rXAB@m+X$@r(GP zN%pAUu4Q4s2W!$AUuN0)dGLsZiW}tvt3&=T6R7vpS$91Ld|K}ihcwQnoYUEMp0aiw z&jW*(*f$2^nNg^dm%pDKlR4)JYHVm2=Lc^ryo9p(4(nf&F6J`1?uuvn_r$}8*(ZK9 zCxS0VgE$R*h+ARp>){C+1U} zMQl=r2JC7yvu^)@i6bYFuJwC{>0Btk1_GCJt1B(myOTXSb@71*3x{3 zKc{AO<7?1#OLx23an*gmsn{eGA1p0s&S8#OYgYXz&g2jOYGQ!(&p&lstM*>aIGyj{ z8pnrv+}|_qsfm^v{A(yiyslV1uxT`sBf$S*a|1ZT)woq0i8xriMG8*%SJNORugs4@ zV03*gD=%m$bPmHf9aH)B`{M*dH$X0s7BG@9(!~0l z#$ET8Ddd!O;gAr%)jg4?{cSRBaKip`HfKrA0z|W zX2`KfBGG56Jbq3$)AN6buvEXEHZGh=rmfcfXaVFG-v&fg~(Dya2YfMpc*UIUW#6v-7o7o*mm zgj$-!k1k;{c?7`(z>0S)T*nDy(0L%@ysihDC`cCRXZ7<{Y{8%qEJxz=Tm%3GD1812 z7)ekN^f3iw)2BX?VmtCMbc2(DtU_+k3sW~5q|ww-1H|XIfHO2^E`#eXG51|@rb%mD zQ3ukodvIU1j2A}$lNYAuO&PpN)!fN}k}DMRd9 z!cijlRaenOVhzNFey7DP&W)m`a$%SWVqOyK-?K=!U7Ux`k;QE|Yiov%ne(6ARe8Z$ zWRB{r1`b_9l=+u%m<>N0?|>ysMB@2LU@{lFCPUMYbv(`#@%s0frNwxr&O_D}&*q5v z=lMtTA>}2pu-3LPJ>)jim-Ubg&d{;p{M{gFJpP{DGHgL#j5Y9Ve7hsWy5BD>8V$~X zZ>zSAiKvB-p{hFdzAnAw^Hv_&r1|X4nSEx6!Jp2by7MxT%DXt+fd*l%T>9Drs--ty zx|+U1`Ote#wU+QgShhTk2Bj&VPpuk;tgE3#%yWYx<HTlI$Sxt2=B92 z8w&z0h30piNu;)j>aa7IzoUpnfRD01`4$wcu;lR6t1P1{h&7s(! zpl~?^E@AEJEH@_M{8qe?W5)0$Bomo2Z%H1Z=9a+Hx+tW%zu1We&aLJE>jq}f&Aeew zD1g|I3b}6{OmQQ5#@hmVNHUs>hwzIp?FT!3g%NS-$A@(>21y+L#o*TaS1h#dWezTE;=kk1 zQDY^6%y_06apPDxX3a9N#ys|Ymz!xLx5!Jx9$jg5lhD7S*T%DQ+zoWzN=h-%gm;-@ z))Mj0n$Y=3Omi;F*bQ#LK3)y@`VMt$)X~C8>*os_yMELdhz%rjUfM5lJ^V__sJV;x zft%e7)GdL3A4ynlY#q%aYu-BZ)VN4`_h`sIeFyUe`x@FnIaWMjoiH%O`NKT4t_WJ+ zI&s`|r9a^rNo#*{hkgZXSZnpIMb+^H)Vmd`uG zem?I_V(ydNEJ%JCpnG=qnAn<_b#gr>fdvXIvhls}I|KD|ck`ABb|Hu2JFiTU&_a@$ z#G8~Y+$&Kpad8-{>mWy>q=X=F%Fr$Gay1q{7rh4n03ZNKL_t&nNLZY?=+^c1@b1R& z$Mc7%J;0@b{Sp);!^%$+2(M1QV#XNrYGn9tN`; z>orZCf_O}#iut_w!Ff&cHrE)lyw7jIZn>waPP3d6%#=2)xg}L;kZqog)h$ z_C(eMo z79MDQDd)$~1DH`}%dk^9!)Elw_s`~i)kt{3I5Vti85Nwfjq~^{^-QSMG@Tq6EZ!ga z{?d(MsyFbT7%i=I#xC&%a<1zbaqTl^t|0zy$|sIqXF|>m!y;nsYHDB|W%eT8nAfGt zYEAzhHyQwHHn^#5oiVV{nq69WHNf$6$2n=LHEGAW*FMG>nlFTZ3*XYO9DN_y@iJc~ z&H6)=y5{S=hc7ZVi8rc|H=2g5=}`Nl;amCfga3)`{PVy|b6V0pCedLk!)DhDOmGCh zaE*5qkwkv%0;X;R6YNSRb?R6kE=(rp>h@Zk6J%7Rac?B)0PX~f)$tR!F+QJnCGpEc zPG=Fs#Z%xOzYn_rI0;IxU!=okiVL|xz{PVtLwjwqpge`~I(%j%1Cw;XnK88p&#s&t-R3&0%cR*{;cT1uJoRu*e%IoO zbT9EC+6RuY#ykoBft?J;`2F|q_deo37{*s4V{u~;BCL(YD>i7U@slP>%nRf1^~}Tt zNArmJ{+Is-$mfihkC*ZGbo)9pi(VQS?R_=SynlDbnY?dnJL2xE< zI^OA83mnRvN+zby(xTp6g1EBgMpLQIn3x_!w8u8Ad7tWD0kUMcAOk4wQ zEHf&-GekafO@h0AM01pQWKGx79=twHUs;bH!hC)f4AnIyPuiBcz}U#<95qva$Ms~r zPgC{c80Q}W`%$w4tB5CvX+KI0@|T_-%?RCE9D3*b@S&|z4(s2dsXH353tNpP;7_k@ zoUQ$o&g!YpbRKS?j2y*TMqU-(x``Kk3vrjVm~>>qq@-h*Bh(2PFgP^k&j76p6vDHvsh+PvxN{sk z%>;{7P?{ioVj&V3CLoxzir?tA`sxP)lREzqSR``#oIvse$ZekLJl)0QS%!0AJ}eRK z4y4Y0m`hJ*(z*d6EI{T_5-0zDKCaKb_#lA&HnnHz+I*D`qnS#RrtaBSp2A?SnfkmaJNN&)j4nIlA=6g-Iu$F~$hf!am zR>pPIq4C8r`!OZ6Sxys+)I}bqLVIistF?tG=_hxC0FBeQ%C~f5>vctyf+gf8`61Q2 zjg|>|m_id~aU{(8;){SGuFW-hlnFK_r`#Cz{}S=4`y>cseq*mZ*NW-5b)#HfVvrn( z{HZ2qotdYkY!VIrU~Yyp>0FhL8S5$>Mv|OA59?3jxMLG)ryIIF57dBlMl{dXVQRvR zroqbye$QZNwxDC$&?fQ!eMb6Bs=IL}wQq8F(i7pF``MxC#`s(KdYzFIDlWeoXIDey z`1fH5D{l2!$H31B+R^(QxSJZm4;_=Z;cScrotADyyaqU_kvlMnxf$wr@F)`v`B?EF zX0X0iyk2=IU$p9;=NRhV9&3C*XmK~#2M#D_SX0dJ-uGn|nS;b*VWG|E`unRs>$${d z>EL*i1eiGTD4g%$@{|i|{*1gxjUlhu%>wZN&3hbPJ0C(5X$@3}gF}!}^x0qq0X#sM ze^IiZ9R!LWCWe9Q_GvqcL-0TL zvi!{RZPn0IyVwdq+HND3D3(|DXz;D;aSYvh3l>(JeRm! zYgxAxIH8t_8DiU{caY#}?i@xgif07u$s@j9QF+Yo8~?(sFk@kwz!>+;b*m}!T}xdZ z{!3Go&1&Y%D<`=2)yyV#)Orx3Hi#5%$)NbQTELFQsldCHx0;%by|VG-ALt5kiut$+ zcwjCcJFqO|_QIEkP8rV)%`2O+%Auhd4(#d}9(6r%1$B`c$<`=C!x;m8j{Li{&3Vg^ zaee85#MyfPz%rY&FhE&4(t5P&fq8!!3u$KaV8oGd(~mc2o=uqJ=3D2Dnm~zHN4$su z!pd=5!FBijd&C;$c``~-vnM@*JZWR?ny-97o?cDeXy$>5h4XI4tzjZ_glnWvW8ETt z1JkJ=j?Z61k$U7Z#m;$R`E~2;flU#M(=EO{H!<&&wavlX1WnkRfqafv_;Hge?Gg0PRRXoAo3P48jB! z3uX#y5y3cw08}G)Bv2P#$s{LZ@-jFppSwEhD3~``5_La8JbIcJo5WLM~vrimkp1Ia|E&2~w)%#-{e{k8TbKk%K zuS8Mo+B)#bb!}0a8c*pA-6;F4J#bOyp!roXv@sv+a!rU^>)q4?#I?~}32`+yEW?m+ zEBxDtiDJ=b>o|cI$cdfyfoF;HL!*S6Z9PP+`2LyuWF5t3lQHl8;f`e!f^Gk3;6(4 z7SIs6L5$WC7YHY#caSSVgY}VqAMbq6A52R$4u3gpfXfhcSMxyNye0_*6URwcD;=Bo zJ4;G(7r-E(Ls$dWqc`h;_%-3aH zouBFYA`?_sr!6QOd;y**f8$<`PWcjHL40{aV1iCL6xXUe9k?N|OG319gfR1=!AR9<<XMoyzoXcyAGp}U!~06yST!^nD_(~LLo)v~ z@PBIPm~(_<^;iEY$-*=@+Kg@D26K;Vc>EmC8rUJsaGqAKj(-o0plkRMHAN8Dzwn$j zGp?ShQIKwc41*YIKEbZ%n~9gd>s;7#+yrUeQH9~AwBHvr$G~=LMH{XV`^bI4NZSi^9tM17*`K#_bZvf3 z_nk*xJ2jv2flU~jb53PL{w`CTzHjXOzJJ{00FM$o3qShbaQ4LV<|M^oe2=w|FtOHU z-@<1aYs1ufHE$B91?=y5P(L2$Xy4R0%lMOH4^7k>(Y2x+890iB_4mg*rJWv~4Hvx!}dQSWu6BS*b&jF+)q14Id_hW7_zNrgElYf!6Csry7 zzBd{g6Poi}#&kT7@eO3r#cQD-o@v2)PMw1R`otNa$G>;Js;&|k)_IN2_Cv&*blf0n z!|vGB8HKA#1JJ_+qvNmGTNJNmRWQ-@h`3HSn2@XE*&%;cqX}zW4TgibQWIvGND1aR z*>YYu4#Z98bIPknQ{ms&ecd&g=&=vg2F>XBb1*{V**qT$XW|;M7J10rU$~|`jArs- zFa{3jokO7G88+?LuP3}Xc-24>(m|XVCkKWEvC6a=+?UK-!sqV;;;%l)pd<|U*?sab z_O&B+>RxJfHUOC`NpLu8D0gZw7-|HaH1#L!+RL{2wBR{OY1LLSi$zvA> zC(Ir3)7rWJdj7hpA_JPR{`z&MSA*QO=5!l8r*pAB_u2HmE?jYALZ3^9EaAI(%=);w z5;^L89!8P8LC;bcCLgm*JU>T16n2IZwTV?yG}wedUES9U)VRnc(0qV0 zI_rv!4@60BvFv1v#STDt0*Q(HAoXXHgMt^}Y{0Apj|7FH8U=ruM#tzS;4JQajZsaL zLCn6+TxZLo3P7}`6KWMc+JKH@j> z!@?^NLN3$G&)B$Q5m_5oF0G(;$MLH-RA%}8Ock?rFyP)FOdF)Ey&Zg_6sjl z?ggA^BjLta`u)z3PxYE^V$zrhN0LZ05sv3oJ;AgtEXNr+Pe$|S!Z!IZX`H@BW_LVcrC8@Q;0F7TH0( zGDd?xj8*zB^Ks;q@sBk{+_H`gnBUJeHXZf%?_hJ5>8a1F7EW^EwyJht_Z6s5C?&o*G*trs%5t(o)!8ZSQq+Y^-T5=KHWu zzfjNRe+#H{*r zoc39uhI4hNIMrNZYBI3l7R4gDFfm_Z`MVKg#@MTC-lVSDPwS{${Y$fS-9Sk=g1YT` zzl_CI;|Z5#Fxyo646ie-ck#@WOPxF68u4mIGWJ+6h0(wu^P3t*eN-=#6yCF@fT{kh zTZHSY8Da4%qh|h%joNTt2~S3&p*St*1g7#bfc3qq8Rn0FX1uOgr1RuUf%}!$uGyr$ z#=29zhQ{G#WO+`FLD*|y*QFCY3^)z*4;)!f3%w8$Iq!*H82qvbYk(3TOcV%s*a-1_%0yTUAiURcz@OOp(980#BsCUBnMm^ z6!iS!rN7)V26+9v6`lD?w(EKf6yRaZOsI&@rgFa0pmP#7+>BBA<0kc?r;Q zI>LiY4GjN0bPyS@20AANg~zMWA(H2Le)gi|O`!fOkw+7O&m&+e&P?2OU5#SLB1fRx zdl*5}{|C9x`1pHl0{ns82@nLHWE9UUa!E|c!rjytcYAoic@F3N;uQ*<0!1YAYV)4s-C4qkTo+g)Wday~d zOgCb93R>2uV!p^R;LkPLJIzb&O?f@)g!P>aiVc@B25}wrkiM6=18ZcCHg59g36m=i zu?~0g2li=#(Y+{ePX3eKM2nKn04DE%F;EfYDD2Aq`j>4Cpxsx>bq5C2p zr~D~hwCjocC9iaBa5w%8G|buHGvlU$6?;qRk{@!dqgRg-n|ilsEpobUN7 zPP@ivR{dv9+Se3=Ijme7XIeiC@h2vHY9n2>Cnu?^zG8E9-K)ljX-_!*y2e@iwXpEN zBR|i4w)u3^z-RmYdlKkR(RQ3~YQja)_V|?$@{^kvpLjdI7K6$M=R!SyOpcIeZjg_6 z5^MbD?=yx*5~hs3ksobF!XRTc>D8zhT*?GS4X1{I>u+gDVF1nGud`i^!f>U32=#z} z7mqD{bW9=Fgb@4rr2z{ws}VbJfmok#-SvFjL|DU-Z_YGMi+?X|7cpPFk~Cjo*jNX@ z2RvTpgq-7bD+jL|2NBalvuR;$8sLdL*3AH}3D`G=A|XH4kifc4---Gj?@q&;)MV+e zBrQ$MdJKNn5ED4{?~l}FDc{#kHtCSzb?`IRb-(9mpj8gm=hC3A^E9kKYFOpt*oU!~ zxsdSA{*?N48Alw9P0b0wm$)N%b73sX@1L)Ae1iHAXd|#RAuOhc`H99f36CT!DU7hj zOW^z>3t>+Gf2FTvlu#etMuGX6$VjkGU<-avcpYB@mcVv(W|f>(unRn#6DpcfklaTC znuobf1sfYi*VWksq`vLIVsoK}b2ONI{vJ%o_?({8VoUL`iC)jHSh_yz@1X`(Nc` zE{p9Xo@~wsQKmf|*t;e%zBQ$MNz=V00{E^J?}LvlR!6PVh*9Vt+`$|gb!3e5?FsyR znFH}0&ufV|oI#7ARJUQGyG%vll8u}U%`(-D4X}pkG4^2m;CHwN)`^}w%>L`92G%|> zqv|^0^3m*Bd=5MuwUoYZjsORImSU}e;GOYS{W%xU8!n8AO<&SjI{#X4#Qb3BSzo=z z#7X2Yoy#!FA(ksfO1{;|bv~u$g|NW+Jet933Pi4PozP5kzo=j1ZyHGaY={Ki(kA%I zf1bH-U=m*r?NT{XO$Rr@e9NZwY0$0zp5+^Ve15{2j#F{qk6Vh1Z-n>5mn2^0nFalP z)_1`A*c76E4Olpu1i;s!`yE^BqvK}f$mQ$2l`jK(lz-{gV4opl$NEe4879+f02iLO zI6Dk#VyzcveE;{-OXgwn`)Ha-zqt9;ocV7L6sTPgAdvwATqqOgC}c0NfjtN)7FIN* zAVrG4`d&1Hn%bt0YX!rJp054GDXb39F*IOQlDK2N8U=~S*!lJ$D{03%Ouk{tK9VAd z2#KjAdfYAlfV7Q8iIVVpKm(A&wf?_MO<7sHCH3YmzquvVV&~G2Z}h3$yzcE;rw0= zj%6$?y7cZLvfZ>$*MHy%aHsJ^c)x^nFsg1O)w4W7;yNpwQA7NgiZwQ+Ym4Rto*TJ3 ziDByy)%3udM;>&8UFpZxjDrjaTiL@$d5r*x_ce&w8A(wUFvF?lsk+ zrp#U20T11%ug@+GYpwL%Yr09aFhjb6`PW!QJWub!`_5WR*jr~3{&zJ8)Z|Oe^r6Z5 z%))loH*+TJZ{W1~<jMd2#?Qe?H>JvvL;?`8Jvd-yjWQJU%-F!XYGmHVHst9(fuNKLYu0~CqzSjFBj=lDX-B)efyfF7D z@VWL>Bj2?}V@V81^+p_bo>9!HY2A;7hT=Bk^is`&bxSf}bQ=VltaKhh=%*nHwczKx zIA927u6fTqt+VL7@fjUlJh(DE>*PC%=%YS|-sSs~VWAEV_?OJ%TD#32>craF7_w?! zTHwNcPyen7d7bfSrZ8F4`5+G0urHa#_-}3`S(!UeWj?NfA^0k3dK`gL?m{Q{R;)9?t2#lnr0cKFXe_rHrb?`+9BiJM(fnGF7D&o{R zGtec0v5cRL&K2_r=m%*e@inG3ey0iW4_7Z2F$+)!X?~N7jg>RTESPXE>DGoxoK1ry zAO;9pbZ8$ey3~y5j|b2k`Omt!guZHvOL<-M9-tMP90lA-3=Oc5*-3FUAf;*k=QF=Z zj}vkU)7tl%r1*0-r=A|^=NC|}iLfVnN5gTflg1$24&hmv*t=FJrqkLFGrojE5W>dS zQ5QB$#ySf!;!bEBIPV8H{5osad}{n!%!*rF+i5LJBz)h=I`Y&v366*j#IIksOOjDY z_#@+5+<6Mn!^BVkca476OMdasjB#$P*LsX4KRF;_L}8E`6CG>jTgAH0Pq{ewIG85K z(cI$rvfh(iLDF15R9M1TB8;=s^_}@^Q9glQ_Oar6UfM!iG zXP6_w#0@;G&&ufAFtMfvX4*G+&DvMT(r0yXo3*e_wr<3&$#c5N!W^rdzM44)=DO(^ z<3qh9tfz7Qd^hl2VwV>oEMWP7^f_tdq&G#KiDH(`A9F*Td4;V(^=a+9(AuR;I*>zGI!0;>wj*LQ}Qt{{;FQa31> zVG;L8I47+IO)xE&SRa86LbZ#8q;-Kv=zcHJ@`uh?y0*t@_Au`Oz&m;W04__oKTJV` zM>0wx)7YU4aa*FwK&wI>Q+?)v0sEWFQH-GIeqIALD4BQ?kZaOWxm&MI0_w_>Wp*rR z{Vtm+>@@*#uPqqFWtancK)KWa03ZNKL_t&`jBYy5O2qC)mGgNBG=JB51N0i*be@F( zn)tDr3BKm6m<<8+B7VhZ)Jrg*6n4F(G;O?us_Q$5ltG$ql4viDD+f6;e?Re*xc9qO zt+IBKfpQM|`Qd!iJ5vMXDV!`;m2aNdti2z3S2*0c=g%R|$+(SQwIXI=(?cj&q*$o) zeIs!H{mW=(95vMY5)U&UT2$~o%s)>*$k{1QwU(34kEZ!&>C`J%_F8Jhimqj~f6LQ+}_+I~%9<-c-w# ze+hqlz4tV_*0s`%@%pUJVeJLM^125GD9+QDg zAsic8#+^$~;swLtrdvjb1|F%L;vYOi)yar=J;;2+HR?Rr5Lk`apqo;|b2Upe5bByv zyl`o@a8qJ=P@ne&h6_{zc&simfnN!|2s})3(&bK$O29Cexh2&7}6aSrJJxC1JYKh*+3d)2#{a z^|_`{xE4mybo~;X0E#7K2_n8a=y)7wGwRLf|1fTAa`TPr_|=d{?N-i?I`fo*AoK_D z8Q>L2!S!}cmage%=X)@Es|#H9Zn0nzBLGvFODM3ZH0q89$?*oUG2W@O%&)En1hDJ8 z+QvM#Xa^Sbd%V|xkG*CQ`oMqHz#z$R_48BD$Gej;N)wtPgbPo6BMbOB#NA<%KDnEI z#<(QW!~GvQ$2fYT;Jg_1XaiB_C~-8p^fs55F!8#-e;*B-BPXt@K;-%)a4VmKxTgZ{oAmc5Xs~!UGt;Wv}&C$51vvDnYf3?=dTY*dJyK7kD`UsP}VM@5) zBmd&$DB!@r4>xKO?h32VW?#a$^xZ$^@5*`NZRKAwIns+CY@^|YZmaMN&7=6nhW1Db z{J+pG zyVJhLnmzGm0}bzST$eWW(2e`PwFcLy{S<3Y8sE6on#H>E(7bU#b?A-pE)6(NoyR@W>_$U_1W$n5U`;Um{+Zn; zk^sA=11wBD3Xs7sku5tXt8U@Ae{mjcW5f6B`{Xgz?~W$nC31GfM>3H*_t1ZnMuBru4? zW+aI=3ezOA3_jOqAbPJ(YK3G>J5ZNtN-@kmg|$e|_1lDSLTb6Bgd-jIKtL z>-TEpC&T=g=2g^k3PPHU(Qtp(c-%G^jXBq5z;HKO%~ekhx`q|vf;xNaxy5@`lLz+J zbA0yBAvdR7Z_LGozcR`d>w&4k;Eh@>4Pofzyn^wu3S6rz-uG${Y_Zb+6z6-q?65R7x7d4geEH%9<9&SE1j{Lw_#*@!V z__EAmXf9nb?iyiE9wwh_U$x`!91SNA@&*RfVx$pWxBL#zzT;$1gy#-D8@xitJs5my z=cOM)&8{npBWOy@Mfg>mXcyvkz(B}jP3$4uK2SJ@eoXkMeG8Hvt9s?*u-K6i7*~rw0wuJ(}rfm0IKi1 z7jSow?msN?`2A?SCgWIzygNxe7?9Dudx>1eR$K8T+G1|x3G*iz6|HfYY3H5^N8M2i zKc3fWEQE%@0@XxtuE8MW2O(M9hbBlH$v`+G9@iB%uBikSYtgwH8cJ8(ovTmMd^ON? zlVDW`Yc)0M4$L?w-V%W8S9%;X=R;_Ie)35RU#7rjBMDpNyr&6{OPsPF!mDcA0(*$l z#8tix;F{%niB(5Ko(12%O%)!cxRNi!`5MpHulvX}j{FN|Zq(`b3`RYNVcR%o)L`QQ&HG{8$39+0 zQ3kv8^lID*e=Bz?2Zmu3=B%bGc=*+TO-*4iKQx;{S!Iw2mT^ndZQ^6Qh+Zm85* z3p2Y$9D{U5(#B_QhT+iJtYTdQGkq&^#Gc@=#Fb1nlb1;{rW(i9-T{mR^uHuIN$MN? zA#!{@goI9`$M1^xMp2kp3#0(FPW&b!nb4Gc%PceL@cm8-zTbNg$Sxpv!KMk>B?4-{ zOjafLT4NHs2DNYwNtngyFV{pf#v)U3jl#qk4q&4wNy78!<_!~i5UT;zB$$4ubk&Q< zWIQv}sg1@ZELP*F&V~Yxc@IG9+`a^bNm}`o)>zN{_1|RpmI**Ha<(iCDDF4w(GUBxc_+Qn)l z1>9KJf9R$J z&2iufH-#(r*yLNejvRI~;TPAf;e#}E#|HZu#zT!o=I9yMgj-3wUz~K{5o6VL7IbvP zspJ)aJH~*2e~&l{V)7va&Rhpz@x`H#V8;J`5u2^#*yC+973E;KlZldEC& z%NuxT@W{4;)epki#V{Oa>sr2G(XkyPrigNYpA zY=IPj{37)(3K#BSzTNd6g2|-s?ukVIFi+~%jACFRYLeI!6m?rhcliZg6vzZd6~CJ; z4P1!zCzh!|)0JQ*9Sf5rfpI7@0`(xERFKMr z`mUQN9mdOmd_NG4D8Sd9)Unn8E(xp`vH6T$-vOw{G$)W$>dIPlBmf(ET=6#WV!bah znqqlPeH$z-BA90thfqHwPh^${FdK8Ymtz7R@$fKr#1&$(4Zw@D5*CG~{yC{mjTwtW{JR??5o;1> zYp=r`tG-sF0DB*}_g&Y?^~}|z-Gb(DJ~pqjevQLC8y4Xorh->P<-+hWG;v-ruRWv) zToQG{p*L)f8=D^{cAb?tps`W9unhZ&^UBAweqA%v!AYz89BH<2t{$qeK~Zb&*j`$( za6o!4>8H`yKpwVXr9VM~m}izu@4#hwhM`+syVmEb-w$^L4exX6911ry2A3g*t4VX+ z7ECc=-Wb#Lj%8*UAJthjvdQ!xIJ%nM!VU9p382hg&`mrMS66K78y{$ zD(J5c<7$K$Aj8@WZU*g0)=IbpCQH=nJT8K9H|Q*$@VrRwOvV?PeHV0IIVUiekgb1{ zsc(`vgds)20BO9#9n?ia5|iVc5)qO(lJPV^^6#(x87zOqeP$j20CV%piH_`Z(~2x5j!I?coo%siijZC*3;HPmp`vCY9)+i@#{ z7*I7c{>|^k+L%-6T#d`o-1siQLj>1;Y7E)ztU-jDSDk;Z4GL3Ezs*s` z0X&B|HJZoamXuAqF@bdwr&X6}kv<&QW6n;7E!6J9m&$7!MbuU2UTE5^1~{HK@JVYK zb?6$VdEpto8Ynb)33r0lcG?UrZahq;mzeQ=*s2lctZOjbQX@W8j2c6nuQpOz&();i zx%Bx3t(!3HfBCl*UwW=yM`}jt-@MMBng_939)WsXxiYi{bD4EQ9dnpmpX28&t&0yM zd~s|V5{?*OdbnZ%jQD&{b!LvfhRE^%Hpe8uYhX;|G^x6T_DHrWFinRVTp0-qvD6J= zP_9EHk?7A(ss_n0XNR+@2NdVkb)2Y@jsFF;0d zdeYf7NAUJldL5!`+?}l?=DOgLc#$w2V52?$`>Q7k%XspTzIz`eUjL@U9EEonqH#ce zc0I3({OB5bnsA*-BK&2REROu{qsukK3BKceh@Ugrin!Bcbcq{I>6lQ;L*~MoHs~Dt zvk>-6oS_y**V{yeHI4nefXjtJK&Y5mtRH(%B*6Wp=FjS`KFIH?$6C(1$stkLpZmr$ zk>xOuuKW6)>O0j!Yz*=24eXlktYZP#M^a)PtGk*SQsduH3vGIkbIB|?*5eGqK40}U znmfrD3!~~?QS35*edYYsgkz0)Dt1iCERx*NjQEiZ&ZCj_Z&}S9FSC9a>VX%**o?+a zc*ejdj`0spz@&w7{_Nv9~c1|Kjd!Ds6R2QX-9Zq%4HZgU}Z!mE)beqVagjiVof3uDUC zsnk+TfX8jmPtGu=iN9P+Zgi$IdGP2{E3p9toa=S!-^TinJ(FM4fMM~RFv#m=Q>k;E zT9XGgipgXZI;vO4nE@Ea_9!Y}0UMJ80w4ow@_AgzxsrKIt`9Mj03uDid(9?%ub=CD z0gnOZXd1L&Bgh_rTc8_(@`&e{u0I6hXlNt@@z=@SBcZD}2yO$EudYAIz$SpCXCV0I z>jG02P!eTI3p{9;^*59y2Rst-ZWN!FQPg^ufHFZQf#UkCJ&B*{Rna(_cXYmk7+G7MYF&73%vYy8)ePSmo22Ph zj@CAWe|YDp@q}$yH?OS^yc5(}#F z)AIXsih1L068g!^yzuKX3*_R)W!~5z=Nw$+nn<gjWY<` z&*v>qr+QyF35*}L!T}eDMp&=oKAIHD*VW)-OmtH--H`LSjK7oLsL6sC8Vz)F1!7UP zvNT0%DyRP48eB^x)%r^26}bKNa7YpG)O^EyBQP7$0UB3rv!lM zS0SQU7oj8p)Oqh*@RdE~P47vyJf4@p@JId)k@u@^iWGkdG@rT1G&UNKt6&jB5^=xG z#?hcMc73qzYFHe%JT7yco<;myF<=M&`@!_<4TZna$hg5Gp=puP&oYLoo_jAk#|y(R zy!C#Tz`d>vtLZ>t(0>*#FR}GQ)F!bxxEgh2eBpj=2FCglhe_0&y5ai+;s9&+!=Dcm zH*&AmK_f+>l!T^gKjIj_cbKM>b17zAZ}V|jqj7QEq>wR;gOQeFY1Um z@tUT^TRuTI#73@#|7Dm;Lt>p{eZaw_3rF4Bs0EBjH*z}9m5Y3z^ZWCiE3YK#E6>Jz z6h|8jHzTfV+-dFcX4Px0JOk@(X*Ki4dKa;Y@08*94W_{*h%Nu!gN!}{opb&Br#UL~ z*XM5xvxhni-oWzYe?lyyd9kAHt30wDx>2tfqh z;5Q7G3l{-hoecbJkVF#0DX~LW$(`0AWPIgO&x|5W#IX*Q1KBRl}-(p%RHGRj3f0b)>DdqGLtVnTT?y@chyGXfIj!5j(GNIibXNixh&)A z2C*kcr@{O_a5ON~0N}Huc^3{-Y>(+Ca%R+|MEDYJ$t+#?VH1XYUM7i)2;%t?atW7W z1CaTzce&n2UAk^6Zz|3YvCh{F!)RVU1XdDa7V|#S(Ma{4FYd+X>NdluUGEVZY>8q$ zt7>p)D6K0Q)UI7M^CC8*mSck~n3=)>nw`}Ufhifc`BI~XSRI6ZYHF;(%cEXw6rv6? zrX5;n;PYil+{|VyR1?dD>z2XL0OVZ8Y=F@BS9Pc*tTnNQ!Ck_bw6=dA8FgdhWRrP# zj(SdNrhM}EGE$HH7(x>Jqe%Yh_K?Hg+ho3&87442t#dElv^3m+^5!rq7Rn!!st)kzCXJ!v2;qvQXwT z4LV7zvBpe*A!n9>2{|-kfO8(xiF7sb52kh8s7ZB-n(q1w6Wj)RYAW*ynEm+37W*>Np296wVuQSUH9&) zCxdyMIWajt&v=|LHSH;UZcO8a`@|Fq$1$y?DYEcWo%h*#-#!b9En^33$M2?C57_oO zH^qhZSItqT(lVNQf5OsVP0WikS7S~&GxURhCQNWccAVcO(t`mo2BoRm$f0oCWN|-g z_WE@(H_^tKVDE0=#fF}+Vd;g$Dde2Wt3yODU5DrOuStY@ytrmHeYCzY-Nnxmm&8Ve z^&R7**sckv`QC#4m?p;B7anze>PFGJ2Fx`k{?~ceUssbTVLdS9!XWpW{wfNeD6SsjgsKPT zPs+oykrVhU0U_#2;D zaY^!YeC6<|%>T-bC0GfrwIMuly^x;?0xxyatEj!uRDh?TMsY5TO4n$0IHObRVzpoo z`(JBMzdxW(SL$M(2m5`2i(natAZ(T~N5Z;emPCW6WaGRj+K^D6gd~BaT==eI5ILT= z*2bFz7St|$7pn?(6@uUE0)GiycU74$D&jWKB)>$~6&s&by4Hi_YttBvTI?!YWcZvw zatqj42caQWc``)1F6EV4hfYs2DvCkC5$(sf~DGS)jd zr9St<;Lykz4YSZ-tUZrr0N0ST4svz~_2c|HZeiNV`bgq(HFtk#h$J541dRORm?!>b zo(68JTpIWgjMXy82bQ}wyY|R^-#<659`U`J9)knKdCYxJHCJ6!&L`e ztWE13*v*_(UH;1Tv7T?Rx(3C26-)jvZ{I8*CyebFJaW!Dt}##zi~awt8j7pILO)w# z1v?s|GW;$=n(i_nQbuHmc_ur59YDoOlRb#~ub}+>+#-`& zn}DiCx`UerY)WO z**pnXkj5mAi7vvcAFZp$7Ly@ItH`fO#=oB%1REH5{w86c!BT-|JfE2ykALHVY0LOq|=V$wEK-GVNErrG3#DY5nm$kH%IcO`S(FGbZ9ixa{)( zGIgP8X;INNz&c5j&?AOX%oNT^c&&Ha$XC4i@5$InFjuYp`` zC>CarH!NttR~Ez3nCdKsCJ21cJSXfJq9_=g!Ii`r;RDwkC(ubV1QET~6XMdi8Ti7c zIW_5qm^b!QkR_}LpKr`|-M!A}!1ww}(qpMv*nCPY$b7UZmpNFXm^>CfYaPkGf6j#> z|2Us9_+L#(-Yf#f#|G^q*H&I#4TXwl($axDt~`seHD*~eGk&V|W%7gh ztvwch+vHOp^y8C>W(-pNwa!@c;d~e0=`&nYpBM3(=g&b9n*z)u$J4c&yyD&G5eWCQhr=vg zCXV0nnUl!6nGsCJIc=?CM6Glj^|Q4;irMRG6oDg%abLyj{V7K7KBjs!D32?JLC`iZ zUe}LwlfrN^&hk+UBQKA2tQ#ALXe5}YyclMhlW>zrsO?l=L&Tb7E^JbbxMS;DPiOwR zns?qrI`){l`Zhwo&X%skje0)>%$Q=Ngi%AtoJFx?tYjVy>^scb*y9iJKTKlf9?o$! zHbB6s>1lJfPo|D3001BWNklp}gt8s8WvoJ02vZwAPuI`ZBeaT%J+#HV~U z22sBlx14h_7Z=Va{opfh2spTpeE#|FtJ!p!b~lrqW8iUPh|i7dF_sy3$)Cop&Sllx zbsK2Z`K6}=<~C=g!5Q)QFXoIK?ws;IzJIsISQyQ-z<0*yj{J+wWZ$ka$7onIFrjj* z;&|`|^YEIs)@uhxDc-|ViA${2>YZZ<5`2Jhch#n}+*PBj)3Fxg+IQU?fS4D?aKz0S z_^h)r?L8VdWCNm}Q{osOgMz$p}QnsH!ln41!>*SdzuRI-?eu7jQq5VgR2v7$(-KQ+iI&QdcDi`~hhnkz8w5dWl=$ClcE|MS`|NSP zg-c~b1HU01TKWh!=G~#5l7A9aL&jVJS zjSUYNw1yK$|ByG&<_q(}%}4QKebkzB=sM*}8fFZR3#Mc>9n81IfikKI8$Rd3S_%e? zwLN$xR^LMD*I>-KA!b&$p$jj0kepk%#Ff@)D<5#|hdbk>Q-8j=NmGSF1;YLVo zjKr>#Hsyj_9X)mCO-qy zVJNCDhR96j#s{ugC!kx#(ZYt$kboT^dKmd78iQ~jQw532(F9<=*uW*BKyeGw>yDa) zVdD>lumJo;=ES{K6CjVYr)2`a4`Utt2`p3RAA27ruK+MLQ%qcy-`ocU%;WQEf>Cw1 z8Ux3f_!h}o*N9u^C-R2%9ve{xd5d{HYmtzFJmm9e2pkv~r+qrd#sy-JKNE1#c{=Lv zz_Df4e8rDf*$$C5j29Qd-1(7HX+p~Nrv{vHnst=w*&?mQ)@zbLf)=iuSO;$U%4`s; z#?VFZ%+bWnI`A>Mu#nYRxCxtbckv2wCDjX?GB3Or$JyBbdvu?@*UdUeVm)AD{nO%Z z31nk+`u*I&C3siAq_kD5q2Amz=o3BXvgk?Urb zbJu4eP22ml0ZYw2J$p6o`1428d(1z|1E*l;7|>XoJGwN z&{4^y}VS_KRN zN!{JCcL2#{96p3#u^bX`Btrr}178v;D!eLk3aJ642@v$2mysGqM~SpVM1cqZ;36i9 zlaUhw?g1X(y`*W)Dr_0k)wwfhkjUyiIHMs{8HYgNy*Cl!5E4I#-+B4TvCyeyd>lvS zE0?@PKq4*FN)ipm6xKj|KI=%a9(fcDNy3aP9?PJF>z`@u3Gd>*O>Ut}JD#tud9AxX zW5V?`w(5JW`4AfZ+%g=*z#sYjGEEo8T*S@&j@nN=lZ-6#XZ_k0>eYl>Uvn*_+8BHm zrXUexzb{x^DBS&sIM&o5mIr5jMi09wF{TQqL!@w3twu^A>a zGaAA&y$e6m)Rso-4>dLh1WCV|D}+aVhQu<(AnH8USZE-u0Ufa)xH@iGR=(=}#)DJu z*WQr#gZ~_#!p0v1$T%5QLv8s2H)6&0qmj)#F~{&d54~W{ab2_d(O7ldjPcMZ-rh7G zePh`iVIBz>Jw7Y$BZd=unHuLUfgk5TG&t&G;Zic;VbJmN;2*)yfZN0vRK^BVcPVvd zB)A!{v{@2)efG0P9Ad3wOl{b?KYoW`5i}AZPD1<~bzb`Y>QEcFKKn3WJ1I%fzD{hT zcQpf2v%+SapGm;VJ*u0O@*yUezsG`Ok|LpA)8vs87VjayJSAIsTZI)SQn3b@C;0Oa z+NqZ=H+EE=3pd&`u(L<86M{WA$F#c(wdENtsJ>6}x8B3%p8T9N=X zKBUG`GVTjsY!-k0T_$Cn<9F>PzLQz*@32PFq@M@CybT6-i6YeWXDVhyv2OqP#t%9Esz+&AJ8a&1eIqaNtcyREo{|@B zUJ*XgKNS8AUK$HiGWA25_<_(_IMFzKpW6q@qzXxK9rWrZA07Sm`-q3ASc1_enBW^k zXl-Kz*+$(2%wlA`9U~;;67?3_NB2D?<^Xb&Hxuy?KEv?&>@Fc4ng*4OjvYJrgUBq> z2)KwN^Y0V_FHuC$3|+Y^ev4EMzK7UuEb{a#b>9reDc&NLMbgT-0kR=3spisDVl@H) zM5CUAU~DiI&C(kbNK);h`6k;)QfE*Lfc0DuPwu;z63}>SX*gG&iHA%3ZtKl$& z&>wCsJQvWgt3_zkfKJMizp7&4%;wrEQU`pJw8ZCc)yRH1TCF zgquUgd7fLU&Ckz`2hu=eI-Tm1SbOMiYutgA!u6#!lgSsJ41P=oke?4RY_1AscQmxr z*fHjhSW!daAVw?_r)hnO>k^jnEISXp-h{VRt8N-{&E|J#Bi5&z0jnwWi`!G<3^hNn zC!Hhlfos%ym(hRhufvcyx$0*ng09UB03}&g0wnW(31%B$gDipP0{0`RQ7rx8u+M;o zz^?AeaSde%CJ^Z8A_ju#B76v))InYo3Xyv3X0d>629ubkxUvWlxunU&GWJO@Kzv*s z-T@Hqdg8qQea>Cu&%cQzQbVA>tM2>&YwUR#7M>jeT_$KW5<*?Ec#DJys2xx3nS1Pa zq{frhdFJLdHA>BkAWDY#S54Vi3}X`j_Yy(Npd7|(2w0ro_-_^vgMvtE!Zk3Hs6k94 zmy(dO2(gG!9(VqS^%JX|E8PePcr!D55}9iktyA0 zP9qtf!SAF&L}3Lrw{^u>gSC8U){JxJt>jb#!8eRG$y|1w=q$!Q@t4F0j$P-%rT3Uq zSkK@!?i08;nkc}z<-Lqo#GQme3E!-B9Fzxdd7xsg%`;j0BAERZ)7pD93Mf8L23Mfc z%f5%Qx)K7-j)#p_n&9BDVnSBo7J#Kh4aHJ~Fs2wmV5I_2W^Wu+0WH^*4C1T1jpS|8 z)^k5a7@85Q%cON&lah)F&!?~G9-vE*iN^Rc--+ZOXE=nNK_{4|pVxLm5w70_Bq)+- z_&x#=_nQ9QB&6rNxKD$^I;%gk!R9(f?)kiiAT(eb{E(BMTnT45#6D{m>wM+cGFjhe zw3$xbZ=a>(O04pf)}oZ8;YLfCTt^&r6GZ2+YUVJw9AX*ksSPtR#|Ax3 z``BdQIfcA-o+ZJz%mnjIXV|r3tYxep-ycRYO^%GKs%K*5y7EW?U+c5LVr^*6Q7i>R zgL2*f9h5YUCk`mjN3%Cf9Fq`nLtw;2%`$RTV+YP|G;Nf7Lwg7hKF|H`g~Ffsw5Cu; zo+o4EwXU`QG8Ttnye4H)@Odg68dFsdv3V2luj00v>c%ep{WNMm%Q`0}X)w$-@;vLV z@gL0&zT(9{1OFa)b>;QAMUV`L@FwbD*1Gp4BfVmA;n{(WNwfFA0pGed!}A9gRh@nR z*SY4n4TB<#8zxx8!By{?(w@z-hbQS=Vl4%8*ZD2IlKwjp#HC|$%6Oicq&)qKJW)e^rmNb$(=0hX+p1I+vR?!bN@G;*K$&swR^G8X*4 z4>L7CLamR%E>%x7+eu%5% z{D!a!(~OGMWh4h?S-c-jAY&tI`BS6B1>|lL6Kjt=Lvy7?+`)G>O^@RAs_lRsjGh0? zT5VjydOdAB>px8NS5r6e=ctb~L3X~dj)G|HA0N20utaq-nhmIT^KY+P7&vMRXEgLp zm>|7=mB7=@fT(x285riP^@9W&&mbqvp_Yx`=r**_e3cTO#j>G0B_L7zlU zPx`=Ena)O7yJ}E_$YtV@JA8a=;_&=64Aa`Fr;V{MoE>$V_&DIzrAx>8BR^A3eey=P zVXizJjr=eGT!V>gV2~O=#Psi)Kf@twtAPFXEsT2)QmYo6`{s)Q*fx*~X1&PQ!_E%U z(NWSx{W$%XJ>&)Pe283*gYjk;F$>lYyi5cO_u|TwV7BWNSJZikNZx{8(U; znlSx28zT~#_kSd<*L_Y@>zwM0MAoS@Jxpd0R;%;>5&@jDd>8Gh%d@z?-y!IwX-gDe zCP&5~31k1;B^q(w%P;}uf87e`noMHuAdUs5%ss8&W-K-5C;*2MV;(;8)#7vP$=4HW zts%~z?*)UsY76oGm>3JgP>WBqldb`R90>HamUW|mYx*(mUX$u$VyZ{}=L+%n99{xo zT|In#udpSExO#sy#lnP0%3&fk8XBw<-ORX})uUm;Yl{{NK`=$bSlAdQ!ArCg-;?l1 zZYL3Lo=wJP3AC`jG;NQQ(1VYR-D{fsh{eC}v97S+5g%dUmH#96mD^`d ziIWPyK6~{!2TV>)yrHj{i{kc$&%AkYVCB#qu3zuDa185?-xuEfif=NxjGJ@YjUL8! zVF%Yt{spct^Tb#Y|8+}}*c-9vhnej?Qt0b_4Qs&a-tW=GSXhtq@(?59h+?-+eX;@o3S-1WShHaaGQyDuSk-Z-bBuVHsZ(HVLgkh)MG30;kV2 zx&3qR=St`X?H?VeB>1j8SRl-9lL?Tcj45i5yZs;=9=1l zVi%f;#=ucOzP_ipjNA%lz}UNT_iAqb!lx^?oWht$eHP4ta1}8LfpwIO|;IPKU}kp91D)~dSgSz#@F1-^F4Hp z8-|VV=05VT3{3M;`b?V6T}=~ejZk})cfO6#+9hDkGK%7$(I~t22+VLZW}G>VSbaz4 z$FJ|d8+2e)#%7H=U!6DP z<8+%g0DEjuq=*ro2I0y91 z3ds_VFuhl&ZZ$|$Je7+Em(}?S=ikN893XL_sMqtaDJTW;t2q#goZ`2E)-{FiogGY& zPF%NZ1OV0GM!>TGN~SDb|I?MU)c9B;f`l1>auGwqjpNru5?Ee>-tW04G=Iib3jvZs z!VvD=#u;a`NS^r-$c{v3+({k%QM(7$j9=9;HYs2KJRMcAxmRam}Xd8xuD^Dz5dt7~`W^&^XAPJQ^+M^NT-z#OP|s zur|kf!fmMDYr+aoFp(#XZNxJ-+MFxqC}8JmR)pzm5|*pkY%Xwpf8V+AUiCQEQ+YzH zmoPog9q(It6`pY!%U*Bo$HMq!p81_4=8VV6E9GNc;}7lBIxz8{uyuTvy1`AMS{Kgv z(~xs>N{thqm7CltuglCQ&TVXA!&Eo-Sm*t2HSkW7sd;@#zIVxx<3_{DP`Dp@NXw?#TX?3K(9g%ejD>wUvl zJ@oIW)r5sF+zWMMoG467LzkiRSfk<3#+-(!3(tcFY>#@HPKn^|-jircR3&3pt13`Z z5fcmwNb0&~DvZ^ImdGDqgbnwze0axIl+=Y<)1K>gfkl(WbR}{XlMNvMUF2ob@8UKg z*!(5nkT_1j-buz{^7T)W9ROlX%C*;(to;w)Kj?h~tU(|J0{Z@C_Ph8}0|?I|h?-oJ z@wMR}pwIdUsQ_eoZu1v zBB#Ghx>qMZ5!5B10xlLdF0-yFrKeTn{8>vf6Ol-?j)4chavgB#G6>AWC17|E;X1tY z^;2^f`M7RLUc@KinQxpd6YtnDpG>Bq5y%{Oy)O|NFfSPbPkaWBiK|BQ*!8IR*K@|r zhlK6q60Er}@oHN7xyx9kdRB~WfRZS6?k(Jqrzdtj5$lb9Q7C0lrWi1%VpxoiNeiS^DxGZ`=D;~fs!krkxyT6eE<4y7d&r* z1)W}x_YlpvPYh)q_pe?B-bk8x@Syg;w1jJjSjs%QFjoIQ_FCt~H3U7@{1j>^HfXAj z@cCc2^Ina$i!+QRqc(i|Ibq!opF;ey4qX`ac%S)a;eg{r?3At=dk%H6wC{BjRJHnv zUBzRFzmQ}D7*ZqxkS0ONWUN2O;;0|mP;0WkgiHl8OerdqbtoNUC(Q-U%N#yBW2xvYCS6pY&{#l{h;UZ^U09oy_^cx~3k1HOw6KOMsVR}DmEf8?W+GpWf@XeY(7@w|r z)$%Yt!DuFNH)=wAuDrE)8o8^6z$>piX1|&Rm3PENUkx=G@$Vt`*7dLNJBXF+;&)wf z4X^Jwf1OjP=|M2M9WkZ~jDrOq^G2Atj2N-ze~8;^Uiv-2_#sYGBg8e7@C30QB96I? zIHr#LDQMH}AvG_4P5nkg8F}xC{17Xlk+SNSdm{G#z@YJ7Jw*HGlps+Z1*&6T9tA9Xom=&Smv*;r>2 z@_jT)lIBxwj(QMZ_0PofpY=vF2*O>40s)BKR2E<=E*FNoMT;-)<@Rwbjn00;acBqlYiBgYu;xRuG#lF>6t^Y z(eR{mPu~qj&~@20op9>7&f7K5ch=|?-N`648^9ghM&81mU58In1MS%lMI9FnpaaKYPTc*c|OF8 z@$X0NN4@p^q79%mVZuM2QOrl{Kk)ji_S`T?xiIqUihs!WWge+pXwt}gs26G%9#PkY z^_0#&#jG3ohd&t&Q0(byHVmwG?LN+6=~8=$@4NeEvGvj87O^!S8_BJmXi`=0v8n7v znqtrT7&qHe(>`D#J;GRH@HWoplqY<~s@H^RitidAXfod#nwl{1-^yDz7D`7GM=I}D zAdf|k;7O#WD>jJ$R}d{mncP7fc90JT9=Bqf_8|B&+}5#qmn;O zA+N*HyDW?&ScPfp0&;<9$H4z?;fOsHAbFB=k`DLJ!nBFd=R5)F7&td9Is`T&R>_2L zI_UiOnl6Iz88e;&X@gJa4U3zL*7PzF%rZ`Vr$sf^Hm=--iB{EApSf~;)MT16IKL^* z*ccG74RIsl8obvZ-^6rsWWF z7L*Gcfq^|n+P!`?;lMuUi{CT;eylxl^|k(g z&$F@XfAc;Pu5ogfuBl^Z`L^(|*PKJg2Hr=dGqjF+Pg>>n6o$pUg?B z001BWNkl19mjfedYY{I^%JL;dw$MHs$Y9Zwg*IH};_isbzLl3**Ffc*<-skNb z1=QDUpnR+_;qXRHAD!Fi&Y0p*sCDMbu$A}C<=EicxZgr zB0?R^ClM~u9y$;aq(f3LFCf?bpK z)bX*I2sP`nMx@2armPw;?zhbuo8?c^M%7{ZgN?LGB=}G>uBYe*W%N$iX!| z`6ZU!TnR?fW{)IkL*5v{+I=)|QVbe5d`2eSkgv&vFB5o};naZm)Ev(@2}?I0M3l=s z;OFW3o^gBe%E23{<30Ewox?FTSlx9Al_8Lbt%*Y+SW|wm=01PsIs@0NwT0UaBd_?3 zAht`C`Q}!wg+EVXk>{0~u5P4NPMOpBzGO&8lSsJQaTVT0>~K8DF(H@FAqTiI-3EG2 znOM8^{*c#aPA6y$7&mi7nViGai;cW z1Ba72)j)0dm!PXx)85`C+@N6IljoK{s9a%AAXmn7l15>pA?TgaxKd4xMhf1!2E)u5 zt*zH5&0${qzg~#1Oc9`xpk{Isa1GWBq>|iSo6n+?=?!Ev$eSQRpaj6U6ZlK44IyzE ziq~FIB)ol)ghhd#38b481W^)LnvU=q#wE0mu1*y1GBE4+1CwY7BDBDYTUmyUh2X?B z=ui-wOie7v!DvQ!j$C^XtHT@xvt5NZiuDi@qX}iww7ER;>744MiIh8%2A2fv1eS|9 zl%JK)Zl*ZDQdhkm)l&}&kYkF)*N^;4;!HK$xDWs|ngC-#5NQj1uRKcP1RGdas0-V? zFJo-N3yJ15QM2G#v2iYZWBIyCGwMF&j|F-9`%9$onZS&+riHJEiEBKjs0-%(iD@r` z=(A9B)K~pJ@3BAx##wNV{0p_YINwc(@41df@egbmSZ=)2)j-B~7#Qb%%47eV*Q#6@ zLQCA48X5k#p&KmZ*^EkDD;^x!6xL1b8;y>`Fn`XO+9+Vtz*E$(o9TScsGSh+p`BzN zmM$aSlGA{Rv0+@;@|Xgj1|S){fbZsV^3_jX6?Qw1ZNv&I$br!ig<2sOR_*YASNv?~ zf~Fa_86L)Ia5nSZm~}O}nLpqu>#)w{m!?&7j4`EN9}UdIRJwKsCLV^Z@!o#pmDkqK zzBT&L04YC)DOPPZUKcl5cc=y~?K8~q!v{9c{Fs8*=hk%DaihNbqYtbtxydp1cJOWI zw)dEH7HTSbRNii3o*({+>-J5!flFr>BnY1+dICYk#HX1mVv>O{@TB0a0x9qh2hg8= z1S@?eb<`684pC$x=3!#Ly~j#`P`v!iAiH3^SF8_1KET+7DR3UifzK|WHjwJGs{xY0 zL58aVH;E3M^=Mp}jOx5oZt9#8sam{#)G*o;;ymTwzkhy;9iJ0xF63S8)?VkHh(yf~HXmHa%oAeE z_;YAFCBr_jiRY2_sGpCnJ8^(!5OKWB)F*a2pD6MzMkFB2FP}Jl-yg4m3sbbc{%&FF zm;@z(oiK)-_8*gQ=5oCGV9}u(OW3=Fv_xt$?kiSd59=&blT$b`8dm<<)$~nbS3;lp zGYmD)Bh-JdCt;i?E2;jO+u!H6arNJWIViqb#_qx=H`j%U%->If`fmVc?yfpD=YaSCB9Lo{M8bqkZXO)llcGFlb@8F$JG5 zT@l~)sFAo&Vs_Z)bMRF;kXzJAa(sTJUV)Dop?0q!UgBD`0F>l?7kKS`6I)lmJzYOPN3bCfG25|hZWzDE3=`{1_D zg~V}xY(9Q)$7aFYmChsJ?I-_zwt=6xzYF)=*j%_xtT;4@4f)WaA+BzAFCl(lXTqwg zwNcK(+pCrfM=tZv@A+2^_`cNW92jL|gc&J+rFrGyh7DU# z8UU`2Q-3dr#GfXCg-UT961$7S*L*A{0qkQ!A>xg{hmhj@Fpw1gl>ok0HaaoBUUVR9 zPs~uTOVsM>(hHFJn(>^=%qM}Ku1Z;C9KtRFH44clDglj&ZV-t?<^a$nxD@wwX2|6x zqjZym@2#`?K07t07O`P%wPw~~=T!Jyo%h(vLkNxOsRa94tM`JlD&uu^DMw>0OgtLP z(lo>ZUFWm}U4bQW?jp6ql<)ucROHIpa0Qp-HSkd+zD%Xo=`-V0V&!$f?Suv6eANwK z>t=q3m@lqLpLY&nQ{z`6g7HfYgF&RkaMn|C1kRB7x+Yf0+mk;%#dzfjdC8Ny%ZL-h ziT{UrH6=W!ONXiUd8fuS@nc*&t=JNu1HKLc2E15}9{sE_O^wYV6lF}7wmCSTH5qHr zT<&0dA2#o4FE+wB@2czbJcvE2Cu@tO2^ve0v*UA~iXFoT-~LGN9{G|4GsUh1cAJsJ ztE@L`jF&!Cocrt(w-KMyje>6;T#b-{^@T^qJ97Z@qT&&nGGib`T+`m8b_n@6u3Oi> zu;$nZR{nfGp0tVfWUlIv1pH?H3=HtV;MaR=tsy?l{df~WLq*3vH3WyhNjDFOq5ApYjaGU{Lj$eA~cG=hg$O&fKiUXx&%dEbdTEbzaJ+H9v?q8Xp5T z8S{o$Wxa@NM(#2uaq8gf%j#wgXAM&mKci$l7R_iv4n%c`U3g_GJXEv zUwb_g*lSwp&JVz`4&j=pjXnR>`0M$pA+m~-YgDq2?yW#=i6?)zfIAqAieaC<$n7IK zjy$@+Y!m~@Ac%Z|<{}Cgtce$dG(bRv5%af^P5%YY)J+Xnk%kE4d6cQJ$@xJvBVTcT zCcyz(;ku~7lO~s2?wofMDHw@`3k0-R=T`ejHITrT?^}OPLdLZpru@t;l3dEUC162b z6f*I1$Js@4t~gql(ugHN%nJzou3mVBjicX1=COV`0N%A+y1j235 zpm{`*pUoDYYsH-eRxvt++b4eZZae0gg<;H3H_xLc%C|QHYjYW#(n}f4g3pDrN(8x6X&;#dTQ{c=07np z@f33ZVC~Lb-wW&aMnv_8>>ScYn=;|s1>ElhQ<$k@b8}zpM3uP z$BnY3by*LAkKK^$v!t#M^$<0Yw1ace`E>qV*b6M2w2nq=k$)($Sok`#uy0vyNiAlzYi`IMICf9eJZvBtz^6gG2yWPRGhj-vOvdT zGOR0geMaFth>{0K08dk(SWHLa)Y+s&S;_L67Vsv61t7qs-xF>cMB`fd@G$%X{9m7| z%_i_sqhJx{Rj3RgO@c*~Z=v9OLpYKME%x-Y%5_duF2RvvJ3#euwf1U6jTi-i@^5|X z*Fj9m1l@2hBVS|`V;5CT##A3ssI$I_4eBDVcanUat4S1i0?L}=_nB8(Pwc+x-Tie5 zd|yTE9D2OZV$FDNycwoQCam$!>!RojCU)Rdm~=Yt7umBB3mjk#ku#Ps4EW}zRpbQY z#&tVQ9GA||W@i|{%8?)l2FG)9Mm*#?i@QP{d}>;PyU#RDVwPqgSADJwEiAw~cl#gm8FMyZ!xk&JUw!(YQY}U%~qbDVp(UjVj0fIy3(A&TzTozQCG{{ghKm(dlI4u_Lz{+SSUCv zDZ}Bdj{aeu3?8RQ^W@W4Hw2=eZ3S{oozD|2ewe8t2Av?Ut4C?Fd>I#uE&x{)Iy~oa zrOe$)$G_sn|2>;N1XN$Scdl6+dz~&s0|;_@oU1-(;klYT&edRwMj_X_4iM+--C_RJ ziGX_)u3|9E0%F@|5vJarKE#eY_MCDyHo`(a*OFFk%P@@TfrR2R)xwjmBQhyC0m&sJU|&g;6l z*3dbRn!SF9)5N|6J?k|X<$rr}z6?mPxg?H+DZp9}&(@6@?vH0~QJajx10PxM|NcDc z)4Xzsw$Jx03MFc;TR{A7Y?1_Hm(1q}|3Yol{!a1sJ-~5QcO2?}xP9^8qp{cT3U%ix z`4G=;mi(yu)PNav_XiDToL%OT^>*YIIm~M^b}mtG&Y~f-@efVwCDw6vr(q8Usq>H+ z@O_rC`Im+phTr+++~UuJIj@==4U_L0yFr3=4xUMP7ILEY6PqDdqe4v`b4RL|s?k@2 zqQjHSy6XcN-Fm1V@T;-OJkeld)g&a$bK}vp=9Y#r zPv@XK{_p>d&0|s&K|1|T&?UBIWCn0hIO}jYeM>@W83qlp&XxpGYL6Zx;MV7(&% z5s6@cy!Yao4eLuH_9C&-*~a=R*HgoxYlwNAuAvg=gk>XlL_Fv80vPtE254wltk`JJ zsbNA9?sHD2%X?!iiFw46akGL#Ktj$2;4gx8i3#SRuT);m4)Mppi&`%mJjCz7Ln9_? z7MNEGe?|iV?^>qNwQO!ke8v3*UaU2YU-Q7enBK!U;Ri8ilW9$L_(Qny{lg&8Xp^b`lnvGNjI4ooj+Is>l+Od$uh`Jc)OnMHj5Vs4j;GfxJowaY65|F&V~p4Cx|8@Re6RssO*j&B zzyLN9j5*v(V{0IY%V_jRuiD|1vi5(FP;8RX0P#$TIeOk8A?6pp6Ab{)CmJB*9M3c4 z=r2>(!pv**88T14?;HY7=e300AJ)xtq-pFp=zO{4XfQ(DIT0VZW+CdcO(q}-Af7L4 z7J0V}vCZU>$Hbb*>lChh=9P0tU5tjkb3d%@-{XBFWHqzA9{l~ne`6dCz6InG(>VJ! zh8Dx-h=;jgt}H<-12QoDd+w>$TZb_>!flY%ysP>XmJKl+#QM@j%JJT#IAa)~i?5Df z3%IVncLOriMT*N6Q}fWs-DIZ2o~?&JdH4O?`qeepDzGqVkdb>qx0&yk(Wm~aT(SqS zzK{kPjZX2!;AI zT-e39v&QxB-K?&?GbYfE1MhrJ36H&cH0f6B-w`%NaBgHjmbvP(ZT-v z>*~zN%zZv%;1W2oh+!N#F zxQx9U#F6*oJ>Pd)T$_B`AOt}<@&?aqa{mDY>0QZupYaO>G;RVUVa7U5w>pqJubd(V zrSn{ZnD1h&eD>c5r>^M`f>(3oL4LKLMSlL(lv)FGINVA~rhXVK)VFJF)qjXj5_7`@ z98Im$|lw-SU~od*_%7T~}fHzhk~AI5JP9-o;+VaHc>ZewQQv!<$rAIVV2 ztPm@P=t|A23LMuRK3AAEOtYI2RYU$&62?63LrK~Bth|kUAa3?LZED?gYz#*nE+c#y zMe~5;Pkpie%)N(S!Rh^IeXnT__c$69ri@P zHK9Wj;!`6U@+9r%S~A`cH%D{R{=oZ5KM%FXhRDKE)L^aaY=#4;tA>38cs0^Oy^Us3 z!du?}3xl-I4QZ}E6Z40)nKj1`TwXqfXAykdvq??vNcF6170P5Z84Sd zpKGBeAeI@|!g&m1Ue5_<8coC>1{2XRKI+2P+($a8PDjlVb05Mvnl$aVIRX1)4%n1d z&Yj}7#5Xpxng!`Pu<)h7ZbAM7FF$MN9>v3K7_NLi1}w{%rRiNc{Hq)9jN!r*afutzs{s*mbJesk z@P$iBmr^TzYKHuzytHpj1B9i87_5MapBU*@gV!*0HoZ?Ws|y@7{T_gG9c(R>q(#AU zh;@Um%`G=OrgjWEK{dVKMU_NVAhESogJ%8R1Vr(UpVcAROs^R5d0dzG>0-0Udk|p7 zH8w1gVWsFX2@_~7rkH#I9MZ(&6AuJ`02u)j&s#;Qn-?p0+@K0XH_rbewqV|3i7@|} zH~O8t-a8570B3{r0M>L4jH%9Z7`8C!Nn*}G&U3SXtXB`Q;`0mn+Dj&uJen12q9QRr zo~QSBUGl6Y*oH{D&heK3XKo&N*_e^D(cVvGcX9u%G7yJP_4r1mOL{ z)bZbwFfpzQ>&H1&EJGY^VB=KM0!))D6L@WT5$@ytT?;8ME?fw)^F%3<{MGnT3||ey z#>!()7BQ~5WrBU1E?|=zNXgW^;#k;|ZqzJ(m0%v&#AePbH;A7p&(m|#bVvESM7eJe zK5lfZdPi=hYw^#<39$HTghk_7>*KqD6V{rEGio2TX6mJ37G$cp&R0WgOvS+g|NfX7 z4(8-#I@0&}T$>Ubw!|aW71DNVib+#RT>k#qX0Ui{?5(~h{yXDpP8Qd+CVOdeX=*pN zMmv6Mr>g{ zW0C|hYvun_c5YjeBq5SK`~M$3d&pK{jRG4Qd$BZa%^yXE%lAn6q36`vh* z@BwSosF8|~F?IGDi9f8R!LMGcg}i^aSeQ=&PF**A>k|+>@szM8@JzZ{t^fca07*na zRHI~r*c6)|q?#3Yq6MVYLpVOJ(>$a5*TZn*lb@+Zt@Q+6kxu`tzpdjVIu^Ld z&~eP_0ijT22bhvHYQb(A5;!e^KqSj@!?B1?L){)Brg!0;rFsH^A0(- znoxgsoUV9c_E+5SSuEgJ&cAD2@qHBb&P^AMAX*qFTZ{{NmIRgyLl|EJqf>M6D_0LP zMloVcC6YMvkp~oFj6ov~$`2w4f5Kr9jG>q#4#%;)!lp2>7&*@S-B|s?5PW{c%yWsG zG{!#tsrMyex?>>_3pQFyWG7Y=f0Tz`)2TJ>gN?a#^NF#4+w?2fIhD4bSkLv@gCUnF z9S9eF6o(UOLY6qwmuS%yHW+vj zY<$(BTFdaervHBS!p?*p?><(45ctj4^LYQl7~~f}8-qVL;1mUrUu{!h&ETVs8{xp{ zGlUnTQ6?50;ziq=HZ&ICv-Fk0wV!`J8h^CY7>vjzf12B_%Swi^2EW`O2#i=LByxYztcu8%-G9j2{Fc z7J6XP8I!~s;LQ?7QxUqr-jfH#@Dm#*0)cRi#@hE>1X`0vx{a~HMqxE%@b8Fe7iN-< zt2uS<7;@T+nw?K=|9_rkBKMLGp`VQ&BZ!a3FCj$6j+d++Dem{`Yr z#e0Vhj0cGvg(jNMNF*&ab#V$;G37imarGLmeTMw;dq3CC+&vl~<8<=@bFGUYVgW0@ zF2asDxSF{?3y^9yEd*Iqi+smTn>h{kxF*-a*3no16GtsFAF~*uqtJ^ZiAUD6-5Aue zegDe!i^I8=3I9%>c{GQ$&RUO89T?9B@0Fj8f$3``BbJ4^BfhR?SUIqUZ@`yPcZ_p^ z^DbVIdV^!&=&3hFkHHb%bu9jP^jOaQuagFgYqr|GSsMy5sv- z&a&=4LkT@^U@U6s@F8qH{2>gC+?=&A)zr}AraE9g*O)`RWz4GgTs=$ zDoMpzP72AC0AMLb46I{aW8#pKlO7JoYb(GS07QN}ctzZwzaJo4uOzvMs*;@7!ESIO zDK=5HqopoC&lD-~q-i9H!Sq*yT|RP?5P&x&pBvE;{HZ9h$x&Q&avp?e6g3xci%TEG z!NqIGF=cZz^z^_4C zMR>(GK{yBoDPP+rZsMvDxTd6`01x8m`&a-%-VYIlxqUVCC^BOYh(}{WA`u-&!cP~} z^8IQA12H1T_I-H%HPxw0IK8VF7_mT{BW`IA%O6Ml4E#>wftt8M(nF)zVuTy8qaj-) zElmzx4Jkxak;SM238 z5~alrB1iXqkiUpZuaEi4+sO=wJ$sO_e-dHuz`d2-0Y zEqqYJic3sNxVw03I<3LjOm>#oKVnL2zeL%Ehw#%+8=9*U*OQQ!Z0NW~e2kcOeXBSO zeaNU+E4V#fCZSc+vVx68jjOBVO^ak=lPIN)%gLh{nUJv=NQFuhqXEt&Jxb^SX7${U zW^PPX+;F=1TqKZ9X=;4^w?NtoqzBMhU_hbj>+DDQlHflYqZEJv=qrZ)sz5a%dDq3$ z2?o7>HvLoy^hJtO%p*=m^Fqb_NVZ?GMc+iCX@9CQu(}*oN#x!*e&-4AMU+hzRghVT zJ^?*6q~l)ah#H-A!Xy#CtGLn^9oi;dY3jhpbPd5x{5`|d*MZ`PT=__K0r!d0p&S%}zL>smo0*x>* zV(hgyi}13^5*$7R@?RuyVDlfighhYbVdXLFGdWM-Lu-1QVvsRy!9e&n;yQ7caDCmA z2!7*3$lcXE3y%{~PdP_(4gCAyUVgTlMcUz)sMh;`*I)cF)g|IO?;EEj$eDqEKGm1L z=C}AW;`4c*`F7b{F}E;+_Zi3P9cn6>+s&~PUoN|0uUt;!5$zlHF`8ZR=d1bb_ptE{ zllFhtbsn<@vOa}+J8GhAeF}l*b+|9_)V8zor{cEnNy5?5GhO_{&$6G^a7j7XcH~+u zIw%%LKDj1c_W#Ru$cu9_g>;?oM z$Dl|cb?FMQ2Ei|oGD%>;VQhs4bC6Ou)fa)USVlsnf_ElUI!WPT7UG04NuRs9_MT#F zylWq1E)=}+o}dmt@j$y8v~^0PK&F88`W_9R%bfQyo{RinMPk`a`B#l={63i{=gCKI zxKxmquYM8Ogi*G+8;z^^^@NM}B?6Kf-;l#?Q{v#Y?j*o6&x~XCkFYk0ZN#w4kFJFa z_mJZ;zWD&zaflnrjde0iwQuEHYTzpl%NAcvej*OGH*+?Ss%1msU%=PSSNJMUuf!8Z zQ=3R5>gsBYuVy3bfrc(5ZOUuLoKu2FOlHuD_2Q` zi@Cvi>`7Is$MoIDDUOwwmG2G3&#HJ*yx>0SPq&QXGsQekjsUsiOUKvl$)x>F2KXk-M z=e29thu_9tE>X1nmqb?N&c7eiAgXaj*A5|6K1)KG#l#^hedQ@}kng!LDU#*@S_IOi zAShrTqHL1q1%za45P=i?-Uu`@$RJtQWXD8_O{dmACO_P3a0J(9CD5R{im;!preZau zJnBW8CGh7d0)v!n;Y5ka7Qi+&Y=3S*)$E+Y(J`H3F@BOWtZz*tiYSHV_9S^<0Qow2 zO+ko^X*%otQT&g%VH0$SD65f3u`O^;(}Z85*q9c$VI%;W#QL)XbeF)BiY@(t=SD*8 zhC1c4b2<=()x|Wnulhzvn2Nn>yQ{wxFLa zc2us&R-CA&i61W?1e|0R7oC&xV^3G^D21P22ObAp822P>e=k^Al^TCyg2g7-(nO8e zK|$mas-NqxwI(7O;(OIg#xnCM<*Uh&@y^67*+qZzRCDo@kiUOvwz{5#_odi$!)Si6 zNS-jkCpfOJEQ}mEcv$aGc=GR8PM(uU!D(B{i}+O)H!2@kMSrnLA8S4)X(r|8@FT@u z<)g5(bKXZMxKxO zD{M=(I}DiGR>rX}9C7~Q_caI;R-~prHgus6d2$W@AN4$~KjbO}DaPqI*@OFx?WQV}g|&kwCo@z`)`_H<(qhCBSAvNiADIuFste zZqO~345GsX_j`{<^V$D3@r6xBP$EgJ_B~1P(QG9Zuf-e#PWb@;#v^zJ1p3ZJKgHUi z`VF9R(=UR&8Zu0=&S{X}n}i}4ssPrGYbwPn-T(mOJ_0Go#}_y+^2nHDymM*lX@g{6f%7_rz*rFR8O1O(F+WvR6Tg6|RcI=A`FrD;*O-Jn z*`DH5ij9@qflQh#C%@1}ynf+xz}$3r+uZG+Kssg)oOUuWO(m!O5pZ(i6s_E-Z`*jlV^gtKk|xcHLmTbdEEpoePYO zP&Wsbn?r;=VEmdtbUX^{;&s3V`+s5C!THRs*YC*jbQ*QM*Rd+zX^y>yp603V{>W#l z-lur4rH=Ryb*J!e)y(6R>f(4F;_1}Vihm8lM!g`17GGSPHZ-&Co-phkn18J?ap|jO zG8TA^#in1JD&+Twd*n`s zhN=A$Ec^}uO$032gFdF<@c?2X`*pv`pyJbw2nkCAnaI>dU`CNvzBwKW$m!;hhaaSY zxo+iespS+H0;yztvVip86974v38F_4ycFsoUZv+Cc1B9DSbXG4Dn@1d>$E{(%`<5Z z$6UP*PoyuxNne?$o%nqey@h|my~fvrNO6yitpST8NpMrHBDyfId{`fl{JK`@nt=`W zM_6y~#c^A>cQvAPY9J-CF@4`Z?8o&7+!%Iu4InnBCYINSm|vnFrxA=J`vLVYVxHo4DE>S40+tXJ1-;IH5 z!_}mIO(u!q&c}38!c(DRYR1?|we`Uz5#}i52vgPxfcHhl_a!FrI@W&Sz{0>($I5T6 zJ;>X|cN2bpi9^WEamwkh$Nz;9W9s;e+xjG@Y|N(f@#7Jr{;Yj2Te!A5HhO?~)i&f2 z*VZ|2F~W%+PHzxH%~?Dpr&w-Zxel$~DGYvU|B;gxb{gkG>@9JKzM>6?`@}?XhT4m# z`HQy;Q;hK=$Ap3F*%yzL4~M@3R~y)3oSLc5p%y#BwAv5qFx~p7AXV`uA%W z>w`qB>5xEkMV*(HV48i6jXP7&SAh6h=Fs&w~p6_NVk!h2}@LWOtbL6>22jLWp z=OQMG*SeOIgVltHfb=6|!_|bL78J&qaEy~)e~6zr0oJs)_XNUIakr*pG;C;=(tVAW z0k761!VRl!CKBGUml_bo@(?#a8oetv2Y&wLG!bwwk}&!&2)B;mg(rynF?sr^3#qAF zWRe*FE@EKyN4||FE#%o~P>oYR_H$0HLi5!*?OfzLT{D4=eAmC9R}*AXA8Kcsc&;P< zfp-mIB}@dLeEMjjKO3U7|6>3{TqK4uE<1K)%TMkh@oY_hkr#z0V=crf=5dH8#@ooB zdWSew%<*(B@kTXzU=m|G43b9e7PbzXvkv;17}PMAlL+5fjCV!*6Pr?A9Q}gpzXwXO zo(U%wFML1$;-kjbdSpK<2zF(QUem#$+n>Vx^;HzwB*n+ovzf;x0Z=}tAIBcaqXO4E zxney(^o7Pk^2w7gF=hs72?}U(o&l~m91I&tx=ErMmk6R^;@Q`+=mii>MoQ$#Q&2be ztAJi$my~G&h(W;w*u*+bn+;ebUq?d_zl#w7Yb4dx*zmrvz5#ah-3MS*Az9ylc^BkH zoB)=Z@dbEJr1IalwA(dXcPw8zlzvFdU`#FdcW3+Lgmu{%TI^MKz|RBs@Cd;{~{Vm41wK}pcD(1 zNYiK#+?0nC4;<)n8Sd2JJP4yWcBJC?rm}h*)M-01O3^LAw{KgW+ zgMNP^iYX7d4q^ZJRqsuLQsbg>Jc`fAv4tffs!hN}OgitGqailRCJ86p%(n1&<@41z z8MDF!>8C(zg3gBC^$0ngn)=ZsSDYl?<2pd6V-NM`6B7=fkNbdq{dc`@oa#wfkzydl zCb`=Cj=>ShLo^(S^%}m30?2`ZZU!qyN)YhrIDY=%0P0r#?#XMi+8lW^nb@pm?MXKW!a{VwMMon&yB+t$3_yZ;K#_LXeaVK`JD?KM_zBz%61h86A`a#sE^DI$nj5aW)8EXo3ewl0?|P%!Ugu0A*UScNtDgf@4>@?V;OaE$JXsS&5IEt%83-&(K8R{K}r%6zYDMkA=Bj=pBC zmjIfMZK;`ZgTj5LhVm=tVgvdvc;KhkMZx34e@R4q)*GJ1-P*M z@MYPMv7h2R;%O52h(F5dL5fM3kvA52td5UInk)wa_7W;iLK3FFmmuIt%E%A-IZhs3 zYu%`mm>M5Hj#Mte_lj8(b3Xrz4C%U&V>&MANd%i2*R)~Fw5}lhbnGhT$Qe49zii3- zISj$y6M0TGr?E4LvFkJ9uj`U*aN(?D)3wZ4R-aeHJTUseipHm^CB$uG^l>cJ9BFZy zbgJrV%z}_HxRzqYLhxt^5?+a?q`_CLJ;2~GFo4|_msURYa|2$leH``V8ffuV<5^hu zYH*nY@6YRNcfN*p5caT%OJaNHh`FS3=cuENF+rSLVn*=S;uxV17(D=UIACNFU!NGDaX>)0%V)69R?v@{8zKt}Q~G*28ze4iwW?t`jE`;ndMLHUJCD zltZg{I6l%5Gv&zouAJ6u+l>ZY4QIs>3BQ}*g`vjL${ELon(p+R^5^fz5bh zp}^}S@zANFAsT!f=NoGaq^*`WFx8m$hX&|NpdN8YY%w1AR2$Yi$ffh=IO5r+CvVU@ zA_m#k2aj;Px<(Za#-_gPK%CQi3P0BLHt-Ez>)0R;#n@I;P)my9;UzejkFh>+uZXRV zIn^lUx_Ltq@z_ixVT`2zt9B*)IXP?c)z?Wz@e&I#u~CQU(lzy0lMt|A?d#%}Zgi?9 zSvZg|Yiu68D%JF_d@RgHJ*+s44L0M9coBr6*kpfA;zO*TdlP4K40}lMHHb?w%rX*% z8}pX;hO5DiLxUgUfrZOd-xF3f*JjNW7ch1vVei6o+QxY@?r}bay4Lm3m@ka%nAGW+ z6(2_}jY8x5@`2yv_4s^=@8V~xuGMn}=+Yquw9tqr!o`NOjpt()AMd#wJwQ7p_C-=Y z0>4!-6dV@Bq#BQcp`x}X!wCeS4y|TcpRI<`Ng_hDK*g$$f%XDBfn`z)$J)4Vl3Et} zFd-xnanV>sL|MJS25T4!W+J&)!4dKA_2J!@pfv#b_+Ha!{19^s$Y?hf-Ei!82|R}# z1_1bL3kDV2;Q~rMXT&qtQ9$LjsQ_5u8wJ{GF74;ZUC8H(rz!|b*$+(wiR2gYe4hD( z#Ec{C@bADIH#ng|baAT~EnG4gNces>`@|Pw+Z7+R7=6A97D>Lb<){tOUx(c;eClU} zcdmPm*lZj+2>Zf_bbMJSJ`#a-tUvEH(Y649U@!q$@kp!>`CX4nLV_`7h#$f+H*vp2 z;P|x~HQZ4!BPP*K#FUUf!!G7DiCi&uj`t+;-f@wHnq%s1?lGQ$T=Ak&n7%l`syPp%p3fIFVd<~np0mRzfxVOIpcTD2p>T~Qj#Pg`1 z`aAuzur6UYYRwSLfQ`0O6lkhOB)`{Q0-g>&c-3O}cj5FO{dE1@K1l>|DKFQeYooOp zC15)MhHZ7m*Cs`QAVTLJfU%l*IxaP*4%!evBT=co;Mt1=J3vVUNWw)Bdi~+=moj`F z1ES4!jCCDN#ClJHf01l}36pFjrYFu;vEYX*X&p-}#H$E}A~(nZ;&u@>C3{lold#i! zKfvPOpVzTk6D&8*ou&FO*djh^EsF@_-iqNR2r+N{%oG!RW>|ZDyhu-2Zv;Ew%xGvu zuqw97=G~lfQt*K}?TbVhY7GY3P`uVUL}HV_%SN$@HNNoV3S;(&n^d&hWy067b{&Bm zIrvL>_?Y^y2JMtUyvy;Vh5h;Hz8n2O65=Tli9q%% zeb1#O(RM8TmwyA%8}%cR-{XYZhzHs;#5TVwvjl-4Hbf!7wYD~XH7CHlWuw9%e(*y; zvA`Fb!4%ISr;PLTe>Ln6t`S4kkab>b4`)NCW^fH;Qk_+vJbW)SVr#1CL_c`az;1Gn zaDCLPNhrJ!T~P2 z?pfDCoYM5q$5*_@6x{0?f*ArmHku?)YB)@K5-A+}Q=zq(&;fM-V^j}=3bhn`0px1T z0dNE!$93=JXo9|q_#nS54v1ZY@`#&22(CiRb&fSBMKKk@1FY=J`n>?+A$jx%@;3q* z5Xj;YpFO~icJR9n^5Q}i$sP+60h%c3V}2$ue7}l}G4P75^7#_EQiDkQCc+WOXFQHo z@y~Y{ryLWqOaIEksdyXtoy1jPwpI4Je@q(#CNaMk9?D0nQFpVGo*&|F349hT*r=ce zjT|a02yr#Y9DM^noXsn)PkHF3FJU&ZC=#ty8@Lbig3E6yX1*{gh!fBHjj_LowEXUP zw#Z(XXRPfQe|_9FQrHy9S>5A$mB=h?vcz(c*Tx=BOA`qt9`pGY=PQ2Y-)f{sJxDm= z`kr#`I02C+cf-cWE#k-Ur>DklN-7U6awvw(+ZLZuljfLtnxDcv#p|kh>BO2FzmzA$ znveRF#4Piq#@`@r_1??@Di%|HQoNg6cawEs=T*zx@Gswo+*|?^W1M}8eVPV}+!tfr zzE)lj>_~aTQ&h?!pBN~-ZoE&it34X`>v!632zkjCd zT3pWklW};(j&Lyg$hm8LbdQztuwo;eq%2>?K}*5jUjP6g07*naR9_Mc0gAy#Uk4 zVrfhN%&G1mxd^!BYmtGG00tS6l*cwE3Jlb`-vC|fA#osS{wNA2TCu2#0H;FCSa|%P zxa73L$C;L5Oz`w`F7f6_WX8k-*so)eKM2|9(JB+Q*KckH)-g^3{2xel$E&b|u|5iI zAO%13Q3WR2&_W^NbTx+}gX=i1a|FM~NtSJE^6m!51%|(epVJieB*0qhmCI?`atSuq z$%)1aVxpTo6+V*|ia-nd*sC07xEFCsZ z7>hXPUKY8%FpM}6h;2Q7VX_)T+8~}fFnN_&vPhYa5GtRe@EX3FGirijbF4Y}Ror7u z%6>G|{rszzq-Mal&AKOS9?eo{*ey`8wx3OP;)-c9t+?rldd29mZVxyb`+=dONq+xc ze*9Ip2d)KPYRs|?ThOp?_^hLbb*@}_ZLSq+X74lA0oZob-H&=zb$B$+jw9z5p6B|W zh8k-!8u*d>2;y`9tU8(M5&b_J-9O}saXI;(c(+a|F*gF9{kzv3wCq0yCC4!7x;Ev= zXp~(S6ju~_x@HD$w{i=)_k|sP{u&bc>u$({t4|$`uY9}e>AU~bS1pVWjk|{qi(9?V zUpVa2o3ukA9BXF8A#eauK(4=^y$2$Y8mLk10QwB90qg+q z`uq5oYNmefpbbTBsjY~aMOHHx#zbYu9U{*m)Ils^a?+ z@J2ztjw~MHj*EG{gEse(xF+wZc~pHQxm=U5gQ!2x{|osS9uEP^(8Dhrn0&YJ#C#+*ctIFkqJvLcgnWC}lY9}T+*eI(TtI@x!4-X6?^RB8+}Z|} zFJHA^ebK-fG7@ z;f>8u0C*-`O3>$XqW%YH40R<;MixLH0oDnjVD(X^x{m+4Xb$5C!jr(2+jRlE>^c<8 zkSI%}aDaX^k0WM~tgE5_ND?c+L($e+djC#9Hwggl2s98fOO|fg?Q6zZy2$&x+FA=iPoTY~2Y8*!_xxqb}swl)4 z5&0tOvgL&%jU9-eF{%0@_DOVOoHDNEFWQJThX@$z!rBWPEeS^>4pO6k z3F+`vy{|d*VcR7FrJSQ3_#F6Ya5k@lac(>ff>Grk>u2KrQJ}Q#Q`7Ht+y1DBt1-0D zp?hn4#wa&q6-yRq`|qd&r%>%C>S~O`ey(^;@9(%*&MYBTvGFS>IE)*-7r2}7Vc0HV zwCa@mjd*g&xXt{$1`}VLo>-cEsTlkvhMG&oeB(2XZ=trv3BOOIt9Fg|j$-6QQzAN% z>bY(@SK=hc*y&2j0uVP?1d-l|8kokX*I<|W(jb)xdH~x&fNa#G0ay*X34;>5!6%WS zkAgGyOeK@+GPz8RoSL@bOWWkI(Z4^tF&KVJYkD`pcuXP#_sIg;@5Gu$Gy2{*lJtW> zPzbRI;?E+O8Cb3+G?2e%F9aONLK|WJVBsM(ZzdDZ+DTB3!s!M*=3e)OHv+3mY z8;uWfi8&S<9pw<$X7P03U1|hGI7Vy+(h?g+_{s2QAtvq9BFf0gUtbR*HXK;{C7=<5 zM*Z?B1>1tBhb$6ZoC(G;A4v^L;a1_AYv%AfW5WIjHKOaYxKHFs2cfU+L|(`IIo`qj zjTm4MT_?oUn5SmPzI}4T_3darS8Yvo-F)yk_I(O9uZ@Z?MBc*nIl0s%88`ZO;!nV+ zfia35+HCO#;1|WFff4D{AZwj5iOjslIsOTwCLX;P118x0APv*RfRaylWw z0QNppG9B@hY{y24#FB*jnjAcFaS+`&xj#U<;;NHV;2E3h@a_?p%!34Owy8j}ZdnCH zs-+3(Ib~t9g*bYSnuYyVjIa>(T2j-_LQ#7s;G5uG?<4?U`Jo1B;Gv3B+MDzGY}U(1 zDdqzSYJ3WXu8Y5Nc!^H|n;FZgDRwi|;dT_!H7Qj*EPO!xjwU43f{xn{;b0M;L{_R6 z2s>9ZmSUOst|p9eZ8AOV%qgufhT`24F_Zs3;&qWi#SUXN`Nf#JV&%uQfU)xL-bJc{ zU_v-sKeHYMqP;NWtMN;X1~6e@l>KacxpEjWyqYWKk8wpf)wL+tyPxZPBvB2uI0?6o zQQChDYM2A^iJNgw+l(&@Ti`E?CXCOBQz6ei^>;ivzPz4P|LYz%rk_Gtz~v!mav}2D zFaKVG$--gA=v60df5q=#PHZKP@YF717kx#X7q*tqo!0}a#64n@emr+!9-H65g*?Pu zr&-?jjK5PPNc^hqalN|)K0oj9*(Ev-u7GDH9_q$3^*+P55)YP`@$ND4&T`Qb$lS<> z{*}Gom*6t$`w@dtj88SX{1pU?RX4+c`nhIJNMRrr@5jgtl=o+XZCzuPC4soFZR4u| zTFsBwiIlAOIVe+ z?Ms4}n@L zM$X{t_&nnMvpM4$5QomSR7_0jBKZ|&MZ6Z7ul(;O3bEJ%LuzRL%X8jmS^!=7@e9vW zGxRk@4cNFu6vWBOPt=3Y9zb|IG^9C7_i zBH@VZc3cPS-vYN|kiPs{N8rLM?ig?H&!ZNZ8&@u0T&XYhFXH084Gs$P&aYhgZ~w*+Xt z*K3OXPKwv7kroa%?mKtOF^Y3H;*Y)ACx!Q}en>Uoc?G$9I91beQeap&jbjre3j|&K zeY`9cu@r2n(RFf!Yb*qGlF7J39Xp!eQItf6N2B}883hy~jA=r2Hj)?VXW_aMC`|j3 zI!S^{pM5s*O3DTUti==CMQ;8=q)}{57QO@`llHoIB%u=y_Nv%t(Hzqv+ux!_5Hwcu z^8Jd%1iB4wjtPno+EZ%YM}n8XLQ#v2wetHS2-mcv{X$?$AQixQ05X8AVm4vGAVm@> zx|w8gcCLnaUJB`Pj{*O)VOBnk=?Z-#@Qy_R1;(d+(pM2Y1s%$H*xMqB7pZ1!VNJ0R zJ6}*}S(w|$d>)IM?puOV@~3LV!ZOzY<^XGvNZ!Z|3IJaME8`&45AQ#z_2Zf=7LG<~ z)a=(TYf2u(__O{7!sMyqigjQZYsL@+{Qbgk3ZQY$SOXhd?CJdzU#>dOugmD?Q9qos zY>4RNfN3E#o4_q1$6Wou)RT}~C`W83lD+CtX!_FB(|a2HBl+qB&nj0t*K9-Ks`0Yc z;@G-uw1xy+n{vG0l}?|rX3K9;1VT(~MZQpb_LTeK4N0sLZmnbH#3;l~VFllp#0U%BBSt?&mL(>; zU(>xyP*2ZRy-q@*vAc5h*{}OS=TVye2hKe(&>WVyE6%)l5qvjd9sNi1kbp<+!_cqA ziM~1efdQSrT3_e?Ah<}B5xiFRU33_@9|}hsI~1)LuvS0;#$9-o=uRwxT58^%uuI(v zq|C}#6OfdYiNNT((I}^YIgZkdsSJJRU_BJ{w#^5SC1rUKYLVMfv;?G9#8Pwl+2q2R zCKQ!GCuoL3!nLlZA~h7QkXB_y)Y5UUMKqE)6^IiH?E-oxx7Tge?!(BdgfBX>&0Mx$X%`xn%%9?@J{6A{xdF`F!Dc z@(Hkof|iR<+v+%W$XFcH_e*GSGtLH3Hb}&<-^b^$;FWENlm1+GUk!z?3y~Hd>1aY?~lBVB%ga`?4`Q%+Pbhj9(&}wU1OPhL1=LEVjC@@ z%lNozqt{HIh8T6tU(+~~;xE5^@ga%uY{<@fDh!F(20S0N@8T;7Z+xxrIyJ#<){8eF zPtPWX*IcIq)TC6+tmf;f8)<5)Q&^+!3dcq>j~M$^YX%SIedKuJ z`U(l+e~6xV)?+g@8fDkmtOx8bGkF<&yf4L@>t;B~(HIkAzrXh}R89ebNdWxu{MZH3z{wH z0@+T19TlEXBniwBY`8fj{+K#ppTog2j8&Ze*oBM%4&ZeHEW7xqYD!uwpJ|GmNV370 z32G2Hiv2a+^@L^kq-<*y^MhC|qD#N~=a5iz+akmU5FI&8(?~v}$&X0#5R0_uim6i4 zn{bkh)ILmf3|6608BNd^xGDE6E?g6M&XS5sPf-mfqz59F_Ff-t+E zRV1IJQ~Nqeqp)!aVkuA63_cBz*G*e+EzTvz6xL$=8#X9ESWJSS8*6_FL-2K)+;xls zmxk}qU{!vOS`em2onMNV@+a{iiMx$SNkCO|W~?LU8+p!kn&g*{+{ik1gAhD&`PYOs zG)YXwh0DgHA4j|gXFX!5u6>MkzNda3y;}J>?B&8{$3Yw}(yoXl#sz!72V+AF^}B4lP&19c1JAG6 zaUDF?kb3H6&v%W@^}VMRs901h;CcuP-f*Ugn3|bXAZX-NFrLo|)@~Y(fL_lE&R+o^ zid;V@0B0nxCPvjn^Y1K9YLK|5G@TlxNzdd|Y!sm67Z+ZW-_ZR3brLd^F8Rv|;D#rG z!W!df}TW& z1zcQL66r+PMpMATB+yI+#l((;y=*;5xC&@&@}!WiY0uTHfeZ`{%9uqohaJI3C34E4WfI`2JFD& z6~AhJnmDLcMC-ZgFHV8De{d&HaT(W!SC zeNs4yTmI>RWnq}PLapn_tJqgDhu`NeU$Pd6XR@~$B1qtMw80QlUAMUY^t0l^xiIiC zVKsBoxdGp4;G z2}d$piLBBGyRi#9Vdao#A9gv}^?L7zba!nS-^St(}NNca-C`YX|1!=tuNgGvG zlXdPV70N3)_`X2!x|t7C_z0dZp4e-Q8^lVfR8AJhM=UO~=>RQ)MUfd38J=9YKu#bT zfx@|>X2%6%2|CUl`s5FOHOR00F-g4aKpPwl>naiw>!J@X5?ck5HU?-@+)7jF)qt_M zg~^z)&mzMjZx{JIrha3+$kmYpAuc)LTm?iJH^h=e^etk*Cb3Co0XBiMIO<$T?`Ljv zuOfYaiX%;HTo*eRv5rVy8E4GZu)fith$M^#Pef-BeBk)MAKl=Ly|d=(gpyCm#TqYR z@_8TeHwl*_w4+&okKKr@I!fG1O-jI%E_^1A$$Qir=GJu$qG(wy~`i z2TDG4Jg{zEHd1_bJygs-*x`Xmy)SUQfpNhH&#i$IFfYhQQ!FRG%4X>c%RNy{CpCJF zJgVxNN&6`_2ku)$OM7?2sv+01hXtmJIrHL9hX4JcW7j@TC#Vw74R}1J?{1n|qgW^2 z80b@SSby1`pScbfP7Hw-&m5l<&q?#GH_9bvcEaZFe^T=5babY*tgwFq}l@=jTL)ll@6(gtlp`N$u`v=#4 z{F=C>^E2gJ<%2Ntd4HOQ3=rU=KMLIR2Ci= z|5R8+G~34l?shQN(cl;Yk%YMuIRMzFfWZI=gu#jK>1hmRCRb>7UwV|ns< z6i0|(I{uxA3irOI>cnAO=!T|i$049N&m;LuBp$gp-eFSxAx;m1Z9JENP+J^LPG~&b z7<9hFUg>Xa`1pAg(z(`D3-~U7Jj~^No^Nr;LWuZgVVCj6ClHnx zkQ%V7=|?O(M_cIP^EjAO@8k(CIlK3AeMYQ{TqwjEZEPWJ*-rP5&o3Xk!4_U$*z!DE zwQZeNP%Rn!IAM@EuQ6J}RrCol+|9f>PU6Vv)bcut<>2^I@B%3xMK1(k1Lha_e2~Kt zG&~+)K_E5wd?!h~0E?HcB=xmHRbC{d?y-}Z#G&b5Kf zv_+Cs@KZsgKoBNj1&RZxIaMfdGU&1x{{k@Kg;i(zW)&HcxHg-LcbfQ*XN5ehy|0EU z5u$K>CWk9XRyW6z9HH~h9ii038Ph4q;{Ud?^ujd6e{4O|zF zO!X$=0M?u)wCAasbOK2E9fbu1#W|4-L_66d3KBsyAB{QfL*Ao? z*^orqaByzCpM)k8pZ^TD`#_mD7V`Rl#bHK+L=Yp@%rgiFdn;^jEy_=Um1zp)PE zfpGIWay&Q~u~YoQ_?%9+IL^#pS}0BZ4t;Gb_PRptvtYIAiMj28dB%l-J;~q5iNt5Q z=OGjm?^K_d2WP($PM$;&?S0QWy`~yBIGgtLt2UXn&KpU{&*x>C6E>C z)HJhbJAqe0uEY;yIucV5@}j;6Q$kLyM;{tzt&aO+s08-Nu9Zyb(dU?Lr+n;rLW?5&ec z&J(Y{-h0GEB6OoT*LxkK^zpAoHZ;tgb6@K-nHEu5lLPLZYof0|PJgYYO&C51%<-I6 z?4{P57}382>xFksz7Ao?!sg1!t5J~eT6ha2e&DY}!w!dp7e5FmbN3W~{EQ>+7w)re zF@7As;kwmW9&yaQo3|Ldmyju}9Ql~m7@CnQh89-7&s!YPJSI$w2EMuu5}R1ViTA*| zTJJbIZQqE8#M)v3%VJ5Y1>rdNzso!{SPdI&7aPTdO&Zd8;Ko?BpwzX-7)bF(csFXM zc=0+xWS@NuZ^kJg`!Ng;;wjP>&n&{ne#5pbKZbXAEGbt;o&Vzcj&)vZp9|X}N4at~ ztZ&3!;=aN6=F-gZRX>8zH-sf~3f5xy;Hxgh=2n=N@G%Vm$KC?Y#rz2zih|z2jes!~ zKaIP>$WI?f@)XqI7340uYN)8R5G)&n9V{%?CVC;6yeYpU7Ogip#@eogU?A0foXiMt z?W7dc3?i$ee<==iza9M~p==b7#4*qaytUVQK@v)+^1&WOwyePZ#XnA})YvR#H^klY z=K%uCexadA$;Q~X&@u8N5LmvZ0*=c*mID@CFsy* zhnTa3z{`IujLOA@VJyI@8Ix^Yi%tXWi^Z29jt^GcD&n6OfTwhV6-RuwU%|BP{yGAiy zcuf$pMlAWhYuXY728v*91KEyolJaOZ)U?@w(TSt1n(79r@Yi+2jS+DgnCnUIAk9}k zDZa`ye-V&>5&x7!i&u_|@C#!()SFR9^$c^}LB>;^@QIzW=@+LBIQkd6RYZm`5O`LD6T{zG=$UJBM*7_8Kqp$EYjpfce30cp&)km(uUZ`(lK#}@B z<=-bqxcq>%C%$i+{}Oa*3fGGjpFW|NPF^uL`vLWqP;keB!=@K#9L^gPpj3QCnx4l5 zGEmO9iqRl*GyuyPB6{mT++;`6M*hwS12iPS04v#gOfIa5mJQP1Jq-(_=OhONMK|OZ zu_|B*fN)Op)M&Y>Gk8T(ARytM)^tEJFgpMMAOJ~3K~z))CMx*=$W$bT*dbr01hm*P zY#u;nBs5}y?_IZ2iZC z?EAy^i#P;Cu) z9b&f0Hc8;P&JCEG&ZA+xYDd+N@jk_%OBhM8$($RFbaXz}9@{oe!+;MaIIEFB-bV}) zc^|P0e0g#-5IPdLft$6D(8P^>19#iLZlpfy-|07#wvTwRAAQnq;1lp;HIqpkBc}<1 zOWFIG>N4JRpZ(HyS0mGYD!Zo7O$dL8I}{-Yo?Nkt_#6VJI2eiQ;5&$kIALZYCXwKZ zm$0rOEL|~cPKdmS_)EK7Ct2zlikS;jV(kaFTi9qW=e=3v>cTUNey9_S^(JD%x)DdT{rjBQ;9#l~3uGc1!iy2F%)JnIt4`us z=|s_4hH(cA`h_y!hG4Tn;cxsH4Go$%ty$$bt_Rcy`xGXGP0}J}r z@A$gc82tV|u(tk|@ZBdhT*LJI#(;{gOH8t07*4uWoD3cm_LF#loBB^7hp{eBz`P;1 zUMGtb6SPAT4D0hH{3>US;{%h$N&h`_;9nBI=xfA{bNqRh>ZAEx$MSJX;LCq&Si=}5 zp7@lZF~YUp+~`*iq}&;CLmUYHH5SnxBTTX8$A3@q1?Q!p;I%2&to(g83N)4tV^Bf@ zwONgc-$3H%-AGi_DRjh@=dXc>rM&jXp^S$+i-{ zV*tLZOH4XEW#)DCpT#QgzkM5y=&YFHRD-eYCa=~X@}2Ac%HxGGCXn{6N#R#hqax;< zGI@$qMdaVrm|g5$lG(zU)KCtgBIR{Bx*oAP)XRazDb~w=d~b^R0apL}i-kYu)RVi{_iXKt zs|kWV-TW^x>&ii4mE)xSbcr`1XYE^>CmpFb7B1`$c}9BfF(l;Q$j>s?kxNU6NqHsA8ci>AkF|&a zgAW8me z{CMBL>R###e$?nsoPOW4ct787;WddIevU-o!Q~O>3&R=v7BS?Lvj(mYJ`BVrb2PHy zWmK}BU=LtxIq2q%z8niq*pLWXjBh$|@{eZ4SqG-gd{caB1^;z*Akk+*l82}CC^fwO!;`$ zP9KLO-iTZUE`K)x;#RqHy&Rv4Fd) zv2+decMZRAEj1FZ#jby;d0<_5e;z)9krOX?d`jMfb&W}%n~)GA&YRD=tM@Enh?qof zK!0J~i#XG7Y)oO(7_%R>{Mnze1o29|tz1bH&Sz;N_Q?-d6F%1Q#~R66bYWC#L+L+}bbiUBdy_HpiL!n|c^|;JdeR^3|NPaunDw1V%i! zp7ZcMgQZVTg(LC<3)9K7fF0vqY;1`UA&1WRlE1yC+LkBijDg;|a^~vw1`Y*`CVyrR z8~GaXfIk1?Ah3`7rICB}yz%1H(2*=+5srxlmLHQGCY{N`I-)_)QxQlcf9&aK9!Jva znsvXAeR0#F$r;HmyL~kQ>!=BxXwoV&`tQNHO z!Oi8Gew1BI$O&jvyX3Fc5V$!kfDG^H>8AnFjlwm>=d=0zKu+C6toY!BT4auZbxv;N z(-iju_?-77ML~>6jY<+thQC9TH3*D~h!uD?EGCu1o~fXfJ>;V(^n4WpX~`#Opzavt-?@k{Jd{;ha4`A@b{F0RIu#LxCT8uTO@ zB^!~Ho~OZ>ONyiCnOCj{oKECzP3Re8VSj6Ss`}C7hB<8lDm-ms7D(9_-X~m%*QY%R zV>+L(?vua=f@Dl>@)ct6c?I5YB4yENT+jPL?Q{H&xT7C_GzC5_^VkRY)wZ#{#Lw2L zo4^4bQ==9h_8UAe)Q{2J`M9lObKo8GO^wLP6*s!(FywFtR#XoAL`V62HA;#bUROR^ z&BME=QPVyq+I-H%kviU8JA^xHlC2XO7Alw*7J2z-3+=;x0h3arecp35gqKKl)a=HT z)ND#{VY6oFKKa^Leg8P^bDbWdjTXmB&1S{bh3~~3iBsgnz`@wR9Pjk0%{28kUKw*o zY+dyz)KKF}<*$9+d0BXZXRV=GnzFk-AtoaZr_+7J>y#7!p1B& z#<<9GJ~s+urD=WH(BLzsNi0+fpcB{xkTkGC)iE&ws{+0*veAzwcaS(F#Zw3`q2Uk! z7Ll~bz@p@0ZSW32xWMQj5}yk6A>usAbdhSui4x1lafa=zC??YCm{wsMF&6e58&Do^ zOa$tE=OQce(P~ujegkI$(lu==+a+;@#q1EU;(9C^5LDf$ULuBK+Ic-1rt%l#1@W62 z5etBeM4BKYcgD3LMwvRF(>)c#E+Bp;izADNVZ*f>Zz~Wf6>*gzRB_#YVaz9C*7d@*B;}TmkJi4CqYHb3&l*Q{ zS}E@Ji%d&cja(D{^vSu#%!KE{4BMK&#~c%$U4lgNo3S$TGsZ}W)AaR&!3XL8fOoyF zzz6EHtGSE32KHPhJ%sVgp5av6vj*VS>I0HZlHf(&%pBm5LD)J(KiF=q$Gp^bPCZr< zu|4&ty=u+J8j1JDnR3a>o0OM)kMS<`ljeGXVVxL%k)blj};o8Izmw4!F6W1Wd zg`vcV)fBkP0jY?+8;uGck>)z)5t@Sn*-`ZDxcB#=T#BTOViwl<{E10Krzz=A`y`u) z6pbJaj&p-BiiyEoBxg)jYmWw40QyjE4*=-of^Qz5*j8>_@O~dhVJQ5$iA@dN0sbaP z^lefiy~peNLGnxt1z-g71qLDm>1g1;H6(&QnjtCMi+E^iItU+~kfs#@C_CA;NUADI_Fhv1Ga7R2b&(en_=^mDGzeTz#f?c# zH@+$+>3aL=RJ*m-)lg7O6uBmb7*8YCbKS%i{Jryq*v*=fVmf?2@G0!EbJOA>G54c! zZ+y8h*9E+;OL@ooa@;rU`|H`swyA;pvle681b5JZk;CpUtx&)4+vD;8kaBx3gT&?KI*^5b-c zZAy$fn#?FdqzLa_FoMzszF+A2njJ^h3odd$h zUJ~<=v3kXrF#vlUHJED-Cnq0_cKs11B;Gy59lT@J;}rN>$B2^>-Fd z&r@#@gpb6JSH7jV5qDX9J=rRVB8d|&kqowtJ?p=H#ir1JX4S?(9f)u{g^iVp2NNTy z-wytBGW4!DO;JaZ`>4V(v0aL?LElNk!s>#YfX&xiU@*WOU^FI~^3ei#k=xa12vo{$ zsW~4xYcL4lxC(p_REFR{d+T`*AiWFV$%8@I6B!9Wotk?$p8sAoCNRm@1tM$!f;lS-b}8WVms5XytLuTSv= zdk?Iq;;&e5aVL>atk<=p>dR;hm~Sf96zB?b(qwnUg7TN7ZqzQ}1Tk&oXK094;YXf~ zcvkNA9zw1ro1`hp@aKo^R<2xr2~(`qAktRi8J?;QLF^LwMD~~e7{eE?vyr&+`k2Ie z3i&ChT!Lc|i`H}400eyMdYMj_F{a4b!gIzXmgLq%ni!?^$L9SyZJ9WvFyhR0ufc)~ zp40V?{8jI1n-fz*Zm+32<5(DbPLSX0*5|-d$3HP}31dO@vVDr>6-%L344b&$apy z6%>KERgl#n7=Q%$1~xZWOokQ63D78fmDzN zNN`UD@~K%#ah3#$u%`CoL0k-WL+w*zv>NbVqJiu{F>K_70U|v&sfDlo9wl7o zWEs20Za)98OVz?v_ABgYUumBdN6r&F5@zVr)u<)nCr&W(EAc%|Y9odPev%rs z#4+mqB)6kUX7isom+&Sv=_~hLCqgcxt_sXlYa3r;^V)c zqlhB=nFqBW-XARRkDkDSNaEm*Li;X%OMUJKXG zJh!um$?jEBElf2-IqyBkeo)U@F+Jm zFr~<)V_&f$M3NAcM?-40PX+VSuCRdtZvcpcNhFa;-Hki%0r-ve$S(_Y?fV0)`u(9v zHQ^edtLE$hH8)|}hYL%bNSR;}lv43^<50=U^@-f1Jx3qf4*-HRiF-f_i5}Hh7PFxK zyGd-D3qVFebrW`oU1NQIUa-+g5-F5uKcjgOPIT@CA0?q}#2ZNhidz)7F5EN8J&H61 zv1>z(PEaGhh-xILG zQ=N|SE53!TC&^Q-={z{d!B``k8pPGgzl8Hw^Umhry>I#Sh>6BflB`2aY`=4#d@l0S zBJF6hQk`V2bR#Sbf9%P9vZkqySWLgf^^|*bL28@^zmUyFoCe#jJ(TTqZDCe70`GN& zDJJz^)4$7Glrzo}H<6DE*Dn#;c29dSMjEg5`)IrrXU3psZ+xe1C;VFtN7^&%PpCzS zQw|?oel+F_)9Gj9MSbSsNBVnnMXw$BzeK~pAxHCP8yo)=lVe?MPKD9+Yg+R<8Jn6( z;)v}@d*ibq$jH~J#;rW&KuP%RTpdCV2NlBNH5hUu30z&Vk=9WDFy;sDYaBJF9`7Sw zNSr(K;^5nbf5awYqD8!u>no-bXZVaq)*Z*E>eR@IBfo|y`oZ6Qq9f)2)-xLVM1mMZ z36PS5h7$~23c3VJp1ds*6G#Vb%%8u2+^WpK`z}(wrhx)JzLQ3efMXjNa0G-)HDo~| zi4j<>MxD?7XgsZ;u4V~)e{2>C+DN+h`jnLG1cpx?d@1+=j5|gdqN-$x84(c_wa3#`gNizJ~bZC|IDN=iNfzkX(MfelFT z3vky|Jrqw9>&|WD$ZGUybNL|_@t}~8_Za9efd^~qN$o`#HFc?5f94Tw&M7DSeTu7$ zRr|~M?&+HMf$QV@bkunjwA8dwAW3-W;^4+sB#?0yMU`;TNG)elbsm8%Ts+ntzcieZvb2s_IgQ|6lz+Q1B z0{$r^Nr32>IQDApuxwm)Rnx6RC=(v0Y1NoiBiG$@upaT*7RRbKtmhIp3SWeSBWqq=o4qUh}1Z(rgggdMUh_CYFdY?p` zGp64UMh|iDQN~alR=^gik?xpNY!D|;F6LUn91xc=?hYT&w&JOm2*SU|eFdJq25PYL z;Qzl)lgU56H|2}-{&@s!-Z693%Vmc!=^ng`!W%iFeAY34T%U$wKYJMa&|L25;f7CN z`;g;Z`zu?Hesnb3znWEosvSVW#6_6^Ac*5p6dGQn@)Qe_awBJs39a7YBQR8Sm^5ub z0%;0FfRLZo`kDjug!07jc=K0!#0nLe;0HLoT(0TIaJ%<7r3Hc#(w4a!Zj3@lPr#Hc# ziRdKoxq#k<*fBQ1o;DD^Fut#Q`tR@F)?`8U?={mFCY2OHj<~6{nWRum8TP6CVllX4 zKCF4=1oAcE8r=TB|3{Da533P71d)H2_eq2cM_4q4D_!u3VI*TZMGy<|MWUFytOu!9 zg_Y(Yx`mr2@QY6*URRjz_>+xOW79aybtKyvmx;Xz`-v46-j6+8 zxG`$Q^|cS4PEaEe1&M(3qaG{YYdggHiZ#Z_5KGcC+~gb+6ZyhrBiG3x@V>Shr)PfjPWCI~WW>7T^N81zuZB~Pqc1vozs53(GQwbs zdm|r}LyxUl0}h;7?>%_H!Yt&pYv37~}Q&EzzK%Uk#00~ENW;H9kj=oCqDZ)tsWF;AVvxq5U4T;*xZo%Rp zy2PJh->VS0$s>4%^%8ty;U=gB@#x7B+cbzI%*ioH2{G#UUyY4ob`+|EOc1<0^&zgr zJRvw*1*LP$4I!wBVfy959QUo&Qn zI|(a~(`V*kCi&!COB`}sedW(J{dD~LR7=^O^(8d>#OAuR?Rn&0-=k-zM#&9(-7>gU z!oUMVR)eniOMYPqIR_GjDau(-z57`QmaVBOU+yM=!UFe8p7xj6{W?`s&;1ZFu4X1R z-SLzL<0{n;3vx#d{A-;&2R)aVAg&nWoA_iN25huA_sM63CxaI`<`Yl(IQ^HJ{lisW{6SqnP2J4U^j^xWZZ;OEk`SuMFJJ<37F! zfI)w3p1$9E=VaHUGZe_O{h1Kq=r&C{ z*7{Xod<^z#;5-EkWHdFwy(SXx`lFAxDTxPIYBHW0td4;Kk@sJVCT&}T5d5$j2>{@T z4HcdNOin!Kmuwh?mh=p(;9tc%;F&!bj{BX(2uhe5aC~@ZQAj zsBO>l)npG$RFPi|G zt-_BHcY4;yN0Twzxb9625<~#Uaq^>~Pna0}cI5Q6 zN3O}W+h3Wh93ugLV!_-K4Z(={vIRM(aZHWEdgqT?))>H3NQ#xlO8Zi_TeV*Gz|8=0 z+l^HkAf;0V_UW%$u%0V?tlAm(!uaod}@BNhJ+ur?i^UAe(w-_m#E=5blpXsMS)Ryn1r}p zHonT$_#BE4wpkFCR-s@l3h=7|8KRh{mtnnZT#`7)_`aH#KM51eZ~Ig6ko@nM>-~NZ z-T~}~SQRG^Dgc8F1W{ncF7YD?fY^T`(s8dAd3=H@;pepu*{tw^WS4t#%~{P5aF~UA zkTt}6JmrC$be{G5RpdwPrl#t6X8Ti^KkBdc#CO&DYOl#(O-_Tb)^!Yi@r_0c%yn;Iq_=Y}oUw9fffF~OLIZF_Bqm482`Dd5%k zHZCZy$+Jf@o=%_!JGiO3nl{#fVRH_wjB_d8S^E=*2)O-okW>4D{m;fGG&L)pxGp{W z@a74R7>8xUd7TGt|wp#g64g*~7Dv4q3#3jo;UUWEqlv;VB7dLJw1 zL!r8C@Top)5^)M$VRAm2lB?Nc9EebrA6G2%Is;ocz8K@G{J|nmf)~ghWBXTr56B4( zAaQCH7%HE#Pm5=YEl znwxYI1B;9CuY7M@v`vzYOlUnRI!H>2@kBVHSWq|`av(P2$GZRBPBNaF(A12Ksb0d1 zfQ=Tmh$;2+YSLIs!)YJpRqf--iN@8ko$G0crG%XW~~ z#@h93vSC|aU+0QnsR*aFmI#CV;)L#rFXqG5U^xH7poIQQjpefWfpf;!2Nw|&eoy1A z@igGzXi9PYBD2EvftBI(-4MeRw`q95SaIBW%9e8Imq4_9A^$J&khXK7@IZ?k{P?-! z`4E;Cj`^Le;a9_V#O<&jo3wY2qnWI~rMM5G5q(i{8Q*6<>n5Bc58o4dgU->!XDs?@ zx^CP_wIs!&hg?e_P%ja4_Tnp7o*JW4^9mgL)x38O7_(Co$|2C#>6C-tGzKYdPd??k zS@?z+?V)Ml!B0#CPD|W3Zn!2a`_QN6^o%`&;V2>^7FOJ8s2F(H_pPo(es@WAYE8_p z=F&~*`>dfLD+t###$p1UWe4fApT!8lKJ509d?P6oWDUyogTN*RlpCDz%t6Mz$CSiq zm}@EHdyBzN6=Q7&CCW%NC*iS%5r2%YAmms$;E4vt%L3Q{cFPYT`MKXp)QhMkm309U z^TavI;-tcq-aXbIawz3b^iSm+Oqz;_|{^xGH!pOWA+P8UfH$ojz6R={~FcfAs4fgBUV-ntK4?%byw!efwHDssA z^{Y|1>N2ouO>=!ZPX0=b0A@g$zs;(%Jb@Dk_b1M#Ni2Nq8oJhh#M4+ea&HN^iv3ix z8?zIxUlXD$r$Vj{>{KmZ&5(RN8to6lx!xf{TA01CJ7JplK>MbgJO)h`A$kq0U$yXX zg5b%2vIe_meR?)HE{4Wo&I%P9K80kr_eo1>=j?L2-#R*%#%%r2&EhvLmFcf;*yU{ zeIM7tI@5W92Mm$M+{_p#K|ify;WF~nV)^O|0za+2aP1bOpKB67W(^5_N5=!PTJy zQ9#y#;^G6KCGiL@>i;7108a;oo@c-qft!-qzG4tER`Bz(aX5WZkFk$C*&K7UGuANF zbghBw7zFvSNmA_}KczS^LE;qPBZs_R1LJ61lkgy$U(J4l%@O0HAeXHP^dthFxVR|) zXo8<5r-F~?n8c)sWn)Un&w57`ju^8nkWQ+ko*(~>0>?!v5)?*PoLWdjO!l)8^GihG z+JiW-igYMir>J6o)!KeEE7#P_(}Io%<@mF2?8^k(1asKeYc%n9;dTB7lDu#=#7kog zi74#18n)DM1v~Vsjs|83-1JvE?V;RD)53b+5Q}(Uy(2Ws#MzkV>4e2`lA(RYdhv`TT3v*+{LolP+0-)c;---Xi zn#N)KP^W+FOXteUZ>%>8WB9!4SKLpC+cjbKDG9{4(|oL(*SUU$nz>@*62b7&&TTaV z!@qwxf}6yb*k~h0M|_IgR$N`2o$E7qHLs~>J$_`aTLdDu>4ajxkG0hP(caFQBHqjx z82+$Ld}`9cqdIT#v9aQ~Z}0}zuxq`CEn*Ltj{a-%o%#j)dH8{NckqRa7Y)(MygTJ| zVVd%e+-G1AV#EF7XtJ+U6vQ9a!5{(;am>A_@pKd$fi?kTOeuWqCN>+b_V6>Lw?JGld?Peria=cbf}{l6BW z0jP+f(Y(r+R@M5Q7dbu(-Xi#c)Np;{JtnNU*93nl%#1_kjmZ46b7~F{FD8e}hsvAb z&!F(RP@U5q`t8`yuL3d}gR3d=_B@X9uKii;NuqM67eAkX2 zIL_Sr_soIEDHl}pW866>h=su?Bgf4xjn8_2*&)`Ez>4?h&>o^o$>BCJZjPsu2pka@8Dbw`Q5Mj6^4XTwSD;5AUnKNH>3{AIN#1`K7)6CL#E}b9`xr{#id)2n3E%*Y6wd@)B;?g3 zjF|dRPRqW7a5JGzEC4#RD~Yv<<=X2tHf4Q@O}^`4c*ep?P2M=M8{EPEq1{MK58kryA_yO! zF_*|QV_JM6l2O|;#MKj9B8BY>#Ou>Ay}u`MeQ}#0*ce+~zs+4b4?nm^Vd1DfK`gr( zfXXe`f8)t#18?hk@1E^j{ikV>lAtK7w zgM(0<5&s+Y$M0pIU_m6E=rAw;AsUZ-NO9oa2EI<1woYbLeqDR!N#BZN+WGL?X#NXZ zb>B6~f9ySiD+JRD##D5DH1AqC7C4$?7-uM%iKwVpuIt}-d?t#VF@QZBx%+h*U~M-5 z;Zn$WJQl!pshUk}QepTH30Gh})_jq>51^TprE;WSV*kJi{fUFd564YAG04)*4x~6^0eEAW7E>axf;kgA-mM@u%Cf5*ngV5BqHWG9+T^L zFI3wtwzP<(#$e=?3tx!S#s@Z~z~zgyC*Q?9DZDg}+fN7CNW#j(UHXUhiGIP)BuuN3 zI^t-FU9>G5YVG%VEpZ~{XRuM-H>MkbJoWR9OCk3!a=HX0HggH@4$P`tBOIKQzxN{7 zn{lt-ll<(MrY-4nH;GqW(ta1ow_O7s4=k&F9=SNgNKLqy%cJ40eL44oh%nYK+oaFN zdwdl6h=s=3Z~}mzIi_nHOO#H$(R+4IF>omQ9JppKYCLT&g7X0D&u#(NTGec_b9R*)K^uX@eAmT=@j+*qbK8?klZpibm?tG3VJTnBeq zCoMwmSNI! zRIf$u9k>Q51tuGN?=7k}0_GK*udUlQoVf8b1YK-Euj6=EqfyVUpe;KXSP)dHF^?0F z3zTikRP+oQu-|G>zLdWZUoLth-Yg^_2bS_CUo0C)yjo&_ipfaivfW3ajZ?)x+KCu& zi4;pw_fa;-3SucKgXiCrYd)!xgq#7Cw2_H(D6Wh2{1+P^(`FOVNR+itPBE5n6sE}) zAAC%TIXC;4(E2{Bx1wgw3oocxOGYZTNmRa$6*QTx$Z){d|dL0dL}S!)Z0wI+}g>*y{#{ z8IS83t_=(8iG!(`v7ll;LrhEY9ZpPkzQ}K%9NO4KTLinf2YBpQFDAdk--wI9#FS<4 zU-d2tWfq@OGfV%ZwVI1q=%7#PS$NLKMRD*`2vt5_Ly@xiHN9^iXpv#e07s)0$g#^03pcO~2O&5t3Zx=+ zDtc5tQUP`Fp{Ne6wLJJppALeVk%ijnakZzlyubn2RCoG`^;Akhr>he4XSAhov&7 zLSDEz#MhLoTq|woW(qQ&x*4rnn$>U!EN*0Q{hOu`1vZc7*IN2wx zT(Qhr$J%@Gd*Y}kx^{-XN^|bb_u(C*&j}&|afmrKa4gjRg-I6a$bE^W%t=ptW$VVj zkV~iNU(Yw^OwUO5K5*xXG51@{gZlZ`(8Tq5)sim}#rb1AVH_up8GQ18AnqhciER>M za!n#+L%!FJCiC4uIu3Fsw%+;gx&hRI$b0&cj*E4HaFN0q37iQCR#Tv$<2qej)?_w- zLI3HiU<8G>6RE(;jii!hfp!X$ortgFaDWf?@AbL)i$wgRsTd^6O+XbLDeh}>L0ob3gJ*D$ zBYv-9E^%lSs8Cp*KQTX34lvJ->Cy75*B7RyqhUsFEoB&MjCg})atS&i7u%-69*xV) zpY(i9%USSNK3GIcLe+6fVEA8gGVm#U#yG7t#r$(EA;D)J(Wl|>YXaunP#leX#j`EC zCIRvjzZ}yaVyB6rF=Y{Si?6W5BN&;u1bj~UHfl3-q2f1?o-Y9*Hdf4|P>Tv*n15eQ zJNZh)dF}laS3d|{W8Ohr3%@MZE#dyE-B=@iow$_wQxw058)<5)=BRSu5-(y-38UL@ z@88{k50N0mR_`Ol>if4*zv}(I-hynxi-hHR&N#(Jzg_D)_$4tfH7%pg9DFh1LE^8C zWyGFfC+Ex%a9w9F4w8H*p=gP{DemfT7GrA-q-W&aERlJ8qssmmq{{K5`@-^}Fi z`d!3%6#pMN8{^(nibLQ^wJeG@u|iH1=Y01fFyVW9kx05`srGg3RXjVc z8P5m7yz0&pL^W-`2;9H}*J{RgS}STr6yL#TYVU)8g!^Nzm0fB*{N1(oUFQ;cd=GGf z`MiiZPu!Ti1~S|0C(bLclg+>C={hB#8bIH!IKG;8aoR+{O{gtCtx30?=dUkP01mNX z+c9R=sjT1^4?&h+nRkfib9iD-=ph4RDA;*4?B=Y-2HOMi`uWwoFnRA7;5!4R5Btz} zseh=v3jAeYwDM{+iXjgMhpRQDud5vPNTU6y#R)6Ot3SB#HTm~{Q(<7Qhh4C1b354K zbYbFpr-4$}vhp+Bc(S1|FxN5g6LqK#z& zA!CsWIJ~)WrQmC0AECME#BxwmWQ}ZN%h(!v8YN=Xmj(!zU72pWQf!wkX z6QEClM}YEx3jVgf{}X)q@A6eJk3uj+G#6>baTHW|4T0`xe1`ahLO4JcIaWR${{|cR z^EI(S93*1;rAV&{UmyeJr$PRXWBV?uXQM}@+nD0d80VpRTXE#P5Z3p8Sk!?JBd&>` z$jO0y#El>dnY5?6G8#7L?lmpEsaOl+6$Q zQP+6Vd&TH_=GFZFIBh{2H2wfrN!k`!OZd;mJCOSEjDT-tlOe2m8r+7%4-!?ZupV2I>Q=o^=HNL9B4Ylms2WKJl#4TxhSn-wpV{1==R; z`7?LvQ`V0!PQrH}K38*`?2UIsu`%$U$L`Ag=P}A5#?Mvf%}<9=@@p97T40eeiI7Lk zt?4UmZ$B6#W&bC~Bn~XG_^3rm_#tMJSGoUi1LigSnwGDep-(BkgqZGJl<2Vj(3 zP|WT8Ue{;iQoxEa+_hgB-`Cd*N0!MO(qzh5LufpB_9wfeCDYKMHAb<|;lR0r}nntMr}CMeq-$qYWisJ{yNr6t1LF zgXY5X?1jx|6)LL41a>9~z$>Xp_Sx5ax)AtX3_vGDI@+5WX@TlkhvOy?p-WV`RQF$s z`>BMxnLY%EwiN(psERILZcI(M1bp<{*?_2UrG~DaV^L=SJad!#5x`ZREpXI29N%mG zY-U_o1!$3oz1NV0aH73V(Y)8k0!!deVvGq>$cUnqThpXI-YG(gBWxP&Sux;&y*CY{6oH>cyON6@wpu>-k@A#gtT1-xsa#T2ViQ`vIFn$pi&9Rp))JV2p z%!$2+k4Acknw8_kc=dA@v)Z=6Ckt>7XCgMJMpj)iJ}i+UoxV%LK**IbELN+9EP})CQq@gwudq!sbk*J5u^JY8{o=oI>2hTue<736pKDcxFC-`ZhT8JRbaBdp0~;-^x>CMk3;=*-My7V&{e>h-4ji zw3B0ljd6O$feoW6P@PG9fU(xO3EK`VHs2r~CxQHU|Cmrpycsze22VpoL=AZEQ$6kX zh-0LNpLOhDW^&c2%JA?_Z0C*}0mt730`1{;ms4)twK_RUY6Bg%WPHSv+c z+WL1j&g2{K^M7H|gVXQJPe0jC%pd1ks`s^)@D+`2l0zL$gNpW%;&%wg!PXX+mLQ#Q z*RgNhH2?m=?d-3C=f*JN1MD{jG3oEgE~zg{ey8xPyc|Mg8m=-|aPRQ1FmFv~I>4z6 z(=eJsETZV*Eizo|ax=LCO#w@QW5RHsPhcjcrh?`u`c}%XCh9CeB8gv0w*`@YW&%P4 z`vN!a$slPk{sI^SgN`#16#FECRjfcD8FX%_*Y{u;GX{aHiSRm2$dAcJvg1(utq^_y zPy-?NPco|DG+DVOG!@_71cqEl4Z%_|58{w=CcaZ(vEtu^CG6MtbdCnUGS(K+4yR4h z1b8UGSYPAXwWp&AvJYzg34@mKMEjGlylddJa^NU&%FXrhOk-dBGsS@MoK2cfCHXV0 zojK42%69jJN1t23^>jAjdQZr;z7#hk-OQ08S|##>cwXX|F`rod{=9JSm>nzCJ7gZ@YuG~{?`-)zVv{&$}8 zxx}-hsT%A35P1MI&yQoeEW0|lR_+~mznY`3ToIOWO|{m@_017NEVBRTwG$(m3+_kA z(-RLjH`Q<>)f?ia#m2~2K6;1P;8)CO0-T0ujn@na#bsSXoVEac)@?uQ>MQ*IFbo?a z9|e_nzs=nO*GVGriYu?pwW>ak(?|hbbaDumRxX^8aAE?obh(?jRnP$@+wK&1cqH%%#HbCrnf1)u`?lbE^qDT#Y8W&8kw&YcsK@a$OVl2CCpU?ZmF zzjX9{b_2|EbmlK5+0UqU6aG#8#6(i zE$;mCdDX99wun6G$ajCGDa8>5h13i<|9YLQt&ShQ$hJ3D*l*$}OGHmRBIRaRx;)^6iOI0^0|DY_YaZDv6Zfc4Id7~*l_-Q za1IMGUjM4iKaMM}lWxdepSD?I1me^-cRi0Bz&z&N%&IMk|I)_vy<$Jv;r!`z#y~{_#RFFt$ z255xXU=T0DM52KGb}|WYA0X5z4*t!bSri};F{uXVI*|fE528#^Gf21?qmZuHlb>Uu zv}!sM>;HaP6F*&-#0x8bY)H@8Q&ar)j1dQl(emNAU$*p`N5f1)`tH?*w1qks(=UN1 zDDiI0len@@WjH@kKpg8|b|3f)`?US4VBz_F@Hb@TfBiP?L zY{03ZNKL_t*haQzpls5lF?CdKcoImdP__~&){BfaTes^FCNiY z_R_b9COnvScB zObYl09w1*kt}nu`qMjN?lM^>G9eYWoy+E>XfuECry?;-~EhFv(oUw@ca{{L#KH@zP zqk*R;Lncdsh_1#?ar5E>J9yGe2VOHJ<*c3dO4M&bx_JFJnh z{3Wua>3X?oiOk9eV&gj9hx~7w3L}{}sd>EW(ZDy=gn|30m5JC7e}&k*M3CXfuSWZQ zX4g9t`#|(9t~_yOp7aZs6VW#YT=h@bv*MGao{d7vIW@l)KWK8-tPu~%#;LZ^E^1_l z|5@u~%TwGTHwkh4Cw#0L%KOE8pWeZ_6U1}Zx*=>K?uVGbwI`d z?4SCo6!U{4B>T~BYV>2h37E75_#h;u(396C-C!AQ^I@n6J_8}lVR7>wWF7r~L; zz1Qb=?#pp6;t)?eFu_r<2BBqq{2=mIWAND4MF)5=nnu`zift197T{k+cL3S@i%APf z8?nig^z;skl?NfZgq-%}d*5jI_&((E+4w6CEH*GcBhh!h39uj77Q-PbIi}l6(?3 z#zn#~#$l>8SN#d~$ono^Fs+xEdNdnXtxddRknq~0o3sN%8MAJj2X-sJVza2mll!-D zW3kgjx9=6{9-^4`v|_+y+%^J4->~n22W*m3%+$Nnn!09jxS^Pj zSV|19{8D~AYvG!i3t^bD1dViWY9PXT*PfAY<@UyvwEl2??+4c};YSU*YyMZwTkA3B zbpspLG4S<+#|*z)L~x^;xVKM}{fLLgf*P%(^h(YimIAwqV_)O^cf;3tGDkcQoq)Ly%DUfs1KZ*~6X%OK+ z1}|c~8t4E}5y0x*@4sEB1BoJ;SlF4e$de1s>IC!7-PAqowWKM2uh)pDNd^|g0ukdOOEA2C3=4cEH z|ECz+ie&-^ZpM#^R;6#;NqfO`E|Ox?7byk zKmbxD5{tnVp%tmnf!T?> zgTI~502-P?HNj#OIj`>K#tT3*pd^n*fHL`+Xi4M{r#w;Ruw-}2Y3Qerj8NsXF2YsG z5fWkpV}N(=EeE1JGmC*IwUU+W|XeV6q&MEBz=oVwQNJwB^JO~e#`W}v@757*b0 zxspTGfKG^G##^5U;#e4!`5VHlYL%yK=qsIEtTTDXOh)A&Ae-lTqL#dO~_66=uyWs zzDOvRiDf25;;Y17O{^b;Ys{MzAn~rB<`Rhbz@D5{h#yUdT>laVQ7;Pv<;0an3q`34 zjAP~$)~{2Ztl{`>mjJlLm@gR%#wDMHQ=>NP&})rzNn*|T;He(=aLu{Ac3w5J$m(Uv z$&6n$mHVmQCC18J;(7*A6M1Kq0RBT(^gl*ERxyQIbj`xYgQQ6Y?U6?`Fj}b;Q)H6AwiSJp{i3d5uQ}`ad@83F=Gat8J zp9dRK1IBCA;E|i7HCGf*0}nq}+%0LJ2mBC;BT-STzfRpwmxu&3!G?tY`n^j6R0;tI z^b4%?6ib}ZAxhFA#8BdZ8}X*NKR_e5b)M4XP@ub&`T72N4SaET7P*Y)@C1!+;V5{- zzCjZtvI>_Xy1_W|IffFSF95KHp$)SFOk0-$Kf!_Z#_KKD@59N}v>t*<)L>XtgEyf_ z;gz6*eRY55Efta}0o4IO=+89q>~n+U;(8?4-@qkC#2`aC;1aZt+}eqL)mC10>ev(4 z;_qFnHBk6_MTbDTKzWH2Bda3F7goo57>2~6>m)?6pQeTV{@jo2dA*ivhyz;|v6K8R z^96!Y>l`_>6Y6oxC2B19Fs{aB4X_8Vnz6M;!pv;We4eMJX+C_{&Qpr2c@rYG_j>Pj z`zMJIIYst1bE+8k>$VW%Y347msrE~AY^?1YE6%ONvYfqX#Ew~-&xsrx#{D#J*uWI3 zS8diBsxCpM8-sXbBMmCfK-ASTKFp9YJ)x&M;7yx2q4V#4X_w#tO)^IU%A8}H{f^mG^+?CoS4%tn>&u2!Xa)A(hix>+q z5DXgJQdm_1Vd3MuR=fqM*PsA_`_-t+6~72(B@_EiLGmdCbJ||Q{W=BB0*@x7p+G^r zPG-!BBeCYyA?BRTmg}i{`F_S+J`$n?{rYq73xkga!gzjyx8!{^72NnWU?3JpE+5xu zhg%w;c)HoV9)F$o<5xS*yaObgS`^@>-Y~BG=&K9uDAaB9L{RCq#Uw{rxrM4uLuZGjiK*aIAU!TlA?3q^#AhZ^_vh zj#q4>M(U3`uw}4!&;K$S82jwuqxWkq>)Q2&D-=&8XJ#13?D@oBhWZfJ4}!P^UgSe> z2V~r@t9?R%GtCQ|lGFg7RxRWV2ljWLnmG`Cw=n&?IASTy@2s;Xb%Fbxdl02@+F3YP z@3cNVOtsNJSHFuHo3S7B+VB*(rJ|0;rU>sV76VHUF+IqCo-}2?bM1DU2=lmOfP9fZ zbw5>2B2TscC0Z`QZ+uMVPuG@lpQ;%n?>T3)CIX8W{~-s+SQ)RCH7y=wcq|y1hCt!) zc@RQTj^0^y^4&9UN3j1=Z*b1CPHK(gb0V}j@A`X{2jHf0(m%~i^67Z)IxJ#NOypW_ zA6#`{pcr4D{*W2A;))qI;=ww$gWAW{b{f9QCpbg%mNIYoU_CUJ{_Sm3};#Q7ciN6BlAICR_klduh;Ez5J#bXPE3yhmSp1-G!{WLOTKgbIhx#D zwegNagghPbj!gUy?Z}|2qzs}Jpu5)mXxw<^f1M!%)bGEgNKwNggbW=i7DxgdMP9D! zdXIuIfgwRE_Fy?S17iTAG{{AO39)952w6fj+=3`eoG6 zRrdl)UB@XFll+i$F%J1+5b}2TO%No};J_d-<~y>s)9|uuaR$PMO&o$ohzy$&zohqV z5LJyVk|O3qZJWkJ4}|O`yDgMNk9~u@C1ziukXT2IJFn={xZw4%hk!-u+n~{2JBA+f zu&|r8Z?zfu?KK^@Rt$G&2Ieyc0fr&R8d$UI`vJ?}XP>C;g|8%q6p+@NObYtj@Hp$f zae?MzJcnd<%%%&+xYz0r3NGeX>N9&xP1e9c@}tcEg#n9@5j+1N9L-2k-t-rto%^}2 z7~4!ER>C+Qa|tB7MU`Fk&l!-|WjB!G=gasK+#V-v*f&q>T0G=CWS$vEX^g`9GbRgD zxxZN7;MRvxVEl>e7;(?%C&sa-jnkzGUO0rgQa30^T(f54{WM?FELbK%JmcRZ>_&qb zn2Lv3^TIFT41I9NnB{)5hUF@C=S8mnXO5OhkvRE%2hG7tKlMz=nzR|gpL1Wi?<lH(M2Zvqeg87nEoMgMJr7VWePRNA)bS;N zowkTK`)<@8(yN{CK)IdQ@X2HKKk>qFPb4e+|!jqyhmIs zZUEH<@VK^PCsQN~%Y4aoKSajp+W=Y$>Lsu-6uV|$;<(miwR#Bi;o^(gFk-{gA~{7J zIeTDHg6%k+BQ8acCvjNLEwLzv0mXCTRN~4dvZEinKP^@ezg>4fu9{o@v2V=$Q}dIU zNC(`0E_)gI0VaK7fbT4vDLhInOVNN~Jw$Ke&2>v6`e+eNxdk=IXPSkECBUN;xWBN5 zWZcZ%5xc}#G25%w?DX2Ok@c2;x6=fhfthz2!ns@u|I29l;8ylD>Y|_dYi?%F>lul2 zVi>Fw6{-EqY4+FDC^o;SXAimv27zi#@Osg0g5QLVQK87u5DF;fpD{=iHA zWZcND#m0%~LB&5a2+}O%_mdYN=GArmc=R%R9eK04(Rh0tC@uYxJkpAmriyW!>^toJ zgPn;bng8tHH1jf^G0W;%G&t4pME@+qHex$?GH}B}qWA#b)CLpy~H91a*K= zI{pMkim7FyWFP&B1);(`b*eSQ1{+SRPxW~1j z-`AW>zC&`%TT^DjvX+HQ{9D30-NN2z%Bhia#CGsS3ejV(s(}@~uul8Tumx{4(m%`{ zn?LreI239SbEEGm+`wPS&8}SJ{8|PcX5-+Y88h}^;L@5a?O|mrt%xivGqy#?(J(~edMdvH<{Xc(v5UDQa z{L%y1>Ukdri$fg)>!+w^Qv%d1c1A>UO=rV$ZHVt{FE2vbMS?-81X!9@9d0z}I7#^a z%!u-nB>fs78T)ugo~+oPNs^Y3f1P%N@Fb`xNf$@E%Ql-j`|9-$44i*o8~Ko-G4_j| z8SB5?`HZa$>LjM>uoKXtrj~J%S12t$sK*rkx{gbn*PbYt@lFD~<+yS{oT;TI5D)Q& zIE?2Ub;DX+xCxTFL>(|$u>dvHHOAp#!iktK!;IK;VZb#LY+kL?ATya{UX1U_eg^S9 z#AoMO@F?dTF<(tAh}y#Vo)KwgJ;Vp=H2d7l%+Jp$ObpW>q>N%j>-p&4(YuB*BARG4 zzYY)9%%TWnu^o9B1d+IS@SV(|2{P8j$W^S1Mr$rPMcayd&WJQra{WJud+$N`&Y1Oi zD?`Ypag4!Zh&{w_>A?}dGQ~txoUykXKglQM&w2yP=BMFtp61d_=laDQs{MAqC13b8 zGrvVMM1H;VTMs1yubwnBkhQ3XDfu3n@==S~tKAEM&52cuZyScg;9!3Zlahxjj3;oC z82%D?G>3-px0??puq#L44%t`Av#F=54&>j*d}dyZ%fToxLu2qL*_WBogS#L5UOLhA ztZ@*|QQ$>m(#0R`*A}7)2IhbNojlNbW*m^z{2jnWaX=R%pGwy-ig^@j4&@m7)#&C7 zkH$NOCmpzTn!*8E@BTr8*69lb8%fty(7Ej8sQnsr0$8tx9z)rjCk*-}?jhDc&&y#h z21q}Wq(6rY2!ROLUL z6kxh80z{HA8$j3Xk$6tl&&b~;$OJb=&E~*B?Jt7?1HtOl#6s5VxU!ZcDC2x!-KUN~ zXsc!$)3Sfkbf|rb(6N}Vp!`$H&{EW-$IpXhOP-Xwp2w~j}KAUr< zu;}2F!*q-~9&w2t({)gvaX&ot$@iF`XMI7;_l&^j2Hw4N^dIE36 zLn4Y#MWFp$TyN&=mBT)fp>R3~a~Ak=OH(}Lo-6(o7jQgBT^)opi+|<9oby9W{d*2i z?)v@639sgi7}zj=4IPqX6EY%T*bATa6BO<5M)(1WSP6|`=nrDjCtWlo24spsp zHxiG!8bl~@LyV7WmJGrwW}dn7W(Jb@j~HNHT*ToMt4nxZ`L=&Y>|UqDxlTPj&ORjW ze{1^=k(2z&HTRq|P_a<>O3$#r^agwK zm-$E>J8tfhOOAsyawfcU^hOlMI`vE*^R2ycKxc=R^*KCu=&R&8fz2mg;+bRb;95P$ zAA9DFhr*KL5!_=x^E$};?zNwL)cEMZG$V`yqSpszK5nWcrV%5v)^$(9Wd?U4h#Xq# z^Xx|qi05NA{T%MONO319mWQ~$!0c*dylav11a~2v>v!rZsX{F3Q9Nz20dtZsHWNt~ z0C&98_6l%cCqV>ZfJ6f&8ibB*g7dfznN4D(^N4>H_aeJSmV}tn3~In(-b}bM#~}Gb zD4BS8k)?_w#gGkM0-%t?5qGS+z+;fn6fZcHO>8&;6r$nk&GVG{5DWxI13Il;k}t;K z%C~`A)qeEgIw8RGMt!pX&`aZ11{_fnvi?;Rv0hk%fp#!~i2 z)=1@p&x(JqeK6-wtR?~B{;hZ9o$G%WfcP5k`KnozDEA6ma_KZnKV?Y@9S0T z=b7V-m5{1>hLNhQ?{%vPCdPFlnQI;5%di(WIXYh1n~0Gb|5hKU`?0rrrr`&1fw}(H z%yTZF_PQPOyK=%m2r1VVJ#E<1qDnZ^Pf{qiR%pI1f=DqTMjOqs?0weB_4~1-CeUk( zWOMH%?Uh^O5U7b|ZpFKoF=Z!{$x*-G?S8QN4@?^d)#El$#nG^;Vwcy>uQ_v>3*@tx zP~hH1&9m+~kL57rQ!Bt@&gXGJ7X9%wgkSyfhnl`Hec_>T74-Co8EZ3fFXxoZq)!dJ zYM+M!h}FlGG{Y=YKh!vhUYW>Yo9$ zMgtbmAqV-~1QLC=fae%=LfV!Xs+!|}kJGy*H?=q;$XGZ}KDn=~tpvVtf-0mw`^`Yf zOo2hpgRia$CPIx4n;=tC~)tiS=~Mj#Hgw0ElC5!oT7(NW1h6MSad464u773_kGdsw>9j zMN*ex8QAct4b;TKA&5;A10+-wLPI>#C`~*ulRAZ?86P5gRt+cS#`~-uI@hS%RRb`@ z)*eZoWF|CO0x+&w`J)e4&Jy2#m?dT=UwvdZ6!btufPR@#=$~`GWWLCQ_@2xOxR@F# zkL&u~pCUk%?-`+uJ)Q!)@K0__p1jTYMZ{vP@B8m#PFn5e{6HMf{soq-n+%!bSjU)2 z`1kr*&TFe3?Qy{~>!s`$;~I+_LNE0CbIv2CQ&{_e1dt&U^nPU@2c zJbQ}xHHJHfn1R9-`+9H+hHLOZRJ7Q}?-MPdgKK~TD>wjA&+Eh>!L_i$YLh2D3}E&l z^Md#dvhgq>YG0o^l#^=3C)>|=tt5XOn2Wdtv14D4-#-J%Rukt%l3sg@@7aDE53q0h zHKt|eJg{>NdpRlSniG<2aU_{s^CoM=M536#pEb}dfZ)9FlB9vBO!;h{%8mU!#QG2} zxqga_{1u<8ufFkF<_qvWF(mt^*Ub54_z+mi6ZE_l)_)Eh8_UmGB6-rjP8`SWrNwz3 zv$*$eeQ}9Y!!SDl$$kjDr)g%!#wq9obNjP2pYoj)=4_>+Hj5UQ6Y(b%jc|{$1v;%$B>&5OOTT*kVldm*(|`Vfx(Ll8&IR{nVh9d zoM-JP*N-?Y!!LQ*NW}d=vN|-4nAo}IQA-t*CCcE+SfMwFaAVOptHA<9uM=JlmH~=r z(lJy6bVgDj5)wR_@K4hKL|=nx0X7DIKMI7HVogs8Q9O&7MJ&^?8E%;n@gWSdz>We< z0yu;Lhr|OQSJ6@U3IM$T27U40{}%$;1Ig~Hr>w~!xcQE;mIN*~xHSAr0FL35fR^j9 z;cY@PYwy)37^>OZYiP(|x`wyis93%B-LMj+9H2}vezu0W39}SOi4BYm2`7gbhj-!w z#IPDG4}7dgty5p%&>*zLxubUq8%G`6ULZh6ZZbBkg^Z&O+rxCNxl#YMp-TdvxV-8N z_`b{vS?4M*)KBLH=F`B=%e;G?0-M?Ng9ID?5}UZ6=j|^FhXeo2bnn=Mz;u4HmKf9g z4(FlGx(jD3pNCL9&6dQ`tClHNA~wV5GLcBUx%z|kTK$~w;(PNm6yy|UQ4ChEYlcVt zjouV;JTL{{dx>A=J4aud*y$UKi8IMjMGOxC1#^X_rS*Gu1Yx8gXev)EdBLDKffN_-uLq#r2bGKWCf>%XRpavn|(@`?0ls>o9LF zX1xyK$(xeoTv^lkT=e+hT;O-teB(L_b4|>Tdgk+uvxwOJJilU^aTASWn#s)5)n_)l zQJ2>~KRt8In1I0lXoHG>V&#Rm@!5YhsWr+2qVGC}R*ZjJW*pv4eZ6kz8R;I53Q#sK^umYe1C0g;FN5lYJyGhlUBh9v~6;e?iWnwcc-o znuT<@MAykgg3Kr`5+}G>=C&pvkNs!h&>(-gjnHwBnz90Kpb%oh9CkA&AXZHXu+-=4 zIdoT7{vc*@Z5;aRbol!cJAGYX2F4;jk@mdKwD4-#mS z@`{I%eG(76Yt=vA_37tFop!xrZ-Yqi8j=x_2RRuz<;gus1H&zhm2c;HGx z!oYUcC!U!xWbdtb;#rNaiGRe={5vpx8N5lji3=iHjgyTvecv~TXslsf*ZgsNWZ|A* z5C!+*RD$QVq+!lVy`4F>+XsSUqlQI18CSLg2;Sw(w|Y!)12YCLUNa{4Jl02!@p^Xjh}GZV&npQ3J@iYVNDguy zVzH+)UWIjnrK=B(6Jg$cG=s%mxE?jZQzP*E=qvJ(ar=Ziir+=N$7!_O?rfe;e#+Zl zm?NKf=8WeoGaMB>UR;e@ti*qQcMKgidn7*x^Z=j;(i(h8VnNbb5JMDRC$blb;^#R8 zDZY(tWwI$~Sj?G_Z1%j~Bv%RleT^^yw>1y zt#dVfeh+J}r7nSc0O~q@WWDA7Sj!;n40@{>qZ-qNHR({Ahka^>8Dc{c*?EmVY$Ndy8-vusxMH1* z;hVMe-4jn6YTM()8U2{Eam+Txtlnq&$Q}u@n&W1eA~LH~lpnLC`&aO17=#rUoR;SI z*Qq(k_8{r6+8mqx?+i4dv0`p>QTmKxIq`N8;y)7B&$9Xc!)RFIo#qSXUe@o4gX9x- zyUP0RIElKV@>3O zqrVahr9P|A$&Hq%4h=K#CUGL3zl3b!R^)k!zo<{04Y_aPeDz{JBVyRKgzt@imm7%0 z<$)8NA>f5-PS`D}Zh$z@{N@b#^kkY-cvt>R^#O2kaTZ*8=V9+> zUn}q!Kq~4IMDis9rWeUl5eDE~qUQVF4D9J9{%}oyUXwY5q!RjQ+)8SNh^NLQslP;g zJ~vM(2##nit`m6F$=LrvVn^S{(Ej|9y__{hlg)7KTECq{B&j%vaT>1Y-grv< zx@CYq8GU!$mSUca01U%|*m$g`hazUyzy*pA>3<5a#(6QqD#v*mFvM)lv8W5;sbSU1 z6Kd(RCKFF3G-x1P`}~1<)#EC-B=E>(#Xl4;w`1S-e z@8nIk#6EpyeeV&s!J&we#1<0)_)gaT_&Ruu{!HFi^`0@JVV3nj`Xg#^V8F!w9q{980y_|P}t!B(EL(sUM#H4%r z*o)3!F}I$#JUK@qhU}lq5dXJMV&u>!=vS@%3)3y9Au#^2z z`Ki~hn*x_6yM}BAJc0KqnsL=_IkqqIP>DGjaygV4L;;S4AxZq3fMwjNoQ{BExq$ zylkdi2L_ml!p50n0M+A$!=5>R0BbI7^?1f2on5-KG5~r_iC?k)JfU4D1023`@C?5~ZA1;*c-m$~s2P z>&*dt#(o!APn<*~6fSqK8(BeIRD4J;(;OY|iuVwQMlXYq=VxopgOD*loSBbPM;{Mv zz_}u^H2$@W8DdM!{d)Cv(`c9$hk>7UX~JiSY^w+U8)hc)dVGFAiTP<nme2i&fqnwzEx@-R{sa91rN*I9!D=&OlMl*rE(Fy;F$ zA|ym-kaDU05v$w_@{xq$1Xd0zdmiGZeT-WeJ*-fhIm8;MbFi>Jvj-k)vtCaOqp%;w z4s&TZBB#)L62mou7%q`;knqMJ4BZ|is4bG-C&4{%`np|__{x*;mvNyY2m&Whx0aEM z8wpqKjNC^22e}a9*s(nD5wP=LQvuK7sUOWh6Qf4NX|RkMs2YXn{e0#ZfhJA^|Fm`( zNA$?rQ`MspoY$O)_w>ygA;5{{W*lUV=4U_s#`r*Vjc40uO^h0zOKn#lat2!8WN%;b z9U|fzbMhf#A&sY1Ge?ZF{suN=K2b{}-eF?ej8#Dd?pKc=d&@cQb1v)@!z6L(GVO?!`S)RTV-Jdr2Pfjm z?zp*xy{~>_En+S&qd<5I4=wYy-ZIClc2W~$P*V6A?@jzIT#*_*YvID&&>F-^`@3RE ztbJfB`6p-YF@s+RA?q|B+=aTs=0x`2zn|+Ziqv4Hr>wwfP7n*mkiSk4>PsT_mLMW9 zpfJp7x!jjA^m7eWWcgo!`~ral8Wt&sA^^MNnu*Qgf1R}9T{V1`D9*GU2JgngImptC-5XG0u@Nyb%i%kV0IohJcZn-5Xb`#I|F-_I!;8?#JAWM9${ zfkCiL!Cyop2OmyoGj_SB^=I~Le6e#6V~2G$p81L`2+W#em>t!Fd0J|ibLA|tFzfx3 z!(599!hwA>+9RjDYN&>3)@k5Lo^qslx%vj{qxf1Pg)>Y}B$f~&&efVxNMrVrkOGfh z;=$_BaFlp%^KI21b4#3znrEyPt0NX_xa3>}KAN~-Epo0b!Jat4yclt}^#W^bmUUle zE%3nPHJi{E!$c&u8+Lu)`!SP}_W=iAJvK1j#F=ndntsdt#9AxG3qu&UUwubDh50f1 z0o+RYUvhbygAZ(8MnTpPIJo8}-*?R=!#*0tl4u1)?bkj*9&B6VJsZZgF zQa*U;CG#Q}G~RQN(1EXsAK61fID4HSWHgMk zrfhDJ8)Po54ti#gtnrpt^hM{HqU(XxX!hxdT_Pu58)|_<(XT1 zHglBoIQg3hlh5O_-!LzSarh7>mvK9|Le3D*vLyD=T;#{2moXOx=D!XkB3`5anAa4; zwRV8Ozz~ZaO>FYt7ne*d046eT7N^mhIU_lfuT#q0Yu1>=f?}!b2A>^sw`%YDwFG|+5!^xK=!`KwQCBa)Xd;Wf)ud5+ zvVe1$ULaaYoSA>tUW4%$WJu^&9Ha(^=r%!&zWew2e$UYZ1o_d+IdJk<7HSV91L$?e zSo`7*EU@+?Vaf)OHTh#=AJ#5Xh zG#R8vHhaU+Q%AV9vR~9Ac4TJNxRvPkD=jB7O98_RrOiz_qSl8aVv^cfaR}Aajp+ zT7Gjc%5$Wi8gG+(fFoqB^?PORu%8%F*>tNRasDj*zg+iRI;LTqJM+q$GNn3<0baz;sOP-;xaI z+BiIr$Z=XkP>f<4&CF}5AY&%dm@gLAAn@Nca-b132T_ee@81uk$?^wr(j?y{% zdf~!|XMA8dE}h6@0-Yu*L`PoyA%hB!B%u9)U9$v#FaDS^bBwL37H*8zXjiGDW+Ukr^!7(jp$qXuacp$?J8}mLihoPT~ds zd>B$HlxchsH;;MJInBD2SxC~5L)~zZTQQTW<7xeAv8cQPr2GJM9L^FYNfl`7%|wKIny2 zH#R$R{TT-uZ-KpeD2Gk%HH?BB!WU~Q6< zjJeBGbHN@Srd0iBzwp-=s%Oao7bm$=$BKJL-{X)R|JL)4g>xb0JtE1q^CAR!veJ!j$&Y62J-x&N1@QO#HjwC4jpjPQJ7ZAmS-^HU z`T03@yG;=1l`Rv!5g!$`*VUCG3f6!x!dNv^U@9m33pDawQ6pE~GOnj%nnVxz8drQu z2qmxs2&*54n53xtAuxE#W<+)g|A=G7!$c}UbAg|U!oVB*{y3dupCvFpdhj}3`t%8M z(wGCHR-e6w+e<8)K{xu$gt>{sJT)`1kbQQElEUB>#Zq9_iXrM{5l*?%+qhZv zK%6E1Q?&mW%2|tvk9PVy)*=LAm@KtdF>?8At?$B`z#lb0nePL0?F8cztBYJChD%Ta zqlO90_2=KC#|NY(Rcg>=lDHorW z+Y)9}Rqc+R!Czk3yYM_X>DjwxcF7B#11O1ecFLQ=Gyo;=5Xe17=y-3uUkVh zOFz9}CI_-x#LH$%~y5tcGFnOTn-ZS5Us+X=0GO z5l~LyL8o$@kY$hr%qjlzyUV$vkjz4+Q$?~2P_SmRlf8`701*Hki!Lo zBnzDbz^*H)8%a=DpapK_0m|2|bq$28C$v8eY z2n2`T_gPEmC&4<5h6P;F!!#oP{b&qsG1#=9jWB1O2{|3YEPswZ&J(bO8MtORdMNt_ zq;Qy$F&w%!&~r)2x{n^p6TXb~tImfIVBf{FmpMutvf6t*?-lpO6=hEM z{to{4%vJE}brTObwhni)kjUv0`zfC6v)0qsGYtm~ONohj!%0LMd+}w$E^frwb3M3u zl6`3=ThF+RUBp|>1F8Ri|FjPKzMnJv`h1=Okv!?Z+lZ(p|u%zPiU z{=zWS?wUp9epWA>k;xMx7p7x58_9{5wzIro55y(b$Z4!Vz}q~tdA$CIdX(sL+HlZE zU|V<-B>8Fc0&{N=oXnU zB4NRxqX?jAsCcaS7@;GW0mwP*MicxZqz5?mKN|?yfQvPm2|_n<)kB`TaR{=$0N82_ zMSpxqKL{Q{cevDa0Oe|E*IC97b(4K^0vAaS>!^UgfYn@9V1=Hxy{_EFvy-eWlFhy& zaOZRAPMQIPyb>(O--(A}sH__{=$p%Q87Cq}Kw>XrScvG+ewKb6xSYc~hp**@pDi4! z+$8BplFC0`0hcHAnsNT~_p#8e8Pc-JS6wk9LU!0Bbs!1Oc1_cDlk z783sx%g_U#`pCZGED>y5^8k4&63O+C_mDgT>(_0=oDJj%sM+ofXX?dU86VkmJyS2^P_N|_*roW&lucX-m%Oh;uG}Hz)xHA z1H-y!q;H32u@ju@RHqvyKx!1P4BydQ0Jp1X26#oV7imu5&u1IaBeBhwT&`b$g`PBj zf3ByO$4UJF*A%P*%xOl@?O9-w04qa;C!#|@*e!s^3FI2=5z7Ul8KVUK`ga1{Uw%Cz zp4n@mI7o0LVTg6)ATw8M4AuaP9(s8?&3Y7YS?d+oj-N4ypWl#=lBq)?g=1G`L(4{cQt77AQ%um*?z z_U>g6ai7Fj-XIh6dSE}q;lM#23LLzP>sH~Kvpe}3YA)YD^n|>7aTLZJv%_Ziz?bUz z?5g((U-?O8+cs!aK-z3 zT?)|v&q0=Kh!9K@d~6sVr%F1+YaKE~UqGErpN-Z;o$gM?*Y^Gzw7Gvaft*kc;~--p zSK-YJ&|htk2JNQ*%M}sk3YCu(8LsJqDo>NdmBarh|vPL@Ap{u^*COC z>;Az&r~&@@9*CP=p(BB|xUg48zq2L)hP8fmE$t+i0K@4`(+7j$b<@KJU{MDYSXWwH{EV(y9E2wyc{R+m3P*x;KbVd?r_1`iSp3xY4S2 zt|M`G4DKYF3G!^3YJ^x2lgmXc_nt$9L+*0Mg{Tp@Ojxd~DG2~_RbsgPSsaK(lc$B0 z@edTC^4VV}k_62baCx*%Ms?35t=wdf%uoI+-LM(dZ^CYF5PvCJl5TjGA!f0ETfTxCe7K}11IgJRqwz)V?U*hmHXpkop- zT}EffH3H`Oo&d zyUTR2ea1t^Gk)ECvXiVU&++f0Uc|s@+(bVuqfIbw-Drp&99Ws(&E8K@V`gd8ev)$L zLr;Ca-(A0^A-s;Yyke4d5+9~%r35+NM~tzP>mh!UTMCz2Le6R%_*W!h&f#vc~vpAOF6$4s=k1G?NCWCnjZWTCbt!|EhydmZ!2hEssj@EnDTn~+wW=!YScy|gu;a{1GWdIppySQPkP597jE{`1Z z*>-xL*er8u#4@q@&=RM~0qpGO+DUivw&R_gpX=aAu;X(*aGkb%Ke&j<;gUQ7_76py zq`IF~o8+)z&>jV6B86o9BBiIRmZywH+EdKP^&xA9v1i-&A5J=7L_8b!xYe)#>JsM2|7QRiA>n{PURKOwKZ7g*@C-=lNG7ft0r**y!KAjiH@&c9>yfUq`-&=#dyFzI0qb6iH$@cxsTPNFTx=_Dgp)L$Ta` znj;UlTnCr*ej7Rd*x56b77c zjCIuf5CkNNBy)vFnV)0!|7EThW{i1@Q=$}n^|=-aHpjEKt~!nN=Nwo&$cSgV+z_)kHzZ3V5qV6!!}37_qQe5`&Vr$@|x@hKP{rI50kjzxf%&iZwHCqRF$m zE|L3;XL5{z2@gRy3dd=TagV~$pU3rLw89_6UX4eN_ zjqe?`JGcmVaA7rX84c{YW^*Nz>;LXMji1c>70+KY>s-^NK?F|*r>Qx}dZ{@w2sRr9 z*K`&@v$zACNuUkrSHKPsTMcT2} zjzM+-QpAF8cfJ0)az|rgf#n~Fsoho>g)c*NyeA1u0!-9b4WM;O88tixTM|O4>v84I za+*MZXLU^F_hk$$dyvJZRV%hc*G{k~qN_LY-*nDXXsq`p`TR9o(J!l4 zLB`IL5vwWu+o;v=&;E3hl{gyTTY`h1<4lhAoPsJjft)@v2O}QRKUq(Mj8`9EO`S`* zX)db+lIW~u?41VSFjgO!G;sa9myWmeb)Gs7K4V-= zIFUX(W5}A$nOPWCbLO~)J5D--bo0ctUV94u#90cU{Cm{jb+VoKHt;O+ILwyEt&z%^ zuG?;RRlKe}*ue_1C}SV_8oiuz4z*;s{^YlR=*@u(X>0+15)aB8FdSKeo%s*$UpQ>s zowIWs*rldP{+RPduDD-oyW-#VhS}54k-o^3FN{OITkHq!nrQ$I(EW#cYThQeQ1585 zPmRc%xWI}L7vxvxOkxa$GYRGRJH$Z;m*kcNC7ZPx$~K8?B^Vf~9>AN#IRWTLfp_pD zs9h)&qj;8`+)^Mkuwf`Z9VHGo0xBAdMScy7)wCpWQJm`p{rj_V<3I#t@9QX1BhuLb z1K28N@~jWo5zJlyouAF-jNq+$;-I!``QPV`<~5>4w=!zUj0Bzp{3Q90D`F`cKlMn` zMlnE=!{L*Ex9dhmaLnwx2x|5jbM<4WR1Oz#qc-|;wpTkDk2;|^`2aA<6MAEv040eQ z_w;h(hmj;;U&|zUUbhEW_pd>A{Olwg=+||%SV(l?QmVB5MU4Ov7h2s>bxo^e~xVVf5 zix~x#%$fcgZ^D^y$Tb+hu{9sxNvs+MVH)m*(}@p<>63?gpZfj-)~r6_T3M^svnF7P z0gpP%zOSAeSN5fklBWz#jM+Hwo;Zvezqs{vTAby!4mOe#Rt}--mMLIshq1l5=W&CZ z#?e@7)Y8C5_6Bdz#6#9?KhBZDTKo6N!{Cwpj&Zz8+}C%rPgaA0xR2uJDHnj~CG_i~ zS3*-j*dWiO@)_C4!||b*dXTk#<^iC&{%%0*UqAEfI(LE>NI=E&bT~;GQn*m~a9?)) z#)>Wp019XbWO1%WBbo@h-bY{%@-o~m2-9_ofnqf4LV$S*;{^C@a1&KQSjsiE{9P_I zWBRG>ct7{u{mI&nTwOqS-EydR@?^M0MC9%2>wd;}9iL$ZV9NFxLXXZm^BVwGy*Qr5 zx?=qxNBs;Me2C!^^g{lx*bVZM>yba_de+)lyN4;+7$ru7p5XqvQG%E@u{06`(s%x9 z4b0C`Z^Rmk=ft|I2g&Qg2@{}+O(hy~4?p&J;ePjKVmvToT@e)gNKD8&AM?S4RMnP= zE~%T|2S`}%W0+rgW8xRaGOkIa;?DykC?1F(*PP(&OZ>RV@1x#mZgvjP|HEYAyn`qp z->GK~fg)V2axsJ*>g$6+%>8$Nol6QIU>yykf&CAxxJ+d2!^9MdP~y#Xx)=LexG4uB zG$+P)h$%-+uNw;>;b}08-Z=yx4^yl*Xb9UO$jB}88Njh_(Iu#`4~!ofCnR^Zzhg~m zG&1IbMco5YBh4?O*V$9!u#de3JUVCnffI?v{I2q>qqhxP^oE|z5jzl&Imy|*PUEQ~ z5}$cPH0M?1gLu(>R{biRJ~3y_wwfPlO7ixa3H^$5#C>ydwop>)(<>Z z;UO^?r?!UEHZv02qVCLq8%7leZ`N!I$0RZ`uQDD_lQ!{R>UTT`H9Q0!dX>bk9{oQF zEICQ#z6#gIuLC8nVn+2A6VD~5CV1AnljLXp+9{jiiOqAlMxNMRYgmFm>y3C0a?jJ) zdcMtgy-D|d*Eqd0yoQnBMtR8=Dgs%&7F119(6VLob?9d{54OPRDls(c_%B#*YYJRi;`iv8 zu5TgR|9-|BHxyW-cM1b5*MgU4tXaSDtii`<*a&W{p8fvA`Zb@+Tp(U#zb1Ykvr|vJ zziUv_2v^gULm#Hd*gkv4IG=GHxoOq8j~q5e(KxETu@@keiMeCmUR)PEXBfeWO)p*t zUar43k-c-B&Z6hK7p#u1I>mgiI1g=+am#rWc=73@1M@kPRIn3c;yq?Krq;8=jU~>d zXT~$CCr$r>bEqE6m@~g-h-9y3O()JAwLW4U*hV978GFdx(qqvO%Mh+TT_>gq&Ln=? zXlRh-{9T1c;Nbw}Fnm(!g*z3z6+qK_p zumCY5n`=KHUE@^wwT}eL9KOFquQe+MYr1-`MkdK`fQyE=`s`dJi8!w8tRV`b(az~r zOAqi#;xtYZvhG=P98y&;B8Ka$9DbiQ$8)u(*%vSrXy%>0B!jx&|GJ8m>ocPJ0Ojs2 z_6-bz0k#yciBVYRs56Md+*`eVnR$HnbyAgBVDSf;LL2q}iZNaCaU+7KBtq=^xq^A) zXO$BORJzvdI=7tERE$44LLRyP#8&q9_`CJaWz@wx7b(C{Cn3q0^w zFc?k`^7Z}jcn)f4VI%Vw&q#4bV>1nw%-8sphS%(s{vMblcsObTr_DOEqvtXv<6t58 zkD4<+LCntgj{23o_s@+`e%D$=P1h^6Ov7c}ctIR5(|(*tU&d$6PU4>l`EM+jDR&$c z3{jg{B6YyEo`28v(o_{l7yurFyb6IC zLApp4);tn+#Fq0vh zE%uX3YY?zOb&$^ibOKOgeX#~}4po$jgS=|;#{lR)BM`DyufZ1}Lvl*6_`Hj~bP&if zRQT@W3RgYfMA*OgQbdqw4*<-1&zgV$9JPfWF|b}l+Tt#tpS6+($7f#@8K~hUaB{et z11{!;38Nm=mng1$qi5*&Ujl^nqS!K;^!VROuo%h7_?i(%ZnBO@Y(90H-;>#rIa`D- zV-9RVa3a?8QRS?!yGyJS_c(!S~<+rAGOsnrRiOHCNDX}vl>uR zM_s3hbs)m5$;*sAO=7!|CdTToo>}Y2yj8v)m_6|QM~yZ{%I8MU{FoDVgG#Z9JSO@e zv2d6H=vBRm5FFKb!@y?rp4B#ah8nBi=O`!58O%NMWYh$4*8lZq@;Cb&XV7;oyoJ#- z>4B}?-w=YA4!QUeO_^c-VrF%HUWUGCtA+K){LVgXT&6DMEri3Ipy|N9tNA9k9magH zwTK2h^Fl)?PxQ${jf3GvOvTI0>zrR^1oZz8x`EpWUKQ*EoIeXOH$qOMx)^?35zB!z zKrw+4#WsG2Pl{{}{u*ux2-iNUQDZ=w`%7`UiaG|WeKr%Pj??%1eHzaJYT%Z!J_KYo z_Gk`(GY8c8UI6eo^+B9-5GhH?&zsN=Q0(|xBc@Sef2J^FJ*6;3{de<4J~h`owad@j zO^guWIrRF^vJVw4nK#6%^1H+<_mZ_z&x`)ce_FpUhB~aj4#)RVi;Ey+TtrCqb5ksv z>2cLW?F$CR09OI*L6WlmxemKZ7oSgZI|lGee9CY(!|>m0&Qnq5Qw$Lfv{mQ1*SxZr zvxD`Jx#9OwyTr+LYK6hLOf#D`=)*KEE=S%@hb&hY4y=9#&J82s%0u9N_g~huJ@fm) zG!S&Z-|xO|daV<@_|7t19^|p{^XOOh)yRqEE-@}oO>OUX6|z2uS{$ZW#uj)ua*@Pe z)=I;S_|4xnt^VcQ9Q7pFGjeQ(OAy+e!%tx$;wbk%ZUSU&n9zp-QqLLUhXz05xq2O# z-~DMkDMd^^SN?2=5hiSN51&6%pk&=dJq>|^8MS5%Yc!rolQ3&%+;yEsvhU=RPy6>Yi~VpNu*u7d_3sZ(N4KRsR-sRN?D>sI?q8 zRDE(9U57w_ag()%G=Xca2jBe9@1W-(!H^#>wj`KfVUmrYp-2-zI!GC4S?39s(fCUQ z;%Aqb&+m0XMzah<14&yzb~!K+&($yoa56UN?P<86xyNbnk@pKs|2=9srdJM86FGFO zo;ctJKt6WWZOkcDvrLwVXpTn{3J%m^s;Q$XGm1Xe zztra-(Ft0pNi$AXz5p&=b{B~gak0plnMnXP8}Msi7!JSovz{rUr-uj##v*DQ<`w-`J^5?@x!~yIULW(ExC;SM>&nyAB`j!${`j>o z3Ig_CF8?&CsvgnrZN$sGBKGy(;#uqF72hNH!kQTT===HWV9RdejrnqzXP;dDg)7Mn z9Ce!g${zo&ee_7i3UxM2w&Z2Pfy_`?hMDxiz=G=_=(zRyZ@Fg5EkT>NgM#-~+=c1@EgDbOkeWZaKjnZTc;>#K>9cB~tdisGP9FCA(VK9-HK$4(PYo@^CNo^Fw z*e?j`Nfzz*Z_#M^-GMD!W908TP3&fUG(C&72EzF7ak4Rn{C7R=D9Y&>u<}1HcI`u& zE1kw(56Jk~W7fzwUS|)O*k=>-q$zV?r=+~TNFz+lHais=fRsVQFj(=i{>7da*`tWb z8aLt2zNt88{!B!(A7$uXr_3D!TMtj5qy|{a^*j}s*G-(r!y594LDpowd);IJsp(S= ziT@fTvga{WL2i3J5Zz0xnuti8`L1mUZ}h~#_QX4x3(N7(nUs4ZmVoqiJ`+#m``3xj zz!uc05s5)=EvC_P3xBL11z*Q0i`94%kc+*G@L9)+v}S>>4wH zrVFreh;SHR=ZVX4Iy`#hAe1x%x-VhQe4a%Ce$>SH-1jqOI5l>>_MQ1g{S$l0^|J1l z7!m&T@AD@9FG8R1?{_D@C8qv?d#XVtr|pVs$p^mg)f&vXBpkx(n4E3RF>;%nV}jL* zp`0Zq-adIr{(oSya{X&oSH0TLBYqkW;Pc?asPR!x6#9S3Q+)>d$9P}Ga$x#nMveYv zJR~k7Z`2ylFQXrR-Qu$~{xdv=ryq4?{~$bk1eg^_@=Gdfba{igl4hnmLSvDaBkdgQthWU8} zQxoh;D7C}02 zh;syDy?f{TZpI|zGENGsL|!&ygygW7LqEX0~djnM!yjQPW_U38s5+&4x; zgxf4znA4#BpX>OGI~{vkI2c0mWg2B%a$aOz{XDt9#FSxt*4Od#PfQTIQRn$R#H$bR zj+5q#Pp~F+RvdhAm?xa)fhp_6`dTCFi8;q9@!)H?m6Z59a!sQlV%oFFY7rPY>Lfq^ z{aoI1dx_}POT-}_g5jWSV6V&<`}yL--$n2?_op_paLyBs49+1^N5fwydp7t`1YD2aMq0@K}&jj5B z&vx2#C}BV@&|m}RU^d67UigO-ic!$@9wUcn;PYe$#)1vJl}|eHs7nggVRk(XA0tTX zyK;?khztQ~ijd58l5!4|&*!992dMr*q$=^x!AAh6$(4hsfDJjw;XtCXPP#;huG4`c zhY9`%Sx+Im>L+`cj&ZI7d*l_|1@MOy>tHygR71r4!n+g#?1CbEW>bLb(rrb zW*lN_VBmqBt5@(IB~{Y1BaTAw)(IB|^5`ug8>413SCP4pxd zS`KCYj9C@4px2PG<7~kUpor`^%M2ne44kUHz1AxS1&Iav{6m1}I@7H9Y+b}x;T^H3 zd*C4NhE<`7wPAFk>C1q*Zy`7Uxh)-~ceOfijxjFicT7d5~{*btP@w4PFA~;XHdCa#CXSBns~^BCw1cArI`I0Zd#Y^Jv2a;J3gizhj_n9OJv|dSu3vw@<{G z?=_lGmiX7Jm8d}^OF~N5McfO z#2lJX^&P8e#^hJO=iW&sL|EuB|Gsk(85?GTQRV7aT`hCNNDM_jV&9mFxiR`9YKjEa z)tCU?0tYDJF&M&=@dI0f_!jZ3%vjIQ+qs z$Qtbav-v_ko9|AX%AU>G9dXEBR8xpCHX$UnS^V_%%waIWL~Ff~J@)-`@#DcGVL4v*p3v%~Ui@GLx@fXU0M=QXk9%*^Y`GxK9ek8rVR<`Y8c61U+%9}-rqm3Q?(QuCa8|< za0J@{g4v5QTtDlKdNRVg1gU}EpN3T|)UG*ojuX#vbFt>mA@*U;@M~z$Xw%yhQP*kIB!&&4okA1Ca`b89vI%O` zTjNR$c+QMVEM*@z*2)Y?JRkYMj2OMoyx3%lI0hg(x9z zja*aACq~Qdq^G%Vr))1m6}8wRI{PaAoIf9Y=8AXBlp$6CRzRu0StoXahkcN5t-oh& zi!o#5zi~YA^_t_%XW&0?SFN5ju~OfM=t?0(QFGlW$(rvR8Bbu{W8W_x(O8i)89Y&W z-cIO9$LsIc3x$_owD{+{(;3 z*Zi7un{futX3Q222%cOAsacE7TUJ8ihEeW=Iu5!2^v45d`sb+eS+9xB!H zhoH}Q{M*AARyo`gc)m|sCj&`{_<54aOl%}IW2`5bk;DcVymzb%0&<;j@j7J|Il%;j z!0JI8?`YOheBXER#J-y1LwE^l-{%_nRFQ1rnpdir3ljSjpmsGdzi%XrH9`Ved&cG5l=m3NOFlB zRt@s@N18bbE>^SIL$NQOz$}A>!{@kqX(E%DHb4^lzD`&c5tqEuR3u1izbD3Io^8ME ztp{c#`Lbb=*!6PLGxzJ%B_C4w&N>6Wwg5JvcwJF6Ar=F75b(=n0j{6sT*P$EHyPaA z&sn#DLlvT4_YsSZec;J379Kd*IE0hw?$hh^FY>r>>{rebcLI|>YcWzJCL`x(mYC*) z`7%tw&70L5xmFQ(=ZUZ6rPpiEVZU58Nn->!y5@b%9!MQ>;gg6OU{!G|vl%PVOaqkUWStOa?Ei;=?>>qmYJU_N?GpuQzdpdH?>M zb!B+n^$DyVy@{NSxK{l^45YW2Z;9sRZ!^-__*eHdT>V z^UysR|6YNhtHuF<;kd-c;qWO52e5J|QZ%gQ5dfugN(XJ6MDZGXtY^F{6Mg{iGH9~6 z%^)!Mk|(tZK#eTZ-6FUxq8r7&L{vP}oKwB!kvU6JngfG_IQEeaBI{F0G-AI*(}PH{ zM>(z7iqlu{34hc zC-mFEgsdwuFswI*(U{;bL^qw?KFNZB=$OWu`Mpu|7K^Cyu5as^sIQ(2M~;YJY7$(y zMibZsAzgbCMp@VBZ-^1%f?>nDLYug1217J-KHo@hebm-?o^A`q|HKdyk*u5VpG|a) zIum?dv-1xkZ|yaS_km^O^eB7IPPjqj|8#o8Q@0H0V+Jk)Y45fZJz}w$DX8tmOI~6I zH+)exsuGdO@5ST8eD_iz{**^B@FObi{d7hcoCkk5~`+h^8kZS@;D zX!MX7!ivY&ysNsWSs^ot{X@)JrV3`nuRL}wP^8GL^Y2Y5OP9LYZ!_3KeFgC3F zwDQ!yB^lv{shaAXYD?cvLSCARW&nE$FT%=CD0K62XCZx{Z2DW7Kd>jB)J_oVFuo^Rlq6>s=3Cv6^ z2clg?rBF&x;DCE1V_jL}XA3OtDj*9di8w%t4M-7rp3)v5Jw#cp)O^IU@-k{G z2lG+CPhyh-hDM6~icjK4*QN}^;dTQLF3d1tojDtSmcdON={hE1rckyof=t;*e!9pP zq58{hoZ}V>V?Icy%`X@UeX@_Aca1+zIf=b#!gsA$ z?fp@3WWRmZlXVoB(O7-qmE7i9r0e^Tg>5-6?N(lWFV;iCzr-}fCHvtb?$QK`*YP=< zSJ(VeF)boQPgh^Ph8ocL2rn^iM3Hy?ouv4S<6SFN@0oXCeJ-1Z{xDyFh53#@2`Q{? zJ3A@!SV^%qi&vPy`Rv>OGUTN5% zZ@b@ZF!W+c(tlkY`xcj-%G)4qBALMxVK4&lmty3QL2|4xvpMO2*3Xp0*>w)N>U&+) zs#uTsyvzeB`fO4P;JgY(;29?@*%%3o0K=>eir(DIh;ceo(Tr>FS@bF5E@vyiYz)0@ zjQUJH+xD3aFXSyBk%PJ#?gI$vSW?JTU*J?C9WxH?;qJvg^PTlxtxq;TV+(-c9+z`y zV8gtiHkXi>Q;b({4IGO6ErKJ$wreZb#32%S`NT4QZhh3CDQltN8h=0POW&F6xP}7; z$rvmU35K!i)FKuw_zv|32Hz`#rB4}tW3Xy%7&UE~Mr zZ_J2T8G%~l_xe1=faKsLXveR`4#0nDfozdCsO3 zdf;(cS0-MrTXHmCbI-k3A@!fQMy?c(5}P0fPeFc&oa-hC=SbrNaV7EB_*d=)aUOH2 zo-OtxwK@;{c*#CAD^Gu7PRaxSzA#o?A7TMV2|HNh*D} z*7gGz2A1TS6Yq^nX77j@IQCt+Tmv~b8iiT~*5C?2Gs3opuYn+mF`vr>aM<8umBD{<&p2%HNWLl1LPO!L(4*+eJghUz6T4C;xoWo9lonk ztccN=YS?i7uO?;uF?3XHU&4ogPw+Mo%N~=SQ^P?-E_qx|j6B~|;VCP^+ zgM#2@!sFren|n>NHHlI$g*NzSVFc{89eg67co zox^%tK@d`s*I>>cnc1Vd`i5!KX7AXl-6VZ z4KkI_pphYY`1g)nAIq6PJB^{*7s-{?yO31H05fYKV8`s?4K&W~6j50NSt~*YJ0>&% z9%6OHiDWj{2HrE~XY?cYs%FAr%8vD*mvevl=kwa8V8JkTA7T=A!ppmj_{=k%FSOot`4mR?e zivsqwp14GHax_~%4gooHeyx{Wr|P|GWc*qdHIvn2<}d26pI1Hj%X|X%j(uFXd|=qp zVvlu?&l(nxbZfSRdG-*N-khPXH`HxP~N8mRWGMgX6S$h_Fb&0Ky|- zybiX4WeymK#&UEsh!ABd7)(r<8>YihKz0}dHZ)TJ;tI)dv@%v0SUC`S;C%l;Cz+0B z8a!FF{Y<=T36e`JO06v;Lz;rudm1niyCFF3IZ>bg-m5vz?~$kyoU_3xT5CYE2D9$- zWdB7%P!A2f2YEfkuaR+HF}*&+Iz}#6&B!oXq=@?hQP#nm*Q=3_r|8D;%^K>*BoU#I zV^1DJWVrJnNn<}hdZ>F=M8~RsGZ|6@MXm-(d>A1^Gy)s1`g?vS2V}E2cIP1&y z$zH0S%XbwPvWFoaYp>@CJqNLoFp_1dvtgQ$$O}RKx2|q_#ru690f(t2iztek;q4xu)NsR&Fo>{#3e`RO`(i5BE}@Cjh!XMVjz zx{+pzG9j%Czc4eeQ`i@0NG@`T+;tim^JW}6K)?w;ANPdJd#clKRz1@=3FF!(Iy8-KQLqWs9Qa&D}V7~ge~ z{3G%>42^g{XIta?A%e4y1{P#5Wd94VU)mw-g7`0dJm+a*(mI^__uc1EI>g^7vK-1N ziVlVWmi!x&uuh(ToPK{AR~&aXFrDrOnkeE079by^-Y@YJMcGYk=0Fx=Hf%K;$w3Ma zfXZ+eZD7i&Dh-4#8p-G9k=(Bgg^bS$Ucc5Zgn9{O5mO6%tLf7WLgOWAFhFNLXp>Qh zC6KV`>t{mf)`#XW!y=X+q+aqZ4Xq!GxIz#c=ppCJUU);0Rsa!jM`x;jWq z3LQhj>9HY39y4!=*W9oCSq+>EmyeodY}cus z8Iv-55^E|}cFLu>q96y>jgy?1Gi93E>D-m$TALn9pmxR$Bg;kN5^8#xi}7rpwwa-9 zB)sFAICluHUq-_x?>Q4+>!VOi(FV*_K?RYw$SvZ&PQ7Z5@V&r;6LSlzByKqa_$!8= zuR%m#{jo$Xu}Xy9>KWme<5W~|vkwl0_l{cU!A(4?_;O=G_I%(KE)W~>}TO^l~+WYrUnFAUh?D@~Jc}H6)TrToaI=heVL?8Rdf{AW z#x37T&BPg9y`ceQV(ZIj*vo~|;)$X&5MIp{n;GILi#Lnb20O(Y*AIcQ9AEqXB`Tx1 z1~~p@kN`-sxklshSt9yKws{JcHL^s?tBDC9D7H&Dv(U}8%G}%kz(qBPk+NUTr9HdW zv_xvwIYjFqT@c8SPNE@)m;l5eQbxcD<}vifNglr2U{#-|D9&2T-i(SMpf(mJHhhqB!mlV z=^Q66UAcH%aUU2j>#ux{K6{;9No-!X1E0SiupdN>qV4r+HJH!+O zq>9KS{l_(8HCee=;4g9g`rlJ{#igF1A~I@t32n~Fthwx=?1NbF;2`X8h{=(nE9Vzq z;hYr`%9(f>-iyFTent!F(c;s z{pK`@2Nq;c8vp%+L2%+Y`G6gw;Qho^6|QD@7|#Y)nR)k#DLEheTDW-E3UMa-N%7{# z%Je7iS9l`*2s|WgXJXpv*AlB4{6vnGJ0z36^?OTkCcjW<3U=1~G_r%5H zgcl`74<2Be5dB&`y0Gx5s>fJ7F54qYjlA>^|_ zGszDkIS6eI4jCdVF=)zlm7Wb_g#1N@IS6A!cn-jMa>{@A)keudG^OuvGc|1RJ z#m9!r0g5@87hnib_7I}OdpXwDXF1$1R~5aGptcA{)&PN(sPr3-cz)&A?(a z0n!XX?+>Fc>Vx=iLUNFXhp4j8jS~*`sF)m0poM(eoL!<%u2LtCFA@#>Gc)28WPdqn z&wZf2NyY}2f@qmZRroM^88J?-l0>uwz~>o4MESmYN6pV&n{dp zI2e6la|X3FOmp-#4gSka>$#CNV>34JIO}ueqHtL_=9=dsp#Ea|4DJgIUL^mquVrZc z54RMnW|rwe?s&yg_{T4iGfwZ>gMruN8C+{)4sn7r-gvDUrm>f&K@>CFYIg`i%mNd6 zqtBBcVD2PVUZQgeWSM^%e?5SC-7L($V2?nssxHX>lLLugu_LEVU8n+6a-aCb8nOe) zF^6T(4RH^Ckn><^K;9IS+kn5mvt}b}IXDt;$YxEBIn;y21|^#8a+cDGxxi)-sd)Bl z5Od&MC!TDaOKgq;LZSBBvuF>2o%^g9u2Vq>*EJ029)moofXrbVK%&=MzCXXN2MDkLAe^b$!4wd0GrH9HX^|w$?jE?qfTBVJ@YQ2Y7p71qaa~jyC#}5 zpmvHIxm)Ig5XM3Dzt3Jn_*kcb!x)Yf3KVy-mo@wnFe|^jUdhkI=SGdl@L2{~)>8CG z*Yt6PiH6Z49?YxNM8vmy;u;tfvAJi|M&Zi94-!DuvaEOX_;td4JZJP4uDm8j_pm0J zt$2wDTbK@v(>~8yGLb{mu*?vcfottzf)u|0`>&Z6FLTI<1+i%e6Xd?J4+hF0rAFph z`%hwU zn6de86ELXJVO$-?g60tYvy2D9hO{mqmNernJ7eu4Sz7;s)dgl0a~V3DiFwMOFc;ucxo){n8- z!Chp=skjr29-^1^@qKR3Nx|@i!-0>3&jLTx^yDE-*2r;%JNXAO-E`IBQ8IfL?h5wl zX?o6vYwg)Pl{Xl7hLuZP=G>|Gf`fIfvNx*-a3C`9_c}q38nnZ}>lw{A4Kuj@qlT90 z&R^j&K8@ZO_(1aY6gSv7fxUiwxiF{WhGdNIqX84_mSe-yUNlU9H;b8o!@!fI94D*> zoiY$#mo~L4;;Ru z(Jql9g2D_VbA&sD2Sn zm^EqU>%zI58JT<3&oVH7&2FqQadTkS%W%mxWdB9ooknkJFVyA0SL5yW-o#$^5POsF zvz`l#OMGeE;kvTl6H9q;lz1JuGq?`sU)LY|&Jv}LP7Vb#XzySs_ zNX)TN(2WAK6Nrq3o=_Y@eu(IJMHKnM-wC0owbqTS%7|lQi4vd1>pV3rPOSn5LnG|$V+~f6KeIylLrHfyhirj$G=#r z;Z#4*X3zafY$=|`$)7xDos6(QNv;#{m_w^$tJ7D0?21w41M#I8&zf0g1fP2V{UGMH zzwcTo^7DNI=w*Dwz$Q<}-V#F}GLN`u2Q4=HIQd0{XSewyjAB;~N z1a6(b;+5ow>$5msHJG9wb7P#~7j7t_rWo9@<|O#dmA|e#>+P&H z;X+v-OWf8vEJl$*s7>@y2O>Yf)4Pk!vr>SrxxWJADvB(q!l*K^A!F4U{ z^Iik&D6|2j(V!#0k<uQ`1fXEH(ps5ij z!KaWyE%R472H3wuc8Zt+W^*z*>;U46XhFp3?;Tx6OT23lQrow=)irpc-dCTIT*sag z*+_v9T+xFd~&$)*1~axjzVZ)Q}zb_JocJcgkJ3!$SsC*w#uBi zdd5yY6Q>*Jg@`VE1g0*LCPrw^KAzaBIh6c?WF&j%2Z>}{$Bm?{-<+}8)72Y^?>~rg z?)8J?oIz<+$P7>+EO@+TAl_wW%P`Q6*_iVs-?8`+=MDEl>^GrAPJz?z4HpSYTT|Tl00`@pXD%^V`IM&BqHPP3Vn0q|j$QKRBZGyI}-#uJs&PTe0Q*9DPWf z&LR`e)Va&|*z5t%HDiRBw|>RQ#30O++{>7WG+km}tEUcLG(=$Zm+|l+@W?+24ux-5 z9pmufirv6*=4n(ucrlI43llmv(qBFAF+*r<=fMy$ zP7eZ63wEQWW0~`EZ33YEZy|OHTZR2O`IExdQ#+Ceh^Ym_-xVjwE!W}~AOI97C|@Vc z4boXW*u&@}i&cObPuTeU0lG=j(UhZ6u>V!q2T0hEFrt-f978AvX~ZYVs5M!G;{njs z2&<;>zH#M^%|xIN;?sLbfCYIQjS@K>gPA9F(l@M)bTBpk-)ESMsw9{vOauYeDu&9_ ztwnyu;0ZEp0_OVc>zZBTkf=yZzW@Lr07*naRMdLKks`b>DF3@^G}oHs5oD8x#@Q13^e$LT^3W`U=k-drd6({+atWlcVd{PO2$1O+=G48fF^q9VdWm zUS)3(OO8GBn&}c2jBWj0Fy?2ECP~fSOPowRC)owLC;6}ZWM2%jM{;`!dBjS|=olXH ze{Cv8YxjiZCu=@y#(0xp<=|di(=h{cw%N^;#`EtVlqUe62X6h?XX6jBoHK?7_sMgA znA;Z?^YG*1p2@+J_$MBup-5wV;0E_>rV3`os2^S>CKg$Lejh*+n&q;3<-uR{)Ks`P zad+^lT9>T(y#4mV$HXe(jI5t^!-(eZ_jz@D(r(*i44(%w+^gWn679t7U%bIggy_>{ zcG((Y&s}%|8vamsdxw>&c7oaUjt=pkU5~3JDs(n1RQ2s!}ZHPWZ4V|8K$`xx}&XSxoyoCK|6500{L;)x^(9NOx_mv^cBj`rh8vszd z926?*k|3a-ZCLVM#HIy~M)0}Lc!)X0qmlCpn}J*n?%Yc~pG1<^)VY~@hMYXwfb6de zvARgnX&y-3utygWqr03Z_GW$&FmXL_#Qh+W)eAh$8FeaGG%Hri;3UYSK6N*JkS8JXdYkEm3DHY=%9(rp_mO2h z^4hIkj})<*HQ)G^q`~?fqKv(|PC3x$O0e@iRipoFENW(xFwvyRS@nHak=vRLBi}N;(KIjgY+kd;4Lura>j_*2re~x z9(5BOu^!QiCyl$>jOe-VbCGW6ByU<;Cg^rDaP7p zW398^Q)on==fJK<*hw#m?8uuLhyTN1&wTs^!&P`&fAi`$$-WJJ)b8bKFXBjHM$!8q z2|6U%lRt#xpK=y6;D5qOh^^0h1&_Oa>^(n>p_+BX7z&ML8b+NhUV)lWQ}j5&W{-7_ znCF@c6on6?Dh;zS7c=M9KRJUy_y)gtiCW&y${q+lqNE=fW4*C>TH=m~{6WISlp6;) zCblo5i?c`abmcg6qSuTg4r2}=f1Hh%iIRO&@vD9qzp4^_HGcg@%w5j9d@gw#bG_n{ zJ@&%-jB$!|iOUD`uX?ZC5qHS_fAIFj@iVbvBIxYNnkUu>e_wMl-l>B0nDwU_YW!Ome7vh8QicI$JrW5&4bHFvk;vUS>FPEB3t({ScGUhr~3_spLxdS$(zp zoO}Xx+@*lJ9y*KW7Y#r@vz`_ED9juj<=`icGuewn{G>CLL8bt!LY9IVAah@Xo!r901E-rKr(S##Sh7~xzIFEr19&YR*p#K=3 zZWoOHKI;76XT~Xbnq@Z7zUy8C4fRMtF@#RUJ;`+8-iQV2TwnF~ z*S+{i&qQY>+-G-PaSK)+0_MG7Ci${F5!wfS)L^E#aX?kK@X zqG54K!eZo?vrh6z^J&b7mofbP;OGMy0AjMUHf&~*#IBxzcwP0zP1q?f@;y!?NzRYC zJ7ydO0#4~(`)th2_gn(La4h1#a0hD{g0*TQu!4Pb#ee0Fg#N)-X>yHcaV<4dliUaP zvK~fnVSkC=)wheM=4?PuE3Q=RWtJtbB4pGD19~rY_HspJhH*@YMZw&mZ_;(LvKFtWg0mCq~pjFRH7MyN%0z)>Qi5|M#^7+pqnJ5-Y2Hi+}{QP`YBu9fQL*sS2^Z_asp$xPv z5+hk@Ry4^r;A9R+5R7EouwrwP%n@|#^AW2d9FgDA7+Fg>^yJT#elrHvNumt{fN-7? zEuwG%5n|VmOfi@5k^ULr_>E0p*UTJS{Ri=^@FjG zsby~-2GN*jaxkGM#3biA?+!fCS|rv7W)HE5*~eP%8p*oI+#5+ntx~9vd@s=iv%2be z#WOJ@@i+FQH#~p~)+e>^ad2cO;n~yd9phYw_)-Cn+>Cl*|A7hbG`_25>J^W8rx_Q^C^2p$oKO3N!VmG$gUXnvD`(_668C{i z-yEpPi=G|Yfmk7VEu&>{?Bw-_&?Jtpexi0cW+X8pF`A-$%~6RX>$I`u!A)!~)c0CP zQqu_rWLvAgs665}b@%TQQHN8Yg6QQ+VaReoDQU^zii=^SW}H%Sm>kcu)1@2;tGTm? z?U{#=9m4>C)kEPDU?3D-99)YvBZU{hvx;VbNIe%~zX2PA?jvkDH2-jtr44rN^|9{Z ze&)#t!2|0iFjgMAA-GQr10#3oN)Lhbx{)FdV**Fl2Y}cH+rN(t(eW2U;QQRn?+XjY z=QwCs+dOq!G0uxi}&ub0XU;h<`iIId= zcXAS^^+Hi9=0>gKA^_|3!3dh=BK~ciTG^>w2vQFG%c;)ZS+^ykUd~)x=84>1`n-$y zFV}}N&H8yeMXmai8#k}oVo%q*7ilze0^+X8+95W2|1ooTk~a2k*mU&!$oGplTmRZD zLa(iQs-Bh^nB;zmAJh~@^uls6#d0lbdQuS3DCL#U#MP`LU^NXOodG1)@w|V3)Y&5< zpEH}Mxx^~s8;!+!clUxA&B>Pxd%XvR}d@X9aRWzA$=~bxrItgGad3 zGIfreX}m?m4sj2RU#*O+1i2DK4Xym!WE6{4zG=ATaCU6v_wwx3M5Mr3PMBpJsogHaTuX*st_9 z9@=4u^l|4*-o0=Mam#mQ?uTw1pqLA=f%p;v1|Gb&h#@kB@avRU1lTeRFns&j1mOS_ zOUCnb1VB6jnZPJT&3CaT>0I{D0V7l>l99evlmwi!~Im@6&MxSs11e$vDNB^jYPUr|cs>0Hp>9)ci1A zI7C2BKk;C1O8f??q=3ipSY}<-a}A5bB+A?`vUa?4okSRji=aBODF&Jep-~T6d#r~8 zFBXaY#zwK~7;NUW=dhr#t;Y=Fg_;~LJO&{XNY^yziD1Fu_VqLNR=(FA@Zg=D}hAA!cEscljUy7llbpFp}dYI9} zUo{&TmHQKcry?{6{F+mOZQ3iyrIGE0@pc;{dN;A)mx(#z`XI6`_*t(pUq*cMbJjPB zv7FzBP^h(XSC)?Z^tzQ}&h{QT&}#p8&zhU1x=;1kVJUj{+)57SJA zdH?Ee2%HBwuRSKwVv~{>F7ZTHH3NqYKO2rim<^BOAB9S1J&TC|1z>LQGy(BgLpDt} zJ&PDc(ch`hB}f7s)+rH4+lnQH5E^g{JrGU>(u>T0pF3PR?uXzN#rcUsOg^yvfoU#oP3q0mL$ZPH5B=RyaRPcW5suvb=TucjtYu>ml5p-G*nnPjuK!0I>-|@4F22TGpujx%NI#!z zHMZ5yF3dd0=i&{TJTFn@sdf|0dlr zL@RR|=h$hb-a9lA_BHr}1t5CD$bWwSxK;J!K)xM)2xPwVTIcG;-goGIjw3O0^ztw< zcMY2NUcZJGd*|b(P1kwI$<@Px4qSMZa2C0{IG4`ofB&y7&@@b3lcN)f7+=c7buduq zW2%x!<*~W-drl-=7peR{|5boX$g9|$tZ71Rr}6_#={eVRNs^-g0BbsBl1^gz0MG#_ zi5Q8zti9{J8yEyOqoE?t44MSXODHcwS%3>b^Y4fJB6fW~CO4HYe)c84jw|a85RbEr zlb{Ry*}T4Md)08CGX;dt?jeMhA(Koto_Vdwjw#P7nLdc~$|c7_?>h}Bo}HTWh?#$8 zGGgP>#EwB$PL9U$iUFovt2T*)c$e|2Ybs#f^JgZ7o*0TD6lTDHetx~fgbCoddPAGRo3X2ONB zx>d1mw#if?j$Edr&tl#5qQFaBBi(vn>=_f(TpB8jzE2Fc*`VG$CSd-ac^22899bAy zKWE(-$HK2tuqMWzg%K1PLxg&b#GZ$#5Z}vp66XWvTL`oE#?q@F$Y6=T+L1(z2QS3M zfP<+%ydKth86JbXV9g(#Q@?!)Tk{bcO`kY@7nHPAW0H9m|8CwKOrgc4k9w;0*i@=D z*8Yb<;Va$jKgjuoo8flB=)+j!t9STkqc)_WypO?y*mqQ`3v;|LY5*kI>hnh*U2zS! z1lQWdHP>J-CclW!a#6T(lEEPK2IvJ>f`v8`P}k#El2a(9CYdH0*ERa@en#Q(-$Eg{ zNY~oc*xDsEsZ3y{V*U5sKbrwZ6RmS-AQM=ObHbq*xR!Xf;erAg?o}cwIu8R&GCMjC z=&~hpn;Ovf%gZn^`L=*m(GT}7f$k$;c#h2dL9WLS{x`i{u?V8rpG%}Z8Yz6A>e&K4 z0_itCRfXjv8jF6cTJbNVX0Am^3)Rm;yIs7GHB93l0`9^CSE3|iLljsjlTh> z7NPdE(D+pSglqHOlxJr%514!9Ml>xfx~{ka$3EB`aPiq6T&vEV)H_oDIO?(bMHBME z_rfE@oaV^NJ-u^0@5rl&qng|rD?5hD|CCEhYzZd_4deRfAr>sYR&QX>N)xQZT%v*2 zadqB==d}rfS|3FFy6O1hPsB4%3oky9`Y3BPaSL7HPO%->=bYB$vh##zOimm4pyS^B z(!K5CHdxa#5!3@ZSA?PC-)*qIL=|-aFt5_a;+Y(zV%7g$fFn=VcLHCuQO5f8nGlOv zd&HH(qiCGjWO>vZ-+l5m2M^%j6+`HgCvpU;UI~tz@4}ujvf5e@B$e~=ExE(2gs#DPv>SLNboRlovO>jn&2}Fl$ z9Y#xvCvh*BW+ru!kPBaZ^LqU7sWNn{71+RqEM;ooCUV*iuV z7TqEhE&5G<4>FiYRKLf#jb3zN?=PV;zULkkuqg_ts^O#VQg6A)lF4=BhKZl1P03($ zZF&l@$XnnI{fuLZo_c|?&St^N8|L2+qby+`*T_A8a_`~`K3n7Paa+Y$)B@}e#QPF7 zWBrLZdRTz9H^*W=5PQO(R}KqY)5AIt^4_cD--^Thbk6Ti=EAxsSP&(dvBb7uFVV9q^FucSX{0$~5m z&B6qelE8LXDig z&(8>$=QXDx*}ypFn=vo+kJm7deZZQn&(U?Bw4*hfa&ld>|L$Sk;$@FjUHI(p|DV7K z#C(8kHYi#qLpLuK5XDM^1d@1=a~_BQ>l1tf)d5!Z)g|Kav5F9O5Y4!9a zR>dK07B0PGZh7SF>igCn2`6L>47?37A6&zH+P$2d&De-Dv*|JRVNO8|`@zLdEEJD9 z2Sq_kM01pJJ$hNX1@*y?A@aPrhj8tKVlzmD-^uv6?i4}iM?rMaCx=ZduZXh&a z^V-7#uV%S~sp^M$libTY4J;_r1WlfvXbVEcvVkJNzxzj){;4@&MpbiOF;Yi=4s2& zbIf!D&AnlmU_9J#OKl9ALS3bsRE0xnnmq=Afom;6=^?=(xYs!)KI7hOlfXCkjDIqv zh!Ja8L9Q2cp!>+kTi1hcz8sO;4r1k)c1$Hzv{2h^ZlFZ~#F7W4cJ;j}c zUNL0@6riSN)Cta51R$=$9iZWYu}C(+v5-khD_4}CHiVLhseJid_4@8%2%_3cGM@N8 z=Iasb5@{=D>3WkV>8hhqJBdVDgo>p0c?5F5es9L-`HQqEuMGA{U|NLrX9&g=bUJg# zc91aD)r&k_aaqmOO;oPWGh8FUdc}~1s?@C0#SE7L%pYMmJ z#?(#Zd|5Q(FdkOlx9Ar6AGj{_A(2=1gpq$de3@XY*Iapw zXPj|J+{I_A-Z=<2a>ccmO!R0*YOezqdDiAr;7~6UheD~Iz5WAA67PTQ-<7WvbUeq= z>y@`L7CdVT6UEs#G?su1#_8&N=4|TQ#)!d9k@wEwVV+#v2|1QxxB7U%&&6@fJ8F&W zTZa((oTGBhefVVx4USxAh2F59{oOyGnM@EHE2H*Pzc>Wx+5gE`e5Q!`FkSSWw1;6Z zpiYOrI^Oq_&oHhbhZhDXqbKc~@#LC?hvyLP>dC|@_Zb-gjZfd$$Ki$duYTQ_pP_3coUvi^XPg;VH$G2)RFCUjVbWc7 z`uS|a1N4phO#cp~&V)6-rUzl|pFEOT@vN0lXLc7E_IlJ>`gY0+#7!6#_HuV_q#4C?wq1mu37{fXEJbOu8) z{r>DSO1Lh+gZTZbXY+g;x4uG zabpN;;~3-gSWDxjC(kr?6BkJFWseFb@Zzk>?=?_J__Z9!4udE>nx`GX#)Hr#;b6^ zHWTTNw*mgpL{>dxp=>yj(1u!F6HdlH5Y{BF3R6ZClW;Y$9T<`tG!LL~>c~GEG``AY z9OGKXpH&ypR7i$nh}jScz{TsTSNi;#Ub21<({R*4?WgMbyG~Ar;)Jw5hwqJiWy3xC zQ{^eAs^roWP5=NP07*naR0Ge{E28jMJs5)*p*rx5$9m>Qk=N?U#-JZYcRX*BdyxZU z~s{O{RIl%U72TE*d+u%+JKSae|N z#TkYm63+Z0`@LoxU8tkf13s}p&sm0-zTY+FN&XS%wWsg%s$az^q_|#+%ZgzTC8Oqm zLu2A6j9)Pd+%MiD!@j(?F~}euUb&0UjG9&rt@_m(+*i!y20n%fe&t5u_(ObE{sbKU z#3BgxVW{B@7SHjGpp@Sg7w$g@GWMLrt(&iyR~AO;-NWpA>4l(4Do1Qq5%(4bY8~UV z66}3;);i4hmyu3g;=E%|@z6^+uy}i&kxez3=wt8JPzfJ&-aj$TgJknMb4S)K>(hNB z^w{oo7iS6m^K*WSK(iq`;Y>3lJ_}&mh>ds*>(mCQ^XlJc*{AvW@tg~PRdb&n zD{Ob)F$R6=A@IksO5g!npxiz9syTATMPAY)?;ln=*)o3Fs0r^}vK}KKIag&YLpEQ<4+C z^V|~~?Du&|aCR;di$e47JgH}iOw~FPRv4>N&*`IOoLcOqE2FGe)bt?HX=)fS^jGY=R%BG9H7BxcV%Bxcyh+6RnC3997AtFVcMz zYvuV4Vkx4&>VdVz9?v!MEb;j|SD#hmVAZsY@9P!e~^i4%P`6kg(ZLl@|Ii<=*PE{YQ3135Z+37;SH z$U-b|C7TC)j(N@McRJI?$e;d+Q=Gz}Vg4yZ%C8J-stgR8tsdYyb&YV7Tti!&FR1jE0NI z{QHkWb~IJJf4IIPj|pfhmy_sU>%E$C_&uE^)z>33YZ$#E5ZRta2t&qRc}s{`drUo2qm6l?^BK9Ca?iM~+e=<^%s<9JSmMc#$uq_K zS}V`pBvv_<#KWrH6)^mRr_8Lw@5hqC(d$p-!hI*yS+5|F^u~28)3-Fz?T2CdBe%Hy z)hmTnBUB{*is5>{dw?e~J_E<3;vQnRVjXVGFrNJHHV_{h`}i*663<@e()rKp%I@tU z&(?oeImH@+vlYlu7HS?94hfX#`|=g31}f7d%w zU34Ex=X~6*TK~NO3ljGP7* zjhU6yz^6faojqV~!k;+*^C}1d+#tzY0xuWKww?%Lz^J7lM^;Q~ouY*IpEk4;giT#ciEJc7>mS*vbpjmqh( z*gwx!!Spi&xje}Y_Bp0(SZ92Xb3qeT?%j2h%(4+z8z!Ny(&tC*GoHR7bCD*Bu4?p*?zE!st^dJ1-bHnFp_N~0*KEroUvyFzW z1A#{kGRbuocDvUkgB@}1vpgoADK^R2OC+BC%sCTzm(PcIO+4aWW%`dklz_52i3?xn*2VcMWiIKLZnc!r_=7Cs|aK8BC#uYP>h)5UFg#+}2dFBx<7 znfmS}coP<-o1?_%q!+l)HXRV}WrkEfR4xYNZg2whzRD5vw2HAcSf^s>6T^rkPm~TD z@k{*%Jj3g#vrIP#+PJ8C!1=8@Pqz>bezwH6eouU?ku`^W;xnulE-W2qlJuf(lYR1& z{qxYQQSV{h|6gw?O*R6F83AGgxxnpOsKvXQ$4NMnkaH1)BwQj?pw?i)0}r36Wu_|* z1S=NLaP~!d;Q~M;sh`H^5;k zDIenXd_4b`NEu-M+KXZ^fY!p|$P;ecU`)Zo`b{KcO&qSgV`Dl<#%gqzFapS%D0^Qv zHOJ5Y@ceQ9!c#sgVO}EfCa0f08|T=V>a3kdZrs|qF(dV>Me0-wjWr@qqv0aImft zuyie_>0>>I{otreKF3qQXnqFcDxLR;QxG33Pb)6rrjEJMB9A1+{xy_PbEAeGqhy{P z=QLuM>SKY__a7d8u)o6dChttdSL^HZP@P+pvhK%HDYkre_+ZB|;hJ;V{lYg{4neWv zkxZGRK52@4Vv=g;;wTk^?*ay=Wv)tWHAXQXj+*CZ(=fsPzRt@ALOo|0gFY+oKlJC0 zlXFVkatzU|d9LYkx`l`LG%ri>(isn&J@&EoqIa$GJdAVhb@lp7Gk(`wXT>vG&%4Z6 zo`E%Zo%30DdV53ycgfZ+98 z7Re#n{(Zzka0szlBM!a3L$V*I5-L&_`EbJkI^)okXzRLz1s&J;h|g#J7Et{Be=rV~ zdzb{hiN(=W&LqVdtjSi0U7R`;KspbY_{>MYGc=P0RC2(1mYp++Fj)+J^Jaj)L9#xh zBIemv`jKRHN*?*K9Mk}IS3@I!_ByUOQjk~}q~F^QIq>hFhVTf2D*imUk|q=lZVAXP zz(y`!Vr?{;)OeN8CuRa$2Clq*hg9T`qG{lu#iD?lGGTxsKrYf7~Z za!o^WOu5pe@FnIF_9AzN_&Fw>#A2FwD=!ZN@q;yqj3!>;yav_|T=;%&U~a|K7{mQi zU?s5?ey@@IWbA|3i}URLUTcTo7|*UfsizINQXE&`KyHs)0T;n!PW#z`BRMZeK7@F1 z?KYa&gGP?HHWH3_&~*LkOTvNBmp<6Qo^pLJP36P~20v5`KVr^j+98{4uRw{I8RSyuJMwwqE8=KFy?cUc)p@Yq6Y_cS$7_gVe6Kpf`C8bI z_XmEJ%%nJlXAYT%{QG+slR?uB7y)YlG&s94F=$L!iyspK3DW|fG#yF6?n!`M{vkR| z8j1V{wA2{+`Tqiv1k;Obf1kaa*+2%?6q7|mpknOVP!0oN0i=an5Tk7135Z$Xol7Fi z5d`=y70)1b$91ehEPVBb&pVt=7u`z~cL9fds+e-`1xzNk{Q9peSaHH*un{g#WeqEYcWie@qr^GzmlN z{6{PicM~!TyuGhmf*Rc5W+ojJ4#b3&({&fn{u5kyGf-8@+j zx;}OStx1Xqiw&!KMZAt9a2d_>8<)!Uc+SW_=2+$a3x8I=>sjemMiSo^a|0tq;z#Zv zZvVa$uLS;~p?5Bbz{eXqJb&fgxEUkTIS2sO+Gl%Qd%fyu+zcYtRIL%uD-T9szrQ;1 zn$EoT>byBbOA|1Q9pJi6lYuG7Z|9_Jn;z8~|>A*2H>x)OBO3^Y?|Z+RrkTSV!); zuFdKvhY@dF=GhMXbzW0A)jOCxI)^9DC2qi+7mxn;qtUAlGi*)N{T#h_7(Ul$FX3%N zR5fot=bZcuPJ?l<3^LX4z(H}MWh^;P=Scl59CAf*J&R^fIv#Da!J>~2*6gW)V z&TE=dSED1?j>!Rv{@)+t6$KZ+fuw@$#?5OcM>FvzMspG%u_(OOMeL5IG)VDxU&GD8 zzgff+=uDtHxeTImj1%E=1ACGcoW*eG(zU~sumI^#JlVVifL8-xF0t_s@@f~9>t_DA za6%5g2!Tme?+JT}#N5s5`}xt#^qEi2xhdd1{MiTWlGsbPB}9T(4JemaQ>S>r`WnCh z^wCTa25_GS%BsOZob1{Lv(1F&oIE5#9f>NCaF}eq<%pnkVwp#UnDEcSzO0xPq@jDrWK>_a{nUzr-_jS`1d)N zfwuaCaS6F)@w;ND{8)Ivwb=afcS)c?YK@g$KS^YzK4#(K{t-z3g;4{m0^WAr3QK+x zWaRRwTgHSnp9s8f>**Xv|5mQnU;EwWEMa|}M?nY<;p(6~YIWp!<&Nt<^z=XRRSRkL zxIT0CZr5}$l;dPsqO5qx!WrXe#aa9&n%Jrr#xC(|;(edD^C;m?xcRtvM8Mp{%?CFl z-y-&juZ?}_249>2AK2Si@80v^g0c7Lj0Tt(zQfP2Az;Xx)9e&(4LWc&$kVouOv*kMuvOR#sxl{2=ARA(6@TkHb0$QTR!g`Pg z$4L1U-9#H#Nko{;1%fncie$q?k4;wjz4rfTRt%>d`$TB``OkU-i6Xf6XRhm*7HUVF zmho^2Gc0obu2;za7moQ>%`dEdHT;B$1o*zn&nX0(YRD<#YOG)2ZP&vOl2OJCjjTRn z)#}yQuA2+B-egR$Q7((S4&*Dc8L37 za8OveCY>9^Ly8jB?=pgogOw9H*RHwrp5u(pX>ht)pUe!4x^(p&*c$PlSQPT^FGkTP zR}RtMKTA_wtS#{u^IeyT2N}+dk+*5`jB^<^qx|N3ml5Gwz=sDus}^6_<9JprCeyGD zd-5S0NeNF}JN!G>nw}-WMqEy!@v~RPI@KngX=A>=KZGvvSM?QnHuhwV(HLaDShao` zQp5oF2>v~NU-3=@nYFG*E&tR5E*=kaREudydfguR3)fs2;g}fjH8A|yAC6lL9ajtM z(*@z7%Gs?#Ojr1tgof`75d6zDUW6(Bu7{i0@w*WVgnVTo2_7}mr^9pXH-a@?8-tR_ z+BK0KMA$`U5EFq)Mbc-=TMY)R1c*oc&&f62q8CwQ;L@3rY!&dCfHAfOtYN(kFq}{w zgs7V-f1ZjMF<*I;M5&0)AgThT1(FmH%BKsII)5%uClI-5DSwBlcM(uNL%*6r)1r@^ zjl8fZ?d{cs1DJLbO^wO5sL4E2a+p-9scQYJUVk;BqlTjqh}bsqIG*o+UZmw{AOkZ( zZrEH{pTFu)YflE2`$n6shbS4J|52M3_QS|^4hFFv&1ZaXm=M0bagn8jZNj*YZ@|+v zRXEJ*(W{XdB(El$pO2|8``^x6A>Vg2Sr0f6-{+e~$CW{oHO6S*im-_0Q}w|QPK5Js z{HVPgb)F2PWB?>gF=oeJZ_E!jN_g@hp-0r-7FKdC3_#dZoeguW z&L~~2eb$@aMFC_}>B2ALr@2(Bk70^jgCo?Gr@4t!50mf02K1%Wuac2C_>CsGHX_z% z$*r&^8W7w|67sCO{;UP5@s+XjZNo!DER!TWgHvi7hr=ZH`pg^5CB?Cgr{>N}^r??{ z;OKri&RLk7`knj2bt_@ig3hFCA3d&W<5Sa&nK?Oe=Fub4^q;XvT%GuC9x-?5^W>|PWY7s7hyQBEeNm{`10prx;z@d zBUw_@=zl|8mw=I|XrMCCx_JR`2Uw;FuK;ogGEUG}$NAqs#B00X&$)ETGkNF7ZK7J(_8sGsV?W+}@{wB?_nS-n&)+{0kuJvq5mV z9{TUU&PxVJ!hwtE7}!Shwct-=5;fz-*=MV~yNFGtkcm_MJIPPwcKX?09eL-)ngEmJ zCqm(UF%N_pCQXSzj@mX^rel3whfewLoadU;pD)ZPjB#K2J|o^rs2J3H4so>zmx%JG9}CL#F20^sB#XnvL_nqDL0Yiv)(v`o6iIcz{Ehl$Uw z#ZRx)dS1qPGK%~8p>~qF;9grX_sx)mtLZk#>OVNEel`af!2}rCtMjrL>)sM-YKTGo z{2Yi7i`j#cX<<9>cnJ-u%Fsbt@_ff2_$dV{Sc-N_zS^g=Ky7>bp;Cv&Df>_hao8 z`WF4f2gGyq2$?197gzm{et_N*>(KcXO#9W>-9MFk!=OpPJ|=Ps$|8Jj25?9$I@ou* zQPEKejfdaqKeHH|@cKe*Doh491cC3rA1^U`xj-a>c7*uc@UtZXOj@c5h9O_QGS4z5=~dDZU+z|+}~>=DRJ0xcY?5hTC_M#N@j zP$i}v(>ao^Q5!gy!j1&&UGE2$tY-YzMiWSJZO0^GyyGC_#&AzNm+|FX#<|rx=yW?j z;%$&{9>0j_YSI=C!9X01IpkY3k$B!BHiPi12@eeZ!|knM!d;mAU?sW{iFIQ_W7BNc-rmnJSGZ}fb03=%=oiZhvFuYg9L$+4A3ENQhruEuG?|y=d0fu zcZ~6gmxQUer%KDvLIGX`v|}8M|20fV*qLrf`K^LaAfd}@8^bDg#E0V zQ$2UuCSH_kKb=Fx$>;J1d>wtyxPqGEI*C=|yblv0VM67Kd+0LxgPBg@m-;w+{V;(N zRxx%k54rU*@Nm703p|W z6p#yo?#qo>lNWAO3DV#c4t4-nav&Z>UvVV)jK!S}%GZmIrdNekAU@uuoZGYwE>9*Uf_8M;RFoP!3#GzIu{h{ zC0JFEt2x#h`3}b1&qv%YA^ppR96;_S7zl=ma3mo5AeVz_?@-jyjQf!8%RnF=~KV`u)Mc=3rzjW7<6fF=kI#LeeIa&;I+I z@jZ$3fy=@4c!~dk#Wuo_TLULvb(&(um`d!g=}j<4x;LboR=)9|JYPM+=2FGm6FBa} zCIr4Suq+wECYQqJ#hKi%Q@;xrF?@`g-D9S51z(HFk$O z{rCE7uXQ$yXnVSOojrQruR5`4Pe%3VH#}EjN66oS&p{BzA(`@K3Am$|cdXd=DcC7& zTqC|sqdXe=LC;^DfIlZDu=f1#*F-;=MZhF;^n$(fdUxuN%#}ah@bZLyvzOORoI@T)K6(}R`7$co96UIa z`$Oke;ik171Ek(j?^?XEa4{y76Df(4Z=g5{i-eKxk_ljN;nzeaU72$rsxX~kN!X|{ zujENWIu#9@$Z;SP!q=oXk+eu8R~5jG#aXanjKbp{7{3IXp^*6clrsY?ilFlBgLq3# zDheY2`1-lYtBS#KFR-fSHbf zyZ6{;&(hxIn(*Y_j{74 zpVjlO=?c%`X<&s0`}#a{$M5)cmX4{P)#p%Hz`FdN!?*@V3}p`fFfy2nBVPk1k3EIy zZX|U<9NP$8b%MQKL|}-xV~RDV2j6E#VI(7CVH@L}2wD;ds0p6sDJ+iZru%|>$EXoq zH!lDHAOJ~3K~zK4^1^QZT$pm1xFm~>CrMz38#&47Ot`TGC^4G7@Out6Fk%kB`auw4 z7k);Z7dEDxTE-x-v+}*)>6|jos`eSfepcXRg{3yw$*Y!;1-zliCoZp^PZKND!VtpF zJ7N|0d7TlSAGxPu1Ec)Vn6aZ@Qjf!)E4Omqk6;jt9=ny zj=W18d!(d!s`sEZQ=qQij0cZA4Loab46WglugsNX{y3J#VCM+y-V0HR4eQP5OAI7j#b>`cc>{o^Pe;RbCCI33G^JKoHJWMaJbIZnN zK|tW^cU|D|I+O#LE`dd%#$;X-Oid$sU`d3n!Y5z^5;?%$QxFye{!DWAYvPu!t{7Z~ z3u7?Bdk0xpV>t<cZt)g+QdAwy*WSmlT&ERNxd*#Ttj+&#zv0hsyS zpulqtVlg%M(PTv^>V3)S9e^Foty;=5czD)$-*f**17AegWb`690xmYMC^0ICqnoLWRCi5;y%PN z5_fbx_R&}Xp@!G*&n6=w7Wl4x?WG81L06-Qa>DQTQ-&Eaf_CIW=(R_aH=v z@wEEjg{8;$iEE!&5o?ZH0G-F|PnCP$!&^1TI@dMNK@e0|CemxY_-t_!|o#GIYgD@9f zV%<4`b#w27GpgSZ4_!kmrU&QXBZm+OzZT&4Ej}CYFAeSb?DXqt#3xdPZ}xoz)O_B%%YJW z0e9AU6&6*@d~M%rtuwVAa*uJpRBky>jD^<7pBy(IV}4w`dNc+6_a{=W8?Y!8Eku)u z|0GpP2$CummNyWL=bi1*H0*n){#}!Aq*Mn^H*#}{;tGq<7p0S#hnh%S1hy(7M zrh*7upAQee{)|L%j79@VWWuCUBJD3^aS&9mk4bzG(b%~4SrbJ!D1v;8!bC_!0Iph4 z?e(?zI>+&IH1G@9M?=%Y)3u*5kt1-i&J55AobCK8X9kIvsHkNQ=NF&pn;Z!v4p94m z;R^0{M!l|qZ-+P@n8#cXpC9$==_<)`%3sy2pS7O-{f9KIGZt82e!i;sR(>ba>M3e{ zzt5`Ho(voj0B$`^pP3&EXOO4MBxbx10X$4ypNEZw%E?58u50JDc;Q|5EcL=q-Ud@; zkW)PKBD;Mau9=r%U>r;Nl-9;GR?f!th5k@@7x5@vp9j7~)Af;K%=J+hFM<@FH+n;T zH;}%Rm#Y`qlo1}#JQ!xAZiz(VOOufp?>z}~yVjU*-|zF9=u14b>2~!0VM6FuihJBS zfC)pO4j=NJeI)TTerMrfz~|oEj~hjy4Na`Y2QCpcrpr7-)Is-y$DX+sV|B{O@o&nV z(L=(ThLAGPbgdB|ug_{<%M7U8B<3EmH7>n+oP~4bBaRKt77rMVT}Q1CZh}77JwpAc zFx2@ra_6{ZVDr~z12vAZX#73lOS-P_+ik~{lTP zOge}xwC_3w!O)aoHQ4|-F&WsreI=1={H|d%O#J-1axVXY55n)f7 zKE%#~GQ_2YvWU0A#DY3CG6U=o8pmyg_#P49fiXPyB%WMnSDsZ3Kgh&r&T9V4F}<2} zcz&u)Lfary{QhwTzP=lY$OEgAI2?jMh?pogOvoP%m_&DxkC5*vhljZkCWxtTEu)zD zX_lkO&d7D0bF5p5-#(vkBj$-|oVH`VVY&Y^s8~1OzmJ+s!s+O1%ecOX3*PfNPh&h6 ztA5iza*c#5q$5tq6AIXY@5=kpx5x#;+^;PD3;FrnB ziLq5JUM527eevIpwJf6}@T5Mc(06@HCyA)RYl1!)f>`2;`ThBGz%UOY_`E3Gzh^{a ziD~8j8_f#VMi9przh8ou98WxR8Mpp<0($OEwbC~U6Bqu$mp_;jc)WS<;=!yRV8>bu z_~@uh8|xMKWa0?78EfZ3s=0yPh{qLXVqE9AFq3_9iR{O1IrHvXTN)xPURO1g#263K zVy`xun$##VlV&vJ4&sr_EAVV6;ko1U0if3&4G?T3IGmNt0PZzGO`vp@xeBDz^=wSoyQsksh{?lIKGZwSc}c+ zh2x_U{O>Oo#9TKG)sZXL&D%%q^}D!+bX&-#DC@#~Lpm@TBlVqNa11kt9DAv4l4QoW$UAPn1xe)Hwm8>%@2BdFh(e zNXUn%8O=ceIhM?4=-O5i3?>lCb@}&v7tT71lo+W|269)0I3{&^-Y;QsP1=^IR#6 z3PrjeZal5^5|ldzi43z=O@ed=_3UBzd_Q9`IpT`^i*7h^7Js&*JkC9kg_DGbX=^l1 zB)UhQu;yrVhW)1|9F2>k9tW11kR@CY&UBv(IX!+B%*O5^7tui-jC=@_>hY}aS{82l zdH&pkaE&RyMN;j(@>{td>jZh)dn38>T57E(OwJYbVDcE&$S~q9z7C$$_`w)Tm_&8(Tjc%>NFj1jJ}Kx<+Xd? zXU!pYFWxtJRltD6e>yf6oS_eNyk6Y)5HjpJAJf5n7T6SVp0#M6r+i6QMw{vCll9%k-(;TiOp~GL^Hm>=d{=S#%TQu*CdIRH z$bqZ^NLNSxL~y<@IuBeTrfbY3o<&Nq31mMBO&0cAw*i14=!tFx4*Ob78wXU$G2&>@ z3ys^LorEax=yTPP)50YN{SK~?jl1@hz$z4T7Z(>J;?r(3{{1DK3A)UiVGJEtNluqG zIIDwfBb%CQ7kR{d|J1c$*9KB)X=#kgN`H1;iTdiT4m;ujM%^Cj?8xvFGcH><* zyR#qr?6k&#p%Q$FFtA?J^kv|DsJ)j6`}gd1jkSXC2Li;KJOdlUb#CIsz>LbPmnj;A zaU{>oo68u`RQ|fP@QKZLZKK!Gs7PmBYe-m=gwoZM`E16>*dsh>10&?!$k`;KwU!|Y zkr&Ki;=?$TB$mHxqA5D~ltl7Rk{$Mt1V zDPdWRkIheGjLxMWNgfu4QjzBdZret>>zef)_$Jrksk{3{)#l);7cV~eh>gB+UKHZw zLBN-F15kZ<;NA5+-+&WO^X;02vCexcqz3O^to5DYH?Z*v^Ygn?lA8IJ#YcTN} zlLNm^H9m4yoPFrts`Hl?Ggo$A#AK`@R}v0zQA6sVr9}l0ev#_+9yzb|xHu^b1vRFk z=@0-=ZqOzwPRK55I+56KB=TtrpW;aYNMRz-Tk&`_aVPo$J|>gT4RK1hB+`w5Rakt+ zkt=bUV=)-6Yc12_5Ath&B zF+K&P@U}2z#8bK2xWxDROhR){c~s|~ZXOL&%Z=XG6vMRXDYkspo~F97kp!CfVXw?R z5~h`B%q{GVre6}TfUy7jk3*R(IUoHl)+p=vn+v}tbiP4Tk66aoD_^k@-wt4YalfOV z9ktz`CyD^ z>V0dS62#5h$n`?MVJ{ieTzt0Qr5I3wz>W4-KYjg{>-Y4?1V?>NAEFpKletzf<-gfM@r0X{EgA_yu zQ5p&2;%sF4-+$<46k8R$9TkEAC)*}t2dOuKcJhCglt|zOEZhSVm*mTiy^65_(`3CK zJ&0FG$4wSeBS2msy%&*q@(>K48U+(+K323EfE`Jo9ex6eYvMhC&e!05GjZ>~|3;0yFz z|7ne`1=gGz@XE~tR~AWqm_AV$Buq@Xevzxg)N5Sw9>Z1m!jsVynZp**7g2H^1wt^y zb|S;ZK9Rgsot3f1G|O(bH4*2{A%j&a_4Qk^E@7Ddp@ zm{iRq!f)Y`rb}_+WR7teRKV!MhL_2-2)=U7bu{`(Fyw|IpNOc;gmeGghjR=4b(D*E zp!e4O+5IBmEOTi*Ct%#b;KDE7mb&;Mxd}I7(^UhV#;L$bhPmk5Q&`&>3*_*^SLSyT zQP&>$%+#yD>lyODj0!Fyv9%f zak(@CyW!x~&$K=!Ey0gMAzjUCKz>~vJbNmCj^3HO+5s*re*cC$Wa-4nmFkTtw}_q)`(uLq>VO2(Uy5OT%QN#c9g( z>!uBx7WdEi`HX&DVGoUP)aOBJQzIr`)iQXafmczxhLSmg{j3^Njj8qg-(P7g2J`7O zHgJYs`+4i^fo&sB5~}0*pf%vc;#EbrkmT1Kp#d|2lo%%QiMHw-Sq8cs&rakj?GB+$9f(OVRw zVF(`>)iDp4-uV*DMdkvH8rJ&1?s(XZT#xzG%1vd?ogbb48y1JF8@j7zbFVqhAC*(mxM|k4tah*`Z}Foa;Ed zzkgq{ZbSUwa=kWUdg?2e@$kT_F@!4Y3`Wk2k9BUkei80pS|!T>)4%81tKR;%(@VXF#NK*Op1CSbQc&mgYwd(zca7s5Q25IwN(qtb1%eoq76Y!_v z)4w{P{8)yfnsuztinklGn)aIPyH>Aw1?=wBItU!sxeN|G&-<~FMj}e=WiEFfp{{I> zUgBcaS-ORla*{P7EUq&ic+Hx3eF;0(gjab;2wSEm48~tmg?dgj5{*&L0SUV?rF!H$ zYou$z@g*r?eTn#dOcaOaNuz4sm%*Xt<8bTl1KXf54T_OXnG5 zCG4Onbcz}8C7H{PX(0b&i1J;N`{!%Fqn14&I3|(fY&_+>&hZLfea^^}Kw_$J<>#%Az?BAX zP|xceF(w<=ZE7hdYod%Cx7hl1JGEjw{ug!JVI_96wo`5gBV^rKQJ-kCi$T2$v1ms9>-fkA#NUs^*X}4ZK^L^L!B+tjqzqZ z%7`0vsQUY0L?juN4t^D0O>@!3}ifXo{ItH0JsZ`mXNb}sN4v^Gzzx}#pQ_7=)n4&O9YR2 z6<=;&eSVk-cJGgOTl5Xl;k@FR+i^@z`q3m)(Z?GKCesDp66Hg13Dj(+B%&Baly4M- zoM;>|V24WMTl^7!x3WC&X>lbRZqcU|BZ~+_zct>=TOX67C_- z8|Ukp2XPyDuFo_cRliQ_AO?y&7FMj>Bt{=5{E1ujU1F{3V&t?w&wS+m7CCpVArBJA zBG!%P1{1cir0OaNz-4s$rT{S!=VF1aE|Q zJ=Vv@mD#{~KF>v*FA)|+x$7Zebcp>B;LJbo!3MtbxYmuc9<}sieU9B(hvwDJ$Hcp_ z*0Ua79Q1K>q|c1GkmBfkwa80+GvR?Tta?M@XczA%cjhhDG>jrQ6)(KFcFcF_wO9)p z{4fVz*UgQgmswd@HgJ{s@-QOnoZ~uDTu?v%D{B3puX6NfP-sKE;QOgqMiVVCWYJ=y z!wLB-nM>D$zH9P2laN@#1t1@t&;&q-o7`lDMGPS7!}Ii0WaymO9ggEQ4U10GL6U}f zlh&U=n>k|O5-Bvf?;>D66wrh`UBzNEf&?AUc{Rgv{S7&^&QWA;fwu%X8|ENo-j}Cz zTz4`%3=-AsWDX_Z8@Z?2?l^>Z4#EL67AHlczJQq#gV;En8!6{P58?hl?{?ESzH>iE zJkQ!;ttS#4FgKaEHeXkb6sbAtGEQk2n?xjz-Y`f8u(ltkwRmE*ri3=8Q8S}2e&4lv zXA;_>#y|h0{>6Xm=j!|ihVmJnej^r3;2tjELQNL_tW^}(F7q2c#> z;=Qo%FMS1PG6?6v-#jT=Hz6t& zg$!!LH#mA<#2T;HIbS%!&!z8Q*r>rz$1c^Sv5RX-`@%c@I2we@C~}_h{E1_M=M_$@ zUroURM!p{6bkuvg9?ckgO~)D4S9}YJ#>g;9US`uFvYpEVH!sd)Eu~ya*q-p&+UPPm z`Y0a4-aX(N1d|($`Z@UPC%?%JzGr8nmIj%Pq%?r2y1BU8z-<--b%5&@d9`vD^|l5R zx;!thQ5^*A$}(E@M*Vw$|vng~*S-^$J7s*wpt zo$q;F8M)H$CRt+~LgOC5!ZS9ID4z8$n*!%lD%8}PXdJf%h5!uLt`;~mw*WN%@_7Mw zXdDFOjt}$WAm?>f&a>B)Y5}&eA)V08f*NUTYwau8(dOB(yfjkV9RksTqdb z6Y=&%ogXpJ#-8dkPJs0Nc&>+QzDROdOJjy|!=jl6(5M{|zF1e`8rd)olF*QNTfZ75 zOh~9}bHYNP`X0|UnK=VT z-6RiA&RlrnFmWkyjerr0$2%8+H+`nW6y~>ja6H2wd#rx>=}k7@lhN+JirRZ}SYvY4 zmHDB1Qs=U9IOIR`p8AI3+P&};!WVBv4iSgbbCMA`a*G^-=cGTsFn#TZb?)bTFnjRr zF|1_$dl2NjWG=JD(>mNIS)1ku`fU1DtzL6<27b9a39wx_zH+0#pA9KY&w8&1A&KsU z3r!%p8j}+BQ{Z8rqj6w8_4O0$PIb)_jFQHNR^{PW+pA0(pj?Sn5&=0$w5}9Tl zh>S)NCL-(g4H8c=sk0y0n{wPnQEfbksTGq@t6dl9D;D@B&S{V+^rB`y)OVGse=h6qZv>}PNttSRQ;apUNk=EuDT?4>c`8XRY6&~%Sr ztZRRX%haBbJLHXPs1l~~Dee|OjmgeYynhH6or!UL#X`6JMlZBjIO@cP3EweH1(`34 zgCI|mfG)hP{~g~~JXn)sP!WXM5}#MBT^pe$x~{Deh}EoZU`EBh_V*7X*B)6*!lDr$ z*PMFXGJ%ZMz}L<}*InR6-zLDUx_OZff>+v1kT+u_*z_isFHBRB-WyNsyx`!Iui zu+fUdM9knphU?S+e!Sj^JY+5RXY0HJiHIbJH$_}md>2VN-{F6^3!ko6efJ#!-dLbX z8>fsm9Xgke26Rr)jNiKPkgon+ShIwvL_6b#>FI&#^lIT3ru2jxMf6)S~moOz+QqKc@uAKgg%>u*~o!_k)L%Y zjuph{`mApWfS^b2mjoFx@xrf%@UQ)?;gN*q%Kdt;%?$U&dV%>X@kPC9nUch_qd%G# zjUJ(QuRVvGpENke=dZr?{m?RxnH%Xn-n&h0iP$z3e+)KO-r^k2d<91E`%ezyUN1~G z#{PS5?5D_^gmcFJ#WR5?gHwm~tpS>I6gb#t?;a`6V;(vT;~%xspOyLP93J9VH9ffJ zgF^xqKYtu`^XNw@XBL-H9Q`h1di{MEYd*(d2;1EEK9(*Gw}{5O>nvko*qt>P)!!XF z{yPgl0LUj$D0B;nluWCT5;^mv_$ZQkf4eknL)cm%#0uqr-oQ$$G^g z`JT3_+U;2SEH1})0J{l3fO!~TZXUrMje`4E?C`z>GA7-h&k(Ta7^;!?tJz3|0Ue`6 zo-0pNqdMn7 z6jJ{S`O2P`475~_bsW$B8L)x9x5*)U5={iI{}A@6wwF1mc>OYlPEv~;Od@W?QB$0& zPHixaX>H~7%N*sJ5XWQ|*tGwZSEGK7A-*MI-X$zqJ;CBj`$!Yu&ck3RjDFzWjJQ<( zod%cd-F-zpU>GI`9=Ok%V{*#cbro{CQg#n=$eu>Q%nuxf1-e05&F z(bAvgxm13IUh`9kJ0A`%x;QcM^u^6W&wQF7KlU|5DCWdfw&RZJb^M^Ea7CFr*P5v6NkpM z>ZqY48W}_5lyixHU%d~pBJpY*V{QkMxZY)aIBqy~9e^tg>~xPkNb)jeUE{`U8Yp~b z${*%V%BfUWA=eXEF%B#aBAn~pe`A5k4k*CJ~s*7|E z-=7VErCjkX4d?ImDMhmyVZ0UY^#58{ggh(k8(4cx=&f}YCZpEJAdwi547Siu&f(&5zALZ)dV8h%6?p*G z8*e^@;lRJI_*`vdn%|8+!2EKLR4@C>Ie*q;zKB{OXQ2M6KPTNx$Q>G#=NsKSy|_NV z+?v$1Q!v~_{Ct70rynn%>cEAht-$+w!M|WFf)t8$INb;MUWsI}u-ubC+MEOpf&j*K z(7x>uNbZ^znkcbZgeiXQF*b;hD?C3>B3I%2+}sp>9n^6X@bWx5Z^M*qnH&$Xvp|L5 zVY7zj0%8-vgmuBj#YSym^+%!}O*7sWQ1e_@m#*fZ8wU+;GF}$w$q^lSKyh2~^F*6* zev#fsGZ?_hrWs75k;5;+bUi1D)YNpYrcX=+sTk)(TwtyVZ*A}_Y)bY2{kPG0zRw*u z3F>oUyY5vOO2-#X^H&%=a--& z20PZsh0zBc)5q;A_m9u|O;#|S@U&^2Me12JnoaIJwO6kmL|3(HoFBNvxG@)%(*sLG zu9{zr{C$`^o}}9ZUj!cY*Z8UPUZ$k6Bk+!8ei1(oa(fL48e1;>;`yYrLTx_#F4j13 zz?}3F3df`{8pVvUdqKc&i?e@A9h2?@TRFjB0@#AXH>iI7JPnzGA#j>qzzemP{d=~T z2-hX^vHC{Bi^{t{kUGY!WA1k*F~>M2oVP)OzUN8H z!c!8rgKM-w$GuiRA;}A8XL02LL&bhvljO5i!>pfZ^eSgkeaEZN!RQz~g*6fK+W6%6 zCQg+w`>b8n{&}7I(F@nqO-9haudcHev0pK_nIwKyc)84y?>f`eJQ+!&7RfElA5<$# z+X7pG^EN8KJSpjOEUahjzHQWyF}o-vahK9^;(NrI}x@Z((@v-8cF|-(&qGzA|zu z@z7u}o7Y}v-0x$5f0@kGi1^OP>FNhp(O5i=1N0>5B2l4m|HZtRH}NLt}#e z!I|%8h~)e##6>>PWDEGCiEuSO6ZMM_gnwrOj&}z^zLJ^XmcWq0ESVD&CJ!R`3p9s_ z_$KbFd3v7<%-A#xut{(S0nz8@+)!cJ(IvQ?1uURQW>DoA#eFvs0Yb;aq{C+_f?SUo z0CAE0Y6i>$5a@Kqe0~D+@$=w%{+b#uApP!_1b7IXAf!!@OeBqeBW4f6Pkiz^6Y+E2 z(3vLQob}GUl=$eiC~p?=RXvXyDC|juT||U?IZfE3cXZ7p@c}~O_`aO`5i=7F;npBa zsvp)_W0vs2lb~VLRet)cDz@o14@GJsm9MGtWlYN;i^fC1y<`{-?0Dgg1@X~a+zUu( zqX7TL^6Iw(GXudTaZP(^Tw~z}0y{ALH9cnz$Ot!4cMpm^i8cKfF&!pJ$!I!7cffqc zDAihrF5wdMOv9H|OLf*di;pn;{+n+#^qInB@@3OQq(tM9~~ zZ}a29f4PS74&wyy=hyIPn99~u?gQ$TUeAcpLnJ2cx6HPXbDfhm2-vUr-UIi@)sj{r zj#SOB{@@!jFT*!rr}yIAaQzbR76+kTR=o_P9(}V0EB|i^=Fl*g!)c`XJ~%ECz&keS zXN2T3pnv|(#^A$#ITLu_AiarFcZ>Rd;NP7481?@lf`^py*#eAj3nb3 z9nO{GyW$;O$_i`z9pUc}*Y!^~k@{SLsAG(^cU+mwa+C{*)?~hbg3fO$Tulnyphshu znUskAXl$IG+D+7+ypKQEDgdXS5n|5xc#Z$Qce>3K3%&xxW)#k|p6hiPJJy6V5P{m} zA`Z%zMR31AA5OopDe()QOofL z0H2%wY%H@dyVmuZQb^d39^f^QRJ!kkd>zxeMC6f==VziCi{OPL5U0?sCdq=Z8-_&c1NJlwg};C&fW{DS zX)=9)#kGIN;8PrzxV%8_S0dWQ3Ig)ie|uo8OAcdnCBJKJvm&^t5eN+S0Qz>)c>n!3}3PaxN5Tbp3d4YT_*36wCfM?SGk7XuJsw7w8)#B`BiVBtgydi9*%lGu5S|;YLDY;YOP7RwsOGd55i^l*L6P5K|-VJL=DL~ zGxl+P*3bTn7{UG*saO2_HjLfvm)lK@4eMJ(UY}1UOqyE6{0&$gCvzqg!PprB#CsC? z=8uPoCcLw$G7P-e8c4cKxa{^9=DdW*Wm?zya}uWhKyxbgK;CMy*kGWJTYcm=QS`}( zi~T$G8O3mMmDGE}B!$?&Fe(V5ODriA|0B_dupWZ_>VNz`d4~kXpTv#(jC#b#V}90W zueDx+#b%q$yk$lP^XA_&yf=%G3(tn2yYM=gPp7Hq8wCk(JZ*j$QqH-t4~v;J@#gul zk0A*?Oz3!epiy~NIK!NE-h}JY%=^X5ydGfLXFbOEhY^*q$=d1DbG4uGZ@`T7-CFKx zco0w3L(G5U8MDtATVxVk*ulD3rVe?Bq|V5>5r=u-?{sX_bg&E7;#LXnrci$$6YB3j4i_Xi*vr8X89yCgx>qEN zCMW?^KE>mrRM6K!Ig#;P7Ky>aLbVIG4kQrW=t?2+*V@(42Km7`u*h6+*R(i&rwb&B z4I2pn+qiBN*8nPAMISlm!nSx!W|cm z50(KaJahdGWB9v96JX{s_qohSiiT7N54`N0SDja!*1CmjpO@;U*{6ZIDuLut_z<4 zKv4XV@M}-XhnKKVZrpO2gUD&1;yE3Y&LtEGN~t&$^Gl$vB6rLTOtn@Nd2E_taoky+l`lyMumPcAoI;c_Pgexhs6J;Knp^|1 z2vHJ^t3e^g>E_8WX_z}&J8_qJ(UUrnH`e#(&o4n^=U8z`6Mf@Wy|3%T`GfTh1B5xF z{WI?AxygMmTq0gp?3PdtV&HVvlTbgd^b?*&PF)1s|1RN|2*ovJT%S$P24?vN!1zAb zfmp3c32V{#ViHcA4LLrhlscbuHeO5T`opXny^DRO)|P6?!q7NxGR`C*4y(^JChJVr z#F72@F~zC9@mw#l*}3U=hvzSx3j65V3x?4zF1HK_p1nkX*FEaZ-wQl~=bwfH^-R|?( z{>?#UE+mc_1y$kM^}O&aX0fL^_Yi}Z?(o1OnR7!NCa!Q9S>fNE3*#(!uGc_Bh9`U8 zIeZhw41CcL?lfn^+6Mjw9PipT2TcX?{l0lfeKcvl(U;X*yhpw=Y2P(W`S-jienZi( z2I2`78x}XJMn8&fQ6I%(zG>J9g zO3i6Bgar5pP$UN^O+Y#!6JcV!OjsRnHxYw6MJCM@C%T1di2El_%oT#;Ly!!xlF{P4 zdKK;{J_|qO)GxD%>sf|bY9MrxbvvMA@@Reya3&!*yS^Ech^$?GPpgg_3;!NJnp~Qi znK&xf(^d0SKNQyEy{;XuA>din%E*I&G2?baS~LEw;@`x{Ye=~0x^%t&S4>b|v8fG1 z;1Z}oObkK)&Hp5#pF~}CV>5(tevz84siVF-Cwwl2Ct<2YyfGp7SuSkAa~t1z&Nxq# z)N8Hdoz7kM^Q&itI*xf9dIIZsnRtmOgkO1k-5fZ@tHllX?cQ_M1bWgU(cCNJ_Tm*X zc045;WZdQk*L?A&*JRcL#S_M=Lt;C7vW3`-M;yIinDKgFMz(t3|WE=0CI{1#Cq@`|9Xk*!b2(LLt`gFEcIn$ zyz8Z&>su$xSw2JW`~3BVi^8SGRlb*bVNpno{Jxtv2d2p$z0y(a7)RM>KGc@eavwRl5!XhG`h}tNeB6lRXsQ@2) zHXe_O_TyPU!4MBl)6$A<0`$M^y8%}d@%3E+TZ1+Uzz<<%gJ3l4%P{-K?lN_f+i#LR z$b)JliFXr>HA&WCx2Q&bj2aN|J>7T%qVULd-1uRGC)9GC*)Z19^)JO}h%DB?_j9Y! zdAjjxe%zn`TxXAer>Q|R!}S-9J5P>ms_^`XG0JP_gKwDdOq$$MEZEqy@mcFQNWglZ z#8B)_ex~w@jdwM8^|LE~OWZ7z=@5hzwGmG!=CuBmwFPUBoJvZm>w z`A53hb4@Uv-|ktpp7Z9Q@%a0Nbi-tsG8PQ1osgG}?cx(JEM7QteD}}h&G#Jnt9k<; z57S`uKu^jpp=L}^90K^**lYYGP8-AmS6YH9VAc`^NpQ>1j(I8E9cL`AZNB4PKXA|! zOc|t|*Qm>@2Mrv!ZVK3>s66@pZ}+dGUWjXh597R^Q)Hd_#l`=9Eb<2HiI+HJp9%Rs zu!35^d6{~)%=ah`3u73YWS&-SgtK20Xk#t#JYiqT|7b!R(~#52j2}0mq@zA(7kE!$ z3;%cVrC^}j@O4jJx3h>-v60*#f<*xss4%SqXwd-0-4fp`n7ik_1L^+!PdDNKBF-<;VgP~aP9>Yxz zUKuS@tuf=uGsL^rY(ipeX*@9rN{v_KVKn$4h!c(#ZlwlF5;&TQ^5`@BJriuoc^ zA=egm0D~gAxte}>_YlKuj)9<6PF{p+8Gm7&O@tCY@SOqsh=G41!`!deatWq@?@Jt~ z{Ie)z-|#cTZL&zVzTaCpNiS56HaGiM7q={_ED#6yU5+aT1$n(!HO z6o)5f@ZePUg*j!GbU$%kymHge#{|%MzJ$8_I_jpelkcvdTj(TS?DLfXtseE_daWIP z+;ZstinAQO{kX|zV{D18?|FUBM;ODL|Llc1o9aL4lO<;Ly$dfE_7x@_IJofd;O~hW zRBVS)Ox_ay?C-4MkMfS^JdE?i!F(I!&|8DQsK#Bdt~+z^rI~n6>@}$7fZXif`Yc^w1ai^SYuW1>M2bV3JVKv48`EB1_ToEP!)RY-%3&dTp1heR zjt$B9nn=Q5L_&B@$1z-qABK>>s~COqPHVWx4zc=rM`Pr5JAyg!4SLtAr!x;s>^e?D zlBzyukGFKB`e?EF)RWg6EE}v=Flh=g(I#y|_wMc3bb9%=zCK*57 zJ{!CMv1%M74?ukWbnamgG;TzQijHN4K&rr%%k;5e7X(O>Zf*O0UOu&83$=8o802$ox zUPhr`%|kJv036Mg4LDr0svi&MNo14y0#pM(+BLs zcUG)@#-S*aOE;Ql%2z$t$v=n&8@+(DL5+p#hmjb$cy+aju3^?Wn zf&GCv5U#piB4CN3M55CfTvN)b5ywaMG4_QxC8821{UngT@)xn`{O39)s`;5@nv9xM zuUdqYL^1q1)k4Jk$92f@dDg{avtlmq~J$lWtr%}_u z>0Yxj>T&&ceCIIR8G~p1uc^PyN%h`ecyabx$J1i!2bQhL;3e2)nh(Ad#ANr3@7bH1 zu=hEhEgpD=p?{CQL@vyH6o<69i-P^p>w4c3yo;BKzkZhh03ZNKL_t(0ZqB|a5xg)c z=@H_5`16XX`vvx$hjfbiq_i38PHaf^L63#qy%c?2w^%^XXM$U?6&=1l%nyw0Y1t=9B z5__!!MR!h344U8P(ZyJa|2-HV)F?u^e=hRTRGjD}qyr)0gcDr#{Wax#HC_~aG7Ea$ zEM~9I=d5XHx+c3syYoX}z+8x6r-_OIYXO0$SCuQwu~%-P(Ny9376#9p$N0Lgv_yc& zbvP}vVqBi+PJB%NErz0sc@O?sJtI?sV^!olb5ER$6kxufTZ(Aj+GyiFKj z!XdIWa$YeWgg*SN&6Mi97nUJsyT7GA~iRfDxqLxll9&l&$R+8OAL=Ay}eCxjH8fVS? zIKP3*6c1P5WWFU~Surtw5l{7=kq7>MIwO2$&b-Vn>WoL z3!nWf4$>ZR5SXy^=to`e#EV*|`*AQz|9xZ`>!F^UPoM8$kBt{s{+J6KCgU)P6=U|k zG;mHDG{v`K#$orsyDoeO)!-7G{t8SY&Ywim;Vh@)`_55NZfq#{AeCe!RF>+qOCJXSE9RUQj;=> z2`ISN7AuY`L8tzFk-lT%!W`*8KbrT-DdukgplWifVH}gHH2tm=aU5dveK^6LYDthO zr`b?O4P0Q2x*1M*!W3U!N3L0*$33U!=^ADoyE(f)eBP-2ksr19L$R`5q3Gvo&ujzmd)Xc&%)*?M>A zJ>K(WlGrdDW=cjLq-Z__Ou z@&}%mVm)|%GV?0d2_HiK4h~iIi8>v9@DKdXb-iwUh=ZojTljKdRq^}xzrIxwwE#Ik zc}nQg5{C0HEbQ^C8gdHV2HgGHi0CuVf9MYPsb6h$+(r)!b*Gm;NGbj$rb0HL21 z5}Raj#6v_n35AO9GGut2OGeBRoR>qG3h%leqL`*VC89ovKMrHv9Kg@UUfEnF>_*LT zeQd6(vHp&8fx_!DCs5lovg#EbcQr$brw>??$c6Wg*owrb^+$1)0MGB{d5HLb))~%x zOt@`gBmw+=#~^R4U*)Eal_eljJ`kX<909I5_XY`Y9@VpfQ{xQMbxR2$nV5<0NbA`}`&BjAMaxu1R~y$=EjoPOMtP z8f`ciPIqY1l}yBKe4avqb;#O(uc-IX;B6u1I@ZjfXy;1M4{HSpx!z zs5pRdZ5X#KU;<(7{i@DaPfjA&XQo_Q^^*GaOF#)j$3Q@Q?J`p8?5ln|e*^A+KFb~z zdI6u)=bgk9#dL~O>KU$wuofF^D=&yAsUPbMMh-jYgm>I8>%DmB#d-PJ?g7ZvWNow@5h4emxy^{*cM$O9WdHsJm26wCUzIMx5g+~?&un1^;< zymCwRG^WFcP#*Yq44f(t1}F3FJoMCfGc0he$VG^s$w;pFAr3YGp3k+8rOBh(d!B6= zSe!Rx+0de+=cXah8%@&!0RU~s+zzOP@+v+Oqfq40?Z&|xWR{y6#9$)z1fHkZOXh<~ zx?)@I{s2!k-UtF|8l#D^!D4|Hn}NjDc?;rdQYPXQA1aQ^1TYwPV@*Wx8?ZQ)VGiog zaS~MPOSw#vL$Ou|#(YzA9^?dPN|NdZ(v7dy{USqtpB^>{&>yeCMw225)3EOsA-$TY z-*-;p-7o^+*7nmxsdLG{%0Z&0JcwtZa~vTLL~0pO%v=ACRy7j?KiB0ox`vUL#;qj? zvG{KA&i5dO2d**zX_CWpVpI0JLoVBSjt#A1hWD&9N%&Lez<3q0Jd6Vh0q5E>ybfIW zpX05p?fc|+($Nw1tn8L>UxWT-p|M()^SGDxgVQr%eq zAGOK-$H_cJA@hst7fDogdsl^|N?TGPKiK@j10_V!RFhq%Bgp=fMOIi)!9Y)9TIFOrC=$FIKNUtMv-4dP}9 zpAeItVtivXZj_;hiEm?l#A^|%R1X)S{yZj}>mmchYvNZD_u6mDlYt5D>mp7z6imQ- zf=yzpy#L_6{;f@h$5q**A!9h(i*44AW0eqy2k7Ll7Rs*!f~1`!pbgX*LI5)AuoqF;?4{bgqc!4iS?$ zFS%JF<$w(4Yi(HHQfpfwX-n9pJCm6_w?%9g9pEEdRton2V8ffM%aM-vMy*o%+1yWFEpTf zVS{D@xp2TwP*VUERNT;NFO%EK)C8qk0n7FPULGM-~ML=JeOcN#AgE`eN=Fs|z=Y>W@_QQ)z_h~WDJSb0Ur!o(Ar zRTDu}EaF1&d=P|D6W7_kYFl|uAX!f2K$ZPpmmiIR&SxTzVNc6_XKg7LqUfon9h&~A z3*rHZNot5kQ#*|WJUfw~RWlMFjibQ6Gzqk^;~X0~`O3HNde?-?wO6tIE^rZE*R8J) zrbftjC(=>xN|>tpyy|C|0eWA3XT>Vuz-K9e@ST(P5HFX{m~{Jx##&7l(~Y#=55(WX zNaQ&86es<<8q6gv+;M##qWTi}g~@%6iH!LsS-6_nYjn<}{_d-o?iuV~zK!F$Wsg;^ zkDEgN+<`v>2V~}T{}P6tm_Qs&7_PmIkMJFMj`8=!rXoC)sGUt5})yUKYy>h zP42)-`ru@*-$C%zksyLB_J-4&NFNg}6m~Kc+=vpv8stYs)LH-Fk_0#+QIYf>POPzytsrl8s!lG!a?U-6wSm_Pl(gR*5<$=N|p$5o(S(u zdWvKuV{_FB@$e9iNff!4MVv;geP)H_{D^z$=(mRvdkTKkMm?wF67Y=}+8CJ3)5_6b zxNnkeQeE|BytL`Zeb`h_=GwKlKN!h8i~94^JO$PaktJ-X*bdz1cRg8VFZ4Mc#>09C zHsg9o2E!*GLp_?$EaM*MXC7-Ki|?o$vjO(Xy_0JqMr$%?!%g|*ydSYi38A=-y7rL8 zy-0bHctCw*V48)o4KMJBPyEu*f%T?7)G@aJJ#@k_J$(M$Bjcx9S;H#TZ4!}Pi(bEU z!OC~vqEWq#cO6DP^JHNz<86bH=4;43WAeH^@%_#kLLgp=pDpdiyl|c49Z!>wx$l9B z^Gk+9f0g+D{l{g_a6KvauVK#7JNo$%99TTbfwJqRVxw!hrW6QRx^~pXeif{W;v`{V zG8aY6Yx+>h$;M4F9>n5buCz4Jhr+0$8p5a!AI*Io}%me{d^M5#)m(jN^L*A*w;ZdN23s$(9FiGIw>AfQIAg{kJk2jv6*n(`?U zbmG2xK*Wl0j^n+WHZOvs5A)~gCeJum?YHAfBh3Wv=-0y>NO;bD2Ey#V<{Jbg@WU){ z&4ie*T+(L-{#-XMf;e9JarDxEpIe5t#jdB#zkZIFk8|_+guV7x|ARR&@Ryk6KTC*r zKk&Jr-e2+m#7@}sZ!OG$A!I1Bz%@M_F=jsV7df#+6Za9w_$RObqmXT!_{QvW3n>{y z;+7SwWMZXTWKV7qxcd^=sOeF^td;NC4ZhBv;2Q+|yts_jfHt2|D_4$pO(wHYXF9l@d-Rc)omYNV7!ZxTHXgZt zWlRigAsBl)|7$R%I;%(h9AaAdt7aC5Vqe8Mb$th8#kf2AJL^Aa-Zgo1;;w{eWBvxE zUznU6Hz|r*HTejzEdHa|2gyQ$xQR8;vH+5pKvKr!Lm(GfLP9p!Ue`=?!1Y(YbAe`f zK0h-)UrDQTO5%uXt)f|1G)Z1U484x!dMAUSVx6YlSU1*`kTP3OkzHA{@S z0fk0NJQ-6i0S)8u)5%nf77)8;Ogx;=h|LmmJi`QVAzCZ7}ELR+<2l{0~0tQ_aM4l?a&@pAf)9Ob$7vWATIKB3A|G{CBamAm)v>P$|qmgu)jZFB+>8T=R6%cCXdX`Bt-mg45`7_pbEp zOWYa%iqnv+S`^DDi1BbgCZ5>nX5JCA4i2`ASs4_oW*J{$@0f5^EROscd^3m%V&cl* zaN{8v10TEs9{N{!qM67%O?wD^ckxoIfR1VOitCjt&W(_lS8p4_ zqt>CmLu?-ypdP_98o$;6{O-Pkcf8JZ~Ef;dstu-!`Mf$?g0YxCGB}l z@R29axnk%`Xm}Zs7>$2OlFou&>+b3AMBKqn;gyNj4W$ zhvs6$s)1Y1vB%o~U%D#M1d2t&B2aT1lZmUjBLF?M(ZP;_1AvVJc})>bc=@9@3IKv?q?hedEqI=oixbH)AoISW5b-Xj=D&|Z_de|u}EkPS6}?3i*Y zA4Ze#KE4U>#_O|N*HqGkP7Uu8@-e4_=wst?e)xP>oYce^ADd(rL1_XIfi#gKx~$dM zeu(he=bBciF>;;Bpfgci&#ki#&y5oocEJ*HieVhhctSda%wKT|(-oJhg zf_Q>6qHE5)966=DByN!`#XJ|jpEpP991k)yL<(7Cs#Gi3K#lLFGhTCUNKS=qgdBmV=Q#d~`O?<@yg89JsTx%M+6>e^g{fNL0 zadeQx)9ew3_*}=@d4nMtcb>Sqm)Hz>O`Zd{GWRexEvym_x|d#j$5`gudgJG=9o5sq zw8YJh+<*2h>mR*hE=b`NuF=W>-6l)$awYv=IavUax56A7Cc@kitagK)1+ZJ zLczsm5)MM6Nknolk`sC*OC(DI?h~k8Oi3soSLcQZRq=PTwKFUeJIaDz-m~wq0 zuA@Fxo85$7(+%ytN%W+ejpEn&bkzc5DDvT7FR|EL*Vx?TQ{$%b zWWjV@yGlgkSogp;o14m~XegkOla`hF%EOg88) zJmkL{-$uT_`cDvPFJd$Hk_1LD`)hDx|V^${w-W)J@H4)<+*0$a5SYa91Z7b^8^B*t!Ndr#WHX2zqr48?S*Ma|D3-GJvQfe)S}dUE&%W$*zs7j$Gz}^D*#k z(k8uaa;vy=^#{_-BkvMEAHcnz;$im}1*R_W66@tA-AVgQSEs&25Q)hR$8k=pNe)gdT{<=m zgET8`cK z>nb1LHS#7)J<2%08W=Z}qe(t$?Z0>UR?%pnj{(x)I_WMqbF~k1++Y6vS>I)B@V1wA zWH30F9t(Opn%vZ|zVTsh(Nx}3*3oArT=M(smsX!;Q{#sYd*ZDowev09#9R6xG{Vb> zx%304-|1b7Md~RRHyj2|VTL@ubXw~1uDs{k)PFo$ySP<6Fn$fjwfo;^*B1>myx71T zB!GiW4V;r`BrnD2mk6MU0?8GqqJVKzqU0gL4S^I0JWgh>0^zk5Py#ty$S@%WK{3%o zBK4y~60WA=D(WswVM;LsvhdR9%wm#A#>H2p;KXr4@jYYGP18xlxQc?XG2%yjrK#cj zbDz}^wS}QXNFPFwdrxQD0xdL-L!gK#z8dl&CQXEOmW%^%&rl7LGr@%>=sCx5_RByx zitB1V!n#s3u=0xeRA(zuv0{XcC+=x(VUGCRP3C+z1rtpL#Wh{Yj@%q_yYq;J_2OXT zjm1iQluU_^2d~*5&6#62L_^5&#N9k&o6F9jRoni+PyKx31o>levu?eZgHR{dxn4X% z%nLJTT=3qn8(20fl7Sr?Anrp`LVo_?I^&3Wg`b(fFP-69F(#0R)mZnzP5mr$=`~%_ zz9W}=FoOLqF2s3yl2p%b4&`UHJ`YV=_Zh2!(^6B{u}gJ;BGg=xCdRA*dfv#>cdfmb z_wO8l(4>sD@GmvrIb=>grt;A^OwAf%{QNQ8(i$IeeN3ET9j2W6(wNckV64gQYA((5 z$rvC$JBN=OB>h>(&E)&1UnwRn=)dlw|+Aq(_IP7!NITXhZbCJ&t zIDL5M$9a-}V-D4xhj=xq7XcoNF7R`+T-?|kgM1LoShNZzpY=s3&*xHrC~j&kM?oX8 zk3W+PemrAL5kas9_aLtzl1BrA7^WK!9it%n-9U^u72rZrEvJ-gL=1RKVF@rBFa)&- z>k@nG%prt~xztFdH4(ofo@!)btSCYX7srj1*t8yvi5+#jt1UpTChg-ai-ewuWaYN5 z@vTP2!c|Q|@6CmW>$sYZ)bQ13Lk>4*`DZ`yiC+<`?id*Uz}C{ zHQy|3QuLZjn5T#7I?hVZTEaBd+0c+K6A|Z{n$2XSb{s5j&8>;IE^bz?jJ2?)1!HJ5 z21hNlAdc7fj~hp&tNuK)cWongXkeOFYl%%(WeBp-&_;bw+sf5yT! zN8G`)J)6u>v)RZE9+XD%nT!U=_>gw#v*sQUST``kcsVBI|GvJ~D_*>~Fs*0kN5>Y8 z;m~W+H_w`q#!o{f^Wq=$Zf}q4!ic-)QPRuIBnG9tng&V8rHFr0ImSP&ANY zQ9rKurH1C~piR;iQ{y1b#wJ=HDE57cv~@LyvEuVZh>57jbcO^Mnn5@ITjotqf$3k1W05{;z;V@>MX`--*S^)*e`XX_nHKm^gu&!+D+c2ko>KJ=u= z&F^tVtH~B|W^DV<{JGEQ5Yyv1Pgz`xSh*#hA^8;Dld| z|F{ljgDOnsE^}+(&<#JIdzoN5cjKB$aO2FD)9PZeGN(Hz(gNV2wD&Y%8D@b@w6&ji z4XZJH-#fHYeO70>-lwL?+G)i1;>aWa-Po)Kz)hiXNnTH9#eb{Msv$~O-jmVU*bBEv z{EUV5U+Z8kIU3==KJ$5%8u9+OOCQTrK5?ymB%`1{k~p`2M*cZW5JP4)!IgulpK_k! z?1|T9)*a{6YY7I&zn{fh5X`G(7{!qQ03ZNKL_t(wJfz$mCJ6So&K?*Z`G=s5fmp>O znGarDsLKmeif5e-_w@f#!MZ^4)5)@!!vSBvhhT^C^Bq1|2kH&%Iv}|ubr=sQ7^Kwf zFc~ESAPbulgLtI6P-hSZ@FpwdBrigcrpt5IVvhcr2hEMYV@6y z7Q`P7CJSSqa}Y#z_80yu<`#z}=|0nNCiS_vH?04!@4tj)la9$InP()cwB}HF#`&7< zuLiY>Z)(0c#l4z8;?JKC?;K|th;m`V0!aH>69yKXUs!zK?zBZKAPJhnwU49 z%vAmGIb7ETuN>0aR$csP>Kgx{xg0!}1Ww}GcP)K&_-L#Xrg_$@HmJVFbN6{6zQ#?$ z)z|F^a(U;ca;0-kg4afi&G25En!h+LVe@*KJ+7yz`Io`b(84*N^+z}ycuQI!H9u}( z@Vy~2j~g1JA**w?R=7;EkjqZ3F@%trvf@%XZViZsdN5EtxUTj(4!-3h&KSd+5c~0- zE9O{d)C$~JFklkDuBQ8{=OISVKQRu{;LPQbm(ujtaBbBl)Wxnz%8&6*|LiXfz4TGn zuKITZ&=cL_)WR*}5wJgMTQdHSUTfvRaXXElOGC-TcjG%U6W8q+;?elvew7PrUFK)i zL9dBtQhC$=hGz|aN_y}M56ow3d7iP};G>Ry?V(Z_&XpW;TaHquE+gJ zwBUVT&u#*_5}3l6!pn$FpYyf&W1XW}W5LuUVl)I6CGUFDO@k+Xmtz#%3z-TH8sVXM%x87)d36C zghl7*2Twl*mWBF*3rFE2*Ncbwx)vh`2HdP)jirsCbp{p!hX`|_W~mv` zzeOX+&1K-P&goQRlUUJIsl`&r@8@-?hVkryOXgKinkBqzy>8~$)F(8`Hc4C)ngfs8 z;Ji1)ZD!Q|eU6F8&Kr5&KVCYT(#i)lU7tc*`&@d>;u$%2Hsj`5tasg%b5kO`Epvv? z7PqCd^?5FRRnIf8@ZSUe%t?d8!=BOvusCqk$alfZ9HMqteH|FI)}xN|%@sUn7#{~W z+rT;-l4}6QbxZR_+s7<7hhIl!X|zM@lNW#og4s0DTs+_iQJ4;N9K1%9;5&7ZgVmdrTg zTzj$^WYe6iyh}PlQ?b!>dZ6LkdE^5de5fV={^;q|Fki^~;){_hp4wizfVfD; zqYcr7Bknl=1~1{$W_HB2);$px+(IE(Ao7)MU?^El(@OoHxRMyAaI-pk$d+5$1! z9BLAySaMTg=aR%|hb~DmTiw_#>E&JI|V!3#QJm?=eS5o{Gnp=^#@(l)*CB(TNh zOqHwoJ@Zay&b1}6{G0*zZShEM3&PTTpXxhv{o>WZ`QQS_cI+oa=p(+7O_OGah~?ygHe*qx22DTlYZ$R7zXuJn>M41T*!25Zmx5^+>qy||i#L{;RQmA!!oUCz zmNho4ad7-Kpg3x%d#a%Y#N7$cD<=ZquX_E3F`5MFwgh?a#)}xAfYgIp$Y`jq*>1oMe8DXH#;Pp1^S~| zAkn8-4HA3TxZImcv?SUr8gvzR6kQiMlaQyYfw-?}S7Vcc8Dx;A7jWRZPU~jDVe0kgIib0@NNYI@GH^D2%}P1cLZ6)eA)JQ*58wGZ>+vqd{fnDo zVIN?efB6zL>*{d&eL}>Jcp8me+ItY95trlu<-%&*w9mm?$cfKeGJy{+k(U}-V(j0e z*6$R0LTeuLjTP)EP2Kt(He8P;!Oi>7Z_aN|Rm};3p9iPld2X5)Bt!kSw(Rd*qLycu zer1X=F_yHTH5hrH?RvnWhNs#W&i*|rHp?l$)L5ldPLtO&i9B8g$bIuKbuzZOY;%)Pj&L&`CT<4V)3{Q!*^BuhB2dGx#U?TK6Z|twUV_p zob%`jnCk&7j@Q@z3-@P^<1EajV|ehcBh`+xwuIY3UWdW97P~ebcS2)j+d0 z5^IXb`nA!3%Lhm1FXC^A_7Lz@h%Ax=AriE)ICBAM(c1Jlhy+$1<{yM&1hk95$JJdI z)D`6GdRYNAH1$IOP?&nZNdO%#TH$CUMv*riq(kr~5^7?v!iMKPqT-m$um~^1fQAW3 zB^7}srd9k%DlV++ro$JZYPxndLu$;8g^CB)vd%*}wM-Zm+w@T_+!71!G zy21ZTW9cGt<>V!vi1Bb!$KryRsMhuZw-XP)m-6%#XR@9sDU1Z#y2-;v$9#o#mnJZ zC-FfJ^E7p=*LVQV7tdq;eCC&N8I7SYKBrK3t@siZM{OTMNY7rALY#G)yfi;vypKGp z_*@PAXas`kxNE>4YUk`WI`S$ z_0a0NK0MA?oDzA^To`zCG#JSQQJe=}+yr^ZcTBzANc+4T1L7$0=c*&_ai~2Hb0-;^ zwXQaP6Av1PS4=L061co#OHTVT0odIB0)CnHxu+lAcxXAEYZ`&BPwU;$4K@BNBGHwm1M(;QhL; z%OLtXt-+v1@vERQxdy;PV{Ory&Xoi`gz@{~j&TC5n{g7S|ICC({QmuMi60kUKFimO z>t}y$hEhYFilGWxCCvgS&a$s@a!)}-5Vy5|i`qmgKEE?=#}(lv+J2ZVNj%jWPNB)1 zprI13>U!^E&q;jatZh_%Hj;0%QJ41T z{2Y4?CK`X<*i2W@f)H2@h{YV=cQm%NOk<`xlQ? z?hNsy+R-&h4I%TiCtFDnCgF^IG*?|UQXI;dbnYi}HPj*-yAI(M?_na5ckuv=>gGfl zTzwwD#IrdhaMze9(#X&nm;PgO9B}k$+_;{mcyO{WZc5X@})ym z!$;G7nTV=WJpZnNscB5w_{d#8XFQWyIGq2$vi4rw)VU{v>fzNdlPYOt_ZYsF^RB`5 zmpEs0+-pq6g8H!48-@K6ci!8Gap+G+EeiQx-yiizjrbZY@FooFOKRGasiX5x+Rtt;8r5y-K%MI zA~_LA#sGq!^CYzQ?P5vreh^AOhE2uSRS=wE7e0cPXZ-$o7!nj{AB|4J-5G~4Wk^Dp zgkxdY=ZN)1SFZLXhjfVfu*YN$EH^LQBuP!O1)>{?QLx^#8O;yzlLQ>F<-))msgJqY zTm*DAHg0NoEzQ`eTnV^NLgFmy-fy^u7+qGAICD2lT6;|rY~$a_6(;de)T5|WQ{l7s zjVG^*{6$K6{@q4PFgvcPp@rXS#8RV4o=QT*B9B}H{u-Pn9Qk@$;o0UuJ;Nfp;`PbF zm2={OHK_m=zs%~D&zjQN1YQjZ>dJX8zQ*|>?1qtNzC8Avbj81Ac_KnCiJ~+#BZFIy zx)*De4XY&hl9&bVY)Ujg25hbvBr*5Zh?6hUjg)W$Y?;34yc{#t@T)0x-Ray&1A+sy zNvsY|`p_{$$a{i(XswmkbH=wFT(`tkX+YEUsLn8GpW?_btv+#(0 z4L#&_B|bfd6cO{qyTUkY%rdWO0x0GWS0K(dyZKxj%NNhozsGeX&a{pZ7mYQL2SY4I zLl(5R^THbI$q~iNF^B^yX}_cg7Qahh4-8&)92{a!?{!*3OK)&LeOAGcXx<4XQa!^t z#eW|)-h5!pY0c~T;vMhdI=;MQ%MH*#n=0}HO&bd<%Fn-p6g7){kk5M$Wa1{$+Ad;XILZ?itkDE=^!Z(H1Qgy z&9zQ8aY4jK;d~I}^Uogzgv*Zv876l9OcgkanL##On{y+qJCSD-6mcfOVsYpqo+iDu z&U!wDM|9r5ZaKWMUJaxt#uoTGqgc3-$g1zz0r#)J)FJ!4KAO`pDF}r9*<^$Q8JngO zi^?Hh`(EjFH0$Kg(WvN5p7W+~bk6%{EJk>ir`qee7PM{}xUnQenX@|kk!N3~hYIg9 z?2wB#Y-#?i=1}K0I6URRC9=#*=0n{uSwc%^wHgHBKJnY&h#%r~2<9M^uKE~7kfpn>_L|>tf+~7zR}v>%VpGfj0(UQ1b-tF%LKQrdoH@V)FGcs#8Oe zOoF2(jEMT|iBBGR|IC-fx#m~m&^$m65}#lBz4R>3m3ncVAUG;AKTc}s-8olFuOu`d46z-hA>$6u5 z0GqAL56m%cUyXCudgh9AyZBR_y9P|hx1c%;GSn0t~zX zm;lNGNCNp4FgvN~yC!*%pM}hS5f&{{5}AesN#=qZxqr)FzaBu64{@qO*x$wH2RWs} z!Yht}D0sf(tT{!ryQg9iiva%dG%2vxWh9AcRzYSmRncMc2BM&IH4;!5B>qkQsjv@G zuQj9w)_Yma_J6s?onoli*hm`r%|;=uJrv}|Nf0g$`>zIa5WU{z=DnUBr)P=-i{B7t zWNy_$EeObq7F;ClB>Kc@@m2udyYTJ!B(cDp6)u(#54d~y>5H!! zZ+zc5^*l%C5qUJ-0Ps7CM^cl?iLZ?w#~WuCe=Wm#!p|eFBaUD1&=q~=)oPy2m3p7Q zTlw2@*7w=ua(dOzaeem-tLUF*r#ef8_cw3yN1h zYHZ~P*S`3~dFtneYt5c8Ms7&A()6rh7KZqxS~m1$Xe=4trB$4p2{*vzY6_^!jA8Pt zbDuG`VQ}#K#YZFd)Dah-i}%(ojN-2fT+-4q^E#i^Jggk?uNdeZLuVH5cz{@2Y8Dee zj7IpwOkX-H@ZZ2SxzqYB)bgbzs9j`mtcEz~9PWSc>6KH55iw#`*a-Y;?ihbR`mffz ztn~@+Hc(l^10RisJoOjaE9*(^_xjbwwJ-DYyPh^_+%N|%A9*?qCa3HyEa zVGR@d@BeQl5($Ehmjv1Ka*>Q1k>QqeF$TZM{{8zBD@w}sdqft&ArY(jNe;+xWe#^U z?Rya2aU~-q+5l#9rgROlo^d5W|C|L!q*?2)|8a{UnBOx!o6{i53A7~KzM4~WyW`JT zkGP|7&@E+*`9HeD_avfU4RIm7`Nis+hJ9s;W#9dD9c zIj{AMDaiY?SaTCz&BvE%^M0;4o!oFu0>7|Le(;2(&s|OJ61dpwh+`5Vd{(#tv-qZB zMPlQ>U02zmE4+`$x5T&Ch<6XOFP#zd?WptIWAnH%!FPU$>efxQ--9a|zCLrT)q=Fw zo`}_Yr}Zp zQ@J)^pW?+^hv~K@a>bhMG*nn~6mOmd`DX2jaqs{yVB#{7&s=4G`(_Q-%)AyR&hzHy z*yI^QSDX?i+^>))%r7DLV;wWceQ+UpVw~Y|L${W&z9(*6!!q&Ez?}6b`DXzAfBz2& z9_9_aNpF8~z%o$OxDUPZq4!5^de_bzUtIj|Dg7#9VXrym-+nqFm9*_f762{q7(51s z0hfqLZW+bT`m-C&Bs?{7j?=~v{B?EId#HF=h*v43Fb$$B$H@T_#hvTNUTjzto(9Hz&c3zufuUq} zF;;&u^0=nvKF_Y&4c2fXasXe=9>1#ZDqD=9pgu%QuM zBnuMmMqt*0Y;x{!`R};Zx zvw%uw4C3y_sU)WjvSX1r)xbdP;@uV6~<@4z$)A# z^<_BW=gUdH3Wf!P$(PrT5bGqk9v%?aFxGCseA{O^ukU_byxL$0BB={BisM%kws7Y{ z3p_>9Q|CLxxDqEZcZ7S^3G&8>v#;+4t~;j+^9|p1 z2<3YIxKSkDcU;$G)K`m{bLMAqlF!BFe7K^!at&uq@%?2CB%_phR^hbS)%?Nc(m8h2 z*R(d*mZj5)tzb}*S6tJ&J~`gzS79gC%8Sn#`%Bw~TpZku+)AnRg|*SNrhN0>@PgGl zDApqn1CK?0o^tG{`Nrqa%+!nIL7MdGIzMBnx-iT$O}NPy{M?11rI`XZjobnEEq$dk ziM8u1{^V8n0n~kp&C=UkBk|6jKv?aZUc?Z7uVZY?&cQ{J0(A=NXxtBxbP?V%0qoMI zK=8nV*}y#F#AcA48$Sv3B)Zo%u_P`&gp%XmXQt+Y#cq%)5_y5NfDy#lnt&G26uWhf ziI5D^gWQM9g*8=N2XLJvEXv$-a#Xb*=D{Fyk|4<~GzRrO7vF)^uqVIo5&&0&8Vj_9 zZx>t^wRFYoig}tAc$#NCDmRiSG5@d;wzK;*eTRTKMMM>$FeUyfTt8j@K+wbFVgYy4 zkn;BZd@Nj7L8Nd2h`tITv0}3;3DmWx64+dCDm3PQi;0v!M=crnc8;rnkNr6&&fm}w zcD+gKm5BNG_%-EC6K>Wv;-auQ2;lw8SDe$Yd8J8}Yg1}U>KqXp3!RH!R;^RaVtr>m zT6D4oe#OaxSwcPC42b`RwKP9gJ!GvDXFf|){zp>>-&;R-O**i8t!wZ(*3w2p;)d{V zqk;FYGjjc*`L(&TYBO^ceDSRPqkgWRC*$gBR?W4E7e9EDM$Ir=h`FQ#{PXK}V_45u z4J@p+F-5*Bj^Nn@j!X0s4ei6ksPDUJOt6Bni7!^(Zdwqn$AA&&%2$5?l*{J{6%ZsL77Nq9iqa3Wd} zg$32RGC?pyB$13N2rM8M*rFhG|qy*R$$CvO@qWjqApNM3=Lt!_i%biGF76iCL{>xg&!LlUjo6x zR$`Gjb}ahLc^xWEloD}S^j8i#E+T}~ls2C2eu97+M~RSqt}H}fjTzT`848|+A9zn3 zFp9WhJV-XU$K;5In8^`{)AP9_PRTS#aXiJnirgq5h$obuwFzarD;_Wq3LG0xZLr>Rc5!O-U(#9^-w_;%cURXMFK zO&(e3$sftQ`>gBa1?Defb#TY3A?7@bMsmj2q(+z>IjZ%3;cN;1u-9ew>BdLn@Ppso zpd>@l=hC&j^4EMX;cNq_`GZNI_||6@*Voy)zNIryXIgP|jkYlp8vUpN@!mMyq7kL0 zI$ibu#bq4!6hC&}ac|{MmnCkxIp_|jnHMF zvT-QR6@JVQv5|M({3G71n{AX;UXSxFemk_^>T^`i@@!Zf8=~>0A=0u;VYW^?`J%na` z49^`L!kh!guX>W=Lf&CK&jvbObqEdOawAyOOgt7eIQ;tP&&du6q26`4GZmP6_5zjM zHVew+a;1iOh&X|DQ;exZ001BWNkl*aF(k@qxpIDSxhTja*y>ReZ3TPUf+4do-CQzaO}*xY2Ms{|z}} zVqM=ccCK?_o?JvsE({Gr^CS1JfAR)0i9F&p4*Wh&7vM9=^wOy5iUW z&i$&{c=##hpYzu-jv{|tQwo*MjIg@9bu$%TyZoqleJKVG_ z;fL?9#$7zL42)zd9?!G(AWok6U0i}QI!#Ms@-Rk*>F3<6^Y;xFHy!GGZO~W` zW-NT;l@kk_4xTu~eZF*V2|h|iIbJo|Kp77JmTH;fOTZ6NF6vLSgRcA4~v zXz=`GWSCUkWDfDcn42)Zu9@>Z(zT^8Ow!5KJAXAQOK|f&z7muQ#&ONp1UK+Xycs*b zdKQeDJ`d)h$js(MH$yHM!e;YLYPc#->#P#tAJ|QzCvjVa-?vi+|AjR_&$7_*dd;!; zxr=I=)TP4vtTz-pHnc-TTEuulpf&aLS#K(zk0#Esh$e*#D{%onX`cH7E|ALiFaME~(sbVfwzj((ba4I3Uvu>zMB~t7HaA>@5#K&Pn<(PKA%L%&VakK6 zX?C4oJdt=sIW=M?E*bn4a-n(Q%5hH(%~`J5g`2~Oa$YZ;g9X_PF`gn%g?!;VxZhz` zCS7f;@k||O-iiqI%5g5fXiqhc#jq58cOxXW&5LxsIUIP8N!tU!+src38bret~oe5wV73m5O6XTcI3+Kq! zpEorwe5r^TZzl6N#leSuPI;UtB-_hmsPk6Cn3@C@%04R*p&QF0^btq9({5JXYzm)C z)I;3$`}l7rYmreRGa@W4^$R`ET4&1LOZ80)jS3Uru0TQJ3|l89?GfMs;CUZivL?~Zn!f(M2mQq5{S z3U{eFc<{u!95AvlnJ{dQ;+ORNVencLNT9U=6{c?&zFI?tH8}QB5GLJZUE$k)GEoK= zLqp7)S)&G2{C`}xcU){L`dY0yZs3mi`GMuAYcw$W#H(X_)tZ3mis{l@s29Vq{NgNf z1M}*AFEO+lHJkY0KWjsBjfEQ1Cano1mP4e0^eRXXyR@xw=haTVew7Gp((o*dMK@fE8oCdqUV5kHtn z=X*5+SaXG75O=-13dBL)wYPN(#d-E42iET;+l)X=KO50YBvw&K#V_%9z{L_l&JV0xN;#zb?8^hTU;m?v-! zgAo zT|PUmDVap(E;ix#?zmYZeUtE(n&8f+<3Bnz2YQ}e)0w!b-maBJ~)#(lZIGH*Xf-$kUB;yh0=LOV@oy5f!N= zLRnL{8@X~nfmM#LC0rU_^{BB9EAsBr{ZxIG)*t-yUiaw*Xw2mN&hk( zjB_{UAzueJ-|yQ^9$Z2`uuu{=`g*GKh}69}lRwlM4g4{8fa`cQ*5|2sEaCN4Ly*6# zUS51`BgFh?4kU+MM&A1j*9{ACbGG-|0z2@M%``W%eI9B3##9hPv1v$onRttsmxlN` z$qe~0;*_q51{07_jj>3R=)!HCU%*D1ywv)5UMa6!#}hutVW~!$8~Q!c5Hy~~T7tM7 z!;TLVY)spQtE45KxJ#?}{8tW$zyAF^-W;)kXAPO^)gO$mSTljiCE7!sNLq8~Qu2m1 zcF^25ka$C?aenjyeDA0k@1Fj}HksD3z9>Hi?u!Q$_hEn@1FzMHTHi7z;@qXJirc(D z5`t>*;-q90Xn+0Q(AZwOYiM5%s=Oz~$+~Qud74DqWT#dXUI*WhL&)Lbrca-J&;iz| z^(gA{HMA0b(*U4&{NaS7ZjYNhM_<+FebrUq%{enn7;?^aon`@r0wN?~A__Mh6@WNh zKmrWGMG~{1#$iWCoQeO@2n>Ob&&2|1qVVKSq)X5bXSvpv_C#`XfjFk*>A;u_cl9d|raZ>u-`QPH?`mk+NX_xF%%sjfLx1T!J|^@NS&A zDX`;Rds9w2Uxrzh@>hA13QTI~|8(6m#CUMSC3MK8O&t4ok=GS07Ezw+h%xrN`zfyx8c%OIS`GlXMv-x6RSO~lzWIWKkI>38qO&46^x zmN-^y26v>my3XP=r-4xKc>f!xndznm1k*BRfc1ZW9Ftj2{0}VmJ}u6H0}Jbgb*>?; zmH1$-3$-oX$cn}?^D5-<2#afywII*q7bfbnctJ9OtW_!}Vj~_*<<22B4y>Q!ynXhF zIUAYhJ3)ZkI2pQ{_*acx`a9IDv`*KD=M`>h(v3LRuCTU$&ml&8D+UT_`2Ldv_O zho5&JX6dMtJO}2CzpH#ox1E;GOWbsEF7ZyRS=UQj)R``G?K1C>FVrxxe+!r&`iYv% z=7u>oanr%434fou&4x+RV*#(J$zF9_x$tFf(MYr=?sJmHcTKJ^rGICCG5Tb3j{jWi zABkh9BM4TW*CHWb>m(WfA~hDC0*RA?{~n%~NPQ)|uGx{;64;X~vI?GvD>;$rJ5J78 z%i}(ZfR>X?Vzl#<#H)*NnoL_@r>mGr6sYJ7kSD_AGlJnUiZR7ONZ^xPNwOvaV2v(s zuiK=QiW>2E6^P_Qiu_~4&GW-K_YDPKs|{1zBnsDL<%s{Q8{*^EMK9Z0Db=@>6WYTvbXZ4K!_U1~bD8hbtpuFq zI;W$~nD74meGFL~dpE;wY!iONxi)SNz8mLPF;7i&>MQWRWe^?p>G?`{mW_(*<{9&V z9AkVA!#w@!M!-t1jlA}*cih%NjpchQ#I0RJExy)Vcvy{U(AY~`esHACo>Oy4gR(h~ zy#TaP{8iC(V@euj zYspI53c>>x92lGV`ij?j615v@kXve4m$URGlztT<6w!E9A_*GDgd+VSt|a6`6LbmD zku-QeuR~cB4k6(wyzmlT>rjZ=>9a`@@K$6N*LcMvJ%?nMTv8M~;**5tTMS7+H*WR5 zQ80cr0RHaBetbTk)8nH7Z$3#yU*{LOBgK|Q*oIgAEL>??1=9@|3$lNeN6+;+4yV=y z+*i}Q#*{Dkw{uDs#OS!%>GMQ8C-B~yJSE-^yt{-*617}Vx_YfTHgbyZ~UluRFF&Vn#UHH;g-m5vq=4a)OG+VDB zUD3S;8ssPCM&%`+``|}-<79g2Fy?CDoS#Nh(vlS0M@-YNmJ$2Df#t@T3p}nsB*IOO%5r6s0Av8` z5NqRdXNvq+69~{;i8`*%@%aP{nI{GA0$d=$m}CGL!5AH-a3kUK_siJig+E`D1dE6Y z!E&XNAi&v;{kmy7NM;l`HbXjxmAG8X$M42)+GDZzpPbzE9~+ zCg0HXoH?mjQ5Z4I!%f5wNG^>H3!rcvz8?VrXMtnfKl!aDxc3!AFmt`}m&^$kbH>uR zto(G*kx(5*!O1jgx^`e_=pEHT)~l3T z{d1hhGCL9T*yyX#PP%6d2gvEF<*T5qy869_}4V* z70mYmZPzMugs->7PI)UV5s z`1tpyHgKQs!#(g@*jCLS`R;SI22-rocZGTPlJPb{^>t3H_g!^6x$^`36Kjozf=`@` z(I0VTF47noHS&nn^Z$chg?<&aBvL;ERNtd@;?06sU=pauP%Y-$NC3E9BdkHQJ);Pfs1_tiG@GJqbCe;Dc z%Pip@DN-e<8)u=p9p`^dz=C7kxU3?VgbQ;~9Mkc}K9dlpaZ&k6to!HWwIx>4`Jzal z&8Knhy@Up!a$y(%x`i{=&iVpO`Rw|+sxvE|#s&posGE%2n)W7af%8_4I|O=T&CP#p z%8g(X%K!brqK_YmlajzuQ2;yUHV1-1vYKS#>%dy79}6Qk3d{vpuKC{+zos?*l`BII zSNw;WqxX_4PMrfhjb{>P;LO5O62Qe1d>3&t&Mjb%7)$RN`$-&}>gI<@u{g}W!#goL%2tgl|{ z8b5cTBF0rnhY6C-H(a%MQ$O-Nm~&j)r=jE9AgRcc)IP|)^PR$^3bMHSq{cNh10Ukg&HZR> zKX|$MIXT;h7_7(HM2&I(%hgg8t#M-lbtl~}h`jy>0oxqo=Lf8hdivsUGzLe`j2d&r zz`|R6>IRsN%re&khSu5-1C(oxw>b2mWe$h@9K2IMCy!Mu^)vGD(pwcTJ!j z@tVX}y=6C>I&V+1#^(XUZT?Fe zB`sZ#v~f%9^k<|&tl^SY8ciDVp>?n@w=nUg8x)VE&qu?1+(Pj8PAzR7OSh|zTUr0U zIt)HG=s~OfwGZ^Iry8Ofp9xnFZc>x(Ue$f1ad4Q5gBKEZo$JWAu`hi0|BZqXCbG+c zkkF3>){TOMVM?|u0XqpOJU|Ge>7sZ|?j{2(qF+}|SZux=C9EaIqRAu>V~fG}8LQ!k z*s*Z*?SnWW!5%ANPN&(|PdIt|h{Yv7hbTFk$|`D1k8|&hqOLnr1IEBXP6+B$Mt^Wm*xT1Xv5~bT|u5e!K>J;=8lChaTu>} z9o*@{`Lo$M&Lh!UxsHg z@j`>my1trS)Y8lR9OBY^t(<0US_W1U=vRFcXQ#ELDb>IP&zAfAig~EIaFSnjj_fft)0pUrkErpBJkkCfb(!`dXmJ!$Yg6y!Hejo9C})3QO#B-s7her_Xo}Jq4X$&ea)|)$B?;MJN;lt<>)t;< zljiz!{oGCAB`69w2{Znc1B&SDdtcK`7TB@sd;Cv@#n{9oBz#QU*=0;I@GO8r>wdV@Vm|gdl`E+o}J?tCx+(Q zwIi8l&DX#3<~k2@197ZrqIG50kL!kl&VlO$H2?39;?BWs;GJj`*u>;uB)%;CFR?=h zm1)2|MsrQIZ^eZCDxFULTm~ue2kblN+)VfT3xkOxW#|v=8w<|6qc->1ChQ08Uq|xU z%pZNh(oTU#c;vAUF0;Yc_Pu@&I{0ArVZ2tgrP1;u{U8@aD6bM_gT3DX&RR5-6%!Yz&$H$%Kk#;$`5HPVCpd&Zdo*?uFb}fd}o)Gh-8G6m3 z20k2}CPD!NC&x1v!FlK8$Y;-bA2dvJJUO7=8E%+W{`>m<^A$BY^>1CXSSRZ9T$7%` zy0~H)%r6_1Hh{UFq!oH^G#I=-anhe^BK9@#f@hOg*L2T3pay1PL3)(2^PfjtlR04{ zAeb*}?ZDjVAE=#!Ze0em@gyVQY#_1!bvw*PqK#sH*L>&czjG5jcnv)2k*#s0V@4fH zrcU6p)gL);Sy#R|;9dXFr{a&FCe&q$7!$P*>jdskXOYZKbN%A8qo%g@sy&;lFOj}T zO%qKMpyck@QtOF|28SgRxY(|7eee4gxY@pjD@Dw>U;73zSg0AOB zgTh2+qP>U(3A})$2E7a5(fo`C`ma;*Bziu+3x4|FA1Ok0mT`I~qOfpdyxF*{W-2ss zIi&u`OCTR&}toMssS7En^ zAZE$;etyV%bHs>+YDeML#t30T5lDVbCdDwlkNRcaN;$EbBAX^(R~Rk+$@>=Ff%7k6 z>HUuL4SJ?>^r}yvji74Pd3(+L$+$?gH-7~V81epLSVY6=&_apdqBwV6YhMd9!3d}Z zo_is$j2iy_B@SuQO+Ymao>T+D?T0%pwYG$`g)JTrI>L5II6CQ2+uKq9}}iO!L>Y%thvFD$K*x-p4^Ck}`2IB9OO&TB=M`~dBQ^Ru;Rc377?xHA`x34y^%~N@sLboeG((dL0^-0 zt|5pu7v6zU3AotwewZ)gyg`(Om)Pw34Bzz+(Wh81f^*R|ekp2LtnKaslLL#y!XcPO zglD*r001BWNklKHJF3{>UhcHqapMp;o<~yIg1c^-)0hWj98?&dd}`caIAu*THx4>Gh+_wEG+QW zbL?bG}pSu<_6 zEQ3|wUz~lITD=xE@aBWWTZ8iyCu4Z5=T{w4&7-dHpSgZ(x}=wSAJ#z3BjO@8jm(KF zKaR#a-fRm-9y!ry5nJKN4e8(*-Wu{i4r^Oy&vhpgDh$FZ=AAF^GnN7GJT0sgx|?YMnFH` z4X!5Iaf;x)14;SUCk83G*d!cYgnAGebHq66ck{bwV6MjYiI;Mq!fk=Wb2>>3@u}ym zDJ9PnIYSceHK?esX12cX_~IRf$*~@aqSUlez+D0=oYSZ26hv_CIZdZK#xjD;!||K~ zhnSz2P*cOZayd+Z(uCs4Yo3QN8Q)vE;6l&3B<@Rs@XG&zY3E4dk@quaZrEI^7Z?+% z@o}vczh4c>s*!3kk`|!wPJFtIN#+gWJ$NGRDK+XAL}A~ni8@TX4sYV{4~~AYh_i7# z(&Ts4sL;f(<|Ne2(iw|)t&J!y#l=G>*pRiBO2!v4Nj!t^-E_nn$a54I*+}&(R}DaZ zEK@{795;<_a8|Rzdg?W!F3~J#u5wJ0jwFs$6aM|kdCQzJ=M^p&CkH)fW2@s(XBs%O zv4eabwNw9|rl91^&Libtik~qs&biLvs!ySJSh^c$D~I1Yc9oA0JBy}URf z3`Q^Qh#-h_UGxHon>f3O~#mew0yPh&Q4 z))T+bq>pD1f5Kva_fHcCo~j@E{%jDO6F&$jH$TbYX~Ip3#6l_2VUk&acC&;%^g(K$ zZW6}Y49fcZ(d3hi*7PV9L+sDw^*k$x{z2esJQlDdOx@TrCaW+2;N_CVcTQhH1m-&6>t)|pz*by63<4S*zMt~cQu)fYU5BG3>6}rzsVfb}5 z-lj0eFU~9OA~zn>%`-@He=44lV?0ETWrdka2O96k%GB&U{RT9Jepg_$zrFm&*Z^V5+2NgFOr# zV?pH8qA?WXL9&7L?aD_o@OrOl5%wSRL=(uLBxteYLYs0#LZONJD$*!YCiEt!aIP0o zTYN6FF*N2Ze3y7_9GlxLqE$?)z^&pI3i>4!mpe_q|J4^t*gug33~ zp#UwR$KruPXYzgU5(MS5hm#&XBW^IJL5t*T;CbZMeUO@ zI<7S~iCiwcij5~sy)VW)kYF^p(iB8OaEJjEn-)hrPv)S{IsJNtjV>BY7D6uCVLGt# zt8k@T2vH2Aec=2CC-dLaIu0>C@*+(>E)KGIsrQTH76#w*p!n}KAU0`TLp=OA3%_?5 zae~anK+#df}OD&ocF~YNtC)?aXN7DYx6^B zy4E?1GcFOD1l($bwYS)SlIMW|(*H@?)7f!BL17V)3r`NNT%d4G`ao*1AcFuw5QrmyqVw9?Tvs>?rWIdh;M1b)L^fH zo{X5KI}3Y!e&MC`5&rITIB$cbMvq^%)>m$(!9!y^Ol0fPZm<`gtOHobnTOVEN8MZ4 zKpZcvZmu9dkQY`Bw6+LqUv>V_JqZV+M)F;*Nx}tVPd;%SSbc_XUDk7(7(gC_*l;*a zS|F|jg0;x>a)59(HFnXRyb=p7z(T{{z;L2DSyMyIL^+(eb+y`SBN3aR0bmkgG7HvC z0G-z$i_j3R#>oYO!jmL)eC`w;PD&;EDny~-Uzlg}GmPq!!- zXW}$8^loe~gJLwMoWvl8SA)Kc_v0+1$k+2LUgNViC5+MceIxDx4}BH^A2Cl8#si-Z zUKE~|Iq*YtF9X0g6Y(+|ugMU2u{27bwdtS#gzH=oQ$>JW+J zWHvYN_+5JD5bKUX(y_$Zr4fTUpNy2V85Xbd45NAKnul0N{TK4<$pdO5pM5f&Kg{4^ zo*bHJO-}2Klh&wnE1uJ5ugU1(I`g9UY#prWb2JpluT1)&LlzeWPHjBuS=Uf(aEY-k zJv{0T>ej&Fp&KGTs41v{(_mBeePNpXkZug=`4ygJoQP*^%#8O|jj)FJG8a%+n&-T? z0|ybK#vF4u)s+y3q{*TVA=$-190@Uk_(4u-dO2K@DzZ#OH#-IbzH^c2x{@VuuY&b; z9q=fwL$Kk{Vp0ce%Q$1+&y_&!YsuP6GB6^`Yq+g)8I(3&?Ulea>$VolTDlR~IQy zd=3FN3X0wGP+;+xU9)tV`)Qd7vOk@@Rrwyr5BzdrKtihmIIbKLPul zf5Gq=bt!SJFg?!w5b>*N3D4-W<~z-&p;0^yBE~s2I^x*$d%&Zfa&P$a$r(7))npu+ zXBgeW`}&#lkcRVD&8LQ_XM}o_Op}qvNv9!y60bLBvjBkGZD^kH5H3=K>JsJNz-E8t zmvg^x$($L_4#xSVv&pApJ>-pauE7B08oHM0Ojh3Uyeo$0)%1+OgX7t(&*63f^*{5~ zMsxF)b$;kO-7GInb8#wpnV(^O1ur&c)6fmM6!GMI2=#bioH{URs&#!rB(oA!K^Vo* zVl;^rfutT6CuO1daXsm9Q(@>eeh^@q04{SuVxL8^{@l%KNDL-eY!>a}l9XJid`^jk ze>4ZlJXzPG4C138HxXfzOEgO)u7r0pYQ}ZJ4C2Pc)6LukBxjP8WNbX;9Vl?k8XGpIc^^REo~V~hj1PI=3*1-%4q1Ai^}W9#dT{% z#nlC{ULB{~m8;_GWXvqgkn1RrKbrV!EvzL2M_gaX`Nh}3yUl>k{cFl3;p`Z!9Cs~v z*V^l6OeyHxBpT~Fi&a}(3spB#-JywGXAp-6@4Nf=f>TX8L|QTq8zRcpWnhE`E8UP< zx`EswV?Svn;?KJ1T0iq|4RN?HnMbZ$!x%ZV)G+%knpww!4oMAS6!q3L;wGNi;9cgH zbN~I>z<%Jo7<1l2a1N4Gk49=WYyOHiNe2gH|08WTHjlB&Kg9#_L)10(~g^o z>qhIZeSF||)JL4d$}4j}u<-AX%K!_yl^nOsonLr8Ot+3{t;adX=gJTm=b`7P!A|Sy zq|v=!8<{Ca!hLbc(!Z>U={wr9&omjy!z4xy$C?0qrG|Z((t*?J?E3~|eWnT2#2Uo+ za6#Th55m1%l+c{?Mv}-6#65^Ui2p$@MHGSbTwD@)GogHV$&Du__~+s7NDw)3n4IHh z0dSA#5?K(u=}JbrWssb#D+wAv0P7If{`bO15Uo-8YM<3CkG+tjgAj=^uydw@;wk@g z_7+kmaFLy{Y&=*r^gFblf$`&ddn!IQB-RZG3rysXG5V~5#r-N?9|eQYa9*Bd#aIO4 z74svAbP^=vc@>WpE8n#D^zeHoAB<>s((mcw|$dJ@0* z3}SQRM%mZi($961z{SxGXv&{!BAuM-VFKa2Z33*DIXpk-XUM74+%C>#{S&W5{1&hJ zs`L9@n>Z&I1Rfvfo32x*n^#;9IKelp1_qt$itDO>;kitm)$mxbdCFMtPa-)rA=d9Vy^5|-;o!c_SDPp&ZT zn2R5^YsH5;fptdvUIPgCIObW^u9X+c4ePD+zQ*!VBVx>m4dwOX(NH6XHWFw2+oBBw zV)nru^SN;UrJELU5s<0q1{W_~gXzTtQRzi@!lYvT1-t_U%Q>n7kbr6s>I&lXRji@@ z&SJ8_RL|u5(lh+~AS9|wxbT{*lg7lI9A|=#1fzmLpfz6r++`G4j8R}mr%mJ&r?tQ0 z0+1VLBPsE&Ch@Dy*%~$vi4P7(C8%P@!XS{)*MfCE}{)aoviKqHyo;cN=uOI%y9xV{DMOjsO^nDS%@H}ZTiTd7@^ z@oT|;nV!m>GzA%r!DTvMm;etBaVFkvP9YDuiE#b_6J3wZI}*NwbB|nDaXo%5BQ}&D zjaTLAvsQ{@WBV_{_*#>nYaX($I!tNv`dB++yflt*xA^w`?oU(ErU2f#n#(Ln7?20D9#~}E^ z&!~w+x$a8*YEB8)xnM8AZu2s^juA!hshvp4l{;(Gnb^vwK*_|gny5T zH!~~*17Ah#UioQGF>dSJDbO9KuqKAuMQ9W{$0uNWm~V)0Jts}~DXiM$@E+7?QaJk0 zU(*%WrOrFOZxrv)=q=6{mM(5#jqtu{G)6vPo_%3S;*@8&j7gi*z|;~?yb>8cH<~?N*cjjMADw{AvUs~!Q%s}TZEETgV+CEzCE z-0ya+8D>K=vFl9T16c#szAjD)`lGoK`>pjZ-VDubikr{4vE`idJ3~KJ^@hDh{~NG% zozbXQbzaUR)Yxdm)O*YeN3PlY9KBhpW5VmGC52J0J;X7+bA|W94>bm{#yI_3qZ`Hg zd6N(WbQIzT40KlL99Zm-ybd>G6e28miLXPr4N@k#|FH;;YYJa$#Az&I{gK$G5ET$s z6KF98f*gfV32{ysR5X^LMMChL>(5N zP_OCQan8#~QSosiTVQ!wUj$AfPv>Dl(&uD{76qMWxNstYxQwU3553laiP41G*g10b z;+D%{r6Bq>Z5U4bdnoaJEDV>h79a48U4$$U{(W{3K1n+@PUOWTzAw^0n$PRTz?v>t ze1>aX$+%mFD|v+?Su0vJoRpTAb+g)Qmn3Kd;B|d%LaOArbl!4WlUGRXkeJzl71Fve(A=f zQHDlOF;~+wo-e)_HB)-UIsV`))sZWIxKC?f#H^oN*mBH{fktBs`jtJ^YQ%9iLmQYw zi)+mpmnLz%!4apikz!-5hR=AIGWs{fmKtN6mugw;jg(-+kO;bQ=z@b67T1fT*Lr;m zMO=A3@9IYfk6%U%zicx560d{YTr@qI@!}c7s?jRt$n5Nltib z5D2^xPm+5|^8eyMlC0{vABMn5W?0jR&mqDsLMn#;{yU~!Djd(xlepBsuj|zylYZAl zI3(3T%1w@6>tH-s96=7ryczi8no|=j5~$d@u^9L+QYMipr!E7e&h-*<7F})}mr?gY zVyU_3`#rsAT#$SZLLbHLBIJ4wn+;Cq5JzIx#d2K5J46%7b^ZCctC7`dv#m&u;dO_xk+x@45*z zCcBQu*B(=YO~G4##(tQ~i<8a27uMc?w}CVClufmS1M#A{`N1(`S=@POfrs-_O}aSu zXlhe)>SoQFD*Zj)> z5mRws#Ej1@@a57L=FPCCsFA7`2t&`hu6~z2%CF7!gVF@U!PWsTr`d;oU9oghlSJ6a zhUZo69juX50&tqLJ;jVkbu@PVT>X8CHUO``OP91>s* zEQ+Tf)UJuoa?3@|s}YoFaH91&2NAKZM}IT|u@Sz^4q>3krLU4v@N!)w9ZyP+$)Fo& zC-gY8FGJ)IS=~5?HAe?C5R?mFlP$4c7^wr}bJWN#EQ3f#gMJu0%cKa!dx+dG!FEh9 zp4wLFM>n8Hxp><;=U5_-UU7r!Ju1Sf1o(wwUj)LIey&=3)K{T!c z?g5$q{k|S=a}}Q_apcdrmg$CAW8G^A0)pH%T=ucp`M>siiT+_YkXH_o=XH)rHFGmv z<0kimk9*m!qsk3!@A>QCc|3nLVXS-R5Y)+KaJZRaO=Ux)x@z-+roa&Et^pRqA3WJL z>s?bDG@)@xv3od$6FKu+txf;FFsHihhA7pn^1b?eGd*KDpEM`K;&cN@pV zMl$cny$A1(Gq#4PeIhs0!05@Jl)oRE_Ige~3+Gq)NzV0o)ZfRgq{Gl(w@nb6vsS(@ z_-nIx)uT^rQ!^gJxtK%Z`#%ptd~28(alQzLtU0bd;|78FY}McJPJYGD^7-2Q8oe1G zWL_GA)z{SV#V%L@kQUGVwL}61APct8kacjCctF!n2#cgWtL+>&!-j4Gb*N zeQ>Zjl34urv!CXG1l7OyE`i~?;O|uKLhOw=g~oU_8g*u_OA;JxV!8LKN44ize9w1gV|{6UTaBtl4?WvrRR`&5gtyjlfmkFJo95!<_tJ-8qLd@~xIt zcf#|(rtPP;3w3DZTEM9JaEa*RoYcrt_y=w=7lgF@KQoH)6Rvr^KI)(=muVooL6reR zj;?h^4H?e0YnOALIqN?MeuzV`tEpEo*Puy!;b;5ig!y(2-h`dc9CcnM?U)P--*%}z zqRuVs*SeC{OV}+;Skn-{d|v=^<{mo%FFeuHL1r~;`%637a69)-v#UsvIg_wm=A*DY zL6%5c6J8Z~KYtOlh}0q{3AYB5_Azj!#y5&>Ct46Z{Kx{f#f*z#BI6(y8oX|30D9u3 zV@QD<;{FhUp0OOrYq}7UbUcsb@qYHpHSO<;n6G9a?Qu*&>YYc!H}d1hG;k1sg>Z0> zql*htT8*WJ#vyFJ+`-<@A3ZOzZnJ@FwJ|~NAy1~dP4P#L zNPKZjgg8}+bs(8nsg~$$d3OHu!`BqdwO;EC;xN@K;k@@k-VSxl{GV>lm`Ca;R%2m| zd|)><%6@LY_aleRGuKqL_xVwWmxfgCJ2p{69sJ*)_1S%3yx-?3Al5Z*;TZP`OUnOv z;~|}!Yh5trE<@1xPFi);A~kSs!mBndj31^EaW(SI4S3?F!~7r}t=kZ8M8$!H#i6gM zhs?1CsliwK?DqZ)tmov3!(NidXInSHj(^6L9ObPMt#t0u5OP^lSQSBH*d z_T(yw#rmon+?6N-J4x>P^Kveagk5pcbUYDMzcbQR~L{#oX;UYD7dJ6je!B+AwgF+~myjr7(Tp7pDPNF_rKhSTa}Cd0!4O z_WSeNp{{jz9*Fyv5r*|fEav;YSfw{rP^{}dDLIj1IBXH z1LVwVj9uTHUpzxTCpEk8THMH`m=tgEzcGgIJ1tg-JBqXBLkj9zmz#<-byi)ruwM<# zhv_o%iw0)kNOF9f5-Rrp{@SKwFl*EEE^#}~E7d&dzpHN8a2jhYP6bAupF2;(P>~{YJ3I`Di+cb|JKv^CTSSc#DUguHK@t_SmsbT=XKs%dm0$7fdbcf zqQnTHUPyJTXogdn5a81w*QJ)oW zUj~&;De(Nd_MaN`a~gOpFeFGNNfReXdNfWHgG%f{Ouw#onbeYi4FYQwV+(iz{a*lA z6L(A!uZF#ooB(o>6o}K*$;Htw)@U*SLN;szVCfp5MCNm@6g?oL+Al>{Yyx;TPOea# zE;o^6y#%7M8XPkhfoNiAzdRPko6j2Sk`b_o*o1cAwhCH{f^^MZ!ebS)bR8BOie`l3 zNb>vSj*HxZmljP2!48oh@`3*}a*70rg0l=I|0;ltBgZd^1`F5bEZ(q4cxNHB$rEB8 zIVXM2@lE_%T%bHodA9gFi~jddQ@`{$n;*SKJVB2BQ&l#p{HmR?UV zu1?eGGJf>TWQ704bVyC7W4rKY&QA>$wLP_mYtsi`jv6bjAB}m?#6#<+8YsP1d_TfU zK7oFy&ol=m&ZTZ9mg=)!vpLh}F8#KK4q=En_T;*CXpT_}f7El<$i*E==UlZZ7|qc< zf4@KKjhcS<05ro>U1=`m+R|XK_%w;^@!$aH<;F<(cQF-#|NH9z83T|=E+pn~#`N>m zB)!jHz-EH~MeyPCV-JYUr(;L(s9|GbH^2k9*S--iyL!n0SW{9J0Tae4PV3AL;W*A9 zBwTdGid;=>Awia7{MFoq0_}KL7?+5@nhpsOlE!GhEj~$&q_h{8oC*D#JK;@@XnllNK=_ZpkXzu+cK&NWRNXKB;z_?3ob3{-$9 zz#PLLX3-*coZX1kk7oI7JnHOK9eZp`oq-SoMNtF3`fJO=eF5>)P<)e=?p7(y1v(0yO!ZyHs)P(dOyfv3-xC$ zM{QXKDAqiTZ||kVW5Uaom#KL+hvERfv_sN6!yH#lXUs>F8aO3!&Ls$YI!X?`gt>F+ zim946H@Rso#O;b3G0G20@SEHFyb#5P@AG*b# zN&C2Xj+{;XS~F-!pFW#t^qYa2?-)bJXFgJgp6{pLyEFieJxhfd=R zf86{b79EFSw8+38bxip+Vsz<$p1X6}aZg&-jUB$z{FJy__+y<)`M+-TrW*>>0M@r$ z7jvj`J>k@RacL&k8pSD@Ms?m@S8XmH+I`eg>?75{QIp@##+wJBrVk@Kf=uA3mpL)3 zxb#{@&e656#gZ^c2)=?A8iZ7+*no}$2nWle`20DL+W@$dFHU(33?E>M=^^?CfhBN< z;+rOHbaSq=NCIvoEXZvUAqmW<8w<7cNQ9|rFzF^T7j8Vce{woCE8(Wfz`No+nh?hu=iHdM{!O_MpUa$b zBWUj7xv@ZgH4qgu3ZKGfns}%=Fdwd_i_iC;d0vd;yLOA3U(MfnGbY5D*CNS{%)@c@ z>WZiG^yHB+>Gp(lO}ABuQ?8Ehq%|s*Zk{e<**7`XHMG=Jq#Q-=EZ$`fldsJ6hu9lu zb;b9<61nu6lsvcyT(pdlP@9++pOcv4`>Q^%#)4BlQSSXn0J;f?jW@Yk7;4T8VzjXy zYWiwEemz(FOwE(8GM`3?r>DSWhxt0!U|=SLeAHsq+UAqAXHOMFT)DjO@R*!w zupsO-msdPTvzI2I+}x$BhY!h$7O|R9shW z_#F~2-npjWL6B9fcvB#`m{(j@Q66{o)ccpE3IM0Kk24H z;cUg`$jSaZc}0IdhiJjba4m4&J@5O)I|zVlWao#tF7|Ocv-&Q3u<^ax&*ey^>uzk6 zn#4p}BsU)JayybEk3=1Z8+-Z-L{jS;P05eOV4P*ZaX*V@OAuz!Fi~L|81eOB zp5tZgaDDpoXhaz=ieUUZn`7TJ7!4DPp+&PykVNLgG{M;~@hO2kCM7o8_#EZXx*>6V z_UBEC%cQOMSy&#}Swhebx^k{fg2YLe@IGq6^Jp15$z*-_IW@<|+aLDcoPag4_LzHz zVM=@kWA@_RA)tzbT(?vwJV}nvPI)dorCT~nw1?(u2)NLsG*^fVQhW&^*VWNX2l3u# z?&mC{+hiC-QSQG#BzAxUluKdx+E&kL5f1HmSZsBm~B0gA3mEaKg>P#Js0PdbRxRij78&W2vc%aP_eP+d31G>I8xCVAm@R( z!FhkylO-ml4tNNsS|6Twkyeuq*0CC$ibZHPC?aZkajK~PDCg2dt~n#*)!3)=S9|j$zq#$0lCS26 z@lEIaf!)L>ZXm}#k%u-8qk(k@)PIkm*))W(xm59@_*+HRIqO^sd1N6^E&oRMYS9?RiMkr`!O>s0(JVMr1Dw14 z_g~G0>hs|3gD2P21AOJ?)YFxb&mWUaH!zn5;yH~y*Ew7qfOGgfYwk@oany$6hTr;3 zs>Ro}+R*3^9rJ;ucr%AsV2!%WB4XK1yLqU1N=+9(mPB>RkxwoSW(Bc-;cxIHwXODU zJQ=UcxaB}5XaUx;+7n~g9Bwn)96}B0{76Q6nCz~J^U;WQuM&8B z<$l0k>Ni|-(pj>enR`c_3Wng;j`Un{ETFt2F800PX=`gOgV!t|D7m^fiqVm{OudF^aW&+CBiG z>xD@m4dOUJJ}|@2`1+B~Z8>S7(e?Y6lWqgY$w~Z4I1zhk+A}b(Mxcr9W5VF#v~E6N zbL+~Ki9&cBHw833w=r=}!~!|fplLEqB2MD-*L5K~jmwM(f^YByi7gd(3kc@wab5Jf zi9$g>nl_W>dw!!iO$Cq>&(!Rzse1|zNm=IFYCJ^xjGMW3>tt$#jwarqv963}G&L^FQE*yp_BCO_tubQ{XY0M?QC*_OJgf|%+YaIUI0Ol7sEeLS`^KpAC5WCVTmxo0Up<-gnwT#?#M4=b zLvdQfsixNr0mITc7zA!|NYgq zga%LIZr+MXjjj1c&+BtP@cUJN>btzQyc%ZeK)##U&>of^$G%dN(O6OO81>P{IJwkQ zV&wL-mUIS3-5H<1%sX>?!0^f!-%?7PrRStU&#Hf{SIIc`&{3MHH2|>v?~l~#%*%TJ zg{%IobwW6Um0#{FQcWoibnlY%W#~6+Z{*8$=2h)&9QuGWAKW5q0KQFOfLk z8c!JLrD@o<@@zGTbUc;pNidI%e=Kwyw33{QeXgSi_j(it3pBc&hx2V`u0fodAPIH5 zO7Ut94>A0C#g0j6B7MIfCqp0zHzmt04MKgG4Hj5IKt6yGnGOQFt}^*qL0B##xz57E zBovbv3ns6MMI}NqBwBEp)KfA$;c@muNC5N8h4l4H#bM!3`7@qJqT=TcGlzR63AP9j z-ikCijgHMP&-;haj<*>Sp(Wzinbi7R)Og-af=7YsTy-o(+&*6m`z|n7eus(L_|9d( zz0Vss^%ZiTec;@$vmeDDh3Vp$A^1Yk8TnTH=1DfW&cR5KqM) zI6vaPzh^;i>;~M9ToVp`I!(T!ZqGwL5}ks zjbVzNbjXOu$JF_=VZHEmGzEZ1iY)p?oIR40h1kz+|qicdye@l8A7oOL^LK5@fZXUu&4 z8Upq_xWh(3`a9k^`r@mJ)-$+W_j`WcHG~+?`1gDY1%K(RVJtR*_y&1XD7i?5z>lJ; zq*_F!qOgPw3z`p{f`nIT(%ur#c$hq>UjG1DiBWu=RKU4y8$j4R8=W4}OJJ3j&@+lcgH#wU_sU@%L9)OalqB zF}m{0_!uTsz~$N#3&I;q;<0kGapN;3MuqJHnsSQ~q8XhLB~g=2A@);~m@izBc# z&YKua1n)SqX!0t25=D6SngoeEm)O*MJdGVw?}JC($fn|*u+ItWc(3#0Dv|*^qu83S zmG{KgS;OjFRM6Ko?!bHX%=lSz&?Pi}IOnSl{J?l~mhwEBcjTco1yB5#0;xRw3nxZ{ z*tvB~F&k^OejA(2HH&SFO%EcxKWUG`RB`X~cW4{uS3mA(T>pGC#=q{8h6h2*q*!^2 z(X>g;>H9^C&OUE(U^gYl-)&tz=yF3JSK^Z|1k6dj>p9K-OEpNiTFrsMILg{ z5+}}=9&r=wvk%ya+*EsFtQd!&9V2f_Pum0;n6r*nu6$~Ul#Bene}xR69}Te@`Gp_G zMfH?RICWh5^-iswI(jwhtPM8UeI_aP)*I4q%S`93Lg4e^wA7oW+7Jv(p8GJctwG2m z2QQLe$+`9Kty@yxsdx^4B1eT=cMFg2T8Bf<)pp2Wx!tA&4X2R#?xuit9m+ohu(dKgFg9YMDnQV1G7|n~Ki5DL@jhxCVl2 zB0eU!ox^UHE{@>DD3~t3T6P*?=E|!uAa3h+g=1u%BwrYBY(m5{6|>WT@ml{Fe^B@T z{x1~6RQyXQHQ!V|D>jQilCVhz9piYN%OO(Mgp9E;r(SpojYP`#aUR?U`6vkY!4u@d z%5!4F!d`1mW=`eMQ==?Q{e21O`VR9n4FgicJDR=XYk+J`CRC%w)mfZX`d(`Ra;m1s z{c1N==6wqOG?@$M5ydTQF*(#tVc@dS2(#8Gmu>#V9Mk(^b7t+5rhCF(Vp7XT{HM7-4;;YXdR}r`O1x`Rf0jgxJFIV^_)u=7z4)G(3Ik9*7u|!SKACY>zM;N6=a)2sa+$Fn=8iw-XN%AKeb8d#-%>s$ehc~F zUm1A#I~Yk{|6ZKGFq8QHT|>o>yv^q%Gi=m_zz?hUOGXv7bJEcsjH=c%ciHnWf4w7BUnMSev({rEq^pY{k~uC zV(~~$l!ZZho`^6KFiG!S9Gi+%fJb2KAhK8ju;XG~uVP9oDgO?W3W2zD_Kqvryc>^7G%% z?7Vjlry43@oJ4Hr#Ji61JE;;(Za&SijZf~|`wxbpuX=tpwDJ6vbM@C>BEI6ej01Cy z_LFKtG(al;jN^w;A3`_nDV%X(tOpZ%XXlQ@+%nL9+(sfUzoufu=vPdL6*sc$U2pu& zKLc<0Qsc)rA(+=+2H!Q|b3SvS(j~DW4qRoduh_otSQ>?fs`9*-C9WH}I zGH}NJ>THt0O5*8_znh%MZ{`cFZ#5G(Zj9ptgKI*gx-)7g>Q=%ab2^!9tAP$R?u!Fc z)7X4moTa!WQz@<^2^ZIkimA_5`Pzn4$m4~dU}jVvj%E$D57lriYyB>WQv!2LKfl}2PeMG0^B6=f9Z!dxY8|xF!>yM#SJj? z0Qi04%!cvcfal!RXxTjKIISi3|6iton^JO$_$8W7 z$pGi!s-H+Y&W6u8-;X_y*dFFVG*c6vkasIrREwe+Q0MX0XNcR#zs#S;zB$Aufcp;D z7Hgh&jsI)VMes}{o*xOa{@oMNDh(C$gLcqp~ulR-7c}YIs zkqk6H!d?dHX)mL(yhstxbOV;~9P#r1Q+7sMvh66Y9sU0weec*&0X3NjN7hrHof)x~ zjX_AlS*@aFJ{a&{g3$mzNVy7q0VdsCn^eiP3Z${?HZ;x7Wu5O5d#RCzn<`6e(j`|s zm*H>-;}t&b`d8Oc!Y%D`X@i+->h}%cFg_~fdInnk=Y zq4PV4kCA)aXD~aGa9aJJB-K|6O%QR8jj1NsB51w;ifV)nUH||f07*naRNs|zi7ObR zQl1BFAZ|PU0~-Q94Fl2r;34q*&XLOr^Ao`n2N+nb*z@`QIp$~*Z(P6kA_HLLtaBe{ z89yiCz9M*Te+{qA|n;XY%Dd&eFod#{HC7Wc) z@T1AM%$e`|Q%+y|_Ry^B{JT$cRMuC@`ElM?41t5(;~INl*k7BWhp2De zWB!0RGPa8wYL5eNLjJ6q6zR4Fb=$xHUYq6NrGynBAQ1i%RSQ%IBB>!9Nje0+pP}F; zkfsf9qVxZg^|E~>_NiYPI2*ySJmV1|oPKbNQo8T-& zD=BVH1@s_H4aO!`cB)0l?5bN#FEK&zIM&Q2vCI+X1DqaL2 zI&w#@oI>im4mT2mb?3cvIEWz&)zL7p?${8x9*Kz0S)}Py0>9A2#$*?TY~t2uPV7@1 z)moBK`Kd#%m5tnD;P^M2U18L^*}(HK);${eRSVZS_gel!F4HyC?}Nw9nM9u4W0dDy z-@s3qB0lSLQcZy$CQys)ka)2f5F@=7=UV!nZzT9E`JKyX_Fj%@<(kqEdw@&JxG?F| zn!10c{15L~_6L94BT4qx0Xdhv|>S zee%GfW`VQ7?(=&e00}3Pz(4oznA8Pa2Ux|R^0Og9pG{Sws-DkAmc)U@Z3B(X1OkD7 zm#$J*0))TuSj7DyTt~yOkTLM^Y(q0%dlLw?Lse&|0_@~{6y`D~7>8fNSHy6{>DrqU zDdlqbOge)&-TDE7OC0iy7$<^?g5D_=&V7GSP5{DF+U9P}Z$ zLR``Wp&DOd*a!TO*UP~)coLNT-!hbzkYmp9vnD8Yt_LP~4{Hh}QN}$sHZyn9q>@+} zKAVh`I^V*VmvJ&oDhpY?ufygu=GnML~|R<{7k)r zYrePyIZ~+Yh#~bk^DEvw(YrrbBi!sbv9^S#!}vm~ErTP}K>Y5DFB_WzCemc@*f8GV zzmvJ*x=ceyYq{p@DgLOZ!C%tN8TSLlpBR`-gJD#gADTN3C*p7|htR4+2m)x3<^xFW z+>Ap~kQ~qjJ_5rkEwKb<}&y}<39>U+;9R*Hf} zDtrY@K-G^4V$gtcIrhmtAB{d-hb9?c4a0<9XTUsK&TIko_y2l2@BvDK`E}kdymWOZ zGy+c?M^1;SZ2f+mLjW6sj{o~|?HAz>SJ``gzX(^r4aRakM+D_{PL~_Jre$uX32!b8 zM7@mZY=J$0j~sF%{Onn=8YEvi!Q75mVe(0lYBq?E%LGU2|L0HU{0xc@3lY>2<6m`A=iq%Adj^kT zJphBQ0Y=2x)UyuLiam7XGW(c&8u?`4(>|N-9o$dCLG+NpVGqnVXS|HQq!m11iH2s? zXUI`=sfG1ne^HRLZ`XS+JRnYMO|BOY0xCcGxnW4+*&|-aM~c)T)@r?pr})qPJmjMR zcktiDp%TX%W>DZm?zOJjG~}$XTxMhAH8Gm;a6KmsN&M8$V?GI^V(vZ8ZQ+yoP0$97 zVKj?;1C7sFpeLvG6MTV^#ghe+C+tIjJ)F`$#42c_z6B2t!>$h9cY&;dIR4E=eJ8k9 zv7lJ+!Bt*lQ2BUHY#_1sR4V}LB@h;P>YQwZ#3^7fojTq!>qdhKO~K@Tk^PIjF&@TY zk>1fLkA}_9Bx7I+Bx7(jO~lhA#<@6R!}@g$kETW9{W6RHV(Kjdsr{|mMlTwI;L%`N zPeYU))8Zsb`xzEHh#!eipKHQw8z;cULB@bx1IM*j*H-rwVf{Fd@a$UiX=16~$LB>* z9p}~OJqajRAlH2k6{9C}qbG*!f)uh72`9pFE0tZOHNXal7LL;|x zHr~nNJ&HWV+zC#AW&DnO?`bzz9tcgH`Dj!R>V3V#$1hT2&{ya z+C#6Ic;P%Gu}=77;%zehePXX*>zeHt5I zb)1OgIPZkP%JYBw7=j)6#%sZ89hWF3wk_hJ-aN2aYiSHQz7q`(|LMd*Qbz1l6RAH8 ze&K8SA;(R^N8VPw1X4td`DMaH(&QRruBEeejs&c3Om$!2J}Q4x-W$uVUXie)K8x?9 zX<5qQcxx=-pG}g~3;6!Rq*v{bCj^WeH3IxhJvQ-!3(NZZh1CxnU&guiXi>fD5pfu6 zbPgyM&8LoD)Mtr3453TjmHMRWi}_355DmqP4{0q!H6KRnu;DE@7C zsJmq#1%op_n>jKn!92&%bH*TmnDG+A z=2#ZdI%^MHx<7wExB7^+uFhfL;?+lwVbd5`5&PL=fX|~wg=zmcCK3Uh)nT6z73Zthkxj7Krmq^tV09 z;au)1Z!7>rFA(zWhbZWLMg$uc&Ufv8<`Oje&H$Mp=9W>BK<>JVp57I%N2Q4g$z}qC z&!bJ2Mf98>ox1|}QAfVI!)C~{5U7o_Gr2RsCc^18eV<|AAN7G4STy&ZDz|OcA=if? zk*-?{phrUv81lgY;RGGp;aXq#`#896f4eoc%A-3tSl@-M98=^r<(e{#k2C zf7;@ls~#}&L0EOwX%jWoSrS<`l*V^~qa(LnubOTx4#nq~!#ps|Cdu8#vHw{d!1t%c;66`d`2MY-7^D*rW+-n{>54if_VH%Vb!c~vil%v zW#p23XNs+inR@0Wr2G8Ism+Tn9J+4NDQ@d#2yw=J5O}sYfo{Mip4|JzXVWCNapU_R z=Dkl78T(sYGu)i(I_H`aR%3WKaP8n?7LUFy>AW1~@An0(zQsjtERC4I1TK3@!t{E- z`Lc9S;sS$`R z8$b*^Aa%=~_u(6a1&S2||1GA)#Ai>nf5*|n=z6Dq&Sx&tE3o>Am5adgvlf2!PKpJR z;)-o0R}cVoo}EWwYU1T~F$7Ru`RTYS(U;kB6@pEgbn64(ZTFf#BLIaWw!3Na*JoM* zaol|q!p&9!VhHC17$#Yd8ztBIEyG5_a@6x7_}s{eEteQPO&JrFfIG`o21YDlPVlxM z^?p<@Z4%fN`<`z!#Zrv$`Q?zKczEN)f7d(kg6p&(F;-os$!X(_-#ZXHx&}+I7z) zKCy?hH-tVs$gf4GggSeIjS`CZ`dlQtzF~v4UbiM1*R`)D@@PJ#yewjz@-W5EJODU4 z@`-2W+7Hi2LVXxsm4~U;uHTslJ^IdN#t)(UeNP&U*u-OAeBu)L+@A~q*N4mr<`qRo z|D0Us`tt}2Hr2dM|78xSh8mZU1O9t_MfiA#@tsyD@cU(d8DrFVT|PL9dC3_p+jLA5nZJm=B(v!h2TMk6<|kC>Ym=6N5) zBnkf59}`{+2cj-XHyJ!AsrNrLqX)%n5PFH|1A9l0W$r()y19<)CYT-rL&BLvt?U^8 z`}ZLANDLSHB1A^c;5^wK_Y~XHg9ao6RU!g*iU33=R6|rSVE{m9zygpjw=4kb5MzE% z0LdhL(iE4)njHPnjIT+7*7Iq6EKSC* zx`0FAXyCNS8VxcvL#!_WU%&2^;{uRw>{x4)VZQHSX2kfjS@>28$q^cH=gx8NtSe8I zqR2|m_C8Z?q?~ph^L#?X8TEv`BbZ+#YnX?=Ztio?vp?H$^G|rjsc;Ysg`X)WmpP=m zWFD?7+KHTbLS5%30z$l6E#ne(6a>sG#b}9vL~z}>xjxn$&)~YcMl1v=Og(g&F-g?; zoyg(Ji50&qX51$UE9)tdYngOBqeN84y25+Pq)M3H-zBEkp8s;o#Ml;cF7g)Pz`9xR ztH&I-qRcC*{+gWCdrf4+lxxJs6Ef6l*SK%1Ts>SJ+}FbFW#|H?-TdGh8ZMu`txtm3PQKPtGTqhU2T|qZvEIMj+CW@aBcaer`Qw) z*0Dq%^T1Ob-HutJ;d@3rgJhr-hJ0!+kb<)ogPG8|Zjl_wAq|CONR4%&_GlcgDJTV# zZm0DAEar#Hy9_htcUg7>2@ke{BK>kA`yAX2dyls`(y)$YoZ9P04N8&uK_rZ6D{~V2>bk1$CnAe?wa^McOd+$xP$EMlL|W6of7j3(kEQCMFPWES{i0#2L>hPFk3I-nV*!g~_OQ)!2nYNzB-sU~d`g4+Po0$Jg;J zBAl~pA{NL`*NjPkdmaA$5^da{^R{ZgVoSnq!9gMu4L#xkbMNRMwXQmkA!v+A#>|6U zj(o_!(o2w#V@<%P z7tdG|(sUzGX2~!^R10G{T7TyqvFMt{D~}`5W*@pH@(*lV=Aw+f#mBGycJaEv#d=$+ zt5G9K5QjSH9JiTu#Xazo(bw32$fJ!f$L}uOinW-`ZM>gx`e+OFtR=>g3q#;p8<2ze z79OxK^@7nCc}A%}FvlM}WAzAY7Sw_J^3r1=e?NUD=pAyi;xTcu9XOjI=Yz%WHNd~o zZxUboK5(5|z)<3CibuRoGMUa9Uh>n&5^~wVWD~ zVQ|%Qz?#~_5RA-K5w5hybwfaP*O@J?k90 zu9)-gEjpi7+rl>I)RklBv^B($dukk14UD>}+6g$&Lg2gk#euJ>DtnjkAf5-~7C22Wmea|mp$bQKE*~EzaFL5~DpptRqUe`V5Wj69l&NYf;*P*x@&FIDv;uiIUIL6>( z#3!t6ahqgF7=MVT$cqmTqA*uokGKULv~DdPM$5Vp8O(seUERyl`oHmMyg!8Rz%1#z zQKz9l{lpO)a>2;>_l`JBN=eFIqMKK&pLHvmm}w1p;OT`ijkn6V&pQ`zJAs@e0jT@A z0-OP$kMCWe#A1t+<8YNNUb8yDW;ntwlt6YC!7gxi;__KnQ%D8#XdJ(;T%^LT1RIVU z3sEF|P4&VW`#l1)I3Z;73JrY;;M9mv#G{e?0dRhizN^6v*RIYl0O(`?joT|1u*?5wds-p>g@YQo>2 zE#oEBF#-J36ue#&u++p^gKQu_3UQ)I?Sqr~Xm}j! z88vj=pgP55GJ9+?27)jq!q;sa#i@(<<+#s};o~{f&pU?o173*>#Fo$FS(`90 zhX$n9& ziun0UTv&LmtM(T@B=K!g63)XtVco94cRqMxvyu4t{j6_sEu7Ue8#4-19#cBwSj0Sw zDG!u_*>MWqVE9}(JFYGhrx^Djm|rm+wXd5%7DgktBsiXbGA8Wrn)KO!&!@Ra==IBB zJ=VN#`lV-GST2E9eQw>v@F2^$9|nyJBYlqIfGe&C_jQjN{X#jmZgU~-qXr)s)-`2K z1Wc^Yq(A2waLPTKU#cI+$v1nEdw@BUb5X|s)$e*Qz{k!D=JC;Y>$9Kdo5xoVP5dMb z$N#Sj5rD`-Hc%`l8bC-VYaGh!Al(dt+Z9a&ydYgU=e|sw{kwitYM?B{a9|Yq1QZii zChidWhZ8-BY!dFi?ibF_f}2TZ;x~koUAcqMT<4vH^w~I$BI23Qba}<~oF;=lL0 zqlz=-oO62QkpV7{@L?DP=WgUu0Fwfgl&^iZshNjjB!P84^5a8f=&Y9Ukihf!*&@WL zL8PV#ys5m1dkN+pmp`WFo^;Y|plP9|JZdPB&CrZi&Hz(PimnXp^tM^cfN5 zI;S>3Qj9Em9)`le5Z8M3mn5Q&_&JqE&NzWXsa~=6??nK_g7g`@DslyPgrsMzMK5iLU@T#<3Px*v3`p5a4vrS;)Kp=VdOcq zF~12I;QrM$6K=;W?0Mz#<4jlXh5o%b4KWFMAE({MH22bE1SGEaFdG^-S@Yj@F{bGz z#JYKBlaJhnSni((K0El{3)ibxxW_(lWYh(79?wc~spE?Mo8ma}V(Nl=kLsa0#$kMz zJFS~SKIbd`SIh?4<0iDB)I8RK3Diu)*0h5nBnWeYgGuQi_-vLa#p^ zbhzTyAkV`#(7Q46_m?Om7@FAO`|0|v0V_4|e~%bfx>7R_>rMc?K*M534c6~YInsrx zf?CdLY7!Psit%;5IsV*5nyx2-ATb{-CWfhmrjSH`tTQ!+Hb4#{w$6$ohC~8uNrs0B z@z|FL!gWJo?LC}pr?rVdn7oWSt!D*OiFp)>eZapf_M=f=Qx!HEnr!^Q92MC&@I7xg(`=>%c$Bp~7~ap%=9{JE5iSW}A`;OD3ji#C!Ol2|r$ zVU116Yr>fFa`nC-TwZ;wah~;@rk3B|F9Qac5c@XcYf=-)-N;vCj0|BL?(Y50{f^%w z2S(qs$V+Eid-9pu%ro8_e-n?oOp=3hefDe9BA6KIX2mBq4-q%=ggi%iVH|Pp4Kt0o zBZ8VlEQb;Py^Yji44Ri+hEU=K-~IhEb2|3Ka*J5R$^!uAs?R40#TD11?wi-ikcpg# zxCgxZV4!-@zh4jIoA_w+;2JWhpRbsZdnA4ydUwPCapB9b?U=YHTn3M7cxfcym;2}9 z1;U4=iCiBCMi0Gn*Jr_SyvDviCx5T za*s3&aIeI_lkpMFuB0!1nK1{Re4ZbPCJQVSa24?)cNUlmVu4+4EE1LiLJNpTqMKZ- z>p^T%0`&w?pZ)oB2Es!Kd2c3K%GdvZp&H0V|WyCKM!lJ zbzjC(%K3r+fwZ3j-~N zY{C`wgU?!mG0i&Zy?VXoh(R1h{7d{StiuLvO0NI_AOJ~3K~$o`LMLKqz#-|ndTJ8w?C}YMy{_6*FDGcwRVx?`q6Buk*9a0i}*>wg#CI3ZV~4AbagZUiASa?`Oi7^S9508{Qa zNFF446|sqh^Z8eP|AAbX6rUva0s3t^eD_}YJ!+GG$Le!2hyYMm9T1${6a~tW^fK=f zaEHIQ?Yt&lv8jdg9GJky#HOTX*W&Rq^S)~z#5Do%afQ}~*{5~`2C%7&CiEbNBX1O^ zLDp*zi9}b^7j6*ic*Kbm8cQP9n&f@IG{{mgZ=WWubK@X=pZ>$Xa+$>HF%<(Fd>5G= zWJUFKP56lAj`L^TBuv3jSd+GtuMl~?#$zH&9>M)b1LDz7oSQ=o1;YF^8v-_s*w~=J zy83#naH{kBn-{F_fjxMZW0TAv*UgG&;dRIl*6e9I6Zee0CXpocsFi_b#0Hb`z#~^3 zxdu~C=$i8yWbnLj9&PBQ-Yw(lHA%ei%LZ3vl^YjXGfT>3k7 zg2{(aOMEwgsGv+nDp|UKE$Uf#KKy!i5dOoxO6yBvLd45^O#6&i22)`&mJ;^0#g#8i zK#GDOZus2=c8K9g)C~gOLn>P2(P~0&0N;PpJXo&iYl8IvS%Pi7_A)|jo*1ZC-W-6q zYKCB`oL%4)o;ir%mGhU7mRr8ao&|+&5R5(7nI2-{B<*_UIFkclKQT;=I0<0?y;sPU zctZqYci`J$a3phU@!V@-iv58~uL@QVcVtkQn)`(?;oH-v)lI&VGb3|?oR ze#dw%BZu`)EOI~bR7y=diZSD1VN<}kh$lgGrMw{qb*}5SQIj^F6|iy{rL`c{!!iwM z@QYYhU;7Xx8xDWKG4HFf5Z^Tf4%`oT_3!iXPm@v~IRsO}rdVIjE%FEV+{1`q46pqs zLv!_Mk@SHnKIqbtWL%>(Y#aQY;KTSGj++6sB*|6Sc%=*QL1%SQAL#y=1secYUZLUaO7jUHFX)GQ& z1l|@W&-n7tg7r~|G9*m`Qp0whT!K@8W+Gyu zG2TyLWZoFv4w3AS*=*sNE>fHvNeIgVR8B4z=}L9Qb9j-^T0FrtU2m(nRGz9PZMaYr zCYSXzN4yT5jdNuH@CzSUCl)8F`$0^27DodZ=T8BF*t)?j(aPEljngsw_wk+>@=UIC zxlB0LXToGP*+Gy~Ohewi#LB==zw02*W6CemGvX5Pyw}gXCw7GE)RFWjVqvU)7$G(f zp8xw1sW0iQjIHJ$!??Z9R5t=n1NwS5Im&@K#>P4Z8*DEO9W`(9cNqmQ!N9uyE-0<1 z*BZ!i;(Mp*AYtp<9M9W;f#i1$9fE!2{Lw#0yb~U(_k9KyAy%wEny%0vKt*<6d5C9(`DXsPmCAu?fJwpqq3fW{1EZqDQgsHNN^&5;!y`v~j=B zaTz=&)VhauiPu&R5zj}wuRf?76y_4l_mQK4U#8kIKj+z>H)+z)K(#j3^{C^aFT{sB zW(nt%W23j4XI8CPf3h|tfGZAO!{DQ#HWnB3z{Pk|dF-Tni1zyET1$Aw=SM3+^}*Os ze-QI)5|OSQGMJH+d=KKY4hAHUl?ITIEFG9YlhE{cc`u_w#Pd%sb2>8;P}T{ZR5oCd2$G$6od}6>l9QuWKDFp~D`%qt6nR&hVCrX9_;n=;Qo-5xTL4WAi3>UEnUVVH7v^j+r5RacMm z`P5>)6Q5(h8OEUNgG61qyo_aVgGAO>UWY#3hK~AuGDruZK5CUcWZ}{=ne;@nVwg{h5Jx# zG!76a2~Ocg#>k0FXuD^l=d5$a`-VBGb@+Bj!qCMHSjVdAfwS)Q<`4Y+fwOD4mW1d- zL&SRZ`q_8HJ=xb?!+mDR-@yZZOPf~gtL%e8TE1^0@^ka{ok3u`^=#C5<} zx_^Yh#&uQ$-x2FJz78{C#Kt!rQ;dwCh{L*BaOj;+P8f^T?`SG4ZR_uU*O_!opI73X zi9dMokoZK!1;6`$uLJljLK6^QgNWkdxcU;^@*e_%;91~Xq-u}~6+X#-Jm3o`)JzhQ zT*Z_e91+;%=XySpacz^wG=X1au zlgd%U2`h+2#C^q#!gjpF=Nfv0uUFQiqj+Gyc$oo?dFV5&kCh)b;z*?YEXLx|YuDc( z9wLS3*+f%VAFrF5jG1IHFBP9PePb@A{e^n)?hcF5}H1$Q|@YQQw^ThkXE2>t7k87xQV0^qSLVQWjKX5Dd zK$|4#=10P2<>{zr_7>@yF)d~fJo-+Y)<5`hW55sIQRlU=?Z5%0|GKEID99b58C77o5 zOSn}|RRW734B!jRyOv%BKa7{l2vWXz%F@rm=WJ{kz>3JNoWE{XsE8AR8Z~4mnSlKZ zK!Y3CjVcl06gQlc!L@4!=bz#gO)+80i&Xe}StMo5Cr=$s$bFsb5FgI5(KK8;68QXe z0`t$al2E8vrY7&a6!;HNS3I8Uxk$h2Wz|O_sajJ#!c)_JGzkoGgpD-Cgt(!pv~Ofx zro=L|j(Qn2gN8rI17gTHEdd66T+ih*j1$Zk=IbL*Y--u?>i7F5)Pod$!tS1b{CknN z)Ynp;iqx(;)cSnB%&kS#kBQeuHZ2(>pNa6A z{A<;b_zz8S$A$45<~fX@^{&^AkgDlgFLN*S&VL_USH5XHU3kF0i~9Iw+&IrH+Lwq= z`KH`nM!|RQLpWU`GW3bTNpud&@C^99&N1<44YE>R^v{@=RSP=HfmMl*cnC|~gBV<9 z`NCA6%P;f7XTo;|d}W^0_B-}R&vY(Zcc{F_VEXeu;%CAf=A9pweiv@ojowfOjltZY zI>f7q1rq{AKLnx(O$X}O#9EIN#0410qs80+K{}{`Ncg}XeTO3@)fm-X_PR+#Phu;fR$JMkdXF?7y=lT2DzP5*4@0zk8 zIAXCT>a6kb-z3khUt)>Hb8>`-p+*zqMFN#0&f!He4zWAxC6O%FwusRpQ5WIxRL|$3 z+UZ7^^2kItoqr&boL-Mu30v31_?mEr8XiV1a=znq{0R`Te&JWTdEs94eOD9-CLMt& zvG?|Wvj>1s*B%D}C4O;jTIVvd(Hn-*5Y8l#<{^$BJ<>-to<*#|nO!DGVC;uFu1 zSa#u&Cyh2?fd^^tKXXTU(s6m@NE$vcHlx?mxMWO1z9#c&h>(=0sjs>JgxHQ=Wj=Bk z5v+;73|*c?+P7uGKHRHTjxvdD7#_l=`o4MS=gd@lL%@Zpp9cr)tSYy{a48vi%hYs{ zTAYXz489(?UBsy%;A1_TA4nu!XMGx~j(5NdZ-0qyn-&T0!VT1VuFtD~o^*nKwy@su zPWAnL!Qh!cxPRnLh?VP*F&q5#yB-?pr!XdG5pS^g{wuFzzh^(a*6+19S0PrJzdi7E z)T(=_xK{TJ$034z1s08Ri8M7CH_}C#SzG~}qtI0XzKWRNUlaK>-6!!uhAn66`Wu78 zC5#T)Auz@S=xA6>CKmZ3fhxKI2+7TViO(Q9x^aa`?*;P7Svv`rZwe$KmYgh+nqfe2 zBG2iC~Z|WcUx&MA~f}ViVXHgB?qJErj0c#R~7ZH8cOAsYo|2g>-S?z!varY!^ z31d%vbS?{zh(WGX{%x$UE+)dqbMbQ>J73>IJ}!}&^6A33upifW$Bd#-&s*15c^(4) z%2i`VG9(fvjk>TPVng{=WBC2R*%CaAF$q2waQ)n5HZ}Ysh8-W}#~`0Pw`4}928{2V zI8M{ex3EmwRCAwoJ1@hHt2JGacv>}@gg(z!IsD33@_^X0LVrzUS4$>OrF(Y$_&0x82RwHft+qfweh3;Ubiq^uYu>WCT#8x zv&RFnZw@$a?#Vpc*YLLc9&b>L>l1TyF;|-Z-Xj+3os~>aJD07>gTEM0`YDF!vaPe zYb~R8_zn?sPc&S&5ok=x7+bD|%~EGJT-0NI2J!)3Yz}J5E0+)9HjDt)S0Vr?7(425 zdYG_BhE7dRI)6O1I~wQ^43_|?`l$wz&Mc826B@7iai$-97QyYGDZdB)7#G54Qy%i! z$q`>zEzrA+qqw$;qvLA95$bD@RL76!bNso+XP>_Hm9EDDGl_-&>fwxE!2Xj|YjU*C z`r;16LF2J+bX>OzbaovR{@fU@e-l6Al+yKvGw)ndpIjIf@}FxR#)GlHVsrG-*Pd-? ztlL5E@2-WkFRbq(pyod-SJ@jp)epI_jF!+(#%F-r<~{Y*)Hi7MtUmCF|A|{^a8U6h zcDQea-wiPq1`GoWu>W5|nrnA{tXqBTfr-bkPvEo51X6vz>cwVAJU7>u`qjVJMbpgq z5ioIalJK2nHX=V?oW^?@9ECU_k(zRtKl|+0qLFp=3y&yFL3+wsu zYYz$YUM9j4xI7;lHX+A99}l^0p8V;l-_O>K(LM`oEDo!}tr+*x!DqPP>-s?=8P4BV z@~)&((@uct=W`8_gfkf>hJDbHNIoWR4dS8E{hGLsbsJFK7*oN3_>8kcg4F(o6ZC!8 zi}f|tS6jW38+8+OjkC1gE`KhCZ4%(=NH#>nr_cS0TxB7W?N z*hF`;e~vg_KsstH0dVD;_iXaRGx46npR^>AKT7E!Qfpd5al#z+tpsB%Uxs&C6s|MX zXNS3U#315qx{ZM~v9El7%z7eLk!13$v_BgG=hPMF+_~xZ2XaY_UAPm7aO0HBmX*`S zVaA{9vMI}&3W93HHxYT?GWx!&NsUD@%+K1xx~&q3-eqTsq;g5wXmOFvT>Q~FgGNwv9E<^tQw*zVtyX} zls1|M;vqCU7_U#xtb%8N)RaF7awO~}4lQO@Q+KfHod@_VqUOf*aG~6=Q#14x2^QA6 zzJVkdOBwP28dUc%VK6xir9|6r0#l#{F~pBFg;=AC5q z62r*V(GxupaZL#`F4E;ZBVPEwR}Ka8o^W;GCvOw5hYO1se~YkRHyC}J%o zBMq3duCTH`6W=60gkD#E@%&lS80?)*-&}I?wTWJwZ4&S z%*9}OQB42)=(r7sb#f}(pGzE%Yhe#h)8g>i4m)e{x(OH7=QHW}U$qfp7fo;HziUr9 z9&04j64UH5+dC)2K!o4-ki#iF%%blvBQAe`w{W4(gv4UF)p8R|>L>E||%b zh#nJnk^gYL_&gj>3<>lSP9wM=-=3^4(tS8oBN5ig>Hj}8n^z#jaau~@cr=-cV-){b zQ;J`jj*jUf&#=zh0{uZIoO25h33Q22E2g7Zybgc%B1(U}rnXEPiZ$KBh($^wTl9gZGxhduKrtEKkNJcWquITxJTjdFn~h73@1Gh@A%Jb~JG)_?5 zUWAjimCTbwf>M1Qy&9MK4ug*E= zgWl_Yw#2M^+|@&kS;m-p&UIVFc*y4|zoKy^BFf&l>ObLFh)aCW_jALvIr4Jg@sB=W zoE%fGkWY=*#6IpT-<)&X%g3C{~Vyf?)p znjkjgUYw?KKN&9W_o+u&hbWhZ0rJpEJSX3_d15U4N#a!gQ#AJ!^OCUs`FDdM2!r&8 zV!8y&NY3Nh#c-5J(mde^#Kz5!g?LWc`L`!beEj!k-4uDD={#={_==DUX91Sod4f+W z2#P=z-dH;u=ywfcl7Iaz#6?U~LqLN&MGtbOCWbaX8aR_c(pju?cZ{yHOt}pJY5}9T zrK{C!0RGP1W(fu3ueb8;!OnGM8y(QLdb{;9B+Jx+)^1nyzq{Sc7#cR(hVY_?5an2VMF%9r!@#&{t9cN?mqMetT*J?b3LIkeen9x;7FFo`T6g^j`cLAq=^7=lY2-#A?&dUP$H6!yK=5E zI^b{DhX~UkLdV~~t?7)35yeQT_t=Zw2Ls-_r?}RZsQlHlj9X#919Od;*Lixv&v+a? zd-Nr)OIR>+wJ=Pd8F6BdO_-*&zNVUdjq@_y>gsc5?jlF8iK)NGJg&a}sp+u)RWAuk zjq{2(`zo<)i6Z5Bzv{}P1D}&2x^U>l8+{Y5`h@e8(fO{PHF6=uqPf)}8hvwd;0w<(#4!o?RJ*Pl-m0~UQ#tSc=Y1>=l`xoG z@Zi0d(H`G#&U^K}*O?h7!k;0z?u~Wb*HHIq_}Z94OuTUS;(ykPk9r$CKHzZDd21LL zu*`$GKiy~|K5);AEE6aLxmjfH2w+Ok&q11$$kwg^ z8v=?Vnla&~1?$LH<^TO|7z}Jwp;4GHnJ}cuZIkR5$yGj$a|v~}o*4-Bd6g#-8Rs)= zRY2tDk_e1=UVs_MLVYh1I^)21J&b|lF=~em5g1oZq4WNzL4K|=$~lj`8B=GRoeAY4 zp2DJKJh;hT4J^bb<>`1npN0BgrUmm1xYh<-AeNU<8?j{XAx2%;BK&g>)|ru5j~vlD zO=j7zI!@mOujvcV*}}3(b`8KX7!v=!+#O+ugSl8k1@eHa806!F~Xb17WMb> zrvnETEndgiE9av~am}lDSO^Wl5;)-}_iTV2qHEMW`V*@R32XjC z1LLasgNt7Mq%kB7ZctnC&w>~a*5iR+d{;d>4lvTbS!c*W_qWEil&7Iqhn@iLTvy^< zBP-A9z3hLkMStet#_NVw;=a-VBOe3*dUDTT?9yBywkD$^akw#s29_@qLs+zU3v#h* zANl7zTBfAVVBHo~|7HEA7Ss95oWZ%0JAV2B^^kcsb5*%N%$z< zE`$OVJBnfI$6(QATSDS!KA&KviJwkkkV+<&r}IhVC$RD!*W`V_bx~3 z5LYIVE3vN0N!XhcG$piu7KQ5fLk7|WUP;8RLbFS1M=t@M8~stS!_{-6L_Q7^LpKhF zU=)EI#8^b~-{TFMy-bTT8xV<*y~v_KX#u8cqSqFHX^G$zYsSInLqI#uHsOQ?-^g{I zZ>W_h(hdTV2m|XZP6Un{KZ_*&_;Z3mnk7b8JrO&IoyOoG1O}!uFHLq2g6zCz_=f?3 zy!()Wl*iwFtTU=6$VQ15`J8Noj2!lr$SWonA*{9V{V$?*;0>{D5Gm&(WAf{Ei)wpe z2&c2klU3&dL(*2*^VVb}#A@`3iakCzFqFcBL^zS=>sCzF2J$)PNA;?TAqnr5mtny0 zG6g;{#(Q2yXA~3sF3#_oT75oJJqmlEkj}fLJuAN#h7~Aoko; z13t-XAo=5voCv9*$dHI&9{|El@+ziuy<-)t1Y&fgxEB+*KrRT>1{ea+NN(Q@U~(&V zsfaAv(g_?jxNW+GuafautNoCXH5ymID;&|5^SK=lB=A&Ldg7R;l8nKWMn7Y%Cw z#^dwO0XLciOsvOCP!6|M#AJw8|1M0uUx1sM)xXcj#zCQy1d+tRXP=DS_unJu1+)X) zMKCH>{eOQDgH!lijT22hkuVdKB?g@Dg-4D7BL0|tJ$4iAz!gcWLJ^l0UehZSA#0sAeU3LnN9hFf*7soI~XS|;zP^+;|d;8u+U zay-tPb?sYu61y$dUXy2F#=vLf?l~c2Ef{ZY;4sg{707W$y)#!>_vTs^6ZH||I(s8c zX4bH6ZxVxzN#Kh--y|g083~gk<|Yi|JCDBJSdfgt$^!}W*b@-%&Ka3S+}FTp zVi|i#%F*MQC-)IHL_T1n!Pm2|K6DKtoujOqR3A2Q+)qM$7H13`X_!&0>7cU;;5zX8;;M^JJo;MX-AUXlhbkYf(axcBxE;itujBmG?jVRq!6c#S$uJuen-xJS zI!jD&B*7BJIE)V|s3a3%Fe!7wM%A@#XDY3Xar$3zMd8xVsbQ( z(9{QjE0#7!KF>-yrzy-QoYY6k_eN(_9RsvGZej98GMMtI@gz;F z!r6}X{lXN~=)kZSX${RtNBQ4BnQ%imMB2cfM8pCCTR25L3;AFpY~{NNm!~#?ur4C) zDHA97%DZG#_8AD*c{ZbusK$ng!n1eIJMW2yCcnCckPOUAgt~?!UJ8pZ@pm=+A?%Kt zBQ6bs?i&^r7xbFS%|)^h!-Q*Vx+;>ldU(LK5sO;WuRWR|@_Wg63qpF;a}a~XrOMBN z{~`C??~{Qt@DM$qd!x-fil@Ylc$VTkoy*Gk!3%-yi{BWRUWPH(jWb!CjhOCr1%A`{ z9QY0EZx~SZ*^560ZaDr_fPWT3E|B)`ci}vefN(FcXj%Od7+BocQ`Ck1Uc)!$anQi? zz<;}bM}GQzA9(($9g1{uiG+I>Pk0KvR3}$Ys(l`O+PL&f2)aKEyg-igY-2RyXtfF7UPJ|aS1qgrt3QGFIPrj>FLF2_6qbOC~go5JW)`cJi&ol4K#tPg@6)> z1(TeQ23WeyBp*I7UDH1Q-T@8Ypmu@dMI7qq!!$_6j{+O!1_0PZpT*vUnV_p2TLMr3 z-D@>)CpV0Q=E^}7Vf@=Hp8t2BYq}8{ac|3joQ!SB;r~Cy+}7EbRbZK%u{%=WA#CYCPZX400>{S&pt7 z&oAMgaF`^KQJqau0@QFb4vt<{oCi*n5266 z;Ga2#^4%p7&;OWcb}aOc6(irQ!Ar+v(PxsTU=k%u^r{bxa|k_zF^a}m;$$g?uJP*z z8R}sf#q6Q%Z^F=Pvc=xCrpS+TANl0m=bBRd5`Rhq1@0T~h&;vEsXmZ|8GBnAevN?! z@$^@0WpE7<3*4l*x^jA)kMh8E`q@wF0f!mC@DepP{ucQ--x0rq%S1k6+|~LTPxxN* zR`h|!f9IX~-Nox5-$HYlw zGVt&7!%b09{sm0<6_UnE#EXC>@p4Xy4l(@GExVlCFm0#c8REx<5P)!q>`GDz7RI5$ zN~B~I?@LsC*U*38eO>QK6CZ(e%n^cN5D`O^BA+8@DQCyt@t%`Fh8V3lAs()Q&%Ymp z`88quO9NcF67uB*be|ebd%Or~x)GooBHZr~b#8{=V3~NV7?PxluqLCR_vAd{zgb6Y z%7;;OO+h6;HlZ3LY3v-1ZxX#08l&0E&>hY18=v%fJNju~#w1VwOt2QA zHg=?56sG0lIf@zkP2-^q5Y_|Zx$q%~$IB2a4Cwx3Opr-4`XqlBNYNtTCWWEjKhGI8 z^1*i+1+E_zs*TaO51)w*5sN6*d%be>-hjWC*c<{gongR;MUYV&Y1+9A;_oxfPZ*!k zBP@Dx?gNK}RjaohW>KHN@b|1)eh#>4Q5pBg&xdQup5R5|jQIInM_n>b%FSq6K)@~Y zir)|Y;pE)GG-AAsr$d12on!ceyiDBtDex&≧^9X!nWF&jL0UhH|Oq7fXzR=YMcl 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
BfO+<`LFw%&TBh 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 literal 0 HcmV?d00001 diff --git a/e2e/testcases/death/data/declarationData.js b/e2e/testcases/death/data/declarationData.js new file mode 100644 index 000000000..6f07bd404 --- /dev/null +++ b/e2e/testcases/death/data/declarationData.js @@ -0,0 +1,55 @@ +import faker from '@faker-js/faker' +import { getRandomDate } from '../../../helpers' + +export const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + gender: 'male', + birthDate: getRandomDate(75, 200), + nationality: 'FAR', + identifier: { + type: 'NATIONAL_ID', + id: faker.random.numeric(10) + }, + address: { + country: 'FAR', + province: 'Sulaka', + district: 'Zobwe', + urbanOrRural: 'Urban', + town: faker.address.city(), + residentialArea: faker.address.county(), + street: faker.address.streetName(), + number: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Natural causes', + date: getRandomDate(0, 20), + cause: { + established: true, + source: 'Physician' + }, + place: "Deceased's usual place of residence" + }, + informantType: 'Spouse', + informantEmail: faker.internet.email(), + spouse: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + birthDate: getRandomDate(50, 200), + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'NATIONAL_ID' + }, + address: { + sameAsDeceased: true + } + } +} diff --git a/e2e/testcases/death/helpers.ts b/e2e/testcases/death/helpers.ts new file mode 100644 index 000000000..1f2f1ff4e --- /dev/null +++ b/e2e/testcases/death/helpers.ts @@ -0,0 +1,240 @@ +import gql from 'graphql-tag' +import { print } from 'graphql/language/printer' +import { GATEWAY_HOST } from '../../constants' +import { DeathRegistrationInput } from '../../gateway' +import faker from '@faker-js/faker' + +import { readFileSync } from 'fs' +import uuid from 'uuid' +import { format, subDays, subYears } from 'date-fns' +import { Bundle } from 'typescript' +import { join } from 'path' +import { declaration } from './data/declarationData' + +export const CREATE_DEATH_REGISTRATION = print(gql` + mutation createDeathRegistration($details: DeathRegistrationInput!) { + createDeathRegistration(details: $details) { + trackingId + compositionId + isPotentiallyDuplicate + __typename + } + } +`) + +async function getAllLocations( + type: 'ADMIN_STRUCTURE' | 'HEALTH_FACILITY' | 'CRVS_OFFICE' +) { + const locations = (await fetch( + `${GATEWAY_HOST}/location?type=${type}&_count=0` + ).then((res) => res.json())) as fhir.Bundle + return locations.entry!.map((entry) => entry.resource as fhir.Location) +} + +function getLocationIdByName(locations: fhir.Location[], name: string) { + const location = locations.find((location) => location.name === name) + if (!location) { + throw new Error(`Location with name ${name} not found`) + } + return location.id +} + +export async function createDeathDeclaration(token: string) { + const locations = await getAllLocations('ADMIN_STRUCTURE') + const facilities = await getAllLocations('HEALTH_FACILITY') + + const res = await fetch(`${GATEWAY_HOST}/graphql`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${token}` + }, + body: JSON.stringify({ + query: CREATE_DEATH_REGISTRATION, + variables: { + details: { + createdAt: new Date().toISOString(), + registration: { + status: [ + { + timestamp: new Date().toISOString(), + timeLoggedMS: 1031608 + } + ], + informantsSignature: + 'data:image/png;base64,' + + readFileSync( + join(__dirname, './data/assets/528KB-random.png') + ).toString('base64'), + informantType: declaration.informantType, + contactEmail: declaration.informantEmail, + draftId: uuid.v4() + }, + causeOfDeath: 'NATURAL', + deceased: { + name: [ + { + use: 'en', + firstNames: declaration.deceased.name.firstNames, + familyName: declaration.deceased.name.familyName + } + ], + gender: declaration.deceased.gender as 'male', + birthDate: format( + new Date( + Number(declaration.deceased.birthDate.yyyy), + Number(declaration.deceased.birthDate.mm) - 1, + Number(declaration.deceased.birthDate.dd) + ), + 'yyyy-MM-dd' + ), + nationality: [declaration.deceased.nationality], + identifier: [ + { + type: declaration.deceased.identifier.type, + id: declaration.deceased.identifier.id + } + ], + address: [ + { + type: 'PRIMARY_ADDRESS', + line: [ + declaration.deceased.address.number, + declaration.deceased.address.street, + declaration.deceased.address.residentialArea, + '', + '', + 'URBAN', + '', + '', + '', + '', + '', + '', + '', + '', + '' + ], + country: declaration.deceased.address.country, + state: getLocationIdByName( + locations, + declaration.deceased.address.province + ), + partOf: getLocationIdByName( + locations, + declaration.deceased.address.district + ), + district: getLocationIdByName( + locations, + declaration.deceased.address.district + ), + city: declaration.deceased.address.town, + postalCode: declaration.deceased.address.postcodeOrZip + } + ], + deceased: { + deathDate: format( + new Date( + Number(declaration.event.date.yyyy), + Number(declaration.event.date.mm) - 1, + Number(declaration.event.date.dd) + ), + 'yyyy-MM-dd' + ) + } + }, + eventLocation: { + _fhirID: getLocationIdByName( + facilities, + 'Chikobo Rural Health Centre' + ) + }, + informant: { relationship: 'SPOUSE' }, + questionnaire: [ + { + fieldId: 'death.deceased.deceased-view-group.deceasedIdType', + value: 'NATIONAL_ID' + }, + { + fieldId: 'death.spouse.spouse-view-group.spouseIdType', + value: 'NATIONAL_ID' + } + ], + causeOfDeathEstablished: 'false', + spouse: { + name: [ + { + use: 'en', + firstNames: declaration.spouse.name.firstNames, + familyName: declaration.spouse.name.familyName + } + ], + birthDate: format( + new Date( + Number(declaration.spouse.birthDate.yyyy), + Number(declaration.spouse.birthDate.mm) - 1, + Number(declaration.spouse.birthDate.dd) + ), + 'yyyy-MM-dd' + ), + nationality: ['FAR'], + identifier: [ + { + id: declaration.spouse.identifier.id, + type: declaration.spouse.identifier.type + } + ], + address: [ + { + type: 'PRIMARY_ADDRESS', + line: [ + declaration.deceased.address.number, + declaration.deceased.address.street, + declaration.deceased.address.residentialArea, + '', + '', + 'URBAN', + '', + '', + '', + '', + '', + '', + '', + '', + '' + ], + country: declaration.deceased.address.country, + state: getLocationIdByName( + locations, + declaration.deceased.address.province + ), + partOf: getLocationIdByName( + locations, + declaration.deceased.address.district + ), + district: getLocationIdByName( + locations, + declaration.deceased.address.district + ), + city: declaration.deceased.address.town, + postalCode: declaration.deceased.address.postcodeOrZip + } + ] + } + } satisfies ConvertEnumsToStrings + } + }) + }) + return res.json().then((r) => r.data.createDeathRegistration) +} + +type ConvertEnumsToStrings = T extends (infer U)[] + ? ConvertEnumsToStrings[] + : T extends string + ? `${T}` + : T extends object + ? { + [K in keyof T]: ConvertEnumsToStrings + } + : T From 176d0492828997dade8d4daacd24fedd865381b9 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Thu, 13 Jun 2024 18:59:20 +0600 Subject: [PATCH 17/19] amend: applying requested changes --- e2e/helpers.ts | 5 ++ .../death/1-death-event-declaration.spec.ts | 4 +- ...8-validate-declaration-review-page.spec.ts | 4 +- e2e/testcases/death/data/declarationData.js | 55 ----------------- .../declaration/death-declaration-10.spec.ts | 48 +++++++++------ .../declaration/death-declaration-6.spec.ts | 2 +- .../declaration/death-declaration-7.spec.ts | 4 -- .../declaration/death-declaration-9.spec.ts | 50 ++++++++++------ e2e/testcases/death/helpers.ts | 60 +++++++++++++++++-- 9 files changed, 128 insertions(+), 104 deletions(-) delete mode 100644 e2e/testcases/death/data/declarationData.js diff --git a/e2e/helpers.ts b/e2e/helpers.ts index cb9d5d144..d6397b1ee 100644 --- a/e2e/helpers.ts +++ b/e2e/helpers.ts @@ -54,6 +54,11 @@ export const goToSection = async ( } } +/* + Generates a random past date + at least 'minAge' years ago + and up to an additional 'range' days earlier +*/ export const getRandomDate = (minAge: number, range: number) => { const randomDate = new Date() randomDate.setDate( diff --git a/e2e/testcases/death/1-death-event-declaration.spec.ts b/e2e/testcases/death/1-death-event-declaration.spec.ts index 328cb2a4e..98c4bf2ac 100644 --- a/e2e/testcases/death/1-death-event-declaration.spec.ts +++ b/e2e/testcases/death/1-death-event-declaration.spec.ts @@ -29,7 +29,7 @@ test.describe('1. Death event declaration', () => { * - Continue button * - Exit button */ - await expect(page.getByLabel('Death')).toBeVisible() + await expect(page.getByLabel('Birth')).toBeVisible() await expect(page.getByLabel('Death')).toBeVisible() await expect(page.getByLabel('Marriage')).toBeVisible() await expect( @@ -256,7 +256,7 @@ test.describe('1. Death event declaration', () => { test('1.7.1 validate the contents of spouse details page', async () => { /* * Expected result: should see - * - Mother's details block + * - Spouse details block * - Continue button * - Exit button * - Save & exit button diff --git a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts index 2067ff94a..0d59ddaae 100644 --- a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts +++ b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts @@ -106,6 +106,8 @@ test.describe.serial('8. Validate declaration review page', () => { .getByText(declaration.deceased.address.District, { exact: true }) .click() + // waiting for 500ms before continuing, + // otherwise some data entered in the page are lost await page.waitForTimeout(500) await page.getByRole('button', { name: 'Continue' }).click() }) @@ -294,7 +296,7 @@ test.describe.serial('8. Validate declaration review page', () => { * - Change button */ await expect(page.locator('#deathEvent-content #Cause')).toContainText( - 'No' + declaration.event.cause.established ? 'No' : 'Yes' ) await expect(page.locator('#deathEvent-content #Cause')).toContainText( 'Change' diff --git a/e2e/testcases/death/data/declarationData.js b/e2e/testcases/death/data/declarationData.js deleted file mode 100644 index 6f07bd404..000000000 --- a/e2e/testcases/death/data/declarationData.js +++ /dev/null @@ -1,55 +0,0 @@ -import faker from '@faker-js/faker' -import { getRandomDate } from '../../../helpers' - -export const declaration = { - deceased: { - name: { - firstNames: faker.name.firstName('male'), - familyName: faker.name.lastName('male') - }, - gender: 'male', - birthDate: getRandomDate(75, 200), - nationality: 'FAR', - identifier: { - type: 'NATIONAL_ID', - id: faker.random.numeric(10) - }, - address: { - country: 'FAR', - province: 'Sulaka', - district: 'Zobwe', - urbanOrRural: 'Urban', - town: faker.address.city(), - residentialArea: faker.address.county(), - street: faker.address.streetName(), - number: faker.address.buildingNumber(), - postcodeOrZip: faker.address.zipCode() - } - }, - event: { - manner: 'Natural causes', - date: getRandomDate(0, 20), - cause: { - established: true, - source: 'Physician' - }, - place: "Deceased's usual place of residence" - }, - informantType: 'Spouse', - informantEmail: faker.internet.email(), - spouse: { - name: { - firstNames: faker.name.firstName('female'), - familyName: faker.name.lastName('female') - }, - birthDate: getRandomDate(50, 200), - nationality: 'Farajaland', - identifier: { - id: faker.random.numeric(10), - type: 'NATIONAL_ID' - }, - address: { - sameAsDeceased: true - } - } -} diff --git a/e2e/testcases/death/declaration/death-declaration-10.spec.ts b/e2e/testcases/death/declaration/death-declaration-10.spec.ts index a71bfe794..bba957cc2 100644 --- a/e2e/testcases/death/declaration/death-declaration-10.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-10.spec.ts @@ -3,7 +3,7 @@ import { createPIN, goToSection, login } from '../../../helpers' test.describe.serial('10. Death declaration case - 10', () => { let page: Page - const require = 'Required for registration' + const REQUIRED = 'Required for registration' const declaration = { deceased: { address: { @@ -68,7 +68,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Full')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Full')).toContainText( 'Change' @@ -80,7 +80,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Sex')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Sex')).toContainText( 'Change' @@ -92,7 +92,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Date')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Date')).toContainText( 'Change' @@ -116,7 +116,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Type')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Type')).toContainText( 'Change' @@ -170,7 +170,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deathEvent-content #Place')).toContainText( - require + REQUIRED ) await expect(page.locator('#deathEvent-content #Place')).toContainText( 'Change' @@ -207,7 +207,9 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ - await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Full')).toContainText( 'Change' ) @@ -217,7 +219,9 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Spouse's date of birth * - Change button */ - await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Date')).toContainText( 'Change' ) @@ -239,7 +243,9 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Spouse's Type of Id * - Change button */ - await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Type')).toContainText( 'Change' ) @@ -297,10 +303,10 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Full')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Full')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Full')).toContainText( 'Change' @@ -312,7 +318,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Sex')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Sex')).toContainText( 'Change' @@ -324,7 +330,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Date')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Date')).toContainText( 'Change' @@ -348,7 +354,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deceased-content #Type')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Type')).toContainText( 'Change' @@ -402,7 +408,7 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ await expect(page.locator('#deathEvent-content #Place')).toContainText( - require + REQUIRED ) await expect(page.locator('#deathEvent-content #Place')).toContainText( 'Change' @@ -439,7 +445,9 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Change button */ - await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Full')).toContainText( 'Change' ) @@ -449,7 +457,9 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Spouse's date of birth * - Change button */ - await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Date')).toContainText( 'Change' ) @@ -471,7 +481,9 @@ test.describe.serial('10. Death declaration case - 10', () => { * - Spouse's Type of Id * - Change button */ - await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Type')).toContainText( 'Change' ) diff --git a/e2e/testcases/death/declaration/death-declaration-6.spec.ts b/e2e/testcases/death/declaration/death-declaration-6.spec.ts index 82a00cdc0..bdaf0ead2 100644 --- a/e2e/testcases/death/declaration/death-declaration-6.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-6.spec.ts @@ -592,7 +592,7 @@ test.describe.serial('6. Death declaration case - 6', () => { }) }) - test.describe('6.2 Declaration Review by Local Registrar', async () => { + test.describe('6.2 Declaration Review by Registration Agent', async () => { test('6.2.1 Navigate to the declaration review page', async () => { await login(page, 'f.katongo', 'test') await createPIN(page) diff --git a/e2e/testcases/death/declaration/death-declaration-7.spec.ts b/e2e/testcases/death/declaration/death-declaration-7.spec.ts index 22f3ae6c5..f27a6c080 100644 --- a/e2e/testcases/death/declaration/death-declaration-7.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-7.spec.ts @@ -870,8 +870,4 @@ test.describe.serial('7. Death declaration case - 7', () => { ) }) }) - - // await page.getByLabel('Assign record').click() - // await page.getByRole('button', { name: 'Assign', exact: true }).click() - // await page.getByRole('button', { name: 'View', exact: true }).click() }) diff --git a/e2e/testcases/death/declaration/death-declaration-9.spec.ts b/e2e/testcases/death/declaration/death-declaration-9.spec.ts index 5eef8b140..213993d95 100644 --- a/e2e/testcases/death/declaration/death-declaration-9.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-9.spec.ts @@ -4,7 +4,7 @@ import faker from '@faker-js/faker' test.describe.serial('9. Death declaration case - 9', () => { let page: Page - const require = 'Required for registration' + const REQUIRED = 'Required for registration' const declaration = { deceased: { name: { @@ -72,7 +72,7 @@ test.describe.serial('9. Death declaration case - 9', () => { /* * Expected result: should include * - Deceased's First Name - * * Should require + * * should require * - Deceased's Family Name * - Change button */ @@ -80,7 +80,7 @@ test.describe.serial('9. Death declaration case - 9', () => { declaration.deceased.name.firstNames ) await expect(page.locator('#deceased-content #Full')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Full')).toContainText( 'Change' @@ -92,7 +92,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deceased-content #Sex')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Sex')).toContainText( 'Change' @@ -104,7 +104,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deceased-content #Date')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Date')).toContainText( 'Change' @@ -128,7 +128,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deceased-content #Type')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Type')).toContainText( 'Change' @@ -182,7 +182,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deathEvent-content #Place')).toContainText( - require + REQUIRED ) await expect(page.locator('#deathEvent-content #Place')).toContainText( 'Change' @@ -219,7 +219,9 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ - await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Full')).toContainText( 'Change' ) @@ -229,7 +231,9 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Spouse's date of birth * - Change button */ - await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Date')).toContainText( 'Change' ) @@ -251,7 +255,9 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Spouse's Type of Id * - Change button */ - await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Type')).toContainText( 'Change' ) @@ -313,7 +319,7 @@ test.describe.serial('9. Death declaration case - 9', () => { /* * Expected result: should include * - Deceased's First Name - * * Should require + * * should require * - Deceased's Family Name * - Change button */ @@ -321,7 +327,7 @@ test.describe.serial('9. Death declaration case - 9', () => { declaration.deceased.name.firstNames ) await expect(page.locator('#deceased-content #Full')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Full')).toContainText( 'Change' @@ -333,7 +339,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deceased-content #Sex')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Sex')).toContainText( 'Change' @@ -345,7 +351,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deceased-content #Date')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Date')).toContainText( 'Change' @@ -369,7 +375,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deceased-content #Type')).toContainText( - require + REQUIRED ) await expect(page.locator('#deceased-content #Type')).toContainText( 'Change' @@ -423,7 +429,7 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ await expect(page.locator('#deathEvent-content #Place')).toContainText( - require + REQUIRED ) await expect(page.locator('#deathEvent-content #Place')).toContainText( 'Change' @@ -460,7 +466,9 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Change button */ - await expect(page.locator('#spouse-content #Full')).toContainText(require) + await expect(page.locator('#spouse-content #Full')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Full')).toContainText( 'Change' ) @@ -470,7 +478,9 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Spouse's date of birth * - Change button */ - await expect(page.locator('#spouse-content #Date')).toContainText(require) + await expect(page.locator('#spouse-content #Date')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Date')).toContainText( 'Change' ) @@ -492,7 +502,9 @@ test.describe.serial('9. Death declaration case - 9', () => { * - Spouse's Type of Id * - Change button */ - await expect(page.locator('#spouse-content #Type')).toContainText(require) + await expect(page.locator('#spouse-content #Type')).toContainText( + REQUIRED + ) await expect(page.locator('#spouse-content #Type')).toContainText( 'Change' ) diff --git a/e2e/testcases/death/helpers.ts b/e2e/testcases/death/helpers.ts index 1f2f1ff4e..5f5d4cf90 100644 --- a/e2e/testcases/death/helpers.ts +++ b/e2e/testcases/death/helpers.ts @@ -6,10 +6,9 @@ import faker from '@faker-js/faker' import { readFileSync } from 'fs' import uuid from 'uuid' -import { format, subDays, subYears } from 'date-fns' -import { Bundle } from 'typescript' +import { format } from 'date-fns' import { join } from 'path' -import { declaration } from './data/declarationData' +import { getRandomDate } from '../../helpers' export const CREATE_DEATH_REGISTRATION = print(gql` mutation createDeathRegistration($details: DeathRegistrationInput!) { @@ -22,6 +21,59 @@ export const CREATE_DEATH_REGISTRATION = print(gql` } `) +const declaration = { + deceased: { + name: { + firstNames: faker.name.firstName('male'), + familyName: faker.name.lastName('male') + }, + gender: 'male', + birthDate: getRandomDate(75, 200), + nationality: 'FAR', + identifier: { + type: 'NATIONAL_ID', + id: faker.random.numeric(10) + }, + address: { + country: 'FAR', + province: 'Sulaka', + district: 'Zobwe', + urbanOrRural: 'Urban', + town: faker.address.city(), + residentialArea: faker.address.county(), + street: faker.address.streetName(), + number: faker.address.buildingNumber(), + postcodeOrZip: faker.address.zipCode() + } + }, + event: { + manner: 'Natural causes', + date: getRandomDate(0, 20), + cause: { + established: true, + source: 'Physician' + }, + place: "Deceased's usual place of residence" + }, + informantType: 'Spouse', + informantEmail: faker.internet.email(), + spouse: { + name: { + firstNames: faker.name.firstName('female'), + familyName: faker.name.lastName('female') + }, + birthDate: getRandomDate(50, 200), + nationality: 'Farajaland', + identifier: { + id: faker.random.numeric(10), + type: 'NATIONAL_ID' + }, + address: { + sameAsDeceased: true + } + } +} + async function getAllLocations( type: 'ADMIN_STRUCTURE' | 'HEALTH_FACILITY' | 'CRVS_OFFICE' ) { @@ -33,7 +85,7 @@ async function getAllLocations( function getLocationIdByName(locations: fhir.Location[], name: string) { const location = locations.find((location) => location.name === name) - if (!location) { + if (!location?.id) { throw new Error(`Location with name ${name} not found`) } return location.id From 85459179379a606a576362bee1caa1ccd48479c1 Mon Sep 17 00:00:00 2001 From: jamil314 Date: Thu, 13 Jun 2024 21:43:49 +0600 Subject: [PATCH 18/19] fix: causeOfDeath check --- e2e/testcases/death/8-validate-declaration-review-page.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts index 0d59ddaae..7e56b2961 100644 --- a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts +++ b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts @@ -296,7 +296,7 @@ test.describe.serial('8. Validate declaration review page', () => { * - Change button */ await expect(page.locator('#deathEvent-content #Cause')).toContainText( - declaration.event.cause.established ? 'No' : 'Yes' + declaration.event.cause.established ? 'Yes' : 'No' ) await expect(page.locator('#deathEvent-content #Cause')).toContainText( 'Change' From 3665a26ff2f16a21aa20a5ec65624d633cd85a8c Mon Sep 17 00:00:00 2001 From: jamil314 Date: Fri, 14 Jun 2024 11:38:24 +0600 Subject: [PATCH 19/19] fix: fixed `page.url().includes()` --- .../death/8-validate-declaration-review-page.spec.ts | 6 +++--- e2e/testcases/death/declaration/death-declaration-1.spec.ts | 2 +- .../death/declaration/death-declaration-10.spec.ts | 2 +- e2e/testcases/death/declaration/death-declaration-2.spec.ts | 2 +- e2e/testcases/death/declaration/death-declaration-3.spec.ts | 2 +- e2e/testcases/death/declaration/death-declaration-4.spec.ts | 2 +- e2e/testcases/death/declaration/death-declaration-5.spec.ts | 2 +- e2e/testcases/death/declaration/death-declaration-6.spec.ts | 2 +- e2e/testcases/death/declaration/death-declaration-7.spec.ts | 5 ----- e2e/testcases/death/declaration/death-declaration-8.spec.ts | 2 +- e2e/testcases/death/declaration/death-declaration-9.spec.ts | 2 +- 11 files changed, 12 insertions(+), 17 deletions(-) diff --git a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts index 7e56b2961..472eac5ab 100644 --- a/e2e/testcases/death/8-validate-declaration-review-page.spec.ts +++ b/e2e/testcases/death/8-validate-declaration-review-page.spec.ts @@ -708,7 +708,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await page.getByRole('button', { name: 'Sent for review' }).click() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { @@ -1244,7 +1244,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await page.getByRole('button', { name: 'Sent for approval' }).click() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { @@ -1494,7 +1494,7 @@ test.describe.serial('8. Validate declaration review page', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await page.getByRole('button', { name: 'Ready to print' }).click() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { diff --git a/e2e/testcases/death/declaration/death-declaration-1.spec.ts b/e2e/testcases/death/declaration/death-declaration-1.spec.ts index 795eb92ae..2144f47ed 100644 --- a/e2e/testcases/death/declaration/death-declaration-1.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-1.spec.ts @@ -513,7 +513,7 @@ test.describe.serial('1. Death declaration case - 1', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-10.spec.ts b/e2e/testcases/death/declaration/death-declaration-10.spec.ts index bba957cc2..e072fa8e0 100644 --- a/e2e/testcases/death/declaration/death-declaration-10.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-10.spec.ts @@ -267,7 +267,7 @@ test.describe.serial('10. Death declaration case - 10', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-2.spec.ts b/e2e/testcases/death/declaration/death-declaration-2.spec.ts index d779ec532..8120b0987 100644 --- a/e2e/testcases/death/declaration/death-declaration-2.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-2.spec.ts @@ -657,7 +657,7 @@ test.describe.serial('2. Death declaration case - 2', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-3.spec.ts b/e2e/testcases/death/declaration/death-declaration-3.spec.ts index 512bff0e9..6e5882d5b 100644 --- a/e2e/testcases/death/declaration/death-declaration-3.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-3.spec.ts @@ -708,7 +708,7 @@ test.describe.serial('3. Death declaration case - 3', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-4.spec.ts b/e2e/testcases/death/declaration/death-declaration-4.spec.ts index 518d1f051..4f9d91416 100644 --- a/e2e/testcases/death/declaration/death-declaration-4.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-4.spec.ts @@ -683,7 +683,7 @@ test.describe.serial('4. Death declaration case - 4', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-5.spec.ts b/e2e/testcases/death/declaration/death-declaration-5.spec.ts index 74e34a3c5..907be3773 100644 --- a/e2e/testcases/death/declaration/death-declaration-5.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-5.spec.ts @@ -599,7 +599,7 @@ test.describe.serial('5. Death declaration case - 5', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-6.spec.ts b/e2e/testcases/death/declaration/death-declaration-6.spec.ts index bdaf0ead2..243909b6d 100644 --- a/e2e/testcases/death/declaration/death-declaration-6.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-6.spec.ts @@ -573,7 +573,7 @@ test.describe.serial('6. Death declaration case - 6', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-7.spec.ts b/e2e/testcases/death/declaration/death-declaration-7.spec.ts index f27a6c080..a63776ced 100644 --- a/e2e/testcases/death/declaration/death-declaration-7.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-7.spec.ts @@ -597,11 +597,6 @@ test.describe.serial('7. Death declaration case - 7', () => { await page.locator('#submit_confirm').click() await expect(page.getByText('Farajaland CRS')).toBeVisible() - /* - * Expected result: should redirect to registration home - */ - expect(page.url().includes('registration-home')) - await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 }) diff --git a/e2e/testcases/death/declaration/death-declaration-8.spec.ts b/e2e/testcases/death/declaration/death-declaration-8.spec.ts index fdfd785d7..a482fd5a1 100644 --- a/e2e/testcases/death/declaration/death-declaration-8.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-8.spec.ts @@ -275,7 +275,7 @@ test.describe.serial('8. Death declaration case - 8', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30 diff --git a/e2e/testcases/death/declaration/death-declaration-9.spec.ts b/e2e/testcases/death/declaration/death-declaration-9.spec.ts index 213993d95..eb9ac5068 100644 --- a/e2e/testcases/death/declaration/death-declaration-9.spec.ts +++ b/e2e/testcases/death/declaration/death-declaration-9.spec.ts @@ -279,7 +279,7 @@ test.describe.serial('9. Death declaration case - 9', () => { /* * Expected result: should redirect to registration home */ - expect(page.url().includes('registration-home')) + expect(page.url().includes('registration-home')).toBeTruthy() await expect(page.locator('#navigation_outbox')).not.toContainText('1', { timeout: 1000 * 30