From e939f68888b391903070a9f02c4a8932a0a79cdb Mon Sep 17 00:00:00 2001 From: Nikolaengel Date: Mon, 29 Dec 2025 21:23:50 +0300 Subject: [PATCH 01/22] docs: selectors --- docs/basic-guides/selectors.mdx | 602 ++++++++++++++++++ .../current/basic-guides/selectors.mdx | 602 ++++++++++++++++++ package-lock.json | 391 +++--------- 3 files changed, 1281 insertions(+), 314 deletions(-) create mode 100644 docs/basic-guides/selectors.mdx create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx diff --git a/docs/basic-guides/selectors.mdx b/docs/basic-guides/selectors.mdx new file mode 100644 index 00000000..8ecb8390 --- /dev/null +++ b/docs/basic-guides/selectors.mdx @@ -0,0 +1,602 @@ +# Селекторы + +Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. + +## WebDriverIO + +WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. + +### CSS селекторы + +#### По классу + +Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. + +```javascript +// Поиск кнопки с классом "btn-primary" +const button = await browser.$(".btn-primary"); +await button.click(); + +// Поиск нескольких элементов +const menuItems = await browser.$$(".nav-item"); +console.log("Количество пунктов меню: ${menuItems.length}"); +``` +Стоит использовать, если: + +- класс является стабильным и не генерируется динамически; +- нужен быстрый и простой способ найти элемент; +- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); +- вы работаете с компонентными библиотеками, где классы являются частью API. + +#### По id + +Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. + +```javascript +// Поиск формы id +const loginForm = await browser.$("#login-form"); +const isDisplayed = await loginForm.isDisplayed(); +``` +Стоит использовать, если: + +- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); +- `id` является частью публичного API компонента; +- нужна максимальная производительность селектора (`id` — самый быстрый селектор). + +#### По типу атрибута + +Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. + +```javascript +// Поиск всех чекбоксов +const checkboxes = await browser.$$("input[type="checkbox"]"); +for (const checkbox of checkboxes) { + await checkbox.click(); +} + +// Поиск email input +const emailInput = await browser.$("input[type="email"]"); +await emailInput.setValue("test@example.com"); + +// Поиск скрытых полей +const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); +const csrfValue = await hiddenField.getValue(); +``` + +Стоит использовать, если: + +- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); +- вы тестируете формы и валидацию; +- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); +- вам нужно убедиться, что используется правильный тип поля для `accessibility`; +- вы тестируете различное поведение для разных типов полей. + +#### CSS-селекторы по атрибуту data-testid + +Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. + +```javascript +// Поиск элемента по data-testid +const userAvatar = await browser.$("[data-testid="user-avatar"]"); +await userAvatar.waitForDisplayed({ timeout: 5000 }); + +// Клик по кнопке с data-testid +const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); +await deleteButton.click(); + +// Получение текста из элемента +const errorMessage = await browser.$("[data-testid="error-notification"]"); +const text = await errorMessage.getText(); +expect(text).toContain("Ошибка валидации"); +``` +Стоит использовать, если: + +- создаёте селекторы специально для тестирования; +- нужна стабильность селекторов независимо от изменений UI/стилей; +- работаете в команде, где дизайнеры часто меняют классы и структуру; +- хотите явно пометить элементы, доступные для тестирования; + +#### CSS-комбинированные селекторы + +Комбинированные селекторы позволяют находить элементы в определённом контексте. + +```javascript +// Потомок: кнопка внутри модального окна +const modalButton = await browser.$(".modal .close-button"); +await modalButton.click(); + +// Прямой потомок: первый уровень вложенности +const navItem = await browser.$(".navigation > .nav-item"); + +// Соседний элемент +const errorLabel = await browser.$("input.invalid + .error-message"); +const errorText = await errorLabel.getText(); + +// Сложная комбинация +const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); +``` + +Стоит использовать, если: + +- нужно найти элемент в определённом контексте; +- работаете с повторяющейся структурой; +- нужно убедиться в правильной вложенности элементов; +- простые селекторы слишком неспецифичны; +- тестируете связанные элементы. + +#### CSS-псевдоселекторы + +Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. + +```javascript +// Первый элемент списка +const firstItem = await browser.$("ul.menu > li:first-child"); +await firstItem.click(); + +// Последний элемент +const lastItem = await browser.$(".breadcrumb > li:last-child"); +const currentPage = await lastItem.getText(); + +// N-ый элемент (третий пункт меню) +const thirdItem = await browser.$(".menu-item:nth-child(3)"); + +// Каждый второй элемент (чётные) +const evenRows = await browser.$$("table tr:nth-child(even)"); + +// Отключённые элементы +const disabledButtons = await browser.$$("button:disabled"); +expect(disabledButtons.length).toBe(2); + +// Проверенные чекбоксы +const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); +``` + +Стоит использовать, если: + +- тестируете позиционирование элементов; +- проверяете состояния элементов (`disabled`, `checked`, `focus`); +- работаете с таблицами и нужно выбрать определённую строку или столбец; +- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); +- нужно найти элемент по его позиции, когда нет других идентификаторов. + +### XPath селекторы + +#### По тексту элемента + +Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. + +```javascript +// Точное совпадение текста +const loginButton = await browser.$("//button[text()="Войти в систему"]"); +await loginButton.click(); + +// Частичное совпадение +const successMessage = await browser.$("//div[contains(text(), "успешно")]"); +await successMessage.waitForDisplayed(); + +// Текст с пробелами и переносами +const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); + +// Поиск по тексту в дочернем элементе +const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); + +// Case-insensitive поиск (XPath 2.0) +const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); +``` + +Стоит использовать, если: + +- текст элемента уникален и стабилен (названия кнопок, заголовки); +- нет других идентификаторов (нет `data-testid`, `id`, классов); +- тестируете, что правильный текст отображается в правильном месте; +- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; +- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. + +#### По атрибутам + +Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. + +```javascript +// Поиск по одному атрибуту +const nameInput = await browser.$("//input[@name="username"]"); +await nameInput.setValue("john_doe"); + +// Множественные условия (AND) +const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); + +// Условие OR +const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); + +// Поиск по началу значения атрибута +const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); + +// Поиск по концу значения атрибута +const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); + +// Поиск по частичному совпадению атрибута +const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); + +// NOT условие +const notDisabledButton = await browser.$("//button[not(@disabled)]"); +``` + +Стоит использовать, если: + +- нужны сложные условия поиска (комбинации атрибутов); +- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); +- нужна гибкость в поиске (частичные совпадения, начало/конец строки); +- CSS-селекторы не могут выразить нужную логику; +- нужно найти элемент по отсутствию атрибута. + +#### Навигация по DOM + +Исползуя XPath, вы можете навигировать по DOM-дереву. + +```javascript +// Прямой родитель +const parentDiv = await browser.$("//input[@name="email"]/.."); + +// Предок с условием +const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); + +// Следующий сиблинг +const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); + +// Предыдущий сиблинг +const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); + +// Все потомки +const allInputs = await browser.$$("//form[@id="checkout"]//input"); + +// Прямые дети +const directChildren = await browser.$$("//ul[@class="menu"]/li"); + +// Поиск «дяди» элемента (родитель -> сиблинг родителя) +const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); +``` + +Стоит использовать, если: + +- нужно найти элемент относительно другого известного элемента; +- структура DOM сложна, но относительные позиции стабильны; +- тестируете связанные элементы (label и input, ошибка рядом с полем); +- нужно подняться вверх по DOM-дереву от найденного элемента; +- работаете с семантической структурой HTML (заголовок и следующая за ним секция). + +#### XPath: индексы и позиции + +XPath позволяет выбирать элементы по их позиции в наборе результатов. + +```javascript +// Первый элемент в результатах XPath +const firstButton = await browser.$("(//button[@class="action"])[1]"); +await firstButton.click(); + +// Последний элемент +const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); + +// Второй элемент +const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); + +// Предпоследний +const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); + +// Диапазон элементов (все кроме первого) +const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); + +// Каждый третий элемент +const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); +``` + +Стоит использовать, если: + +- нужен доступ к элементу по его позиции в наборе результатов; +- тестируете пагинацию или списки с определённым порядком; +- работаете с таблицами и нужна конкретная строка; +- нужен первый или последний элемент среди нескольких одинаковых; +- тестируете сортировку (проверка, что элемент на правильной позиции). + +### Селекторы по Link Text + +Селекторы по содержащемуся внутри тексту позволяют находить ссылки `()` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. + +```javascript +// Полное совпадение текста ссылки +const loginLink = await browser.$("=Войти в систему"); +await loginLink.click(); + +// Частичное совпадение +const docsLink = await browser.$("*=Документация"); +await docsLink.click(); +``` +Стоит использовать, если: + +- работаете с навигационными ссылками с уникальным текстом; +- тестируете меню и навигацию сайта; +- текст ссылки является частью требований и не должен меняться; +- нужна простота и читаемость теста; +- тестируете наличие ссылок с правильным текстом на странице. + +### Селекторы по имени тега + +Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. + +```javascript +// Поиск первой кнопки на странице +const button = await browser.$("button"); +await button.click(); + +// Все параграфы +const paragraphs = await browser.$$("p"); +const textsArray = await Promise.all( + paragraphs.map(p => p.getText()) +); + +// Все изображения +const images = await browser.$$("img"); +for (const img of images) { + const alt = await img.getAttribute("alt"); + expect(alt).not.toBe(""); // проверка accessibility +} + +// Форма +const form = await browser.$("form"); +await form.waitForDisplayed(); + +// Таблица +const table = await browser.$("table"); +const rows = await table.$$("tr"); +``` + +Стоит использовать, если: + +- на странице один элемент данного типа (например, единственная форма); +- нужно получить все элементы определённого типа для массовой проверки; +- тестируете семантичность HTML (наличие правильных тегов); +- работаете с базовой HTML-структурой (`form`, `table`, `ul`); +- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). + +### React селекторы + +Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. + +```javascript +// Поиск React-компонента по имени +const myButton = await browser.react$("MyButton"); +await myButton.click(); + +// С фильтрацией по параметрами +const primaryButton = await browser.react$("Button", { + props: { variant: "primary", size: "large" } +}); + +// С фильтрацией по state +const openModal = await browser.react$("Modal", { + state: { isOpen: true, activeTab: 'settings' } +}); + +// Все экземпляры компонента +const allCards = await browser.react$$("ProductCard"); +console.log("Найдено карточек: ${allCards.length}"); + +// Вложенный поиск +const form = await browser.react$("CheckoutForm"); +const submitButton = await form.react$("SubmitButton"); + +// С комплексными параметрами +const userProfile = await browser.react$("UserProfile", { + props: { + user: { id: 123, role: "admin" }, + editable: true + } +}); +``` + +Стоит использовать, если: + +- работаете с React-приложением и имеете доступ к исходному коду; +- нужно найти компонент по его параметрам или `state`; +- тестируете, что компонент рендерится с правильными данными; +- структура `DOM` может меняться, но API компонента стабилен; +- нужна глубокая интеграция с React DevTools. + +### Shadow DOM селекторы + +Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. + +```javascript +// Простой доступ в Shadow DOM +const customElement = await browser.$("my-custom-element"); +const button = await customElement.shadow$("button"); +await button.click(); + +// Множественные элементы в Shadow DOM +const slotElements = await customElement.shadow$$(".slot-item"); +``` + +Стоит использовать, если: + +- работаете с Web Components и Custom Elements; +- приложение использует Shadow DOM для инкапсуляции стилей; +- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); +- нужен доступ к элементам внутри shadow root; +- работаете с дизайн-системой на базе Web Components. + +## Testing-library + +Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). + +### ByRole + +`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск кнопки +const submitButton = screen.getByRole("button", { name: /submit/i }); +await userEvent.click(submitButton); + +// Поиск текстового поля +const emailInput = screen.getByRole('textbox', { name: /email/i }); +await userEvent.type(emailInput, "test@example.com"); + +// Поиск чекбокса +const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); +await userEvent.click(agreeCheckbox); +``` + +Стоит использовать, если: + +- для любых интерактивных элементов (кнопки, ссылки, поля ввода); +- для структурных элементов (`navigation`, `main`, `header`, `footer`); +- для форм и их элементов (`radio`, `checkbox`, `combobox`); +- для заголовков и важных текстовых элементов; +- для списков и таблиц. + + +### ByLabelText + +Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по тексту label (полное совпадение) +const emailInput = screen.getByLabelText("Email Address"); +await userEvent.type(emailInput, "user@example.com"); + +// Поиск с регулярным выражением (частичное совпадение, case-insensitive) +const passwordInput = screen.getByLabelText(/password/i); +await userEvent.type(passwordInput, "secure123"); +``` + +Стоит использовать, если: + +- работаете с формами; +- нужно найти input, select, textarea по связанной метке; +- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); +- метка уникальна и описательна. + +### ByPlaceholderText + +Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по placeholder +const searchInput = screen.getByPlaceholderText("Search..."); +await userEvent.type(searchInput, "testing library"); + +// С регулярным выражением +const emailInput = screen.getByPlaceholderText(/enter.*email/i); +await userEvent.type(emailInput, "test@example.com"); +``` + +Стоит использовать, если: + +- у поля нет `label`, но есть `placeholder`; +- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; +- `placeholder` достаточно описателен и уникален. + +### ByText + +Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по точному тексту +const heading = screen.getByText("Welcome to our application"); +expect(heading).toBeInTheDocument(); + +// С регулярным выражением (частичное совпадение) +const errorMessage = screen.getByText(/error.*occurred/i); +expect(errorMessage).toHaveClass("error"); +``` + +Стоит использовать, если: + +- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); +- занимаетесь проверкой отображения текста на странице; +- текст уникален и является частью требований. + +### ByDisplayValue + +Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск input с конкретным значением +const emailInput = screen.getByDisplayValue("user@example.com"); +expect(emailInput).toBeInTheDocument(); + +// Поиск с регулярным выражением +const searchInput = screen.getByDisplayValue(/search query/i); +``` + +Стоит использовать, если: + +- необходимо протестировать предзаполненных форм (edit forms, profile pages); +- нужно проверить установку корректного значения после действия; +- необходимо найти элемент по его текущему значению, а не по label. + +### ByAltText + +Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск изображения по alt тексту +const logo = screen.getByAltText("Company Logo"); +expect(logo).toBeInTheDocument(); +expect(logo).toHaveAttribute("src", "/images/logo.png"); +``` + +Стоит использовать, если: + +- нужно работать с изображениями (``, ``, ``); +- необходимо проверить доступность изображений (наличие `alt` обязательно); +- `alt`-текст достаточно описателен и уникален. + +### ByTitle + +Чтобы найти элемент по атрибуту title, используйте метод getByTitle. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск элемента по title атрибуту +const closeButton = screen.getByTitle("Close dialog"); +await userEvent.click(closeButton); +``` + +Стоит использовать, если: + +- необходимо работать с элементами, которые используют `title` для `tooltips`; +- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); +- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). + +### ByTestId + +`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Базовое использование +const submitButton = screen.getByTestId("submit-button"); +await userEvent.click(submitButton); +``` + diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx new file mode 100644 index 00000000..8ecb8390 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx @@ -0,0 +1,602 @@ +# Селекторы + +Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. + +## WebDriverIO + +WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. + +### CSS селекторы + +#### По классу + +Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. + +```javascript +// Поиск кнопки с классом "btn-primary" +const button = await browser.$(".btn-primary"); +await button.click(); + +// Поиск нескольких элементов +const menuItems = await browser.$$(".nav-item"); +console.log("Количество пунктов меню: ${menuItems.length}"); +``` +Стоит использовать, если: + +- класс является стабильным и не генерируется динамически; +- нужен быстрый и простой способ найти элемент; +- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); +- вы работаете с компонентными библиотеками, где классы являются частью API. + +#### По id + +Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. + +```javascript +// Поиск формы id +const loginForm = await browser.$("#login-form"); +const isDisplayed = await loginForm.isDisplayed(); +``` +Стоит использовать, если: + +- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); +- `id` является частью публичного API компонента; +- нужна максимальная производительность селектора (`id` — самый быстрый селектор). + +#### По типу атрибута + +Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. + +```javascript +// Поиск всех чекбоксов +const checkboxes = await browser.$$("input[type="checkbox"]"); +for (const checkbox of checkboxes) { + await checkbox.click(); +} + +// Поиск email input +const emailInput = await browser.$("input[type="email"]"); +await emailInput.setValue("test@example.com"); + +// Поиск скрытых полей +const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); +const csrfValue = await hiddenField.getValue(); +``` + +Стоит использовать, если: + +- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); +- вы тестируете формы и валидацию; +- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); +- вам нужно убедиться, что используется правильный тип поля для `accessibility`; +- вы тестируете различное поведение для разных типов полей. + +#### CSS-селекторы по атрибуту data-testid + +Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. + +```javascript +// Поиск элемента по data-testid +const userAvatar = await browser.$("[data-testid="user-avatar"]"); +await userAvatar.waitForDisplayed({ timeout: 5000 }); + +// Клик по кнопке с data-testid +const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); +await deleteButton.click(); + +// Получение текста из элемента +const errorMessage = await browser.$("[data-testid="error-notification"]"); +const text = await errorMessage.getText(); +expect(text).toContain("Ошибка валидации"); +``` +Стоит использовать, если: + +- создаёте селекторы специально для тестирования; +- нужна стабильность селекторов независимо от изменений UI/стилей; +- работаете в команде, где дизайнеры часто меняют классы и структуру; +- хотите явно пометить элементы, доступные для тестирования; + +#### CSS-комбинированные селекторы + +Комбинированные селекторы позволяют находить элементы в определённом контексте. + +```javascript +// Потомок: кнопка внутри модального окна +const modalButton = await browser.$(".modal .close-button"); +await modalButton.click(); + +// Прямой потомок: первый уровень вложенности +const navItem = await browser.$(".navigation > .nav-item"); + +// Соседний элемент +const errorLabel = await browser.$("input.invalid + .error-message"); +const errorText = await errorLabel.getText(); + +// Сложная комбинация +const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); +``` + +Стоит использовать, если: + +- нужно найти элемент в определённом контексте; +- работаете с повторяющейся структурой; +- нужно убедиться в правильной вложенности элементов; +- простые селекторы слишком неспецифичны; +- тестируете связанные элементы. + +#### CSS-псевдоселекторы + +Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. + +```javascript +// Первый элемент списка +const firstItem = await browser.$("ul.menu > li:first-child"); +await firstItem.click(); + +// Последний элемент +const lastItem = await browser.$(".breadcrumb > li:last-child"); +const currentPage = await lastItem.getText(); + +// N-ый элемент (третий пункт меню) +const thirdItem = await browser.$(".menu-item:nth-child(3)"); + +// Каждый второй элемент (чётные) +const evenRows = await browser.$$("table tr:nth-child(even)"); + +// Отключённые элементы +const disabledButtons = await browser.$$("button:disabled"); +expect(disabledButtons.length).toBe(2); + +// Проверенные чекбоксы +const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); +``` + +Стоит использовать, если: + +- тестируете позиционирование элементов; +- проверяете состояния элементов (`disabled`, `checked`, `focus`); +- работаете с таблицами и нужно выбрать определённую строку или столбец; +- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); +- нужно найти элемент по его позиции, когда нет других идентификаторов. + +### XPath селекторы + +#### По тексту элемента + +Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. + +```javascript +// Точное совпадение текста +const loginButton = await browser.$("//button[text()="Войти в систему"]"); +await loginButton.click(); + +// Частичное совпадение +const successMessage = await browser.$("//div[contains(text(), "успешно")]"); +await successMessage.waitForDisplayed(); + +// Текст с пробелами и переносами +const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); + +// Поиск по тексту в дочернем элементе +const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); + +// Case-insensitive поиск (XPath 2.0) +const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); +``` + +Стоит использовать, если: + +- текст элемента уникален и стабилен (названия кнопок, заголовки); +- нет других идентификаторов (нет `data-testid`, `id`, классов); +- тестируете, что правильный текст отображается в правильном месте; +- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; +- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. + +#### По атрибутам + +Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. + +```javascript +// Поиск по одному атрибуту +const nameInput = await browser.$("//input[@name="username"]"); +await nameInput.setValue("john_doe"); + +// Множественные условия (AND) +const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); + +// Условие OR +const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); + +// Поиск по началу значения атрибута +const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); + +// Поиск по концу значения атрибута +const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); + +// Поиск по частичному совпадению атрибута +const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); + +// NOT условие +const notDisabledButton = await browser.$("//button[not(@disabled)]"); +``` + +Стоит использовать, если: + +- нужны сложные условия поиска (комбинации атрибутов); +- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); +- нужна гибкость в поиске (частичные совпадения, начало/конец строки); +- CSS-селекторы не могут выразить нужную логику; +- нужно найти элемент по отсутствию атрибута. + +#### Навигация по DOM + +Исползуя XPath, вы можете навигировать по DOM-дереву. + +```javascript +// Прямой родитель +const parentDiv = await browser.$("//input[@name="email"]/.."); + +// Предок с условием +const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); + +// Следующий сиблинг +const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); + +// Предыдущий сиблинг +const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); + +// Все потомки +const allInputs = await browser.$$("//form[@id="checkout"]//input"); + +// Прямые дети +const directChildren = await browser.$$("//ul[@class="menu"]/li"); + +// Поиск «дяди» элемента (родитель -> сиблинг родителя) +const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); +``` + +Стоит использовать, если: + +- нужно найти элемент относительно другого известного элемента; +- структура DOM сложна, но относительные позиции стабильны; +- тестируете связанные элементы (label и input, ошибка рядом с полем); +- нужно подняться вверх по DOM-дереву от найденного элемента; +- работаете с семантической структурой HTML (заголовок и следующая за ним секция). + +#### XPath: индексы и позиции + +XPath позволяет выбирать элементы по их позиции в наборе результатов. + +```javascript +// Первый элемент в результатах XPath +const firstButton = await browser.$("(//button[@class="action"])[1]"); +await firstButton.click(); + +// Последний элемент +const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); + +// Второй элемент +const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); + +// Предпоследний +const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); + +// Диапазон элементов (все кроме первого) +const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); + +// Каждый третий элемент +const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); +``` + +Стоит использовать, если: + +- нужен доступ к элементу по его позиции в наборе результатов; +- тестируете пагинацию или списки с определённым порядком; +- работаете с таблицами и нужна конкретная строка; +- нужен первый или последний элемент среди нескольких одинаковых; +- тестируете сортировку (проверка, что элемент на правильной позиции). + +### Селекторы по Link Text + +Селекторы по содержащемуся внутри тексту позволяют находить ссылки `()` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. + +```javascript +// Полное совпадение текста ссылки +const loginLink = await browser.$("=Войти в систему"); +await loginLink.click(); + +// Частичное совпадение +const docsLink = await browser.$("*=Документация"); +await docsLink.click(); +``` +Стоит использовать, если: + +- работаете с навигационными ссылками с уникальным текстом; +- тестируете меню и навигацию сайта; +- текст ссылки является частью требований и не должен меняться; +- нужна простота и читаемость теста; +- тестируете наличие ссылок с правильным текстом на странице. + +### Селекторы по имени тега + +Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. + +```javascript +// Поиск первой кнопки на странице +const button = await browser.$("button"); +await button.click(); + +// Все параграфы +const paragraphs = await browser.$$("p"); +const textsArray = await Promise.all( + paragraphs.map(p => p.getText()) +); + +// Все изображения +const images = await browser.$$("img"); +for (const img of images) { + const alt = await img.getAttribute("alt"); + expect(alt).not.toBe(""); // проверка accessibility +} + +// Форма +const form = await browser.$("form"); +await form.waitForDisplayed(); + +// Таблица +const table = await browser.$("table"); +const rows = await table.$$("tr"); +``` + +Стоит использовать, если: + +- на странице один элемент данного типа (например, единственная форма); +- нужно получить все элементы определённого типа для массовой проверки; +- тестируете семантичность HTML (наличие правильных тегов); +- работаете с базовой HTML-структурой (`form`, `table`, `ul`); +- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). + +### React селекторы + +Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. + +```javascript +// Поиск React-компонента по имени +const myButton = await browser.react$("MyButton"); +await myButton.click(); + +// С фильтрацией по параметрами +const primaryButton = await browser.react$("Button", { + props: { variant: "primary", size: "large" } +}); + +// С фильтрацией по state +const openModal = await browser.react$("Modal", { + state: { isOpen: true, activeTab: 'settings' } +}); + +// Все экземпляры компонента +const allCards = await browser.react$$("ProductCard"); +console.log("Найдено карточек: ${allCards.length}"); + +// Вложенный поиск +const form = await browser.react$("CheckoutForm"); +const submitButton = await form.react$("SubmitButton"); + +// С комплексными параметрами +const userProfile = await browser.react$("UserProfile", { + props: { + user: { id: 123, role: "admin" }, + editable: true + } +}); +``` + +Стоит использовать, если: + +- работаете с React-приложением и имеете доступ к исходному коду; +- нужно найти компонент по его параметрам или `state`; +- тестируете, что компонент рендерится с правильными данными; +- структура `DOM` может меняться, но API компонента стабилен; +- нужна глубокая интеграция с React DevTools. + +### Shadow DOM селекторы + +Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. + +```javascript +// Простой доступ в Shadow DOM +const customElement = await browser.$("my-custom-element"); +const button = await customElement.shadow$("button"); +await button.click(); + +// Множественные элементы в Shadow DOM +const slotElements = await customElement.shadow$$(".slot-item"); +``` + +Стоит использовать, если: + +- работаете с Web Components и Custom Elements; +- приложение использует Shadow DOM для инкапсуляции стилей; +- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); +- нужен доступ к элементам внутри shadow root; +- работаете с дизайн-системой на базе Web Components. + +## Testing-library + +Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). + +### ByRole + +`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск кнопки +const submitButton = screen.getByRole("button", { name: /submit/i }); +await userEvent.click(submitButton); + +// Поиск текстового поля +const emailInput = screen.getByRole('textbox', { name: /email/i }); +await userEvent.type(emailInput, "test@example.com"); + +// Поиск чекбокса +const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); +await userEvent.click(agreeCheckbox); +``` + +Стоит использовать, если: + +- для любых интерактивных элементов (кнопки, ссылки, поля ввода); +- для структурных элементов (`navigation`, `main`, `header`, `footer`); +- для форм и их элементов (`radio`, `checkbox`, `combobox`); +- для заголовков и важных текстовых элементов; +- для списков и таблиц. + + +### ByLabelText + +Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по тексту label (полное совпадение) +const emailInput = screen.getByLabelText("Email Address"); +await userEvent.type(emailInput, "user@example.com"); + +// Поиск с регулярным выражением (частичное совпадение, case-insensitive) +const passwordInput = screen.getByLabelText(/password/i); +await userEvent.type(passwordInput, "secure123"); +``` + +Стоит использовать, если: + +- работаете с формами; +- нужно найти input, select, textarea по связанной метке; +- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); +- метка уникальна и описательна. + +### ByPlaceholderText + +Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по placeholder +const searchInput = screen.getByPlaceholderText("Search..."); +await userEvent.type(searchInput, "testing library"); + +// С регулярным выражением +const emailInput = screen.getByPlaceholderText(/enter.*email/i); +await userEvent.type(emailInput, "test@example.com"); +``` + +Стоит использовать, если: + +- у поля нет `label`, но есть `placeholder`; +- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; +- `placeholder` достаточно описателен и уникален. + +### ByText + +Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по точному тексту +const heading = screen.getByText("Welcome to our application"); +expect(heading).toBeInTheDocument(); + +// С регулярным выражением (частичное совпадение) +const errorMessage = screen.getByText(/error.*occurred/i); +expect(errorMessage).toHaveClass("error"); +``` + +Стоит использовать, если: + +- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); +- занимаетесь проверкой отображения текста на странице; +- текст уникален и является частью требований. + +### ByDisplayValue + +Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск input с конкретным значением +const emailInput = screen.getByDisplayValue("user@example.com"); +expect(emailInput).toBeInTheDocument(); + +// Поиск с регулярным выражением +const searchInput = screen.getByDisplayValue(/search query/i); +``` + +Стоит использовать, если: + +- необходимо протестировать предзаполненных форм (edit forms, profile pages); +- нужно проверить установку корректного значения после действия; +- необходимо найти элемент по его текущему значению, а не по label. + +### ByAltText + +Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск изображения по alt тексту +const logo = screen.getByAltText("Company Logo"); +expect(logo).toBeInTheDocument(); +expect(logo).toHaveAttribute("src", "/images/logo.png"); +``` + +Стоит использовать, если: + +- нужно работать с изображениями (``, ``, ``); +- необходимо проверить доступность изображений (наличие `alt` обязательно); +- `alt`-текст достаточно описателен и уникален. + +### ByTitle + +Чтобы найти элемент по атрибуту title, используйте метод getByTitle. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск элемента по title атрибуту +const closeButton = screen.getByTitle("Close dialog"); +await userEvent.click(closeButton); +``` + +Стоит использовать, если: + +- необходимо работать с элементами, которые используют `title` для `tooltips`; +- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); +- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). + +### ByTestId + +`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Базовое использование +const submitButton = screen.getByTestId("submit-button"); +await userEvent.click(submitButton); +``` + diff --git a/package-lock.json b/package-lock.json index 3b0f0c20..fe2f27fb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -180,6 +180,7 @@ "version": "4.23.3", "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.23.3.tgz", "integrity": "sha512-P4VAKFHqU0wx9O+q29Q8YVuaowaZ5EM77rxfmGnkHUJggh28useXQdopokgwMeYw2XUht49WX5RcTQ40rZIabw==", + "peer": true, "dependencies": { "@algolia/client-common": "4.23.3", "@algolia/requester-common": "4.23.3", @@ -306,6 +307,7 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz", "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==", "license": "MIT", + "peer": true, "dependencies": { "@babel/code-frame": "^7.27.1", "@babel/generator": "^7.28.5", @@ -466,7 +468,6 @@ "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "dev": true, - "peer": true, "engines": { "node": ">=6.9.0" } @@ -745,7 +746,6 @@ "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", "dev": true, - "peer": true, "dependencies": { "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-plugin-utils": "^7.20.2", @@ -765,7 +765,6 @@ "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", "dev": true, - "peer": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.18.6", "@babel/helper-plugin-utils": "^7.18.6" @@ -782,7 +781,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.24.1.tgz", "integrity": "sha512-+0hrgGGV3xyYIjOrD/bUZk/iUwOIGuoANfRfVg1cPhYBxF+TIXSEcc42DqzBICmWsnAQ+SfKedY0bj8QD+LuMg==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.24.0", "@babel/plugin-syntax-export-default-from": "^7.24.1" @@ -800,7 +798,6 @@ "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" @@ -818,7 +815,6 @@ "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead.", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-numeric-separator": "^7.10.4" @@ -836,7 +832,6 @@ "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", "dev": true, - "peer": true, "dependencies": { "@babel/compat-data": "^7.20.5", "@babel/helper-compilation-targets": "^7.20.7", @@ -857,7 +852,6 @@ "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead.", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" @@ -875,7 +869,6 @@ "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.20.2", "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", @@ -904,7 +897,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -928,7 +920,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.24.1.tgz", "integrity": "sha512-cNXSxv9eTkGUtd0PsNMK8Yx5xeScxfpWOUAxE+ZPAXXEcAMOC3fk7LRdXq5fvpra2pLx2p1YtkAhpUbB2SwaRA==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.24.0" }, @@ -1004,7 +995,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -1017,7 +1007,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -1030,7 +1019,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -1043,7 +1031,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -1056,7 +1043,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -1798,7 +1784,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.1.tgz", "integrity": "sha512-kDJgnPujTmAZ/9q2CN4m2/lRsUUPDvsG3+tSHWUJIzMGTt5U/b/fwWd3RO3n+5mjLrsBrVa5eKFRVSQbi3dF1w==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.24.0" }, @@ -1814,7 +1799,6 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.1.tgz", "integrity": "sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.24.0" }, @@ -2078,6 +2062,7 @@ "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.28.5.tgz", "integrity": "sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==", "license": "MIT", + "peer": true, "dependencies": { "@babel/compat-data": "^7.28.5", "@babel/helper-compilation-targets": "^7.27.2", @@ -2517,6 +2502,7 @@ "version": "3.4.0", "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.4.0.tgz", "integrity": "sha512-g+0wwmN2UJsBqy2fQRQ6fhXruoEa62JDeEa5d8IdTJlMoaDaEDfHh7WjwGRn4opuTQWpjAwP/fbcgyHKlE+64w==", + "peer": true, "dependencies": { "@babel/core": "^7.23.3", "@babel/generator": "^7.23.3", @@ -3699,7 +3685,6 @@ "resolved": "https://registry.npmjs.org/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz", "integrity": "sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA==", "dev": true, - "peer": true, "engines": { "node": ">=12" } @@ -3709,7 +3694,6 @@ "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz", "integrity": "sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==", "dev": true, - "peer": true, "dependencies": { "@jest/types": "^29.6.3" }, @@ -3722,7 +3706,6 @@ "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", "dev": true, - "peer": true, "dependencies": { "@jest/fake-timers": "^29.7.0", "@jest/types": "^29.6.3", @@ -3738,7 +3721,6 @@ "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "dev": true, - "peer": true, "dependencies": { "@jest/types": "^29.6.3", "@sinonjs/fake-timers": "^10.0.2", @@ -4023,7 +4005,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-12.3.6.tgz", "integrity": "sha512-647OSi6xBb8FbwFqX9zsJxOzu685AWtrOUWHfOkbKD+5LOpGORw+GQo0F9rWZnB68rLQyfKUZWJeaD00pGv5fw==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-clean": "12.3.6", "@react-native-community/cli-config": "12.3.6", @@ -4056,7 +4037,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-clean/-/cli-clean-12.3.6.tgz", "integrity": "sha512-gUU29ep8xM0BbnZjwz9MyID74KKwutq9x5iv4BCr2im6nly4UMf1B1D+V225wR7VcDGzbgWjaezsJShLLhC5ig==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-tools": "12.3.6", "chalk": "^4.1.2", @@ -4068,7 +4048,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-config/-/cli-config-12.3.6.tgz", "integrity": "sha512-JGWSYQ9EAK6m2v0abXwFLEfsqJ1zkhzZ4CV261QZF9MoUNB6h57a274h1MLQR9mG6Tsh38wBUuNfEPUvS1vYew==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-tools": "12.3.6", "chalk": "^4.1.2", @@ -4083,7 +4062,6 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "peer": true, "dependencies": { "sprintf-js": "~1.0.2" } @@ -4093,7 +4071,6 @@ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", "dev": true, - "peer": true, "dependencies": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", @@ -4109,7 +4086,6 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "peer": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4130,7 +4106,6 @@ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", "dev": true, - "peer": true, "dependencies": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" @@ -4144,7 +4119,6 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, - "peer": true, "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -4158,7 +4132,6 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, - "peer": true, "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -4172,7 +4145,6 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", "dev": true, - "peer": true, "engines": { "node": ">=4" } @@ -4182,7 +4154,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.3.6.tgz", "integrity": "sha512-SjUKKsx5FmcK9G6Pb6UBFT0s9JexVStK5WInmANw75Hm7YokVvHEgtprQDz2Uvy5znX5g2ujzrkIU//T15KQzA==", "dev": true, - "peer": true, "dependencies": { "serve-static": "^1.13.1" } @@ -4192,7 +4163,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-doctor/-/cli-doctor-12.3.6.tgz", "integrity": "sha512-fvBDv2lTthfw4WOQKkdTop2PlE9GtfrlNnpjB818MhcdEnPjfQw5YaTUcnNEGsvGomdCs1MVRMgYXXwPSN6OvQ==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-config": "12.3.6", "@react-native-community/cli-platform-android": "12.3.6", @@ -4217,7 +4187,6 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true, - "peer": true, "engines": { "node": ">=6" } @@ -4227,7 +4196,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, - "peer": true, "dependencies": { "ansi-regex": "^4.1.0" }, @@ -4240,7 +4208,6 @@ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz", "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==", "dev": true, - "peer": true, "bin": { "yaml": "bin.mjs" }, @@ -4253,7 +4220,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-hermes/-/cli-hermes-12.3.6.tgz", "integrity": "sha512-sNGwfOCl8OAIjWCkwuLpP8NZbuO0dhDI/2W7NeOGDzIBsf4/c4MptTrULWtGIH9okVPLSPX0NnRyGQ+mSwWyuQ==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-platform-android": "12.3.6", "@react-native-community/cli-tools": "12.3.6", @@ -4266,7 +4232,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-12.3.6.tgz", "integrity": "sha512-DeDDAB8lHpuGIAPXeeD9Qu2+/wDTFPo99c8uSW49L0hkmZJixzvvvffbGQAYk32H0TmaI7rzvzH+qzu7z3891g==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-tools": "12.3.6", "chalk": "^4.1.2", @@ -4281,7 +4246,6 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "peer": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4302,7 +4266,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.3.6.tgz", "integrity": "sha512-3eZ0jMCkKUO58wzPWlvAPRqezVKm9EPZyaPyHbRPWU8qw7JqkvnRlWIaYDGpjCJgVW4k2hKsEursLtYKb188tg==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-tools": "12.3.6", "chalk": "^4.1.2", @@ -4317,7 +4280,6 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "peer": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4337,15 +4299,13 @@ "version": "12.3.6", "resolved": "https://registry.npmjs.org/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.3.6.tgz", "integrity": "sha512-3jxSBQt4fkS+KtHCPSyB5auIT+KKIrPCv9Dk14FbvOaEh9erUWEm/5PZWmtboW1z7CYeNbFMeXm9fM2xwtVOpg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/@react-native-community/cli-server-api": { "version": "12.3.6", "resolved": "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-12.3.6.tgz", "integrity": "sha512-80NIMzo8b2W+PL0Jd7NjiJW9mgaT8Y8wsIT/lh6mAvYH7mK0ecDJUYUTAAv79Tbo1iCGPAr3T295DlVtS8s4yQ==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-debugger-ui": "12.3.6", "@react-native-community/cli-tools": "12.3.6", @@ -4363,7 +4323,6 @@ "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", "dev": true, - "peer": true, "dependencies": { "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", @@ -4380,7 +4339,6 @@ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.19.tgz", "integrity": "sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==", "dev": true, - "peer": true, "dependencies": { "@types/yargs-parser": "*" } @@ -4390,7 +4348,6 @@ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", "dev": true, - "peer": true, "dependencies": { "@jest/types": "^26.6.2", "ansi-regex": "^5.0.0", @@ -4406,7 +4363,6 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true, - "peer": true, "engines": { "node": ">=8.3.0" }, @@ -4428,7 +4384,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-12.3.6.tgz", "integrity": "sha512-FPEvZn19UTMMXUp/piwKZSh8cMEfO8G3KDtOwo53O347GTcwNrKjgZGtLSPELBX2gr+YlzEft3CoRv2Qmo83fQ==", "dev": true, - "peer": true, "dependencies": { "appdirsjs": "^1.2.4", "chalk": "^4.1.2", @@ -4447,7 +4402,6 @@ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", "dev": true, - "peer": true, "engines": { "node": ">=4" } @@ -4457,7 +4411,6 @@ "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", "dev": true, - "peer": true, "dependencies": { "is-wsl": "^1.1.0" }, @@ -4470,7 +4423,6 @@ "resolved": "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-12.3.6.tgz", "integrity": "sha512-xPqTgcUtZowQ8WKOkI9TLGBwH2bGggOC4d2FFaIRST3gTcjrEeGRNeR5aXCzJFIgItIft8sd7p2oKEdy90+01Q==", "dev": true, - "peer": true, "dependencies": { "joi": "^17.2.1" } @@ -4480,7 +4432,6 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", "dev": true, - "peer": true, "engines": { "node": "^12.20.0 || >=14" } @@ -4490,7 +4441,6 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, - "peer": true, "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -4504,7 +4454,6 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, - "peer": true, "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", @@ -4519,7 +4468,6 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, - "peer": true, "optionalDependencies": { "graceful-fs": "^4.1.6" } @@ -4529,7 +4477,6 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, - "peer": true, "dependencies": { "p-locate": "^4.1.0" }, @@ -4542,7 +4489,6 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "peer": true, "dependencies": { "p-try": "^2.0.0" }, @@ -4558,7 +4504,6 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "peer": true, "dependencies": { "p-limit": "^2.2.0" }, @@ -4571,7 +4516,6 @@ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, - "peer": true, "engines": { "node": ">= 4.0.0" } @@ -4581,7 +4525,6 @@ "resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.73.1.tgz", "integrity": "sha512-2FgAbU7uKM5SbbW9QptPPZx8N9Ke2L7bsHb+EhAanZjFZunA9PaYtyjUQ1s7HD+zDVqOQIvjkpXSv7Kejd2tqg==", "dev": true, - "peer": true, "engines": { "node": ">=18" } @@ -4591,7 +4534,6 @@ "resolved": "https://registry.npmjs.org/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.73.4.tgz", "integrity": "sha512-XzRd8MJGo4Zc5KsphDHBYJzS1ryOHg8I2gOZDAUCGcwLFhdyGu1zBNDJYH2GFyDrInn9TzAbRIf3d4O+eltXQQ==", "dev": true, - "peer": true, "dependencies": { "@react-native/codegen": "0.73.3" }, @@ -4604,7 +4546,6 @@ "resolved": "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.73.21.tgz", "integrity": "sha512-WlFttNnySKQMeujN09fRmrdWqh46QyJluM5jdtDNrkl/2Hx6N4XeDUGhABvConeK95OidVO7sFFf7sNebVXogA==", "dev": true, - "peer": true, "dependencies": { "@babel/core": "^7.20.0", "@babel/plugin-proposal-async-generator-functions": "^7.0.0", @@ -4661,7 +4602,6 @@ "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.73.3.tgz", "integrity": "sha512-sxslCAAb8kM06vGy9Jyh4TtvjhcP36k/rvj2QE2Jdhdm61KvfafCATSIsOfc0QvnduWFcpXUPvAVyYwuv7PYDg==", "dev": true, - "peer": true, "dependencies": { "@babel/parser": "^7.20.0", "flow-parser": "^0.206.0", @@ -4683,7 +4623,6 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "peer": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4704,7 +4643,6 @@ "resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.73.17.tgz", "integrity": "sha512-F3PXZkcHg+1ARIr6FRQCQiB7ZAA+MQXGmq051metRscoLvgYJwj7dgC8pvgy0kexzUkHu5BNKrZeySzUft3xuQ==", "dev": true, - "peer": true, "dependencies": { "@react-native-community/cli-server-api": "12.3.6", "@react-native-community/cli-tools": "12.3.6", @@ -4727,7 +4665,6 @@ "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.73.3.tgz", "integrity": "sha512-RgEKnWuoo54dh7gQhV7kvzKhXZEhpF9LlMdZolyhGxHsBqZ2gXdibfDlfcARFFifPIiaZ3lXuOVVa4ei+uPgTw==", "dev": true, - "peer": true, "engines": { "node": ">=18" } @@ -4737,7 +4674,6 @@ "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.73.8.tgz", "integrity": "sha512-oph4NamCIxkMfUL/fYtSsE+JbGOnrlawfQ0kKtDQ5xbOjPKotKoXqrs1eGwozNKv7FfQ393stk1by9a6DyASSg==", "dev": true, - "peer": true, "dependencies": { "@isaacs/ttlcache": "^1.4.1", "@react-native/debugger-frontend": "0.73.3", @@ -4760,7 +4696,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "peer": true, "dependencies": { "ms": "2.0.0" } @@ -4769,15 +4704,13 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/@react-native/dev-middleware/node_modules/open": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", "dev": true, - "peer": true, "dependencies": { "is-docker": "^2.0.0", "is-wsl": "^2.1.1" @@ -4794,7 +4727,6 @@ "resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.73.4.tgz", "integrity": "sha512-PMDnbsZa+tD55Ug+W8CfqXiGoGneSSyrBZCMb5JfiB3AFST3Uj5e6lw8SgI/B6SKZF7lG0BhZ6YHZsRZ5MlXmg==", "dev": true, - "peer": true, "engines": { "node": ">=18" } @@ -4804,7 +4736,6 @@ "resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.73.1.tgz", "integrity": "sha512-ewMwGcumrilnF87H4jjrnvGZEaPFCAC4ebraEK+CurDDmwST/bIicI4hrOAv+0Z0F7DEK4O4H7r8q9vH7IbN4g==", "dev": true, - "peer": true, "engines": { "node": ">=18" } @@ -4814,7 +4745,6 @@ "resolved": "https://registry.npmjs.org/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.73.15.tgz", "integrity": "sha512-LlkSGaXCz+xdxc9819plmpsl4P4gZndoFtpjN3GMBIu6f7TBV0GVbyJAU4GE8fuAWPVSVL5ArOcdkWKSbI1klw==", "dev": true, - "peer": true, "dependencies": { "@babel/core": "^7.20.0", "@react-native/babel-preset": "0.73.21", @@ -4832,15 +4762,13 @@ "version": "0.73.2", "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.73.2.tgz", "integrity": "sha512-bRBcb2T+I88aG74LMVHaKms2p/T8aQd8+BZ7LuuzXlRfog1bMWWn/C5i0HVuvW4RPtXQYgIlGiXVDy9Ir1So/w==", - "dev": true, - "peer": true + "dev": true }, "node_modules/@react-native/virtualized-lists": { "version": "0.73.4", "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.73.4.tgz", "integrity": "sha512-HpmLg1FrEiDtrtAbXiwCgXFYyloK/dOIPIuWW3fsqukwJEWAiTzm1nXGJ7xPU5XTHiWZ4sKup5Ebaj8z7iyWog==", "dev": true, - "peer": true, "dependencies": { "invariant": "^2.2.4", "nullthrows": "^1.1.1" @@ -4990,7 +4918,6 @@ "resolved": "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.16.2.tgz", "integrity": "sha512-3Z5FW8mxzomBbrw2iF0lNOAlNBr2OK6HR0NM416PzcTs0UcSoPj/nD4eqmrV5Kut6kvCc/TJua5LyeoPE7vSmw==", "dev": true, - "peer": true, "dependencies": { "@babel/runtime": "^7.17.8", "@types/react-reconciler": "^0.26.7", @@ -5040,7 +4967,6 @@ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", "dev": true, - "peer": true, "dependencies": { "loose-envify": "^1.1.0" } @@ -5050,7 +4976,6 @@ "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", "dev": true, - "peer": true, "engines": { "node": ">=12.7.0" }, @@ -5102,7 +5027,6 @@ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, - "peer": true, "dependencies": { "type-detect": "4.0.8" } @@ -5112,7 +5036,6 @@ "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", "dev": true, - "peer": true, "dependencies": { "@sinonjs/commons": "^3.0.0" } @@ -6461,6 +6384,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", + "peer": true, "dependencies": { "@babel/core": "^7.21.3", "@svgr/babel-preset": "8.1.0", @@ -6611,6 +6535,7 @@ "integrity": "sha512-Xaf+UBvW6JNuV131uvSNyMXHn+bh6LyKN4tbv7tOUFQpXyz/t9YWRE04emtlUW9Y0qrm/GKFCbY8n3z6BpZbTA==", "dev": true, "hasInstallScript": true, + "peer": true, "dependencies": { "@swc/counter": "^0.1.2", "@swc/types": "^0.1.5" @@ -7199,6 +7124,7 @@ "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.4.tgz", "integrity": "sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==", "dev": true, + "peer": true, "dependencies": { "@babel/code-frame": "^7.10.4", "@babel/runtime": "^7.12.5", @@ -7641,6 +7567,7 @@ "version": "18.2.79", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.79.tgz", "integrity": "sha512-RwGAGXPl9kSXwdNTafkOEuFrTBD5SA2B3iEB96xi8+xu5ddUa/cpvyVCSNn+asgLCTHkb5ZxN8gbuibYJi4s1w==", + "peer": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -7651,7 +7578,6 @@ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.26.7.tgz", "integrity": "sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==", "dev": true, - "peer": true, "dependencies": { "@types/react": "*" } @@ -7749,8 +7675,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/@types/unist": { "version": "3.0.2", @@ -7767,8 +7692,7 @@ "version": "0.5.15", "resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.15.tgz", "integrity": "sha512-nC9116Gd4N+CqTxqo6gvCfhAMAzgRcfS8ZsciNodHq8uwW4JCVKwhagw8yN0XmC7mHrLnWqniJpoVEiR+72Drw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/@types/ws": { "version": "8.5.10", @@ -7955,6 +7879,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.4.0.tgz", "integrity": "sha512-ZvKHxHLusweEUVwrGRXXUVzFgnWhigo4JurEj0dGF1tbcGh6buL+ejDdjxOQxv6ytcY1uhun1p2sm8iWStlgLQ==", "dev": true, + "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "7.4.0", "@typescript-eslint/types": "7.4.0", @@ -8703,7 +8628,6 @@ "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", "dev": true, - "peer": true, "dependencies": { "event-target-shim": "^5.0.0" }, @@ -8727,6 +8651,7 @@ "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -8775,6 +8700,7 @@ "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -8834,6 +8760,7 @@ "version": "4.23.3", "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.23.3.tgz", "integrity": "sha512-Le/3YgNvjW9zxIQMRhUHuhiUjAlKY/zsdZpfq4dlLqg6mEm0nL6yk+7f2hDOtLpxsgE4jSzDmvHL7nXdBp5feg==", + "peer": true, "dependencies": { "@algolia/cache-browser-local-storage": "4.23.3", "@algolia/cache-common": "4.23.3", @@ -8867,8 +8794,7 @@ "version": "1.4.10", "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz", "integrity": "sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==", - "dev": true, - "peer": true + "dev": true }, "node_modules/ansi-align": { "version": "3.0.1", @@ -8920,7 +8846,6 @@ "resolved": "https://registry.npmjs.org/ansi-fragments/-/ansi-fragments-0.2.1.tgz", "integrity": "sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==", "dev": true, - "peer": true, "dependencies": { "colorette": "^1.0.7", "slice-ansi": "^2.0.0", @@ -8932,7 +8857,6 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true, - "peer": true, "engines": { "node": ">=6" } @@ -8942,7 +8866,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, - "peer": true, "dependencies": { "ansi-regex": "^4.1.0" }, @@ -9005,8 +8928,7 @@ "version": "1.2.7", "resolved": "https://registry.npmjs.org/appdirsjs/-/appdirsjs-1.2.7.tgz", "integrity": "sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/arg": { "version": "5.0.2", @@ -9183,8 +9105,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "dev": true, - "peer": true + "dev": true }, "node_modules/assert": { "version": "2.1.0", @@ -9225,7 +9146,6 @@ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true, - "peer": true, "engines": { "node": ">=4" } @@ -9248,8 +9168,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true, - "peer": true + "dev": true }, "node_modules/at-least-node": { "version": "1.0.0", @@ -9502,7 +9421,6 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-enums/-/babel-plugin-transform-flow-enums-0.0.2.tgz", "integrity": "sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==", "dev": true, - "peer": true, "dependencies": { "@babel/plugin-syntax-flow": "^7.12.1" } @@ -9770,6 +9688,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "baseline-browser-mapping": "^2.9.0", "caniuse-lite": "^1.0.30001759", @@ -9789,7 +9708,6 @@ "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, - "peer": true, "dependencies": { "node-int64": "^0.4.0" } @@ -9813,7 +9731,6 @@ "url": "https://feross.org/support" } ], - "peer": true, "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" @@ -9921,7 +9838,6 @@ "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==", "dev": true, - "peer": true, "dependencies": { "callsites": "^2.0.0" }, @@ -9934,7 +9850,6 @@ "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==", "dev": true, - "peer": true, "engines": { "node": ">=4" } @@ -9944,7 +9859,6 @@ "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==", "dev": true, - "peer": true, "dependencies": { "caller-callsite": "^2.0.0" }, @@ -10214,7 +10128,6 @@ "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.15.2.tgz", "integrity": "sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==", "dev": true, - "peer": true, "dependencies": { "@types/node": "*", "escape-string-regexp": "^4.0.0", @@ -10241,7 +10154,6 @@ "resolved": "https://registry.npmjs.org/chromium-edge-launcher/-/chromium-edge-launcher-1.0.0.tgz", "integrity": "sha512-pgtgjNKZ7i5U++1g1PWv75umkHvhVTDOQIZ+sjeUX9483S7Y6MUvO0lrd7ShGlQlFHMN4SwKTCq/X8hWrbv2KA==", "dev": true, - "peer": true, "dependencies": { "@types/node": "*", "escape-string-regexp": "^4.0.0", @@ -10256,7 +10168,6 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true, - "peer": true, "bin": { "mkdirp": "bin/cmd.js" }, @@ -10411,7 +10322,6 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, - "peer": true, "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", @@ -10425,15 +10335,13 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/cliui/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "peer": true, "engines": { "node": ">=8" } @@ -10443,7 +10351,6 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -10458,7 +10365,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "peer": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -10471,7 +10377,6 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "peer": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -10559,8 +10464,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", - "dev": true, - "peer": true + "dev": true }, "node_modules/combine-promises": { "version": "1.2.0", @@ -10583,8 +10487,7 @@ "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true, - "peer": true + "dev": true }, "node_modules/commander": { "version": "5.1.0", @@ -10746,7 +10649,6 @@ "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", "dev": true, - "peer": true, "dependencies": { "debug": "2.6.9", "finalhandler": "1.1.2", @@ -10770,7 +10672,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "peer": true, "dependencies": { "ms": "2.0.0" } @@ -10780,7 +10681,6 @@ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "dev": true, - "peer": true, "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", @@ -10798,15 +10698,13 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/connect/node_modules/on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", "dev": true, - "peer": true, "dependencies": { "ee-first": "1.1.1" }, @@ -10819,7 +10717,6 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", "dev": true, - "peer": true, "engines": { "node": ">= 0.6" } @@ -11365,8 +11262,7 @@ "version": "1.11.10", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==", - "dev": true, - "peer": true + "dev": true }, "node_modules/debounce": { "version": "1.2.1", @@ -11395,7 +11291,6 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -11627,8 +11522,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz", "integrity": "sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/depd": { "version": "2.0.0", @@ -11643,7 +11537,6 @@ "resolved": "https://registry.npmjs.org/deprecated-react-native-prop-types/-/deprecated-react-native-prop-types-5.0.0.tgz", "integrity": "sha512-cIK8KYiiGVOFsKdPMmm1L3tA/Gl+JopXL6F5+C7x39MyPsQYnP57Im/D6bNUzcborD7fcMwiwZqcBdBXXZucYQ==", "dev": true, - "peer": true, "dependencies": { "@react-native/normalize-colors": "^0.73.0", "invariant": "^2.2.4", @@ -12171,6 +12064,7 @@ "version": "6.5.1", "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "peer": true, "dependencies": { "@babel/core": "^7.19.6", "@svgr/babel-preset": "^6.5.1", @@ -13267,7 +13161,6 @@ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true, - "peer": true, "engines": { "node": ">= 0.8" } @@ -13341,7 +13234,6 @@ "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", "dev": true, - "peer": true, "dependencies": { "stackframe": "^1.3.4" } @@ -13351,7 +13243,6 @@ "resolved": "https://registry.npmjs.org/errorhandler/-/errorhandler-1.5.1.tgz", "integrity": "sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==", "dev": true, - "peer": true, "dependencies": { "accepts": "~1.3.7", "escape-html": "~1.0.3" @@ -13546,6 +13437,7 @@ "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", "dev": true, "hasInstallScript": true, + "peer": true, "bin": { "esbuild": "bin/esbuild" }, @@ -13668,6 +13560,7 @@ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "devOptional": true, + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -14111,7 +14004,6 @@ "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", "dev": true, - "peer": true, "engines": { "node": ">=6" } @@ -14287,7 +14179,6 @@ "url": "https://paypal.me/naturalintelligence" } ], - "peer": true, "dependencies": { "strnum": "^1.0.5" }, @@ -14331,7 +14222,6 @@ "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, - "peer": true, "dependencies": { "bser": "2.1.1" } @@ -14645,8 +14535,7 @@ "version": "0.0.6", "resolved": "https://registry.npmjs.org/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz", "integrity": "sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/flow-parser": { "version": "0.206.0", @@ -14937,7 +14826,6 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, - "peer": true, "engines": { "node": "6.* || 8.* || >= 10.*" } @@ -15672,15 +15560,13 @@ "version": "0.15.0", "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.15.0.tgz", "integrity": "sha512-lLYvAd+6BnOqWdnNbP/Q8xfl8LOGw4wVjfrNd9Gt8eoFzhNBRVD95n4l2ksfMVOoxuVyegs85g83KS9QOsxbVQ==", - "dev": true, - "peer": true + "dev": true }, "node_modules/hermes-parser": { "version": "0.15.0", "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.15.0.tgz", "integrity": "sha512-Q1uks5rjZlE9RjMMjSUCkGrEIPI5pKJILeCtK1VmTj7U4pf3wVPoo+cxfu+s4cBAPy2JzikIIdCZgBoR6x7U1Q==", "dev": true, - "peer": true, "dependencies": { "hermes-estree": "0.15.0" } @@ -15690,7 +15576,6 @@ "resolved": "https://registry.npmjs.org/hermes-profile-transformer/-/hermes-profile-transformer-0.0.6.tgz", "integrity": "sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==", "dev": true, - "peer": true, "dependencies": { "source-map": "^0.7.3" }, @@ -16437,7 +16322,6 @@ "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -16489,7 +16373,6 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, - "peer": true, "engines": { "node": ">=4" } @@ -16916,7 +16799,6 @@ "resolved": "https://registry.npmjs.org/its-fine/-/its-fine-1.2.5.tgz", "integrity": "sha512-fXtDA0X0t0eBYAGLVM5YsgJGsJ5jEmqZEPrGbzdf5awjv0xE7nqv3TVnvtUF060Tkes15DbDAKW/I48vsb6SyA==", "dev": true, - "peer": true, "dependencies": { "@types/react-reconciler": "^0.28.0" }, @@ -16929,7 +16811,6 @@ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.28.8.tgz", "integrity": "sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==", "dev": true, - "peer": true, "dependencies": { "@types/react": "*" } @@ -16975,7 +16856,6 @@ "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, - "peer": true, "dependencies": { "@jest/environment": "^29.7.0", "@jest/fake-timers": "^29.7.0", @@ -16993,7 +16873,6 @@ "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", "dev": true, - "peer": true, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } @@ -17003,7 +16882,6 @@ "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, - "peer": true, "dependencies": { "@babel/code-frame": "^7.12.13", "@jest/types": "^29.6.3", @@ -17024,7 +16902,6 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "peer": true, "engines": { "node": ">=10" }, @@ -17037,7 +16914,6 @@ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, - "peer": true, "dependencies": { "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", @@ -17051,15 +16927,13 @@ "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "dev": true, - "peer": true + "dev": true }, "node_modules/jest-mock": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, - "peer": true, "dependencies": { "@jest/types": "^29.6.3", "@types/node": "*", @@ -17090,7 +16964,6 @@ "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, - "peer": true, "dependencies": { "@jest/types": "^29.6.3", "camelcase": "^6.2.0", @@ -17108,7 +16981,6 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "peer": true, "engines": { "node": ">=10" }, @@ -17121,7 +16993,6 @@ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, - "peer": true, "dependencies": { "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", @@ -17135,8 +17006,7 @@ "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "dev": true, - "peer": true + "dev": true }, "node_modules/jest-worker": { "version": "29.7.0", @@ -17206,22 +17076,19 @@ "version": "250231.0.0", "resolved": "https://registry.npmjs.org/jsc-android/-/jsc-android-250231.0.0.tgz", "integrity": "sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/jsc-safe-url": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/jsc-safe-url/-/jsc-safe-url-0.2.4.tgz", "integrity": "sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==", - "dev": true, - "peer": true + "dev": true }, "node_modules/jscodeshift": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.14.0.tgz", "integrity": "sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==", "dev": true, - "peer": true, "dependencies": { "@babel/core": "^7.13.16", "@babel/parser": "^7.13.16", @@ -17255,7 +17122,6 @@ "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.15.2.tgz", "integrity": "sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==", "dev": true, - "peer": true, "dependencies": { "tslib": "^2.0.1" }, @@ -17268,7 +17134,6 @@ "resolved": "https://registry.npmjs.org/recast/-/recast-0.21.5.tgz", "integrity": "sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==", "dev": true, - "peer": true, "dependencies": { "ast-types": "0.15.2", "esprima": "~4.0.0", @@ -17284,7 +17149,6 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -17310,8 +17174,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", @@ -17483,7 +17346,6 @@ "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz", "integrity": "sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==", "dev": true, - "peer": true, "dependencies": { "debug": "^2.6.9", "marky": "^1.2.2" @@ -17494,7 +17356,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "peer": true, "dependencies": { "ms": "2.0.0" } @@ -17503,8 +17364,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/lightningcss": { "version": "1.30.1", @@ -17824,8 +17684,7 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", - "dev": true, - "peer": true + "dev": true }, "node_modules/lodash.uniq": { "version": "4.5.0", @@ -17853,7 +17712,6 @@ "resolved": "https://registry.npmjs.org/logkitty/-/logkitty-0.7.1.tgz", "integrity": "sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==", "dev": true, - "peer": true, "dependencies": { "ansi-fragments": "^0.2.1", "dayjs": "^1.8.15", @@ -17868,7 +17726,6 @@ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, - "peer": true, "engines": { "node": ">=6" } @@ -17878,7 +17735,6 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, - "peer": true, "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -17889,15 +17745,13 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/logkitty/node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, - "peer": true, "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -17911,7 +17765,6 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "peer": true, "engines": { "node": ">=8" } @@ -17921,7 +17774,6 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, - "peer": true, "dependencies": { "p-locate": "^4.1.0" }, @@ -17934,7 +17786,6 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "peer": true, "dependencies": { "p-try": "^2.0.0" }, @@ -17950,7 +17801,6 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "peer": true, "dependencies": { "p-limit": "^2.2.0" }, @@ -17963,7 +17813,6 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -17978,7 +17827,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "peer": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -17991,7 +17839,6 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, - "peer": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -18005,15 +17852,13 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true, - "peer": true + "dev": true }, "node_modules/logkitty/node_modules/yargs": { "version": "15.4.1", "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, - "peer": true, "dependencies": { "cliui": "^6.0.0", "decamelize": "^1.2.0", @@ -18036,7 +17881,6 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, - "peer": true, "dependencies": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" @@ -18149,7 +17993,6 @@ "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, - "peer": true, "dependencies": { "tmpl": "1.0.5" } @@ -18196,8 +18039,7 @@ "version": "1.2.5", "resolved": "https://registry.npmjs.org/marky/-/marky-1.2.5.tgz", "integrity": "sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==", - "dev": true, - "peer": true + "dev": true }, "node_modules/math-intrinsics": { "version": "1.1.0", @@ -18615,8 +18457,7 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==", - "dev": true, - "peer": true + "dev": true }, "node_modules/memoizerific": { "version": "1.11.3", @@ -18662,7 +18503,6 @@ "resolved": "https://registry.npmjs.org/metro/-/metro-0.80.8.tgz", "integrity": "sha512-in7S0W11mg+RNmcXw+2d9S3zBGmCARDxIwoXJAmLUQOQoYsRP3cpGzyJtc7WOw8+FXfpgXvceD0u+PZIHXEL7g==", "dev": true, - "peer": true, "dependencies": { "@babel/code-frame": "^7.0.0", "@babel/core": "^7.20.0", @@ -18720,7 +18560,6 @@ "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.80.8.tgz", "integrity": "sha512-TTzNwRZb2xxyv4J/+yqgtDAP2qVqH3sahsnFu6Xv4SkLqzrivtlnyUbaeTdJ9JjtADJUEjCbgbFgUVafrXdR9Q==", "dev": true, - "peer": true, "dependencies": { "@babel/core": "^7.20.0", "hermes-parser": "0.20.1", @@ -18734,15 +18573,13 @@ "version": "0.20.1", "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.20.1.tgz", "integrity": "sha512-SQpZK4BzR48kuOg0v4pb3EAGNclzIlqMj3Opu/mu7bbAoFw6oig6cEt/RAi0zTFW/iW6Iz9X9ggGuZTAZ/yZHg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/metro-babel-transformer/node_modules/hermes-parser": { "version": "0.20.1", "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.20.1.tgz", "integrity": "sha512-BL5P83cwCogI8D7rrDCgsFY0tdYUtmFP9XaXtl2IQjC+2Xo+4okjfXintlTxcIwl4qeGddEl28Z11kbVIw0aNA==", "dev": true, - "peer": true, "dependencies": { "hermes-estree": "0.20.1" } @@ -18752,7 +18589,6 @@ "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.80.8.tgz", "integrity": "sha512-5svz+89wSyLo7BxdiPDlwDTgcB9kwhNMfNhiBZPNQQs1vLFXxOkILwQiV5F2EwYT9DEr6OPZ0hnJkZfRQ8lDYQ==", "dev": true, - "peer": true, "dependencies": { "metro-core": "0.80.8", "rimraf": "^3.0.2" @@ -18766,7 +18602,6 @@ "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.80.8.tgz", "integrity": "sha512-qWKzxrLsRQK5m3oH8ePecqCc+7PEhR03cJE6Z6AxAj0idi99dHOSitTmY0dclXVB9vP2tQIAE8uTd8xkYGk8fA==", "dev": true, - "peer": true, "engines": { "node": ">=18" } @@ -18776,7 +18611,6 @@ "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.80.8.tgz", "integrity": "sha512-VGQJpfJawtwRzGzGXVUoohpIkB0iPom4DmSbAppKfumdhtLA8uVeEPp2GM61kL9hRvdbMhdWA7T+hZFDlo4mJA==", "dev": true, - "peer": true, "dependencies": { "connect": "^3.6.5", "cosmiconfig": "^5.0.5", @@ -18795,7 +18629,6 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "peer": true, "dependencies": { "sprintf-js": "~1.0.2" } @@ -18805,7 +18638,6 @@ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", "dev": true, - "peer": true, "dependencies": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", @@ -18821,7 +18653,6 @@ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", "dev": true, - "peer": true, "dependencies": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" @@ -18835,7 +18666,6 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, - "peer": true, "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -18849,7 +18679,6 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, - "peer": true, "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -18863,7 +18692,6 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", "dev": true, - "peer": true, "engines": { "node": ">=4" } @@ -18873,7 +18701,6 @@ "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.80.8.tgz", "integrity": "sha512-g6lud55TXeISRTleW6SHuPFZHtYrpwNqbyFIVd9j9Ofrb5IReiHp9Zl8xkAfZQp8v6ZVgyXD7c130QTsCz+vBw==", "dev": true, - "peer": true, "dependencies": { "lodash.throttle": "^4.1.1", "metro-resolver": "0.80.8" @@ -18887,7 +18714,6 @@ "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.80.8.tgz", "integrity": "sha512-eQXMFM9ogTfDs2POq7DT2dnG7rayZcoEgRbHPXvhUWkVwiKkro2ngcBE++ck/7A36Cj5Ljo79SOkYwHaWUDYDw==", "dev": true, - "peer": true, "dependencies": { "anymatch": "^3.0.3", "debug": "^2.2.0", @@ -18912,7 +18738,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "peer": true, "dependencies": { "ms": "2.0.0" } @@ -18921,15 +18746,13 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/metro-minify-terser": { "version": "0.80.8", "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.80.8.tgz", "integrity": "sha512-y8sUFjVvdeUIINDuW1sejnIjkZfEF+7SmQo0EIpYbWmwh+kq/WMj74yVaBWuqNjirmUp1YNfi3alT67wlbBWBQ==", "dev": true, - "peer": true, "dependencies": { "terser": "^5.15.0" }, @@ -18942,7 +18765,6 @@ "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.80.8.tgz", "integrity": "sha512-JdtoJkP27GGoZ2HJlEsxs+zO7jnDUCRrmwXJozTlIuzLHMRrxgIRRby9fTCbMhaxq+iA9c+wzm3iFb4NhPmLbQ==", "dev": true, - "peer": true, "engines": { "node": ">=18" } @@ -18952,7 +18774,6 @@ "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.80.8.tgz", "integrity": "sha512-2oScjfv6Yb79PelU1+p8SVrCMW9ZjgEiipxq7jMRn8mbbtWzyv3g8Mkwr+KwOoDFI/61hYPUbY8cUnu278+x1g==", "dev": true, - "peer": true, "dependencies": { "@babel/runtime": "^7.0.0" }, @@ -18965,7 +18786,6 @@ "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.80.8.tgz", "integrity": "sha512-+OVISBkPNxjD4eEKhblRpBf463nTMk3KMEeYS8Z4xM/z3qujGJGSsWUGRtH27+c6zElaSGtZFiDMshEb8mMKQg==", "dev": true, - "peer": true, "dependencies": { "@babel/traverse": "^7.20.0", "@babel/types": "^7.20.0", @@ -18985,7 +18805,6 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -18995,7 +18814,6 @@ "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.80.8.tgz", "integrity": "sha512-nwhYySk79jQhwjL9QmOUo4wS+/0Au9joEryDWw7uj4kz2yvw1uBjwmlql3BprQCBzRdB3fcqOP8kO8Es+vE31g==", "dev": true, - "peer": true, "dependencies": { "invariant": "^2.2.4", "metro-source-map": "0.80.8", @@ -19016,7 +18834,6 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -19026,7 +18843,6 @@ "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.80.8.tgz", "integrity": "sha512-sSu8VPL9Od7w98MftCOkQ1UDeySWbsIAS5I54rW22BVpPnI3fQ42srvqMLaJUQPjLehUanq8St6OMBCBgH/UWw==", "dev": true, - "peer": true, "dependencies": { "@babel/core": "^7.20.0", "@babel/generator": "^7.20.0", @@ -19043,7 +18859,6 @@ "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.80.8.tgz", "integrity": "sha512-+4FG3TQk3BTbNqGkFb2uCaxYTfsbuFOCKMMURbwu0ehCP8ZJuTUramkaNZoATS49NSAkRgUltgmBa4YaKZ5mqw==", "dev": true, - "peer": true, "dependencies": { "@babel/core": "^7.20.0", "@babel/generator": "^7.20.0", @@ -19066,15 +18881,13 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true, - "peer": true + "dev": true }, "node_modules/metro/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "peer": true, "dependencies": { "ms": "2.0.0" } @@ -19083,15 +18896,13 @@ "version": "0.20.1", "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.20.1.tgz", "integrity": "sha512-SQpZK4BzR48kuOg0v4pb3EAGNclzIlqMj3Opu/mu7bbAoFw6oig6cEt/RAi0zTFW/iW6Iz9X9ggGuZTAZ/yZHg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/metro/node_modules/hermes-parser": { "version": "0.20.1", "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.20.1.tgz", "integrity": "sha512-BL5P83cwCogI8D7rrDCgsFY0tdYUtmFP9XaXtl2IQjC+2Xo+4okjfXintlTxcIwl4qeGddEl28Z11kbVIw0aNA==", "dev": true, - "peer": true, "dependencies": { "hermes-estree": "0.20.1" } @@ -19100,15 +18911,13 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/metro/node_modules/source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -19118,7 +18927,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "peer": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -19131,7 +18939,6 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true, - "peer": true, "engines": { "node": ">=8.3.0" }, @@ -20847,7 +20654,6 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "dev": true, - "peer": true, "bin": { "mime": "cli.js" }, @@ -20992,7 +20798,6 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, - "peer": true, "dependencies": { "minimist": "^1.2.6" }, @@ -21083,7 +20888,6 @@ "resolved": "https://registry.npmjs.org/nocache/-/nocache-3.0.4.tgz", "integrity": "sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==", "dev": true, - "peer": true, "engines": { "node": ">=12.0.0" } @@ -21158,8 +20962,7 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/node-releases": { "version": "2.0.27", @@ -21172,7 +20975,6 @@ "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.15.0.tgz", "integrity": "sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==", "dev": true, - "peer": true, "engines": { "node": ">=0.12.0" }, @@ -21260,8 +21062,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/nypm": { "version": "0.3.8", @@ -21421,7 +21222,6 @@ "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.80.8.tgz", "integrity": "sha512-QHJQk/lXMmAW8I7AIM3in1MSlwe1umR72Chhi8B7Xnq6mzjhBKkA6Fy/zAhQnGkA4S912EPCEvTij5yh+EQTAA==", "dev": true, - "peer": true, "engines": { "node": ">=18" } @@ -22145,6 +21945,7 @@ "url": "https://github.com/sponsors/ai" } ], + "peer": true, "dependencies": { "nanoid": "^3.3.7", "picocolors": "^1.0.0", @@ -22734,6 +22535,7 @@ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true, + "peer": true, "bin": { "prettier": "bin/prettier.cjs" }, @@ -22922,7 +22724,6 @@ "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", "dev": true, - "peer": true, "dependencies": { "asap": "~2.0.6" } @@ -23151,6 +22952,7 @@ "version": "18.2.0", "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "peer": true, "dependencies": { "loose-envify": "^1.1.0" }, @@ -23360,7 +23162,6 @@ "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.28.5.tgz", "integrity": "sha512-cq/o30z9W2Wb4rzBefjv5fBalHU0rJGZCHAkf/RHSBWSSYwh8PlQTqqOJmgIIbBtpj27T6FIPXeomIjZtCNVqA==", "dev": true, - "peer": true, "dependencies": { "shell-quote": "^1.6.1", "ws": "^7" @@ -23371,7 +23172,6 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true, - "peer": true, "engines": { "node": ">=8.3.0" }, @@ -23428,6 +23228,7 @@ "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "peer": true, "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.0" @@ -23519,7 +23320,6 @@ "url": "https://github.com/sponsors/lavrton" } ], - "peer": true, "dependencies": { "@types/react-reconciler": "^0.28.2", "its-fine": "^1.1.1", @@ -23537,7 +23337,6 @@ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.28.8.tgz", "integrity": "sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==", "dev": true, - "peer": true, "dependencies": { "@types/react": "*" } @@ -23547,7 +23346,6 @@ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.29.0.tgz", "integrity": "sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==", "dev": true, - "peer": true, "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.0" @@ -23564,6 +23362,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-6.0.0.tgz", "integrity": "sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==", + "peer": true, "dependencies": { "@types/react": "*" }, @@ -23647,7 +23446,6 @@ "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", "dev": true, - "peer": true, "dependencies": { "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", @@ -23664,7 +23462,6 @@ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.19.tgz", "integrity": "sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==", "dev": true, - "peer": true, "dependencies": { "@types/yargs-parser": "*" } @@ -23674,7 +23471,6 @@ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", "dev": true, - "peer": true, "dependencies": { "@jest/types": "^26.6.2", "ansi-regex": "^5.0.0", @@ -23689,15 +23485,13 @@ "version": "0.13.11", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/react-native/node_modules/scheduler": { "version": "0.24.0-canary-efb381bbf-20230505", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.24.0-canary-efb381bbf-20230505.tgz", "integrity": "sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==", "dev": true, - "peer": true, "dependencies": { "loose-envify": "^1.1.0" } @@ -23707,7 +23501,6 @@ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.27.0.tgz", "integrity": "sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==", "dev": true, - "peer": true, "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.21.0" @@ -23724,7 +23517,6 @@ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", "dev": true, - "peer": true, "dependencies": { "loose-envify": "^1.1.0" } @@ -23734,7 +23526,6 @@ "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -23743,6 +23534,7 @@ "version": "5.3.4", "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", + "peer": true, "dependencies": { "@babel/runtime": "^7.12.13", "history": "^4.9.0", @@ -23810,7 +23602,6 @@ "resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz", "integrity": "sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==", "dev": true, - "peer": true, "dependencies": { "object-assign": "^4.1.1", "react-is": "^16.12.0 || ^17.0.0 || ^18.0.0" @@ -23842,7 +23633,6 @@ "resolved": "https://registry.npmjs.org/react-use-measure/-/react-use-measure-2.1.1.tgz", "integrity": "sha512-nocZhN26cproIiIduswYpV5y5lQpSQS1y/4KuvUCjSKmw7ZWIS/+g3aFnX3WdBkyuGUtTLif3UTqnLLhbDoQig==", "dev": true, - "peer": true, "dependencies": { "debounce": "^1.2.1" }, @@ -23998,8 +23788,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/readline/-/readline-1.3.0.tgz", "integrity": "sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/recast": { "version": "0.23.6", @@ -24482,7 +24271,6 @@ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -24507,8 +24295,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/requireindex": { "version": "1.2.0", @@ -24528,8 +24315,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/resolve": { "version": "1.22.11", @@ -24756,6 +24542,7 @@ "resolved": "https://registry.npmjs.org/sass/-/sass-1.72.0.tgz", "integrity": "sha512-Gpczt3WA56Ly0Mn8Sl21Vj94s1axi9hDIzDFn9Ph9x3C3p4nNyvsqJoQyVXKou6cBlfFWEgRW4rT8Tb4i3XnVA==", "dev": true, + "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -24859,6 +24646,7 @@ "version": "8.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -25030,7 +24818,6 @@ "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", "integrity": "sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -25205,8 +24992,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/set-function-length": { "version": "1.2.2", @@ -25464,7 +25250,6 @@ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", "dev": true, - "peer": true, "dependencies": { "ansi-styles": "^3.2.0", "astral-regex": "^1.0.0", @@ -25479,7 +25264,6 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, - "peer": true, "dependencies": { "color-convert": "^1.9.0" }, @@ -25492,7 +25276,6 @@ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, - "peer": true, "dependencies": { "color-name": "1.1.3" } @@ -25501,8 +25284,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/snake-case": { "version": "3.0.4", @@ -25669,7 +25451,6 @@ "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, - "peer": true, "dependencies": { "escape-string-regexp": "^2.0.0" }, @@ -25682,7 +25463,6 @@ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, - "peer": true, "engines": { "node": ">=8" } @@ -25691,15 +25471,13 @@ "version": "1.3.4", "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/stacktrace-parser": { "version": "0.1.10", "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", "dev": true, - "peer": true, "dependencies": { "type-fest": "^0.7.1" }, @@ -25712,7 +25490,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", "dev": true, - "peer": true, "engines": { "node": ">=8" } @@ -26032,8 +25809,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", - "dev": true, - "peer": true + "dev": true }, "node_modules/style-loader": { "version": "3.3.4", @@ -26078,8 +25854,7 @@ "version": "9.2.1", "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz", "integrity": "sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/supports-color": { "version": "7.2.0", @@ -26108,7 +25883,6 @@ "resolved": "https://registry.npmjs.org/suspend-react/-/suspend-react-0.1.3.tgz", "integrity": "sha512-aqldKgX9aZqpoDp3e8/BZ8Dm7x1pJl+qI3ZKxDN0i/IQTWUwBx/ManmlVJ3wowqbno6c2bmiIfs+Um6LbsjJyQ==", "dev": true, - "peer": true, "peerDependencies": { "react": ">=17.0" } @@ -26466,8 +26240,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", - "dev": true, - "peer": true + "dev": true }, "node_modules/through2": { "version": "2.0.5", @@ -26543,8 +26316,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true, - "peer": true + "dev": true }, "node_modules/to-regex-range": { "version": "5.0.1", @@ -26807,6 +26579,7 @@ "version": "5.4.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.3.tgz", "integrity": "sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -27525,15 +27298,13 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/vlq/-/vlq-1.0.1.tgz", "integrity": "sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==", - "dev": true, - "peer": true + "dev": true }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "peer": true, "dependencies": { "makeerror": "1.0.12" } @@ -27588,6 +27359,7 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.104.1.tgz", "integrity": "sha512-Qphch25abbMNtekmEGJmeRUhLDbe+QfiWTiqpKYkpCOWY64v9eyl+KRRLmqOFA2AvKPpc9DC6+u2n76tQLBoaA==", "license": "MIT", + "peer": true, "dependencies": { "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.8", @@ -27906,6 +27678,7 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -27998,8 +27771,7 @@ "version": "3.6.20", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==", - "dev": true, - "peer": true + "dev": true }, "node_modules/whatwg-url": { "version": "5.0.0", @@ -28089,8 +27861,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "dev": true, - "peer": true + "dev": true }, "node_modules/which-typed-array": { "version": "1.1.15", @@ -28243,7 +28014,6 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", "dev": true, - "peer": true, "dependencies": { "async-limiter": "~1.0.0" } @@ -28284,7 +28054,6 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, - "peer": true, "engines": { "node": ">=10" } @@ -28307,7 +28076,6 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, - "peer": true, "dependencies": { "cliui": "^8.0.1", "escalade": "^3.1.1", @@ -28326,7 +28094,6 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, - "peer": true, "engines": { "node": ">=12" } @@ -28335,15 +28102,13 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "peer": true + "dev": true }, "node_modules/yargs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "peer": true, "engines": { "node": ">=8" } @@ -28353,7 +28118,6 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -28368,7 +28132,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "peer": true, "dependencies": { "ansi-regex": "^5.0.1" }, From a6742e85b358775bd06d8c80c12d5953b56a15e7 Mon Sep 17 00:00:00 2001 From: Nikolaengel Date: Wed, 21 Jan 2026 19:36:45 +0300 Subject: [PATCH 02/22] docs-updatequickstart --- .../current/basic-guides/selectors.mdx | 24 +- .../current/quickstart/index.mdx | 63 ++-- .../current/quickstart/running-tests.mdx | 116 ++++++-- .../current/quickstart/writing-tests.mdx | 281 +++++++++++++++++- 4 files changed, 414 insertions(+), 70 deletions(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx index 8ecb8390..08fcc8c7 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx @@ -1,5 +1,7 @@ # Селекторы +## Введение + Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. ## WebDriverIO @@ -45,7 +47,7 @@ const isDisplayed = await loginForm.isDisplayed(); #### По типу атрибута -Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. +Для поиска элемента по атрибуту, используйте селектор вида `"input[type="name"]"`. ```javascript // Поиск всех чекбоксов @@ -73,7 +75,7 @@ const csrfValue = await hiddenField.getValue(); #### CSS-селекторы по атрибуту data-testid -Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. +Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `"data-testid"`. ```javascript // Поиск элемента по data-testid @@ -126,7 +128,7 @@ const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); #### CSS-псевдоселекторы -Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. +Для выбора элементов на основе их положения или состояния, используйте псевдоселекторы. ```javascript // Первый элемент списка @@ -163,7 +165,7 @@ const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); #### По тексту элемента -Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. +Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `"//element[text()="text"]"`. ```javascript // Точное совпадение текста @@ -194,7 +196,7 @@ const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗ #### По атрибутам -Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. +Для поиска элемента по атрибуту, используйте селектор вида `"//element[@type="atribute"]"`. ```javascript // Поиск по одному атрибуту @@ -230,7 +232,7 @@ const notDisabledButton = await browser.$("//button[not(@disabled)]"); #### Навигация по DOM -Исползуя XPath, вы можете навигировать по DOM-дереву. +С помощью XPath вы можете навигировать по DOM-дереву. ```javascript // Прямой родитель @@ -298,7 +300,7 @@ const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 ### Селекторы по Link Text -Селекторы по содержащемуся внутри тексту позволяют находить ссылки `()` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. +Селекторы по содержащемуся внутри тексту позволяют находить ссылки `()` по их тексту. Используйте `"=text"`, чтобы найти элемент с точным текстом и `"*=text"` для поиска по частичному совпадению текста. ```javascript // Полное совпадение текста ссылки @@ -424,7 +426,7 @@ const slotElements = await customElement.shadow$$(".slot-item"); ## Testing-library -Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). +Testing Library — это адаптер популярной философии Testing Library для Testplane. Он предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). ### ByRole @@ -458,7 +460,7 @@ await userEvent.click(agreeCheckbox); ### ByLabelText -Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. +Для поиска элементов форм по тексту их меток (`"label"`), используйте метод `getByLabelText`. ```javascript import { screen } from "@testing-library/dom"; @@ -482,7 +484,7 @@ await userEvent.type(passwordInput, "secure123"); ### ByPlaceholderText -Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. +Чтобы найти поле ввода по тексту `placeholder`, используйте метод `getByPlaceholderText`. ```javascript import { screen } from "@testing-library/dom"; @@ -570,7 +572,7 @@ expect(logo).toHaveAttribute("src", "/images/logo.png"); ### ByTitle -Чтобы найти элемент по атрибуту title, используйте метод getByTitle. +Чтобы найти элемент по атрибуту `title`, используйте метод `getByTitle`. ```javascript import { screen } from "@testing-library/dom"; diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx index de250999..4c060761 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx @@ -4,36 +4,59 @@ sidebar_position: 1 import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; +import Admonition from "@theme/Admonition"; -# Установка {#install} +# Установка и настройка -Запустите установщик testplane с помощью `npm`. +## Системные требования + +Чтобы начать работу с testplane, установите `Node.js` версии 18.0 и выше. + +## Установка {#install} + +Для запуска установщика testplane, с помощью `npm` выполните следующую команду: ```bash npm init testplane@latest YOUR_PROJECT_PATH ``` -Если вы не хотите использовать дефолты при инициализации проекта, а настроить его с помощью визарда, укажите опцию `-v`. +Чтобы настроить проект, а не использовать дефолты при его инициализации, укажите опцию `-v`. + +После выполнения команды установки, в директории проекта появится следующий набор файлов и папок: + +```bash +node_modules +testplane-tests + example.testplane.ts + ts.config.json +package-lock.json +package.json +testplane.config.ts +``` ## Настройка {#setup} -После выполнения команды, указанной выше, в корне проекта сгенерится файл `testplane.config.ts` с базовой настройкой. +В файле `testplane.config.ts` содержится базовый набор настроек для запуска тестов: ```typescript export default { - // https://testplane.io/ru/docs/v8/basic-guides/managing-browsers/ gridUrl: "local", baseUrl: "http://localhost", pageLoadTimeout: 0, httpTimeout: 60000, testTimeout: 90000, resetCursor: false, + + // В параметре sets содержится информация о директории, в которой находятся тесты + // и перечень браузеров, в которых они будут запускаться: sets: { desktop: { files: ["testplane-tests/**/*.testplane.(t|j)s"], browsers: ["chrome", "firefox"], }, }, + + // В поле `browsers` описана конфигурация используемых браузеров: browsers: { chrome: { headless: true, @@ -48,9 +71,9 @@ export default { }, }, }, + plugins: { "html-reporter/testplane": { - // https://github.com/gemini-testing/html-reporter enabled: true, path: "testplane-report", defaultView: "all", @@ -60,7 +83,7 @@ export default { }; ``` -Вы можете загрузить браузеры, описанные в конфиге, отдельно от запуска самого Testplane: +Чтобы загрузить браузеры, описанные в конфиге, отдельно от запуска самого Testplane, выполните команду: ```bash npx testplane install-deps @@ -68,31 +91,5 @@ npx testplane install-deps Без предварительного запуска команды, недостающие браузеры будут автоматически загружены с первым запуском Testplane. -## Создание теста {#test_creation} - -Перейдите в файл `tests/example.testplane.js` с тестом. В нем вы можете посмотреть пример теста или написать свой. Например, -```javascript -describe("github", async function () { - it("should find testplane", async function ({ browser }) { - await browser.url("https://github.com/gemini-testing/testplane"); - const elem = await browser.$("#readme h1"); - await expect(elem).toHaveText("Testplane"); - }); -}); -``` - -## Запуск теста {#test_running} - -Теперь вы можете запустить тесты: - -```bash -npx testplane -``` - -или запустить gui-режим и запустить тест через интерфейс в браузере - -```bash -npx testplane gui -``` diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index 2461ca29..210a3ab1 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -2,54 +2,120 @@ sidebar_position: 3 --- -# Запуск тестов +# Запуск и отладка -Используйте команду `npx testplane` для запуска всех тестов в вашем проекте. +## Запуск тестов -## Запуск конкретного файла +Для запуска тестов используйте команду: -Если вы хотите запустить всю группу тестов, которые находятся в конкретном файле, то укажите путь к этому файлу в качестве входного параметра для testplane: +```bash +npx testplane +``` + +Для запуска тестов в gui-режиме через интерфейс браузера используйте команду: ```bash -testplane src/features/Reviews/Reviews.test/MyReview/MyReview.a11y@touch-phone.testplane.js +npx testplane gui ``` +После выполнения одной из команд, тесты запустятся во всех браузерах, которые указаны в файле `testplane.config.ts`. -## Опция `--grep` +### Запуск конкретных тестов -Если же вы хотите запустить конкретный тест, то воспользуйтесь опцией `--grep`, указав в качестве ее значения полное имя теста: +`Grep`-фильтрация позволяет запускать тесты по названию, не меняя код. Это удобно для запуска подмножества тестов во время разработки. ```bash -testplane --grep "Доступность Оставление отзыва" +# Запустить тесты, название которых содержит "test name" +# Поиск происходит в describe() и it() блоках +npx testplane --grep "test name" + +# Инверсия grep - запустить все КРОМЕ совпадающих +# Полезно для исключения медленных или нестабильных тестов +npx testplane --grep "name" --invert ``` -## Директива `.only` +### Запуск в определенных браузерах -Ещё вы можете воспользоваться директивой `.only` для набора тестов `describe` и конкретного теста `it`, аналогично тому как это реализовано в `mocha` (см. раздел [exlusive tests](https://mochajs.org/#exclusive-tests)): +По умолчанию Testplane запускает тесты во всех браузерах из конфигурации. Флаг `--browser` позволяет выбрать конкретные браузеры для запуска. -Например: +```bash +# Запустить только в Chrome +# Имя браузера должно совпадать с ключом в конфиге +npx testplane --browser chrome -```javascript -describe.only("Доступность", function () { - // набор тестов... -}); +# Запустить в нескольких браузерах одновременно +# Полезно для кросс-браузерного тестирования +npx testplane --browser chrome --browser firefox ``` -или +### Параллельный запуск + +Testplane может запускать тесты параллельно в нескольких процессах, что значительно ускоряет выполнение больших тестовых наборов. + +```bash +# Запустить с 4 параллельными воркерами +# Каждый воркер - отдельный процесс Node.js +npx testplane --workers 4 + +# Альтернативно - настроить в конфигурации +# Это значение будет использоваться по умолчанию +module.exports = { + system: { + workers: 4 // Количество параллельных процессов + } +}; +``` + + +### Режим пользовательского интерфейса + +В Testplane вы можете работать с тестами в UI формате с помощью Testplane UI. + +![](/img/docs/html-reporter/html-reporter-demo.png) + +О процессах установки и настройки Testplane UI вы можете прочитать вот [здесь.](..//html-reporter//overview.mdx) + +## Отладка + +### Отладка с помощью консоли + +Самым доступным и простым способом отладки является вывод информации в консоль: + +### Browser.debug() + +В Testplane имеется встроенный инструмент для отладки - `browser.debug`. ```javascript -it.only("Оставление отзыва", async function () { - // код теста... +it('отладка с паузой', async ({browser}) => { + // Открываем тестируемую страницу + await browser.url('/page'); + + // browser.debug() останавливает выполнение теста + // и открывает интерактивную консоль (REPL - Read-Eval-Print Loop) + await browser.debug(); + + // После вызова debug() тест приостанавливается + // В консоли можно вводить команды WebdriverIO в реальном времени: + + // Примеры команд, которые можно вводить в REPL: + // > await browser.$('.button').click() - кликнуть по кнопке + // > await browser.getTitle() - получить заголовок страницы + // > await browser.$$('.items') - найти все элементы + // > .exit - выйти из режима отладки + + // Этот код выполнится только после выхода из debug() + await browser.$('.button').click(); }); + ``` -## Запуск тестов несколько раз {#running_tests_multiple_times} -Иногда может быть полезным запустить один и тот же тест несколько раз — например, для проверки стабильности. Плагин [@testplane/test-repeater][testplane-test-repeater] позволяет запустить тесты заданное количество раз. +### Отладка через Testplane UI -После установки и включения плагина вы можете запустить тесты нужное количество раз, используя следующую команду: +Наиболее удобным способом для работы с отладкой тестов является UI режим, в нем вы можете в реальном времени наблюдать выполнения тестов. -```bash -npx testplane --test-repeater-repeat 5 --grep 'Имя теста' -``` +![](/gif/docs/ui/run-debug.gif) + +И находить нестабильные тесты, медленные тесты или другие проблемы с помощью опций "сортировка" и "группировка". + +![](/gif/docs/ui/analytics.gif) -[testplane-test-repeater]: ../../plugins/testplane-test-repeater diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index 9b4bed96..ac8f8bd4 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -5,4 +5,283 @@ draft: true # Написание тестов - +## Пример + +Чтобы узнать, как написать тест, ознакомьтесь с примером: + +```javascript +describe("test examples", () => { + it("docs search test", async ({browser}) => { + await browser.openAndWait("https://testplane.io/"); + + // Find by tag name + const navBar = await browser.$("nav"); + + // Find by aria-label + await navBar.$("aria/Search").click(); + + // Find by placeholder + const fileSearchInput = await browser.findByPlaceholderText("Search docs"); + await fileSearchInput.waitForDisplayed(); + await fileSearchInput.setValue("config"); + + // Find by id + const fileSearchResults = await browser.$("#docsearch-list"); + + // Find by role + const fileSearchResultsItems = await fileSearchResults.findAllByRole("option"); + + await expect(fileSearchResultsItems.length).toBeGreaterThan(1); + }); +}); +``` + +Файл с `example.testplane.ts` находится в папке `testplane-tests`. + +## Базовый синтаксис + +### Навигация + +Для перемещения по страницам используйте метод `await browser.url()`. Testplane предоставляет методы для типичных навигационных действий: обновление страницы, переход назад/вперед по истории браузера. Все методы навигации являются асинхронными и должны использоваться с `await`: +```javascript +it('page navigation', async ({browser}) => { + // Открыть URL - базовый метод для загрузки страницы + await browser.url('https://example.com'); +}); +``` +Если на странице имеются элементы, которые отображаются с задержкой, для корректного выполнения тестов укажите явное ожидание: + +```javascript +await browser.url(""); +await browser.$('h1').waitForExist({ timeout: 5000 }); +const title = await browser.$('h1').getText(); +``` + +Либо используйте команду: + +```javascript +await browser.openAndWait(""); +``` +Команда `await browser.openAndWait()` по умолчанию дожидается загрузки всех необходимых элементов на странице. + +### Селекторы + +Testplane поддерживает различные стратегии поиска элементов: `CSS` селекторы (самые распространенные), текстовые селекторы (по содержимому), `XPath` для сложных запросов. Метод `$()` возвращает первый найденный элемент, а `$$()` - массив всех подходящих элементов: + +```javascript +it('different selectors', async ({browser}) => { + // CSS селекторы - стандартный способ поиска элементов + await browser.$('.class-name'); // По классу + await browser.$('#id-name'); // По ID + + // Текстовый селектор - поиск элемента с точным совпадением текста + // Знак = означает точное совпадение + const link = await browser.$('a=Click me'); + + // Частичное совпадение текста - знак * означает "содержит" + const button = await browser.$('button*=Submit'); + + // XPath - мощный язык запросов для сложных поисков + await browser.$('//button[@type="submit"]'); + + // Поиск нескольких элементов - возвращает массив + const items = await browser.$$('.list-item'); + console.log(items.length); // Количество найденных элементов +}); +``` + +### Взаимодействия с элементами + +Для поиска элементов используйте метод `$()` (один элемент) или `$$()` (множество элементов). После нахождения элемента можно выполнить различные действия: клик, ввод текста, двойной клик. Метод `setValue()` очищает поле и вводит новое значение, а `addValue()` добавляет текст к существующему: + +```javascript +it('clicks and text input', async ({browser}) => { + // Найти элемент по CSS селектору и выполнить клик + const button = await browser.$('.submit-button'); + await button.click(); + + // Найти поле ввода и установить значение (предварительно очистив поле) + const input = await browser.$('#username'); + await input.setValue('my-username'); + + // Очистить поле вручную и добавить текст к существующему содержимому + await input.clearValue(); + await input.addValue('new-text'); + + // Двойной клик - полезно для выделения текста или специальных действий + await button.doubleClick(); + + // Клик правой кнопкой мыши - для вызова контекстного меню + await button.click({button: 'right'}); +}); +``` + +### Assertions + +Testplane использует `expect API` из `WebdriverIO` для проверки состояния элементов и страницы. Все `assertions` асинхронные и автоматически ждут выполнения условия в течение заданного таймаута. Можно инвертировать проверку с помощью `.not`: + +```javascript +it('element checks', async ({browser}) => { + const element = await browser.$('.message'); + + // Проверка видимости элемента - элемент должен быть в DOM и visible + await expect(element).toBeDisplayed(); + // Инверсия - элемент не должен быть виден + await expect(element).not.toBeDisplayed(); + + // Проверка существования в DOM - элемент есть в разметке + await expect(element).toExist(); + + // Проверка текстового содержимого элемента + await expect(element).toHaveText('Expected text'); // Точное совпадение + await expect(element).toHaveTextContaining('partial'); // Частичное совпадение + + // Проверка атрибутов элемента + await expect(element).toHaveAttribute('href', '/link'); // Точное значение + await expect(element).toHaveAttributeContaining('class', 'active'); // Частичное + + // Проверка значения input/textarea элементов + const input = await browser.$('input'); + await expect(input).toHaveValue('value'); + + // Проверка URL текущей страницы + await expect(browser).toHaveUrl('https://example.com/page'); // Полный URL + await expect(browser).toHaveUrlContaining('/page'); // Часть URL + + // Проверка заголовка страницы (тег ) + await expect(browser).toHaveTitle('Page Title'); +}); +``` + +### Хуки + +Хуки позволяют выполнять код до или после тестов, что полезно для подготовки тестового окружения и очистки. `before/after` выполняются один раз для всего блока `describe`, а `beforeEach/afterEach` - перед/после каждого теста: + +```javascript +describe('Tests with hooks', () => { + // Выполняется один раз перед всеми тестами в блоке + // Используется для глобальной настройки, например, авторизации + before(async ({browser}) => { + await browser.url('/setup'); + }); + + // Выполняется один раз после всех тестов + // Полезно для финальной очистки ресурсов + after(async ({browser}) => { + // cleanup code + }); + + // Выполняется перед каждым тестом + // Гарантирует чистое начальное состояние для каждого теста + beforeEach(async ({browser}) => { + await browser.url('/'); + }); + + // Выполняется после каждого теста + // Очистка состояния между тестами (cookies, localStorage и т.д.) + afterEach(async ({browser}) => { + await browser.deleteCookies(); + }); + + it('test 1', async ({browser}) => { + // beforeEach -> test 1 -> afterEach + }); + + it('test 2', async ({browser}) => { + // beforeEach -> test 2 -> afterEach + }); +}); +``` + +### Ожидания + +Явные ожидания необходимы для работы с динамическим контентом, который загружается или изменяется асинхронно. Testplane автоматически ждет появления элементов, но для сложных сценариев можно использовать специальные методы ожидания: + +```javascript +it('waiting for elements', async ({browser}) => { + const element = await browser.$('.dynamic-content'); + + // Ждать пока элемент станет видимым (display !== none, visibility !== hidden) + // Таймаут по умолчанию можно переопределить + await element.waitForDisplayed({timeout: 5000}); + + // Ждать появления элемента в DOM (может быть невидимым) + await element.waitForExist(); + + // Ждать пока элемент станет кликабельным (видим и enabled) + // Полезно для кнопок, которые могут быть disabled + await element.waitForClickable(); + + // Кастомное условие ожидания с помощью waitUntil + // Функция проверяется повторно до истечения таймаута + await browser.waitUntil( + async () => { + const text = await element.getText(); + return text === 'Loaded'; + }, + { + timeout: 5000, + timeoutMsg: 'Text did not appear' // Кастомное сообщение об ошибке + } + ); +}); +``` + +### Работа с формами + +Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радио-кнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута: + +```javascript +it('form filling', async ({browser}) => { + // Ввод в текстовое поле - стандартный способ заполнения input элементов + await browser.$('#email').setValue('test@example.com'); + + // Работа с чекбоксом - клик переключает состояние checked/unchecked + const checkbox = await browser.$('#agree'); + await checkbox.click(); + + // Выбор радио-кнопки - поиск по значению value и клик + await browser.$('input[value="option1"]').click(); + + // Работа с выпадающим списком - несколько способов выбора опции + const select = await browser.$('#country'); + // Выбор по видимому тексту в списке + await select.selectByVisibleText('Russia'); + // Выбор по значению атрибута value + await select.selectByAttribute('value', 'ru'); +}); +``` + +### Работа с JavaScript кодом + +Иногда нужно выполнить произвольный JavaScript код в контексте страницы - например, для работы с `localStorage`, вызова функций или манипуляции `DOM` напрямую. Метод `execute()` выполняет код в браузере и может возвращать результат: + +```javascript +it('executing custom JS', async ({browser}) => { + await browser.url('/'); + + // Выполнить JavaScript в контексте браузера + // Код выполняется на странице, а не в Node.js + await browser.execute(() => { + window.localStorage.setItem('key', 'value'); + }); + + // Передача аргументов и получение результата + // Аргументы передаются после функции и доступны внутри нее + const result = await browser.execute((a, b) => { + return a + b; + }, 2, 3); + console.log(result); // 5 - результат выполнения в браузере + + // Выполнение кода на конкретном элементе + // Элемент передается как WebElement и доступен в функции + const element = await browser.$('.element'); + await browser.execute((el) => { + el.style.border = '2px solid red'; // Манипуляция стилями напрямую + }, element); +}); +``` + + + + From f109786bb05a74039fe4c640f5385eac5076d6b0 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 23 Jan 2026 01:30:19 +0300 Subject: [PATCH 03/22] docs: fix-quickstart --- .../current/quickstart/running-tests.mdx | 127 +++- .../current/quickstart/writing-tests.mdx | 614 +++++++++++++----- 2 files changed, 540 insertions(+), 201 deletions(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index 210a3ab1..f43c3bca 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -12,59 +12,114 @@ sidebar_position: 3 npx testplane ``` -Для запуска тестов в gui-режиме через интерфейс браузера используйте команду: +Также тесты можно запускать в gui—режиме, для этого выполните команду: ```bash npx testplane gui ``` -После выполнения одной из команд, тесты запустятся во всех браузерах, которые указаны в файле `testplane.config.ts`. -### Запуск конкретных тестов +### Запуск конкретного теста -`Grep`-фильтрация позволяет запускать тесты по названию, не меняя код. Это удобно для запуска подмножества тестов во время разработки. +У вас имеется набор тестов и вам нужно запустить только один из них. + +```javascript +const assert = require("assert"); + +describe("tests", () => { + it("Проверка отображения главной страницы", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const title = await browser.getTitle(); + assert.ok(title.includes("Testplane")); + }); + + it("Проверка наличия логотипа на главной странице", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const logo = await browser.$("a.navbar__brand"); + const isDisplayed = await logo.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + + it("Проверка навигационного меню", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const menuItems = await browser.$$("nav.navbar a.navbar__item"); + assert.ok(menuItems.length > 0); + }); + + it("Проверка наличия поля поиска", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const searchButton = await browser.$("button.DocSearch"); + const isExisting = await searchButton.isExisting(); + assert.strictEqual(isExisting, true); + }); +}); +``` +В таком случае выполните команду: ```bash -# Запустить тесты, название которых содержит "test name" -# Поиск происходит в describe() и it() блоках -npx testplane --grep "test name" +testplane --grep "Проверка наличия поля поиска" +``` +В кавычках вам необходимо написать содержимое скобок ключевого слова `it`. + +### Запуск тестов в конкретных браузерах -# Инверсия grep - запустить все КРОМЕ совпадающих -# Полезно для исключения медленных или нестабильных тестов -npx testplane --grep "name" --invert +По умолчанию тесты запускаются в тех браузерах, которые указаны в файле `testplane.config.ts`. + +```javascript +browsers: [ + "chrome", + "firefox" +] ``` +При выполнении команды `npx testplane` тесты запустятся в браузерах Google Chrome и Mozila Firefox. -### Запуск в определенных браузерах +```bash +# Запуск во всех браузерах (по умолчанию) +testplane +``` -По умолчанию Testplane запускает тесты во всех браузерах из конфигурации. Флаг `--browser` позволяет выбрать конкретные браузеры для запуска. +Чтобы выполнить тесты в конкретном браузере, используйте команду: ```bash -# Запустить только в Chrome -# Имя браузера должно совпадать с ключом в конфиге -npx testplane --browser chrome +# Запуск только в Chrome +testplane --browser chrome +``` + +Также вы можете указать конкретный браузер для работы в теле теста. -# Запустить в нескольких браузерах одновременно -# Полезно для кросс-браузерного тестирования -npx testplane --browser chrome --browser firefox +```javascript +// tests/browser-specific.test.js +describe("Browser specific tests", () => { + it("should work in all browsers", async ({browser}) => { + await browser.url("https://example.com"); + }); + + // Пропустить тест в Safari + testplane.skip.in("safari", "Feature not supported in Safari"); + it("should work only in Chrome and Firefox", async ({browser}) => { + await browser.url("https://example.com"); + // ... тело теста + }); + + // Запустить только в Chrome + testplane.only.in("chrome"); + it("should work only in Chrome", async ({browser}) => { + await browser.url("https://example.com"); + // ... тело теста + }); +}); ``` -### Параллельный запуск +### Запуск теста из конкретного файла -Testplane может запускать тесты параллельно в нескольких процессах, что значительно ускоряет выполнение больших тестовых наборов. +Чтобы запустить тесты из конкретного файла, выполните команду: ```bash -# Запустить с 4 параллельными воркерами -# Каждый воркер - отдельный процесс Node.js -npx testplane --workers 4 - -# Альтернативно - настроить в конфигурации -# Это значение будет использоваться по умолчанию -module.exports = { - system: { - workers: 4 // Количество параллельных процессов - } -}; +# Запуск конкретного файла +testplane ../testplane-tests/example.testplane.ts ``` +Где `../testplane-tests/example.testplane.ts` это путь к файлу с тестами. + ### Режим пользовательского интерфейса @@ -72,17 +127,19 @@ module.exports = { ![](/img/docs/html-reporter/html-reporter-demo.png) -О процессах установки и настройки Testplane UI вы можете прочитать вот [здесь.](..//html-reporter//overview.mdx) +О процессах установки и настройки Testplane UI вы можете прочитать в разделе [UI.](..//html-reporter//overview.mdx) ## Отладка -### Отладка с помощью консоли +### Отладка в gui—формате + +Отслеживать процесс выполнения тестов очень легко, если запустить их в gui—режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки и какого они характера. -Самым доступным и простым способом отладки является вывод информации в консоль: +Тут скриншот из gui testplane ### Browser.debug() -В Testplane имеется встроенный инструмент для отладки - `browser.debug`. +В Testplane имеется встроенный инструмент для отладки — `browser.debug`. ```javascript it('отладка с паузой', async ({browser}) => { diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index ac8f8bd4..a18fe170 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -5,9 +5,28 @@ draft: true # Написание тестов -## Пример +## Структура теста -Чтобы узнать, как написать тест, ознакомьтесь с примером: +Блок `describe` предназначен для группировки связанных тестов. + +```javascript +describe('Название группы тестов', () => { + it('описание того, что должно произойти', async ({browser}) => { + // Тело теста +}); +}); +``` +В блоке `it` описываются тестовые сценарии. + +```javascript +it('описание того, что должно произойти', async ({browser}) => { + // Тело теста +}); +``` + +### Пример + +После установки testplane, вы можете ознакомиться с примером теста, для этого перейдите в папку `testplane-tests` и откройте файл `example.testplane.ts`. ```javascript describe("test examples", () => { @@ -36,23 +55,19 @@ describe("test examples", () => { }); ``` -Файл с `example.testplane.ts` находится в папке `testplane-tests`. - ## Базовый синтаксис ### Навигация -Для перемещения по страницам используйте метод `await browser.url()`. Testplane предоставляет методы для типичных навигационных действий: обновление страницы, переход назад/вперед по истории браузера. Все методы навигации являются асинхронными и должны использоваться с `await`: +Для перемещения по страницам используйте метод: + ```javascript -it('page navigation', async ({browser}) => { - // Открыть URL - базовый метод для загрузки страницы - await browser.url('https://example.com'); -}); +await browser.url("https://testplane.io/ru/"); ``` Если на странице имеются элементы, которые отображаются с задержкой, для корректного выполнения тестов укажите явное ожидание: ```javascript -await browser.url(""); +await browser.url("https://testplane.io/ru/"); await browser.$('h1').waitForExist({ timeout: 5000 }); const title = await browser.$('h1').getText(); ``` @@ -60,225 +75,492 @@ const title = await browser.$('h1').getText(); Либо используйте команду: ```javascript -await browser.openAndWait(""); +await browser.openAndWait("https://testplane.io/ru/"); ``` Команда `await browser.openAndWait()` по умолчанию дожидается загрузки всех необходимых элементов на странице. ### Селекторы -Testplane поддерживает различные стратегии поиска элементов: `CSS` селекторы (самые распространенные), текстовые селекторы (по содержимому), `XPath` для сложных запросов. Метод `$()` возвращает первый найденный элемент, а `$$()` - массив всех подходящих элементов: +Testplane поддерживает различные стратегии поиска элементов: `CSS` селекторы (самые распространенные), текстовые селекторы (по содержимому), `XPath` для сложных запросов. Метод `$()` возвращает первый найденный элемент, а `$$()` — массив всех подходящих элементов: ```javascript -it('different selectors', async ({browser}) => { - // CSS селекторы - стандартный способ поиска элементов - await browser.$('.class-name'); // По классу - await browser.$('#id-name'); // По ID - - // Текстовый селектор - поиск элемента с точным совпадением текста - // Знак = означает точное совпадение - const link = await browser.$('a=Click me'); - - // Частичное совпадение текста - знак * означает "содержит" - const button = await browser.$('button*=Submit'); - - // XPath - мощный язык запросов для сложных поисков - await browser.$('//button[@type="submit"]'); - - // Поиск нескольких элементов - возвращает массив - const items = await browser.$$('.list-item'); - console.log(items.length); // Количество найденных элементов +const assert = require("assert"); + +describe("tests", () => { + it("Проверка отображения главной страницы", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const title = await browser.getTitle(); + assert.ok(title.includes("Testplane")); + }); + + it("Проверка наличия логотипа на главной странице", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const logo = await browser.$("a.navbar__brand"); + const isDisplayed = await logo.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + + it("Проверка навигационного меню", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const menuItems = await browser.$$("nav.navbar a.navbar__item"); + assert.ok(menuItems.length > 0); + }); + + it("Проверка наличия поля поиска", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + const searchButton = await browser.$("button.DocSearch"); + const isExisting = await searchButton.isExisting(); + assert.strictEqual(isExisting, true); + }); }); ``` ### Взаимодействия с элементами -Для поиска элементов используйте метод `$()` (один элемент) или `$$()` (множество элементов). После нахождения элемента можно выполнить различные действия: клик, ввод текста, двойной клик. Метод `setValue()` очищает поле и вводит новое значение, а `addValue()` добавляет текст к существующему: +Для поиска элементов используйте метод `$()` (один элемент) или `$$()` (множество элементов). После нахождения элемента можно выполнить различные действия: клик, ввод текста, двойной клик. ```javascript -it('clicks and text input', async ({browser}) => { - // Найти элемент по CSS селектору и выполнить клик - const button = await browser.$('.submit-button'); - await button.click(); - - // Найти поле ввода и установить значение (предварительно очистив поле) - const input = await browser.$('#username'); - await input.setValue('my-username'); - - // Очистить поле вручную и добавить текст к существующему содержимому - await input.clearValue(); - await input.addValue('new-text'); - - // Двойной клик - полезно для выделения текста или специальных действий - await button.doubleClick(); +const assert = require("assert"); + +describe("tests, () => { - // Клик правой кнопкой мыши - для вызова контекстного меню - await button.click({button: 'right'}); + it("Пример клика - открытие поиска", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + // Клик по кнопке поиска + const searchButton = await browser.$("button.DocSearch"); + await searchButton.waitForClickable({timeout: 5000}); + await searchButton.click(); + await browser.pause(1000); + + // Проверяем, что модальное окно поиска появилось + const searchModal = await browser.$(".DocSearch-Modal"); + const isDisplayed = await searchModal.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + + it("Пример ввода текста - поиск по документации", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + // Открываем поиск + const searchButton = await browser.$("button.DocSearch"); + await searchButton.waitForClickable({timeout: 5000}); + await searchButton.click(); + await browser.pause(500); + + // Вводим текст в поле поиска + const searchInput = await browser.$("input.DocSearch-Input"); + await searchInput.waitForDisplayed({timeout: 5000}); + await searchInput.setValue("browser"); + await browser.pause(1000); + + // Проверяем, что текст введен + const inputValue = await searchInput.getValue(); + assert.strictEqual(inputValue, "browser"); + }); + + it("Пример двойного клика - выделение текста заголовка", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + // Находим заголовок на главной странице + const heading = await browser.$("h1"); + await heading.waitForDisplayed({timeout: 5000}); + await heading.scrollIntoView(); + await browser.pause(500); + + // Двойной клик по заголовку + await heading.doubleClick(); + await browser.pause(500); + + // Проверяем, что элемент существует и отображается + const isDisplayed = await heading.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); }); ``` ### Assertions -Testplane использует `expect API` из `WebdriverIO` для проверки состояния элементов и страницы. Все `assertions` асинхронные и автоматически ждут выполнения условия в течение заданного таймаута. Можно инвертировать проверку с помощью `.not`: +В Testplane для проверки состояния элементов и страниц задействует `expect API` из `WebdriverIO` — это позволяет формулировать утверждения (`assertions`) о том, какими должны быть свойства элементов или страницы в целом. ```javascript -it('element checks', async ({browser}) => { - const element = await browser.$('.message'); - - // Проверка видимости элемента - элемент должен быть в DOM и visible - await expect(element).toBeDisplayed(); - // Инверсия - элемент не должен быть виден - await expect(element).not.toBeDisplayed(); - - // Проверка существования в DOM - элемент есть в разметке - await expect(element).toExist(); - - // Проверка текстового содержимого элемента - await expect(element).toHaveText('Expected text'); // Точное совпадение - await expect(element).toHaveTextContaining('partial'); // Частичное совпадение - - // Проверка атрибутов элемента - await expect(element).toHaveAttribute('href', '/link'); // Точное значение - await expect(element).toHaveAttributeContaining('class', 'active'); // Частичное - - // Проверка значения input/textarea элементов - const input = await browser.$('input'); - await expect(input).toHaveValue('value'); - - // Проверка URL текущей страницы - await expect(browser).toHaveUrl('https://example.com/page'); // Полный URL - await expect(browser).toHaveUrlContaining('/page'); // Часть URL - - // Проверка заголовка страницы (тег <title>) - await expect(browser).toHaveTitle('Page Title'); +const assert = require("assert"); + +describe("tests", () => { + + it("WebdriverIO assert - проверка URL", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + // WebdriverIO expect для browser + await expect(browser).toHaveUrl("https://testplane.io/ru/"); + }); + + it("WebdriverIO assert - проверка существования элемента", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const logo = await browser.$("a.navbar__brand"); + + // WebdriverIO expect для элемента + await expect(logo).toExist(); + }); + + it("WebdriverIO assert - проверка видимости элемента", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const searchButton = await browser.$("button.DocSearch"); + + // WebdriverIO expect + await expect(searchButton).toBeDisplayed(); + }); + + // Примеры с Jest ассертами + it("Jest assert - проверка заголовка страницы", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const title = await browser.getTitle(); + + // Jest expect + expect(title).toContain("Testplane"); + }); + + it("Jest assert - проверка количества элементов", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const menuItems = await browser.$$("nav.navbar a.navbar__item"); + + // Jest expect + expect(menuItems.length).toBeGreaterThan(0); + }); + + it("Jest assert - проверка атрибута элемента", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const docsLink = await browser.$("a[href='/ru/docs/v8/']"); + const href = await docsLink.getAttribute("href"); + + // Jest expect + expect(href).toBe("/ru/docs/v8/"); + }); + + it("Jest assert - проверка URL с регулярным выражением", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const currentUrl = await browser.getUrl(); + + // Jest expect с regex + expect(currentUrl).toMatch(/testplane\.io/); + }); }); ``` ### Хуки -Хуки позволяют выполнять код до или после тестов, что полезно для подготовки тестового окружения и очистки. `before/after` выполняются один раз для всего блока `describe`, а `beforeEach/afterEach` - перед/после каждого теста: +Хуки в Testplane — это специальные функции, которые автоматически выполняются в определенные моменты жизненного цикла тестов. Они позволяют подготовить окружение перед тестами и очистить его после выполнения. По умолчанию доступны два вида хуков — `beforeEach` и `afterEach`, первый выполняется перед каждым тестом, а второй после. + ```javascript -describe('Tests with hooks', () => { - // Выполняется один раз перед всеми тестами в блоке - // Используется для глобальной настройки, например, авторизации - before(async ({browser}) => { - await browser.url('/setup'); - }); +const assert = require("assert"); + +describe("Примеры работы с хуками", () => { - // Выполняется один раз после всех тестов - // Полезно для финальной очистки ресурсов - after(async ({browser}) => { - // cleanup code + // beforeEach - выполняется перед каждым тестом + beforeEach(async ({browser}) => { + console.log("--- Выполняется BEFOREEACH - перед каждым тестом ---"); + await browser.url("https://testplane.io/ru/"); + await browser.pause(500); + }); + + // afterEach - выполняется после каждого теста + afterEach(async ({browser}) => { + console.log("--- Выполняется AFTEREACH - после каждого теста ---"); + const currentUrl = await browser.getUrl(); + console.log("Текущий URL:", currentUrl); + // Можно делать скриншоты, очищать данные и т.д. }); + + it("Тест 1 - проверка заголовка", async ({browser}) => { + const title = await browser.getTitle(); + assert.ok(title.includes("Testplane")); + }); + + it("Тест 2 - проверка логотипа", async ({browser}) => { + const logo = await browser.$("a.navbar__brand"); + const isDisplayed = await logo.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + + it("Тест 3 - проверка поиска", async ({browser}) => { + const searchButton = await browser.$("button.DocSearch"); + const isExisting = await searchButton.isExisting(); + assert.strictEqual(isExisting, true); + }); +}); + +describe("Пример вложенных describe с хуками", () => { - // Выполняется перед каждым тестом - // Гарантирует чистое начальное состояние для каждого теста beforeEach(async ({browser}) => { - await browser.url('/'); + console.log("--- OUTER BEFOREEACH ---"); + await browser.url("https://testplane.io/ru/"); }); - - // Выполняется после каждого теста - // Очистка состояния между тестами (cookies, localStorage и т.д.) + afterEach(async ({browser}) => { - await browser.deleteCookies(); + console.log("--- OUTER AFTEREACH ---"); }); - - it('test 1', async ({browser}) => { - // beforeEach -> test 1 -> afterEach + + it("Внешний тест", async ({browser}) => { + const title = await browser.getTitle(); + assert.ok(title.length > 0); }); - - it('test 2', async ({browser}) => { - // beforeEach -> test 2 -> afterEach + + describe("Внутренний блок тестов", () => { + + beforeEach(async ({browser}) => { + console.log("--- INNER BEFOREEACH ---"); + // Сначала выполнится outer beforeEach, потом этот + await browser.url("https://testplane.io/ru/docs/v8/"); + }); + + afterEach(async ({browser}) => { + console.log("--- INNER AFTEREACH ---"); + // Сначала выполнится этот afterEach, потом outer + }); + + it("Внутренний тест 1", async ({browser}) => { + const currentUrl = await browser.getUrl(); + assert.ok(currentUrl.includes("docs")); + }); + + it("Внутренний тест 2", async ({browser}) => { + const heading = await browser.$("h1"); + const isDisplayed = await heading.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); }); }); ``` ### Ожидания -Явные ожидания необходимы для работы с динамическим контентом, который загружается или изменяется асинхронно. Testplane автоматически ждет появления элементов, но для сложных сценариев можно использовать специальные методы ожидания: +Явные ожидания необходимы для работы с динамическим контентом, который загружается или изменяется асинхронно. Testplane автоматически ждет появления элементов, но для сложных сценариев можно использовать специальные методы ожидания. ```javascript -it('waiting for elements', async ({browser}) => { - const element = await browser.$('.dynamic-content'); - - // Ждать пока элемент станет видимым (display !== none, visibility !== hidden) - // Таймаут по умолчанию можно переопределить - await element.waitForDisplayed({timeout: 5000}); - - // Ждать появления элемента в DOM (может быть невидимым) - await element.waitForExist(); - - // Ждать пока элемент станет кликабельным (видим и enabled) - // Полезно для кнопок, которые могут быть disabled - await element.waitForClickable(); +const assert = require("assert"); + +describe("Примеры ожиданий в Testplane", () => { - // Кастомное условие ожидания с помощью waitUntil - // Функция проверяется повторно до истечения таймаута - await browser.waitUntil( - async () => { - const text = await element.getText(); - return text === 'Loaded'; - }, - { + it("Ожидание появления и кликабельности элемента", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + // Ожидаем, что кнопка поиска появится на странице + const searchButton = await browser.$("button.DocSearch"); + await searchButton.waitForDisplayed({ timeout: 5000, - timeoutMsg: 'Text did not appear' // Кастомное сообщение об ошибке - } - ); + timeoutMsg: "Кнопка поиска не появилась в течение 5 секунд" + }); + + // Ожидаем, что элемент станет кликабельным + await searchButton.waitForClickable({ + timeout: 3000, + timeoutMsg: "Кнопка поиска не стала кликабельной" + }); + + await searchButton.click(); + + // Ожидаем появления модального окна поиска + const searchModal = await browser.$(".DocSearch-Modal"); + await searchModal.waitForDisplayed({timeout: 3000}); + + const isDisplayed = await searchModal.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + + it("Ожидание изменения текста элемента", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const heading = await browser.$("h1"); + + // Ожидаем, что элемент будет существовать + await heading.waitForExist({ + timeout: 5000, + timeoutMsg: "Заголовок не найден на странице" + }); + + // Ожидаем, что у элемента будет определенный текст + await heading.waitUntil( + async function() { + const text = await this.getText(); + return text.length > 0; + }, + { + timeout: 5000, + timeoutMsg: "Текст заголовка не появился" + } + ); + + const text = await heading.getText(); + assert.ok(text.length > 0); + }); + + it("Ожидание с использованием browser.waitUntil для проверки URL", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + const docsLink = await browser.$("a[href='/ru/docs/v8/']"); + await docsLink.waitForExist({timeout: 5000}); + + // Используем JavaScript click для надежности + await browser.execute((el) => el.click(), docsLink); + + // Ожидаем изменения URL с помощью browser.waitUntil + await browser.waitUntil( + async () => { + const currentUrl = await browser.getUrl(); + return currentUrl.includes("docs"); + }, + { + timeout: 5000, + timeoutMsg: "URL не изменился на страницу документации" + } + ); + + const finalUrl = await browser.getUrl(); + assert.ok(finalUrl.includes("docs")); + }); }); ``` ### Работа с формами -Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радио-кнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута: +Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радио—кнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута. ```javascript -it('form filling', async ({browser}) => { - // Ввод в текстовое поле - стандартный способ заполнения input элементов - await browser.$('#email').setValue('test@example.com'); - - // Работа с чекбоксом - клик переключает состояние checked/unchecked - const checkbox = await browser.$('#agree'); - await checkbox.click(); - - // Выбор радио-кнопки - поиск по значению value и клик - await browser.$('input[value="option1"]').click(); - - // Работа с выпадающим списком - несколько способов выбора опции - const select = await browser.$('#country'); - // Выбор по видимому тексту в списке - await select.selectByVisibleText('Russia'); - // Выбор по значению атрибута value - await select.selectByAttribute('value', 'ru'); +const assert = require("assert"); + +describe("Примеры работы с формами в Testplane", () => { + + it("Работа с чекбоксами через клик", async ({browser}) => { + // Для демонстрации используем страницу с формой + await browser.url("https://the-internet.herokuapp.com/checkboxes"); + + const checkbox1 = await browser.$("#checkboxes input:nth-child(1)"); + await checkbox1.waitForDisplayed({timeout: 5000}); + + // Проверяем начальное состояние + let isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, false); + + // Кликаем для выбора + await checkbox1.click(); + isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, true); + + // Кликаем еще раз для снятия выбора + await checkbox1.click(); + isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, false); + }); + + it("Работа с радио—кнопками через клик", async ({browser}) => { + await browser.url("https://the-internet.herokuapp.com/"); + + // Переходим на страницу с примерами + const link = await browser.$("a[href='/forgot_password']"); + await link.click(); + + // Работа с полем email (как пример радио-кнопок) + const emailInput = await browser.$("#email"); + await emailInput.waitForDisplayed({timeout: 5000}); + await emailInput.setValue("test@example.com"); + + const value = await emailInput.getValue(); + assert.ok(value.includes("test@example.com")); + }); + + it("Работа с выпадающим списком (select) — выбор по тексту", async ({browser}) => { + await browser.url("https://the-internet.herokuapp.com/dropdown"); + + const dropdown = await browser.$("#dropdown"); + await dropdown.waitForDisplayed({timeout: 5000}); + + // Выбор опции по видимому тексту + await dropdown.selectByVisibleText("Option 1"); + + // Проверяем выбранное значение + let selectedValue = await dropdown.getValue(); + assert.strictEqual(selectedValue, "1"); + + // Получаем текст выбранной опции + let selectedText = await dropdown.$("option:checked").getText(); + assert.strictEqual(selectedText, "Option 1"); + }); + + it("Отправка формы и проверка результата", async ({browser}) => { + await browser.url("https://the-internet.herokuapp.com/login"); + + // Заполняем форму + const usernameInput = await browser.$("#username"); + const passwordInput = await browser.$("#password"); + const submitButton = await browser.$("button[type='submit']"); + + await usernameInput.setValue("tomsmith"); + await passwordInput.setValue("SuperSecretPassword!"); + + // Отправляем форму + await submitButton.click(); + + // Ждем появления сообщения об успехе + const successMessage = await browser.$("#flash"); + await successMessage.waitForDisplayed({timeout: 5000}); + + const messageText = await successMessage.getText(); + assert.ok(messageText.includes("You logged into a secure area!")); + }); }); ``` ### Работа с JavaScript кодом -Иногда нужно выполнить произвольный JavaScript код в контексте страницы - например, для работы с `localStorage`, вызова функций или манипуляции `DOM` напрямую. Метод `execute()` выполняет код в браузере и может возвращать результат: +Иногда нужно выполнить произвольный JavaScript код в контексте страницы — например, для работы с `localStorage`, вызова функций или манипуляции `DOM` напрямую. Метод `execute()` выполняет код в браузере и может возвращать результат. ```javascript -it('executing custom JS', async ({browser}) => { - await browser.url('/'); +const assert = require("assert"); + +describe("Примеры работы с JavaScript кодом", () => { - // Выполнить JavaScript в контексте браузера - // Код выполняется на странице, а не в Node.js - await browser.execute(() => { - window.localStorage.setItem('key', 'value'); + it("Выполнение JavaScript кода в контексте страницы", async ({browser}) => { + await browser.url("https://testplane.io/ru/"); + + // Пример 1: Получение данных из localStorage + await browser.execute(() => { + localStorage.setItem("testKey", "testValue"); + localStorage.setItem("userName", "John Doe"); + }); + + const storageValue = await browser.execute(() => { + return localStorage.getItem("testKey"); + }); + assert.strictEqual(storageValue, "testValue"); + + // Пример 2: Манипуляция DOM — изменение текста элемента + const newText = await browser.execute(() => { + const heading = document.querySelector("h1"); + if (heading) { + const originalText = heading.textContent; + heading.textContent = "Измененный заголовок"; + return originalText; + } + return ""; + }); + + const modifiedHeading = await browser.$("h1"); + const currentText = await modifiedHeading.getText(); + assert.strictEqual(currentText, "Измененный заголовок"); + + // Пример 3: Вызов функции с параметрами + const sum = await browser.execute((a, b) => { + return a + b; + }, 5, 10); + assert.strictEqual(sum, 15); }); - - // Передача аргументов и получение результата - // Аргументы передаются после функции и доступны внутри нее - const result = await browser.execute((a, b) => { - return a + b; - }, 2, 3); - console.log(result); // 5 - результат выполнения в браузере - - // Выполнение кода на конкретном элементе - // Элемент передается как WebElement и доступен в функции - const element = await browser.$('.element'); - await browser.execute((el) => { - el.style.border = '2px solid red'; // Манипуляция стилями напрямую - }, element); }); ``` From ec6296bbe946643342fe095c432fa008b646ed06 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 23 Jan 2026 02:18:51 +0300 Subject: [PATCH 04/22] docs: quickstart-fix --- .../current/quickstart/running-tests.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index f43c3bca..a0ad1b11 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -165,7 +165,6 @@ it('отладка с паузой', async ({browser}) => { ``` - ### Отладка через Testplane UI Наиболее удобным способом для работы с отладкой тестов является UI режим, в нем вы можете в реальном времени наблюдать выполнения тестов. From bd295dd86a90a3db86c0750a4f84dce6f6d5ec7e Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 23 Jan 2026 02:23:58 +0300 Subject: [PATCH 05/22] docs: writingtests-fix --- .../current/quickstart/running-tests.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index a0ad1b11..34394e0c 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -12,7 +12,7 @@ sidebar_position: 3 npx testplane ``` -Также тесты можно запускать в gui—режиме, для этого выполните команду: +Также тесты можно запускать в `gui`—режиме, для этого выполните команду: ```bash npx testplane gui @@ -133,7 +133,7 @@ testplane ../testplane-tests/example.testplane.ts ### Отладка в gui—формате -Отслеживать процесс выполнения тестов очень легко, если запустить их в gui—режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки и какого они характера. +Отслеживать процесс выполнения тестов очень легко, если запустить их в `gui`—режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки и какого они характера. Тут скриншот из gui testplane From f12bc41eb9e36a47040494725b4f9f9512780636 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 23 Jan 2026 02:31:42 +0300 Subject: [PATCH 06/22] docs: runningtests-fix --- .../current/quickstart/running-tests.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index 34394e0c..5ec79c85 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -58,7 +58,7 @@ describe("tests", () => { ```bash testplane --grep "Проверка наличия поля поиска" ``` -В кавычках вам необходимо написать содержимое скобок ключевого слова `it`. +В кавычках вам необходимо передать содержимое скобок ключевого слова `it`. ### Запуск тестов в конкретных браузерах From 9246463b0185fb220c6ce99471d2cb0cf26c4e44 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Thu, 22 Jan 2026 16:39:00 +0300 Subject: [PATCH 07/22] docs: selectors --- docs/guides/selectors.mdx | 602 ++++++++++++++++++ .../current/guides/selectors.mdx | 602 ++++++++++++++++++ 2 files changed, 1204 insertions(+) create mode 100644 docs/guides/selectors.mdx create mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx diff --git a/docs/guides/selectors.mdx b/docs/guides/selectors.mdx new file mode 100644 index 00000000..8ecb8390 --- /dev/null +++ b/docs/guides/selectors.mdx @@ -0,0 +1,602 @@ +# Селекторы + +Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. + +## WebDriverIO + +WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. + +### CSS селекторы + +#### По классу + +Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. + +```javascript +// Поиск кнопки с классом "btn-primary" +const button = await browser.$(".btn-primary"); +await button.click(); + +// Поиск нескольких элементов +const menuItems = await browser.$$(".nav-item"); +console.log("Количество пунктов меню: ${menuItems.length}"); +``` +Стоит использовать, если: + +- класс является стабильным и не генерируется динамически; +- нужен быстрый и простой способ найти элемент; +- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); +- вы работаете с компонентными библиотеками, где классы являются частью API. + +#### По id + +Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. + +```javascript +// Поиск формы id +const loginForm = await browser.$("#login-form"); +const isDisplayed = await loginForm.isDisplayed(); +``` +Стоит использовать, если: + +- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); +- `id` является частью публичного API компонента; +- нужна максимальная производительность селектора (`id` — самый быстрый селектор). + +#### По типу атрибута + +Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. + +```javascript +// Поиск всех чекбоксов +const checkboxes = await browser.$$("input[type="checkbox"]"); +for (const checkbox of checkboxes) { + await checkbox.click(); +} + +// Поиск email input +const emailInput = await browser.$("input[type="email"]"); +await emailInput.setValue("test@example.com"); + +// Поиск скрытых полей +const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); +const csrfValue = await hiddenField.getValue(); +``` + +Стоит использовать, если: + +- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); +- вы тестируете формы и валидацию; +- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); +- вам нужно убедиться, что используется правильный тип поля для `accessibility`; +- вы тестируете различное поведение для разных типов полей. + +#### CSS-селекторы по атрибуту data-testid + +Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. + +```javascript +// Поиск элемента по data-testid +const userAvatar = await browser.$("[data-testid="user-avatar"]"); +await userAvatar.waitForDisplayed({ timeout: 5000 }); + +// Клик по кнопке с data-testid +const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); +await deleteButton.click(); + +// Получение текста из элемента +const errorMessage = await browser.$("[data-testid="error-notification"]"); +const text = await errorMessage.getText(); +expect(text).toContain("Ошибка валидации"); +``` +Стоит использовать, если: + +- создаёте селекторы специально для тестирования; +- нужна стабильность селекторов независимо от изменений UI/стилей; +- работаете в команде, где дизайнеры часто меняют классы и структуру; +- хотите явно пометить элементы, доступные для тестирования; + +#### CSS-комбинированные селекторы + +Комбинированные селекторы позволяют находить элементы в определённом контексте. + +```javascript +// Потомок: кнопка внутри модального окна +const modalButton = await browser.$(".modal .close-button"); +await modalButton.click(); + +// Прямой потомок: первый уровень вложенности +const navItem = await browser.$(".navigation > .nav-item"); + +// Соседний элемент +const errorLabel = await browser.$("input.invalid + .error-message"); +const errorText = await errorLabel.getText(); + +// Сложная комбинация +const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); +``` + +Стоит использовать, если: + +- нужно найти элемент в определённом контексте; +- работаете с повторяющейся структурой; +- нужно убедиться в правильной вложенности элементов; +- простые селекторы слишком неспецифичны; +- тестируете связанные элементы. + +#### CSS-псевдоселекторы + +Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. + +```javascript +// Первый элемент списка +const firstItem = await browser.$("ul.menu > li:first-child"); +await firstItem.click(); + +// Последний элемент +const lastItem = await browser.$(".breadcrumb > li:last-child"); +const currentPage = await lastItem.getText(); + +// N-ый элемент (третий пункт меню) +const thirdItem = await browser.$(".menu-item:nth-child(3)"); + +// Каждый второй элемент (чётные) +const evenRows = await browser.$$("table tr:nth-child(even)"); + +// Отключённые элементы +const disabledButtons = await browser.$$("button:disabled"); +expect(disabledButtons.length).toBe(2); + +// Проверенные чекбоксы +const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); +``` + +Стоит использовать, если: + +- тестируете позиционирование элементов; +- проверяете состояния элементов (`disabled`, `checked`, `focus`); +- работаете с таблицами и нужно выбрать определённую строку или столбец; +- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); +- нужно найти элемент по его позиции, когда нет других идентификаторов. + +### XPath селекторы + +#### По тексту элемента + +Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. + +```javascript +// Точное совпадение текста +const loginButton = await browser.$("//button[text()="Войти в систему"]"); +await loginButton.click(); + +// Частичное совпадение +const successMessage = await browser.$("//div[contains(text(), "успешно")]"); +await successMessage.waitForDisplayed(); + +// Текст с пробелами и переносами +const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); + +// Поиск по тексту в дочернем элементе +const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); + +// Case-insensitive поиск (XPath 2.0) +const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); +``` + +Стоит использовать, если: + +- текст элемента уникален и стабилен (названия кнопок, заголовки); +- нет других идентификаторов (нет `data-testid`, `id`, классов); +- тестируете, что правильный текст отображается в правильном месте; +- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; +- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. + +#### По атрибутам + +Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. + +```javascript +// Поиск по одному атрибуту +const nameInput = await browser.$("//input[@name="username"]"); +await nameInput.setValue("john_doe"); + +// Множественные условия (AND) +const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); + +// Условие OR +const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); + +// Поиск по началу значения атрибута +const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); + +// Поиск по концу значения атрибута +const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); + +// Поиск по частичному совпадению атрибута +const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); + +// NOT условие +const notDisabledButton = await browser.$("//button[not(@disabled)]"); +``` + +Стоит использовать, если: + +- нужны сложные условия поиска (комбинации атрибутов); +- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); +- нужна гибкость в поиске (частичные совпадения, начало/конец строки); +- CSS-селекторы не могут выразить нужную логику; +- нужно найти элемент по отсутствию атрибута. + +#### Навигация по DOM + +Исползуя XPath, вы можете навигировать по DOM-дереву. + +```javascript +// Прямой родитель +const parentDiv = await browser.$("//input[@name="email"]/.."); + +// Предок с условием +const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); + +// Следующий сиблинг +const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); + +// Предыдущий сиблинг +const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); + +// Все потомки +const allInputs = await browser.$$("//form[@id="checkout"]//input"); + +// Прямые дети +const directChildren = await browser.$$("//ul[@class="menu"]/li"); + +// Поиск «дяди» элемента (родитель -> сиблинг родителя) +const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); +``` + +Стоит использовать, если: + +- нужно найти элемент относительно другого известного элемента; +- структура DOM сложна, но относительные позиции стабильны; +- тестируете связанные элементы (label и input, ошибка рядом с полем); +- нужно подняться вверх по DOM-дереву от найденного элемента; +- работаете с семантической структурой HTML (заголовок и следующая за ним секция). + +#### XPath: индексы и позиции + +XPath позволяет выбирать элементы по их позиции в наборе результатов. + +```javascript +// Первый элемент в результатах XPath +const firstButton = await browser.$("(//button[@class="action"])[1]"); +await firstButton.click(); + +// Последний элемент +const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); + +// Второй элемент +const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); + +// Предпоследний +const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); + +// Диапазон элементов (все кроме первого) +const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); + +// Каждый третий элемент +const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); +``` + +Стоит использовать, если: + +- нужен доступ к элементу по его позиции в наборе результатов; +- тестируете пагинацию или списки с определённым порядком; +- работаете с таблицами и нужна конкретная строка; +- нужен первый или последний элемент среди нескольких одинаковых; +- тестируете сортировку (проверка, что элемент на правильной позиции). + +### Селекторы по Link Text + +Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. + +```javascript +// Полное совпадение текста ссылки +const loginLink = await browser.$("=Войти в систему"); +await loginLink.click(); + +// Частичное совпадение +const docsLink = await browser.$("*=Документация"); +await docsLink.click(); +``` +Стоит использовать, если: + +- работаете с навигационными ссылками с уникальным текстом; +- тестируете меню и навигацию сайта; +- текст ссылки является частью требований и не должен меняться; +- нужна простота и читаемость теста; +- тестируете наличие ссылок с правильным текстом на странице. + +### Селекторы по имени тега + +Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. + +```javascript +// Поиск первой кнопки на странице +const button = await browser.$("button"); +await button.click(); + +// Все параграфы +const paragraphs = await browser.$$("p"); +const textsArray = await Promise.all( + paragraphs.map(p => p.getText()) +); + +// Все изображения +const images = await browser.$$("img"); +for (const img of images) { + const alt = await img.getAttribute("alt"); + expect(alt).not.toBe(""); // проверка accessibility +} + +// Форма +const form = await browser.$("form"); +await form.waitForDisplayed(); + +// Таблица +const table = await browser.$("table"); +const rows = await table.$$("tr"); +``` + +Стоит использовать, если: + +- на странице один элемент данного типа (например, единственная форма); +- нужно получить все элементы определённого типа для массовой проверки; +- тестируете семантичность HTML (наличие правильных тегов); +- работаете с базовой HTML-структурой (`form`, `table`, `ul`); +- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). + +### React селекторы + +Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. + +```javascript +// Поиск React-компонента по имени +const myButton = await browser.react$("MyButton"); +await myButton.click(); + +// С фильтрацией по параметрами +const primaryButton = await browser.react$("Button", { + props: { variant: "primary", size: "large" } +}); + +// С фильтрацией по state +const openModal = await browser.react$("Modal", { + state: { isOpen: true, activeTab: 'settings' } +}); + +// Все экземпляры компонента +const allCards = await browser.react$$("ProductCard"); +console.log("Найдено карточек: ${allCards.length}"); + +// Вложенный поиск +const form = await browser.react$("CheckoutForm"); +const submitButton = await form.react$("SubmitButton"); + +// С комплексными параметрами +const userProfile = await browser.react$("UserProfile", { + props: { + user: { id: 123, role: "admin" }, + editable: true + } +}); +``` + +Стоит использовать, если: + +- работаете с React-приложением и имеете доступ к исходному коду; +- нужно найти компонент по его параметрам или `state`; +- тестируете, что компонент рендерится с правильными данными; +- структура `DOM` может меняться, но API компонента стабилен; +- нужна глубокая интеграция с React DevTools. + +### Shadow DOM селекторы + +Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. + +```javascript +// Простой доступ в Shadow DOM +const customElement = await browser.$("my-custom-element"); +const button = await customElement.shadow$("button"); +await button.click(); + +// Множественные элементы в Shadow DOM +const slotElements = await customElement.shadow$$(".slot-item"); +``` + +Стоит использовать, если: + +- работаете с Web Components и Custom Elements; +- приложение использует Shadow DOM для инкапсуляции стилей; +- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); +- нужен доступ к элементам внутри shadow root; +- работаете с дизайн-системой на базе Web Components. + +## Testing-library + +Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). + +### ByRole + +`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск кнопки +const submitButton = screen.getByRole("button", { name: /submit/i }); +await userEvent.click(submitButton); + +// Поиск текстового поля +const emailInput = screen.getByRole('textbox', { name: /email/i }); +await userEvent.type(emailInput, "test@example.com"); + +// Поиск чекбокса +const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); +await userEvent.click(agreeCheckbox); +``` + +Стоит использовать, если: + +- для любых интерактивных элементов (кнопки, ссылки, поля ввода); +- для структурных элементов (`navigation`, `main`, `header`, `footer`); +- для форм и их элементов (`radio`, `checkbox`, `combobox`); +- для заголовков и важных текстовых элементов; +- для списков и таблиц. + + +### ByLabelText + +Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по тексту label (полное совпадение) +const emailInput = screen.getByLabelText("Email Address"); +await userEvent.type(emailInput, "user@example.com"); + +// Поиск с регулярным выражением (частичное совпадение, case-insensitive) +const passwordInput = screen.getByLabelText(/password/i); +await userEvent.type(passwordInput, "secure123"); +``` + +Стоит использовать, если: + +- работаете с формами; +- нужно найти input, select, textarea по связанной метке; +- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); +- метка уникальна и описательна. + +### ByPlaceholderText + +Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по placeholder +const searchInput = screen.getByPlaceholderText("Search..."); +await userEvent.type(searchInput, "testing library"); + +// С регулярным выражением +const emailInput = screen.getByPlaceholderText(/enter.*email/i); +await userEvent.type(emailInput, "test@example.com"); +``` + +Стоит использовать, если: + +- у поля нет `label`, но есть `placeholder`; +- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; +- `placeholder` достаточно описателен и уникален. + +### ByText + +Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по точному тексту +const heading = screen.getByText("Welcome to our application"); +expect(heading).toBeInTheDocument(); + +// С регулярным выражением (частичное совпадение) +const errorMessage = screen.getByText(/error.*occurred/i); +expect(errorMessage).toHaveClass("error"); +``` + +Стоит использовать, если: + +- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); +- занимаетесь проверкой отображения текста на странице; +- текст уникален и является частью требований. + +### ByDisplayValue + +Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск input с конкретным значением +const emailInput = screen.getByDisplayValue("user@example.com"); +expect(emailInput).toBeInTheDocument(); + +// Поиск с регулярным выражением +const searchInput = screen.getByDisplayValue(/search query/i); +``` + +Стоит использовать, если: + +- необходимо протестировать предзаполненных форм (edit forms, profile pages); +- нужно проверить установку корректного значения после действия; +- необходимо найти элемент по его текущему значению, а не по label. + +### ByAltText + +Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск изображения по alt тексту +const logo = screen.getByAltText("Company Logo"); +expect(logo).toBeInTheDocument(); +expect(logo).toHaveAttribute("src", "/images/logo.png"); +``` + +Стоит использовать, если: + +- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); +- необходимо проверить доступность изображений (наличие `alt` обязательно); +- `alt`-текст достаточно описателен и уникален. + +### ByTitle + +Чтобы найти элемент по атрибуту title, используйте метод getByTitle. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск элемента по title атрибуту +const closeButton = screen.getByTitle("Close dialog"); +await userEvent.click(closeButton); +``` + +Стоит использовать, если: + +- необходимо работать с элементами, которые используют `title` для `tooltips`; +- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); +- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). + +### ByTestId + +`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Базовое использование +const submitButton = screen.getByTestId("submit-button"); +await userEvent.click(submitButton); +``` + diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx new file mode 100644 index 00000000..8ecb8390 --- /dev/null +++ b/i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx @@ -0,0 +1,602 @@ +# Селекторы + +Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. + +## WebDriverIO + +WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. + +### CSS селекторы + +#### По классу + +Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. + +```javascript +// Поиск кнопки с классом "btn-primary" +const button = await browser.$(".btn-primary"); +await button.click(); + +// Поиск нескольких элементов +const menuItems = await browser.$$(".nav-item"); +console.log("Количество пунктов меню: ${menuItems.length}"); +``` +Стоит использовать, если: + +- класс является стабильным и не генерируется динамически; +- нужен быстрый и простой способ найти элемент; +- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); +- вы работаете с компонентными библиотеками, где классы являются частью API. + +#### По id + +Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. + +```javascript +// Поиск формы id +const loginForm = await browser.$("#login-form"); +const isDisplayed = await loginForm.isDisplayed(); +``` +Стоит использовать, если: + +- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); +- `id` является частью публичного API компонента; +- нужна максимальная производительность селектора (`id` — самый быстрый селектор). + +#### По типу атрибута + +Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. + +```javascript +// Поиск всех чекбоксов +const checkboxes = await browser.$$("input[type="checkbox"]"); +for (const checkbox of checkboxes) { + await checkbox.click(); +} + +// Поиск email input +const emailInput = await browser.$("input[type="email"]"); +await emailInput.setValue("test@example.com"); + +// Поиск скрытых полей +const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); +const csrfValue = await hiddenField.getValue(); +``` + +Стоит использовать, если: + +- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); +- вы тестируете формы и валидацию; +- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); +- вам нужно убедиться, что используется правильный тип поля для `accessibility`; +- вы тестируете различное поведение для разных типов полей. + +#### CSS-селекторы по атрибуту data-testid + +Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. + +```javascript +// Поиск элемента по data-testid +const userAvatar = await browser.$("[data-testid="user-avatar"]"); +await userAvatar.waitForDisplayed({ timeout: 5000 }); + +// Клик по кнопке с data-testid +const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); +await deleteButton.click(); + +// Получение текста из элемента +const errorMessage = await browser.$("[data-testid="error-notification"]"); +const text = await errorMessage.getText(); +expect(text).toContain("Ошибка валидации"); +``` +Стоит использовать, если: + +- создаёте селекторы специально для тестирования; +- нужна стабильность селекторов независимо от изменений UI/стилей; +- работаете в команде, где дизайнеры часто меняют классы и структуру; +- хотите явно пометить элементы, доступные для тестирования; + +#### CSS-комбинированные селекторы + +Комбинированные селекторы позволяют находить элементы в определённом контексте. + +```javascript +// Потомок: кнопка внутри модального окна +const modalButton = await browser.$(".modal .close-button"); +await modalButton.click(); + +// Прямой потомок: первый уровень вложенности +const navItem = await browser.$(".navigation > .nav-item"); + +// Соседний элемент +const errorLabel = await browser.$("input.invalid + .error-message"); +const errorText = await errorLabel.getText(); + +// Сложная комбинация +const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); +``` + +Стоит использовать, если: + +- нужно найти элемент в определённом контексте; +- работаете с повторяющейся структурой; +- нужно убедиться в правильной вложенности элементов; +- простые селекторы слишком неспецифичны; +- тестируете связанные элементы. + +#### CSS-псевдоселекторы + +Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. + +```javascript +// Первый элемент списка +const firstItem = await browser.$("ul.menu > li:first-child"); +await firstItem.click(); + +// Последний элемент +const lastItem = await browser.$(".breadcrumb > li:last-child"); +const currentPage = await lastItem.getText(); + +// N-ый элемент (третий пункт меню) +const thirdItem = await browser.$(".menu-item:nth-child(3)"); + +// Каждый второй элемент (чётные) +const evenRows = await browser.$$("table tr:nth-child(even)"); + +// Отключённые элементы +const disabledButtons = await browser.$$("button:disabled"); +expect(disabledButtons.length).toBe(2); + +// Проверенные чекбоксы +const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); +``` + +Стоит использовать, если: + +- тестируете позиционирование элементов; +- проверяете состояния элементов (`disabled`, `checked`, `focus`); +- работаете с таблицами и нужно выбрать определённую строку или столбец; +- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); +- нужно найти элемент по его позиции, когда нет других идентификаторов. + +### XPath селекторы + +#### По тексту элемента + +Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. + +```javascript +// Точное совпадение текста +const loginButton = await browser.$("//button[text()="Войти в систему"]"); +await loginButton.click(); + +// Частичное совпадение +const successMessage = await browser.$("//div[contains(text(), "успешно")]"); +await successMessage.waitForDisplayed(); + +// Текст с пробелами и переносами +const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); + +// Поиск по тексту в дочернем элементе +const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); + +// Case-insensitive поиск (XPath 2.0) +const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); +``` + +Стоит использовать, если: + +- текст элемента уникален и стабилен (названия кнопок, заголовки); +- нет других идентификаторов (нет `data-testid`, `id`, классов); +- тестируете, что правильный текст отображается в правильном месте; +- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; +- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. + +#### По атрибутам + +Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. + +```javascript +// Поиск по одному атрибуту +const nameInput = await browser.$("//input[@name="username"]"); +await nameInput.setValue("john_doe"); + +// Множественные условия (AND) +const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); + +// Условие OR +const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); + +// Поиск по началу значения атрибута +const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); + +// Поиск по концу значения атрибута +const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); + +// Поиск по частичному совпадению атрибута +const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); + +// NOT условие +const notDisabledButton = await browser.$("//button[not(@disabled)]"); +``` + +Стоит использовать, если: + +- нужны сложные условия поиска (комбинации атрибутов); +- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); +- нужна гибкость в поиске (частичные совпадения, начало/конец строки); +- CSS-селекторы не могут выразить нужную логику; +- нужно найти элемент по отсутствию атрибута. + +#### Навигация по DOM + +Исползуя XPath, вы можете навигировать по DOM-дереву. + +```javascript +// Прямой родитель +const parentDiv = await browser.$("//input[@name="email"]/.."); + +// Предок с условием +const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); + +// Следующий сиблинг +const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); + +// Предыдущий сиблинг +const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); + +// Все потомки +const allInputs = await browser.$$("//form[@id="checkout"]//input"); + +// Прямые дети +const directChildren = await browser.$$("//ul[@class="menu"]/li"); + +// Поиск «дяди» элемента (родитель -> сиблинг родителя) +const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); +``` + +Стоит использовать, если: + +- нужно найти элемент относительно другого известного элемента; +- структура DOM сложна, но относительные позиции стабильны; +- тестируете связанные элементы (label и input, ошибка рядом с полем); +- нужно подняться вверх по DOM-дереву от найденного элемента; +- работаете с семантической структурой HTML (заголовок и следующая за ним секция). + +#### XPath: индексы и позиции + +XPath позволяет выбирать элементы по их позиции в наборе результатов. + +```javascript +// Первый элемент в результатах XPath +const firstButton = await browser.$("(//button[@class="action"])[1]"); +await firstButton.click(); + +// Последний элемент +const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); + +// Второй элемент +const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); + +// Предпоследний +const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); + +// Диапазон элементов (все кроме первого) +const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); + +// Каждый третий элемент +const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); +``` + +Стоит использовать, если: + +- нужен доступ к элементу по его позиции в наборе результатов; +- тестируете пагинацию или списки с определённым порядком; +- работаете с таблицами и нужна конкретная строка; +- нужен первый или последний элемент среди нескольких одинаковых; +- тестируете сортировку (проверка, что элемент на правильной позиции). + +### Селекторы по Link Text + +Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. + +```javascript +// Полное совпадение текста ссылки +const loginLink = await browser.$("=Войти в систему"); +await loginLink.click(); + +// Частичное совпадение +const docsLink = await browser.$("*=Документация"); +await docsLink.click(); +``` +Стоит использовать, если: + +- работаете с навигационными ссылками с уникальным текстом; +- тестируете меню и навигацию сайта; +- текст ссылки является частью требований и не должен меняться; +- нужна простота и читаемость теста; +- тестируете наличие ссылок с правильным текстом на странице. + +### Селекторы по имени тега + +Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. + +```javascript +// Поиск первой кнопки на странице +const button = await browser.$("button"); +await button.click(); + +// Все параграфы +const paragraphs = await browser.$$("p"); +const textsArray = await Promise.all( + paragraphs.map(p => p.getText()) +); + +// Все изображения +const images = await browser.$$("img"); +for (const img of images) { + const alt = await img.getAttribute("alt"); + expect(alt).not.toBe(""); // проверка accessibility +} + +// Форма +const form = await browser.$("form"); +await form.waitForDisplayed(); + +// Таблица +const table = await browser.$("table"); +const rows = await table.$$("tr"); +``` + +Стоит использовать, если: + +- на странице один элемент данного типа (например, единственная форма); +- нужно получить все элементы определённого типа для массовой проверки; +- тестируете семантичность HTML (наличие правильных тегов); +- работаете с базовой HTML-структурой (`form`, `table`, `ul`); +- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). + +### React селекторы + +Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. + +```javascript +// Поиск React-компонента по имени +const myButton = await browser.react$("MyButton"); +await myButton.click(); + +// С фильтрацией по параметрами +const primaryButton = await browser.react$("Button", { + props: { variant: "primary", size: "large" } +}); + +// С фильтрацией по state +const openModal = await browser.react$("Modal", { + state: { isOpen: true, activeTab: 'settings' } +}); + +// Все экземпляры компонента +const allCards = await browser.react$$("ProductCard"); +console.log("Найдено карточек: ${allCards.length}"); + +// Вложенный поиск +const form = await browser.react$("CheckoutForm"); +const submitButton = await form.react$("SubmitButton"); + +// С комплексными параметрами +const userProfile = await browser.react$("UserProfile", { + props: { + user: { id: 123, role: "admin" }, + editable: true + } +}); +``` + +Стоит использовать, если: + +- работаете с React-приложением и имеете доступ к исходному коду; +- нужно найти компонент по его параметрам или `state`; +- тестируете, что компонент рендерится с правильными данными; +- структура `DOM` может меняться, но API компонента стабилен; +- нужна глубокая интеграция с React DevTools. + +### Shadow DOM селекторы + +Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. + +```javascript +// Простой доступ в Shadow DOM +const customElement = await browser.$("my-custom-element"); +const button = await customElement.shadow$("button"); +await button.click(); + +// Множественные элементы в Shadow DOM +const slotElements = await customElement.shadow$$(".slot-item"); +``` + +Стоит использовать, если: + +- работаете с Web Components и Custom Elements; +- приложение использует Shadow DOM для инкапсуляции стилей; +- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); +- нужен доступ к элементам внутри shadow root; +- работаете с дизайн-системой на базе Web Components. + +## Testing-library + +Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). + +### ByRole + +`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск кнопки +const submitButton = screen.getByRole("button", { name: /submit/i }); +await userEvent.click(submitButton); + +// Поиск текстового поля +const emailInput = screen.getByRole('textbox', { name: /email/i }); +await userEvent.type(emailInput, "test@example.com"); + +// Поиск чекбокса +const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); +await userEvent.click(agreeCheckbox); +``` + +Стоит использовать, если: + +- для любых интерактивных элементов (кнопки, ссылки, поля ввода); +- для структурных элементов (`navigation`, `main`, `header`, `footer`); +- для форм и их элементов (`radio`, `checkbox`, `combobox`); +- для заголовков и важных текстовых элементов; +- для списков и таблиц. + + +### ByLabelText + +Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по тексту label (полное совпадение) +const emailInput = screen.getByLabelText("Email Address"); +await userEvent.type(emailInput, "user@example.com"); + +// Поиск с регулярным выражением (частичное совпадение, case-insensitive) +const passwordInput = screen.getByLabelText(/password/i); +await userEvent.type(passwordInput, "secure123"); +``` + +Стоит использовать, если: + +- работаете с формами; +- нужно найти input, select, textarea по связанной метке; +- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); +- метка уникальна и описательна. + +### ByPlaceholderText + +Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по placeholder +const searchInput = screen.getByPlaceholderText("Search..."); +await userEvent.type(searchInput, "testing library"); + +// С регулярным выражением +const emailInput = screen.getByPlaceholderText(/enter.*email/i); +await userEvent.type(emailInput, "test@example.com"); +``` + +Стоит использовать, если: + +- у поля нет `label`, но есть `placeholder`; +- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; +- `placeholder` достаточно описателен и уникален. + +### ByText + +Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск по точному тексту +const heading = screen.getByText("Welcome to our application"); +expect(heading).toBeInTheDocument(); + +// С регулярным выражением (частичное совпадение) +const errorMessage = screen.getByText(/error.*occurred/i); +expect(errorMessage).toHaveClass("error"); +``` + +Стоит использовать, если: + +- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); +- занимаетесь проверкой отображения текста на странице; +- текст уникален и является частью требований. + +### ByDisplayValue + +Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск input с конкретным значением +const emailInput = screen.getByDisplayValue("user@example.com"); +expect(emailInput).toBeInTheDocument(); + +// Поиск с регулярным выражением +const searchInput = screen.getByDisplayValue(/search query/i); +``` + +Стоит использовать, если: + +- необходимо протестировать предзаполненных форм (edit forms, profile pages); +- нужно проверить установку корректного значения после действия; +- необходимо найти элемент по его текущему значению, а не по label. + +### ByAltText + +Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск изображения по alt тексту +const logo = screen.getByAltText("Company Logo"); +expect(logo).toBeInTheDocument(); +expect(logo).toHaveAttribute("src", "/images/logo.png"); +``` + +Стоит использовать, если: + +- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); +- необходимо проверить доступность изображений (наличие `alt` обязательно); +- `alt`-текст достаточно описателен и уникален. + +### ByTitle + +Чтобы найти элемент по атрибуту title, используйте метод getByTitle. + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Поиск элемента по title атрибуту +const closeButton = screen.getByTitle("Close dialog"); +await userEvent.click(closeButton); +``` + +Стоит использовать, если: + +- необходимо работать с элементами, которые используют `title` для `tooltips`; +- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); +- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). + +### ByTestId + +`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` + +```javascript +import { screen } from "@testing-library/dom"; +import userEvent from "@testing-library/user-event"; + +// Базовое использование +const submitButton = screen.getByTestId("submit-button"); +await userEvent.click(submitButton); +``` + From f9688e7ff52e862751523a8de65420067cabbacd Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Thu, 22 Jan 2026 16:41:28 +0300 Subject: [PATCH 08/22] docs: selectors-fix --- docs/guides/selectors.mdx | 602 ------------------ .../current/basic-guides/selectors.mdx | 24 +- .../current/guides/selectors.mdx | 602 ------------------ 3 files changed, 11 insertions(+), 1217 deletions(-) delete mode 100644 docs/guides/selectors.mdx delete mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx diff --git a/docs/guides/selectors.mdx b/docs/guides/selectors.mdx deleted file mode 100644 index 8ecb8390..00000000 --- a/docs/guides/selectors.mdx +++ /dev/null @@ -1,602 +0,0 @@ -# Селекторы - -Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. - -## WebDriverIO - -WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. - -### CSS селекторы - -#### По классу - -Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. - -```javascript -// Поиск кнопки с классом "btn-primary" -const button = await browser.$(".btn-primary"); -await button.click(); - -// Поиск нескольких элементов -const menuItems = await browser.$$(".nav-item"); -console.log("Количество пунктов меню: ${menuItems.length}"); -``` -Стоит использовать, если: - -- класс является стабильным и не генерируется динамически; -- нужен быстрый и простой способ найти элемент; -- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); -- вы работаете с компонентными библиотеками, где классы являются частью API. - -#### По id - -Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. - -```javascript -// Поиск формы id -const loginForm = await browser.$("#login-form"); -const isDisplayed = await loginForm.isDisplayed(); -``` -Стоит использовать, если: - -- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); -- `id` является частью публичного API компонента; -- нужна максимальная производительность селектора (`id` — самый быстрый селектор). - -#### По типу атрибута - -Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. - -```javascript -// Поиск всех чекбоксов -const checkboxes = await browser.$$("input[type="checkbox"]"); -for (const checkbox of checkboxes) { - await checkbox.click(); -} - -// Поиск email input -const emailInput = await browser.$("input[type="email"]"); -await emailInput.setValue("test@example.com"); - -// Поиск скрытых полей -const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); -const csrfValue = await hiddenField.getValue(); -``` - -Стоит использовать, если: - -- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); -- вы тестируете формы и валидацию; -- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); -- вам нужно убедиться, что используется правильный тип поля для `accessibility`; -- вы тестируете различное поведение для разных типов полей. - -#### CSS-селекторы по атрибуту data-testid - -Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. - -```javascript -// Поиск элемента по data-testid -const userAvatar = await browser.$("[data-testid="user-avatar"]"); -await userAvatar.waitForDisplayed({ timeout: 5000 }); - -// Клик по кнопке с data-testid -const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); -await deleteButton.click(); - -// Получение текста из элемента -const errorMessage = await browser.$("[data-testid="error-notification"]"); -const text = await errorMessage.getText(); -expect(text).toContain("Ошибка валидации"); -``` -Стоит использовать, если: - -- создаёте селекторы специально для тестирования; -- нужна стабильность селекторов независимо от изменений UI/стилей; -- работаете в команде, где дизайнеры часто меняют классы и структуру; -- хотите явно пометить элементы, доступные для тестирования; - -#### CSS-комбинированные селекторы - -Комбинированные селекторы позволяют находить элементы в определённом контексте. - -```javascript -// Потомок: кнопка внутри модального окна -const modalButton = await browser.$(".modal .close-button"); -await modalButton.click(); - -// Прямой потомок: первый уровень вложенности -const navItem = await browser.$(".navigation > .nav-item"); - -// Соседний элемент -const errorLabel = await browser.$("input.invalid + .error-message"); -const errorText = await errorLabel.getText(); - -// Сложная комбинация -const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); -``` - -Стоит использовать, если: - -- нужно найти элемент в определённом контексте; -- работаете с повторяющейся структурой; -- нужно убедиться в правильной вложенности элементов; -- простые селекторы слишком неспецифичны; -- тестируете связанные элементы. - -#### CSS-псевдоселекторы - -Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. - -```javascript -// Первый элемент списка -const firstItem = await browser.$("ul.menu > li:first-child"); -await firstItem.click(); - -// Последний элемент -const lastItem = await browser.$(".breadcrumb > li:last-child"); -const currentPage = await lastItem.getText(); - -// N-ый элемент (третий пункт меню) -const thirdItem = await browser.$(".menu-item:nth-child(3)"); - -// Каждый второй элемент (чётные) -const evenRows = await browser.$$("table tr:nth-child(even)"); - -// Отключённые элементы -const disabledButtons = await browser.$$("button:disabled"); -expect(disabledButtons.length).toBe(2); - -// Проверенные чекбоксы -const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); -``` - -Стоит использовать, если: - -- тестируете позиционирование элементов; -- проверяете состояния элементов (`disabled`, `checked`, `focus`); -- работаете с таблицами и нужно выбрать определённую строку или столбец; -- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); -- нужно найти элемент по его позиции, когда нет других идентификаторов. - -### XPath селекторы - -#### По тексту элемента - -Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. - -```javascript -// Точное совпадение текста -const loginButton = await browser.$("//button[text()="Войти в систему"]"); -await loginButton.click(); - -// Частичное совпадение -const successMessage = await browser.$("//div[contains(text(), "успешно")]"); -await successMessage.waitForDisplayed(); - -// Текст с пробелами и переносами -const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); - -// Поиск по тексту в дочернем элементе -const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); - -// Case-insensitive поиск (XPath 2.0) -const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); -``` - -Стоит использовать, если: - -- текст элемента уникален и стабилен (названия кнопок, заголовки); -- нет других идентификаторов (нет `data-testid`, `id`, классов); -- тестируете, что правильный текст отображается в правильном месте; -- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; -- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. - -#### По атрибутам - -Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. - -```javascript -// Поиск по одному атрибуту -const nameInput = await browser.$("//input[@name="username"]"); -await nameInput.setValue("john_doe"); - -// Множественные условия (AND) -const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); - -// Условие OR -const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); - -// Поиск по началу значения атрибута -const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); - -// Поиск по концу значения атрибута -const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); - -// Поиск по частичному совпадению атрибута -const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); - -// NOT условие -const notDisabledButton = await browser.$("//button[not(@disabled)]"); -``` - -Стоит использовать, если: - -- нужны сложные условия поиска (комбинации атрибутов); -- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); -- нужна гибкость в поиске (частичные совпадения, начало/конец строки); -- CSS-селекторы не могут выразить нужную логику; -- нужно найти элемент по отсутствию атрибута. - -#### Навигация по DOM - -Исползуя XPath, вы можете навигировать по DOM-дереву. - -```javascript -// Прямой родитель -const parentDiv = await browser.$("//input[@name="email"]/.."); - -// Предок с условием -const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); - -// Следующий сиблинг -const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); - -// Предыдущий сиблинг -const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); - -// Все потомки -const allInputs = await browser.$$("//form[@id="checkout"]//input"); - -// Прямые дети -const directChildren = await browser.$$("//ul[@class="menu"]/li"); - -// Поиск «дяди» элемента (родитель -> сиблинг родителя) -const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); -``` - -Стоит использовать, если: - -- нужно найти элемент относительно другого известного элемента; -- структура DOM сложна, но относительные позиции стабильны; -- тестируете связанные элементы (label и input, ошибка рядом с полем); -- нужно подняться вверх по DOM-дереву от найденного элемента; -- работаете с семантической структурой HTML (заголовок и следующая за ним секция). - -#### XPath: индексы и позиции - -XPath позволяет выбирать элементы по их позиции в наборе результатов. - -```javascript -// Первый элемент в результатах XPath -const firstButton = await browser.$("(//button[@class="action"])[1]"); -await firstButton.click(); - -// Последний элемент -const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); - -// Второй элемент -const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); - -// Предпоследний -const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); - -// Диапазон элементов (все кроме первого) -const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); - -// Каждый третий элемент -const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); -``` - -Стоит использовать, если: - -- нужен доступ к элементу по его позиции в наборе результатов; -- тестируете пагинацию или списки с определённым порядком; -- работаете с таблицами и нужна конкретная строка; -- нужен первый или последний элемент среди нескольких одинаковых; -- тестируете сортировку (проверка, что элемент на правильной позиции). - -### Селекторы по Link Text - -Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. - -```javascript -// Полное совпадение текста ссылки -const loginLink = await browser.$("=Войти в систему"); -await loginLink.click(); - -// Частичное совпадение -const docsLink = await browser.$("*=Документация"); -await docsLink.click(); -``` -Стоит использовать, если: - -- работаете с навигационными ссылками с уникальным текстом; -- тестируете меню и навигацию сайта; -- текст ссылки является частью требований и не должен меняться; -- нужна простота и читаемость теста; -- тестируете наличие ссылок с правильным текстом на странице. - -### Селекторы по имени тега - -Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. - -```javascript -// Поиск первой кнопки на странице -const button = await browser.$("button"); -await button.click(); - -// Все параграфы -const paragraphs = await browser.$$("p"); -const textsArray = await Promise.all( - paragraphs.map(p => p.getText()) -); - -// Все изображения -const images = await browser.$$("img"); -for (const img of images) { - const alt = await img.getAttribute("alt"); - expect(alt).not.toBe(""); // проверка accessibility -} - -// Форма -const form = await browser.$("form"); -await form.waitForDisplayed(); - -// Таблица -const table = await browser.$("table"); -const rows = await table.$$("tr"); -``` - -Стоит использовать, если: - -- на странице один элемент данного типа (например, единственная форма); -- нужно получить все элементы определённого типа для массовой проверки; -- тестируете семантичность HTML (наличие правильных тегов); -- работаете с базовой HTML-структурой (`form`, `table`, `ul`); -- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). - -### React селекторы - -Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. - -```javascript -// Поиск React-компонента по имени -const myButton = await browser.react$("MyButton"); -await myButton.click(); - -// С фильтрацией по параметрами -const primaryButton = await browser.react$("Button", { - props: { variant: "primary", size: "large" } -}); - -// С фильтрацией по state -const openModal = await browser.react$("Modal", { - state: { isOpen: true, activeTab: 'settings' } -}); - -// Все экземпляры компонента -const allCards = await browser.react$$("ProductCard"); -console.log("Найдено карточек: ${allCards.length}"); - -// Вложенный поиск -const form = await browser.react$("CheckoutForm"); -const submitButton = await form.react$("SubmitButton"); - -// С комплексными параметрами -const userProfile = await browser.react$("UserProfile", { - props: { - user: { id: 123, role: "admin" }, - editable: true - } -}); -``` - -Стоит использовать, если: - -- работаете с React-приложением и имеете доступ к исходному коду; -- нужно найти компонент по его параметрам или `state`; -- тестируете, что компонент рендерится с правильными данными; -- структура `DOM` может меняться, но API компонента стабилен; -- нужна глубокая интеграция с React DevTools. - -### Shadow DOM селекторы - -Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. - -```javascript -// Простой доступ в Shadow DOM -const customElement = await browser.$("my-custom-element"); -const button = await customElement.shadow$("button"); -await button.click(); - -// Множественные элементы в Shadow DOM -const slotElements = await customElement.shadow$$(".slot-item"); -``` - -Стоит использовать, если: - -- работаете с Web Components и Custom Elements; -- приложение использует Shadow DOM для инкапсуляции стилей; -- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); -- нужен доступ к элементам внутри shadow root; -- работаете с дизайн-системой на базе Web Components. - -## Testing-library - -Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). - -### ByRole - -`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск кнопки -const submitButton = screen.getByRole("button", { name: /submit/i }); -await userEvent.click(submitButton); - -// Поиск текстового поля -const emailInput = screen.getByRole('textbox', { name: /email/i }); -await userEvent.type(emailInput, "test@example.com"); - -// Поиск чекбокса -const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); -await userEvent.click(agreeCheckbox); -``` - -Стоит использовать, если: - -- для любых интерактивных элементов (кнопки, ссылки, поля ввода); -- для структурных элементов (`navigation`, `main`, `header`, `footer`); -- для форм и их элементов (`radio`, `checkbox`, `combobox`); -- для заголовков и важных текстовых элементов; -- для списков и таблиц. - - -### ByLabelText - -Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по тексту label (полное совпадение) -const emailInput = screen.getByLabelText("Email Address"); -await userEvent.type(emailInput, "user@example.com"); - -// Поиск с регулярным выражением (частичное совпадение, case-insensitive) -const passwordInput = screen.getByLabelText(/password/i); -await userEvent.type(passwordInput, "secure123"); -``` - -Стоит использовать, если: - -- работаете с формами; -- нужно найти input, select, textarea по связанной метке; -- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); -- метка уникальна и описательна. - -### ByPlaceholderText - -Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по placeholder -const searchInput = screen.getByPlaceholderText("Search..."); -await userEvent.type(searchInput, "testing library"); - -// С регулярным выражением -const emailInput = screen.getByPlaceholderText(/enter.*email/i); -await userEvent.type(emailInput, "test@example.com"); -``` - -Стоит использовать, если: - -- у поля нет `label`, но есть `placeholder`; -- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; -- `placeholder` достаточно описателен и уникален. - -### ByText - -Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по точному тексту -const heading = screen.getByText("Welcome to our application"); -expect(heading).toBeInTheDocument(); - -// С регулярным выражением (частичное совпадение) -const errorMessage = screen.getByText(/error.*occurred/i); -expect(errorMessage).toHaveClass("error"); -``` - -Стоит использовать, если: - -- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); -- занимаетесь проверкой отображения текста на странице; -- текст уникален и является частью требований. - -### ByDisplayValue - -Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск input с конкретным значением -const emailInput = screen.getByDisplayValue("user@example.com"); -expect(emailInput).toBeInTheDocument(); - -// Поиск с регулярным выражением -const searchInput = screen.getByDisplayValue(/search query/i); -``` - -Стоит использовать, если: - -- необходимо протестировать предзаполненных форм (edit forms, profile pages); -- нужно проверить установку корректного значения после действия; -- необходимо найти элемент по его текущему значению, а не по label. - -### ByAltText - -Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск изображения по alt тексту -const logo = screen.getByAltText("Company Logo"); -expect(logo).toBeInTheDocument(); -expect(logo).toHaveAttribute("src", "/images/logo.png"); -``` - -Стоит использовать, если: - -- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); -- необходимо проверить доступность изображений (наличие `alt` обязательно); -- `alt`-текст достаточно описателен и уникален. - -### ByTitle - -Чтобы найти элемент по атрибуту title, используйте метод getByTitle. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск элемента по title атрибуту -const closeButton = screen.getByTitle("Close dialog"); -await userEvent.click(closeButton); -``` - -Стоит использовать, если: - -- необходимо работать с элементами, которые используют `title` для `tooltips`; -- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); -- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). - -### ByTestId - -`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Базовое использование -const submitButton = screen.getByTestId("submit-button"); -await userEvent.click(submitButton); -``` - diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx index 08fcc8c7..8ecb8390 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx @@ -1,7 +1,5 @@ # Селекторы -## Введение - Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. ## WebDriverIO @@ -47,7 +45,7 @@ const isDisplayed = await loginForm.isDisplayed(); #### По типу атрибута -Для поиска элемента по атрибуту, используйте селектор вида `"input[type="name"]"`. +Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. ```javascript // Поиск всех чекбоксов @@ -75,7 +73,7 @@ const csrfValue = await hiddenField.getValue(); #### CSS-селекторы по атрибуту data-testid -Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `"data-testid"`. +Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. ```javascript // Поиск элемента по data-testid @@ -128,7 +126,7 @@ const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); #### CSS-псевдоселекторы -Для выбора элементов на основе их положения или состояния, используйте псевдоселекторы. +Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. ```javascript // Первый элемент списка @@ -165,7 +163,7 @@ const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); #### По тексту элемента -Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `"//element[text()="text"]"`. +Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. ```javascript // Точное совпадение текста @@ -196,7 +194,7 @@ const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗ #### По атрибутам -Для поиска элемента по атрибуту, используйте селектор вида `"//element[@type="atribute"]"`. +Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. ```javascript // Поиск по одному атрибуту @@ -232,7 +230,7 @@ const notDisabledButton = await browser.$("//button[not(@disabled)]"); #### Навигация по DOM -С помощью XPath вы можете навигировать по DOM-дереву. +Исползуя XPath, вы можете навигировать по DOM-дереву. ```javascript // Прямой родитель @@ -300,7 +298,7 @@ const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 ### Селекторы по Link Text -Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `"=text"`, чтобы найти элемент с точным текстом и `"*=text"` для поиска по частичному совпадению текста. +Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. ```javascript // Полное совпадение текста ссылки @@ -426,7 +424,7 @@ const slotElements = await customElement.shadow$$(".slot-item"); ## Testing-library -Testing Library — это адаптер популярной философии Testing Library для Testplane. Он предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). +Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). ### ByRole @@ -460,7 +458,7 @@ await userEvent.click(agreeCheckbox); ### ByLabelText -Для поиска элементов форм по тексту их меток (`"label"`), используйте метод `getByLabelText`. +Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. ```javascript import { screen } from "@testing-library/dom"; @@ -484,7 +482,7 @@ await userEvent.type(passwordInput, "secure123"); ### ByPlaceholderText -Чтобы найти поле ввода по тексту `placeholder`, используйте метод `getByPlaceholderText`. +Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. ```javascript import { screen } from "@testing-library/dom"; @@ -572,7 +570,7 @@ expect(logo).toHaveAttribute("src", "/images/logo.png"); ### ByTitle -Чтобы найти элемент по атрибуту `title`, используйте метод `getByTitle`. +Чтобы найти элемент по атрибуту title, используйте метод getByTitle. ```javascript import { screen } from "@testing-library/dom"; diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx deleted file mode 100644 index 8ecb8390..00000000 --- a/i18n/ru/docusaurus-plugin-content-docs/current/guides/selectors.mdx +++ /dev/null @@ -1,602 +0,0 @@ -# Селекторы - -Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. - -## WebDriverIO - -WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. - -### CSS селекторы - -#### По классу - -Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. - -```javascript -// Поиск кнопки с классом "btn-primary" -const button = await browser.$(".btn-primary"); -await button.click(); - -// Поиск нескольких элементов -const menuItems = await browser.$$(".nav-item"); -console.log("Количество пунктов меню: ${menuItems.length}"); -``` -Стоит использовать, если: - -- класс является стабильным и не генерируется динамически; -- нужен быстрый и простой способ найти элемент; -- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); -- вы работаете с компонентными библиотеками, где классы являются частью API. - -#### По id - -Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. - -```javascript -// Поиск формы id -const loginForm = await browser.$("#login-form"); -const isDisplayed = await loginForm.isDisplayed(); -``` -Стоит использовать, если: - -- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); -- `id` является частью публичного API компонента; -- нужна максимальная производительность селектора (`id` — самый быстрый селектор). - -#### По типу атрибута - -Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. - -```javascript -// Поиск всех чекбоксов -const checkboxes = await browser.$$("input[type="checkbox"]"); -for (const checkbox of checkboxes) { - await checkbox.click(); -} - -// Поиск email input -const emailInput = await browser.$("input[type="email"]"); -await emailInput.setValue("test@example.com"); - -// Поиск скрытых полей -const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); -const csrfValue = await hiddenField.getValue(); -``` - -Стоит использовать, если: - -- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); -- вы тестируете формы и валидацию; -- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); -- вам нужно убедиться, что используется правильный тип поля для `accessibility`; -- вы тестируете различное поведение для разных типов полей. - -#### CSS-селекторы по атрибуту data-testid - -Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. - -```javascript -// Поиск элемента по data-testid -const userAvatar = await browser.$("[data-testid="user-avatar"]"); -await userAvatar.waitForDisplayed({ timeout: 5000 }); - -// Клик по кнопке с data-testid -const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); -await deleteButton.click(); - -// Получение текста из элемента -const errorMessage = await browser.$("[data-testid="error-notification"]"); -const text = await errorMessage.getText(); -expect(text).toContain("Ошибка валидации"); -``` -Стоит использовать, если: - -- создаёте селекторы специально для тестирования; -- нужна стабильность селекторов независимо от изменений UI/стилей; -- работаете в команде, где дизайнеры часто меняют классы и структуру; -- хотите явно пометить элементы, доступные для тестирования; - -#### CSS-комбинированные селекторы - -Комбинированные селекторы позволяют находить элементы в определённом контексте. - -```javascript -// Потомок: кнопка внутри модального окна -const modalButton = await browser.$(".modal .close-button"); -await modalButton.click(); - -// Прямой потомок: первый уровень вложенности -const navItem = await browser.$(".navigation > .nav-item"); - -// Соседний элемент -const errorLabel = await browser.$("input.invalid + .error-message"); -const errorText = await errorLabel.getText(); - -// Сложная комбинация -const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); -``` - -Стоит использовать, если: - -- нужно найти элемент в определённом контексте; -- работаете с повторяющейся структурой; -- нужно убедиться в правильной вложенности элементов; -- простые селекторы слишком неспецифичны; -- тестируете связанные элементы. - -#### CSS-псевдоселекторы - -Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. - -```javascript -// Первый элемент списка -const firstItem = await browser.$("ul.menu > li:first-child"); -await firstItem.click(); - -// Последний элемент -const lastItem = await browser.$(".breadcrumb > li:last-child"); -const currentPage = await lastItem.getText(); - -// N-ый элемент (третий пункт меню) -const thirdItem = await browser.$(".menu-item:nth-child(3)"); - -// Каждый второй элемент (чётные) -const evenRows = await browser.$$("table tr:nth-child(even)"); - -// Отключённые элементы -const disabledButtons = await browser.$$("button:disabled"); -expect(disabledButtons.length).toBe(2); - -// Проверенные чекбоксы -const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); -``` - -Стоит использовать, если: - -- тестируете позиционирование элементов; -- проверяете состояния элементов (`disabled`, `checked`, `focus`); -- работаете с таблицами и нужно выбрать определённую строку или столбец; -- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); -- нужно найти элемент по его позиции, когда нет других идентификаторов. - -### XPath селекторы - -#### По тексту элемента - -Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. - -```javascript -// Точное совпадение текста -const loginButton = await browser.$("//button[text()="Войти в систему"]"); -await loginButton.click(); - -// Частичное совпадение -const successMessage = await browser.$("//div[contains(text(), "успешно")]"); -await successMessage.waitForDisplayed(); - -// Текст с пробелами и переносами -const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); - -// Поиск по тексту в дочернем элементе -const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); - -// Case-insensitive поиск (XPath 2.0) -const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); -``` - -Стоит использовать, если: - -- текст элемента уникален и стабилен (названия кнопок, заголовки); -- нет других идентификаторов (нет `data-testid`, `id`, классов); -- тестируете, что правильный текст отображается в правильном месте; -- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; -- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. - -#### По атрибутам - -Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. - -```javascript -// Поиск по одному атрибуту -const nameInput = await browser.$("//input[@name="username"]"); -await nameInput.setValue("john_doe"); - -// Множественные условия (AND) -const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); - -// Условие OR -const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); - -// Поиск по началу значения атрибута -const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); - -// Поиск по концу значения атрибута -const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); - -// Поиск по частичному совпадению атрибута -const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); - -// NOT условие -const notDisabledButton = await browser.$("//button[not(@disabled)]"); -``` - -Стоит использовать, если: - -- нужны сложные условия поиска (комбинации атрибутов); -- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); -- нужна гибкость в поиске (частичные совпадения, начало/конец строки); -- CSS-селекторы не могут выразить нужную логику; -- нужно найти элемент по отсутствию атрибута. - -#### Навигация по DOM - -Исползуя XPath, вы можете навигировать по DOM-дереву. - -```javascript -// Прямой родитель -const parentDiv = await browser.$("//input[@name="email"]/.."); - -// Предок с условием -const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); - -// Следующий сиблинг -const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); - -// Предыдущий сиблинг -const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); - -// Все потомки -const allInputs = await browser.$$("//form[@id="checkout"]//input"); - -// Прямые дети -const directChildren = await browser.$$("//ul[@class="menu"]/li"); - -// Поиск «дяди» элемента (родитель -> сиблинг родителя) -const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); -``` - -Стоит использовать, если: - -- нужно найти элемент относительно другого известного элемента; -- структура DOM сложна, но относительные позиции стабильны; -- тестируете связанные элементы (label и input, ошибка рядом с полем); -- нужно подняться вверх по DOM-дереву от найденного элемента; -- работаете с семантической структурой HTML (заголовок и следующая за ним секция). - -#### XPath: индексы и позиции - -XPath позволяет выбирать элементы по их позиции в наборе результатов. - -```javascript -// Первый элемент в результатах XPath -const firstButton = await browser.$("(//button[@class="action"])[1]"); -await firstButton.click(); - -// Последний элемент -const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); - -// Второй элемент -const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); - -// Предпоследний -const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); - -// Диапазон элементов (все кроме первого) -const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); - -// Каждый третий элемент -const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); -``` - -Стоит использовать, если: - -- нужен доступ к элементу по его позиции в наборе результатов; -- тестируете пагинацию или списки с определённым порядком; -- работаете с таблицами и нужна конкретная строка; -- нужен первый или последний элемент среди нескольких одинаковых; -- тестируете сортировку (проверка, что элемент на правильной позиции). - -### Селекторы по Link Text - -Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. - -```javascript -// Полное совпадение текста ссылки -const loginLink = await browser.$("=Войти в систему"); -await loginLink.click(); - -// Частичное совпадение -const docsLink = await browser.$("*=Документация"); -await docsLink.click(); -``` -Стоит использовать, если: - -- работаете с навигационными ссылками с уникальным текстом; -- тестируете меню и навигацию сайта; -- текст ссылки является частью требований и не должен меняться; -- нужна простота и читаемость теста; -- тестируете наличие ссылок с правильным текстом на странице. - -### Селекторы по имени тега - -Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. - -```javascript -// Поиск первой кнопки на странице -const button = await browser.$("button"); -await button.click(); - -// Все параграфы -const paragraphs = await browser.$$("p"); -const textsArray = await Promise.all( - paragraphs.map(p => p.getText()) -); - -// Все изображения -const images = await browser.$$("img"); -for (const img of images) { - const alt = await img.getAttribute("alt"); - expect(alt).not.toBe(""); // проверка accessibility -} - -// Форма -const form = await browser.$("form"); -await form.waitForDisplayed(); - -// Таблица -const table = await browser.$("table"); -const rows = await table.$$("tr"); -``` - -Стоит использовать, если: - -- на странице один элемент данного типа (например, единственная форма); -- нужно получить все элементы определённого типа для массовой проверки; -- тестируете семантичность HTML (наличие правильных тегов); -- работаете с базовой HTML-структурой (`form`, `table`, `ul`); -- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). - -### React селекторы - -Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. - -```javascript -// Поиск React-компонента по имени -const myButton = await browser.react$("MyButton"); -await myButton.click(); - -// С фильтрацией по параметрами -const primaryButton = await browser.react$("Button", { - props: { variant: "primary", size: "large" } -}); - -// С фильтрацией по state -const openModal = await browser.react$("Modal", { - state: { isOpen: true, activeTab: 'settings' } -}); - -// Все экземпляры компонента -const allCards = await browser.react$$("ProductCard"); -console.log("Найдено карточек: ${allCards.length}"); - -// Вложенный поиск -const form = await browser.react$("CheckoutForm"); -const submitButton = await form.react$("SubmitButton"); - -// С комплексными параметрами -const userProfile = await browser.react$("UserProfile", { - props: { - user: { id: 123, role: "admin" }, - editable: true - } -}); -``` - -Стоит использовать, если: - -- работаете с React-приложением и имеете доступ к исходному коду; -- нужно найти компонент по его параметрам или `state`; -- тестируете, что компонент рендерится с правильными данными; -- структура `DOM` может меняться, но API компонента стабилен; -- нужна глубокая интеграция с React DevTools. - -### Shadow DOM селекторы - -Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. - -```javascript -// Простой доступ в Shadow DOM -const customElement = await browser.$("my-custom-element"); -const button = await customElement.shadow$("button"); -await button.click(); - -// Множественные элементы в Shadow DOM -const slotElements = await customElement.shadow$$(".slot-item"); -``` - -Стоит использовать, если: - -- работаете с Web Components и Custom Elements; -- приложение использует Shadow DOM для инкапсуляции стилей; -- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); -- нужен доступ к элементам внутри shadow root; -- работаете с дизайн-системой на базе Web Components. - -## Testing-library - -Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). - -### ByRole - -`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск кнопки -const submitButton = screen.getByRole("button", { name: /submit/i }); -await userEvent.click(submitButton); - -// Поиск текстового поля -const emailInput = screen.getByRole('textbox', { name: /email/i }); -await userEvent.type(emailInput, "test@example.com"); - -// Поиск чекбокса -const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); -await userEvent.click(agreeCheckbox); -``` - -Стоит использовать, если: - -- для любых интерактивных элементов (кнопки, ссылки, поля ввода); -- для структурных элементов (`navigation`, `main`, `header`, `footer`); -- для форм и их элементов (`radio`, `checkbox`, `combobox`); -- для заголовков и важных текстовых элементов; -- для списков и таблиц. - - -### ByLabelText - -Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по тексту label (полное совпадение) -const emailInput = screen.getByLabelText("Email Address"); -await userEvent.type(emailInput, "user@example.com"); - -// Поиск с регулярным выражением (частичное совпадение, case-insensitive) -const passwordInput = screen.getByLabelText(/password/i); -await userEvent.type(passwordInput, "secure123"); -``` - -Стоит использовать, если: - -- работаете с формами; -- нужно найти input, select, textarea по связанной метке; -- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); -- метка уникальна и описательна. - -### ByPlaceholderText - -Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по placeholder -const searchInput = screen.getByPlaceholderText("Search..."); -await userEvent.type(searchInput, "testing library"); - -// С регулярным выражением -const emailInput = screen.getByPlaceholderText(/enter.*email/i); -await userEvent.type(emailInput, "test@example.com"); -``` - -Стоит использовать, если: - -- у поля нет `label`, но есть `placeholder`; -- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; -- `placeholder` достаточно описателен и уникален. - -### ByText - -Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по точному тексту -const heading = screen.getByText("Welcome to our application"); -expect(heading).toBeInTheDocument(); - -// С регулярным выражением (частичное совпадение) -const errorMessage = screen.getByText(/error.*occurred/i); -expect(errorMessage).toHaveClass("error"); -``` - -Стоит использовать, если: - -- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); -- занимаетесь проверкой отображения текста на странице; -- текст уникален и является частью требований. - -### ByDisplayValue - -Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск input с конкретным значением -const emailInput = screen.getByDisplayValue("user@example.com"); -expect(emailInput).toBeInTheDocument(); - -// Поиск с регулярным выражением -const searchInput = screen.getByDisplayValue(/search query/i); -``` - -Стоит использовать, если: - -- необходимо протестировать предзаполненных форм (edit forms, profile pages); -- нужно проверить установку корректного значения после действия; -- необходимо найти элемент по его текущему значению, а не по label. - -### ByAltText - -Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск изображения по alt тексту -const logo = screen.getByAltText("Company Logo"); -expect(logo).toBeInTheDocument(); -expect(logo).toHaveAttribute("src", "/images/logo.png"); -``` - -Стоит использовать, если: - -- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); -- необходимо проверить доступность изображений (наличие `alt` обязательно); -- `alt`-текст достаточно описателен и уникален. - -### ByTitle - -Чтобы найти элемент по атрибуту title, используйте метод getByTitle. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск элемента по title атрибуту -const closeButton = screen.getByTitle("Close dialog"); -await userEvent.click(closeButton); -``` - -Стоит использовать, если: - -- необходимо работать с элементами, которые используют `title` для `tooltips`; -- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); -- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). - -### ByTestId - -`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Базовое использование -const submitButton = screen.getByTestId("submit-button"); -await userEvent.click(submitButton); -``` - From 9a06f74809bc25f97ea4d249914faa5f7db47bd9 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Thu, 22 Jan 2026 17:07:31 +0300 Subject: [PATCH 09/22] docs: fix-prettier --- docs/basic-guides/selectors.mdx | 210 +++++++-------- .../current/basic-guides/selectors.mdx | 210 +++++++-------- .../current/quickstart/index.mdx | 7 +- .../current/quickstart/running-tests.mdx | 39 ++- .../current/quickstart/writing-tests.mdx | 243 +++++++++--------- 5 files changed, 349 insertions(+), 360 deletions(-) diff --git a/docs/basic-guides/selectors.mdx b/docs/basic-guides/selectors.mdx index 8ecb8390..df05d980 100644 --- a/docs/basic-guides/selectors.mdx +++ b/docs/basic-guides/selectors.mdx @@ -21,12 +21,13 @@ await button.click(); const menuItems = await browser.$$(".nav-item"); console.log("Количество пунктов меню: ${menuItems.length}"); ``` + Стоит использовать, если: -- класс является стабильным и не генерируется динамически; -- нужен быстрый и простой способ найти элемент; -- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); -- вы работаете с компонентными библиотеками, где классы являются частью API. +- класс является стабильным и не генерируется динамически; +- нужен быстрый и простой способ найти элемент; +- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); +- вы работаете с компонентными библиотеками, где классы являются частью API. #### По id @@ -37,11 +38,12 @@ console.log("Количество пунктов меню: ${menuItems.length}") const loginForm = await browser.$("#login-form"); const isDisplayed = await loginForm.isDisplayed(); ``` + Стоит использовать, если: -- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); -- `id` является частью публичного API компонента; -- нужна максимальная производительность селектора (`id` — самый быстрый селектор). +- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); +- `id` является частью публичного API компонента; +- нужна максимальная производительность селектора (`id` — самый быстрый селектор). #### По типу атрибута @@ -65,11 +67,11 @@ const csrfValue = await hiddenField.getValue(); Стоит использовать, если: -- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); -- вы тестируете формы и валидацию; -- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); -- вам нужно убедиться, что используется правильный тип поля для `accessibility`; -- вы тестируете различное поведение для разных типов полей. +- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); +- вы тестируете формы и валидацию; +- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); +- вам нужно убедиться, что используется правильный тип поля для `accessibility`; +- вы тестируете различное поведение для разных типов полей. #### CSS-селекторы по атрибуту data-testid @@ -89,12 +91,13 @@ const errorMessage = await browser.$("[data-testid="error-notification"]"); const text = await errorMessage.getText(); expect(text).toContain("Ошибка валидации"); ``` + Стоит использовать, если: -- создаёте селекторы специально для тестирования; -- нужна стабильность селекторов независимо от изменений UI/стилей; -- работаете в команде, где дизайнеры часто меняют классы и структуру; -- хотите явно пометить элементы, доступные для тестирования; +- создаёте селекторы специально для тестирования; +- нужна стабильность селекторов независимо от изменений UI/стилей; +- работаете в команде, где дизайнеры часто меняют классы и структуру; +- хотите явно пометить элементы, доступные для тестирования; #### CSS-комбинированные селекторы @@ -118,11 +121,11 @@ const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); Стоит использовать, если: -- нужно найти элемент в определённом контексте; -- работаете с повторяющейся структурой; -- нужно убедиться в правильной вложенности элементов; -- простые селекторы слишком неспецифичны; -- тестируете связанные элементы. +- нужно найти элемент в определённом контексте; +- работаете с повторяющейся структурой; +- нужно убедиться в правильной вложенности элементов; +- простые селекторы слишком неспецифичны; +- тестируете связанные элементы. #### CSS-псевдоселекторы @@ -153,11 +156,11 @@ const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); Стоит использовать, если: -- тестируете позиционирование элементов; -- проверяете состояния элементов (`disabled`, `checked`, `focus`); -- работаете с таблицами и нужно выбрать определённую строку или столбец; -- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); -- нужно найти элемент по его позиции, когда нет других идентификаторов. +- тестируете позиционирование элементов; +- проверяете состояния элементов (`disabled`, `checked`, `focus`); +- работаете с таблицами и нужно выбрать определённую строку или столбец; +- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); +- нужно найти элемент по его позиции, когда нет других идентификаторов. ### XPath селекторы @@ -186,11 +189,11 @@ const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗ Стоит использовать, если: -- текст элемента уникален и стабилен (названия кнопок, заголовки); -- нет других идентификаторов (нет `data-testid`, `id`, классов); -- тестируете, что правильный текст отображается в правильном месте; -- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; -- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. +- текст элемента уникален и стабилен (названия кнопок, заголовки); +- нет других идентификаторов (нет `data-testid`, `id`, классов); +- тестируете, что правильный текст отображается в правильном месте; +- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; +- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. #### По атрибутам @@ -222,11 +225,11 @@ const notDisabledButton = await browser.$("//button[not(@disabled)]"); Стоит использовать, если: -- нужны сложные условия поиска (комбинации атрибутов); -- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); -- нужна гибкость в поиске (частичные совпадения, начало/конец строки); -- CSS-селекторы не могут выразить нужную логику; -- нужно найти элемент по отсутствию атрибута. +- нужны сложные условия поиска (комбинации атрибутов); +- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); +- нужна гибкость в поиске (частичные совпадения, начало/конец строки); +- CSS-селекторы не могут выразить нужную логику; +- нужно найти элемент по отсутствию атрибута. #### Навигация по DOM @@ -257,11 +260,11 @@ const siblingSection = await browser.$("//h2[text()="Контакты"]/../follo Стоит использовать, если: -- нужно найти элемент относительно другого известного элемента; -- структура DOM сложна, но относительные позиции стабильны; -- тестируете связанные элементы (label и input, ошибка рядом с полем); -- нужно подняться вверх по DOM-дереву от найденного элемента; -- работаете с семантической структурой HTML (заголовок и следующая за ним секция). +- нужно найти элемент относительно другого известного элемента; +- структура DOM сложна, но относительные позиции стабильны; +- тестируете связанные элементы (label и input, ошибка рядом с полем); +- нужно подняться вверх по DOM-дереву от найденного элемента; +- работаете с семантической структурой HTML (заголовок и следующая за ним секция). #### XPath: индексы и позиции @@ -290,11 +293,11 @@ const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 Стоит использовать, если: -- нужен доступ к элементу по его позиции в наборе результатов; -- тестируете пагинацию или списки с определённым порядком; -- работаете с таблицами и нужна конкретная строка; -- нужен первый или последний элемент среди нескольких одинаковых; -- тестируете сортировку (проверка, что элемент на правильной позиции). +- нужен доступ к элементу по его позиции в наборе результатов; +- тестируете пагинацию или списки с определённым порядком; +- работаете с таблицами и нужна конкретная строка; +- нужен первый или последний элемент среди нескольких одинаковых; +- тестируете сортировку (проверка, что элемент на правильной позиции). ### Селекторы по Link Text @@ -309,13 +312,14 @@ await loginLink.click(); const docsLink = await browser.$("*=Документация"); await docsLink.click(); ``` + Стоит использовать, если: -- работаете с навигационными ссылками с уникальным текстом; -- тестируете меню и навигацию сайта; -- текст ссылки является частью требований и не должен меняться; -- нужна простота и читаемость теста; -- тестируете наличие ссылок с правильным текстом на странице. +- работаете с навигационными ссылками с уникальным текстом; +- тестируете меню и навигацию сайта; +- текст ссылки является частью требований и не должен меняться; +- нужна простота и читаемость теста; +- тестируете наличие ссылок с правильным текстом на странице. ### Селекторы по имени тега @@ -328,15 +332,13 @@ await button.click(); // Все параграфы const paragraphs = await browser.$$("p"); -const textsArray = await Promise.all( - paragraphs.map(p => p.getText()) -); +const textsArray = await Promise.all(paragraphs.map(p => p.getText())); // Все изображения const images = await browser.$$("img"); for (const img of images) { - const alt = await img.getAttribute("alt"); - expect(alt).not.toBe(""); // проверка accessibility + const alt = await img.getAttribute("alt"); + expect(alt).not.toBe(""); // проверка accessibility } // Форма @@ -350,11 +352,11 @@ const rows = await table.$$("tr"); Стоит использовать, если: -- на странице один элемент данного типа (например, единственная форма); -- нужно получить все элементы определённого типа для массовой проверки; -- тестируете семантичность HTML (наличие правильных тегов); -- работаете с базовой HTML-структурой (`form`, `table`, `ul`); -- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). +- на странице один элемент данного типа (например, единственная форма); +- нужно получить все элементы определённого типа для массовой проверки; +- тестируете семантичность HTML (наличие правильных тегов); +- работаете с базовой HTML-структурой (`form`, `table`, `ul`); +- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). ### React селекторы @@ -367,12 +369,12 @@ await myButton.click(); // С фильтрацией по параметрами const primaryButton = await browser.react$("Button", { - props: { variant: "primary", size: "large" } + props: { variant: "primary", size: "large" }, }); // С фильтрацией по state const openModal = await browser.react$("Modal", { - state: { isOpen: true, activeTab: 'settings' } + state: { isOpen: true, activeTab: "settings" }, }); // Все экземпляры компонента @@ -385,20 +387,20 @@ const submitButton = await form.react$("SubmitButton"); // С комплексными параметрами const userProfile = await browser.react$("UserProfile", { - props: { - user: { id: 123, role: "admin" }, - editable: true - } + props: { + user: { id: 123, role: "admin" }, + editable: true, + }, }); ``` Стоит использовать, если: -- работаете с React-приложением и имеете доступ к исходному коду; -- нужно найти компонент по его параметрам или `state`; -- тестируете, что компонент рендерится с правильными данными; -- структура `DOM` может меняться, но API компонента стабилен; -- нужна глубокая интеграция с React DevTools. +- работаете с React-приложением и имеете доступ к исходному коду; +- нужно найти компонент по его параметрам или `state`; +- тестируете, что компонент рендерится с правильными данными; +- структура `DOM` может меняться, но API компонента стабилен; +- нужна глубокая интеграция с React DevTools. ### Shadow DOM селекторы @@ -416,11 +418,11 @@ const slotElements = await customElement.shadow$$(".slot-item"); Стоит использовать, если: -- работаете с Web Components и Custom Elements; -- приложение использует Shadow DOM для инкапсуляции стилей; -- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); -- нужен доступ к элементам внутри shadow root; -- работаете с дизайн-системой на базе Web Components. +- работаете с Web Components и Custom Elements; +- приложение использует Shadow DOM для инкапсуляции стилей; +- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); +- нужен доступ к элементам внутри shadow root; +- работаете с дизайн-системой на базе Web Components. ## Testing-library @@ -439,7 +441,7 @@ const submitButton = screen.getByRole("button", { name: /submit/i }); await userEvent.click(submitButton); // Поиск текстового поля -const emailInput = screen.getByRole('textbox', { name: /email/i }); +const emailInput = screen.getByRole("textbox", { name: /email/i }); await userEvent.type(emailInput, "test@example.com"); // Поиск чекбокса @@ -449,12 +451,11 @@ await userEvent.click(agreeCheckbox); Стоит использовать, если: -- для любых интерактивных элементов (кнопки, ссылки, поля ввода); -- для структурных элементов (`navigation`, `main`, `header`, `footer`); -- для форм и их элементов (`radio`, `checkbox`, `combobox`); -- для заголовков и важных текстовых элементов; -- для списков и таблиц. - +- для любых интерактивных элементов (кнопки, ссылки, поля ввода); +- для структурных элементов (`navigation`, `main`, `header`, `footer`); +- для форм и их элементов (`radio`, `checkbox`, `combobox`); +- для заголовков и важных текстовых элементов; +- для списков и таблиц. ### ByLabelText @@ -475,10 +476,10 @@ await userEvent.type(passwordInput, "secure123"); Стоит использовать, если: -- работаете с формами; -- нужно найти input, select, textarea по связанной метке; -- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); -- метка уникальна и описательна. +- работаете с формами; +- нужно найти input, select, textarea по связанной метке; +- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); +- метка уникальна и описательна. ### ByPlaceholderText @@ -499,11 +500,11 @@ await userEvent.type(emailInput, "test@example.com"); Стоит использовать, если: -- у поля нет `label`, но есть `placeholder`; -- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; -- `placeholder` достаточно описателен и уникален. +- у поля нет `label`, но есть `placeholder`; +- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; +- `placeholder` достаточно описателен и уникален. -### ByText +### ByText Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. @@ -522,9 +523,9 @@ expect(errorMessage).toHaveClass("error"); Стоит использовать, если: -- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); -- занимаетесь проверкой отображения текста на странице; -- текст уникален и является частью требований. +- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); +- занимаетесь проверкой отображения текста на странице; +- текст уникален и является частью требований. ### ByDisplayValue @@ -544,9 +545,9 @@ const searchInput = screen.getByDisplayValue(/search query/i); Стоит использовать, если: -- необходимо протестировать предзаполненных форм (edit forms, profile pages); -- нужно проверить установку корректного значения после действия; -- необходимо найти элемент по его текущему значению, а не по label. +- необходимо протестировать предзаполненных форм (edit forms, profile pages); +- нужно проверить установку корректного значения после действия; +- необходимо найти элемент по его текущему значению, а не по label. ### ByAltText @@ -564,9 +565,9 @@ expect(logo).toHaveAttribute("src", "/images/logo.png"); Стоит использовать, если: -- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); -- необходимо проверить доступность изображений (наличие `alt` обязательно); -- `alt`-текст достаточно описателен и уникален. +- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); +- необходимо проверить доступность изображений (наличие `alt` обязательно); +- `alt`-текст достаточно описателен и уникален. ### ByTitle @@ -583,9 +584,9 @@ await userEvent.click(closeButton); Стоит использовать, если: -- необходимо работать с элементами, которые используют `title` для `tooltips`; -- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); -- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). +- необходимо работать с элементами, которые используют `title` для `tooltips`; +- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); +- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). ### ByTestId @@ -599,4 +600,3 @@ import userEvent from "@testing-library/user-event"; const submitButton = screen.getByTestId("submit-button"); await userEvent.click(submitButton); ``` - diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx index 8ecb8390..df05d980 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx @@ -21,12 +21,13 @@ await button.click(); const menuItems = await browser.$$(".nav-item"); console.log("Количество пунктов меню: ${menuItems.length}"); ``` + Стоит использовать, если: -- класс является стабильным и не генерируется динамически; -- нужен быстрый и простой способ найти элемент; -- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); -- вы работаете с компонентными библиотеками, где классы являются частью API. +- класс является стабильным и не генерируется динамически; +- нужен быстрый и простой способ найти элемент; +- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); +- вы работаете с компонентными библиотеками, где классы являются частью API. #### По id @@ -37,11 +38,12 @@ console.log("Количество пунктов меню: ${menuItems.length}") const loginForm = await browser.$("#login-form"); const isDisplayed = await loginForm.isDisplayed(); ``` + Стоит использовать, если: -- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); -- `id` является частью публичного API компонента; -- нужна максимальная производительность селектора (`id` — самый быстрый селектор). +- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); +- `id` является частью публичного API компонента; +- нужна максимальная производительность селектора (`id` — самый быстрый селектор). #### По типу атрибута @@ -65,11 +67,11 @@ const csrfValue = await hiddenField.getValue(); Стоит использовать, если: -- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); -- вы тестируете формы и валидацию; -- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); -- вам нужно убедиться, что используется правильный тип поля для `accessibility`; -- вы тестируете различное поведение для разных типов полей. +- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); +- вы тестируете формы и валидацию; +- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); +- вам нужно убедиться, что используется правильный тип поля для `accessibility`; +- вы тестируете различное поведение для разных типов полей. #### CSS-селекторы по атрибуту data-testid @@ -89,12 +91,13 @@ const errorMessage = await browser.$("[data-testid="error-notification"]"); const text = await errorMessage.getText(); expect(text).toContain("Ошибка валидации"); ``` + Стоит использовать, если: -- создаёте селекторы специально для тестирования; -- нужна стабильность селекторов независимо от изменений UI/стилей; -- работаете в команде, где дизайнеры часто меняют классы и структуру; -- хотите явно пометить элементы, доступные для тестирования; +- создаёте селекторы специально для тестирования; +- нужна стабильность селекторов независимо от изменений UI/стилей; +- работаете в команде, где дизайнеры часто меняют классы и структуру; +- хотите явно пометить элементы, доступные для тестирования; #### CSS-комбинированные селекторы @@ -118,11 +121,11 @@ const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); Стоит использовать, если: -- нужно найти элемент в определённом контексте; -- работаете с повторяющейся структурой; -- нужно убедиться в правильной вложенности элементов; -- простые селекторы слишком неспецифичны; -- тестируете связанные элементы. +- нужно найти элемент в определённом контексте; +- работаете с повторяющейся структурой; +- нужно убедиться в правильной вложенности элементов; +- простые селекторы слишком неспецифичны; +- тестируете связанные элементы. #### CSS-псевдоселекторы @@ -153,11 +156,11 @@ const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); Стоит использовать, если: -- тестируете позиционирование элементов; -- проверяете состояния элементов (`disabled`, `checked`, `focus`); -- работаете с таблицами и нужно выбрать определённую строку или столбец; -- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); -- нужно найти элемент по его позиции, когда нет других идентификаторов. +- тестируете позиционирование элементов; +- проверяете состояния элементов (`disabled`, `checked`, `focus`); +- работаете с таблицами и нужно выбрать определённую строку или столбец; +- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); +- нужно найти элемент по его позиции, когда нет других идентификаторов. ### XPath селекторы @@ -186,11 +189,11 @@ const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗ Стоит использовать, если: -- текст элемента уникален и стабилен (названия кнопок, заголовки); -- нет других идентификаторов (нет `data-testid`, `id`, классов); -- тестируете, что правильный текст отображается в правильном месте; -- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; -- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. +- текст элемента уникален и стабилен (названия кнопок, заголовки); +- нет других идентификаторов (нет `data-testid`, `id`, классов); +- тестируете, что правильный текст отображается в правильном месте; +- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; +- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. #### По атрибутам @@ -222,11 +225,11 @@ const notDisabledButton = await browser.$("//button[not(@disabled)]"); Стоит использовать, если: -- нужны сложные условия поиска (комбинации атрибутов); -- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); -- нужна гибкость в поиске (частичные совпадения, начало/конец строки); -- CSS-селекторы не могут выразить нужную логику; -- нужно найти элемент по отсутствию атрибута. +- нужны сложные условия поиска (комбинации атрибутов); +- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); +- нужна гибкость в поиске (частичные совпадения, начало/конец строки); +- CSS-селекторы не могут выразить нужную логику; +- нужно найти элемент по отсутствию атрибута. #### Навигация по DOM @@ -257,11 +260,11 @@ const siblingSection = await browser.$("//h2[text()="Контакты"]/../follo Стоит использовать, если: -- нужно найти элемент относительно другого известного элемента; -- структура DOM сложна, но относительные позиции стабильны; -- тестируете связанные элементы (label и input, ошибка рядом с полем); -- нужно подняться вверх по DOM-дереву от найденного элемента; -- работаете с семантической структурой HTML (заголовок и следующая за ним секция). +- нужно найти элемент относительно другого известного элемента; +- структура DOM сложна, но относительные позиции стабильны; +- тестируете связанные элементы (label и input, ошибка рядом с полем); +- нужно подняться вверх по DOM-дереву от найденного элемента; +- работаете с семантической структурой HTML (заголовок и следующая за ним секция). #### XPath: индексы и позиции @@ -290,11 +293,11 @@ const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 Стоит использовать, если: -- нужен доступ к элементу по его позиции в наборе результатов; -- тестируете пагинацию или списки с определённым порядком; -- работаете с таблицами и нужна конкретная строка; -- нужен первый или последний элемент среди нескольких одинаковых; -- тестируете сортировку (проверка, что элемент на правильной позиции). +- нужен доступ к элементу по его позиции в наборе результатов; +- тестируете пагинацию или списки с определённым порядком; +- работаете с таблицами и нужна конкретная строка; +- нужен первый или последний элемент среди нескольких одинаковых; +- тестируете сортировку (проверка, что элемент на правильной позиции). ### Селекторы по Link Text @@ -309,13 +312,14 @@ await loginLink.click(); const docsLink = await browser.$("*=Документация"); await docsLink.click(); ``` + Стоит использовать, если: -- работаете с навигационными ссылками с уникальным текстом; -- тестируете меню и навигацию сайта; -- текст ссылки является частью требований и не должен меняться; -- нужна простота и читаемость теста; -- тестируете наличие ссылок с правильным текстом на странице. +- работаете с навигационными ссылками с уникальным текстом; +- тестируете меню и навигацию сайта; +- текст ссылки является частью требований и не должен меняться; +- нужна простота и читаемость теста; +- тестируете наличие ссылок с правильным текстом на странице. ### Селекторы по имени тега @@ -328,15 +332,13 @@ await button.click(); // Все параграфы const paragraphs = await browser.$$("p"); -const textsArray = await Promise.all( - paragraphs.map(p => p.getText()) -); +const textsArray = await Promise.all(paragraphs.map(p => p.getText())); // Все изображения const images = await browser.$$("img"); for (const img of images) { - const alt = await img.getAttribute("alt"); - expect(alt).not.toBe(""); // проверка accessibility + const alt = await img.getAttribute("alt"); + expect(alt).not.toBe(""); // проверка accessibility } // Форма @@ -350,11 +352,11 @@ const rows = await table.$$("tr"); Стоит использовать, если: -- на странице один элемент данного типа (например, единственная форма); -- нужно получить все элементы определённого типа для массовой проверки; -- тестируете семантичность HTML (наличие правильных тегов); -- работаете с базовой HTML-структурой (`form`, `table`, `ul`); -- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). +- на странице один элемент данного типа (например, единственная форма); +- нужно получить все элементы определённого типа для массовой проверки; +- тестируете семантичность HTML (наличие правильных тегов); +- работаете с базовой HTML-структурой (`form`, `table`, `ul`); +- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). ### React селекторы @@ -367,12 +369,12 @@ await myButton.click(); // С фильтрацией по параметрами const primaryButton = await browser.react$("Button", { - props: { variant: "primary", size: "large" } + props: { variant: "primary", size: "large" }, }); // С фильтрацией по state const openModal = await browser.react$("Modal", { - state: { isOpen: true, activeTab: 'settings' } + state: { isOpen: true, activeTab: "settings" }, }); // Все экземпляры компонента @@ -385,20 +387,20 @@ const submitButton = await form.react$("SubmitButton"); // С комплексными параметрами const userProfile = await browser.react$("UserProfile", { - props: { - user: { id: 123, role: "admin" }, - editable: true - } + props: { + user: { id: 123, role: "admin" }, + editable: true, + }, }); ``` Стоит использовать, если: -- работаете с React-приложением и имеете доступ к исходному коду; -- нужно найти компонент по его параметрам или `state`; -- тестируете, что компонент рендерится с правильными данными; -- структура `DOM` может меняться, но API компонента стабилен; -- нужна глубокая интеграция с React DevTools. +- работаете с React-приложением и имеете доступ к исходному коду; +- нужно найти компонент по его параметрам или `state`; +- тестируете, что компонент рендерится с правильными данными; +- структура `DOM` может меняться, но API компонента стабилен; +- нужна глубокая интеграция с React DevTools. ### Shadow DOM селекторы @@ -416,11 +418,11 @@ const slotElements = await customElement.shadow$$(".slot-item"); Стоит использовать, если: -- работаете с Web Components и Custom Elements; -- приложение использует Shadow DOM для инкапсуляции стилей; -- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); -- нужен доступ к элементам внутри shadow root; -- работаете с дизайн-системой на базе Web Components. +- работаете с Web Components и Custom Elements; +- приложение использует Shadow DOM для инкапсуляции стилей; +- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); +- нужен доступ к элементам внутри shadow root; +- работаете с дизайн-системой на базе Web Components. ## Testing-library @@ -439,7 +441,7 @@ const submitButton = screen.getByRole("button", { name: /submit/i }); await userEvent.click(submitButton); // Поиск текстового поля -const emailInput = screen.getByRole('textbox', { name: /email/i }); +const emailInput = screen.getByRole("textbox", { name: /email/i }); await userEvent.type(emailInput, "test@example.com"); // Поиск чекбокса @@ -449,12 +451,11 @@ await userEvent.click(agreeCheckbox); Стоит использовать, если: -- для любых интерактивных элементов (кнопки, ссылки, поля ввода); -- для структурных элементов (`navigation`, `main`, `header`, `footer`); -- для форм и их элементов (`radio`, `checkbox`, `combobox`); -- для заголовков и важных текстовых элементов; -- для списков и таблиц. - +- для любых интерактивных элементов (кнопки, ссылки, поля ввода); +- для структурных элементов (`navigation`, `main`, `header`, `footer`); +- для форм и их элементов (`radio`, `checkbox`, `combobox`); +- для заголовков и важных текстовых элементов; +- для списков и таблиц. ### ByLabelText @@ -475,10 +476,10 @@ await userEvent.type(passwordInput, "secure123"); Стоит использовать, если: -- работаете с формами; -- нужно найти input, select, textarea по связанной метке; -- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); -- метка уникальна и описательна. +- работаете с формами; +- нужно найти input, select, textarea по связанной метке; +- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); +- метка уникальна и описательна. ### ByPlaceholderText @@ -499,11 +500,11 @@ await userEvent.type(emailInput, "test@example.com"); Стоит использовать, если: -- у поля нет `label`, но есть `placeholder`; -- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; -- `placeholder` достаточно описателен и уникален. +- у поля нет `label`, но есть `placeholder`; +- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; +- `placeholder` достаточно описателен и уникален. -### ByText +### ByText Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. @@ -522,9 +523,9 @@ expect(errorMessage).toHaveClass("error"); Стоит использовать, если: -- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); -- занимаетесь проверкой отображения текста на странице; -- текст уникален и является частью требований. +- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); +- занимаетесь проверкой отображения текста на странице; +- текст уникален и является частью требований. ### ByDisplayValue @@ -544,9 +545,9 @@ const searchInput = screen.getByDisplayValue(/search query/i); Стоит использовать, если: -- необходимо протестировать предзаполненных форм (edit forms, profile pages); -- нужно проверить установку корректного значения после действия; -- необходимо найти элемент по его текущему значению, а не по label. +- необходимо протестировать предзаполненных форм (edit forms, profile pages); +- нужно проверить установку корректного значения после действия; +- необходимо найти элемент по его текущему значению, а не по label. ### ByAltText @@ -564,9 +565,9 @@ expect(logo).toHaveAttribute("src", "/images/logo.png"); Стоит использовать, если: -- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); -- необходимо проверить доступность изображений (наличие `alt` обязательно); -- `alt`-текст достаточно описателен и уникален. +- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); +- необходимо проверить доступность изображений (наличие `alt` обязательно); +- `alt`-текст достаточно описателен и уникален. ### ByTitle @@ -583,9 +584,9 @@ await userEvent.click(closeButton); Стоит использовать, если: -- необходимо работать с элементами, которые используют `title` для `tooltips`; -- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); -- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). +- необходимо работать с элементами, которые используют `title` для `tooltips`; +- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); +- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). ### ByTestId @@ -599,4 +600,3 @@ import userEvent from "@testing-library/user-event"; const submitButton = screen.getByTestId("submit-button"); await userEvent.click(submitButton); ``` - diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx index 4c060761..035e2ea5 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx @@ -27,11 +27,11 @@ npm init testplane@latest YOUR_PROJECT_PATH ```bash node_modules testplane-tests - example.testplane.ts + example.testplane.ts ts.config.json package-lock.json package.json -testplane.config.ts +testplane.config.ts ``` ## Настройка {#setup} @@ -90,6 +90,3 @@ npx testplane install-deps ``` Без предварительного запуска команды, недостающие браузеры будут автоматически загружены с первым запуском Testplane. - - - diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index 5ec79c85..f50d45e7 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -26,26 +26,26 @@ npx testplane gui const assert = require("assert"); describe("tests", () => { - it("Проверка отображения главной страницы", async ({browser}) => { + it("Проверка отображения главной страницы", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const title = await browser.getTitle(); assert.ok(title.includes("Testplane")); }); - it("Проверка наличия логотипа на главной странице", async ({browser}) => { + it("Проверка наличия логотипа на главной странице", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const logo = await browser.$("a.navbar__brand"); const isDisplayed = await logo.isDisplayed(); assert.strictEqual(isDisplayed, true); }); - it("Проверка навигационного меню", async ({browser}) => { + it("Проверка навигационного меню", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const menuItems = await browser.$$("nav.navbar a.navbar__item"); assert.ok(menuItems.length > 0); }); - it("Проверка наличия поля поиска", async ({browser}) => { + it("Проверка наличия поля поиска", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const searchButton = await browser.$("button.DocSearch"); const isExisting = await searchButton.isExisting(); @@ -53,11 +53,13 @@ describe("tests", () => { }); }); ``` + В таком случае выполните команду: ```bash testplane --grep "Проверка наличия поля поиска" ``` + В кавычках вам необходимо передать содержимое скобок ключевого слова `it`. ### Запуск тестов в конкретных браузерах @@ -65,11 +67,9 @@ testplane --grep "Проверка наличия поля поиска" По умолчанию тесты запускаются в тех браузерах, которые указаны в файле `testplane.config.ts`. ```javascript -browsers: [ - "chrome", - "firefox" -] +browsers: ["chrome", "firefox"]; ``` + При выполнении команды `npx testplane` тесты запустятся в браузерах Google Chrome и Mozila Firefox. ```bash @@ -89,20 +89,20 @@ testplane --browser chrome ```javascript // tests/browser-specific.test.js describe("Browser specific tests", () => { - it("should work in all browsers", async ({browser}) => { + it("should work in all browsers", async ({ browser }) => { await browser.url("https://example.com"); }); // Пропустить тест в Safari testplane.skip.in("safari", "Feature not supported in Safari"); - it("should work only in Chrome and Firefox", async ({browser}) => { + it("should work only in Chrome and Firefox", async ({ browser }) => { await browser.url("https://example.com"); // ... тело теста }); // Запустить только в Chrome testplane.only.in("chrome"); - it("should work only in Chrome", async ({browser}) => { + it("should work only in Chrome", async ({ browser }) => { await browser.url("https://example.com"); // ... тело теста }); @@ -120,7 +120,6 @@ testplane ../testplane-tests/example.testplane.ts Где `../testplane-tests/example.testplane.ts` это путь к файлу с тестами. - ### Режим пользовательского интерфейса В Testplane вы можете работать с тестами в UI формате с помощью Testplane UI. @@ -142,27 +141,26 @@ testplane ../testplane-tests/example.testplane.ts В Testplane имеется встроенный инструмент для отладки — `browser.debug`. ```javascript -it('отладка с паузой', async ({browser}) => { +it("отладка с паузой", async ({ browser }) => { // Открываем тестируемую страницу - await browser.url('/page'); - + await browser.url("/page"); + // browser.debug() останавливает выполнение теста // и открывает интерактивную консоль (REPL - Read-Eval-Print Loop) await browser.debug(); - + // После вызова debug() тест приостанавливается // В консоли можно вводить команды WebdriverIO в реальном времени: - + // Примеры команд, которые можно вводить в REPL: // > await browser.$('.button').click() - кликнуть по кнопке // > await browser.getTitle() - получить заголовок страницы // > await browser.$$('.items') - найти все элементы // > .exit - выйти из режима отладки - + // Этот код выполнится только после выхода из debug() - await browser.$('.button').click(); + await browser.$(".button").click(); }); - ``` ### Отладка через Testplane UI @@ -174,4 +172,3 @@ it('отладка с паузой', async ({browser}) => { И находить нестабильные тесты, медленные тесты или другие проблемы с помощью опций "сортировка" и "группировка". ![](/gif/docs/ui/analytics.gif) - diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index a18fe170..d948a12a 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -10,16 +10,17 @@ draft: true Блок `describe` предназначен для группировки связанных тестов. ```javascript -describe('Название группы тестов', () => { - it('описание того, что должно произойти', async ({browser}) => { +describe("Название группы тестов", () => { + it("описание того, что должно произойти", async ({ browser }) => { // Тело теста -}); + }); }); ``` + В блоке `it` описываются тестовые сценарии. ```javascript -it('описание того, что должно произойти', async ({browser}) => { +it("описание того, что должно произойти", async ({ browser }) => { // Тело теста }); ``` @@ -30,7 +31,7 @@ it('описание того, что должно произойти', async ({ ```javascript describe("test examples", () => { - it("docs search test", async ({browser}) => { + it("docs search test", async ({ browser }) => { await browser.openAndWait("https://testplane.io/"); // Find by tag name @@ -64,12 +65,13 @@ describe("test examples", () => { ```javascript await browser.url("https://testplane.io/ru/"); ``` + Если на странице имеются элементы, которые отображаются с задержкой, для корректного выполнения тестов укажите явное ожидание: ```javascript await browser.url("https://testplane.io/ru/"); -await browser.$('h1').waitForExist({ timeout: 5000 }); -const title = await browser.$('h1').getText(); +await browser.$("h1").waitForExist({ timeout: 5000 }); +const title = await browser.$("h1").getText(); ``` Либо используйте команду: @@ -77,6 +79,7 @@ const title = await browser.$('h1').getText(); ```javascript await browser.openAndWait("https://testplane.io/ru/"); ``` + Команда `await browser.openAndWait()` по умолчанию дожидается загрузки всех необходимых элементов на странице. ### Селекторы @@ -87,26 +90,26 @@ Testplane поддерживает различные стратегии пои const assert = require("assert"); describe("tests", () => { - it("Проверка отображения главной страницы", async ({browser}) => { + it("Проверка отображения главной страницы", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const title = await browser.getTitle(); assert.ok(title.includes("Testplane")); }); - it("Проверка наличия логотипа на главной странице", async ({browser}) => { + it("Проверка наличия логотипа на главной странице", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const logo = await browser.$("a.navbar__brand"); const isDisplayed = await logo.isDisplayed(); assert.strictEqual(isDisplayed, true); }); - it("Проверка навигационного меню", async ({browser}) => { + it("Проверка навигационного меню", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const menuItems = await browser.$$("nav.navbar a.navbar__item"); assert.ok(menuItems.length > 0); }); - it("Проверка наличия поля поиска", async ({browser}) => { + it("Проверка наличия поля поиска", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const searchButton = await browser.$("button.DocSearch"); const isExisting = await searchButton.isExisting(); @@ -123,16 +126,16 @@ describe("tests", () => { const assert = require("assert"); describe("tests, () => { - + it("Пример клика - открытие поиска", async ({browser}) => { await browser.url("https://testplane.io/ru/"); - + // Клик по кнопке поиска const searchButton = await browser.$("button.DocSearch"); await searchButton.waitForClickable({timeout: 5000}); await searchButton.click(); await browser.pause(1000); - + // Проверяем, что модальное окно поиска появилось const searchModal = await browser.$(".DocSearch-Modal"); const isDisplayed = await searchModal.isDisplayed(); @@ -141,19 +144,19 @@ describe("tests, () => { it("Пример ввода текста - поиск по документации", async ({browser}) => { await browser.url("https://testplane.io/ru/"); - + // Открываем поиск const searchButton = await browser.$("button.DocSearch"); await searchButton.waitForClickable({timeout: 5000}); await searchButton.click(); await browser.pause(500); - + // Вводим текст в поле поиска const searchInput = await browser.$("input.DocSearch-Input"); await searchInput.waitForDisplayed({timeout: 5000}); await searchInput.setValue("browser"); await browser.pause(1000); - + // Проверяем, что текст введен const inputValue = await searchInput.getValue(); assert.strictEqual(inputValue, "browser"); @@ -161,17 +164,17 @@ describe("tests, () => { it("Пример двойного клика - выделение текста заголовка", async ({browser}) => { await browser.url("https://testplane.io/ru/"); - + // Находим заголовок на главной странице const heading = await browser.$("h1"); await heading.waitForDisplayed({timeout: 5000}); await heading.scrollIntoView(); await browser.pause(500); - + // Двойной клик по заголовку await heading.doubleClick(); await browser.pause(500); - + // Проверяем, что элемент существует и отображается const isDisplayed = await heading.isDisplayed(); assert.strictEqual(isDisplayed, true); @@ -187,66 +190,65 @@ describe("tests, () => { const assert = require("assert"); describe("tests", () => { - - it("WebdriverIO assert - проверка URL", async ({browser}) => { + it("WebdriverIO assert - проверка URL", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + // WebdriverIO expect для browser await expect(browser).toHaveUrl("https://testplane.io/ru/"); }); - it("WebdriverIO assert - проверка существования элемента", async ({browser}) => { + it("WebdriverIO assert - проверка существования элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const logo = await browser.$("a.navbar__brand"); - + // WebdriverIO expect для элемента await expect(logo).toExist(); }); - it("WebdriverIO assert - проверка видимости элемента", async ({browser}) => { + it("WebdriverIO assert - проверка видимости элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const searchButton = await browser.$("button.DocSearch"); - + // WebdriverIO expect await expect(searchButton).toBeDisplayed(); }); // Примеры с Jest ассертами - it("Jest assert - проверка заголовка страницы", async ({browser}) => { + it("Jest assert - проверка заголовка страницы", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const title = await browser.getTitle(); - + // Jest expect expect(title).toContain("Testplane"); }); - it("Jest assert - проверка количества элементов", async ({browser}) => { + it("Jest assert - проверка количества элементов", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const menuItems = await browser.$$("nav.navbar a.navbar__item"); - + // Jest expect expect(menuItems.length).toBeGreaterThan(0); }); - it("Jest assert - проверка атрибута элемента", async ({browser}) => { + it("Jest assert - проверка атрибута элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const docsLink = await browser.$("a[href='/ru/docs/v8/']"); const href = await docsLink.getAttribute("href"); - + // Jest expect expect(href).toBe("/ru/docs/v8/"); }); - it("Jest assert - проверка URL с регулярным выражением", async ({browser}) => { + it("Jest assert - проверка URL с регулярным выражением", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const currentUrl = await browser.getUrl(); - + // Jest expect с regex expect(currentUrl).toMatch(/testplane\.io/); }); @@ -257,39 +259,37 @@ describe("tests", () => { Хуки в Testplane — это специальные функции, которые автоматически выполняются в определенные моменты жизненного цикла тестов. Они позволяют подготовить окружение перед тестами и очистить его после выполнения. По умолчанию доступны два вида хуков — `beforeEach` и `afterEach`, первый выполняется перед каждым тестом, а второй после. - ```javascript const assert = require("assert"); describe("Примеры работы с хуками", () => { - // beforeEach - выполняется перед каждым тестом - beforeEach(async ({browser}) => { + beforeEach(async ({ browser }) => { console.log("--- Выполняется BEFOREEACH - перед каждым тестом ---"); await browser.url("https://testplane.io/ru/"); await browser.pause(500); }); // afterEach - выполняется после каждого теста - afterEach(async ({browser}) => { + afterEach(async ({ browser }) => { console.log("--- Выполняется AFTEREACH - после каждого теста ---"); const currentUrl = await browser.getUrl(); console.log("Текущий URL:", currentUrl); // Можно делать скриншоты, очищать данные и т.д. }); - it("Тест 1 - проверка заголовка", async ({browser}) => { + it("Тест 1 - проверка заголовка", async ({ browser }) => { const title = await browser.getTitle(); assert.ok(title.includes("Testplane")); }); - it("Тест 2 - проверка логотипа", async ({browser}) => { + it("Тест 2 - проверка логотипа", async ({ browser }) => { const logo = await browser.$("a.navbar__brand"); const isDisplayed = await logo.isDisplayed(); assert.strictEqual(isDisplayed, true); }); - it("Тест 3 - проверка поиска", async ({browser}) => { + it("Тест 3 - проверка поиска", async ({ browser }) => { const searchButton = await browser.$("button.DocSearch"); const isExisting = await searchButton.isExisting(); assert.strictEqual(isExisting, true); @@ -297,40 +297,38 @@ describe("Примеры работы с хуками", () => { }); describe("Пример вложенных describe с хуками", () => { - - beforeEach(async ({browser}) => { + beforeEach(async ({ browser }) => { console.log("--- OUTER BEFOREEACH ---"); await browser.url("https://testplane.io/ru/"); }); - afterEach(async ({browser}) => { + afterEach(async ({ browser }) => { console.log("--- OUTER AFTEREACH ---"); }); - it("Внешний тест", async ({browser}) => { + it("Внешний тест", async ({ browser }) => { const title = await browser.getTitle(); assert.ok(title.length > 0); }); describe("Внутренний блок тестов", () => { - - beforeEach(async ({browser}) => { + beforeEach(async ({ browser }) => { console.log("--- INNER BEFOREEACH ---"); // Сначала выполнится outer beforeEach, потом этот await browser.url("https://testplane.io/ru/docs/v8/"); }); - afterEach(async ({browser}) => { + afterEach(async ({ browser }) => { console.log("--- INNER AFTEREACH ---"); // Сначала выполнится этот afterEach, потом outer }); - it("Внутренний тест 1", async ({browser}) => { + it("Внутренний тест 1", async ({ browser }) => { const currentUrl = await browser.getUrl(); assert.ok(currentUrl.includes("docs")); }); - it("Внутренний тест 2", async ({browser}) => { + it("Внутренний тест 2", async ({ browser }) => { const heading = await browser.$("h1"); const isDisplayed = await heading.isDisplayed(); assert.strictEqual(isDisplayed, true); @@ -347,69 +345,68 @@ describe("Пример вложенных describe с хуками", () => { const assert = require("assert"); describe("Примеры ожиданий в Testplane", () => { - - it("Ожидание появления и кликабельности элемента", async ({browser}) => { + it("Ожидание появления и кликабельности элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + // Ожидаем, что кнопка поиска появится на странице const searchButton = await browser.$("button.DocSearch"); await searchButton.waitForDisplayed({ timeout: 5000, - timeoutMsg: "Кнопка поиска не появилась в течение 5 секунд" + timeoutMsg: "Кнопка поиска не появилась в течение 5 секунд", }); - + // Ожидаем, что элемент станет кликабельным await searchButton.waitForClickable({ timeout: 3000, - timeoutMsg: "Кнопка поиска не стала кликабельной" + timeoutMsg: "Кнопка поиска не стала кликабельной", }); - + await searchButton.click(); - + // Ожидаем появления модального окна поиска const searchModal = await browser.$(".DocSearch-Modal"); - await searchModal.waitForDisplayed({timeout: 3000}); - + await searchModal.waitForDisplayed({ timeout: 3000 }); + const isDisplayed = await searchModal.isDisplayed(); assert.strictEqual(isDisplayed, true); }); - it("Ожидание изменения текста элемента", async ({browser}) => { + it("Ожидание изменения текста элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const heading = await browser.$("h1"); - + // Ожидаем, что элемент будет существовать await heading.waitForExist({ timeout: 5000, - timeoutMsg: "Заголовок не найден на странице" + timeoutMsg: "Заголовок не найден на странице", }); - + // Ожидаем, что у элемента будет определенный текст await heading.waitUntil( - async function() { + async function () { const text = await this.getText(); return text.length > 0; }, { timeout: 5000, - timeoutMsg: "Текст заголовка не появился" - } + timeoutMsg: "Текст заголовка не появился", + }, ); - + const text = await heading.getText(); assert.ok(text.length > 0); }); - it("Ожидание с использованием browser.waitUntil для проверки URL", async ({browser}) => { + it("Ожидание с использованием browser.waitUntil для проверки URL", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + const docsLink = await browser.$("a[href='/ru/docs/v8/']"); - await docsLink.waitForExist({timeout: 5000}); - + await docsLink.waitForExist({ timeout: 5000 }); + // Используем JavaScript click для надежности - await browser.execute((el) => el.click(), docsLink); - + await browser.execute(el => el.click(), docsLink); + // Ожидаем изменения URL с помощью browser.waitUntil await browser.waitUntil( async () => { @@ -418,10 +415,10 @@ describe("Примеры ожиданий в Testplane", () => { }, { timeout: 5000, - timeoutMsg: "URL не изменился на страницу документации" - } + timeoutMsg: "URL не изменился на страницу документации", + }, ); - + const finalUrl = await browser.getUrl(); assert.ok(finalUrl.includes("docs")); }); @@ -436,81 +433,80 @@ Testplane предоставляет специальные методы для const assert = require("assert"); describe("Примеры работы с формами в Testplane", () => { - - it("Работа с чекбоксами через клик", async ({browser}) => { + it("Работа с чекбоксами через клик", async ({ browser }) => { // Для демонстрации используем страницу с формой await browser.url("https://the-internet.herokuapp.com/checkboxes"); - + const checkbox1 = await browser.$("#checkboxes input:nth-child(1)"); - await checkbox1.waitForDisplayed({timeout: 5000}); - + await checkbox1.waitForDisplayed({ timeout: 5000 }); + // Проверяем начальное состояние let isSelected = await checkbox1.isSelected(); assert.strictEqual(isSelected, false); - + // Кликаем для выбора await checkbox1.click(); isSelected = await checkbox1.isSelected(); assert.strictEqual(isSelected, true); - + // Кликаем еще раз для снятия выбора await checkbox1.click(); isSelected = await checkbox1.isSelected(); assert.strictEqual(isSelected, false); }); - it("Работа с радио—кнопками через клик", async ({browser}) => { + it("Работа с радио—кнопками через клик", async ({ browser }) => { await browser.url("https://the-internet.herokuapp.com/"); - + // Переходим на страницу с примерами const link = await browser.$("a[href='/forgot_password']"); await link.click(); - + // Работа с полем email (как пример радио-кнопок) const emailInput = await browser.$("#email"); - await emailInput.waitForDisplayed({timeout: 5000}); + await emailInput.waitForDisplayed({ timeout: 5000 }); await emailInput.setValue("test@example.com"); - + const value = await emailInput.getValue(); assert.ok(value.includes("test@example.com")); }); - it("Работа с выпадающим списком (select) — выбор по тексту", async ({browser}) => { + it("Работа с выпадающим списком (select) — выбор по тексту", async ({ browser }) => { await browser.url("https://the-internet.herokuapp.com/dropdown"); - + const dropdown = await browser.$("#dropdown"); - await dropdown.waitForDisplayed({timeout: 5000}); - + await dropdown.waitForDisplayed({ timeout: 5000 }); + // Выбор опции по видимому тексту await dropdown.selectByVisibleText("Option 1"); - + // Проверяем выбранное значение let selectedValue = await dropdown.getValue(); assert.strictEqual(selectedValue, "1"); - + // Получаем текст выбранной опции let selectedText = await dropdown.$("option:checked").getText(); assert.strictEqual(selectedText, "Option 1"); }); - it("Отправка формы и проверка результата", async ({browser}) => { + it("Отправка формы и проверка результата", async ({ browser }) => { await browser.url("https://the-internet.herokuapp.com/login"); - + // Заполняем форму const usernameInput = await browser.$("#username"); const passwordInput = await browser.$("#password"); const submitButton = await browser.$("button[type='submit']"); - + await usernameInput.setValue("tomsmith"); await passwordInput.setValue("SuperSecretPassword!"); - + // Отправляем форму await submitButton.click(); - + // Ждем появления сообщения об успехе const successMessage = await browser.$("#flash"); - await successMessage.waitForDisplayed({timeout: 5000}); - + await successMessage.waitForDisplayed({ timeout: 5000 }); + const messageText = await successMessage.getText(); assert.ok(messageText.includes("You logged into a secure area!")); }); @@ -525,21 +521,20 @@ describe("Примеры работы с формами в Testplane", () => { const assert = require("assert"); describe("Примеры работы с JavaScript кодом", () => { - - it("Выполнение JavaScript кода в контексте страницы", async ({browser}) => { + it("Выполнение JavaScript кода в контексте страницы", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); - + // Пример 1: Получение данных из localStorage await browser.execute(() => { localStorage.setItem("testKey", "testValue"); localStorage.setItem("userName", "John Doe"); }); - + const storageValue = await browser.execute(() => { return localStorage.getItem("testKey"); }); assert.strictEqual(storageValue, "testValue"); - + // Пример 2: Манипуляция DOM — изменение текста элемента const newText = await browser.execute(() => { const heading = document.querySelector("h1"); @@ -550,20 +545,20 @@ describe("Примеры работы с JavaScript кодом", () => { } return ""; }); - + const modifiedHeading = await browser.$("h1"); const currentText = await modifiedHeading.getText(); assert.strictEqual(currentText, "Измененный заголовок"); - + // Пример 3: Вызов функции с параметрами - const sum = await browser.execute((a, b) => { - return a + b; - }, 5, 10); + const sum = await browser.execute( + (a, b) => { + return a + b; + }, + 5, + 10, + ); assert.strictEqual(sum, 15); }); }); ``` - - - - From 90cfc1ce8c27b402e593aa9f3d1e1a8c26d40669 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Thu, 22 Jan 2026 17:09:54 +0300 Subject: [PATCH 10/22] docs: tabs-fix --- .../current/quickstart/running-tests.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index f50d45e7..b66797e4 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -109,6 +109,7 @@ describe("Browser specific tests", () => { }); ``` + ### Запуск теста из конкретного файла Чтобы запустить тесты из конкретного файла, выполните команду: From c5b9411fc2abadc195aa5a4b56a6ba27a076ad8d Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 23 Jan 2026 13:20:26 +0300 Subject: [PATCH 11/22] docs: runningtests-fix --- .../current/quickstart/running-tests.mdx | 8 ++++---- .../current/quickstart/writing-tests.mdx | 10 ++++------ 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index b66797e4..1283c37c 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -12,7 +12,7 @@ sidebar_position: 3 npx testplane ``` -Также тесты можно запускать в `gui`—режиме, для этого выполните команду: +Также тесты можно запускать в `gui`-режиме, для этого выполните команду: ```bash npx testplane gui @@ -131,9 +131,9 @@ testplane ../testplane-tests/example.testplane.ts ## Отладка -### Отладка в gui—формате +### Отладка в gui-формате -Отслеживать процесс выполнения тестов очень легко, если запустить их в `gui`—режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки и какого они характера. +Отслеживать процесс выполнения тестов очень легко, если запустить их в `gui`-режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки и какого они характера. Тут скриншот из gui testplane @@ -170,6 +170,6 @@ it("отладка с паузой", async ({ browser }) => { ![](/gif/docs/ui/run-debug.gif) -И находить нестабильные тесты, медленные тесты или другие проблемы с помощью опций "сортировка" и "группировка". +И находить нестабильные тесты, медленные тесты или другие проблемы с помощью опций «сортировка» и «группировка». ![](/gif/docs/ui/analytics.gif) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index d948a12a..e3b2874b 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -25,8 +25,6 @@ it("описание того, что должно произойти", async ({ }); ``` -### Пример - После установки testplane, вы можете ознакомиться с примером теста, для этого перейдите в папку `testplane-tests` и откройте файл `example.testplane.ts`. ```javascript @@ -120,7 +118,7 @@ describe("tests", () => { ### Взаимодействия с элементами -Для поиска элементов используйте метод `$()` (один элемент) или `$$()` (множество элементов). После нахождения элемента можно выполнить различные действия: клик, ввод текста, двойной клик. +После знакомства с селекторами и нахождения элемента можно выполнить различные действия: клик, ввод текста, двойной клик. ```javascript const assert = require("assert"); @@ -257,7 +255,7 @@ describe("tests", () => { ### Хуки -Хуки в Testplane — это специальные функции, которые автоматически выполняются в определенные моменты жизненного цикла тестов. Они позволяют подготовить окружение перед тестами и очистить его после выполнения. По умолчанию доступны два вида хуков — `beforeEach` и `afterEach`, первый выполняется перед каждым тестом, а второй после. +Хуки — это специальные функции, которые автоматически выполняются в определенные моменты жизненного цикла тестов. Они позволяют подготовить окружение перед тестами и очистить его после выполнения. По умолчанию доступны два вида хуков — `beforeEach` и `afterEach`, первый выполняется перед каждым тестом, а второй после. ```javascript const assert = require("assert"); @@ -427,7 +425,7 @@ describe("Примеры ожиданий в Testplane", () => { ### Работа с формами -Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радио—кнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута. +Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радио-кнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута. ```javascript const assert = require("assert"); @@ -455,7 +453,7 @@ describe("Примеры работы с формами в Testplane", () => { assert.strictEqual(isSelected, false); }); - it("Работа с радио—кнопками через клик", async ({ browser }) => { + it("Работа с радио-кнопками через клик", async ({ browser }) => { await browser.url("https://the-internet.herokuapp.com/"); // Переходим на страницу с примерами From 7f4f18dd27e1f42ea4fe3ebb6a2a2ff809c4b543 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 23 Jan 2026 13:30:22 +0300 Subject: [PATCH 12/22] docs: margins-fix --- .../current/quickstart/writing-tests.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index e3b2874b..8446aa62 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -182,7 +182,7 @@ describe("tests, () => { ### Assertions -В Testplane для проверки состояния элементов и страниц задействует `expect API` из `WebdriverIO` — это позволяет формулировать утверждения (`assertions`) о том, какими должны быть свойства элементов или страницы в целом. +Testplane задействует `expect API` из `WebdriverIO` для проверки состояния элементов и страниц — это позволяет формулировать утверждения (`assertions`) о том, какими должны быть свойства элементов или страницы в целом. ```javascript const assert = require("assert"); From 66416c2939a8d6271e0b7a72b514d11f921c15b9 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Mon, 26 Jan 2026 17:04:40 +0300 Subject: [PATCH 13/22] docs:screenshot-fix --- .../current/quickstart/running-tests.mdx | 2 +- static/img/docs/guides/testplane-gui.png | Bin 0 -> 250274 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 static/img/docs/guides/testplane-gui.png diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index 1283c37c..c0b74b3f 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -135,7 +135,7 @@ testplane ../testplane-tests/example.testplane.ts Отслеживать процесс выполнения тестов очень легко, если запустить их в `gui`-режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки и какого они характера. -Тут скриншот из gui testplane +![Интерфейс Testplane GUI](/img/docs/guides/testplane-gui.png) ### Browser.debug() diff --git a/static/img/docs/guides/testplane-gui.png b/static/img/docs/guides/testplane-gui.png new file mode 100644 index 0000000000000000000000000000000000000000..7aaa7c02a07c530f3cece4b4b2a3e8e0c0dd647a GIT binary patch literal 250274 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 Th4~8jZ|`pOuKEuTfA&8C<tNvY literal 0 HcmV?d00001 From 3918e645063d55a060711bd9f3b3107dec63f4f2 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Thu, 29 Jan 2026 15:31:00 +0300 Subject: [PATCH 14/22] docs: quickstart-fix --- .../current/quickstart/running-tests.mdx | 4 ++-- .../current/quickstart/writing-tests.mdx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index c0b74b3f..212068a3 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -166,10 +166,10 @@ it("отладка с паузой", async ({ browser }) => { ### Отладка через Testplane UI -Наиболее удобным способом для работы с отладкой тестов является UI режим, в нем вы можете в реальном времени наблюдать выполнения тестов. +Наиболее удобным способом для работы с отладкой тестов является UI-режим, в нем вы можете в реальном времени наблюдать выполнения тестов. ![](/gif/docs/ui/run-debug.gif) -И находить нестабильные тесты, медленные тесты или другие проблемы с помощью опций «сортировка» и «группировка». +И находить нестабильные, медленные тесты или другие проблемы с помощью опций «сортировка» и «группировка». ![](/gif/docs/ui/analytics.gif) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index 8446aa62..b1d02d8b 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -82,7 +82,7 @@ await browser.openAndWait("https://testplane.io/ru/"); ### Селекторы -Testplane поддерживает различные стратегии поиска элементов: `CSS` селекторы (самые распространенные), текстовые селекторы (по содержимому), `XPath` для сложных запросов. Метод `$()` возвращает первый найденный элемент, а `$$()` — массив всех подходящих элементов: +Testplane поддерживает различные стратегии поиска элементов: `CSS`-селекторы (самые распространенные), текстовые селекторы (по содержимому), `XPath` для сложных запросов. Метод `$()` возвращает первый найденный элемент, а `$$()` — массив всех подходящих элементов: ```javascript const assert = require("assert"); From e5655f4419e33df969712d3e6d2462af76d80207 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Thu, 29 Jan 2026 16:02:16 +0300 Subject: [PATCH 15/22] Delete docs/basic-guides/selectors.mdx --- docs/basic-guides/selectors.mdx | 602 -------------------------------- 1 file changed, 602 deletions(-) delete mode 100644 docs/basic-guides/selectors.mdx diff --git a/docs/basic-guides/selectors.mdx b/docs/basic-guides/selectors.mdx deleted file mode 100644 index df05d980..00000000 --- a/docs/basic-guides/selectors.mdx +++ /dev/null @@ -1,602 +0,0 @@ -# Селекторы - -Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. - -## WebDriverIO - -WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. - -### CSS селекторы - -#### По классу - -Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. - -```javascript -// Поиск кнопки с классом "btn-primary" -const button = await browser.$(".btn-primary"); -await button.click(); - -// Поиск нескольких элементов -const menuItems = await browser.$$(".nav-item"); -console.log("Количество пунктов меню: ${menuItems.length}"); -``` - -Стоит использовать, если: - -- класс является стабильным и не генерируется динамически; -- нужен быстрый и простой способ найти элемент; -- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); -- вы работаете с компонентными библиотеками, где классы являются частью API. - -#### По id - -Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. - -```javascript -// Поиск формы id -const loginForm = await browser.$("#login-form"); -const isDisplayed = await loginForm.isDisplayed(); -``` - -Стоит использовать, если: - -- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); -- `id` является частью публичного API компонента; -- нужна максимальная производительность селектора (`id` — самый быстрый селектор). - -#### По типу атрибута - -Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. - -```javascript -// Поиск всех чекбоксов -const checkboxes = await browser.$$("input[type="checkbox"]"); -for (const checkbox of checkboxes) { - await checkbox.click(); -} - -// Поиск email input -const emailInput = await browser.$("input[type="email"]"); -await emailInput.setValue("test@example.com"); - -// Поиск скрытых полей -const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); -const csrfValue = await hiddenField.getValue(); -``` - -Стоит использовать, если: - -- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); -- вы тестируете формы и валидацию; -- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); -- вам нужно убедиться, что используется правильный тип поля для `accessibility`; -- вы тестируете различное поведение для разных типов полей. - -#### CSS-селекторы по атрибуту data-testid - -Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. - -```javascript -// Поиск элемента по data-testid -const userAvatar = await browser.$("[data-testid="user-avatar"]"); -await userAvatar.waitForDisplayed({ timeout: 5000 }); - -// Клик по кнопке с data-testid -const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); -await deleteButton.click(); - -// Получение текста из элемента -const errorMessage = await browser.$("[data-testid="error-notification"]"); -const text = await errorMessage.getText(); -expect(text).toContain("Ошибка валидации"); -``` - -Стоит использовать, если: - -- создаёте селекторы специально для тестирования; -- нужна стабильность селекторов независимо от изменений UI/стилей; -- работаете в команде, где дизайнеры часто меняют классы и структуру; -- хотите явно пометить элементы, доступные для тестирования; - -#### CSS-комбинированные селекторы - -Комбинированные селекторы позволяют находить элементы в определённом контексте. - -```javascript -// Потомок: кнопка внутри модального окна -const modalButton = await browser.$(".modal .close-button"); -await modalButton.click(); - -// Прямой потомок: первый уровень вложенности -const navItem = await browser.$(".navigation > .nav-item"); - -// Соседний элемент -const errorLabel = await browser.$("input.invalid + .error-message"); -const errorText = await errorLabel.getText(); - -// Сложная комбинация -const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); -``` - -Стоит использовать, если: - -- нужно найти элемент в определённом контексте; -- работаете с повторяющейся структурой; -- нужно убедиться в правильной вложенности элементов; -- простые селекторы слишком неспецифичны; -- тестируете связанные элементы. - -#### CSS-псевдоселекторы - -Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. - -```javascript -// Первый элемент списка -const firstItem = await browser.$("ul.menu > li:first-child"); -await firstItem.click(); - -// Последний элемент -const lastItem = await browser.$(".breadcrumb > li:last-child"); -const currentPage = await lastItem.getText(); - -// N-ый элемент (третий пункт меню) -const thirdItem = await browser.$(".menu-item:nth-child(3)"); - -// Каждый второй элемент (чётные) -const evenRows = await browser.$$("table tr:nth-child(even)"); - -// Отключённые элементы -const disabledButtons = await browser.$$("button:disabled"); -expect(disabledButtons.length).toBe(2); - -// Проверенные чекбоксы -const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); -``` - -Стоит использовать, если: - -- тестируете позиционирование элементов; -- проверяете состояния элементов (`disabled`, `checked`, `focus`); -- работаете с таблицами и нужно выбрать определённую строку или столбец; -- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); -- нужно найти элемент по его позиции, когда нет других идентификаторов. - -### XPath селекторы - -#### По тексту элемента - -Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. - -```javascript -// Точное совпадение текста -const loginButton = await browser.$("//button[text()="Войти в систему"]"); -await loginButton.click(); - -// Частичное совпадение -const successMessage = await browser.$("//div[contains(text(), "успешно")]"); -await successMessage.waitForDisplayed(); - -// Текст с пробелами и переносами -const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); - -// Поиск по тексту в дочернем элементе -const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); - -// Case-insensitive поиск (XPath 2.0) -const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); -``` - -Стоит использовать, если: - -- текст элемента уникален и стабилен (названия кнопок, заголовки); -- нет других идентификаторов (нет `data-testid`, `id`, классов); -- тестируете, что правильный текст отображается в правильном месте; -- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; -- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. - -#### По атрибутам - -Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. - -```javascript -// Поиск по одному атрибуту -const nameInput = await browser.$("//input[@name="username"]"); -await nameInput.setValue("john_doe"); - -// Множественные условия (AND) -const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); - -// Условие OR -const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); - -// Поиск по началу значения атрибута -const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); - -// Поиск по концу значения атрибута -const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); - -// Поиск по частичному совпадению атрибута -const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); - -// NOT условие -const notDisabledButton = await browser.$("//button[not(@disabled)]"); -``` - -Стоит использовать, если: - -- нужны сложные условия поиска (комбинации атрибутов); -- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); -- нужна гибкость в поиске (частичные совпадения, начало/конец строки); -- CSS-селекторы не могут выразить нужную логику; -- нужно найти элемент по отсутствию атрибута. - -#### Навигация по DOM - -Исползуя XPath, вы можете навигировать по DOM-дереву. - -```javascript -// Прямой родитель -const parentDiv = await browser.$("//input[@name="email"]/.."); - -// Предок с условием -const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); - -// Следующий сиблинг -const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); - -// Предыдущий сиблинг -const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); - -// Все потомки -const allInputs = await browser.$$("//form[@id="checkout"]//input"); - -// Прямые дети -const directChildren = await browser.$$("//ul[@class="menu"]/li"); - -// Поиск «дяди» элемента (родитель -> сиблинг родителя) -const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); -``` - -Стоит использовать, если: - -- нужно найти элемент относительно другого известного элемента; -- структура DOM сложна, но относительные позиции стабильны; -- тестируете связанные элементы (label и input, ошибка рядом с полем); -- нужно подняться вверх по DOM-дереву от найденного элемента; -- работаете с семантической структурой HTML (заголовок и следующая за ним секция). - -#### XPath: индексы и позиции - -XPath позволяет выбирать элементы по их позиции в наборе результатов. - -```javascript -// Первый элемент в результатах XPath -const firstButton = await browser.$("(//button[@class="action"])[1]"); -await firstButton.click(); - -// Последний элемент -const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); - -// Второй элемент -const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); - -// Предпоследний -const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); - -// Диапазон элементов (все кроме первого) -const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); - -// Каждый третий элемент -const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); -``` - -Стоит использовать, если: - -- нужен доступ к элементу по его позиции в наборе результатов; -- тестируете пагинацию или списки с определённым порядком; -- работаете с таблицами и нужна конкретная строка; -- нужен первый или последний элемент среди нескольких одинаковых; -- тестируете сортировку (проверка, что элемент на правильной позиции). - -### Селекторы по Link Text - -Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. - -```javascript -// Полное совпадение текста ссылки -const loginLink = await browser.$("=Войти в систему"); -await loginLink.click(); - -// Частичное совпадение -const docsLink = await browser.$("*=Документация"); -await docsLink.click(); -``` - -Стоит использовать, если: - -- работаете с навигационными ссылками с уникальным текстом; -- тестируете меню и навигацию сайта; -- текст ссылки является частью требований и не должен меняться; -- нужна простота и читаемость теста; -- тестируете наличие ссылок с правильным текстом на странице. - -### Селекторы по имени тега - -Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. - -```javascript -// Поиск первой кнопки на странице -const button = await browser.$("button"); -await button.click(); - -// Все параграфы -const paragraphs = await browser.$$("p"); -const textsArray = await Promise.all(paragraphs.map(p => p.getText())); - -// Все изображения -const images = await browser.$$("img"); -for (const img of images) { - const alt = await img.getAttribute("alt"); - expect(alt).not.toBe(""); // проверка accessibility -} - -// Форма -const form = await browser.$("form"); -await form.waitForDisplayed(); - -// Таблица -const table = await browser.$("table"); -const rows = await table.$$("tr"); -``` - -Стоит использовать, если: - -- на странице один элемент данного типа (например, единственная форма); -- нужно получить все элементы определённого типа для массовой проверки; -- тестируете семантичность HTML (наличие правильных тегов); -- работаете с базовой HTML-структурой (`form`, `table`, `ul`); -- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). - -### React селекторы - -Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. - -```javascript -// Поиск React-компонента по имени -const myButton = await browser.react$("MyButton"); -await myButton.click(); - -// С фильтрацией по параметрами -const primaryButton = await browser.react$("Button", { - props: { variant: "primary", size: "large" }, -}); - -// С фильтрацией по state -const openModal = await browser.react$("Modal", { - state: { isOpen: true, activeTab: "settings" }, -}); - -// Все экземпляры компонента -const allCards = await browser.react$$("ProductCard"); -console.log("Найдено карточек: ${allCards.length}"); - -// Вложенный поиск -const form = await browser.react$("CheckoutForm"); -const submitButton = await form.react$("SubmitButton"); - -// С комплексными параметрами -const userProfile = await browser.react$("UserProfile", { - props: { - user: { id: 123, role: "admin" }, - editable: true, - }, -}); -``` - -Стоит использовать, если: - -- работаете с React-приложением и имеете доступ к исходному коду; -- нужно найти компонент по его параметрам или `state`; -- тестируете, что компонент рендерится с правильными данными; -- структура `DOM` может меняться, но API компонента стабилен; -- нужна глубокая интеграция с React DevTools. - -### Shadow DOM селекторы - -Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. - -```javascript -// Простой доступ в Shadow DOM -const customElement = await browser.$("my-custom-element"); -const button = await customElement.shadow$("button"); -await button.click(); - -// Множественные элементы в Shadow DOM -const slotElements = await customElement.shadow$$(".slot-item"); -``` - -Стоит использовать, если: - -- работаете с Web Components и Custom Elements; -- приложение использует Shadow DOM для инкапсуляции стилей; -- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); -- нужен доступ к элементам внутри shadow root; -- работаете с дизайн-системой на базе Web Components. - -## Testing-library - -Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). - -### ByRole - -`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск кнопки -const submitButton = screen.getByRole("button", { name: /submit/i }); -await userEvent.click(submitButton); - -// Поиск текстового поля -const emailInput = screen.getByRole("textbox", { name: /email/i }); -await userEvent.type(emailInput, "test@example.com"); - -// Поиск чекбокса -const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); -await userEvent.click(agreeCheckbox); -``` - -Стоит использовать, если: - -- для любых интерактивных элементов (кнопки, ссылки, поля ввода); -- для структурных элементов (`navigation`, `main`, `header`, `footer`); -- для форм и их элементов (`radio`, `checkbox`, `combobox`); -- для заголовков и важных текстовых элементов; -- для списков и таблиц. - -### ByLabelText - -Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по тексту label (полное совпадение) -const emailInput = screen.getByLabelText("Email Address"); -await userEvent.type(emailInput, "user@example.com"); - -// Поиск с регулярным выражением (частичное совпадение, case-insensitive) -const passwordInput = screen.getByLabelText(/password/i); -await userEvent.type(passwordInput, "secure123"); -``` - -Стоит использовать, если: - -- работаете с формами; -- нужно найти input, select, textarea по связанной метке; -- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); -- метка уникальна и описательна. - -### ByPlaceholderText - -Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по placeholder -const searchInput = screen.getByPlaceholderText("Search..."); -await userEvent.type(searchInput, "testing library"); - -// С регулярным выражением -const emailInput = screen.getByPlaceholderText(/enter.*email/i); -await userEvent.type(emailInput, "test@example.com"); -``` - -Стоит использовать, если: - -- у поля нет `label`, но есть `placeholder`; -- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; -- `placeholder` достаточно описателен и уникален. - -### ByText - -Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по точному тексту -const heading = screen.getByText("Welcome to our application"); -expect(heading).toBeInTheDocument(); - -// С регулярным выражением (частичное совпадение) -const errorMessage = screen.getByText(/error.*occurred/i); -expect(errorMessage).toHaveClass("error"); -``` - -Стоит использовать, если: - -- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); -- занимаетесь проверкой отображения текста на странице; -- текст уникален и является частью требований. - -### ByDisplayValue - -Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск input с конкретным значением -const emailInput = screen.getByDisplayValue("user@example.com"); -expect(emailInput).toBeInTheDocument(); - -// Поиск с регулярным выражением -const searchInput = screen.getByDisplayValue(/search query/i); -``` - -Стоит использовать, если: - -- необходимо протестировать предзаполненных форм (edit forms, profile pages); -- нужно проверить установку корректного значения после действия; -- необходимо найти элемент по его текущему значению, а не по label. - -### ByAltText - -Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск изображения по alt тексту -const logo = screen.getByAltText("Company Logo"); -expect(logo).toBeInTheDocument(); -expect(logo).toHaveAttribute("src", "/images/logo.png"); -``` - -Стоит использовать, если: - -- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); -- необходимо проверить доступность изображений (наличие `alt` обязательно); -- `alt`-текст достаточно описателен и уникален. - -### ByTitle - -Чтобы найти элемент по атрибуту title, используйте метод getByTitle. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск элемента по title атрибуту -const closeButton = screen.getByTitle("Close dialog"); -await userEvent.click(closeButton); -``` - -Стоит использовать, если: - -- необходимо работать с элементами, которые используют `title` для `tooltips`; -- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); -- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). - -### ByTestId - -`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Базовое использование -const submitButton = screen.getByTestId("submit-button"); -await userEvent.click(submitButton); -``` From e63e6f6c205d38c6926fdbd0dcb9f08094e7c26f Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Thu, 29 Jan 2026 16:02:57 +0300 Subject: [PATCH 16/22] Delete i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx --- .../current/basic-guides/selectors.mdx | 602 ------------------ 1 file changed, 602 deletions(-) delete mode 100644 i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx deleted file mode 100644 index df05d980..00000000 --- a/i18n/ru/docusaurus-plugin-content-docs/current/basic-guides/selectors.mdx +++ /dev/null @@ -1,602 +0,0 @@ -# Селекторы - -Testplane предоставляет множество способов для поиска элементов на странице браузера с помощью селекторов. Для этого используются библиотеки `WebDriverIO` и `testing-library`. Селекторы позволяют точно идентифицировать элементы интерфейса, что необходимо для автоматизации тестирования. - -## WebDriverIO - -WebDriverIO — это Node.js-библиотека для автоматизации браузеров, которая реализует протокол WebDriver (W3C стандарт) В Testplane она используется для управления браузерами и взаимодействия с веб-элементами. - -### CSS селекторы - -#### По классу - -Чтобы найти элемент на странице по классу, используйте селектор `".class-name"`. - -```javascript -// Поиск кнопки с классом "btn-primary" -const button = await browser.$(".btn-primary"); -await button.click(); - -// Поиск нескольких элементов -const menuItems = await browser.$$(".nav-item"); -console.log("Количество пунктов меню: ${menuItems.length}"); -``` - -Стоит использовать, если: - -- класс является стабильным и не генерируется динамически; -- нужен быстрый и простой способ найти элемент; -- класс семантически описывает элемент (например, `.error-message`, `.success-banner`); -- вы работаете с компонентными библиотеками, где классы являются частью API. - -#### По id - -Чтобы найти элемент по `id`, используйте селектор вида `"#id"`. - -```javascript -// Поиск формы id -const loginForm = await browser.$("#login-form"); -const isDisplayed = await loginForm.isDisplayed(); -``` - -Стоит использовать, если: - -- вы работаете с критически важными элементами (формы, модальные окна, главные контейнеры); -- `id` является частью публичного API компонента; -- нужна максимальная производительность селектора (`id` — самый быстрый селектор). - -#### По типу атрибута - -Для поиска элемента по атрибуту, используйте селектор вида `input[type="name"]`. - -```javascript -// Поиск всех чекбоксов -const checkboxes = await browser.$$("input[type="checkbox"]"); -for (const checkbox of checkboxes) { - await checkbox.click(); -} - -// Поиск email input -const emailInput = await browser.$("input[type="email"]"); -await emailInput.setValue("test@example.com"); - -// Поиск скрытых полей -const hiddenField = await browser.$("input[type="hidden"][name="csrf_token"]"); -const csrfValue = await hiddenField.getValue(); -``` - -Стоит использовать, если: - -- нужно найти все элементы определённого типа (все чекбоксы, все радиокнопки); -- вы тестируете формы и валидацию; -- нужно работать с семантическими HTML5 типами (`email`, `tel`, `url`, `date`); -- вам нужно убедиться, что используется правильный тип поля для `accessibility`; -- вы тестируете различное поведение для разных типов полей. - -#### CSS-селекторы по атрибуту data-testid - -Для поиска элементов, которые помечены дял тестирования, используйте селекторы по атрибуту `data-testid`. - -```javascript -// Поиск элемента по data-testid -const userAvatar = await browser.$("[data-testid="user-avatar"]"); -await userAvatar.waitForDisplayed({ timeout: 5000 }); - -// Клик по кнопке с data-testid -const deleteButton = await browser.$("[data-testid="delete-user-btn"]"); -await deleteButton.click(); - -// Получение текста из элемента -const errorMessage = await browser.$("[data-testid="error-notification"]"); -const text = await errorMessage.getText(); -expect(text).toContain("Ошибка валидации"); -``` - -Стоит использовать, если: - -- создаёте селекторы специально для тестирования; -- нужна стабильность селекторов независимо от изменений UI/стилей; -- работаете в команде, где дизайнеры часто меняют классы и структуру; -- хотите явно пометить элементы, доступные для тестирования; - -#### CSS-комбинированные селекторы - -Комбинированные селекторы позволяют находить элементы в определённом контексте. - -```javascript -// Потомок: кнопка внутри модального окна -const modalButton = await browser.$(".modal .close-button"); -await modalButton.click(); - -// Прямой потомок: первый уровень вложенности -const navItem = await browser.$(".navigation > .nav-item"); - -// Соседний элемент -const errorLabel = await browser.$("input.invalid + .error-message"); -const errorText = await errorLabel.getText(); - -// Сложная комбинация -const activeTab = await browser.$("ul.tabs > li.active > a[href^="#"]"); -``` - -Стоит использовать, если: - -- нужно найти элемент в определённом контексте; -- работаете с повторяющейся структурой; -- нужно убедиться в правильной вложенности элементов; -- простые селекторы слишком неспецифичны; -- тестируете связанные элементы. - -#### CSS-псевдоселекторы - -Псевдоселекторы позволяют выбирать элементы на основе их положения или состояния. - -```javascript -// Первый элемент списка -const firstItem = await browser.$("ul.menu > li:first-child"); -await firstItem.click(); - -// Последний элемент -const lastItem = await browser.$(".breadcrumb > li:last-child"); -const currentPage = await lastItem.getText(); - -// N-ый элемент (третий пункт меню) -const thirdItem = await browser.$(".menu-item:nth-child(3)"); - -// Каждый второй элемент (чётные) -const evenRows = await browser.$$("table tr:nth-child(even)"); - -// Отключённые элементы -const disabledButtons = await browser.$$("button:disabled"); -expect(disabledButtons.length).toBe(2); - -// Проверенные чекбоксы -const checkedBoxes = await browser.$$("input[type="checkbox"]:checked"); -``` - -Стоит использовать, если: - -- тестируете позиционирование элементов; -- проверяете состояния элементов (`disabled`, `checked`, `focus`); -- работаете с таблицами и нужно выбрать определённую строку или столбец; -- тестируете паттерны (чётные/нечётные строки для `zebra-striping`); -- нужно найти элемент по его позиции, когда нет других идентификаторов. - -### XPath селекторы - -#### По тексту элемента - -Чтобы найти элемент по содержащемуся в нем тексту, используйте селектор `//element[text()="text"]`. - -```javascript -// Точное совпадение текста -const loginButton = await browser.$("//button[text()="Войти в систему"]"); -await loginButton.click(); - -// Частичное совпадение -const successMessage = await browser.$("//div[contains(text(), "успешно")]"); -await successMessage.waitForDisplayed(); - -// Текст с пробелами и переносами -const heading = await browser.$("//h1[normalize-space()="Добро пожаловать"]"); - -// Поиск по тексту в дочернем элементе -const card = await browser.$("//div[@class="card"][.//h3[text()="Premium план"]]"); - -// Case-insensitive поиск (XPath 2.0) -const link = await browser.$("//a[contains(translate(text(), "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"), "поиск")]"); -``` - -Стоит использовать, если: - -- текст элемента уникален и стабилен (названия кнопок, заголовки); -- нет других идентификаторов (нет `data-testid`, `id`, классов); -- тестируете, что правильный текст отображается в правильном месте; -- работаете с динамически генерируемым контентом, где единственный стабильный элемент — текст; -- нужно найти элемент, содержащий определённый текст внутри себя или в дочерних элементах. - -#### По атрибутам - -Для поиска элемента по атрибуту, используйте селектор вида `//element[@type="atribute"]`. - -```javascript -// Поиск по одному атрибуту -const nameInput = await browser.$("//input[@name="username"]"); -await nameInput.setValue("john_doe"); - -// Множественные условия (AND) -const activeModal = await browser.$("//div[@class="modal" and @data-visible="true"]"); - -// Условие OR -const submitBtn = await browser.$("//button[@type="submit" or @class="btn-submit"]"); - -// Поиск по началу значения атрибута -const imageJpg = await browser.$("//img[starts-with(@src, "/images/")]"); - -// Поиск по концу значения атрибута -const pdfLink = await browser.$("//a[substring(@href, string-length(@href) - 3) = ".pdf"]"); - -// Поиск по частичному совпадению атрибута -const dataElement = await browser.$("//div[contains(@data-component, "user-profile")]"); - -// NOT условие -const notDisabledButton = await browser.$("//button[not(@disabled)]"); -``` - -Стоит использовать, если: - -- нужны сложные условия поиска (комбинации атрибутов); -- работаете с динамическими атрибутами (`data`-атрибуты с переменными значениями); -- нужна гибкость в поиске (частичные совпадения, начало/конец строки); -- CSS-селекторы не могут выразить нужную логику; -- нужно найти элемент по отсутствию атрибута. - -#### Навигация по DOM - -Исползуя XPath, вы можете навигировать по DOM-дереву. - -```javascript -// Прямой родитель -const parentDiv = await browser.$("//input[@name="email"]/.."); - -// Предок с условием -const formContainer = await browser.$("//input[@name="email"]/ancestor::form[@id="registration"]"); - -// Следующий сиблинг -const errorLabel = await browser.$("//input[@class="invalid"]/following-sibling::span[@class="error"][1]"); - -// Предыдущий сиблинг -const label = await browser.$("//input[@name="password"]/preceding-sibling::label[1]"); - -// Все потомки -const allInputs = await browser.$$("//form[@id="checkout"]//input"); - -// Прямые дети -const directChildren = await browser.$$("//ul[@class="menu"]/li"); - -// Поиск «дяди» элемента (родитель -> сиблинг родителя) -const siblingSection = await browser.$("//h2[text()="Контакты"]/../following-sibling::section[1]"); -``` - -Стоит использовать, если: - -- нужно найти элемент относительно другого известного элемента; -- структура DOM сложна, но относительные позиции стабильны; -- тестируете связанные элементы (label и input, ошибка рядом с полем); -- нужно подняться вверх по DOM-дереву от найденного элемента; -- работаете с семантической структурой HTML (заголовок и следующая за ним секция). - -#### XPath: индексы и позиции - -XPath позволяет выбирать элементы по их позиции в наборе результатов. - -```javascript -// Первый элемент в результатах XPath -const firstButton = await browser.$("(//button[@class="action"])[1]"); -await firstButton.click(); - -// Последний элемент -const lastItem = await browser.$("(//li[@class="menu-item"])[last()]"); - -// Второй элемент -const secondRow = await browser.$("(//table[@id="results"]//tr)[2]"); - -// Предпоследний -const secondToLast = await browser.$("(//div[@class="card"])[last()-1]"); - -// Диапазон элементов (все кроме первого) -const allButFirst = await browser.$$("(//li[@class="item"])[position() > 1]"); - -// Каждый третий элемент -const everyThird = await browser.$$("//div[@class="grid-item"][position() mod 3 = 0]"); -``` - -Стоит использовать, если: - -- нужен доступ к элементу по его позиции в наборе результатов; -- тестируете пагинацию или списки с определённым порядком; -- работаете с таблицами и нужна конкретная строка; -- нужен первый или последний элемент среди нескольких одинаковых; -- тестируете сортировку (проверка, что элемент на правильной позиции). - -### Селекторы по Link Text - -Селекторы по содержащемуся внутри тексту позволяют находить ссылки `(<a>)` по их тексту. Используйте `="text"`, чтобы найти элемент с точным текстом и `*="text"` для поиска по частичному совпадению текста. - -```javascript -// Полное совпадение текста ссылки -const loginLink = await browser.$("=Войти в систему"); -await loginLink.click(); - -// Частичное совпадение -const docsLink = await browser.$("*=Документация"); -await docsLink.click(); -``` - -Стоит использовать, если: - -- работаете с навигационными ссылками с уникальным текстом; -- тестируете меню и навигацию сайта; -- текст ссылки является частью требований и не должен меняться; -- нужна простота и читаемость теста; -- тестируете наличие ссылок с правильным текстом на странице. - -### Селекторы по имени тега - -Чтобы найти элемент по их HTML-тегу, используйте селектор по имени тега. - -```javascript -// Поиск первой кнопки на странице -const button = await browser.$("button"); -await button.click(); - -// Все параграфы -const paragraphs = await browser.$$("p"); -const textsArray = await Promise.all(paragraphs.map(p => p.getText())); - -// Все изображения -const images = await browser.$$("img"); -for (const img of images) { - const alt = await img.getAttribute("alt"); - expect(alt).not.toBe(""); // проверка accessibility -} - -// Форма -const form = await browser.$("form"); -await form.waitForDisplayed(); - -// Таблица -const table = await browser.$("table"); -const rows = await table.$$("tr"); -``` - -Стоит использовать, если: - -- на странице один элемент данного типа (например, единственная форма); -- нужно получить все элементы определённого типа для массовой проверки; -- тестируете семантичность HTML (наличие правильных тегов); -- работаете с базовой HTML-структурой (`form`, `table`, `ul`); -- проводите accessibility-аудит (проверка всех `img` на наличие `alt`). - -### React селекторы - -Для поиска экомпонентов в React-приложении по их имени, используйте react-селекторы, например `react$("MyButton")` найдет компонент `MyButton`, а `react$("Button" { props: { variant: "primary", size: "large"}})` найдет кнопку с определенными параметрами. - -```javascript -// Поиск React-компонента по имени -const myButton = await browser.react$("MyButton"); -await myButton.click(); - -// С фильтрацией по параметрами -const primaryButton = await browser.react$("Button", { - props: { variant: "primary", size: "large" }, -}); - -// С фильтрацией по state -const openModal = await browser.react$("Modal", { - state: { isOpen: true, activeTab: "settings" }, -}); - -// Все экземпляры компонента -const allCards = await browser.react$$("ProductCard"); -console.log("Найдено карточек: ${allCards.length}"); - -// Вложенный поиск -const form = await browser.react$("CheckoutForm"); -const submitButton = await form.react$("SubmitButton"); - -// С комплексными параметрами -const userProfile = await browser.react$("UserProfile", { - props: { - user: { id: 123, role: "admin" }, - editable: true, - }, -}); -``` - -Стоит использовать, если: - -- работаете с React-приложением и имеете доступ к исходному коду; -- нужно найти компонент по его параметрам или `state`; -- тестируете, что компонент рендерится с правильными данными; -- структура `DOM` может меняться, но API компонента стабилен; -- нужна глубокая интеграция с React DevTools. - -### Shadow DOM селекторы - -Shadow DOM селекторы позволяют работать с элементами внутри Shadow DOM — инкапсулированной части DOM-дерева. Например, если у вас есть кастомный элемент `my-custom-element`, вы можете найти кнопку внутри его Shadow DOM с помощью `shadow$("button")`. - -```javascript -// Простой доступ в Shadow DOM -const customElement = await browser.$("my-custom-element"); -const button = await customElement.shadow$("button"); -await button.click(); - -// Множественные элементы в Shadow DOM -const slotElements = await customElement.shadow$$(".slot-item"); -``` - -Стоит использовать, если: - -- работаете с Web Components и Custom Elements; -- приложение использует Shadow DOM для инкапсуляции стилей; -- тестируете компоненты из сторонних библиотек (Lit, Stencil, native Web Components); -- нужен доступ к элементам внутри shadow root; -- работаете с дизайн-системой на базе Web Components. - -## Testing-library - -Testing Library — это адаптер популярной философии Testing Library для Testplane. Она предоставляет селекторы, ориентированные на пользовательский опыт (как пользователи находят элементы). - -### ByRole - -`getByRole` — основной метод в Testing Library, который позволяет находить элементы по их ARIA-ролям. Например, если вы используете метод `screen.getByRole("button", { name: /submit/i })`, то найдете кнопку с текстом, содержащим `submit`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск кнопки -const submitButton = screen.getByRole("button", { name: /submit/i }); -await userEvent.click(submitButton); - -// Поиск текстового поля -const emailInput = screen.getByRole("textbox", { name: /email/i }); -await userEvent.type(emailInput, "test@example.com"); - -// Поиск чекбокса -const agreeCheckbox = screen.getByRole("checkbox", { name: /agree to terms/i }); -await userEvent.click(agreeCheckbox); -``` - -Стоит использовать, если: - -- для любых интерактивных элементов (кнопки, ссылки, поля ввода); -- для структурных элементов (`navigation`, `main`, `header`, `footer`); -- для форм и их элементов (`radio`, `checkbox`, `combobox`); -- для заголовков и важных текстовых элементов; -- для списков и таблиц. - -### ByLabelText - -Для поиска элементов форм по тексту их меток (`label`), используйте метод `getByLabelText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по тексту label (полное совпадение) -const emailInput = screen.getByLabelText("Email Address"); -await userEvent.type(emailInput, "user@example.com"); - -// Поиск с регулярным выражением (частичное совпадение, case-insensitive) -const passwordInput = screen.getByLabelText(/password/i); -await userEvent.type(passwordInput, "secure123"); -``` - -Стоит использовать, если: - -- работаете с формами; -- нужно найти input, select, textarea по связанной метке; -- занимаетесь тестированием доступности (наличие `label` обязательно для доступности); -- метка уникальна и описательна. - -### ByPlaceholderText - -Чтобы найти поле ввода по тексту `placeholder`, используйте селектор `getByPlaceholderText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по placeholder -const searchInput = screen.getByPlaceholderText("Search..."); -await userEvent.type(searchInput, "testing library"); - -// С регулярным выражением -const emailInput = screen.getByPlaceholderText(/enter.*email/i); -await userEvent.type(emailInput, "test@example.com"); -``` - -Стоит использовать, если: - -- у поля нет `label`, но есть `placeholder`; -- занимаетесь тестированием legacy-кода, где `placeholder` используется вместо `label`; -- `placeholder` достаточно описателен и уникален. - -### ByText - -Чтобы найти текстовый элемент по его содержимому, используйте метод `getByText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск по точному тексту -const heading = screen.getByText("Welcome to our application"); -expect(heading).toBeInTheDocument(); - -// С регулярным выражением (частичное совпадение) -const errorMessage = screen.getByText(/error.*occurred/i); -expect(errorMessage).toHaveClass("error"); -``` - -Стоит использовать, если: - -- необходимо найти неинтерактивные текстовые элементов (параграфы, заголовки, уведомления); -- занимаетесь проверкой отображения текста на странице; -- текст уникален и является частью требований. - -### ByDisplayValue - -Для поиска элемента по их текущему значению, используйте метод `getByDisplayValue`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск input с конкретным значением -const emailInput = screen.getByDisplayValue("user@example.com"); -expect(emailInput).toBeInTheDocument(); - -// Поиск с регулярным выражением -const searchInput = screen.getByDisplayValue(/search query/i); -``` - -Стоит использовать, если: - -- необходимо протестировать предзаполненных форм (edit forms, profile pages); -- нужно проверить установку корректного значения после действия; -- необходимо найти элемент по его текущему значению, а не по label. - -### ByAltText - -Для поиска изображений по тексту `alt`, используйте метод `getByAltText`. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск изображения по alt тексту -const logo = screen.getByAltText("Company Logo"); -expect(logo).toBeInTheDocument(); -expect(logo).toHaveAttribute("src", "/images/logo.png"); -``` - -Стоит использовать, если: - -- нужно работать с изображениями (`<img>`, `<area>`, `<input type="image">`); -- необходимо проверить доступность изображений (наличие `alt` обязательно); -- `alt`-текст достаточно описателен и уникален. - -### ByTitle - -Чтобы найти элемент по атрибуту title, используйте метод getByTitle. - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Поиск элемента по title атрибуту -const closeButton = screen.getByTitle("Close dialog"); -await userEvent.click(closeButton); -``` - -Стоит использовать, если: - -- необходимо работать с элементами, которые используют `title` для `tooltips`; -- нужно протестировать `iframe`-элементы (`title` обязателен для доступности); -- нужно взаимодействовать с `SVG`-элементами (`title` внутри `SVG` для описания). - -### ByTestId - -`getByTestId` используется как последний вариант, когда другие методы не подходят. Например, если вы используете `screen.getByTestId("submit-button")`, то найдте элемент с атрибутом `data-testid="submit-button"` - -```javascript -import { screen } from "@testing-library/dom"; -import userEvent from "@testing-library/user-event"; - -// Базовое использование -const submitButton = screen.getByTestId("submit-button"); -await userEvent.click(submitButton); -``` From 9430f1e9d6bb6811d38542824bd2f9824fabee44 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Mon, 2 Feb 2026 17:22:43 +0300 Subject: [PATCH 17/22] docs: quickstart-fix --- .../current/quickstart/index.mdx | 2 +- .../current/quickstart/running-tests.mdx | 14 +++--- .../current/quickstart/writing-tests.mdx | 46 +++++++++---------- 3 files changed, 31 insertions(+), 31 deletions(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx index 035e2ea5..6fa8d256 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx @@ -22,7 +22,7 @@ npm init testplane@latest YOUR_PROJECT_PATH Чтобы настроить проект, а не использовать дефолты при его инициализации, укажите опцию `-v`. -После выполнения команды установки, в директории проекта появится следующий набор файлов и папок: +После выполнения команды установки в директории проекта появится следующий набор файлов и папок: ```bash node_modules diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index 212068a3..dc1655bb 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -20,7 +20,7 @@ npx testplane gui ### Запуск конкретного теста -У вас имеется набор тестов и вам нужно запустить только один из них. +У вас имеется набор тестов, и вам нужно запустить только один из них. ```javascript const assert = require("assert"); @@ -70,7 +70,7 @@ testplane --grep "Проверка наличия поля поиска" browsers: ["chrome", "firefox"]; ``` -При выполнении команды `npx testplane` тесты запустятся в браузерах Google Chrome и Mozila Firefox. +При выполнении команды `npx testplane` тесты запустятся в браузерах Google Chrome и Mozilla Firefox. ```bash # Запуск во всех браузерах (по умолчанию) @@ -119,11 +119,11 @@ describe("Browser specific tests", () => { testplane ../testplane-tests/example.testplane.ts ``` -Где `../testplane-tests/example.testplane.ts` это путь к файлу с тестами. +Где `../testplane-tests/example.testplane.ts` — это путь к файлу с тестами. ### Режим пользовательского интерфейса -В Testplane вы можете работать с тестами в UI формате с помощью Testplane UI. +В Testplane вы можете работать с тестами в UI-формате с помощью Testplane UI. ![](/img/docs/html-reporter/html-reporter-demo.png) @@ -133,7 +133,7 @@ testplane ../testplane-tests/example.testplane.ts ### Отладка в gui-формате -Отслеживать процесс выполнения тестов очень легко, если запустить их в `gui`-режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки и какого они характера. +Отслеживать процесс выполнения тестов очень легко, если запустить их в `gui`-режиме. В подобном формате работы html-reporter продемонстрирует, какие тесты были успешно выполнены, а в каких присутствуют ошибки, а также укажет характер этих ошибок. ![Интерфейс Testplane GUI](/img/docs/guides/testplane-gui.png) @@ -147,7 +147,7 @@ it("отладка с паузой", async ({ browser }) => { await browser.url("/page"); // browser.debug() останавливает выполнение теста - // и открывает интерактивную консоль (REPL - Read-Eval-Print Loop) + // и открывает интерактивную консоль (REPL — Read-Eval-Print Loop) await browser.debug(); // После вызова debug() тест приостанавливается @@ -166,7 +166,7 @@ it("отладка с паузой", async ({ browser }) => { ### Отладка через Testplane UI -Наиболее удобным способом для работы с отладкой тестов является UI-режим, в нем вы можете в реальном времени наблюдать выполнения тестов. +Наиболее удобным способом для работы с отладкой тестов является UI-режим, в нем вы можете в реальном времени наблюдать выполнение тестов. ![](/gif/docs/ui/run-debug.gif) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index b1d02d8b..01e55b5a 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -25,7 +25,7 @@ it("описание того, что должно произойти", async ({ }); ``` -После установки testplane, вы можете ознакомиться с примером теста, для этого перейдите в папку `testplane-tests` и откройте файл `example.testplane.ts`. +После установки testplane вы можете ознакомиться с примером теста, для этого перейдите в папку `testplane-tests` и откройте файл `example.testplane.ts`. ```javascript describe("test examples", () => { @@ -125,7 +125,7 @@ const assert = require("assert"); describe("tests, () => { - it("Пример клика - открытие поиска", async ({browser}) => { + it("Пример клика — открытие поиска", async ({browser}) => { await browser.url("https://testplane.io/ru/"); // Клик по кнопке поиска @@ -140,7 +140,7 @@ describe("tests, () => { assert.strictEqual(isDisplayed, true); }); - it("Пример ввода текста - поиск по документации", async ({browser}) => { + it("Пример ввода текста — поиск по документации", async ({browser}) => { await browser.url("https://testplane.io/ru/"); // Открываем поиск @@ -160,7 +160,7 @@ describe("tests, () => { assert.strictEqual(inputValue, "browser"); }); - it("Пример двойного клика - выделение текста заголовка", async ({browser}) => { + it("Пример двойного клика — выделение текста заголовка", async ({browser}) => { await browser.url("https://testplane.io/ru/"); // Находим заголовок на главной странице @@ -188,14 +188,14 @@ Testplane задействует `expect API` из `WebdriverIO` для пров const assert = require("assert"); describe("tests", () => { - it("WebdriverIO assert - проверка URL", async ({ browser }) => { + it("WebdriverIO assert — проверка URL", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); // WebdriverIO expect для browser await expect(browser).toHaveUrl("https://testplane.io/ru/"); }); - it("WebdriverIO assert - проверка существования элемента", async ({ browser }) => { + it("WebdriverIO assert — проверка существования элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const logo = await browser.$("a.navbar__brand"); @@ -204,7 +204,7 @@ describe("tests", () => { await expect(logo).toExist(); }); - it("WebdriverIO assert - проверка видимости элемента", async ({ browser }) => { + it("WebdriverIO assert — проверка видимости элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const searchButton = await browser.$("button.DocSearch"); @@ -214,7 +214,7 @@ describe("tests", () => { }); // Примеры с Jest ассертами - it("Jest assert - проверка заголовка страницы", async ({ browser }) => { + it("Jest assert — проверка заголовка страницы", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const title = await browser.getTitle(); @@ -223,7 +223,7 @@ describe("tests", () => { expect(title).toContain("Testplane"); }); - it("Jest assert - проверка количества элементов", async ({ browser }) => { + it("Jest assert — проверка количества элементов", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const menuItems = await browser.$$("nav.navbar a.navbar__item"); @@ -232,7 +232,7 @@ describe("tests", () => { expect(menuItems.length).toBeGreaterThan(0); }); - it("Jest assert - проверка атрибута элемента", async ({ browser }) => { + it("Jest assert — проверка атрибута элемента", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const docsLink = await browser.$("a[href='/ru/docs/v8/']"); @@ -242,7 +242,7 @@ describe("tests", () => { expect(href).toBe("/ru/docs/v8/"); }); - it("Jest assert - проверка URL с регулярным выражением", async ({ browser }) => { + it("Jest assert — проверка URL с регулярным выражением", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const currentUrl = await browser.getUrl(); @@ -255,39 +255,39 @@ describe("tests", () => { ### Хуки -Хуки — это специальные функции, которые автоматически выполняются в определенные моменты жизненного цикла тестов. Они позволяют подготовить окружение перед тестами и очистить его после выполнения. По умолчанию доступны два вида хуков — `beforeEach` и `afterEach`, первый выполняется перед каждым тестом, а второй после. +Хуки — это специальные функции, которые автоматически выполняются в определенные моменты жизненного цикла тестов. Они позволяют подготовить окружение перед тестами и очистить его после выполнения. По умолчанию доступны два вида хуков — `beforeEach` и `afterEach`, первый выполняется перед каждым тестом, а второй — после. ```javascript const assert = require("assert"); describe("Примеры работы с хуками", () => { - // beforeEach - выполняется перед каждым тестом + // beforeEach — выполняется перед каждым тестом beforeEach(async ({ browser }) => { - console.log("--- Выполняется BEFOREEACH - перед каждым тестом ---"); + console.log("--- Выполняется BEFOREEACH — перед каждым тестом ---"); await browser.url("https://testplane.io/ru/"); await browser.pause(500); }); - // afterEach - выполняется после каждого теста + // afterEach — выполняется после каждого теста afterEach(async ({ browser }) => { - console.log("--- Выполняется AFTEREACH - после каждого теста ---"); + console.log("--- Выполняется AFTEREACH — после каждого теста ---"); const currentUrl = await browser.getUrl(); console.log("Текущий URL:", currentUrl); // Можно делать скриншоты, очищать данные и т.д. }); - it("Тест 1 - проверка заголовка", async ({ browser }) => { + it("Тест 1 — проверка заголовка", async ({ browser }) => { const title = await browser.getTitle(); assert.ok(title.includes("Testplane")); }); - it("Тест 2 - проверка логотипа", async ({ browser }) => { + it("Тест 2 — проверка логотипа", async ({ browser }) => { const logo = await browser.$("a.navbar__brand"); const isDisplayed = await logo.isDisplayed(); assert.strictEqual(isDisplayed, true); }); - it("Тест 3 - проверка поиска", async ({ browser }) => { + it("Тест 3 — проверка поиска", async ({ browser }) => { const searchButton = await browser.$("button.DocSearch"); const isExisting = await searchButton.isExisting(); assert.strictEqual(isExisting, true); @@ -425,7 +425,7 @@ describe("Примеры ожиданий в Testplane", () => { ### Работа с формами -Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радио-кнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута. +Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радиокнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута. ```javascript const assert = require("assert"); @@ -453,14 +453,14 @@ describe("Примеры работы с формами в Testplane", () => { assert.strictEqual(isSelected, false); }); - it("Работа с радио-кнопками через клик", async ({ browser }) => { + it("Работа с радиокнопками через клик", async ({ browser }) => { await browser.url("https://the-internet.herokuapp.com/"); // Переходим на страницу с примерами const link = await browser.$("a[href='/forgot_password']"); await link.click(); - // Работа с полем email (как пример радио-кнопок) + // Работа с полем email (как пример радиокнопок) const emailInput = await browser.$("#email"); await emailInput.waitForDisplayed({ timeout: 5000 }); await emailInput.setValue("test@example.com"); @@ -513,7 +513,7 @@ describe("Примеры работы с формами в Testplane", () => { ### Работа с JavaScript кодом -Иногда нужно выполнить произвольный JavaScript код в контексте страницы — например, для работы с `localStorage`, вызова функций или манипуляции `DOM` напрямую. Метод `execute()` выполняет код в браузере и может возвращать результат. +Иногда нужно выполнить произвольный JavaScript-код в контексте страницы — например, для работы с `localStorage`, вызова функций или манипуляции `DOM` напрямую. Метод `execute()` выполняет код в браузере и может возвращать результат. ```javascript const assert = require("assert"); From 0ffeecab2a40872e7a2ff53246f2eab00ae31419 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Wed, 25 Feb 2026 16:02:55 +0300 Subject: [PATCH 18/22] docs: image-fix --- .../current/quickstart/index.mdx | 2 +- .../current/quickstart/running-tests.mdx | 14 - .../current/quickstart/writing-tests.mdx | 240 ++++++++---------- static/img/docs/guides/testplane-gui.png | Bin 250274 -> 384661 bytes 4 files changed, 102 insertions(+), 154 deletions(-) diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx index 6fa8d256..4611679a 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/index.mdx @@ -14,7 +14,7 @@ import Admonition from "@theme/Admonition"; ## Установка {#install} -Для запуска установщика testplane, с помощью `npm` выполните следующую команду: +Для запуска установщика testplane с помощью `npm` выполните следующую команду: ```bash npm init testplane@latest YOUR_PROJECT_PATH diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx index dc1655bb..094fa000 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/running-tests.mdx @@ -32,19 +32,6 @@ describe("tests", () => { assert.ok(title.includes("Testplane")); }); - it("Проверка наличия логотипа на главной странице", async ({ browser }) => { - await browser.url("https://testplane.io/ru/"); - const logo = await browser.$("a.navbar__brand"); - const isDisplayed = await logo.isDisplayed(); - assert.strictEqual(isDisplayed, true); - }); - - it("Проверка навигационного меню", async ({ browser }) => { - await browser.url("https://testplane.io/ru/"); - const menuItems = await browser.$$("nav.navbar a.navbar__item"); - assert.ok(menuItems.length > 0); - }); - it("Проверка наличия поля поиска", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); const searchButton = await browser.$("button.DocSearch"); @@ -109,7 +96,6 @@ describe("Browser specific tests", () => { }); ``` - ### Запуск теста из конкретного файла Чтобы запустить тесты из конкретного файла, выполните команду: diff --git a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx index 01e55b5a..f3ebb1fb 100644 --- a/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx +++ b/i18n/ru/docusaurus-plugin-content-docs/current/quickstart/writing-tests.mdx @@ -118,60 +118,72 @@ describe("tests", () => { ### Взаимодействия с элементами -После знакомства с селекторами и нахождения элемента можно выполнить различные действия: клик, ввод текста, двойной клик. +После знакомства с селекторами и поиска элемента можно выполнить различные действия: клик, ввод текста, двойной клик. + +Для клика по элементу используйте метод `element.click()`. ```javascript const assert = require("assert"); -describe("tests, () => { - - it("Пример клика — открытие поиска", async ({browser}) => { +describe("Тест клика", () => { + it("Пример клика — открытие поиска", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); // Клик по кнопке поиска const searchButton = await browser.$("button.DocSearch"); - await searchButton.waitForClickable({timeout: 5000}); + await searchButton.waitForClickable({ timeout: 5000 }); await searchButton.click(); - await browser.pause(1000); // Проверяем, что модальное окно поиска появилось const searchModal = await browser.$(".DocSearch-Modal"); const isDisplayed = await searchModal.isDisplayed(); assert.strictEqual(isDisplayed, true); }); +}); +``` + +Чтобы заполнить поле для ввода текста используйте метод `element.setValue("text")`. - it("Пример ввода текста — поиск по документации", async ({browser}) => { +```javascript +const assert = require("assert"); + +describe("Тест ввода текста", () => { + it("Пример ввода текста — поиск по документации", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); // Открываем поиск const searchButton = await browser.$("button.DocSearch"); - await searchButton.waitForClickable({timeout: 5000}); + await searchButton.waitForClickable({ timeout: 5000 }); await searchButton.click(); - await browser.pause(500); // Вводим текст в поле поиска const searchInput = await browser.$("input.DocSearch-Input"); - await searchInput.waitForDisplayed({timeout: 5000}); + await searchInput.waitForDisplayed({ timeout: 5000 }); await searchInput.setValue("browser"); - await browser.pause(1000); // Проверяем, что текст введен const inputValue = await searchInput.getValue(); assert.strictEqual(inputValue, "browser"); }); +}); +``` + +Для двойного клика по элементу используйте метод `element.doubleClick()`. - it("Пример двойного клика — выделение текста заголовка", async ({browser}) => { +```javascript +const assert = require("assert"); + +describe("Тест двойного клика", () => { + it("Пример двойного клика — выделение текста заголовка", async ({ browser }) => { await browser.url("https://testplane.io/ru/"); // Находим заголовок на главной странице const heading = await browser.$("h1"); - await heading.waitForDisplayed({timeout: 5000}); + await heading.waitForDisplayed({ timeout: 5000 }); await heading.scrollIntoView(); - await browser.pause(500); // Двойной клик по заголовку await heading.doubleClick(); - await browser.pause(500); // Проверяем, что элемент существует и отображается const isDisplayed = await heading.isDisplayed(); @@ -180,9 +192,81 @@ describe("tests, () => { }); ``` +Testplane предоставляет специальные методы для работы с различными элементами форм. Например, чекбоксы и радиокнопки управляются через клик. + +```javascript +const assert = require("assert"); + +describe("Взаимодействие с формами", () => { + it("Работа с чекбоксами через клик", async ({ browser }) => { + // Для демонстрации используем страницу с формой + await browser.url("https://the-internet.herokuapp.com/checkboxes"); + + const checkbox1 = await browser.$("#checkboxes input:nth-child(1)"); + await checkbox1.waitForDisplayed({ timeout: 5000 }); + + // Проверяем начальное состояние + let isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, false); + + // Кликаем для выбора + await checkbox1.click(); + isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, true); + + // Кликаем еще раз для снятия выбора + await checkbox1.click(); + isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, false); + }); + + it("Работа с радиокнопками через клик", async ({ browser }) => { + await browser.url("https://the-internet.herokuapp.com/"); + + // Переходим на страницу с примерами + const link = await browser.$("a[href='/forgot_password']"); + await link.click(); + + // Работа с полем email (как пример радиокнопок) + const emailInput = await browser.$("#email"); + await emailInput.waitForDisplayed({ timeout: 5000 }); + await emailInput.setValue("test@example.com"); + + const value = await emailInput.getValue(); + assert.ok(value.includes("test@example.com")); + }); +}); +``` + +Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута. + +```javascript +const assert = require("assert"); + +describe("Работа с выпадающим списком", () => { + it("Работа с выпадающим списком (select) — выбор по тексту", async ({ browser }) => { + await browser.url("https://the-internet.herokuapp.com/dropdown"); + + const dropdown = await browser.$("#dropdown"); + await dropdown.waitForDisplayed({ timeout: 5000 }); + + // Выбор опции по видимому тексту + await dropdown.selectByVisibleText("Option 1"); + + // Проверяем выбранное значение + let selectedValue = await dropdown.getValue(); + assert.strictEqual(selectedValue, "1"); + + // Получаем текст выбранной опции + let selectedText = await dropdown.$("option:checked").getText(); + assert.strictEqual(selectedText, "Option 1"); + }); +}); +``` + ### Assertions -Testplane задействует `expect API` из `WebdriverIO` для проверки состояния элементов и страниц — это позволяет формулировать утверждения (`assertions`) о том, какими должны быть свойства элементов или страницы в целом. +Testplane задействует `expect API` из `WebdriverIO` для проверки состояния элементов и страниц — это позволяет формулировать утверждения (`assertions`) о том, какими должны быть свойства элементов или страницы в целом. ```javascript const assert = require("assert"); @@ -260,41 +344,7 @@ describe("tests", () => { ```javascript const assert = require("assert"); -describe("Примеры работы с хуками", () => { - // beforeEach — выполняется перед каждым тестом - beforeEach(async ({ browser }) => { - console.log("--- Выполняется BEFOREEACH — перед каждым тестом ---"); - await browser.url("https://testplane.io/ru/"); - await browser.pause(500); - }); - - // afterEach — выполняется после каждого теста - afterEach(async ({ browser }) => { - console.log("--- Выполняется AFTEREACH — после каждого теста ---"); - const currentUrl = await browser.getUrl(); - console.log("Текущий URL:", currentUrl); - // Можно делать скриншоты, очищать данные и т.д. - }); - - it("Тест 1 — проверка заголовка", async ({ browser }) => { - const title = await browser.getTitle(); - assert.ok(title.includes("Testplane")); - }); - - it("Тест 2 — проверка логотипа", async ({ browser }) => { - const logo = await browser.$("a.navbar__brand"); - const isDisplayed = await logo.isDisplayed(); - assert.strictEqual(isDisplayed, true); - }); - - it("Тест 3 — проверка поиска", async ({ browser }) => { - const searchButton = await browser.$("button.DocSearch"); - const isExisting = await searchButton.isExisting(); - assert.strictEqual(isExisting, true); - }); -}); - -describe("Пример вложенных describe с хуками", () => { +describe("Пример работы с хуками", () => { beforeEach(async ({ browser }) => { console.log("--- OUTER BEFOREEACH ---"); await browser.url("https://testplane.io/ru/"); @@ -423,94 +473,6 @@ describe("Примеры ожиданий в Testplane", () => { }); ``` -### Работа с формами - -Testplane предоставляет специальные методы для работы с различными элементами форм. Чекбоксы и радиокнопки управляются через клик. Для выпадающих списков `(<select>)` есть удобные методы выбора опций по видимому тексту или значению атрибута. - -```javascript -const assert = require("assert"); - -describe("Примеры работы с формами в Testplane", () => { - it("Работа с чекбоксами через клик", async ({ browser }) => { - // Для демонстрации используем страницу с формой - await browser.url("https://the-internet.herokuapp.com/checkboxes"); - - const checkbox1 = await browser.$("#checkboxes input:nth-child(1)"); - await checkbox1.waitForDisplayed({ timeout: 5000 }); - - // Проверяем начальное состояние - let isSelected = await checkbox1.isSelected(); - assert.strictEqual(isSelected, false); - - // Кликаем для выбора - await checkbox1.click(); - isSelected = await checkbox1.isSelected(); - assert.strictEqual(isSelected, true); - - // Кликаем еще раз для снятия выбора - await checkbox1.click(); - isSelected = await checkbox1.isSelected(); - assert.strictEqual(isSelected, false); - }); - - it("Работа с радиокнопками через клик", async ({ browser }) => { - await browser.url("https://the-internet.herokuapp.com/"); - - // Переходим на страницу с примерами - const link = await browser.$("a[href='/forgot_password']"); - await link.click(); - - // Работа с полем email (как пример радиокнопок) - const emailInput = await browser.$("#email"); - await emailInput.waitForDisplayed({ timeout: 5000 }); - await emailInput.setValue("test@example.com"); - - const value = await emailInput.getValue(); - assert.ok(value.includes("test@example.com")); - }); - - it("Работа с выпадающим списком (select) — выбор по тексту", async ({ browser }) => { - await browser.url("https://the-internet.herokuapp.com/dropdown"); - - const dropdown = await browser.$("#dropdown"); - await dropdown.waitForDisplayed({ timeout: 5000 }); - - // Выбор опции по видимому тексту - await dropdown.selectByVisibleText("Option 1"); - - // Проверяем выбранное значение - let selectedValue = await dropdown.getValue(); - assert.strictEqual(selectedValue, "1"); - - // Получаем текст выбранной опции - let selectedText = await dropdown.$("option:checked").getText(); - assert.strictEqual(selectedText, "Option 1"); - }); - - it("Отправка формы и проверка результата", async ({ browser }) => { - await browser.url("https://the-internet.herokuapp.com/login"); - - // Заполняем форму - const usernameInput = await browser.$("#username"); - const passwordInput = await browser.$("#password"); - const submitButton = await browser.$("button[type='submit']"); - - await usernameInput.setValue("tomsmith"); - await passwordInput.setValue("SuperSecretPassword!"); - - // Отправляем форму - await submitButton.click(); - - // Ждем появления сообщения об успехе - const successMessage = await browser.$("#flash"); - await successMessage.waitForDisplayed({ timeout: 5000 }); - - const messageText = await successMessage.getText(); - assert.ok(messageText.includes("You logged into a secure area!")); - }); -}); -``` - ### Работа с JavaScript кодом Иногда нужно выполнить произвольный JavaScript-код в контексте страницы — например, для работы с `localStorage`, вызова функций или манипуляции `DOM` напрямую. Метод `execute()` выполняет код в браузере и может возвращать результат. diff --git a/static/img/docs/guides/testplane-gui.png b/static/img/docs/guides/testplane-gui.png index 7aaa7c02a07c530f3cece4b4b2a3e8e0c0dd647a..b7b71c937edf70a2a13e7152efbe626a0ce616b0 100644 GIT binary patch literal 384661 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%0Dx^%_LN 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∾&bbbt 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 z iJ)B66kgaY05p2Jp#_TF=Kk!k{5cWc()mBy^_eG%0j2W{^X5f@^6IoLt=0s_*W zrD|*CcZU6;y1e@OH*wKM&kEHbtpHZ-Y6sNDL)yw1rZ~q$0Rx;PE94p%aFITb?j6X* zAw+6>&EdMtSh{|MJa&wg!20skn=70EI4iO@j%Cc`CeV{ClZ}fX9%6cHu>`pJHH-#k z6J~unEXI})b-rt*>GT3>m}fEvaH=l$z%kV^Z0Pr|1$Bv^drJ2QG4q+y8h{kpcAfti zH0&MeB9kCM)SXfl?E9vJ3GrK3wA1f6j?vnC%>2@f!;L&pF4O<888i}OP1*0Vt5H5P zZ`@-if3FCnt-b|H@MihCi*Ce;-A#9kjkbZaVv6w>Yb7HJYm4Cb=e)#2j`r@AYEu+& z805)Ce+0O{9mU@;7v3fCP6*zI&t}gOW=K5OwEQkchR)?+WBVu6J!h|N&BlEC0Q`nl z=dcz_rE#+>pP47POV1DHR!I&%3v)6X!$z7B2=SK^aaSl;<pi@SBB*P(Db`Z}e_$lA z`<fEFW8V`;4`jYf!l5z;oS$zgF7~ly2y^r;yZS(|XUFGkpuadjZBI+PESHe$Y`$lX zSs!|fR%E>+!&<Lj0vCJ&N@nq=&+h%o+Nb5)GDe{5|7L=b8wAp|!PG}lIYSR(-Xi9+ z9IlStzEdFjn|^(D1C+x#5%GbD3+8g|XHxEH?03?V|0aPYLi6bH-0^@XuC6uzR|sD7 z^|<f^R9U~53}*LXgGgCPRi1b^qGl3v+ciJ;EJ+9A(bOAbSau;y(|+sBj}g8{DQHh5 zjw$jS(5q@AqiE>-caBWL%e{t0n$43z$+p!ediOXNGV+<o1W#tb9Me>Ghswjh;zIRq z+*7x!B~VZY2~S@8Ub#ZV1Zxz0Mxa@}zcUi58xobnCB+!O_|>stYaKAJ<LbX9TzX2_ zftKdLUd5PxMD*rN#-%BK?0QUFoDQWpK?4-b;3EaZZ+4pb+W=(hj7=H=kKA;1mn5B? zm|$O^qzygkX1l5>al$|d0S?^aB^%t|+F8Gg?oP?gTj&-pzxEkLL&m=&jmANOVVWHs zP=63ibQX+YZTPd>ZHi|y!L*?{x66wtQ-wM^Xfy!aRJ}AUGuvCJp%Qis=JgE3G*=kz zwS9`zo;&en{dl^VJE#>`A}qNl7vAhX{SKWvSAo^iJgL!^g!UQe)rqvp6$HkzZEv`< z%B>);Oj~x}ukPIbLcopk`~i0|+fI#9pU-C|I#*-(SiAwDH<>Ppqd<3xl=y+r?>`KY zJ$jHz#z`E?Nm!R8yTh?YPN1R%Iswu*C^z&uXqt_uPBy3aJ6{B@+r*~=UF8P?^j120 zK1y{Sb@K^RjChsZmv%Oip+tQae*TSJnpcd*oY31gV;vmBLlA1Oc9?(gS1Rg8317Z> zmd3k`#IpFdgNu@wEZEyszSH|_%<|-B{GP2#IfT46M-hjaA1?1qyZYx?VxA@z31B`> z%#;9;{PXAV@wT+3+3b~^Eoot$s*+ycwt4EMe6Ta9lsT?8rB1E$^=}RCwc7-_N$vV$ zY$AqimQg%D>=89L6E2|cxdd{Zzl$6m&q^{f`;MGZ=%NNrFxPy(;KLDM1=D4r*XpG} z<W6t^%Awuo$+45L9g8wP^p*Ik5(Gmr91C9t_c+v?M0mJNh9VQWzRH<roLV$0&qUsG zWl;eS7VKdBSPc-HLRn7xsOWFd8`W)LqgT7hPlUTFgH5fSx$#}nC58uIm^JPrmLrGk zqk~wyvLP=E?HYrd*aW+#UdJ>rqmtxb(qfo|((_|QY+D>2DN%Hb>capLlJtP?bhDvQ zM#BAfG2u=++ILm<qFMqukH=f@!aS@XYzhYut_oRfuecBkQu&$cHR_}4jmW0n!PnH8 z#mNbn7Gk#Q_$1lQ*Dj#qA{}ZKO)=*keIK5B_x*0@<(ftCDf}TE+Tx@+mX@4$l0kr7 zmRU|XZ;p~6$+hkWMZ}bV3cHeO!+^nDM&~+MBm)e5a9~^V^>_Trn)!~%Ml$+rEN=?> z4&lOk*)4@>u$<2q8n-#-^V!HNSJdS-_YJHtVVmUh&K-+n2`TZZ2huzb>C_AMn;Ort z9ev<=ATrAg*=F}RC<t!LHM!A-b|IFvA&lm-Ic^b?yPQzA*3C@nHzYhbHJdADJcb>8 ztMcmZu;Z!QH0K=EIWEGHWV*PH>5-CmRG1kS5>RCS*O*FTn+^2TDujXoPl{Ou<fBoV z+n}IKxVT>!=5nKE)|Bc;%0n^z5w|TVRVd3rsUX^4;nJ+}_B*o!h=T;~oI7*j#I_Q! zME6R{7Wy)T&$Z$oi~PMjZD*Jy$1D{y<5dn;HTQ0<QXkA!p|AV#ZS32Lyob3H7Lkvp zA84gOHB9s~3ICgY!?h_HC2w^Tv0-w}4?8jaqX&tPZnZdkdN78QXbX*RhFSyvw>Ndh zq9rY2wW}iiSUUb`_x5a?`(&Ts-<FpF{CQQr3PvAW0i%ca3-AzAhtJRaTBbbAnPMu| znp8zpGVcau|8C)3kz!{U?ATFi5{etIvSl(Ap|#7uZKk0mcKUB*A0Sf5XcD4rZ;CNW zu0LJJ#u|7!6BW4EzT#*w$DuG9a{(2IP#+FA9wKuuv~N_LQNkRY%80iV3qBRPTLUov zV_YV6?k~IJ<zKVd9r_k!6pU8!r#Pl$>mdKeaGE_j0DnrC@IG!VnI#k9QJYduE{bgD zQ*qdTE^u;79kq&?HlP6I{L@`@_4b6@$v}NO=p)R~%XYZZ@(RP(nOOiBa||;VG6=V> zrNSOYdB2RB{P1`Qw{X^1&uk?qj3@fcbh^qc0dG*<c3VAPnR>G);4iX{O1UBIQ<$C{ z9)WRpxTG=X9%M0@M{_yX6l0HlufeWY6ip~Ki*UUr@j3O>7*-&zdI@H}35WT$MV>$0 z2vC~Sr-3GIjFM<3KR(Lnn%;G-4yBwe0mq2#B!hW`dZ>L_z={ih)P*>uasG8}uWG%- zF=h6m!ZBd4V<&Pz%@z@2_|lsB!Z&5ENe33uMMBF7(fAX_$Bx367R3zqoZj;#E^G_t zp0q&U;}a7L_vmo~pO0|;<fdm{l%F?ts0~)ps8w{5>^RRSH1#Zc)J1ar#jdYy<lTlI zS4~uRS$!$KvLe{_C2jB9aS&|tjpF<@KKX^?>6}^7mw5DZ0~fG6ok2Ic^k6#jKup#t zvfD6r3(b=G`Z}e$@5lW3F&RSEuD8e?BCaDK@o5x`Zs@ilG`qp}TS!Gbig-~lRpWEY zg)J`tqr3kU;1WM|g}T5LcmwCupJPu($Bo%UG?asQuu(XnAI;oyUi}j#a%nOq>;W(w zvD8r*`#xDvGKrTDxYxEcO>PAXGTm_=0~*}avjxX7?U?f)BBG7bP6eT2=dp)eh`sD* zB9C10jZBT#_1iGD>k<3y!K!xBl=yRuvJU3Oxq#il{p@+wFBCf{g5(yFaJi)xN}4@{ z_~>fgw#)CT&f@8obiDnhCQ`tX<2d6~2}ZHVG!oQ5Dvo$dsJa;LQ^5!a2wb<?i}_SW zFy|CXm?vn(jTSV^em#7PJfIrvh&ds}9BJwHF8V3!<m_JV$>pg8?{J|v7ZN+1p306l zg-h`09va#$9NPP#a0h{h)bO4%Ij=^!TVz>GsaGi2xabu~9KgD9Vf3EfN)Xbw$aNzN zgnPUpeC==&1EFpc_p%9h&0ssQ0jRq`e0n0h-R2<E_J2^_-s=Kjcg|wWX^CKcByRFy zb7n&z18U#@J6*_A56~V`8J_onLonMNTtvYQuE;$+Q`%koBaiHM#Ae!|LDp(14_!V? zOUtnuT%HxVlBa(?kB=VL9rY**ZQZlkXfMFID$8tpP`Uu?VctzcB_BuZECXGYr?<Bh zIjRRY!a)~)sWIgxN{>tRC9tFegxP~iTA?CfZgiC!XrgEYZ@*8lwVs#sC@F&Ym2E>^ zT7sQDR$W0C6Bi)BVpcgAbLfa0;0+<9EN=sHI9K*m!W7YP5zW{>SK?|5ZbZF^O39OT zn%R1LN~K}r>WOLR?1Hg=;35>p_Fzl&{V9P)ASC+Uc(DwOMWtS3bz5nNp~nZQ&b#|- zXD3=t0Qco3I%D9;gf<D_SsiYo%^0k{o~OfKNi}4c(lEua%O<}#6)&mHlN}W+D-h{5 z*Pn9LS%3j2b{5m;xI^Zb7Qj8X4!<2wyn_p$5Y7{8Y_P0S<rd&eVcVQy!LEAvQ36^j zA*l>4ruzI*DnV}W+x_%IMnt<PFIhI`sk~mc9w2;kUA)%ty@T<9;e2z$lLq0i*s{MC zD+n)sAbQ9fJi3~uvJ_N6lU;8?<GTbXKo9BMxnKkSb_YVa>bq~I4r`0~-Nkh12Kyz` zoH4I4JZ|9r<J>$_gw9B<SMU^QA><19xtqQlk4ve&py-$+-KA#ewuP;<%Cb3rGRp)o zW<^4{Y2{lB*jFUDgQST_gK}`YgT+;nW==r6P0rPde{3Jhr>!QWreY-$a^^O$s{TQ7 zE?P-PHLM^kX&o+0z>rAJY^cG&-8zPs;%E(}qTYIpm#-9oNIq6yqoeRI773p4UPJ*H zb;UFl1O*B<bIVG5T0)USaJ|>_OWvkmBvbtmD`!<y{ufvq52v4I)A?+Pazb0jOug@Q z>}0jVw!Mh9Ylaf;<?Sa<u;m<cQ9__y4JQTS+U2JrQCl|eekK>il`sKseeX0>@NSy# zIv1w0$te49D1}CT<SlzDKCgC;mu~_k+$XpB*iF>51g$B)<QJ;c5?G3QlHXH#ylsz= z&J9DKBCt65`kAcOcSKK~eRH+k^1>4y-I?qW0gZR^0|xHH-6jSk5^Q}czACGJ%kvh^ zfwe+}jukgeLCvgus*4ix#U94znd<9C-aHVxaLa961jPgbFdg^qow}3Syu38Jd~mN< zu1<ljT%^$J_*coYQfRS7J%mN8a;5NWaonYM#cs%Im)pI+)8GH_0?vb~uM@l3%jGlK zo`d$*pjt%Xh@E+vo5erGC62jOrM^DvE!D_6*74FS)ssb*%ItSAmB*~10CkjG8V`D^ zI9DMDi+r^)_>4}Q%qNkpm)EId?4~lJF4hdFkx*2B%;_#uf(-V&&U!V5<Bo=lQ=qrg z-%He?w8Y6e&T1_R)n!_^E|yPd2U9f9MIU+}H*PLt@{W+E6B;PtXySP|1T)i;H;QT* zbWSeTIOJhiZ8fl{*)|t*kPky9VLH;9t@s-U=PC2A@`?4DS32C9vt1{iT-<K8&@4nz zJx7CLe5y}W_#Zr};MD~X(olsc1{8R)1s#XhCONlPD>65GS7dG|cM8dt4RY>grv>8k zZJaeTY|KCDn(tfGQ;C$7Vca|Lq$P9cyV^y;?hPz^v^4Efv;5;w@z;40l26;{pTIJ( zV45!b{LN6NVUq~F@N2|ZsH{2t*B2rQ=MP=fSJ55ye!E^k|BZo9dxL>{rC`RlCyF~S zQ1-I3azn}5l<9o-97?~x_vBszAyz(|u5&Kt$a`NceTv5C%j<8D9{3uf<jYj|U6M&N zM-dLWBz&;6_TsFWf7kBzmU{D3rejnPmbO7k#5OPP)GN@`>hl8Wj@IS9iT^NqlliIl z8u3BdVU{0;6(>#z|KYh!Ue!6;w4!q~1Ug3!$A889umlaR+l6VC^tMEi@o#2yfazR^ zsl3p5I&enI392C#`F|mm=0+y|OZvp`j$8K1o<9BR5WNO_^T6NtqIa?i{6mTt5mZ8C zs;L1u6M;N12g7>(&~je;cm@zw5N4SeDhw(`Em7~)Jy;upywA6tT#85X&Y}aaGixbp zO?MOmi^g0$HJ=7$`vLZ=i^jH)4Sn7)_9b7Y;6YTa#*>b)6VV2DYD0~c{X)}VE;h-t zin_Vi_<spLz0ZXj+?>tvk2AFLqpiX#qpf4eBok3I&d!HI4$<x4Sw51HGdDnNT^V5o zAbQpEkLdxD-+mm@H1FoH54<%FbYM_&ok=j|QXOfBz(2IO<pqA;g8RDi+v7wFs0UrP zYcZ_71(}yt$}r3AKP7k{-IP_W*D~JRK%+(YP7XFy=fHNfEo2v!nCly%2IPN(Xm35K z{>&Q~esq6LD_xG;)D2{r)j459!asvFh=8xy0hCyC=u5EzYBpF&T+6<N|Bk2<7b8mH zh$^u>9Z>ejfWZu3I0DetVdq*!zF?&;#J1ql86RX&g_tScJ#AL8$ssEr!qxzSCEFTq z`R8=lCxUksQCDq3XS#r3SJuv#p+70f{}Ca1g-057ZDvG+9g$YPNe@^QE*+|Y9C~9g z#kGY!@Izt6D+lg99pYRy52i8qB|VA*<jI>3CzbMQ&_+324cPws8~J|9Q#>U<Q`y5= zKvntp&T8%5ezAJD$5uquz>@;eDTpVLNc2~M>tYMjodb0)$h4D9|K^y@7xKE|wqUy3 zwpnWUhX1mE_@At%KZWKS%q5`b%=$Eb?YO{v{mQtY=$AzEt4G68icc@_fP5IDkYFIP za+KE5RaN4TS0fXQe)pZ5*V7L%xJ?ao1CrDQxAo+FRsV0IEiYGup{*}%W`xPw-2lHo zK2&?<LpQCSVxOx_efB2cMPv(A!l93#o;AF(({R*z<^Pp2z$t$E_w9LLN^dI^?7f1b zb7bVVroz(f-_}_*r<f?IheiLH)#W``;g@=|>Xt~j0#o%rT2QT(!}RUfy<N*Y`6Y(^ zuL89Ezrx}_U)z6$#c#_0D=fa6um9DnU+43$u=r|L`_~3x9o@e+2&)yuzwR3A>Hk0C zuEBQEXsGeS2oPp3Y$TNc1;t_RxfIt97Xa}PJ(;?|dINVGgx>uwC}XX?7F691p{td3 z>y%L1%plP2$B#dv{8u)4wcvcEf|R+Axeh%;^f*!N=PNDlC58W}8cUV{^<xMWFuNv? zI!g*20W&~Et~QDbc2%8h!MF&7n*T>>+InEMX>rbZAh?tX+r<l;O{V?<xvqTpdv#=6 zF<dzOgj4}liR0i3M^a-ekBcrtNgwDVoqgo+=hp%W3dCpTMV`#3K3MoaN;5mVR(|*< z(g%0X50!$zSzzDPOH-<uit0vDo9W&kcP6>M0q^ZXWS2?<V>XD4A@b4=Fw7En{{nJs zU;E7r$a4*d){P-;M<1+?>QD3zlSO;ytG$=HCaZ&7eHb|GV3ugqbkQ<%Nt=v_9*lh2 zVdwx0`YJJ#xSU+qd5|E~B#h5)qKVs<{3c+&QnJ@%{2aWFxKoVXK{VF5O=pAuPtNJD zR$D$A*}JaT@!p=dfGSzwRx^a6s@N`%nwC?|a@8D7KteeS^vL#{Y#}HeRIP%xhYJ|a zBjmhAo7y%I?w$I!bYCF8v193{$};DO8KQCx1W$99*%7U=pTy46sag?ijcfkR^@zmS zh*aBbpssO%*bPCvSREp%<UH3OlLhqMYR_%~!|TZ4vIXcQ!D3eB%KKfYv$$O#Aa}fn zeQoO`|LW)}Ou*^B1(gQ^<Apf7b!!d@n-bEfGr;aCC`1nwZ3IG%jX;3q%!{HYF;3h` zp6|4u)7JYSTsuY&fBlDhWtszai=khBty%o3?JJfN$I*=F5W_x4^Vs*+5A9$e*21od z_z?b8asRt@*UWx}lUx1x6&Cn?ZMGgZsxjBFZrpd0{^*8#_pi<ly*YdG@Vx_A`os6O za-umB{kL5{c{$%d6HT`R?aT9um7V_Ee0E8N1PJ0aC1;Ha*-tOD4Hk+{$&4=a47m+g zct-5PbdYH<!Lo+i=QQ-8q#4}1BAn%zb_k__x$K#=Hdt@B2069IrhecHnl?}klADC% zJzRg@t*dlGqo7GdYCOR|mjf0`i|5v@`@Pln;oWZMda?|;T|4gk)s@tI-cNetL!AK` z;fpik@oKZPAZqQ7Q7e+kKxJ>s-b@U^WrDRG0?IalNMU3{AmH~&r&&(?ZA=BjcP&sl z6b;$YOy^6+cozfKmveOVS3mjd2(F`JhtG@zo1#xuC%=q>{A8cppHDIDW;v6ZP~Rq6 z<|QR>Zc|K#pha`lg%>HQ)4HjfS$b~0v(M?TJz$><dcKAUPfnAf`i18ixQ<-j=L1^? z1%VQscT00m-(eABxbd_ZWF|~O@X9Ii!j)=pZ{9G`!RSlA5^!JH5LEM=KzB`NxH;9{ zX$-*Xu)@p^C$La!{Py{2(F2szi*_4IB)BVMa1~O&A2bVgenG+1Fi|s|P$7M55P4P_ zJhDr3D^q%QH6rCLcRu)pgD*Mwi?QMFcYHlPN;SWm;n0qAs$=zjS2O1?^*Qx@+j{TT zVO2`=QEsKgk~YrB#_C7$W~{l&&kijY0;uvuMQ+hyMdxoAF&Cr)5WK|-q{gnAEzbWS z!`xF?%Neeq5%j!wRovn01k!y%cCCBDn0Q7sc+OgZI!INj;y^uuo{L+4eP5a$0oH}3 z+1E7gIW;AjMz?(dj>GZR_Og2LO}9lP>cTpxTlb%J+1Cng<~oXs_YmQqG~nHs45qyb z*`7_BtApn@5a7D;w=c&NKxgQ^nA(p!C8mGQye-#r_nptr@9X7vdxBM#!qOE&UkCi( z_j~5o0$i7#(+LTm&tT<o89a3~$J2zVH3U>{<ua|;>lKo($CgzJYbSloU0!mxYRz=4 z3hXSX1$*2kZL{#;bX92=_Xd6ECQ$O(MkXC%>XHSV?*oXQhq}6e1v422GZN`v*xUAL zvUiT9fwy~7hJCNw@z3JT=5NOcz7Ypqbf;p#v5mqx!SdfD3V)Jsrms&h!~yW0`tD+= z+i8ftX`&xpJl2Q)fHW~j$PT#(65bi<jXVE?ZLQ91eSCMUyi*`jzvF)YuyNnF$Jk64 z6_cAnbV-UG)F;uy*5@019{;!+J;2aepyo@yJdv)N3zYv*km;);qOy$&=)5nFNrDMF zG7-5od-Vlmt|>G8|Gr3?$Aog7TpsL)9B@&_-z=X8D6h`RiOEEo9>?_U%u%J^9uZvP z9>(-+p6;vX>2dn}(aAwkc5x4CNZu)m6bHt(IZ4Wo-CIJoWd}5uc$RTyV{nKnV)ocD zWV1c}*>KmR+xp=+1s)dm2i`x%JB0CnyyQ`eMqvL89=GYGk2cZHN<3G5yn0>g4p*5h z_~E+xt&d{YUKd)p{kyM5_c`OU$cr&IcOKQcm--q%W$FFCuHc{_PT$`>oF&cQiDTvZ zBKp!*6=28eGThN8+a74<a)F`5j<SGUtIEjzaJzb+|F7GnLtjtQHJg*V)WBT`12e5# z{m0;Lz#A*BY?gKt0M@jdDjcU3ehuG$hSYo?BpR{!pB}4cxQd#;yAem^br|G!TF9x@ zo0<k${0~TqSAqA&dxl|o_5MZF!u7!v+OhC9BYY;gl+$6T@e2*!qtc|S&-Wn@6r|$+ zJaszs(JJAV@7}%JRkY6qf3nc`*{0PCJiwP);}4;wrfO%`+6#Pj19^WiwtvfwDt|&w z-N61>)bLwRTf!vI9hJTPQ<rO_Y|eJK(1P?>`|}7y+Q8Y51Psylhjne#y+fO{u<Gs8 zPz@#l0rORya?VsUR&Ku+6=?7_z{Z<0yQOI}0nr|B`@{ptLun?Tx9R4%rKZ|Y>m?of z+A$Yw>Y@WEvFdz{d<|z7Jb}c91Cv=MCq`~>@crh+Xu%4L6__9Al83=QRRDR16AkO4 zm2*DKGJ!mt5JDD`8ys?kP&5rL+;01NA<|S3>ytn(M+@FqB)X;`d;=`}C7Y(|Ss5uO z*NE-a?scF2-YxDnY3>fBJ88~YG@Ag?&K@+L^M1v}1rCHMtqUQVxBM8S+&#J<t|}x- zQ+xRu+hgt_p;dNa>@;w}eq>jFE%akjE{X1H2J(}1-q`fGg=gASlR8nC98V6y<y@=W z%?V25Py`u9%|aS+>oo;pUn=-Zf66MCG<@7nqTyhUEDi?Wx|t5KKeXfYv(i2*$nk-4 z!_!prFNH|NdH7=yzF~GGY3x3T<yGw#vt%=P<~RqXMiMxH2x%o$BgUTW6(xKQDpR71 zU`30UEt;D}Tt9Q#M1ewkvzMcdug!IFf#5ww^qv}Q*itnPtc-075j-yV1b*u8k=0M| zRi2C?u>U{af`2Y8EM!9t(^e+hQl#UElLLz7@xCa1h+@svtX*rN|9sL)3O>8?HfGM< z)qLf6d03ogCSA%2>fsn%*ZNx6+^dULjf|K$!~Z^(hwy?fDf9Yc;-Q7+SoN6FgU4I! zZs~)Bae;{6DRzS#_`bY8^+vZEKSEh+eQU$!q~ZY1lKL}dT?Iv8xBK@dg?Rm}dZZ!f zW6|#E6uN%Ap@0fr3r%n^EkRI9F8N_!?<bTJ3)qU!gS<1oyJZ@5Mbi)=okoPCJXuu$ zo8-pe^UWMGzg-i2!#D2|`4}k%zXt5V!%ltdaDx4aMr2`Yj2AcOoHrjHz$GQFwFCq0 zMs9G4F_M+-&@_$^F}>h{IfB@DP+>!B)DLsZ?=>R>9+t+q4qrB$iwoLwq82>IUrg8& zYGO`N?{GP3C3>gb`%aIWn$3aAA2G$PsMk-_dp!VRHN{L4cWw<Jt`G3Agd0`1BU_NI zE?ohSO%+8uB0arxWOs~L$L<|;g+u5jSFMQgU+|nFOxQtP(hMX+E`yi$bFi<H2vWzN z5SiaNYQLE=3=C)=wq;kAeMJ2hMqd?g>MKtMUbxoSfo9NMsGKiMk6(VD0fOzL`kn<1 zxVak%bDHg%h7OBRRmQ>XrR`7w!=$}>&b5wRpC0VM=d#6lTV@`7<J~N)S(gjeClk{R zp*XP(`djKkjlhA&oeGNfH-@V+=~$tP+s~H0m_bKZK&6|Zk21PTk5jkXw(}25Tnax# z_Gb^SY|nOl{XAY)BP`8f{H4*Q@kiE)yw&$y-ea>4Oznzy)1|;JMqNBeF_&)TpNu7h zHNBv7<csu3BI{r-ibWD(lgicL?y>Ajuv}6uNQe9BezLe+DC_Xig<Uj0S<)i1+meuE z<`FIz3G`u35yGP|)xpLOZxK0=g6Q$~VHT+&Bh+8LRE>Uhj7OJp-Z_xfykZvai1ol! z%|aSc-+4J$B{|h)3_A~Y>^#JIgdl*yOwHTFVt5|3KM6L#c3aZbN-)UD#+wxQE~|Wm z9S}E5X~khEzQ#{wC|>D|8t&R>=Z%M75`2e!Cg6_J;_y=gkm%PFZovz*hXb*`<OYOM zDy#!Pp&jf^8fndPk6zk|ls9#id5Nk}Lo1)`i$Z_xsG4e$21<6(gY5ei`dLn!L*Vgi z8sxjf0IVR%<DmZ*Zd<VXIa{TSvCx#`9KY~6!%6MER>3TA`ZwYa?UcDvc-ts~@wWrA z&Zlt4^J5lIc3h%7wubGE`eZZJx=>a94LI+aj*XmRmKrx5zg|8UMr-iCs*>0l!?;Ky z9ql_Lnd$Y8uk>%R#mY>$mwY6V#m&p$>!1)(!$!O0IXD*(ar3l*9#R@Dab_=`a1hw$ zOZJ;DcwhAx3O*GZ8aP+|)}HumMw0!r2XFTw6`#ImI&=O(KigzXO~6L4I}S2M7hYWR zKc;UUd-bgJI>Lo;U|6Zwj{y0;?fg4M46zdH>O>)647vmDN=HG4feguoHs}qe^0fWE zp@+4fOfB9ZL5m_|-BS_9v88ct{$uDJ0a_+AZEiGll!#8`H`#4F$Mr_u-qkm}V^M4o z)`F;Dc(cQBsIuf1`5vbqhu2ua#%R0vHUh7UJGddcV6+#1+|}fm4(;X4rkGv!85--Y z9NphA2o4p<9@ArGD7q1qt-*l!(!dX4;A-Cl1|e1*gyat8?~F7wa~?3O{GA0FQV16X zjE0V5hA;|Ub^^rviD{Svk#-Ea47G?bQ+u!KYu!a9bdCPwX=u7Dg+O@nqrPMEIQ)ea z>+9sIyU?;VTQGr#`p==?I=X(2=b~nTKR#XZekS8Kc|?ZsY=ag-#APtgFilhct$EEW zpZ?J~z2TbETT+n%$oh?NKoulWV^<HKc#2;_$HxZINL%Fbd7)@t3l|5bW4aEy;76WD zhJ4wYty~^vwCA_l7*GX`pw;xCgcNITbNu?!4gM;7w=(nVo(F;LhxhF6YT|nag!k5x z%GycAH$HAX*9aW=SBeR-ymx#P6@v)#Kw=gp5D2IqFz{Mz-JcL7{rxT?qW0JnYHl%1 z$0Su<RmL=Ld2w`6Tm8A}V(fq|QVf7M_eAjoh?U}fUB@5ApUOr}98A?K&~0^@t&3b@ z8=8jwtPOQbA0eV|#HkhJAaCu`)d!l{o3Y<cJZ8(z=?at@f@SWizLUrAYcM(hXW;{| zg<9PIejVrv$_e+V=;w`Z6dpWuYyttrTwu_ZG{acdrmHwW)CNeY4NYKo!Rx7^Fg88v zy_|*URTs?nX-)Ngaw!L~q_I9kC%1IOd$!zg2r|nt%)86MJGqS2T<oD(sega@tx=oH zn7Gz>8)HT|2r$$qnO+p`Lu_I2fqYA|Uwa6LNr_f!<v<Z%><oSjH|2anQUXD6a6%iT zGwPOiu=64s)grVD@!v7(j=C~cA}y1pm5_1$cPK>1DC4goa@M@%8r>y7>X-j=jQGZB z>!#{Ai(xolx4R3-QQ1e5s?KF20%HdG$8+^wPeu(iOHLzt!1JE3@nM-wbFgu_e|*op z=QgCJ_`TFb8Medhe=7d*%z9l+5M_rug|Od+7*o>sfRGvgM)*0r3NqtN1({y2c;e&j z`*9AQk6Unr8bm5}Hkn2Y<Xh+-Lef$iB$5PFeD2t8FOjF{wt?Lt1{QvN?cZg=2)R&d zId&&_C273eu;Cw6l@%mQK6SNusaa`WVuD;|#B?uV*S8*hw>>UOQFoBCRP*t#yFcCq z>>YlZ^Tt|wawVte6rI!x7zNt#kG*$d`t3M@ppJ+ebSM}oY{r~Zwj?xe_4=0W>zsLl zHE-*yb#HAYT7Y^MEpMC_UGm)#aE2RybwP+A6BBYJuZQXtP-j@ijrt*egHnA7xh@-Y z1Z_k5HeAR)bQjU)=fhsa<R@A+#P6agu!}4LU5#tBjOlCHiIzgjoyBg@y2}v5(WJX% zx?~Bg#7AbP%^;{9Hhx0=K&MNeR9m}E_7mc%9H4kOo7{!=J-JRrN^sM4bb2hOHnQ?y zl4XtL$w-&Zdk=?Gljm|_Wm=T**|HTttt-fB7u#hqy8)LsKO!akEFSMVr<7vVAXKaB za<*UuGQ*u6O@Q$#%LREo4e%}Oh^~I^JE|zS*Mn019d;2cp>m%PS4BCMPebve%Ipgs zDKsYilA;s>>q3I}qJRiJh8fxS+FyRm9+W2B<ld%QHB@PZnzZB2jMay>v;P+9`K{OM z2T{NckS~EhzZr7P#Ij1<Ks#yaAl6Y|ACw2;ty)0bc`5D(A)gfA(04J}3t7C(5ssdl zn9HJalS4egAz~V+c(cSD;h;N_(aCllr$%v}`bC#N>3Z%8#sYGHU|fO~)%hE^#R{mK zy-+*XfS&8<DCm`J<FitLM96ktX|nEUusiUx7dP*2aFLTNwDz1m$GwGijcIX?syU5e zKgRZmNpnC$OxdrsaJYoqdy-({Po8MVgWH`3*yTK&XRou4#`{_(UEKYgyOeztQpYym zo)KU2kY3kF#u>Wzy}q+RdE79-3{F|rvdSecAWh&NthP8j|6>#f$t+TCFo&>v6sqX$ z8Hctvwa4u8!(n2Nd8u5hczz{Z$~n+Fg6*M(k!0JstyqOI?E3n2T~koQFiMC0h_l$4 z;*d*|^E$zHc~CgaPed+T6I8b2K>4Eeyn1R&nhmx1cu>XQ2HiZbMc#4;S<F2#+V{;g z%RCGbs|}7EUHX4lmCR$-ozT;tftA1VO-<-NPf+JKn~br{M-W-wa&{-pzE&Kf*#FJ{ zbsU>G%_1gzL0QCLN=kv<eyWN2c&qf+fYW(gK;fiSp7AzF$oxR)&UjI{;1&FK%!wXX zv|H)-EafNgYH&ADS1s+<&2`43tLI3B71Joq;<kD>oJ@x)aB-K8WLu_;TW!hY;8+qN zL~H;{6J3V+zTGz?hPsZ+Fe;Aj$Sr;yGygF!dk9x;)v?+fr`c7x6V6^36UW5dD)=3z z14>l)3b?fM@CqK&zkl!ZN{$dNN!O@gp@{9w(tC0Pe!LF&&iDljn?YUoHBpo#r2S;0 zP2dUdi;2E-gHKNR5gu}GX@ZQ|rju&fJ&JwZ&{1^f9Qw;Z@ol=7ilj_P6knx`@^41% zdzN9{U;FMc{#5g8%>)Aju_n8BPp!H757r?{d*|8Pqb?-CBU+@DkumT{3px|wLk6xt z7!SdH()9~vzshnPV_!deIk@wCN>uwW7-Na}7B<Z(q0|NPn<00U3XR{4Lw_U?>`irB zh5&X?1TME|t&Q5NDX<(+JsbQI+y&}3usrmNZ7&zjV^->|#D{J@ixo2tcpWzl5zy?m zeUY51;`$}1n=6Qi^{{O^+{>P?P3dv(<bUq~QM&De33=j+;Ui?IyJWh`Lor<0GT?-f zEgU;<JZ9Lof;)*}K2btdp1#OUCkpcr`(NlTFb%m~2wqy6#-rz)2EKlVmUufb!3SLh zl~$26jvh0kTR|_{hd0PEFs}hx*7;bnBiPxed`1NLRplNZvr22XQA@Ai(&kU>7%2VD z*lL;O5;;2(<0;TQSvmv7%sD4bg&LS)9n*@&(|26pEV#d{a{II&!6bHR;oPFdb{Vw6 zapoIhi+f_-z|F*)u=KhtjPRnrO`}G6JA>yUwr|xv!tKY%Fn8b&LK|*;VrvtRxTtvz zPZpTT_`VZCFoPor_l|AAVQjFGqIt15%2O=r7Mj|{_VQB9<WIJ{sGF0al^Xv<GwTBe zJGgjCRkDp##vEY4O=YlXhJ2<}!%{zvOVZ)4waE3(j}OP(0J@sXxP;MSXqxI%WT?Qf z$9T?9pM2LiQ*EU-=JX3Q+KI8@+iO6BWMl(my8@?iBWJaCZMpf53o->&AMQa1WTvr4 zc5$-K26%C_kh$>fc_()z+~ph;5g`(a@iuANCNN6bv{Cf8>P^0Yu@Cn-Cc>=@V2qvs zeV?xpGVVGHOcn5eDeBL6A2WZ{u_OK?F-D2&`p2!isOCPtMJQGx7cAB7GPGO-W?VL3 z?o5Xst|)Tp?LY=pNO$@b<z}U2%G!b&98jxpRd}z&)LUK`{G9s7b!+Eyc0a@MR-_+< za9ltI?G=|x;?&F1&ArjqMBehQMN_85vradT)V)2og%fNyYMv6TL7$1wpytv(mDZ1A zc;9e{kZG_b@Wt>OLpR%Vbv$%6nivtS*}9KN<qg(`CN7tckkEL<KWC-kE+Z9eSPqwf ziJCQJX)=;33kavS&<37^oK<JL3yVbiI=r;&jU$oOw@*Dro%5%b1q;Xscx&$l0f5@? zPz27No<uLA@9x1teoZx0yCmAu1`Fy|u+yLtR?y=z<`n5U{Q)V(ve5QACmU;PYmKBB zH0GxUcT`xtk%p{ogHhBu&XO#~@IW}doz5Kwu0!w(n8Yu_&dsu}n}(^&!_4cwn%!Tj z2>Hl>Y~!MNCq(Co>4_cCil#b2-#DKf?1c&L1V;w9#Xd8AcH2cKWF~+t%T@PG?N0De z9upT97ymC25*dlA2^_KSsVJSI*FW9}es-e8P!~}V<fN-SV)yN(s_BG%-{2A$RlHmz zU~eZE%yOmN;luVD+BVz}!_-lBSeDN}i;VoylV`DYb$X*yW$6<DQyic0BmRFl2OeP1 zGk8S!b}75{*NfavGW;Y?-PCoZX~wCWv6>}Zy7t13YR1gc<B6O@mkRCyEVAz{-5t7D zDBofM9d!14rg>DsED2hHX)uy<OU@jB^(v-~ZG(nsRTO#;A+rg5nO^$n=0!#|z#~NF z8PS)b+Sr8lid#RI!#4~9yeUHPA2?VIXw04=$m?i&(h-MTW%g^ZcEoN?i&5o9w&RZ& z(ilDWI!qjD(YSI#Z+(NICMbPOBW65G9m;+|$zohVbZ<c(O1bmkcsq%ZPuOkks^ifD zLhp`e<;B|ChvD7a5i74BaowC6)lLd2@lH#%25M+Q*9lDPN`t`Rt}OQhFsHl)?a?XF zPELWr%9#+%wS#+>0+v0@m!R?&*8DNP4#?Lx#y=eWjr9Boy<TSc;KHZto8zIQyl1SJ z<z!>x>LMi*b|{iB^|ll|cy8W?vrvN%=H&(I8r}{E@9R8%7fRazNhcN66UKk|XV9(B zP^~m)q(%2=9AW*v6<<$JP*@pA{dI7)7k_qq9bV7_Pt>uk-TK4po3GJzZJ#!y(;K(D zd3fT*ZFr$DQqgdH1W0xRf=9LMgWL^QLZ>N|s{5&`c=5{SRIAX-rr%&K{sZEJQ?Ru3 z5!ScO4;(nKWbJ3bNL#AlNEny}2_Xe^a5Olig0Ecjtu3-UPxN-=o4F`R=M$=<Wbqj< z2u0xdH01=??zL7WpE1}%d2y<1oCBUV06|Xh3YQ!&Kf%pS_RZ}WAT^(eY$v_^h6xJ+ z9jF?o<ZG3@`%L|809Caey&j5;EV4;-a|l>xqAhLCt*z~|O9njw?ordz4>#fjwkZWI zFY&tQ`aCTZ`aM{p=pBYFp)ZW)<HMx&mw%hXXG`0h-hf-YPM{kBD?n?cXyFx>j~g^j zDP&uHH?DYX5TAL^NV6SN&tLZ&@B!8Fd+hqq9Z`DBFWX5>pB$#PZlU#Te-&^CH_^oB z@in+ru0>NJ8e?;8?<30Fo*!_RUS%OTEAehD1Hd3p5trwJOr%`{O!&CEgis5|VJ#y; zos><&-=n*HBm}<(Y{ArM+$5Wphom|5t07M4IrsOXc+mX2Z2k6T=YU=}uaAn{<WAY* zq-f1Jtt$X5nwliT-nbSu&E}S=1&VeMqsgMF#Ij+r?Vig`F}Sa7chG|@+_Ek6p(MI^ z^tTZxIhTZJR?;qj^{>>qywqo6_JA8TfilbvYp0^k#~VTEfeoS_>=qVhf8x+RGyUbE zZ~lOx93P<uso~WdwR|v`+nd{N)=fjBtrK%08`u){CN&|#h9j*N(y;R7Yl`}aK5Ph0 zzfsu1V<9lc6-ycd`oZ0bP_wf^rC&$arMk2s`_ln?P9#aUy2@?rxGztSEB{nd{QD!c zq@RS!+SBn1YM)CM;P~n_Y2b*w>&^mTpddb@Y}iOL%*&N4w_3kC41yt$#|wWbCzZ`^ zefXoCoLVg>1y{<+fwvChdYqCc=4K|(&9`Xu@UTY+>Wef`ZDGV`YRgUI(Hq8=uOeDY z+aj28y6knRLqOb5JCRjy+zYt32@VexahZnLv6f?bCZC@eT~0HK+xs}?0=~luS|5C2 z9`si%!huR90$JAv4W&Mj7r#AK&3<(?s%W|Dz3%`Ng}xYo49hpM&I_<JGjn%=l9B0O z8<@v5LkBTF=P^^0c=S4NfU}mY4H8g+Fs~3xBB8_TiJHP%Az)VP8wDM`=SS6B6{cEY z?W8SZ;A~6<SZf&Uw}LdBDQ;nd#rhJLc5k8i6BFk=d))N%ymEd#Kj&Aq7;SF{E^^Qa zS%H8OQcrYZtRh@{b_qLh_VXV@UM`(*Nyk$cZ*0Up_2M`Oo|+h@2r(;c4WOYd#;Ar8 zJl!W41l&JdKVIU!#LM~Z#9MR`DrR2Ukgg`6{(H)d1lT2>3;NwXz-MyP`_8x}S_N4K zHlGWk=ia#7Vd3(fRTgjh`vw<})??#0k^;1W<{yA{SVK1(J;;mrOqiI=6%N4_?L9n5 z%gO3@V<(N#>(OBKMc1WQj(tC%UH9wqe_HGQmoooeeDz&@fxN4eQ<onT$m}xrH|r1A zb323c@i3UdO`3@s<N@q|o}o%^v0pVB71h)X4K{+cRceub)VTXmlT6DGFPYDexha>N zc7S(KnXn}3Ip?5m+To$QytHCX&m^wtG6y+)OOM!Nf6$tmAiPP~%e2dOGpG0@A@v}} z?u(NUNY~7NR*0062|3yVu5VU|KT0D1-fRlW&v}BhR}?5zQgBOdEggH!d5!RWk1go@ zcd;85vBwlG-i~RA*S7+M;JVA@s{7<-JK*IQ)QBgko1g79|MEs54g9zLLzbjt<&)8L zckt+nG>f`}+5CekOUtnnZ%_^6(fGTt!gBwx5U?Hqh(D2ZnEH_J`#5J1c)VMD*z;T0 z|6ZFe)8Jj+V+vSta9aTn;2ldM^hmptBj&yZ<v=E*J#{N=5CrpB3ow7h+DSt{D(ZJ{ z6#*(aYj5TWWE<~19)}U9Nnuf?eUB7iM#Zs{<M(b7I=j<InQ`MJ01qnzV}hG5JI1^V zG<f!`42~mrX^|}70beD|*FsTw9~Ch;dyK(lkNd}>Ox4uaIV>&A-eb3BXTumBYnilv zMvN^xCq1Lp2R(Gk<zOR>?-U-Lh!_*5K@&RrASqWCh%fa(;wqg(2p0a#yS8bky@mmR zjzG(<c($P}V=&sPc;7gfP-g`LeN4_5<y5{1m%<S!r{XC1r)YXBgf+vRZ3BiTl;^^* zQg4K}-VTX#;uIOxJg3~NMZq~HA8si_(TYz~+}L{HL~xJr8qWbWrE=2@A?Z6z8Nxo0 z^5n17>mBFWxMi<3kX)vY2W20`<f_aupLIf2&R`;uVZ*2l+xICdSj>iREtZ4JR*sx^ z+0@p?x8PQFqPG!DX7(C<TlB&oxpK;6*YEAYIyy1cSC?*)CAVira4b_XhW?mtU73ut z4W*z^f;+e8`fZ4mK0hO6zKWNQKbTz$n)zP;BT~w&M#`frk#cCi!4&qb!>(Lq)DPSD zHKai0pjcdMX6lY@Up>-6BZfj`-DVKo54w8_1nU`SJ(t|FW;!1%HkA%SQZYl8GEKC# zF(L^WJ-f3y?+ftGv$>67H%@?1OB34w^Kp!LxWx6VQJHowInhvtYfH`bRTQ#ko~VOL zu(XF0?IH!^-z>1qvS~@b{&;*w6!!l}pu=mrWZh{c3$^*Vjm$fZP~n7O(4#c)Yl=dV zP{qZ6C88upVeC~f&&PmEReP=JXP7MJ=Z#eFSyT18`|*AD?w~ED5MmJ>*FFr$@Q^>J z?WXCAgll`^7A&qJQwr93cxa5mLdl&Z@p@%RjFE~ZYBSmV3$H~mc?bw|A7<PU=c#&N znZ(VTD`a;j)0H8t6R7*88iivCPO_1BNLNiDamY5=rFv=n50veF6P+I@HiUgiWzm07 zPI2%&t$H7ka*wan3cb2o07lQ8iE%XtW{8K=PR`$IOyFmYth`1?f#)Q|R!2RjHdC)4 zA%4g~w>G6!wSeZs$<|fOiL2ODF#=BM(_hYUAHaqw5e$fbX{Fn}Mv%;LttV*fz2I{& z4METJwsNxHF3NS~O|&u#sNDiJaws4AkKQF5iDNZSKO`Xu^ZNNN?&X~ZL(1@+ns%|v zrWQJmVLb`=ZPNRHv?EU6>I`2IMg>zWS}B|qd!rxb<CdwGl(MvYWNGlGPOFX!)GZjZ z%K{KvImn2aj8M<gYc12DbkBf2K*R|W#st*EEq;eg7V^MN>s|*X>PU){5R3)Oau7|H zZ=M>JTI}Xsw&kJ1<h?R(E<RnQEOM34FymON8PQ2lVDVwE<x@V@X~IG=`SQ#Z3@fTP zNm|7r1UF1^0NEvf8Bmc_z_JB%!<>!B5nt9+>n4#T6;FXEZ`c4o6EY7w^`49dzcs%; zF9a{alv6)67SN#$S0#=Rg~{A*=HIuICO<|%#pXIch@*(xG@DGm<10|Yiwll3eYc^e zO+}ny&y#)pg^@{3a1|uih#Z(?32e7<tKPi-ciaY6Khg9^SUf8G>v_s!-;$JOoGLbM z9~%ErY_=z*+%j`lcyERg68Pahok_zosLG_t#CpPZvO&I6cUf?OC5Bql)oz~}bs+;a z69KJv8hqEVIZU65Pd;EB2b?h5eaVuENCS>Ir++j?bVzbg@ra(2^IHXqF*1kyKq6!l zI<0DzBMF;m*O*`JVba*F9c<Ut@g+(KreeszpQuGd6UU=bsf6q~AQ?SJ3zo=TL`jqg zltM!a(gP0e(?k83JJ`k<WaFPX+fvu>L6Fplgz~i%@W*lUFo8;6WEw&!-f@)Hng&{V zqvKC@=b?G{JcUy1;k{n;R@#TfkT;XTrdDlkddn{@0IlAt@S+FXV%R0I&&6pPpRmT5 zRD<waP040dq)ce5z;nxbq=#QG-nDD+n3rGK(-*cXNFa|MC`QT20WnJv&rrUJwt-D) zP26L<do%ah5{#4@Ux-;{TOC4VHV{oZ1`#*^u!}&33yi!)b|Wv(&k9O8mwRYn;|mhw zB^ZF8+3VW-{<q_@p8me(N^f?5W!{k$WZj_~kSV>s#o9-A>ZyMXsrYp?Iv8d|rPZQx zi<;}@8Tyh^f$`R;;rJDYdIGf`B~sbL6S~>5mV?(zY6@R$%cksWg?K6sXl2cpZn@a} z?@+Ad@R-*cSTKUF3G%qJdZ_Sl2*QirCxb5+tsnEC8N(cP7v_2w<g_PTQcl*gtqN%w zLrLXB(4GVwW~zS1o=r(pq<9p0eiKCo-0QFU85eowEe_*`fgSa^S8xb~J4G3M*_Yza z*Nw6=Bt3nx#O+>oD5epD96m*|HwhuzLg^T0#OX_3&#?Ws`W=Du6MYy~s<kX1)oZVF zWeTXLWb7Yu{#JFsrty7bI)wSK^~?`m7tX2ovG%C8z(e6i?;iC2z4xkOofEb;ibRfI z#LDGaA{0`R!)Mjy8$%7mZ<hot=E`O7;VuO*6}@isAT%KEW6@(VF9;M%*+|Q1T<&Z% z0)}Y|IQnmyMYPpvU9eY+;%I=TpXEZ(7L8I--R|1<{L|Y3$4dpx#d3hrSao)Xx70vt zk#JnnIDidSEUyCyo=^>NQ=y8~@Ues>8`;s<B`OiX%iM)8zC~7#Ryrz!R`cwo-oRu| z&6mOu&<0U68f-|2%+syX#Kc6%dS>>&oEL<qj8GW?rUlT45eth6SUhe;kwZ{b9!t5! z?b5zps^__JnFs#6f88R1+Ht=K8Y7cy$fEA=nCtt4s|f;Ir%1HG0iQTJ{Bj_&!Tisk z^JzgcdAC>0LOqa9s$-+AgNc?lu0fZtwC>a27~)Juw;2Q_A|rIf0ayGdbFti`x`;)p zf|%(By*k1s)9jgE+5qAlvEiWM5{=I2u*5IT1#(F>gFWxJfRhw8cG{$Fe7lYG*K|ma zR`qdVc~;*r9p#Yy7|Q)ObB1g^HK_^F@z}P9m3&71qxfnfI*6bea0S3oZRZo?AGhZm zA)X?ct`uE?GSiJlqRK(LL=Qd}w&ERmYUR$5NKLUY7Sv6fJk^M*LYL}%ae~Ku&i7?g zVUpMKoTmp6y21*hp(YK<llbn2z-lnl@9`|&FR&!_lr0+~zUMH6p+uPF3t3I+VkR+T zDc;LVv~j*EE&~qlNGP{jGadT3(f)pp-RT7+ooH4&wYsCNaAWG@^`%C8RoCm~1+!=C zlWid}PEL#*$K+9#tp>lwb_tiwW8}(rmxDZQ(ulg6S|`S3q%J0?-wfR*4uwmC<Rnzx zVKeim7Wp5_0ybSY%Hmm71TSR1Cy?nUJf+gsrU7`)1f^B(Eyn4ErBew#&T4wLyYIIr z3lI7(aF%)4N3(cAgjC=SwsD@{gE&3o-X-9`gKCK;mDw!F+h%lgsNZ#hav7WDG(0o# z&{d{NA0vPvIl>6AO3SdG&d(Eb$hp9mAq{e%a7wJ5fvZ4N$ds&KiorB8@BA?eO=fCO zC0_RdhhQ9Jv^0PO*lJ%}Kl%`Fkkd>AjI_bfJ+d6|eD^C<5S&K$x^((z`RTJ~Lk&JS zkW8paKSh+}L%9h!=#g#py_3<d`pMS<5N3}-p93;ke|>tRu(j^vn{jgT441otZOT!D zbMw%xX1jdYK?|(|H7ARX>clDq(-(xnst6hCyyrf9hQY-Nyr7X`*pEMH+N|>VsjIA2 z{m5|MexL|Here9KeeIjE40tzBH(fB&AQlcGXu!Ntzn*~p_qx1K_BZw-N(~lUTIM!> z04ydUGa4PzQ^zKc7&Q)qje)u>K6x`;EIYq|3%=P$)6NJPwnaU$g(@Q_k!%2p34gNZ zG5etcC=mvQ`>Ev$NoT1{%d^S}Vi%x83Xlxn^M}%&DRO<79(?zQ^#xSvNB2#(%iSI1 zww)(6&ppM~PKNdy?Sp9hNYdvjiUyMC_<Ep6m!3!mjRvHWy?fYrtw#)U0}yT?!ZU7- zz`yAS9_^QxmMs5W@&6fMR%z~0Nam`A9e$oiEXZddu@2#&Z^~Zcre-=0mWo_kdmxd> z)3Q27s2|Qa^nwPdu`;$teobm*g$5q!{$RI%MVkOvFs%F`?ZD#kxB}V;HuO1AV<DRg z3L!`TT=&_;({8Z(a*R}~UY<NZmd39lx^eBsk30{;Nv^Rta1fRm=z{d&5`3O9vRxc= zDt)xi2`T(1V}P!U$d~=uMy)(OsI3u{VQ^`IO#yo42c5_4AFX|?^hk7N2*+OaZMQiv z)`*PI&xgq$rN<$oT_E~rkn}P{YT6)e+aS=g^q=VwjtS-`eS#pRDwb*HOBS1(ykWQY zlT2V<$`ky>m4O4+Le}lhLeAGAc7Ff%VFZx@)adR@A8_^i3X{e3|HG3Zoc$S7>;o-5 z5+J559P0UF!gCk-9QOWnU#NivHkH`Ib;zR_EZxSOpw&+U(JAUsQ}SPn2bEtm`Z6%Z z0VGf$a`1nh1A@xWPjim2bf|_;o9ypyU;BflKt()>emj9W3~<i+V@@aG0I8vCfNp@7 zbhJE@3COWdNg&s)*;A3v#jHZOZj|nOT(nc#B{3W-j>o1I|Kly&q!GS)#EB!)l)eZ? zT76$#dBN}OS~$}CkmGT-mt70=mFUceeE(n`{CWWLk5><L+IhJ%!7|pc8NzPj{d<yy z%@C*#k<Ad5|D5Pw|NZyhduh*4(nDbN!-=<ly9~a3#<KS1I1j-KHfUI$L10pt`)4x$ zJ%YWG_z8pUiQLtDPI0XM#38P=o&t|7S5UA${754|xt5dj-)ob<{&O5JAuC!H^rW3+ zuO@lsXEgZrU3n-gpn$|Bq&Y!UT-H9!pO@;>iSSEdzI5H=+Dq;O1-iXa4u8nx5LO!3 z>#zP3WBv@6D|he{JST)&)HzcjA$P%-T&390y5^I8G>|md-6@X@tfIF3pDqh3^3$s) z^3!<Ob+2dixbUa7`_?wpu^cN?Y@cl~;5^U$zaJuUscd&v57~n*(XIu4Mw%qwyVGkw z8R__dDf!m{n9d;LFKh1SfBwqP@^jQvVpcqR89rI%!kx9B9Hp~zz&8FjWUl>*)mP!) z1GajQ<o`Wj|2=R2|2be=H`A8BHO$t$eQ^5m+qh@z3aA&xKZve<$r&Kw!i#x}@81{m z=D(5uXBPbbXXHl<Cpr!5=t5VENK;3*Ri+efYXtH3I6$DVF)CcJLuGqqbHtamg#|>} z?w@J?M0?ZZ4p7U>(>mh!--=@8Px42RYO=fV!GB5_w9u=>;Q<Pfk&1nJ#L*pnTQ|W# zM))>9v*0Mt+WZN4=#!s&(BD4u*8?GiV=$~YeNDY|AG4Af{r^)*TsrC_W>wz^LTZ;j zgf|IH(c!I=?%9C)dn`BKUu%mRNWx`ETLvY@_tIn=9{DlxS4MPeD~vZtnOerM^FLM8 zGsBxTHnWwe>st!RelGPp{|GUgzHM7Af`lyUP1#|EE7+fXZN~n3ex*2Dhmfg|T7$<2 z**fA7(%Wfdo_oEk7}|xrO>w&9DlAE7s+=y`GDRM0a1zW}#O8LMkoe<v@$davM^yI~ z_dkX@qD;|j?Po?o>jZ`B#*04-)tmH7z1~YDz(im*%KkaaFp9WmNT0hnty?#0sB?Xj zH8^S3!+fMuLMw3Fnme<e-ZC30gdVpKpOyRKC^^};drRqhtO4}2-JAQ@ulZ@8Q*cv& zBX}KQ^R9ejI5xAMEP$|B0V${oXPj2XdMULXXeju?IKQuOPRtw!>jk6siT<&3$|}!u z8OpgpXwVD?VBgZbs_;34`<<JT*M8-%b}P5}5^|fhW;~w>MR4x<xbdQQm~9?LSHPlK zT&v^^WfTATow#`Ji?H|zMA5LN3~PGaM4eu$W$>r!b6)NoquBBgLD9wK3BYI*yURn} zS;3I>144+`Nio07dSosv-Z0PW<ip^T|Km-`KnnFSU$R#p76;sf9WsL+@WpfK6V_fT zQdL6f{}EZ9KU^Wpmd2$nS-|Ph-+AK1mN!urQUVsW^_x0-ObBCT(aQMdCkHP2E^>-n zn*%hH1W4R5Eo|7m&rkWNJ{$M$?C*RiT9t^fT|+QV{_QqizHMIfq<&{%K{+1)MT>!W zrLF$1Jqj_iX#|Tjd<q&<uJM|D^45mf-P>;=o!FX^70rv_7iTA~dG5(jJ3E%f8xu7% z4g0Vjy)XB#F`?pzl@wsgoJY!NEiKO(A8JxzT2tUaBTH*GCa0PEh0XSmQ1y0X+Ot9q zX+SuzQvFd+dCSp~6IpGGRmFi^oK2pvFXaRTi2r;AWT*K%^$`i72TTJ$h6=b|D5eXD z`Z+cqK5=L_#8`YnL>Hnvj&Q8Kd<Z9}euk5pLq>eQWRDGNz91{V(8^_(t{fE!PiCOH zp?9YTaKEEVzYX@o?D$C7)v?K2oPHcG<uqiDP?Sux6|VJEN8)UnQ|=AvsHt5A)HgSl zE~XspMC6p=c%QH!B9jT&K-k^%8rB)3(dnoz#4#XkdYHO#aEGvgHSFpo!%C%l<UBx> z5?Z1DpmJa#!SwL=_vd`*&81vQ-Sx?5&yWe3{w?EUn@oOE`Z!EDdO0A<Q17I!JyTzg zt$e3OR(KT8mt@NbH()v#9(>HgYM5-vxu;^|#a_3%cNcrEZ637DGdOTZN3qUunn}`# zmsKmp{ILw^Hx?`iWer``&vak}ii1WlaD!tJMS(ME0;3g?%L``n<%Ub!nkqs6-VTt; zqTNj~jI?XydkL;UlC&OaiS*uK(F)_2LBFq>Bpp*!+@RU#Eswl`A|noKZm%9dbZbHm zY(>l!Kv8yA(HZ}@az*~sf_fGb(p(WHnqwsc;D)h5c!Ji4LSWi=c)A|TEdnx?8GzDe z1=6htWW9PG{9iVC&qrk0GJ#Wmrjw^!J@wb5jc-~sYH-(W+;&qh0~f%SwSnw$OVDky z?~1C-l*W++Mh0eB3|%fw%JrOY2AyIyZEQpsJbBuS<2YMnkJZVlG4Zu0@G!B!;x`H- z!V{fUL=bpI-5i)?(|RdwZy{j7UbLXM_;*P_#u52V-f|G!c7af6VAACO5-3mmrd)Bq zo#XtRe1NKLKst6@vOYAXNY(W7v@J5@=r`0RsmG{9dmp2(g{4g-p&g6ppxe0}HasO1 znST?yM2`KP)d@fNm>^OI`*r)$q(MF8iz!q4w%mY=iz1OQ4ALFERtB%<6kL_EpjKi& zgu1QTA)^(*TpEgcs&e02)}ikbr?iWmNf;3{1%7=&M6?3of(^e)bcvMpOd44LCTAnS z$Xs#%4|{JOO?BV)4L6`7sZ1f72ZYL0hKQudY?E0NGHo)?;iNLAfg+j8u(8Rs4I7~( zGPjA%HYM|vd9!(rAD#ER=ziXJ-S4{Bv(~fL{nvG!*HtHb|GvNDdmNwRGqlcuB3!>E z);jZ+urdHyS1n1j8|qB*ZExU46MuZTV+Cw{l6XI)H#;0ceW}GcjCZsln4r6;sW=rz zX?>I@IJTR&aO}gU>kK?k*j%z=fkMgpuG%%jy@e59E1zP6WBa2WxVVLNYumd?D_AUv zyc_vg<#uj5Te_r-2<8(}m=1p;tiJBc`tRN)Q0*qhT~)Nc($FD!yfBr8k9i;R{opwc z(IjGaqzIdTuhQfb)6?)9Kq@bkWCRmS<ai4O;cMO^jgIo9qi^PP;)d5!`sL0~yshEP zc!c!{7YX<I@I9Pjudqp$kf>z%a307b2rXSM?;>m~t$=eD2xzW1{htjoy@v?h3<bKO z!6$cqZ20#=)1|2j7kmoso+DY{(7IDTIPyB}m%^Q$<ZFLiA{txWeQ~g$nX=A1ePIxX z;CQAn9wtbSRC+q273i^qIoOs|<t4p&5P<9(!|w5$?j-$6x(@a1lobj{wp}B@u15R? za>X2m7XsC%;Z74y^6}mX#=YEs69D}A7vVOi3Vd+jBcCut*Gg_m?m}#TEr@yPQXKfo z?S*8Hd1yRwaOLkHp7s9d5BLjUM`Qk%qNvF$;5RYz>73<;HvlRE528xeq<*xw4G`>q z5-PtP_p=TiYp8Y2mHIw(?q9<R$L)^c=t(VEq^%iyrpW&!2vMESS!Z5h2|s5Cc}TD3 z=tNOB)K0v_n8RiN{DgB<%=0|VwMmgxQmU7t4~~GY6W@57W2q4hCcJzf7P{u)Qyp@j z^d3@df+Z2!%L4Qp*-}wcWcVTNz+m&~FCgy`xxLNX{13HM_-%gVj1~Z)O>IAK{&n-{ zA&)JqD}9s?m~&Q|kM%&FjM`T?YtTC(N6<6+710VZb#Ox%mNcA<D6R!5lK@b9b%7H$ zge)bI9e<U`qk|6~E4?~<B<tHOB#10u=@b3+o0xh52lUuC1JMZ^FX^T;XB~z$dHMKi z58TGur1=yg4luY-o*%<>%}A*0)k7=W46;2y3*|#w09H#`hQ+RnsV;KHzUx*wj=nK< z<p-hXDwjY9v2S>bk%jKs_M-9JKl8_&Ia-q0ny;hG4vpDqyl1cmTNT4YCzRSvH0#DF zRn%cCqE`rdk{A_c1Jva!8AzA%^2H0pdcq3qVUX36eC4b9Zy+5nHa`x$lh@qe3K1%3 zzGhqtoYYP@gfDVA#-@R3<uWn>t`tS!#^Pgz^hNN^#EX`Kzq6@k9FmMW2I%<Cyw*=Z z{!OzRs0+K-W`Zpo<^fsZwY#(M(xHLv?0omNiTw@QS#b4jW+EG8-F-4YD1$OkbLfC{ zzOPUM!=_E1cHM_+u{b?|5CoSy@zYRwqm3`!zYXiG#I6|6=2t)<_*EaiNCpoJBBCHc zR%t^W-&3{g#Y5Srx9&J-49m<j*$mnod-1hK&$_Kvv@AERFjQx^6=LD85IA0<me)N7 zoz8%t8711@!xUTsCQY+TN`S^hnq~Le?&knG$bw$s+EgOR>#(HgV9J>e(NoTP`2!(g zf06I@A$5`G_sW#VPEw^Dt=A<(?-sdSqI1mDVYIu4gLbh8+}wDDBXlfhs$93#i%&=t z0cF54H9fDoFt}9a<t?~yOb|<r($iBY(d*wQ5D$i+*&Uqrs(XRC#HKfia3~<ub>A6e zsx1C!kqMq1;L=3|(g26yiwhLsi#Q)qr#7SH!JhdQml~Lb@Og!Kz)qKR4oK<IWm%St zNP~?GL>#i%hnDblZ{1FF#ixqB0<>)5V`IhrnB8_DPNgRP)F{&q^?cC=3*YdYPfiYw zCOtto3H-$~>O}AdsR&HH+m2dWUnE93!QGk%yQ|1;ojrE?q_WgQvq{K~9*y~^@p`3v zq7)g1Kiu}?HbXXQ1I#~LRtOMpdB9<rHUSMx5K`?o{h0a5sebYFJ4u^%3QUO)SFAlj zbc`>paG-*s9W_sFLy=4YTD!R0oTVFZIq+69G49)QraodzE~HsV^jj5P`VCGI)I~#z z!|d5IpUCkASjC~5TKLbBd~9ha!M@WO{CM&Z<z!5_6)>YnrCBAr(>*{OHZYbU;A*iO zF55Y54bqd6x;lqLwetTg7&_|9XgDu|s<OI1>aPPZwto48t_5+Nk$rhz5d<AH%nV;? zcz?fn{K!04Pd%mwgM*I_%BN%lXyjZtgMFUR{&oNkvaMSumFk6gAeP<GkFkoA`EcxN z&?F|AOhl+6hPnD)ms(SK`YN}VeK}|sBnd7EVV(BbvPXXCTg?nMw&2iRRVU#r;}H2Z zDGOYx+QADR*_#GhKCizqKi*l)abt!4)xsradQ$Zg9RDCE*4F}1$P)|0gh7IJP3m6l zZeX<6UFZwS5=s3|t_J%KHq=M`(46lBM@Tb+U%_^yoz8l7Si3YJqwZDf9e(EW7A5J` ztGAqwp;)wL?-c){?cvc}0u4B^h&zeGtk61ex$nDk-yK4&gx?zuV1IZP8SA1vW>ytF z3@enRDthK%BH=#}A%oc4SZ3<>X%R;BmA<6Wexpr%lzMh)DaX3AJ#{%PMupRt>(sC) zg{x7i;<u0wuD|j2zro?_J?&wGZAffN`8#$3veuS#o6CXfAhqBorZ+i<@Dt#hX%#=< zVXM^|_S*{aPVrrty^_RlQ24XRA~Sl$kPCbs&Uzs}4<T}wd!3u1{P72C7}>8v_t+cd zJPn<2(!5aeyO*v!FMTT8N)Bg~fD%Dq!d13u<qYrcKLA1HMU_riS|pCYIQtjsg3(+< z2-db1|Ea%2Ub^~0gHQD=@wIc6h2Cd@4o!q~m19xK)uvz?biN!L7X08_^6g>ZL-;7X zeMwIOiB@1Drl801j|9Iw@O&b(i92X&efz~oFcP^C6mxBW36jVm%xuMKU?0{AE`Cpn zl1_jgB;6;b&3f|qo=Z8C2vg6%ri?o7g!L(2c0B5uR!pGt0b$}G#QmO{@Yh#2){1fR z)2m=cXU!(`(@qVW^6A-V5-iFuPXT7);@$G@Z0hQz!p6i)%)`OB`^|~>iVIjtbDtPh zgi3jUSL<m(Yqq5H@{uFxx4lIA9H5xLHN7+-D=GqtaI1{sIo*a(&tHAsi^liDpICb8 zh?s8F{5+IapaQxTqf1s8_Q+68V~?>V@EWm3Lv$JD<R#s*7I!4nYoEKCCczp)NAY}I zcs`3$@^J`H=M-~17mYw{2saOzH7A5z5L6E+a%9ihv<H(N%g|Fa^dcjBTWM?>p3 zGjwNibL;nFt%rC}>QcUk3eBiW>#R1^TOeZp`*HWqEWf+H^wqC+K61{zk6r0K(mA}7 zgir$=!McV<K8}NnHi>6uzRfhoh4}(Rq}<ZWx_dn{_@pLEwyeYkN*Qq!gxvI?Q^`$p znjp0#DsgB`s+AQX9WUsAUVTWf?A7K|J7L)QLQS!Kj=^g|HgmNq?3f^r*RZJ__%uxM z_>(z?7iM-!OPLJ{%o~{kfgE#TzcpgB8GNDx<^u_Yl<O-8;=gzIB?`S06yDLA4?DfY z43Hkw@Rd2PT*<30x(~!uC6p?&&mPgXXs?yUL=1mq%aqdV^Pf|nVmOSa<`AnZuHu`_ zd@-@6%N`CShdvBmsb>ttl2;uyUTV)WuNFMEd~r4*cJ$UG&hP^w!8_25jw<@^E&(qw zzx!PH%2h;2dFT9>&_ffY1|Yil@JJR`*VDJ}9NW-?#&%OL3%HV10vaPEC?f)kROnU6 zr*dgcp^A&eY)f6tvw4j2>Kd8&{W}k|z==`T!v^yW8g_8R`#i2oE{kTYa=EHd+akC2 z#Pzd<b3a8<6hhZb&&gx27nF<w5Y~|rM8i<uFa4d-G7|X^D?jv7%lS`b$4|!u>|?|$ zeZFtJck>a@1RFU3kZ2%A8S(ab{KzPq`W|xw0wW<7jD};+1?IjiHK|<!wPxB54hD*r z{G^B>YA)^(7c$CTtxUFwD-Rbm`8F92Of+vtXux!UH{>%0ss)bM^V+A4qtc&Mfq;zl zA4|$uAK@OQf65BQ+z)xgzqL(02zR!qhz-4~az%+PQYO3(>HMny<XfeSjbfh)h=(yc z+5w!@ipm}!RtsE3T?1hB@{2l@;!@0$`O5zJX?h^srK?=%`DfCm`0NMFmM@$+VLYWs z6m8fRT)5LnORfE#G#*`uNh_S11@vb}X!y*R<LJ&z3$RI<cfLkl!F-y2hdIp51kB6Q zz<D4PXVAQKTxKrxPULC8bYrTq><K=7MxKlBOP|c^mU?=uDN2MpvZ&F74C{uJu3(Y& zD!LG`GWpVDP)z#`qk7QV)yQuEA&pM<2A#DB=4o+kzQ}L%KV<Q{sm`fm08>Tv6aXd4 zIVKDsxyY5S<m#_e^YcqByk*2pn&u4;NV=A(q3e+Veo|&qlhaQL^+C%^JQXHfB$nQn z!YspA-yAjbz6X%&2Dc0dV{QXitUjfP0jViSh;p69CtVs63-8j(FtkEkslbC^c*4a% zd#BWO`8$oTmJ==1O8mly0xLj7@TRmK!r!FiN~FiV_T@pYNaBcVVd7=p|6fY(Ov}7U zi~MK*F)d&IwA5G)o(tl@du)>_U76!I>?<P*)?KIoU!%8;xjv2{s||6wY;;+RdP{{8 z^Q{d0@9N2;Zs5x$h;h6kvT*+wyzn{R+Y=l^0q&?gwjHWDL5aa{O9it$6P4EC3nZqz z?|D67;waVZb}AQq5AOYQ>UmysmUAp3DV;0FOpWysxkuZ9c)wr*gxD=>Eq}i#$vI(7 zW#``X2?Y2@2l}4M?zx_}r3hvUIqNM$Cz}wX4RCeSPzTFA#6xan;fqwHOi@o_)aAl` zKMP-i4Gf1?&)M|Kgl;?ar#DBK@><S~*fBDY$S-4aqr2=$y`oLa4v^gb1kpXj%o;lM zSpoAp^bE*=fg4ptclL{Hp({SIywp?Uf~et<FGfiZ)3$v!A6AK*wdCvSPWSZe4aIA| zKZ<%4f^grR!P%r03>W%zzin*NgjJ-Cs&=o^rzVXiE2MQHMnw5bU@GTUG>9IClKZ2p z_**OJW7;6Y2|qS7zXVgK;jc?m^u3UTx=X>RDnwLr-!-r7B_)CxicPcw=2q6l-&rLG zu>wT0Qfm|!@Jzj0mh|){SochrOThSlJ(Hf%k9!?CDqr4hIjP2o@9a)`xOL-L589pd z_3rV)TKD+BcV)1C+?_6ygQ4ZH*4DT6Gw@vOXA8wLpc&t4ebzuxp>8&!VNSz#LU~`Y ztkd>0sEEUZ1LzMBupL{{6mm{ghBy`W=5u~TFgr^Fu}qJgBeV=eh%nu+llW!TVfZ_D zR@za)!jyMg-gQA#^B!^NH7RY~4zfGY4#zM+RV;HBngYpPWTlao26Kz^1?`t%%=;ZX ztD$((=5T>1K2cusmpQFfssh%hz9#@TwRb{<XnAKi1KI_hA`M{<zvPN^0OP_iLf88w zRu=k{Q1-n_t6gj$Yu}qpAj55b&UQBzH0E<@Jas*Z91j5luya<ss~g(!{Xz~pe;=OS z;%xASrPz0gtseU{ji}~`aFVUby(alk0O)t<GOO3l9Z#?+UCF^(45F=b!JFgA$n)3B z;6MiCZAmtT*6qDxFjfgsG@84n$<H3BYuwW}a8lKHeDhYXP4n#INk)6k6E|Cv)@>X7 z=WiAM*JW}u`xr`1=tw91EGUy!`Rv$`GcgV6d4cn<Cp_D6@k-3Hh&^vmr^B&cun-gW zGk)&l)x!xb&mGrqM)@i2R?xjy1ZFAoK3o8~G}VYh_O0=bf-?L`9!5OE<{VP<>0!wj zO*KD;@nqk##WXdDV_d$uUHhd0YO7}Gc1>a9PAYQ{ovDtYM0Lvv3Qg?zVDXU!rsO@^ zhK*V861O<w18N{o#~MORZ?xmpYv4&ni&#ZMVw-%~5&(o3kJ)pk1t|^E#9dnT{M@#- z=78J7m=_g^I$eNp)nKk{PErv?Elv?3V(}Kxy;G$|I;nQA9vqxb#^Bp@@lwIEqP@Mf z4wG{rr$nR&ROp1vS;Wupn`u-7y)30<mnfJJ(<g4&LwZM^h#jFKbGU*PCdqpU-GUf1 zfI0E89gzT}s=Rjr*O+3;18Uu4oU2YJ4?ZAt^;}nBQD_&ypW(ufff)B^P0mVQ&u|IC zf9w?&wMspkwQA4q@mh4{#2_LwUE*kG7$8$d3InmH1`7?a0$Y}d(~)b=Upq;OOZrKU z_Tb^?W`5wnX0`(g);7R)*oy38{y#h$1Z}#di-6<D=w=S~qV()SRmvCpnE=YZ)hhxF z_YV*^EMRLO$2vT~)6whQ0P347+n)AVJx@eA%)WISf0EV|9D^(}YV41lHsq5d$T98y z*20ui4C%5rL?34fFCy*x9K;8{;(1TzOD`jWS$0dR<7jAhRtBxnBVLMDo|M-r09_7T zlqmOhDLrPL(h2<xu>sKY>=AkL$kdm47vofeHHb#ip(ig3p9;X;o2C2<FOSCXeHs>X z=3qE~2!eFykSNOo^4KQ}^$L0C28QoI*HNDv>9FBS1`_4I2919p^(@_3h+IAhRuP=v zmKdR<oAuK*(3^^SOYZf$-eMF!Q)o`WRI$c6P<U2y-oB&s)`0m1_%M{s-0N@#5G@zX zBU}URsL_bKQ@5@h=ma?jQ_cyLE<gCWOJik;+r1-QPqbO%otYo+pCU^+XxR`3MK*RB ze{u6eBk-?1w6cGFkHBO&z$$NFWkuH1ST*C@e@$@g!_dZ}KjQW?;yNA#A}z6wo9dv} z)+R;%f=`GcXO*MtsQUz|_*e~(c*4_O1d_4WXafa;z2jiRkwFzkNPbL>wyV2HI!}Fg z_J>Sq%J4YwI|VVBpyMkV7t1)BDP=@z&7ncpOHAM3fGA%VhEpSRw4vnCo8Jo6sI^|4 za$W-4wsyd8i=EUO#JUu|U9Skxc0=V3{_gl$EgbGVIVW1W7(51vq1P)W!#$w20_-w_ zdL-NLroj&MsT;4lQI2z6`LGOek@^M9!;DJa4PS<8HucO*9IV6T_M9g+-(D_lqXbtF z7rjQX`UOoOUEAlyIPsNtYDA)}y5SSxJ*MPsDP1#nlPrzS%;T=RcJ3|H^E#OI-S!(; z;u|sHdEAL0D})ty`JV;-t>~riLE+t2=E~ID|JoqvuIsUk*YsEfd6(^(ZRNNEO#ewv z+X;F8oh%W|3-luP7p9=mYzO?&3f#Es+eZ+159w^)mG^h8t~iO$e%Htz*9c=qjNk#z z+)<<@;+z@+mX?`S9~OJsq2D`u?1i}df{l1zkf6^zgUV@%lxm)r_wR$`<aP~UW%{pW z14mQk5AhrxF6;*z!#jM46$ZYTXYV1<?v=T_oa#lH)M$*MCT8KjYY$-N#p6)-xH>1N z_2Q@y?9ruJNvd>qqN^+B%(U=9iI&P0`tRqRc3Vk*ChnzqzTu4kw(q|nxBIGNy~9qx zMDr>2tIMIdClJ@(jp3HyScz)ado>voF#5b9*s7{KU5X3!G5Xvc|9LrEuQntPV2bLL z7iY#0*l8m~P;$K!k38V&FO&Q(ZvxE@tKM7hCXTOTQOCIOwWp*x7`lFCt1Kk*7J21o zR4b31dx)V~0!zN*j_*HWxF%ZT<>=7G<^KSD5@hKHc%cqx(T~<t3no+-Mp+l$&kO{@ z36BG2|FwMXD+}Nlcol;m{#6Tn<ulyfNgNVA3V2T=F;YT^ST&qm)54*+?#boF>EebV zL|t3J9q$1*55ab@;}H=O<M+Mg1MkN&OaOL7>ur=%Pi9hGaQRziE0C`RXilOYYu_Td zM_Dfnor^F>P;w}WR7ETbU=ii+Q9^NqfWNk@99BQ;f4RT!wNmEN+PF~=mXT&QLB$c| z=ysr?OSKYk9-eoDjdv7Q?Vbf@ulW6@cg9F*y${%$+gYQxPlor9usYe5OgV&HU+3oM ze&s5xO%WBd{f4?de}ui0bzVGIZ%m3XCwX7~t9P?n|F$8;96|opEf8F;+*J*oE8spK zBa|>{IrOZ6gaK{PNvmfLI{EGCBJ54GyAhhi$Q<FrZO|PiHVlGwO2m{Ss54hB5RV?5 zzNjXcWOZH1Yovb&;+<nzY3Bt&^p5c?gv&%;CKINv%AUlAi8Tk`cw;h*i`B`;e?ybt z97i-x`0)we7Bgt*o}6*u#3TFBF+dlC@bc~_t(}3M@T$D3XU&-cSSaOzH>?+Fc#nx| z_1tg)8DUQU@BSL!#$?O{{FQ^?FCnwKikQIoz`lCuHaM4*xnrL|hCoZ|LLWLIK(g@q zAWjA}a_7PPBb#!|t*7T5hj$rG94u&$>^`~iPG{$deTu=J_(?1`S|$O!d{pH`J9y}( z!N%H98}6T6*cTFkq~ePWz0kW8v3mA(@scr0Ziz^zz?3E_4lQFkbR8@44~n%+C$(C+ z5^ucj<s6vsoEIm;jdSb{L3od3a5cKK$Vt>=>h*tp#3z%JuMvm=Tyl|^&Xb(JK8}T9 zJyLZl#N_Iv)%-=s%<a(4vt(<V1z<!J)lr25)vhTiVS6^UL|>d5iWapq4?hO3mye<! zRC8Z+(s<tvAMJ!SW5&)@b8hI9R61IWk~w6jVomS);*g<^HDIo*4<>J1*fDu>_LGe5 zJND#2&ntK{f(cKcPXh>nhG-_kd>d&(b;7N#mNGoQ#L$+PG58xUbwqCgqtkWp=pD@t z9Ro=+Jeysp2sImB)Kdb0G$tS&w$BX292&_U?4sJOb^J#1dDuSS8PnR}#2xFIfd^Na zy5a~R0xW%)4r=G^iq4)4zHF5=T!E3%e;cm(q)=ihn{UJY@ld*uYUYHJfw)?8*C=#a z^<p34wEZxId8CSrB-^|3Xn;d#u>i>vF)W0IjeK4kI2&5QraI^hZ~YAiYIOfz&j+DC z<?L?xSrb4+IA(No0(5=cu{U@n{vfKPMU~Hw0a5K0I=gcNR0QivWLXWIE8jJj9uJS> zsN(bho}8(M^y4AxOUoQxRZYKXOe*&GHb2^XCaKGDR)|9Z+jB0r0dz*ULH>hL<Vt~U z)@{R=>dgA6{suTzZIe9}=~l#V3Z+;d9FP%;5kdF<qk9g$kV#^YoKb~2q!1)-i60h} zLM3)<t4>8cGGf*z0m57nn3h#Wgh+tbm_18MqKQmrYY9Iwd(*p~`QRW~<0UI*4%avW zOYqmW;}s(n&0<*a<s#OBHvxy3z1iNI^yt3Zg%V{%Xl|Me!PTaUh)BrUzOW%qh@GQN z1*qI;o4w+OmvP{IOj@jEVb?CD4ToHu)e!t=fZg3RY+BKN`|+qPtKg44`Dm;d^B{v~ z!Nj8Q@<q>O=ZX0n&LAfJtHthRIt{(F3;?l_hzY98ow2MMel`{JYPW$^>zf8;dd1Nt zd%3)18WF$^RYHj9u3+{;jcFT&Cow0k@5Sh*1vAU!m0%?wvyEo6<Ul$X*;)4A?p~AZ zW`{Zx^n#o2Er@V;=taj7VN2ek46ZK#jXrVOhJ?3j#0sW>5rkq3_`FnMY$oRb(*FQk zM5!#q8fsqVRhZw0*C5J@lqqzjitPdkvNh5QP;@2;s7bA8?rRuTGj&+vMy9AM<ca+2 zT1O}>i=)kGYlkic!CL2_NL~?1v7DR(yRmGzvUr-3tR==^krsAuB}j&VaptfFU&3@L z5RIO%OjS5XD?eaPi}Od%CG-3S8bx*px3<x}bYA%8JR~8JH1GE3fNQt{nHX2ggb*Fk zoIRlaz6PEac6~<%V8O{fVvA`~UiNQ;LAZ~)wqiRE$WST~|IiwUuwmlz^nYG@UT;uq z#4dWf*XjZ<GrI5SCg{SCPn86)_vc~7ItW9!$K?zuB-(PKtr7QXMt>&JV+5U3rv`uY zwsQ6MeUIpIn;pIfgT~{G+a=O}^el%@Nm^ALM?yQwoj32vlXchFOhJe^=JU*47*mPE zz7Qqa&Tt{Cd5ug__K-9MHoxP2FQvij!<zQKh(*g8XA6%?6&Pa>S2o{!0Cc|_7WH!i zxPK`~AqymD9}FIRJpuN<$GkKqP;my5j)u2XQ4PCsfE6|J<0s1}k7iV-VQR_g@}XRF zARu1M?srA)RrhXlu1PXalPN<?3GQm6wsC<h30xz1v-EqEg6$v&E37{fo|~5UJ(Mmz z4(9nX&0y3K)lzUQB7u8(*nx+2Ecj>%mn_!!nWaf1=;-c&SE;*d{|_T<pQf>%_b=yW zrK1If*8TJ(e!aYJZ#~IFLAM5{UP2~C9(i`eO|%h~lpF%8Vt}R_6T!7yiUF2O0snl? z{oqqs7?)IEc!>^!O`8@1A%3iY(qQE)&$`~NO)_8<4M2)vve*M-soLc8nVwEnGR(fL z{Q72OFUP!Txk(ZJDv1p>RMmYO{1Rjta@Ht<pt&|F;fK%~9^Uz|M43V{M~3b|gLSf$ zE`XHh$+SC69Ey7yWS_^Fy+8GJP}eUKTMw>_CldrHW9b&?9)Z*)j-iyRg(654z+#{? zpY)#^+P&j2y)4-I_-B7S@Yi#{wEo-?JD+WHj&uKd0j!;Yrvx)z#uCoyGAg&_;wiQr zV_A{bR|j^{L8!FgNJE_L)yZ5ac82{;A*=PI=!e(UI!6vkZQs6or}g2Ty_K1RTdscQ zWZkW2({;^8uD1C4;U`bXKYyJItf{T7HOGqboD{u!f?ZVKhV`!P<&GylyKlc*?DNmc ze@MG?`{I(8`aK6F2bKA6Xje>8$$-nXR@dP-D$Kv)>WE46ZC|2lQNCMO((*lpX``<C zhSN5gCkE#~sAMyBzN|*Q-@$;BgT7-}BH9ZsoBY8W$HN6l!(y~km^z!+P!|BHY%Y&t z=d(~fbx>iB;efbf8f#()EC-5XmNmLH1!?6wm;3Z!6DCPpMuPv@^JQ7mZs9G{Fkcmb zE7&Kok!~;?9xDRlu-m3mTCwVJYSa<JgYQ&R#_#DDz!=sEVM%?Cxz2idhfT2oeI}S% z2Yjgj^uCUiv;-5*5I29ybe2c8B>#eeLYdyIQqRwPRhK-^FIK0VIg-jnHePhzGE_7D z)|Bd6F!mazR)dsl@mBCUl)+q^`9N0BEjgX$Ib0k`ZiPYl3hs4f|0&~(br9boWfu~# zb1y#lVP?PvpbT_}ujy`<Jk5$d>TD7BYE&%C4^0@B*_Pk74Tnkk5vOOMAt(6GT&qP! z0VsAIh<Ab+iypxilDrF3v4xnY!#;PIZ8Y6_J&)FlITt}RkErF3%<gttnc-5tmoHzI z<yq22hG`2f=DoWK%o+hBF7aauC1cfKh+zD({1bVo@)y(MGAxnJ>rz~zo5Ayq#}h!D zPG}p8+ip%5JbfE@EL7sWqqJgKA2310J0H0Rn8Y;-k|5IkM};DI*(sZ~M8g{`A)r#r zpQh^NoCxB<524#QHZ++CZ{{%dw(vd><!VfR%(=?Ci<IZj<FIi|0KuaE)*4oImg3{c zm$59yR1&Qv-b}zQ_nsQ8NXHHlx(G9Ab0YNPQ}rt8XACt4%(XpMPJMCdv#89EG&Fj{ zh{YYKA?sYCTzP9EV1+q-0rJ)Lad3;8O3uK#&KEp5)mtdG;w#fqtIbG3)bY(|DbvgC zfxYsajIXZN%>}ovrME28JcvDd$EPQZ(_&f<Qos%!2grmz1h<of$%0m`*<;MYh;Fzx zFZSaAtP{s-XGRV^2k(|UOlJr|xk#{xm%{TH*GtyGAaMc?mXM33;vO?==#4uvZ~4xr z2^bW9kD@<?<s@@g1KLzSJKia7?Nlk^rvk1d`<I$S#WF#WU=3@_ITQCf;bXPntKCgq zPpM`QA3ZAycc@oxW70~gYMged*~wl`r;bJ=`b)xs8B)`~Vcvc!XtoN*Ul(eZM<cc~ zNHicZBSyg#&1-t$<cUX?339C+&>ls5-nIkQ1*waA^?>9l=*{P~r^zo)QE#F+!9SjM z*ji%?30dz~gmToD;KA*ah}dYm4y5B?sxwB{bnLw$i2e4^_b`i=b{V(0%<+5jtSqX0 zGwh38aC}|ojaFxkkTgD<+1c3-NgmKFIU%NGcPcy@8NonQSoB^slM{qU$U9Mwz}#z( zj8etY$v#gC6fCIFKt#Ko#3qVja@Ca1d>Y@-_dddK7+IYCXa+oPz!Uy;Zr(M6H$Jw( z2(RnEy#a^}X-G!ZosoG_<Z==G{-H7c@F-aS{q&qkI8-pyoKysnKdEI$hL->bJ(Omu zhvXErGSpsulm7kt_k6T_ABQ!#-73csTKM^Pk;qofD#92pKe^duUM60F+I)RAwVp%a z^8@hniw|e`B<tl_+QLj`3+AtLKDgQxfeAX+MQQ4+S;h#@HYi?_;x5BUlJ~eZW{t9! zhfkfQ#J|pB<<tF{Q8?B2<x8Cn=fS<%pw6K2Q`!JmAT>kv!TS57I6ikOp^OUs-1d+e z^@a-!TD{NvGu@BeYc%n}u>`zFJu1iXIPpa`rup;Q5L>c4ewi--&N1lM2PPFibJEV5 zIXL99#@9F)c3i5BO*x!mLY<DmJOJLLErgU!ne0bJLkY1>V!jtu9tJ~@eI)k`#L^gK zXK*J$e$8jNqU-1;fz$b&j>uAkre(0Ws#bf6X9OJn2=^=1sSop21BbF$bq=o69$0o2 z6M`~<V-+YGmGW8mcX|cb?@r`i;Mb7$iUHS+A>#y}9$Lcz4K7&CCk<2yL<$!|XT4%> z7=tXQd;j8a?7f!%u>S&3fdA<leJ2722<j8N$2R)P!ohS{JD537k%M`^MXe~Sj_*(5 zFzwHJ6Rr9~>%>=Y;v3G>&C#Kk$jJy;8^CptPopm0K{3vVf{Rdh_Xa=DFSTzL>je%C z4%0S;a*F4D^*0Oe031&Af^s%p3>?8S*GqJf7jFvg*Vufi15Hq!HS-{1<u|M%%aIEP zQ5<D<IvcN*tyJyTKK}N5A;*g3-iOO`dhTtVsO{z=ti-1d&3=B68AeUD*DU-axQyt_ z%F1Tf^}h?>b$Uhu__sj{S3|kR$a7;+ANcTD@RlV#T>`+zw-$+GY94LyW2!yc2@Sf8 za?j1pKNPBR7;>tZX9L4mD*Q^`U9$W(^<-2iSRouJk9Rv6bT>N_NL#F3S7y8rU@13@ z@O^%>{=mCr6Z38FtemoWm+}!PjGcg12o6guPgZn7?%nyk`*N2J{H%c;+ZW`)c=E>S z3s>||sD23NdaB02``1B#D9ufKGXycs|9tB3Rx9Y09!5zsZvI+N$3N_+;|?@o#OJEM z+XEjg_Uu+_vDq#og(+&1*Q$pTY%E0!CjqV)K)kaHohHVSQx7W+$$2Q|!eWS9m>ocB z<~fqB{s95BtuWx|KgwkIPYNL0dI3CPM|@5IVffd=LphsmC%ju&*4{iV<jwnzXwaEX zHZ(MJi&*|p{c-)E)yYXfZt|gDVbV8JQVK?@65XW?pl4#Uva-6TFKkpntnsL>!6!tH z_i<9seluXW@6W$3^cTZjcJ0EfMY@M;obXjj_iT$q&B7$hyL_eY?7oJeJkVX(!4}xo zaF!kjW%LIxoXxmXu>)|ZufS6{hktVK??Vy$j{3}(iz{q+<}an5oaR4X^(nGHs$`W1 z!ISNq0@}?*=lZ_2j}Bs!KObF4<>92&bVpiUJDiN>Q5;nJaj=KEuL&F*>k*pW2f8t- zshu!<HJf>9aO~_9Iq}K!uixUd+@EV_f$Df{EpUBo7|s5QZjxhK`_a&I{QIMgV&me< zz(cQbsPxN=Jmv<Eh8R%!6#%&`zq-2GL^wG<z8r-@2`??17`%AC`BcHndUV(N;cHUj z#nr$e#EC0-ZT@3be8!71Jo7Jq6Tw?h>Qo3)b#(Qlvom=9DY{p~B9osU+(|pjYe_8e za1*d3#>qYc$|7oWw*&S1>)y4>5EbO6`yd@E!~<Lq&Bh)1&ch8yk!Q?jURA1m^54h2 zsfqmeAK%G-eDDUaXtB3!(}w%;!l&NLZ2n&NBfoled;%4kk16H<#oxewCwvX=`|#lS z`-Vg0*Mj}&rW%%Ad+}EL4xQTk8zNVez`HYI5E&{HCbs#@S|<g<H?;TKqxBPQFCq8~ z>G6~m{5HS+$931rp!_Z<gX)Ma%VzxI&qp2l^TmajR^lV5(6!f7{&GyXvR0`E!4=|9 zrTWi*vBR9}_iFRhw^#G9nz_i$y!k;rHCubjI8Xc^{`&XgmA(kxApuMO*E`L>+$G|v z*IF(B3H**a{O`Ue#McJiqmXaiV*{QQR}aPPk#lW33c@_T-oCq=&xV5X+Lu4@KVSY@ z3Ha~&@}YMgayI$q2JR(qUeInHjIQOZU1TBq|GmhNH|76%Xa3{AH62+WB{}PZTm*KJ zBA=`O<?Hce{SH$5k81dzp9*O)Dk$%;Q15$vZUU@J?9_QSD~1m@uD{XX#PL6G^nYVP z{qK9D|L0IaxBNfX1aeFNUw^2iYp6ufq)~Qu_6}H(y;)IKhrvX08#6OA7VIjaLvC^a zB8MbrQqo`jfNIvCsd(<38PT5+Z>8sj4f(en`cwX-Kdjx9InnDkWrM_4KPyq|j%z>i zT-@LINw@7f{SPva_}SE8?d*5{Reh_kt~XU}5-gv`c7jWjtDW%X3f;cmwiqGPo4Win zYD5`|tP+H5!Oi)}&Rj$%iL50r7u`e(y1O@!?+U<LlAP+kx!Hh*=gI!{t}t0oPb?U; z=VJ2#;hX=M@sYJYPI9e}JN9)OlG|DY6eORM00?J~16^fL3-PvhgOy&gof4ITB6Q^U zI|X$Aib9F}a~BMKJvRzNo$L+FUn4ZtI<^zB_Vpdt0ic!N21yuc_ymw(5eS2YZVJrF z$jbUcW~l53ftpzu#;B;poW|cgW-C;D8gg=TzxYs^cYVUM`pki<Lowp{28tBBHeY&X zXW$cJY{&f2@D=2<nZ5{@Zt}q)wAAJ<abyT-cp)t(=QjewuEwJehyHqQdrxE5+s$}V z;qQV2;C)dLF+;WKk9oTzAFki7I5FgiGx5dVB}Ie7*UN~tQKCg4Itmx#9+QWWfL0TQ zDgdB^X(~W}qm*~;dWLae4dulNyJZ8)Tf42oWb*;3)<jw>>V43Res0Q0aJ*;G@Z_^a z$xW_~gm%IVX3yNqCZD%skZ@ZBW(Gyz2SKg0+ArWWR5D*YanY|WzyJoxZg@cgJanc< zkdrhHJXwa}bS%~pu$o;hI?^9mUx}g(&sNw06Utz9g+eg^x9QuTX|=WIKYM*a^r#3Z ztyN@bp{=i@GX#&Pqdg+-@3~9*FnWFPa>=$cz6m4WP2ayp#A+kt)A)g|8a_>$>@DK` zT*2bXR;+$_HluJcxhV220n6l*4`b&C<V<!T2CBm&BX^c^VFE17t`n=Fz$S&?+;|3} z1$W6j{y@(g77UV%xTs4Wt_|&fP|M>tO}B0}>W0C2h80pBC>?6@oXlysmU6He7)DmI zvE=8<Vqe#G?5-(%nwpyVVA&k5n|)v4ufgHPhxM~?-cwaK8?Zz@jfld(I<dEFofv5! zbYf@H#g;!>Y1|@O7K>R8-bA-9l-<eVY%(DZe0$w@Qu)mwvWmdBBPM=MKt*@X?)~K; zL&u<gI{zRoB<17>ejeIhrpGaWtgtn&@cmV{9zOJ5`-Sv;Ii6MWKrc3hZ8qI_XuO5i z1{fOz48JMnpnq;&thM8#RZawL_epMdL~SPuMwMoQ)4E9JAF}0`7Rx)aLx%?43K9(9 zIP?o6sa@9Kw9ckvVP<B7c-Cj8qq|C!1u42rNRv2}eC%r(5rB_EF!#Plp$v7Edc~W* z1d(t^sldzzACxBUNg$<)Q52qej@^amuIs0^74u*G1B^H=J#Pg1*w=i9oWE>kZtp_& z8)kyYS^3%8`27s-&k3=%2_23V3~c@GQj?oHoaOJ}Kw5}AhfQo{9iV1rvb`+W0qN^l zos0{>*VKj+Yi?nY%_Rs3u_*9`(w6ufZ_=OvdgB%lN_Iqa^N1!m;R*N>*aO$hCesQ+ zajZd=v#Uif3+xY1xDJVlrj!xktu6%mDPKMtsQxBb_6(IWUOxk9s<XBk<Azhy;J(#^ zZN`t)5CN-$d4_-sfy7sU1lg+9>=4J^YXR#g>Rkt6zXiZF`-^S~v2Ly|EVS_9&2MSo zn~|C7WYHc!>x@_8C-TDlzUhivP2F&6jc5BXtM54TQ-r<?Inv`mkf=6`GI2tzV>^NG zJ`NeQcn`#H!|m5=(+)^*cyo>;%`1KzUaLp5v~Du#-sBuC;+;SVJc((wjD`S&D+}u5 zz-zDtW$Vs7#339D%H1+oMV6hUyek3*11E)@Q&$B%futyCT?tI|XcK?s+u$zqsYoVj zLlO4=wF?ice`T*o9*{2Dk!3F*ezJbuK6iek7^_5uR_s36cxB_U-Ac84?Yb2LdYa$u z2P0K1g?z_tIK~X}wpi==p=WpFAnr5aHErh#=*jIOj~vIEiTt<|a`EJ`SC~E_3rlB~ zZ~1n5S+zXQMb@2S0-B?^{y#|FZ|&lGpepAhl7br0G9`$ErLy20?yg_AmEug3gSEOZ zu8}RyK^tK(;9#*5)peLs44g|3RWu^GWXt!ZcR2&~dHWODjh}P>-iC;GM($Ie@p`Tw zx9-S?Wq{N~-^IP&aCp~{$QA?M>=6KivN;r-HvCn1;AS#V3^f@esx3szi1=3ubFsX? z3}H3JUt?A(CoRJ7uGgGeS~NO%ovoFpGNAl@qmDUL41Lx;%b#;)d(`L+uXr_O2%8q? z(ynd5C4oJ08K*2ZbQ}k=VX6_>1UbO-qi=y2nc-RC9}VTyFuhaVXdLP(eMDP+2=cJg zNlS>O!BT<ps!U_)p_MsUPKv!+Y$s1V_M-O~R@{ORbTjWSFHB((LNP$qfT*kW9@y~U z4!3P{-2t9bX+c+qyAlx2I1xn19iZ{<0DFvnaBO;Ii<n|$c@{|YNo(yz09XW`JW9%c zP{;%|uP|z6^Y+L)5jhIN9=VC3hn<NzYAIa%SVMBbsDaBidniwCLCbfa5xFU1*~BFV ziMv43?JD!~nduz|2l`Podkzj-=l9Tvx-U%T%PQsRP@@OxV<y7E9w0Xbq!Qz4*>%-s zT|iCi1g*#cOOA^V-XVtAKC|KcfK#OyyVj{ZnACE*EZAsXISQ|lRuMN8{^0O{4TazP z*}flH_X6j66?=@XG%iIB4-a4UcuZqoWIxoa3{<UFL^AdzYpZwOdRIo&a{BNoLvb?i z6Z&wi{H9?&RvJNys13#DY+wy~=0xc^etWm}h7Z=u-RBZL0_nPR{oSVTkHYh5H=C<M z)?4E{q!un;N-9Fs<;q?R{P3ibyn|ZKXq6G+8PqH~i~%La`qSfmY_%bE3m0#dQ?&w^ zA9P1IOXg2e8!98-?x6R<eOCR&zTuvc&Z1@!FdUt!;q|=O`}kM~VBcdIB4mA#JyvFL z4h8mtFwxrnAje)a-t{_e<-n@ATnKOVGEI~FhQk3LlNNzmQQhzFFu-2CM*TNOLK(3I z@!V*%$o-s#Lka{GoXM!4wT6h72(lG7*4xjroN1}p9v?de_%EBLE$|$L*pppAKi&aW zDPx@3NIw8M+QJt|x7T)uV#DBdb+C+RFEO(5{@Gh~;w%`*B+Ya4kbCDLvSf&dhbQZ8 zyi=YRWyGl1$h`3~P>p>-u<zc|*XE7%{0PRuvNZnk>nylUd<}lbvEkc+A>k)C0^`;z z{*nmlwo-oktb<LIZj6%=YiVnQedQLdEw5BRd{uD3b8Ie9a9Ch24cA2(cj^>w)qmdT z52n4Y#6rih$PdMQ+O+f}EG)x{e^>LeDH-Nj>QuVotUL8H42ylNkoT8-z1#-w)>0fs z2hDJy`{5+kgb!vF7Cj!7qs{;!zht-+z0tQqW*d2bu1t<+W6^6UMqNg=<P?F|rJyk` z^Yn8-I3>o>)Ku;2>ywEd>FfRy5x9a%T!c6`UqL22kt?XOpCcL$%)aYi(U0q-EzS|G za_Y>UiWZjs$R^cA3fBa4NftI1BS!v35Z~PaQpt8RBR$L0LTia+^FT{}B{B;nV@KEs zUL4VM*7lWw+)I0)8amMmJThgl2EyZNtqx>w!4TjpnjKjFF>>hr`x70%pl!ZTJ41xd z%m;(wJmfJG)||Ah7J|2U2HjV?ZS=m=%&Jf<t;1fwjfQ>gHx6Tq6z%*N_RN|jtH!01 zMi)g<4<M&>_u$3m-BJMDoA^Egr3l6i7!W>*(csoi`X*iG&vHg+!0>FJ72U^+n-ZS4 zdn2y*lCXQatn!<_;p+AxM9J^j&z*d_-p}8kCdtVEcTIPhZzpipJCQ<%#05?mRDs-L z6qafuusq_#Z*MB~*2d}&X{Fulp)@Wc+tHQ51%0`J;lLg-qY2!1e`E<iJJ?u3f8cCv z+l2lDgXbQfnb)^|9d6np+Q*#rL~zeSHUn}`BcSC>!Snz4blG(m=4>mdE8m3AgADm( zov~9BwUD6IShawOT(JLLIx8<B&D80>;obGFdZXRx?e<?!MC2Q-{EpDI)I?Z|^XX`h z8cz4gvfw#pJK1NxIPy}4_X`jY79xtleStLcB{S~@3J^09j;F7o&$jsnhE#(H2Qy8c zRdXJ;nFECMRhr6|V2<YEE6@J$E6%Lp7m&prb8~Y^(#kUul-+%h3-J@NWoa#Tn;#rE z_5k_#I9MC(@%-J`6{m_RCqiMidLVu6R*Pttdo!O-)~AtFqerVLPlrExZ!a!8k;|(c z7BSpJY3P2j@=xHfx)<o>wUa=xB&AdUwiKe!)lQU-i5X=NoxUdNwc;+YFxm>vVk&S6 z*dSN>Qk0Jh{nMe>$*HMyd5d(kr&2iy1cISnZ~H!0JV6ripXfl?659P9*1+1f2FnPG zsZ|Eh6GRJ|D%;f0c5uRl$u_nt12MTrhA6Z>+Cf0*YytS3nJiF1(CY*Wh8ax5H$r24 zcUCp1{#$=$zwf)Nv`IH{TFD!vef$e@$0*{z!Q-u_=or~4S0;<cRiOEelb-9mIPBQE zBgwerl22FxefhwZV%QTWxf<mm4j`SdXJ(Q7q}N(>n8I-hJ4n|`%RbVzYAZ*B*xMkM z9(|74=~vc=^YAJq6<xtyq?2PI4P2Y+vaa?TXs^gT2}{5uuiuEB*`8?|2cql2tJ_N> zI3?R)yyRyOl6e(5D<a{0ZKju<X<=o)bON4aj`3W`;JNeyL$gUOK_By9`%2BaWxVA| zPX{G^G|HENMx+Pj^l6{`-8A0gZ1mTL#bB3MBX)Q{R(gPU)CCr-JEA}fgu>C7Gaao> zGHYR^KYD-fN$tk8B3k82KlZ*ljRmb)f73F;$CosvOwYcdzOztkWP6;uJdd(^LUTQv z@Y=%W`n;ahvDavW$S1$5j)ewA3tteslO^*h(&{93W}-`~Pp5HJU{I%NRCJMvT3bHk zU|TY0V|V&)W|}(G%r}f=EgxjvB7QjNleY}yd-_0ZEi(74k$jth?4Gc#9YTy>4xYi0 zDqpR#ft8DBg8esa5cI8r7jABRoC*rk6Bwb9^nj9&7-Nf)e$XvClFugxlr*I3py~J; zyR9?^MkwB%l&V#k`+0p|g4p^HpRTJ#Kua8&IWdq}jr8i~=H`)NL6lwVZ+=um)SDTT zeRw4@XS~PeyXOZo8DyEUt&K(B5nh79IVXjNSj!`A-49Q)lpitVj7%*tyN3G#1SOTS z??7Pxf(!>u<}LA0J7EkMEm^EZi`8c7q^X-tinR0B`mpce;{sJTNo8j7%h1F$(p?yz zgzdlEk6Vuxi|$CxX8SQnOiEYoPX4gNU&MUwxlOk)IC6lG%mbi4m|b=lIUl)ij@M{0 zAQgk5HJA;Q^V1N1tYM~h)*fCZI%SQ=1u2)`b$8dZf*^c^^5(X4)V7ZZ3EP;96k(y0 zU4BKjnRZ(jyfM_RgaSKLCphP#kr##8@wF{n)PW8qCJU%WJ2E`x3z8guOw?HnkjxaM zQ4Swa<MOC`fXqzf^}LHG*k4G3M<U*oM_2n21nI;GcWQL%`QX&7S~m7=Gqi)9k4Zzx zr;{-s%}Y)kyiE|NFBag=`9zIIdN+>`x}{9-jAWWK@c(qpF0?iXGk+q8Z>R8tl$;r5 zr97z9E+wP92ut6Kf+vf%P{ehNvRcH&YacFwa*yiEh{q=#(`drahzwuGo7Y~fx4Kt4 z+ner#=TuXHcFtdU5_D@j!m%STt-pFB7T?oqd0B_rK8a9gFD#kbxllGGu$17C65(_s z|Gb51LR?qgP7*n|d3P$XSsy@wT}k|*LT$sW$qC*kqn;zdeDox9n>(OHxttAf!>e<? zsWP!3R$!PD6}B4$?Naf>ejrc#*yY4N{0Yv5y{@yv{q&xAp#P48#Yz=>WDp(6JXX$| z1k=6A_w?6l!m@$oMTI5pc>AHItG?p22E!#+Oa};upPCR+l%6cejB)kVjtrBNdYSAh zTw|S&M(&nQcn`SVI704+>CAP(UUM29dKzRhCDn8LXB>;z#dwlxz#_aKDsDqjc&VE2 z)ktP%2vwUi`Ow%MzATijWWQzPA4cWLkg0k?l1Ud~w1TJbt;z5hM8}9exBL>qS)4ay zcm`be#4A@1)#hN>v@1^VJEwY|UmUrV2FWYMkZ!0f_|0tZ4LJ`a@W!{zewpmpVJkl& zL5~?a;D<qZIn!{|sxwl))=U~l8AV)jkd!nUPB0mNGAA#%<!jQ#&*z;}b-W_@^jL&s z=Vh&0SDl6zn@R>fB>P`z;3u=BYNmTX2l`Iu#+nitmPbrwplZMPAZ6{xhVIk+;lBY% ze&PRcB|5z!C16F#1;n@moi>yr`>)SVkfvN)8{T;F%EO%-pI!0}<0J@u+l$iWet{Lt ze9Fgk())kBB(GWRT5WG?EnRUyCW>we4{wx_>Rb)nKodN?ycE<#R}*4MK`I^e_=nV| zs-Usn+ugsk-HK%HgR}CaGu!anAgzQP^BVmDW(}5ruPMja!)sYQ>Fe+Q$G{o=xFsRF zZTPoJ5Dhxp&y&)px1>=&2a4_<EEv5cz2>uf2{N4`(wTxD?|<~ah&mZ5`r?598H30j z@in{$IHHfpZEXRVcSmir3akGPH6PAZUDdOTFq72$NPDdvA~u{HbeWkmHnSgiKfd1a zlh<v_^lD%1r$1QfCyNRlf7w2^IvQ^@4-MrowF<?-!+i4O!9;?{#j0aiGh;;$%?sxb z;!&}Ps$iG0+Ri1Ysq`(mu{J3t;f>!iXiG7Yw^VAwQ+4br`axW27s+>0SExCaroH@# zlAk+pc^kKcZ^K4j79k3zOpd*|Xy;RNS~YFOPf>qTL`*TOyuQcc^cIe{9#?0%4;I3O z|0s1&_^d>=bRFCpeL;6U5NDWK^CRqM>VLexgB+E~{DYJS0I!<vK47kOxN`?}E^`PW zHjYN7;)K}J7-W&raos%b%)xSxZ9|`Znr|xw^9^Yqg>`SW$dqik1e|<rBcqAvQ~}OV z4pD4(9h{D}s~sd3?1X7>3^T<?HCpCGvWe=?cn%`5j3PrdN#q9^Ml&mYVDCDo-TCy0 z>>Dhr=X~tk&*>B2WB0S{=UxYz!*CZCgMmJ`>~@82Ls5iZDs!C@!~gG@cvZ_1UVMAp z0qfY$ntj2)0@o<^y~tfA=Q<t9e<DC80NUf?C1`tM_POsqG~KmI=^6(g!CmO{Mo3TZ zyC1}}77d9&Ef;1#zN@~DEgG)qb2&C}N=%*2Cgrn#`tOjHd1Ol8brsN;Jj@<SPB%cK ztXTd#I$Kq9yAIuGQufnl=9*K~e`^1;Dok0*?NzE-3rp>@)V7-xHnc-Apwcu+_Y>Oz z3T|5(`efWUKu6nYezhgv;&cONNfP^o=EFDh;$PcOz@ZCjb1j|A%@Ah)RPE^L?3P2Z z75r4`0<)z{kNNp<Vdq4hhZWh&<_~Yoi)uHnhMs<r-ew;aIpqkZT%@23+gZ7ac1S#p zZ@y9F$5I1E6?-(}bW1<w8d;OSs&=|b$~VePitv<+Z2$tF@_XCFqK=^aP}6*_q1|3b zG)s*IZ-091u0kIYNCOh;n;vBsbZ0*6uF_RTGS9!Ut9!!Ln{HvEUu>b)ShTlTg_gD0 zw=rXNLC%Q3#VrkzYy?NdPp#g(q$t1siVt<nU&(#ZZ5405BY0z10*e&FI+zAY$N;7d zKlTT&8+2cJuIGY?1P9hNTxC$}i`>Y!d5LJfwD|5mM07Xb9J3-c_l$jKqh&@qs{BZ; zOh#PHaPw%YXX9vE<a=R#rpWK#j`C2J=I3Q{dMG{j{H_b{?PZ0BBvH#!I2)=_bymXe zNgkZn#@9~5Tb_remcNU<^*x55?SLrGvEUV<YY$54Ah)sHR{TARN*<fN?{*nF1ix>N z4cqqBb65T0G%H#qB$AtMK%{>!eXe<Uv%5*OnlxfJ<;jS5d*?=Y6JLgdyU8_)Cl(WH zo_~dy>;Yzz<keFY&Phe^M~L=GTx6<U#ti6f?Y1cZd&7!Uez7~2&PnB|*{1b-M7XI) z2RUlG$AA+*h^*S+K+}d<i1fl%&BU@k4<2OHZsLZQ!`pu6V1)CsQN&kfv*6~PkMw5) zg&GC$mC=lyEcB$e0F-_x{S<G+?+S@!#m%$I(i3-kt3lN9hLoK=NY@B+2HT@_xRmaP z8%ezxnfN|hK$hdAe#{HiyVgBCdA@3FJJu#E~$B=52D*xaiJ@UAWG`jMsGa}9YR z=P2G~cKT|Qk<WlSe9Pm#<Carm8P^r`yxmN$=Ta?y7OW3~SO!0r$|R(tXm^p!Thu6& znHtdec7O-#GAik{dWA0&M*QGA)M*F6`OBunL=K(|_CJ%*)7JgzmERXGw{OKTHI=;` zEP&zK@~U11{2%Ym&^0z-Jwt2|f_aG6D${{E#BgHV?>=Q#Mru|tl>D{QYzQJNK?s*D zYQrS5=MWBZ)6o8;Ns-z;L`}8RLi$2<nLckC<8`!{^I8PS5W4D;O`pm~n>QRvlPmNX z1v+SJt&T|t;ndo4KRRC}+w3A5@oD|XG-x|&FJX=l^3RA#yZ5T&r()cDC(LJ3N*1?T z!TX542%~k7&O--VzZ?s5^A6yI6MhDLrb2Uc@{4Soom2KVL_CIN;MdrCvby;~U|Cs6 zl~0L2=gRNtFnO*ain!2&o6l1lyT<@3Y8zzr(!6eEl^z97wAw~kc=0cP^^#&_#iOXn z)NxP|j`mT)w5JAE6DFrXPUh?NWr?_WhHo7ed+#v8*sSY=ds4tG^w;_@9zj>K%+9X2 z@sP|x&i-LyaZBh7ha~pt<S4UUhFvai1U2d>#}9ht)4zRWB50Gay16`k)sa>Xk2oEx zewgH{gEZ}yl-Jzez>!0aKW?#I*01eNX_KI+U%Q}{opXBUXoQWlIx)Vi1289(e>^GE zy_cBJgEr31*MRop@THUvaF@Bf<-E0jYxlctEb-ZC{wjpSuS`Tx4=;)p-TyA&Zg`}I z)|$(8Fs_Wda3FG*Jap9xZ{+POiGzZB(~Y*@h6P8NN$taCsKmy_7wLLn*bzLGI^jA_ z+3$%({@ztDZA#w^8<q$+WZ~=$p4jNIiHvRe<b;oo`bYj&$-wTOte)=qzDmHAA$Fcq ziMiOV0qWm9gh^j|Q`77|tOmL&!4=W9^f;quSNDX*f+O4~^V*AN&i&aaIZi)s()Yn# zFJR2sOj7jjUH{G@x0&wqU4oj~77@J#kygtBTgjF7G1eVXQMAi6JJ|UK`zdJ8X^#2l zG0UG25v5Bj83|*i5KAd~l~X{ybpRv?`Tn2r<+EygS?oZAXV$$W=~yG>3q4fmlPE9A zR#SVecKGrKB!SDUyq(wct8h(<SI}xon|`^k8dOjxBySpW;!+{W3*+@_q%Av19Ogpb z+3+)`Eh!LDZ%SWeuBw<_>c0cWq}#IPrlR77vxPv?Mz`E%W70hXNPYpjtzB;qB0Q1` zP04h@vVDNzl5wf)kPoiy?Vh}iyYr!a4MlraBO+!zFCS@7RDi1{HJi^D=jkT2eVk4J z-)-ncaqxOR(wOjQK2WoahDAXEu9$@Q6~g;f8>8jl5ga1qg=gilAFPhSO3bRGfM>%^ z2OXu=iM0yFuvVc^NQF{)D8gP+JMhLPL(kPSA1f2itho%E8*rc<JwG8tErHJO@yDmC zUa*J0zwUzJtbzL!>yh4|Xg+=J<IZjfNFYUQEw6D+;=O?fz=Q_Hr=Q<|C`!x7Fewgz ztznX}WUGvQUaQ%pV`UJV_2&TQ%glb?oWYV!7ul^+4VYK9`R);`(qpK1PAz*4M#>&L zGT3f|sr;LBBdJ|a*APb9w1=q*_AN$M8hUhm7?qye%zh=HcN*tgS{1bXaaLe&XRd{I zD=@MzE&gOg)3lsW49~ZbZiOJ$;uV<m`oB+vGo^Nq!7v;td?0<!Z~M0vL6ZNHfEVRT z@`@!1e-U4!r**BPG-gE^Ni~SsFwaZ7QqQ1ep}#$E{{8esSJsN_jE2$q){Kk=xd}tq z&PjRY#@657fffY@I#W*Yk{ow&AZ=-=7%(-WJ#8PWyZ#}uOst%Whib=Y%V9>f`N_yJ zuJ!t6YkeIC7zEKpx5r-uUF|&AQyny$&+KPvp-pfp;um*S?>M4^^D`|XT>b<9)Vbmb zA;_v6z&{T*!u^x#e$3O{wCAt-`bm)+Lp$mr)Y@HHVBwXF53Z*=A-frgy2V1sci9oz z?aC1Id=v48Gf+}e%H+aj!c{O23Q_7J&>A6Xq*!=-<uFr(?Nbhhc1Z9s?Md?cr)~DL zT~#0q>yRS&EycT~x80}gcbLTCW;A?dY0)h$Ehd_|u=BY{Iry#`@edJ2lkmo?z+HJh zZ^!zENmuo;M%nGs!2-<#t}uPhi{5h|ZYu`6T3;)cGUDKw5?c28VFGXdRXdh6ADo|l zkubak;`XI8yCncVT{$_C4Y>PwPP1~&56CF+^=0006(4@NjqLOj2~VZO2Qb8XIn9qj z7CrqX#GGQH^`B*W0Gh|a0RTO-r>3jxyXiSdM9xT<S0eYnf-be7F#<npIDjo0r;T*) zeR3*qp;K0sjShyfHI>JAJ?%@ZfcIXSfA)6codsmvPz3LF$F_cl_{6CFJhhbC*Ry#A zl2)m0)&xU8rBX5>!$inH5H^@UpR*CO(oe^V+7C7ab++o;1uxCvN~1s2n!hh7BZ7tG zC*%q+6hxE_On2!c%x((D#Et+a(1BR>Ycgu1GX-;ES4}$Xo0a1D>g0TJv}yj^pY(h* zuY7Wj7gpq%%{M-IvVq)k1g3EuCN{M^#FGs&r8zFx#Fj=*YusuF_vQ<fH+S+aI|~WW zs`2BwZ+e2i5TXwBb*TN=yUO&gJvop39u(Z;2y6s@YZ`iSTaa#jJ8)L7*fke%`S6_< zvcSCUw>%*xm<h65_LJ5a`kuV6Q?S=S3&m<d>64u10j^gMzgtZq19^$<t;fO(4P{%{ z<r&zVDI-4g0qx6w&|rZXM%bnp!S6smZ<l`%q7soE|CHw~`8dsDL1&oUDjww{0`ds~ zMbkG6882^BqbUN+BN}o>JX*wAUSZG12v62CH@h={%AgKr4L%Mm3jftU{P*zVsM$PW zlel1i>l3zr)_Zc78>g3mvUBl{zox+gq%S`x1%NJ#hKEwg&EyQ`hfArX0cigFYX28| z?-|u(y8exhC`Ax#6s3rc4G~c3MT$CrBSn!WQY{1oLg-D3fPkZbz0d?f=}kdG2~`CZ zLXmDDfOJBWF7>_cFnj;UFz<fnoOM2&bJqUia@HE*NuK+@>aTpf|GLid704D3RK+th z^V^lI+bPUkb2Q~d2*?Y@eJZNdEH$S;zx1UcHBDC4U$Lvz#@QC6;<kK)S^TIz#j8&& z&eo}1m)@8ob;kcSGymb99U@TarE*<n#oZCHE>Ydn3gVT`BVb2Cwxw5Y+{`-TIjCl8 z#a=Q)xmEo}4%7#L?4qAA39biv{hJRAx`BMA9#MDkUN%NW*Y1L^@ng$-t|d3tjgG(D zTyyd9*Yt%^E=bwl%o9M7PceNpyR#6#Q|{DZt2?6)F#>E)&u=DMJ=r5a8Sd@|9p39M z(tslmpANLi-oIY>d9C$D_$UnZ$Mjt$ba#key;U#w_{k%9LyhI&Hd7ELW`PmM!@DJO zIZuzC66=~*&RVi+GCgzcPd*UQB8F(FF`h%jtz-SmfuQbSV-l%|Wo|I1Jb5h4`8SI~ z-NVA~@b+Eg%Yn9D(}=IeqBBofrV=*O0SN;ON>v~2@&wGRPNtSvabP8g&rn=o`!jwZ ztG5sI(8TIP(Ne5t3mLvmD8!vj<RmO#T$woZhNVU{)=@krF4H{wDoguNZmu21$>ky+ z7wbN&2-60(w+D@Yr`5;Kz{W)%CsApc%L`N4bRgDuX_UUf+|jZ-597CM3#BB>7`+<5 zvh=Q4yAilHVaFl{p;+B{T)VF1RW%>T?=|%&6crWKRY@*?&-cl{>kVr^Ea8`2zlOSP zTuLxM9Fh%Bx**0Gq?TSg1zh>Uh4|fe5Ts#I9yhBmCPgvGNKM@|={Bn~+jIn(X<!ad zGy{oo8!hH=VCi%HS;h8&4zj)IylYNTHqR`JkbQ*(Nv{ePO);~~9!DOf40r{t^!6E5 zygrhLven8aa&pGXV&fhuo2l=gMr4H5f`KyjzKxli)@4*li;5o<f3}JTxdlt`n^(F| zA{da*uHmSL13N(Y42iHB$5|h~F`pH^B(!%^VoXd~0C2@D+4IpfxD8?*DREZ{D{&)P z<YM;6L%$3>MUM<|`bUb1fcWtO8zUx3Y3VmHtrwA|tI7$aO_vW+i*D=A2W;Y)@`Sj> z<Nl-ZgRyoNS+Fg+#;&f0#Y*o2aW2^`g)TwuiIDway;LUtKKg4C5owB~wBkvKPp(LU zw3yqIZP)RZk=GTwG_!iFlm^kjoLTD#NZU&v;3b3rkNIA;ey#&32s`HMJ3BjTDy|=V zI@(@PfRxirr!m*iwk=L!6y_Jtqj(#=-zrc4wvc#l3cwVEb=kT1GRm^UmG!gItnLxV z9zO4|e9cV$tXcEhl)>W=zfbu%!<<*rJGT5w3&7_4XvF9T)KtYkG91^-YFB`I^TbLv zU}WSFZlz<Pp@V;EgXP><LTFuZeOL6SeQt+2XgFI+7nDr5G!>6cSMR?#6=1g%s}8H` z*n;r4yPyvSp|qW2PZrO-^ED`BtmRVcz70C=u5^MPv+=XL>n32&;ZfWW=VPd<2J}(6 zo_nVvi=5OC8UNWVE%0Vvs|1qpAw{k=;D~|MD~f1B$MT%t(_d};`s5}qLHPOL=tc23 ztps6<daRE7b{-@lOpND_N~%}XSXbe@o>7*Mi;a1HVW|dCuBChsFqe~mScq3WtD$FK zoMb%2&V;79qMF*fT|n@tG^aaMu6p4|k=d#3EZj_5ZrS%@4Sr{ror0mD-U3J#jqCy< z@k%B^k>k0pBCPPauZLm|+gkNK%H0l*<@Cmll0Gp4qjLi}TlcDnbE}^p7oFdJyKeGZ z6Kp{YGwycXh^PA)9)*|rAn2B2ZT+MZIJMH<yZY<n9azZ8HK0dCFeJFyE40ssYS}H+ zp4v>5e%^^?V5DU_?(x-#kaRb_wG4$u;qGMe($$6Oc<^%0N}N41|Lbd5_#aI1>2lq( zzkVw>utTZDuDvFbJy5z!^6w8_Gby4XSq&1m0D4i~g%2d$tep3(YqRk+Y^;9*LIS4d zpxZ$f;>q)SyK-D~*$1}hR<luKo(H`X>Y7ga<GCZBfg7=%GjYhH_5>q6<>I*ubD;Ld znxhdZ{kl%*b!oK_3!sObQRBqiC8;Y;x?T1OZGY@6K>(bsw(~QLU%83NJdwNxwW%Vi ze9n(3UtXzQJ=>Rz$<pnV=KZDm_^*x{T@)lJaK+97<cP?_qR@JVF;=90pch<v$Bey$ zS!}G5uwQ?T`ECW#l44r9!i%!RO0=b!CYsL9i*JAZd}Dwe6tCL=Nl<4ZS60#C)*Vus zjFD?9B<jWP88@oY&5_ME_TitJEjtqa>7rPpN+l4IIjV+JTK|xE=a4-x7PA}?J8q+` zJlpx~N~k@k+p{1Q<I0~ZdNgW3$F^FQS9bkj>8}8gqV-N9H1-uYlz6Cnya9$)c;k!l zk?gNwFlv3%Qr<K*G-l<YcYT3jcCJ4`k2535@okF2%ENBLcZn-T8W~5b|0q<tFX;_i zvQbbPbzT8g0_|E3=%*N9p4rdgr0K{e0(rligKbL9tz6G10%O>inj#3BcNfzipY<1w z>AeI?@}V40Fwp0CAHqpInbJ9iKt2H+@3MLXe@kxF%;IQFvr8GO<{Z_H(RUsO`lUN# z5J*H&8$~>9f_C5F#`+JngLc^Qhyewkf9>-_u@T-g=M;SsU3vvQW)L-h>}<}_Ouq#1 z;I@Mq%_rT*Qt!U29Vukz@zBlH7E2ZsNFL9k>lb7ef@!x%oJjy?4DzWN32jA<6<ccG zBYZg5Xrou9q*x|hn#X~LBSfR^!d;zdp;|m|ICi2gqouvUk%M=K!L7ijlOP5BEG@dC zO0U5uz@6hw=war#$`?SDtsAx6G6xst?$YlyDhC54oxnLSyZl$$W(mOIIjb*^G-L8) zxN#%-$#7a+7wsz+S3}UfEbc8be{^CuysXl9BwjSMZ02Yx1h`(nbG=91s8obPU)B}G zWGo7wV+M|c8U(`HvM}$(q#eD>7r=m<OnjruR%ep{=owe$9Kq9x<4J^XCj$Z`mAcL} zrYQ;ni+vh{$65uFjGF6GU%t`3uAAZg2J~Osq3X@kB(@~PBw+@0S77TJSr$r6dN-?W zsvC5&GWnowASsyPH@zvbVCI@+)1kY|zgcL9M1HYK2{+Ksnb#@NTl!LSsyqN|n6`Ce z;)RvyB(wbI50T?q&8-g|Ax7<c-6GV2)~ud)pR<8r9eTtMKlA~SJLl&v&jwK*$3Xtx zMz|*a^JW7Wv7A%{(Frj>?Tusx_9TOIb9%k$%3|S-7WB3c#VfJtngRlettY0nzkB}} zJnJ(A$O3VkOJfsT<&WkmMKy4S#y>p^?9V{NDQ{!ExYnV2g`L_uRcbd10X30$xqIJF z6+aYsXY>%tfu0UsvoEQr`!yuQS2w25FV=iEmyvssnRX^=gYCPhJYXlZLD=H630L$f z;wopAL`dS8p)p>BP5h{@lqG3hew8L2qRW1d9epPa8*nKp3+}VH;eq?g1$UjNS858H zg2S?IyAUrM-|ED^ewoKcd)9!%i!>MZqQ<;eD~SL7^mVaZ)wjh1Rvuojd2NL52kfKA zp*sig{WHIXVt&1$v~7d9m@CMvKdfc{`ZokuH*|E9n8=}gVxL2H>Jmz@ZH}^zO*Z<P z>tH5k?;3`sJ;;wT5OkeoKYE6S`&WI@Zv;k-q;1=?t0G@vjk$4qB1k&`<oWc46w5Uq zf$60IniCEC;~#>6W_o^yqD29g5)>a<hDVd^Yv1N+e<AxS>I5?VD≥JK=FXn&wW; zhN1#ceE&I+#(?Ddwc*k*Z6N^f^R^&tvhMFBED?C#sqmRLRA={ncyP2Ho9)xPt!O_C zWwKI#o_s+#CR59Ym;d6}h*#Qx6hiHLM5Te>Lr?i&a?TL(?T0HJ<UzLNgl~0}Tmg{2 zx7o;O{M?2>JL&7d31?1#)QNR=R+Rb?vGV*oZ$o2q!Opux7iZ_`og_nRW$eJpkLY7@ zDj1{7pZQmGvL&w?wb%u8rtLYPyGG%Yj{0!<U^$8ilLG2y_3;{`h=)JCFI43hU!9Eu zYIJ;ZF6z3`gF>_?hzT~!z0#_!47j+g_MBezthyY5Uyk=~_7Mz85LP=3MuWbW)|juF z3!+J#ALx%G`tP~iU%E(TMCtXu*-TsVH7cXxf1XgmD|r<E=Px<vL+LPfF7__vE1FXj z+4zKXx$Cp(%CEVo*Z$ST*Ej0|rz9=is5YMZ`DDu$)+07`j5{4GE2}N!aKNk{g2REB zI1s-a03K*YJM=(|CNvvCU$*v%=Aj|)^z?LvnFH3*XVRDQW<EqkWbe*wF6CU@EJn`x z<*xQmOB=Yg0w<`@iuQx6^y_SOGr%Ef?rDSZ#FjGb&ixj9fq>3T%E5JzSx6xH`=aOT zS%2CeqO{wKdaE{(15ag&SrA>sFxAY@V_#oU$%8lSL9rLBmz-@IcTXmyS#+|>wp9Vj zns~EYd`%!)CGxC;K(wlV@z>D=wG*ZOvC1k>f*q^>+vRT2-n%}`7(8puqm-qtajaT3 z#6)YUrB5XW^(wry;qc#dwOPhLMGgMu3q@Z!mBxFXix9$KHvMs~lmuU_?S#~deD@({ zMx1bsc{yoQUoZfrL}|fJFhkk8`a0jQzRv%7ZkoUS`(voQd)sA}wkz5)*QGDD)waCK zfc&uWfn(e>*gY;kee9bxEIGWUB2A+<ep9~x^n*0+6?Lf+&~L|`9lI7b5u_;LVYRp< zwku);Fxg@=;6U{Ho+Dg_qkTq~I)x5ymZN>gmfKf(`khO@|9}#&!+;}wI|jUmV%hZ; zKMd{n(O%1ciRqB}FZ>fN0>hUU;6S@vyD734_u>AUfQd?tN6HcIK4z;*9VqGiP3)&i zIP87A`Zgg8rKc~i<n0u*fbSx^IO)8;KL7PwbUA```JfW&@WJ+Kr_hst5Za%VorKcC zozU^+5)_SSXC?oB$y7lG)geFpm5N}8D=HzIo<GW;_mG0f!`u|N;LmrA1#U_;(<r=s z?d7?H{ftg=3nI&R)h=5JMQN<GeC?FTvHir-7lP@m`Wt4uC2+1-k~pRMCYjy-(WiEX zk;pH4ch#kLU+>NE(W=$%iB2(aIOsDOoz*_iar0DR9c3F~`Z2eUs9jUb%{8Q|?6=fU zUG$GWH82-yqQmT%a%wx%d~5+Oa(u5yDQR)VLDcR^F^4K`{5vN^JzChle{{4O0I_`Q z=BdmsyVRArV94U8RX_4l)5(oq%N0jtaaD=;$yRPThFB(3ZHl*<e&wqR%dg*-TD!DA z;HrwKDGB=<4T{>!=mCUntNJ<q(dSbYgqgLv_^Grr($W;{(K-G`zO<)sJTw0vIG%Af z{`lWn@=bnFOgEghaFT2@Q{5;G=<AK`LgBRfc8KT3a>&2$Xm=X@f0U`%_GkTNQ5`;l zsfuhoaQ9=&vADKpT6_Ji@#cnpD%p0vomiH2GHVd-+g3Lt&X|9qprDoWmq7W)xlU&T z<HD4M#k0q5e?96lby~kY!?e6Ne)0QRWoxLcS@oI7+?UUD(B9SkyQyokf`6o<@(4Sw zclV@IeCxjByLyk3(s%*M+jT9LmG;)MpQVO~lz$|@AwcO&+ZD7g07n_3v_Dc@OcHv2 z-VbkX&oj7YbL5VAgr65;W!OM(bbXL9?eG0d7`lf<CbVWs4L|MQ<7p@&);@ps*HS}M zKPcaS4kDmN0oBLJ;MMBmZ{pbM4_y@>(b<4osyMmM=<$&E_4$a4OOEANvI?ym8XNKR zZ*RLp#s8t9?;`C}Wdp(yVi+0CGpGVj|BhN~o&+k%WDvdCb@$s8m`wg7iK4%J=D$4r zf0Z$I|9@ZW=D*4q|5e8L1+ZTKe^AEw-xP`eD*k~t{?9agUQbaHjSaY*E`JX{@`Q0V z(M6&#+22cu{cI=N*8+Fg4!|r@1p`$1jcSUv&sRKdZ0XZ1(%_)yi^dhExg&S2sFegz zSA$h>wXU9?B;^57KBM-I7r^Cg!N=Sdyzi#J8V>y6z592Mtz`YD<^xeqx7-;tAG#yd znrX7imRm?ljzin4Gy<r5>Uxp~1#INfT;iLfzdo*Xm`RD(_tCG<`nvT!@zd2e+Fi8( zh{^}hZDY#Vt-Yb+Pryx?^lhGT^R8jwibojN0F<j8x#SK{lD@qMcucLabEB?s(G;R0 z9ksc0*eceqV|fNYYN5Cg25^BWM1NbDj9wWA<?6ck2E%KH1_<*TL!HiSz}<1}_&juG z1Fmw&<;zam^capnxQ#s@CZs_?Vb^JMms|X~SV5bJG*SX9A7zAF(M>()R12BT7l=O1 z$d_QJgb`@<j{;1ovZX2VF}P6Yfg_wmzs^`BQbUl3sUuOLSXdLG8`>L^v<*E6FK@u< z10T($)%<C24#HZ3XvL8$JhW?u)x4VhY89TCLwLB~6YGcH?>TAtGt3pzAQ4Tn8iOmP zWPwq=_rV*o-G?@ck>h&2)((2RjU6hw7mK`sVC5n9Jka_LGhrKnHH9<BD7bS3%*)z< zNX{c+18z{Zu(-!&N3AJucHiUmg_b>+l}8fkG#p6K%HH6s_a~|Lj8sxv%6>P)QP*e7 zw6m3aRGMa1Utii*0`|FKQdA?2h=BF~MnoX9R>&6tCHMfgy0hQJ{sV`mZ(HsgP)VM} z7cU97yz1<;Eg0cU4Fc88KnZ3;5tVV5>7mASi<;*<S-}VBW`vxpZMh_cgLM-b7KobB zg7O|yb_hT`ZJtOg6zMC;<pyYncHlzXbCnB~pSgfIaxLA{W0p&X%YeL@UM2t(GadHZ zh`D@QULpTGSe-c`4;?4RCg;Mjy6bezbie;8Y<E-cq8}C%0sW*x*663y(ouT>OBFjo z7}><yaIxnD!uwInGKZ-3NcIP@cH=vk_f3wibq_aolz(O~((;$=m~X<jO*aD|{kUzL z^eh6xA=TlWH{e}T(+&`k(jsI-?X^JaU~78E0=P+F^^F=I_Eb;r1$<R5@Eeac@A-q| z3R}#4gxDV82B=5@P(l2sJ-JY{pg%t;UzAsYj7pKTGFq6Y$H$j10irxwJHjwa2n2Y6 z9l5)E+x!Z{ngML@zHv}eHYe=;n1F*Z;v2+0_dE3`=W^=?tUvG$&;%3wIW(Odhv#9k zMgdCtj)Eh$-M~>91x6AN{tlLj-Ixk^v;F?XN9QJ4nU%-cvrg_kz1ms0hlA~67lUa+ zlad;mQM`T0x16^D=k>?LV%4f#!Q)SyCHp;j9$U4}BS;Nw*W1BL?S59QW#$z4Ah~q> zsCK<v^9KV}5<Va41i!9$Qdyo@b93YNHe}L0Fgj>)h%z+P2Ha9(Wo6|Q{Nqk+%63N- zLjF?8`fgw%0Jhn-Jb3QNV+(5&akqu1#fu+6!15TWD;-p8i*_u6uZcz4;e3!G)44gF zgGS}!FuD)shdC+f2|mXu9Uu`-qa4DtqRb^onBbA}bu=(NfDiq*DnSg5D#7Jf)AX^W z&^?6pX+@uBB4cJ^rkg=4qUf0ZUmq2o-10i&JW_eiCa1u9<{Nu5HrWZZHxN2Vx=PTE zC(3IUKqIcqO?`s%61(WHA7a{f0^Z18P|m)>+_8<IQ6{YE&BH`Ku(GRejW(sws!kI? zO#&{9Qf{$ST)b(!L@p=BtIahvA0k_bUpO-^S+6j33jS0D5f`3_Od7?3n8gicVpXGn zEE@%ynNaRS?{OE{+D`ht0VNdY%BM$M5pZ2!zetRXyw67gxXhaF14{KMA~8^ecHeVC zZ78%gvfd>hyC0H$zCQg08kCK>8^viQT0s_wiv5+OuKpUga^=f|QjC=M_>TJW@&KIh zyTbSo;rh?3->j7Ee|l=d2Bb}En?D#IqYbuyP5?D8^(bNiA9oj^$rmDdf4k4I%6FLA z$bl9eBLK~oTbio(pTD3K!~Q2lw2bep84om;<MFj?mM0grs0TreszH(wYB`=GaT4#H z5!ZZXA{BpD;m6DC-62wKNXcBPxJNOLdKB>D|M`Jq#i|fW&=#a%jtyRQ^ut49x@(w) z32|LQSPee=_gfEOUu@fOdq0)3l5@c|tt$Q0cutkAK>M0O;YJkCG>il@+L6?=V3Pkg z%!|S+WsikN-vNSpawu`opxv^sEu-DrUS%mwo`MA|Hxiq&BO;Ustal|Y)PNZK2m;0f zohys)!E57+p|M-0;#*(^&E+F8*KiE6#u5G-GVW{}y3<IrJ4`zeR5gIM*#`DggTTY` zcXSZ`Ekn+2+$<qla7rzA<zST4gX@4mTr$>F)Nrd)=5nWiSi0-=;n%8}89;?FAuY1{ zEOzs^OBH=*^=TZY!bTkXs=lAB=5Cn>nvZd`f)^p$j8`1!_RkvNm=V$w@~0k#c-MI~ zEiD7j3WbY4aOyFyQ7Hn<rSlu+r%g;`+txQ93T)?Ofu;MfzDB)I&;#Q<R;IkGEBb*B z6RbPlmhNeNp4WM!hO6N@U|FSErv_z=USAHFC49R4@!lTI=37sYZ1r`$w_Z@2X|50L zn)r6-2t$fTpq$I_j?}EbbiLG&sFbuZyKhq#tTWRv9l~#~D_yTtTg4o>%kwBxSW8K< zT8?{u4qodvY+F?!JM|}A*ooodomSg8XBB@!9rZnlD|vMKGUoS3`zZ8>oI9s|LWhI? zY7iLcPPzq{2C?!yv9AJ1nf0tc|KjeJ_;ZP6DadatVyh)9+byBR3ZKQGg|5v$1HkyJ z`1ri4@%HW8!K^-@^Ns|r3bF7ytK~NAbp9jXfDs4Q9s}w5LxQewmND6i`Cq_T7nFkb zjh)rbs%!%zs+})tfgRjbz<4my&JW5x<7_L}AH7ctDn$x}TFBg`Bv1o5(zyWMNQ})| zJ1+Q+B9k*xEDM*Boo{{c`>qM_P|ro+g%&4R*%yF#JR=22?pbn_)GWX00Y63mNl>!j zXy-@;-K+1TKrel)eXIEh@`bhN&FG)^1pZ=su6?%yUzx(1?@@Tm^GkYT7p6X#5TzG@ zjFFF$F62;m($t5qC)Hk*l7NR*DL?UXZ>jl|^5w!SU$~x5lT}S?8w>UpDt?+(Ydc|n zjK$;b3(0w9(}qUp1~#u_vk0gJb_H1!5<UZ++HvylV<9M~dX?&%PUzNgrA(_<^b5-3 zi;Bo{rqx#d^Dk!)pbbB$GkkWIT{xq(dIC1Kjqj7Z--+Ee#*AH~4mV95@@Io`ZouU? zL$y`ei0=?`JMgMMpS#F!r{2m6r&o`s;?wvD2=v`v<2{oVyh~szDNH8oF^_F-sTat1 z%(_IwVb!GMeFnXyfq>KRDquL|?!OD(5_n>{MlICc^=9W;-W0vvxGClnKyU|9)jN=G zCa(|7^+6XfMU|FpE(7#%w~2f2<IZ~kCGRZp)x6Z{S$S*gUV?#VTm_|gFSvW!qr@Fs z;E-;8pc4QJB%m;v7~BOKmvbm)E`+5$`N1hRnfLNwvU|b{c;+rfK1<W3%buL#A0_O+ zy$?QR>efZ?3iudv8&Db{ARAG!oF9k5CC>pIF=q4&&$=u7=fXccSv7RZ$Q{l;;he4H zodKDyPPaX!Bq*0^4h^WUiGS?$5KjAs{L2zNR<_RGQEjb048RXpW*;cW-sp1K=<mKT zCR1kmlGTMX6V*w1r~<R#b#1fP96K}>dgx*fAd_5?y1=EYg~cB5p<;vFDD!V-5fiTf zw=_RJ`n`g`W-cIp+*fajx%rdB_dn%PR+b-s-~e>Q2kgu3v=g`<s>=1)oj&P%omjTW zZSCeeZ@^cCi8vv}JqHMhPwDac&M5*`<-tQkRryEq2Yz+!eXNfuBqPuVGV(Di#%%i} zIXMhyNJ5xgnXd|QE-6e=SKKTvObhhMI2!anmO*hdX5#r>nTxe$-uX9tkOkrGCh~l9 z<*fFL^8sq_lvh}_V)Bv<Y~S_&_B1Z5C~y{dX<c6SmEq2MT}H*g^<MG{@Jx=bn}EKp zZK>y=;-{9>8T89{lEg`G7(SKN+&Njpef17o5Au|pOxfZ(x09G_`Q$N(fDu75taK~r z^}VOj>+^lHy_U;u$yN4;Q+jgp=fUPHz{?5pWShl2oG#vw>R2Pw9~s%-4ynWz`URQ0 z8^;>BQaDPmwonj8B&&|`h*Q#wdY-2Q?-VOXxWN#%Fd4^q!y-@jxRE+m4}C80pzZB7 z9&c7(!hr>ogE`Is`@e2&xyINw?N{og+4oP%*vMyD*AH!nPWZnGxaz+?`~p*uo3my5 zeC(d~CIDm#SMWNjm)A^OQ(>d$>Gn=WZFvYrw{cS%u*}cvhI|GDF<Ia^u&kV10l3ak zVRf$upw=6kB$#67#VMnxlFn(x@MOp%;Nt?&JR-K{H~h{$uJueRy@#1Rl<*6{+ZH>s z4Q=!GUzp)S24Og@tn9^aT*c!sJ_yE_h92ko=7*=k)kj^6Nr{0dLw|aBuwc)rKsUwa z#OQrG(Fqz6oY#jTSzoqT2lh~n!(w1B6<&W<$x20!Z?@8O`ODIHkYZJ0F@XB#!+v|a zmv^AaF>yR&cqw)rJ^~DnSF&6Wp3`GzBvr8Nl%!vG;+)YI1}#R{b6Pq|l3R6xV+Fo( zOU3>k{D+M9fn!An4%F$N@>2^|`Cw^uA$F^TO{`z;Np^F)OMS{80yJ*M#BA#6zE-c{ z+EGMOCq@<FSDe}M3Y*fFov*Oz)}*=UN1dh50CTCGE%A?yzy<rr@p~x6gd>olrILnN z<ws>e@b1pU<kV#)#rkHCn}siIy0$V~yy6uXW+Om*so3Lg_yiizUjdCr%tgE{mRri! z2Gl}r73K%_#u;2(dIe~q>f$<NEVR=1vDXtr&@B#Ksi+)MY=KZ1#ow0>&RU)@a#8UT z=z1X1!>u4<B@aMEe!5wZpBdDz+gt_ic8wqTXA$1Cdb3Ys&HlsF7P+qgY}g0DDOdfd zn(=9*6N7<5$i<W6#!PY8?_wRvD<`5KecPUige-IBMty`Xg1aUs-dBZoQhx5}x(L4W zlH3~OO@Ws^hnRv)>j6Gq8+AdZUB^j4YVY+;p@bWD#<Bx-T7wpkScAMNa&9TLF^Wtn zGaBLIpWOMLKUwMpVLvg1ckAxxsY-lt<El=b8Bl-32*%9!t?YIm-*VJr%F?2w3y@b1 zbkE2eU(gpmK_ecfO=gzy4UjeVIQ8ID!ho%^y{z;LSf@l(9w|QV`7Fy8epl%>)|i`j z{Bn`&@1etoS;j;G-Fpn?TW8(dW9Z@_R-chk5OkwNd$q`)@W0BP$n0a$QX#L<QIoh6 zr>oj9TzM*Rll{rA{JS0p-eqk#y!$#)qWL$;J<Xk1xAL!dMDjl_{;2U`Ye+I12b=cG zqlL3376lBG;<-|Goh2pq`3Jc-Og?pLrYHuk(apSlLdokiu*_b`3?;?|`@QV)<}&u5 zw?)E#CB3{*Qyx<6VdEX|c<kwiA00065DWFb$K$;{G`WEk`W#Fp;n}&zDC|4*PD?!9 zo$30;hYQ3r8YM2jXNu$BT%g?X19X~lQ>qg%MY=vAD{{b)vH|1rZoUNk?n5QRPmm=f zQgs<kp6s^wF%3ES0YEB_^LFChX_%&0><KrB$mi$7k4=z#Hj*Xhgk#pNIlek2n4m`? zptSq;#g1s%vP-Q_UHU8PIUIZiVU&4B3vbruxWnrDPp?k{i!i@7<GQD@qJ)2--_7ve zCSlMB69XwbXE=f|tBL^N4t=QOW{@p?E(3*4yKcX>kE%pwC#co+9tkNc=!!LqyY2JK z9?#%{bYCW^Uy`sEQO-}?2VMlVwfokL|5Cd!Ry<Z!zD;_d_;8omwIUE6;EqtMlURnp z<H(TM)(x@B(-9bG1?Vg3M!FU2{Y8D(=cEe^v?iR5esn!{rzPlSa7Z7A3smBip7HCZ zg~SP?j8^O|%t%Q7%BVN1dersNJovucf!!94C{&iau`t;n7lC47`ElTHU5gHbsL*xP z9TWyb7>XDDFU_A{k}^4AN^En4JgmYtu$3@vyP1XNi`*{|Q}i6U$c_|$Xjfwk!nwAZ zbM<%3j4nGx|JZ<QPB*3yl2jBYs&!(^@E!{fS6Jo3s%OW*K==CWD0ZqZ-mZ@1h|ElI zS$;)bW|{M4i%W(cJUTD}Ep!AB)D}0&-FclUujOUtw+DwpbWQdPu?MWaUuFBs?&i~e z`0oV=vuV|iedpOTTlbj9MQy-g1<Dgb?aU;NFU-uhx`u!5RU-s0yu)|NI-L{Q^YtVn zt}%T)HTvreBzsx^Ll^bxgp#{<DipV0i8PP`<&a|PIV@)l5_&3PYz1nwywV~akD;5D zKe|1Q;lP2j&v^|rUijg|lV+hW3AH(u6Oy8r=3t^apr|QUpa6VJ-!RR^g{4a78msu7 zJ^~U}O-+fNScR<Df&Tb7l@N!o1GqaO=7krbEc?SZnZ2_qICnXAWpfJ%D=kLQRpv3^ zINbEcTTR8+XOAXfB&!oZ_)+!F6&lRQ83U!PZf~Fsk@pV;<+PrRg)hJGw&Mjmiwft> zx)=2JG<m8?yCK`^e$}BakG`5{+?1+v);ENb?>ZIfy!4AfsTs#~UVu-@E=imE_z<xI z9DHE9bw&wv%L$hBHdOh@uN5(ucr?dzE-n3Vp)LKHh0U@~eO4iDB!4{@e3q|k+&Uiy zJ-JP+9rG6N8Xxy=%LltRSx5P^{Y^O#wHXiXQ6Y}HLr8MdwYt}d2s!v&CUZbF)ga|y zqln>r`Y%qi+T`{^w<6Ac^rOzy>}j#FWcm5HR>i6OB18<z^=C#JAKRy#DTih{N1!Rf zR7-bnnstb*v3c>Oq|{K~d%iw8989J^k%YvEi{FlX*hVl0HkTMnh7SW~#o5wey*BVk zHsaV)`?(3mMV@(eRdQXwzC#*CeIOojtQAvZUjrDYGvhRPX&A2*hV+9n(bI|;eBUte z^T-|zC%phJk#lhRVBRYNp>5NSqb0_~A7Z?OM#E<pb8NyKioEwN!5NVyNo1vCT0#Wp zyS{@eWu&py-LJhzK<`x?&2+e`ooBDjAnsekK$?6WLH@J+-5NLM7DUP8skzR(ptqF} zvLqbqOLGyKE^ts!{H1@L_;E??ISJlJ8m=67L-Y5yr<cswc@3T{_I)Un8oc9J*>TVu zHPHw+??&_xOfAq9v#fHJU%ZEjeHe02ZNEB7nACKHF}W;7%%WNx9EK)lu3Z{xNW!#a zUh>6`elA{F!c7J#E|#{zOxZWguzhK?ABL^A7vEZ$BZKMO2=&*DIA<bAdcJj)huU2X z^bTg491Sky+P#n&i1DWjvSKhY$a{6c4{wEwZ++|-bxo=nCWU8xC!DfsELXtl?$jje zsP{*vdo7<FZ^|eY{TaZZ^niZKe+Yan-8Xm?sOLykHb5U0QcHR;b;a~CaMbD%W2xFf zVP!iT8AwoHhk;#kNLNQsFC4TdWl3UCbz^Tclau|BIW9s(`|{%pOcPt3f;R1Z(AX&d z{QurJ-xT#h(wODlrPgu#A2%&BqP-H5jEdf;{MuZS?s`&~OWa?@je(6`iDLtD#w8-< zoW|7Mv9dEr85LV^Jr6^A4GZJ-o0&cGmBj*)!0r7kJN0OV_F!Ha(JP%zX$Ob0TKw^- zBhLfjNrIYot{aG=l08INU<GzGeB`~U_{S_Dfx1UPUJZ!h2&{e^35_WRi0kC8JO;DE z?Gr}1Ao56rHlEI6Q05}=JeqboIGtB0HRM|X*}k2ubb^_Y=^s0h&QFi^K4&(NvUISa z0l=OPFM-yff6<UsI0_?!#%x%q8HX&U)^w(kpJ&;3tMp%=zA_2C7nPhn_2q#~<ouC3 zp6fl@#>OMI6AF#0pa5!tiwgL*ZM9m<9rd!g2r812c)!3k)!LTTYE2zgYlNYXQolrq zct%{yX-hn;(0xCJKy0NeCi`-7!U#+q#Vs*Q0n0@F?|eY6ARnHX(!~+J2O^{BsGUln zq15NK0GR))`B1w8Q_cbx!3pkpreP3rB{MY+Gi&MT=)AP4u~=V9!oB5|uwpku12>f0 z3$Y(K358vOJXJ@$zq4d4U92s6X40Iv)A-F}PpGMJ(5Li)wOrH>&@OqD;}PIvQT6N+ zyZB}<a7f<zv+fsQ!B3b~J`vU&&{j-tQh$wTqD__I;M-R}*1c=4eau^m;ttUtM6j>u z6fa|ofMuL#dVfYct6X8K_7vH>@WUXGa;BRcjV(WRrjb;PE8+Pu>^3fHkUXQLPUcZO zIiLPn3OSEmLDCPe|4#bBkEvz&-W#NQEy>=kt11mx`x}zHMZ{j-72W1(PaosA21PL1 z*QR>|x8%)WdjVd*{ZbGg#>8t{*J23-kB%uWf4^Jk#r>NMu&YBb*lDf+M^_S7YUO~1 z4DUdr3Ndz}aLlV_<M>dc59CHs5BV3EDYRpXs*Nj-y}X%h0_)5^Ff*GL83ewmD6qJr z3#W}Zo6?P~kvF-t&Ys$d2?w0vF?uu|vqT#386(R9{7VC>DmBJA=Oa4P3=<f(0r|tF z|7`wFJBd@aAiUD99eLIdzm84sr$q&P?Mh}4j5JNFz|=1)MW*w{dOF3ako@=1ScIwa zdo_51abxvp4wfW~le;b3R4fdJ0p9l(P~=XKxc23JBvAe1VX3)nb^gh;UJOJM50bUq zDVrDm_zus>5UpB0?=JWZo^gt{pz<7itu8j8;IqZnjnois_?wi1rUn4R6ADfk(mdFf zL?7xQhdV$$<cUTm=IPO1sxex3LqG4D({{^oP=4%4c3wKd5*dyC0OY>V!t|93+I9AZ zZla_g&g~f`UC{YHe;p3BUWE}9<JHHwo$5BlEXPhGt?7s_^jD^D6O3J2Kgemaps=hp zhqv!8_Z?Y&JYJPPIMgiDbp^c1y$;q=GHQ&QhKqo>Xs1sEwJ2@6_oLOINW+l+9eNp2 zWW-z`mr;Xe4@R(#B+G=ayWoHN2YZ0h!t5Bov^iABzG0W{>~~9XvF_W+di&L3ltW-7 zcN$M>HGwbG@HGPy2<=>o%fw0FNLhHf?!=0aB3OCLD9{!*%AMfSEd_l)vr#D7&k2T) z5x}1*aY-8pIkU3ZuSi5_{gL|O7t`GooBi;k=am+-3XxzY21aLxywpcs2P@i8g8=1v zU7TtJm^<&u6n^^nBm=H-HqF2bEHo?|Dz<tT=*$&Gf)I<!lJ5WY26AyIk(i2qTX;M0 z`A8FXHYwq`RlIuGxAb^VWK<syMhN5?7LnW%WLZk~a69481ER%jIG3VR9lb|jKO%|d z<38G-9i-I_hf7Ho&)v%-?aDU#QW}EG!VRRG9e{Wp0ewP;oKe>xs2qMYY(DvV11^Iw zaYoFxEmw*3?l80K;b%ymc3cG4t}@<~rvAi3Z(2~*Cn-5u6j661p@0{l+IIZq+zISi z2mEWd>8D8ebz{d+#{jIh#lv^%E52_kZeDsp0y)_TV5rKEcboahFZTj(BV5CEqUX~g z#e4D~Bd-C$RvqF^$o#cwhF515m&AKJCWde_K&M<ZjhJ+R$~a%8aQgRX!SGgnT>JOg z6NKe?3Z~SL-h>327)JG}24W}$Y+X$OZll*zFT!$65AR>TCIyVqNy@#n5eEq=)(>-y zTO}x1ud0(gZ0%>hWv>r>c3=Md`jqLkm#x1svU0QkkYH|I1{V9q;p;HVQwJ}J^`tfq zdL?*VZW;eHzgXtr`8&(I%mu@H_bz@VKoGL3Rq@wZ-l;3Gy$TN8*d|W%iP|D0JQN9n zO1|&B!AUn9#05n%({}jbLBUYUqdl$|4UCSWZmt#H>rzCN{_mQR(#JB1#Sg5<T~Khh zGxB#q@vOdjj#nZjGv``or7#@xjcbm%2Dt8tm=L7LD!D<es1=G?2iYTVnguVyF3KHB zfI>4X&Br+T(>N2@Si5zONaQ_F>1GB4WY;7`jir6dv8`SblWF8%Unz*<6IX;6<7{2| zqrY=ezgNlSS-B^|KxD5Zos9d-+o!HY6Qx#DE7*DkUOrA?s_{tC`?{$^CEz-bpi_!9 z3A_(mA+uDyF|W+#7696$1Q6#o+SH$^c`m;`%O;m`5&Bdy6iy1b=R9F}8(GS>Qa&_f zW#O`IMRH{VoM{hFqN!%_C-&>(dR(ZT3<oRKV|K>jzUDA4@of!Q&uC*D2GTP!P?f%m zh$;;O$_ryog}hsVL+_b5eO)UTUOX=d`1FBQt|$a*32=lj$OBQucH`=VGE#Wm{^Xu* zghrv`C^EUjjf)bT^5Q<-prn^Opc@u`soa!36cLOIK{HjJnUm%#ICD;EWwfz4qCM<_ zm~kv7Umm6!>L7eA%E#IA)OuX+APl1PRhD#^6Z_7K8>W8UK8;&8s%}0Ou!%gh(13ek zU8U2Yf6Srhv_(^wIuOf?=p>P5cloSBMZWn4+!e3umb^a~uD{SV(c8G3ZnfkEbB){I z)AkB_TJPoM;mA)LXu(=%&c0#zkPCZVZMrO2cSwy9CPS|^Bx;=@#bPoVPk6jVRK9Qr zf~4hm4AAj?z0g1cQCQEk=wv-W*%SkIJ-*#<&oh@A%D}AD+t&c+jAfRw4(tNY71b0I zEv6~xcO?OZ5Q--n=YG3=xC)vcRoBLaY(9eSQMb>J4w)?Fi97<4Y_Y1FcNJmSqCJGx zhlLiu)s(;te(dJ`rG7nKU3!zZ1EZB-v@t64^l@3w@&rt7Uf%SCzTbMvN&~-z;Jkm1 z#*|G!cOAV6DB$B1mZr2PK>_xqQ9K=fs6rZ1u=&5l^WMAUk7>}&)CYR`^!1x(^@~f8 zq(K!O4+m3|5FXjq!(N9uI(*hc+AU=!DXQz+=BlBJ5r0P2;<_`q4g=`$9P`Nvji4EA zr&~Q-G_U2*u(_wQvN8&P4w<YR>VN&hZNq9u`+Q+n%9Cw`kj9aiW3(MrL%|Iq+aaD1 zuuD93tjPH{#PiO-i909~ZhN3mLbx{;TOA*9-aV8@+-=*gd*=qGkp%u#R&FP)5*IXE z@h0Yc2OUUviWZBOSg&9w()yOYbf$3uR1w2LBqBV3g-b<OYg?(IaSPx;tie!pi+c!| z%SYDPq^4bb>%egFx!botN~$tPf0tFs!mF^(x3H1(JHo~iMl%@RFYXu2^`fNV!w+W= zzW6-*F%Wk*(!hSHCamleMAk^Hm}XN4kXlpH6l*Gio3gAOWnRcU3DZYAOjg}+RagJn z4xZ=EK=okW%R_r1E-2wN&d=$s6p;Z~q#hxOonRw<?a@;F0sxYznSr1;kR^f_*X0q% zgmjGOPrOMj{?W%%0rhlKyg?QwVBVuBVb|)+AgzK&_cO9a>Mf{z`xiviva+GszqA0T zJKTGMFh3A{JF^IfhS-tXQhl1MsL{D+dx-{DuCBa2Q+qO>Af&~3_n!NzMaHf3#ejm4 zLf$6;^FhI<Zd0tS*1c?>mE}>Zo&>swt)YJ$ufxA)#}J&4^g~%BNiAB!n-l2LpcoJf z|9yY*dkHrl4!sdT%WcnrBx?Wp)y<4kjBR%BSo;7<XVBRK*-rMvim3zCs*ESQeQ$qB zMcM06);AU7JIlqsv<eZc3+P9yHMdroO{E}E+z)SMT$9PpQ!`l!K*C?_Sdj&Lcr<ht zG2PbMayztLT{+0X!u0M;hqsk^U9zBd-epSkrv8xB9X5ipwsHq2SeSF`_-_-<XTHL6 zqeEaZ=?jRU#5ogP9;6LS--M;`$(~K=U5;pv)i38g@i5x0;LIVnlsjK2>s5ny+<zE! z$F9l1A`H1QgnjzZ&bhpaQ4dzwn0U=7ZUv!{c^DB|98iCD&&4NQZc&Wf)X)I*a+w3> z<pxW$^2RqVbU4D)J^~<%3`G-Q&vFc819I`g&7EnQa{v<{qFJ(d7FMJeWLv~0nEtl& zp&mEU)rvUc_i(Rk^nd_;b!m-H>i$D$ro^xX1<4QEs__QalZDIy&KVRRgQA4Sh3_5# z?JzsUf(tJZrtVdMhs^TsN71P&9~R}*n;}a1KDrJZ*L{D$0^U+wZ4?e^8<E@(n(>yl zdA*zotguZzmhjvo8Gl53+~uzP%u&eOlc9i1IZH%>#AypKoc`BrzRl+rz6~59l#b2- z<i@!yhP=+%XbyHHSe=BgnRZ=e*>6K&S0)ggI&PIC>OOJR5oE#KgRaT&noPT>2;KDh zmF?3tZ9q~~fy`{wmFXqsx_Pzyb15s&Kt(PbMlp(Zo55FJS`1`Y$1)Mr6S;GfJ#svz zJH}D@*9NvdsCpv1F9(1fZ@A)O*XHUDmK7J*u+Fr@r3Y!#48$}gk=1n6_iOdBLv$N( z+NWFAfF^!tK|SC)WmE##H@+B8`}`6g-<aIR+*Xc#LK+WP1f_K;<~nd6ZV(6D9YM}~ z>C?ezaRe&aeya^mjP{HLDJC-m^I7)-f*w{^<pJUr0|}$X#p=`O(<NxEdKQtbLMv>4 zh!9jTpDQahC{1Z<Gx<CdWkB$?1k?%<&BH7Vvc?2&l0jTJ(1x=kga+t_{`1`B)lc-K z<(*byCAg{yTq|Ov1*ExA+gf{NG!Nsn;Coz|QWdMK8}IO;NwM<jRRU80R`=VkT<0T~ zK~4fw9Vyd?w3?*M7gLjxj)A=R4aC3}-BqDUJLmi}RPG*JeTD-|*OGguw-eI#^CtWy zyivd5b1$j)d<(kg7r32sPZ-Twd1N1P<<d~Dz*dq~XzP&wiNf0snmHl^<Zrw9<+xzx z5xV#7njj)X{ozJnNX4`2)J^+;tiEL>(bZI^Q7(36Nf4k@e`BV6nL4{I4*>7h|48cF zcdDchdF5O^F4mL*ND1e^aa?U$eJrpm{_kV`_uE>x;lF3=Uv=gGt8b!sa<b=`VxQv5 z_Z|;c={iHriIeW``ePFXKb}0*(Tzw>^LbzbaMz`co%1vkng<6^k`CniM;G3chwzx> z^A7(z8(Gjs?rQBX{f7j{@`c@arZ4E~;#fQNR-%8m+5!a62JKQw+R%GOA1!TJK^;Q! zKYG4jWrA5-3nzHKH;rSr`QvRnB@J67+q)&a`h+Z+vj@fM`OZ7QqUuSTaIfG01l`rY zeH1`-Xg61H?!!)O=sDh>wex?DvE_Zzsz==lIPlH(@3t!+pZRh}9lIWXNr2w&AyxgM zXko4T!&hp2JPqcI|L0Jvdf6X5lJe4$(<OBqS1g|B=w3goi=RlZc5rVNx%Mt!7WXyS zApW!KbNv$=g~8VCMZ~99KR+P|g7`xhlf+vjLfNwcm$l9QZ}REC%Yj9Gh*+w>g2ZBb zXkkz6M@GSD1M8qoyDS+t^KLPy;d5;_{?Y{=7WeT{Yq;8vQmNh2X_RmOljA+ei~!Fu z7j4zC3cjTAD^Emj7=A`SwJYI<^O{#~NPXpp{?RKxZ8YvO{E91VBHeiX+1nvEY;@*w zlJmc|eNQM@-=Qmb7#zWRH68f=bszurP4u7xEQrTdd4m00mBKJB{`{{ncPz^K+c*dz z%oSgm+Vk-TtR&mdvjQO8c}#YVQU#<-bY74Bvxf(qilCDm98odsd{yw-kh1Jk46H~0 zeDCN2iat&pPb1pl;>SdK6hJJrp|61U@LIZ2XF2JCFeCeqvJN|`pM!@$-0zf9G593H zd%Ih*!^XP6Q$??&DZ-_sk}IWaxDES{P^)opOZ^9#eIF>&O0bOR>YF~CzP6Fk()pwp zgG-jAfC}RlLP#Ak28nI_>jhB%#;!y~Wc2-`8btM1I4-|n)4N&|OKj8o1B<g7FoiIM z2wrKidrbS2bJ2}!lch}jKAt1u5lL$u{69~j^ahnm@Z@snCc8JMleHgI+Tce^m*H2v zFq~~Ow4Dzruw){8up4mgkgh!Qel4!Vi25nY>wU~l{YS-uK<E-ff7^hgaNlUG!VBu^ zHoD7S>M9w7I~L{2=k9fB-DXTViSF{GF73y8zxqW%-D~|1e#L{$WI=JcnFn_W2lsXu zSQl=$e%%=@te>!*KxDn|o7EO6O=|?~dy<*D5VD=$Z1aD<$yyVoB)hq{_u$U~2-~(k zCw59#68~5;WfXWx4G$ynD<y&dkw3p_T|_tUA1vgi1B=POVDV`_@fy)#&D%NI$ef~6 z5&EaB?Z<s`8l)|Bg}u`_Ei4oQe6#-M&c^K7K%K8CE;0UtT(R3NqBrb&%`-z?W9;Z$ zeY-(*OHM@Rh~yp5C-9orqAj)v1XDka@IU)B`}qm1L8g;Y-)G>Wb<695X~)tFW8Jb~ z{4VoydJs05$lOlbzA$V>>-=uI0maOJkS74D_#@C13mRUmOXWZ8musGIC%Eh0G0h^Y zGgPNOJimvwFLdUFAFtbAZj*LndHp}R&LVCRW2tYQH<CjOr+(EYzfGCdF>#)jAUnK1 z0*Plv?(_mpS+M2fS-1*1-W|MN;-H7Yl|w5<@t5nbl#Ffz9M#(yBI{bfxsl>vJA}R4 z%n9h8eEw_(+An7wJ-vBc+Ml_`d3#ItwTDU2xWS&*1@j`^5E}`7<A;5<iCTN>bM3Ea z>*-;_#jl-L*GNdCy-vIDoui((O=QhznM(Bt1+j#Rgq*I{J^qa0rRy2pI_}rFdK~=V z2BHnYI5v$_f5`^uv0`?u9<*JnQBi4R1A7jj<M&=7ef@6FNw@!C%obaa`H9+M`^lJ> z>*oIin?L`ye=l@;d$)qC_e45oct02Yt{W-oMF%pU+rG*vHC%B|UI;B1m4xsxSQI~y z19P-|LzOk6K#31gj+d3_DL#k*ZKwI{IWOcpCAq^4gm3^5_~M)|asX~x?g{E|Cac!% zM!pzgco_Kf<^Qd9`)jn5zYn5JqvRH~Bci>=1s+nO%{wiZ`gL{nBjlEy@cOFx0q3Jf z^qMusCEMFA<Y-UWE9&efkUG0**lOX6rj)@vQq|Vq0OM#AD*cTKSGb3hsa^7>Y{wr; z_8Yep38yb8ThpGR(+|+mcn><Zm_njC=fxHGyqnJNUKq+h%Zt>v*?bgCLkq5CuQ4pn z-v}`**-))W9+tz93U6hVASA08Xa;Be0q;W$_>?d4fYA>R=gtCCn3F!j9YJ73Bv1?V zqzhHG#y6eT2*|D5Fr<a*qsy?<;$LpHZeMt)Hm6r1c*9UvcjP(ekHO7@`HYV)59l?+ z`mOLCtvc=Qdl1?Har&MK5K=EgrCHt!yA^<heq6CDI~=6l5lR3DQ-|SG7GL?_*qO(~ z{8@T58sBE__{vnF5@4H>oI>RD$uEf6toot|ygy&O{ISMY@7o@fwaYnH3r>5^TQKE< z0VoDEuk8C`u}r(Si20%=-vN#A_o=$#v~!eo8y*Ou6KY>dO1zP}D;@^me-?!ICe-_6 zBWyqap_~bKV{6;K@LM#e`-U?01BX+`O5dBc@(7;`ZYiha2+vxY+6u}(xxR4w+KHMO z_{IU;;#CEcIYRsjh=WTg&XsNsF0%;`L2woc35kH^i<FL8pnXQbq_;5z5AZ6dp@vU} z;H$20Hrkd)-c*B(ev#KlK?+$x5k$w+aP6d-j@R!tE4GP)88Ephqv){6;lpCW7qb(` zGXB;t-r~>9b4JE^PH$miV`n@|Tk`YsZ0$qyOyo0broBoI)SG{9FXZ9Z(v)*8E|+_q z623o1)1_N~&T+LjooGWmAGD9@1B!rDqhZHO4qfE@<p^NC2-vIT#Q4@tQ<|^ud7tRQ zQJDkI#m|u3y!9x;Sj=?z_~5`H)yNl7E{w%tk1GKT!09H6br<Y)Br^(U!u6Mc8ln!M zxx(qohL#P9_pi0SF@G%)F|#J%Ds5ze#_06balM+rGCZm-dky7?v1b~asz;KCRvcY~ zlfE|9wPPvnaNn;UN6m$yPgv1NWa9iCFCMsQ#s1m+w6S;*eG9#_#5&dOgb<fQy=kl6 zR#fRV#!dDvA;ZU{+xM{MECJg?0yvlH2H+~Ii3M>p|1eSW+hT`pH4ip?-yPtm_5#vK zK*5D)*1O%TD-dbiMKG3=wjJ1_RN_aC2MoCOg?rbUF3vtPQUsaH?z67_9&TFvs^d9{ zIQ|eCoRZRR96E^ZKJM=~Zout5cgC%LI%`b)Eo)n#0eeXZxORY2FG34+VfwOxYJ!h| z5pSQ9jWOGsodn~zR*wyUkX9cFM7s!BpB=2thM+MCgJ*Y=ONW<hT$nc&T<9g)A8M&a z`hzQYxh&o9)c8R9S02m+#Mr;lmwnZJIP)A1!wO}(#8J=s?{auw`TP9LDtH+G_4 zaDGB#yZ)S>`FP2?YKx+kxDxC(Ox|?C7Q(c3<{H-TAa!p0f_lLgDIX;(vC0*;@v*1! z2J4F23Z5yaBuDms=Fp|KidR3F0aS$KZbDCQRJ#d}n15e!!{ovO0GEq_-rcpkdB6pz zGJk6P#HBcdPtqR`^gsKP{#N>TIE9g8Hl2nMKqTFfs}L5@3z8rd9f3D_3IcP^b!ts{ z_N-)BqSPG+$Sav>`Q_ywldh*%qHbLQW0i_Ej_hAq1}b9E=}jVsKW2HFZrCB~1Jsl- z5N8N-eI2S~vpTe#Zf}CT7*A?agcE7ARNsg{=&W_g@bOD}TjPy>_;eco3Wz^{?YX** zgHGa`Yl`;1x&H%v>h0^C#0Jx@-JdpU_ObB~{0n$Oynq5ysBnb&vEfp<(P2YaA-V(f zu}W9pnBy61lf2eC6T>bYyyi**v2z5tbC&^{+^Lh%DtlL^Z^w#$7&3`P_J1T7v|548 z>P~Ss0M<KK;ngS}SdA<f&jE{pr7ajdX?GGg@l}AWQ>bfz<j)i1x7(kA*k@g|%`0H; ztM~{oy+`>5=B=AtTUfv42MHy8ebSUMAzZNVaO(GQ$=_WgtZ94Ik{u|;9H)YCaeRX( z@jpOKRR5{S4br(TL-}_IWEO)w>nWxyqTpGd44(C%?!9M=dZT@~M3W*5rXkO{6?2&C zS$|MxIHxx;E>slY;dcv$JVD!*2>6(T)f1qMdKFnalq~0`ZXu-IF?mxRVvVH7vPVB3 zN{GA+sI4nY41;4!5UzV00hA(V!C;F!#Rh)uj!NIQ{PiX%#V~D{+B*pDZSwt3W`-Io z(VAa|zs8q|{mklzKiU3v+rlo8dT=?F$NSSig;MMdn(}|1(3KfE;1;o6yKa}$(y*LH z@5FxJ84}Y+l>ppfSr@V9>0+UA<A4iVx#GvwM$mq1(YH9!Mc{aH>7DVzOGA!LhK8l2 z{c2C1$vF18Jw-f(`W&nw_z*u4reY@N*D>;T8l~W0gu*AFFg=T@U-H?^adV7>#}%3` zAqQ|mdi_%Dc*kbf1?1yJ^u#WV-CE$AZ@Bvl*{z!uSO4+;UJdwZ2-e0#?u&i@^Riiq zK;OV90oP4w@AOz5!0F!&gA*?XHWPioeG~;F-%Y$?z{<#06xq!Ck(rL3eHAWqLn{4I z(d|y`p>~aQ8V30<zQd^PedA*|1Eh6~lwi}|*s|A>C-Ld34L13#TZ<aa-k)IP>yfPd zf#e*BpfR$Z6ssrR@}jvi#c7P(juubxXQLIgf-a&1A%`O$pM*84EY=FHwhSDJ^&^IP z4zCbu1CIrh1q>{mr<y4FV91m1_en;vy40|pp7>kJ&MYX(O>j~m#Zg#y{@71t;yH0T zRI!ua^!V((J#P&wA?@@%ytVBRgNa}va1BUBkq$y&>@I*(GZ5v6L^yxUZX*a!@SL8c ztrS0MqkiMLDWAJ^De3f+*p3|>`SK$-_F%5wE!E2q284xJTZGz`V%UX0YTb*=A3QJ# zmP-4c))UYA%xlLLGg9dq45EOoWhQF^#V6O<dGO1JDN6H^+TrowXsFIap?YBA)qcwH zuaLKy%=yh064y=9j-TZ(-y52N=cx+L#J=)a1@9H)o#QIe>-hcK2VXqjV9+-Z;5aQ4 z%E~1E=eC&Dnd{Et^^IiCAFMBb(6%Vx?+yd1nvBrnk)7CmYIV3xj5x|(C(5q@#VLC* zg(KkBWRPj*OWJ2K^A*u+#j#%-NSs0RQbLALa|A3G5ePwd3S=_OV=#cX!9aabeN1jN zH%<m{9fjRkA+(@+7Ay-IaUe;svqo0`XSn;-ZO^3bW3_y4-}at^2e+(;WRRVZSTh4| zm=5HISpTm%SZkF~-mn=rm)++qSKk$j*X)^|1#qnY7}6t3JE!`nh2B-DY1sFpe)yg4 zw;e1Rgt7sr{;Im!0WNTqtf1_pgsRBv<$Lw%hmK68{u}E|hm{6`eiRn)2b*kg9}(&n zmWX1|++bopLE7DzinnU~>@?g`N6Im;<c!nbHm?Rqo=9Dy2PsAW$V&P}Fsx7GF#L7Z zu>SsL1+JerjB^l;tO6|CV~fHN2H#j?A&Eb%7`FaoFsyfNxx|RdG4AuLp(&8?P<au! z{&(j3>YQjplNBnwlQ~VJ9hgf=><?l)wmkQ3Dz^dV$-5Ke@#T{>9&(O->SAC#^yoVB zF_{DoeK_J}o131p`6%U9VAUu%+4J!1MeNYCV^`D-3=GO;ImnGMwNQs>K=mF{R=M2j z4@#1aK8{86Lx-V_VX(k(1^7zTs~O)ZCIU<CSookTWa-M3i;aMZGTq@NSlb2~H-u`} z%`<pqZ0+=*thM3Qc#D2YMzIS+%g|77u_kLv@0Xl$uZJ0tS&!Ah(`LO#wfMWU&@!d5 z?ka*v(FaW9$#6-CkrtTUxKn(bR*pxWea~U*jQm+L@zD(g4z~b30-3Qh4y?6->k9yO z>qwsH(S6i?QbQx8F5*SompIkUS=Z_hOhW1nL$t0z79d0$S3#h$MULtjn@_JWm_XG5 z75&*rMcHDYT~+h*MJEjyEgd!LPw`R1wt&J4LLd^MATy>YJXP=bR8+RgmoRL(t}oi5 zGM;nQc0U&_SVKt@#YczvG9kvK?K+pzQGaZi2dXv(U|HXWEbDtGuvxKzr{4U?QRGc- z{GsJMZ&4`hG_Hru?+drC!uc#13dcV}x-&)|gRlAkSaZ5n|0AnC8+mA~nBhFQtr$<1 zGV;I7w6yDq@n;i_l5=%oxC+kJ_G8b$<f3Z0cx4$uL7jb|6VPm*$C>Fsk?a*&x|g-2 z=c2e}7AWFt8yF03>bY4{Z@mNX`xaSX?j8=J2?4IxDe$Bc2-QCOS=BY@WD+wD8Soe| z-ekutfpQ5E<RhZ2ohf#T9Op-%#uLkZ>0&N8ao#wepF8pkzmJx2KB8^Cv&<A~PdS9( zT2Qp~F5->*ttI*BllqAf{Trg&W#ya(%;u*CuRucY2FSjIQoKbh5Q#~BA_9@AE{~o* zmBapFrK&ToH*2%J_@fVilddTa3P5+qvH=8Cc4g&UI)GV$PEyeCF*-jp!ee>Y#~knh zeIRYFk%!Oc;(m4<K;!GZ$BI{q41gD+9e_y(yP2oDfgr9h-TKA;O+4+KIH3ea3Ev9q zPOpR_%7$anmZgG=dki?HD;wf*YF@<vS{^UbUg2!K+cND>v8yZAKPx}2(_fKugfQ+0 z$=|gsNSZRl@};;d?zXpGTFmR^C4SwjwFRy?M43<?!5H30`y;5{_DRXx5&<=dmpgf# zHi9LZQhVEr$v3!Q^7G(((mTvAFu#wmWoWnSoXuap0z3W*zfyslNd~wjv0FEbjr{2l zSc3@1wU0>Nst~WxJPF>|D(8sDzj3k}31kj%27G6qn|um2$ecbAvc~oc`lm&C?={R; zMafBx+_+Ut7nPCO4`BPvILG+Tw4o-YkdrU-*ohvoC-$+HT@?&>)-U~(c<xGrJ99^} z$%;@eckY+YrzanT-ToSDW|hx>V4x^jxNG;dd|5G8kwI^Y#Dl!1S7DYQ@znCs!2g}t zfy2M0wqjz>K)j@@xxMUjqUHgn_|q$aTv@Y{8;@LW`r}1)c1Ua2iKWam<n(Y8qQtK~ z5PO(e1a|c>K~eTL&n^1spJS_|WSGICyRpWBViP<UeSfd2tk@aVVP+dx2y~kLT%`yI zuAA1q)?~=BbVIka$*2;F@DT4!$+7%XR!t;CSc@3(oaP@GQ61fUrk+m`)J(E~1@UV5 zxq?@I-CYP!NEJ;-N9U?s@X|4kRj6ycl*}j*e%GwrZws_9E%Pv%g{V}b2@G)55GDi~ z!Ex?KBKs(O_smQAzcs!H8)6A^VgVH70=s(Q%vbCG#ol{|HMOn%qAG$*1QDf3S6K>z zfJpD60xAlk0wPtAfb>qN5wX)0MS7Rs1f(~qkzPY5p_foY2tCOe6J2}n<=W?b`#I0K z-#zy}>!0<k#7t%~=a^%><NY;ABl9()koU1GN>e*rRj{Pa{8Q@{XyF-idBSubVGby( z>P`loGn^?^?SO>&PU6H{*n5aVIy~||*4=sx*gUX=?H60Uj8Sg&9;Yi$K7xig;nT6? zT{8pcc}r351wdJ{g*F~Lz1DuzDHg|gFbPJpkdsSv@-fFk#ow1lvyMPwUW1fbO!B@J zptYF_-`OyI*qeEAtmEsmZ&2(#+PT2IvnC37u$>o40oua3!9=6nwmzCFK6kZPw`rC{ zGw#@g%aF{GQ?j0`TvLXzt}Ti8T2A<5%X>A710W+tvi*K>HlVz1$y=7Dlmf^6+QDDo z%SOgKnAh7*_ZjYM8j1Cd)8(eCUnQR1`jk4l2r8WA-7gPqsk<UO);=*K41+-Vt43*$ zGK(u3pGDT#bVfR=DG;4pQCs&hFRO$ulht~IGErtJEOtOOaeEm~P>BMYYaN8=V)VBw znLoCF0jMm2m<CW^#ds*G{#x&S*=uYm16!zn2oB>i50swZPl<ecbP7~`vuz|h{n92C zm670e<Jx!(BtU|a>Os(2cv@zrlZ28t-_wjZETD~XZw#RyfPEU31loOGAV&vuDr}6X zv|n5X7AW?%h{EuzAUSsY;04I2E;^Bt@^?tz(hZWg%vL4<byEZo%oGPZ9)pRHLV$V= zknqLt6v32HGy>Gi*d5d~Acsqs+Ns2=j)bl(l(Qb}vMNi*7y>>ro!QDwk-S;WH|g5> z3)?x1ARAl+tP|^M9)RU|pzkw_y_jz%l`q7UopF9kT7KUQg)QO5npc5$Ui7kqghj{o z`~%CtZm;cvIO}k5EUfS_ol&$?*NryerIPKQg|Y~*2TGWfaCeXgKiTs8(AOvTQmjjv zk1$=Z3$!Pzh-6tbXd>QFqb=fYkxJ<x5hApvbkc~h9=z8nCI?t>Xe((OFG!u>7(<0} z^1p&g$0z`mPuk(C)h>np>E0xDuh<wNeGpZD*f0pTFIe6BZR=<jjHsXY_)Q<p2wj0b z8Iv}nx>K`3kil#Po-lARb2IpA{@%5cY0aw42T^hEE1-<}5H<K);A}}Xe+K>IBoD4F zTfI=zT(fN=5qD;Wp{ROLM7QCvmZ_~(At2|7*rB6vR}<r}+Y<_rk0H4(U=yq2sz6db zuF86@=7^AJ0Gq^mTQ}VU0)=Ujo?SI%a%N_WzB5Tc&U#QZg{(xR$0FnZ56H$1nTlWA z$${J)!Hqh*6><I9KDo+D1%ef@n!rzk2Sg$Qtmq|xY#pWJK%_Vv9+<OOSxRLa3m-p> z2P!}r!yF?k_)7-L2hj2>rk*3XMwbAWA(h1$t%4=*I22S5t)VCHckZXwZHti`V&h$n zWdIU@Tj$5VJ-RP>pD=5XHnL>NJW?7YyLz1mj?JFG=PN<Fm{r)Q$f==3p<Al_f}04k zp)8;QyUg(73m|?@XIUza-EF;)7;ebut?98F6Ct3TKfT?&GFBS^^E=Gkx|Z%Ej<|mB zG$u9NLiB0U(+t?V+Z(s|Ji#8Y-Q6(pa&C6JVFJKob%Gha*AcG{d?5{(-H)vSn*;aM zDhpek_C%V=D9|2gy50-*LP2lk*wIgiTwo7!S;{rxdV!Ek>Xy;BJNXCZ<atxG>@uln z#g1Wx#s+Lvz@B2`8*px};{9{15x@&(vo3+?r1#zCFLdx*`!`#{MQ(!}FUM?eCs~j* zSuP~cUcLylYEnR?au4eUOe79?i9`fwiA-$!ZNGxd4s1Vod!}=3lqwOq5Wu@<L^B_# zG1<IgtCkfP8>duKfz-SXs`FJ6vGvPohz|aWK(-};e2`ZFjMU~H_Xqyc?Y{hE4>vu1 z4I)tjLy1GM?iZ#%#h=zpDu_*Sy;s?Sp~tL;pB0hH65fpifvO2<6RAM;EQn-cQ;t)1 z1ZwC_2_3_1RVc6?GR-L$CoBwzn7*r1kTHY1Xf0pE)POaTf|GT(^Fj%!`WR;H36Qdn zS{G-fU(I2Xg;X~v%1?~@G<Qa-e_y=+U32VF(KX5&hiFb3tqs=RQpzth|D@O2fNg_k zEJt2^^vpE^mJVf(MQQW6vlR*QI%TlvBvxMau_4Q$zJ*g&cQLkpmN9Mm_|2-qEXrQF z>6BI}o;Xyy7!+|@ylEbYwKud+Jm?(_hwWc)U(MKmX#{giiL8)trx4cNDn79or|28S zVweb4)B<47_Bb)z1up>litZe#R|;(2SX2$KHSNXKkAZgBg<s?9FYHJBh^u!Lz^d3G zj-^ZVLwoT)uww<PR^llwg^Nd-iC=n&KDn@ZIUr?#>N=oY@)F>~9??JqSEbS^+mh}5 zy!A4@GXZn;^P;0e&{X~&^IsBh?n~K#@u03O-Ic3_AhiA}7C-XqzMH{d56tiV!z5y? z&k3L)c3Etdg!Y#i{LO$nF;U|@?H<!6a9?8u2NaBA3goSJ?y9>Kry~{%D&H!64qtYi z)%1$+LJ34fYvzC5_Pg>SLg!i%sF2lO_f}!5GB2i4T^UYzm+>qGH0ze^sadwo1UuKk z>>-QKrZRG{*9^Na;$ND-oxTL6@PUo3hTonD2GWG&XOeG7_-4C4wS5Gbv&z28)W4V2 zEBJmXJTD4-A-H&=B3n<hTc9qal(a}EKE(nHxsh{{8`n3|#g%+*p$s%N&C8mKnux<i z8atPOcAc!gEi?KFSbUD~nn$R1w&b{1GVWUsg`kHjiyD!JZCAc>X~0aj{cvTpAQwEn zUI0&Q1;({g1wTXU0iH-zn4$~9DAZmq{^@c8^4r=u&W*)O;RmubSV`|P(AQ6psx5n@ z#;nIi7eR6{<JLK*ijrBdO?6V!j(xiQIH9TT&53|*o%?IPv#YDC-yT7$Q^Zss?M$hR zm`64`HF2N4j!t-4c>5Ws^c$nJHH}{Z)Ri+{eAL5M&x$CiX6An_0L_i|s&+vTegiaQ zJ@iM>FzTw8zIk)m<DD8spNAOxIkScIXC>_JQe^QCrwk~8el)YWk2HyqH7h4r9pn@S zVwY2NnJzpqViGb~$YyQ*h~@fxXM}Vr>q;8bCUq?jB)qy&d%D>U-YX+){OD)91s$_e z0@Sk(aap95OxL>+FYL^<bGV0rVl^t!*^8Q{Y^p`1-Kpm5l6z&WduyV>z)3+M0J(IC z-R`M~-K4}iSJC6f<7O`n$RM~rGK-f1D-=QbK(WoP^Fju-?mP=*D-bpC62(NROHlEB z$XeIL1K2nG*<_C&!SxllHS)_qyFu@_L$)G&!S&gV0;HLn@xuUlDl5Ay?`&;zc?h<m zh1miW{zI_+y`lV{^))met%JdkDZ+H3{C0`H)t^l?kDra>qOV%1If53OS4ksrQF+K* zIkIhEKt{GhA+Gr4j*dq<+O^d~Ky#T=j#CNwLv~Lv1qMvCH*LtbK)J*?OM3;fH;E&E zPlL~sc|Bzxe?PX2!7aJS`>8^c?<qL{%NXJ-=1{6E>tkTzrLAcT{T0~iFxunP=^cbH zcw8Dcd%3e&?(M!By9eT)dh%lf^JbVQe4#?P^zUL{=A-Y7QoaymRMXEjRvL{I8?pe% z8O4xQ*5rwD&Hnaixw?i8F6SN%pHtZ|T#r?ZO(PF`hR#EVgD!pwr_!v)j37HAw%>@Q zGfG~3kGBD+JTjEDFLUWblP{h8Eaj<07@VNiWO7=zIh}l;_SqBIJ<71!{K%KY-I=NU z%+cxhDx7oC2_D(ub`0gMDc9Vdo0ZclP>gMhozeobc<WvoN$@D+doA-v>Cmvqtp|PC zGiY$DfUGX&=2jV&GesRS0;bS(-S*E12Ioj5P{ArtTd9DKqz0eWpUDZq+;Lnetbme@ zhQiZrnLI{<-0ULIB#T*m>}2y>6`-XrcOEMC+;W(?eThV(a*eGif?5<Hy#CUU4xZn_ zG%~5=pzVYMkNIDu887zuDTyHE8yKu)1bR|@nX4%ZhcyS3j*D=XGz~=wtju$mKT(X{ z0N6<W)<C;A3`iG>qAZEP7t6SEXJnZwFjmf^aIP=M&?qu1#HqR>bsJbL?KH62o}@f5 z;?Q-2M@l5EbUs|ZHot3|B3ODE*a?cWKCo9!)=?WV8CGwd9_RAM0?1ctI?SX6IDWT4 zp0%~NfQv%Qmq)ebgi<KG9+=!F|IDu6{+V5`@27Ba8#ExK@|l`XVT?h<b?DBg?24pg z<*0%=LKt<VSp>bu%4qd_G7(H<OLInl<~F=z-%oHZwl%m*es<;Sz)kD6H|hDO0m&4~ zu7?!(keiL`hbNfI3cNC(Er^*q`-97`F|xf0#H-exOOyhCan3uoH-f(c!6$7!90lg3 z>Em&<uWTKqkO-8s9L7*vzL}bjv`i-Dlq{9bM|Cr-l!Mf4$LuR(9YD{0)~*~|hE2CV zJ^rmtIvb2+B2s}gR#BJ}XgD90ebFAMUdz*g&9FJ}eOb<;10LHDzJPX5ez9Ve1E$}v zPr6$m8MWs7cK<y96KG;^Z7BbINZXUY6pPdH6@l!cU84dhTaT5QcP4zx%(1E1>o77t z*smS3l36vFTsW-@%D#F&YA+$66VY)YrvMmB?Nq60^QUCspqvQ|zruZ-LG|9i)looS z4h%3szsuTb#QA*Tvm!{!-A$E<l1DrpSobd?&4*SQ(5EXv(z9iUPmIT1ms83<{8i%e zPH#VP=uY*$A{utdj;*51GEP!YPzzz5u_$$U>fP0&_S*RE3r;KRz->*KdQiDS<EEDe ziIggA(r~f@1lD^(kSnlg#}I>*{6G@XxOm5JzxHvd_xR1qiF=ru_8(1y-$b!s#W>iT zsKpSIrKd5qP?}9P)p+%JWEyZ{4(azHGSg-s#H_=0Wq=9$BS^=0**W6P{YUkBZ=d;( z8I6&55ajmV?Y^qEskQQ;MjrTlj;yTAB5)tS4cHkKR~e|HK+nC%yN+HZ?Co1>TRDqI zjlpLjp$a-1<bpSW+FKsFfsiHXF*VvlwglE|lqW`l+pS8sZ6_Vu<z`|mcKh}M>qm~e z*cJ5=_5$m*w6v(w2f=<cz~E5YDqti;LjDCiK=AS{DpqFscg(XZQPfOjO6^HC9oB<i z?IkGX2@51b4uViP0L;bBaGD*(z}yw>+5@ZBS`m+3&IV>5Lq|u1<S2j^{cTy}mK7>J zL~8MC_kp3`&{V%Bb{#(-hfsk`k=oca_4X0VJb;0Zt9C^@7$Q=(CmbY1ZPCL~z>fF4 z*MlXJRV)zLrW>jdZ@W9T09Y}2mD`pue+wWpmH>r})tjk2lyixRn(xQsrD&@^=gCq% z)KwCyclb{z6Cj$E?7@UnJ9!)c;E23qzm&75*6(^5v8c7E*}n$FUUX1geI;1We5~iR z7&>GiUx+f>vPE$`Fs~5$(%O5|+P4UD=-C37J_-hTo$!7KyOb{$f{J~>ULg!<$eJ?F zr5o6$*ea4+i@|2XOV|JKAzQ`=ghR)PKB#YR==p&_{%hy0IvW-c2Rql3_91^SuHFWC zum;V6E^S!^4#d?1PcgQNwob!Bs{vz>bSgtWXS)S>ETX_QZM9d7!f%J~dVz+ub2AVD zTLc2vbyu;889*7al6IOs2IA^}f^x1gu-mBosO;xvRE6MSd-W#2pc*4Cm2FTVZF)Hi z5Ek60HG#LuWYuFcoef2V0x_QsF(ZQ!2Bd}cK;U_#@#S9#dJwSwa1;~+V%x&`RRBsF zf-+d!*jyNHYQ|OrLf3*q-P+=i#0;0}A+_D*n?Uxz6!eymmcYfBvFNTEpu3icp*+G= zoS|%c!=g7cyr}I8?q`!#c0*1}02pFq3@MuYTCSzK?v-n-dxjXh*w+z+LU~v`?JFp) ze*e{$@0`9zo+Zp|fUe1rmUrnwBw(-l*ajG4fAzUpWKT_L0Ji$T^GwRLiNQ=c@SCzK zf5BlehQ&4S6a&X&AEqs{FjQOvs69gngQh8?c?Z&L8pSO$+B!#r5aPPgY(S&%d=vO@ z7o((OOIlLdV(c{)wJ9@3j52GG)Kc5cV3mnFmVwZP>rlv3H-a?g>SQ2~Zv$EN&K#@@ zkj2s61N}A}V>&KiBl`q+Ks|9HfuIJ7iKBmH)!!ffXI8!4J6GUjC=QfzPJ`(^E+ei* z{U91$^BvSv)J?*(R2KO}S27kTZQKxH*ii-6N@C6LV%%C~WkGlL`-=5u2`wETh!s<y zzwqb8$wnr~nGXLcT8|N;6D7)rlzzMdWz_?HbOhx78&L*e9T|llP0TA;jk6zY2bEd% zar`I5EE(%VWh+)aL{&v8`U~}OpU<-&Okq2S{W77W0`Ju==z?vE^9}2M@5ss^0iCn7 z&rR16B0KOw0cDfNEiko>-1bp#T}m@bgn1J}!Sm3w0J>MC+r6JGPn6TP-;#mwu)bqz zF|q@hx<zeIQm6!+ZV4*6kaU!t0;!xB3TZ-};&nNg8QW;u)xh@4=bE*n-(dXurYf)_ z2&nl+N-+8gV<Ci|P?zoe3X&A78g+ZEgsIgm>{L!$OTgKV_F#4H^rH+Jvb`2^kq7d_ zAzvtu<QgB<XaII}d~H_;$>&Wi;!Ar`^)>^5g%t%w)sG!#ybPWr)P{MoaqEKxq3|o+ zz@IY25yNmWJ2jOzZPa>`WHAksn>RHz_2!(3!J<n|K@HJnrL-gsoXGx?JVnSU-yHWl zPhJlU?ySluB#xv?e7VLEYoiNF31DE%*dz2YEw!qaXz!Rj(a#LP1_=M2@Q5`TxdeQC zD&<6v{zAmsKfhN(hz9O$ZF=b$D+}lY1E@!|oE8ej`aN`fjr=)edLgamc}&(mEUm=w zvEL~8cvJ1hKuhuNl_G9s|BFz2<{mb;AYS~3Pc!en*-s+vvfa?MtnYj!o-|;Zc;ySa zI-at%cN-vb$p>{Hgh(3n77t!$ymY?<59X;`IEM_sZM9bS47&_@qEZfXPv(~hoMyEa zr5a@92xucG$dA<CY2^=;=8u%hfG5!!_y-}1Gtg#1oN_H7q}fzdHJj>V<>vU2#AAfu zv#RALyMSJvdiT(r=L>!aTyn}uPfzzZpqTpvz_4)0&QRYO_5^atxR;#^fU&@z@$}Dg zG)~V!x$6|>8mA3kJQ4HD2HDf6B0X-qd)L-$t!TNppQ~w4w_>=}>jn8-IAWZHK$$cv zmed1$P8MCj?hQ?N5^p_JI1Q|poaG4{DmnWIWMYqSg#92n;?}dGyYaukQ=61)6px5I z23~?=30%+T11^EERGQ^<6!0qWXp@>bxczDPCecTSKr#C&Nkd72T`TtK+ii3Y-El#{ zQnW`yf%LCb-P}qbpQX;A!1ML|KbAL~{2|&w2eAKXY7hPM^9}T{c0Z;`5J(R?PxG&- zzo!GHHbzZPbmW%1<-;bWp{UyuNvjvwfLZZWOEPOrTDKesq+c2-W8;{iqb}VUX$P=M z>l$F+=ogS!j*3jLQc{yjd>N>pdxIt6a8&Z;1qe2_u6;%4YJi!s{+<`-bL@o*{(MBp zwfL)`!(>}vJJl2d1MYB3kE9TMvKjN{fMhT!6_F)5)N)>fXB$Y0O4F^EE^GAQ#;gGj ztjYrA(eF~%uefQ<D@14D{_p~TXbFx1q@UUJ;?PaPWa&JM1y0D{<l2&MCjp;bv8rus z1`O~kO7ton{htj1F7M+}_`mad@;m@pGU0t^A%nNW3F*r`BSVp%DU7WN+lFgbjrCK! zqcZ358!s4IUvzXZ{CLRj!3W;?frw|lkCJ~Oo_Fo-damxZ58!?81wAvgW_~&p(6W@G zHZn3F<kp0na^L&1KE$0!b_K3%)2q!wLFgw>EP<~lt=cW%)V$*Yvgv`3k;h&(J)m)} z7eelw=kx2_Wx6k9>X-GlfZi_e^T;goLdF*#V%@Rlmphz*Gh1AB2*6UsO||rwCp(_O zoacZa`T*d{T=jUC5z(sUV}jTx3BP6svgv_+jQGW3$b!wxB^;!Vj#krKYWUpT_~JQ~ zz=9BSyxns-qGm!vWUv%7<-G)eXk{`Y!AFWQ64<b&guf=-0%up%cvp-dlhkB(kr+@g zqW7}tZ)?|_Ub)q-S^7sdy}({J{mbUhH$Ieydx^>9!XALG97hl09z#s4mJ^+t<k-PP zqtdE>%U|4gAnDYP;eB3~p4N^QFnsn!=ltRqayf4Qo>xjS&E7I&_^PG|!gzp@=NUHL z&fLhf**i-M^PQw2^{fjIHBI@nt%x7S%HK2kLMrQ-Yu<`J;*i(yo>dR<EL_HKHvnQn zUlfA0<raM}(ifnxSojNyk@47E)JXDxme_oH(?3cpZG%|qFM>LGb>_XAl=ihs`5k<l zWdJ6YdZa|YPy$?j3%i|^ocV{-OS@lqFwSanfE#JnRy_v7fx^HBt-TyH&kXj74O5{! zzMp<2DL&@4v<>=jt-$|=en7lp{Z5X;{jy7pavo4W56`22@<DYslsf_F&FAlFw$UK* zGwne%6@0^KESiiAnwvU4j*OI_z!sM^RXctF?8$0|T-G{OWH8I%p}ceN-o$ecXG~Ws zP3Gl{n8W&^u<XOkh!rhlD(&1`8XmQ%*~PYXJ-0(InQF!$D<^8$JRxlEZMNYfgBO{J zZ);{9c=`EN2RM!%0El7u`<%5~Qk_NdfQwrx#`G)v2BN25{(xKyA1#}9ddq-hg$id; z_FtAIpND%)d`*fgJfI5o`M7DZ=i=b>hl>N_<R&N#!+^biH}D;lds3w?;sn)gu!a6y zw-@x?T4A+;0Be=HuOsxzys#UjUo`Rdr=N<iNm+eM%{V=@?*+eR5h?Yn)j(JHi1-jq zQFx_FesB}0>MPt$;|DWJ*+9QzuIHOP<!!O6IoVZi_-W-w$ibem?YW0P!s$Vt{bh<P z{O+`gHTk82`az`UX7^~L@7n$&oW3uq@2c_(>-j8t;eUkF0}hTy`|E%zws66qQR{OY z>wji)g4XBd_@Ab!Ya{&cmqC-^j6`trpIc~v^sfTV+*01A4Yh!zH+jA>8bJ5ZoSl`e z?lUCW>JT}1hJm4HA<kX1T-O`;NJVz5$+U*+7gW|dEV-7(0z*^hp=RLvP<Iss1IaE? zWc_-EeLl87zQ<HrdI*@+9_HE~|8;kyv<Hh*9e~<r^*Sn3t9<$9njvX=xrFxBvn)ba z0O8j7@bI?K^bUqx$pZ2Mik_g$-PBI@4c+-h+4?lS%5hJ?puN9!Fq7rOUzB~|TIl`6 zbDQ-A@>~F(o5!Z?`0Id5P23Z)h}TO+LnTaCYAxWrYIi4km6VwS=M&v^ai+#AQO}Bg zY66tbsEE*CK6Ug!M0lB!ACtW~we??q`~HLMKjw6|REx8Kn5bnH^{WEsa_3$R>vI{b zooAfubWW*N4?#|V05WU{_bWX8^m5BV0L|L~`Oxuvt<Jv?P>)^D1B7&7H+{o97;Co( z=%G)MX@BZ`gS`_&{GMDa6k4Evo<vtF3rtG0%N!6R;`_Nhr4n%1vU-*KE5jcAJ8$Zb zb5K?|C*gskl<JIu!`WX?GI<7K35G5=yU<h*SzTEWa@pT{Nf%5B`pRJE*aEt5Gg-{; ziq-=la3;R$)AH4QK4%y}E9V8^fAiOT>VEud<Kq~w>5r?Yx^*KBX$gjKQ1Sggv*p08 zrTH;A%R-ZL8imj9L9qW~!vn3xjO%d~?x&X%0HMwY-~#8c5hV})dWxezPT@BZgUk*A zURkcH=Er^=p9IJns7d)M)PVsJs;kVWJR_@E%uc;y*ng$yMoG8cUu;k6&;M9f?Byu{ z#|BhQ-bc)Tf$R1ip#0&OJN8pWR&XK}D9G3(Y(%#`u0stvusePX-TJ1crf>gdXc_;k z%&cr3%h{Ay#L*kCdVie-jP~Tq0bt{>r}pl-Z3K2e%BP`-yAw58Y*6I86Nr2V_9y*^ zhs2+BeV+Zdk?(Fl+EnM3w{jgo$2IHX-M@4=l(?a5)S&c3|MlzG_-B#&w}l6EEB`j7 z_+y0pUu{Zpto(1+8en;;_qUl2r0dy}!u<c;dPp?gdxl63Bkv+V%nu-ni&_pGm^%pE z(LOx-GYSQovwu?9{#kzT&-os#(0c|@e;BVEwEciPh9UqXs9w!?f6-9z3hs3hvZFu+ z_Fwx)6avV-NX!!wxY23o14AfleM+fc%NHMD?+q#0n|`j|zxH_lv9boA25UC=$?_3w zUq0r`V_t_4=i`8c%OkJ$YkqCq?4I(n7;O3fGjYGaS;Mv_FqTle`Qndx?~iJr?%^KC z;|OH(_+J_}fHJQU4$Cw=Tdh0)`TnnR*UOndN})UdFMO>hG2xJa{CnK~^Bx)L<n{q^ zU?TF->&75(Ap9?MV*jg9`n`Jse8}oVM1ERg(0deGrvpD4*WI}#YqsNs*H*+INkldO zqC>l0zE|*u{YPdniYwx4Ei^2$9W<O_(%sgx7tO>PAwL)m^@Bsdjuu}1y#e}hPeXn5 zFXiN)2NU?>v*9IE$(ZMbj}0oYSj$UXcM^ce=F@DzRNk+D`8rfU@wIAC7KD#l8|bm` zX)W(08~_O9B_KhD0R@CI8FT%-ypM7KYdE9@&C9#g4cZ>#W&8db$NG~(K3_IBHKpI$ zuPV4&c<YC~K(}sR%^#Bbp{3$^n|nY#p2cGdG}L#OMEm}%ygBvsThU%yH|$?*QR?~P zzAS<-aCnGmp7vJv61g26{%u4<YXiZT8dn^DfY0K}Gvj`}W5*;4f9K;n!+XarV?nTB zd}*eAT1!#yEp5hKO8x^DX|K;d%2H*#rg8f9?;07W?&Mm~r)I4yRFy2dqA_w(j-e8^ z-)r!fmj=9NqQcGETD+E9O4>C~ECFN1KG89k%Wq3tE{FSEqA;auqWQ?eD{==G_pfh+ zjnmwkaSYtCn#hW<GO1nIbt}`xyI``?m+xz8dO31irU$eFwS_<iQ<Q@{CcedZV}I{~ z)0X8Z3ZW5(h$cG>#H2#)C2_>A0rT*MBZrv=&7u-UbEDd89=(Ev**kMKZ(TU*V*Zjv zdj`BYZuIw?|Ir0;xO$U6H|_LezKwmalRVpkg1KnC6UZRnc*Kpoul$~8k|SDpr9XaF z`?>ptnf$Q+covvmG}1xd&zA!jDWlxLo09*XZz^xJ6F4QYD-YVtNdMJ&iTml`mkHkv z$zSyK&*DyIk8VHk_gML#Jty`P47*K{`(qqeN<8@5rTR;E^d_t^Zwm+%5iddwdRyu< zTVd;2kNKzGFT*A9Ju2$5q^n+eS`Dbz!g-92JM4W%(DS-v*ZI_CF=2sK2iKGw`Epp& zKcGloIEhE->k%1V1^HUzr;cywdaT<*cSn%1Zmi<3Mx(|loFnn3q~_fW&b)a#=S!I{ zze&{}!ivwR5<|A{$$i|OCndCfas1xS1NV%Z<rbJRlp^0hF}2G-V^}VJimvSCAAfRQ zy@Zs?+52)n2=lJ%b{ZfRc`we`<+#mg!-)JrTHD>~R{ZTPEA{#V+Awd9d-Yr{Rs|fj z7kw92gM7<7%vA(;s$d2PK&Z*SITPmXAj`(?YX0(lHal4izv;@MzQ*p#yM4VGXXp`B zh2B^rNz7IxvXcuYHZyQq%ZF&%JbwJEOd!HV&lw#$VMrng_K~YMK#Da@WTN6aeCft? zxi9RbU4rj8o!|TVhC>mLK7Y_poaEBu_MJ`%|F%+7e$}^xv3WOi`<^gOdd?%U9;Oe% zo0nUAke{~s2`SHb2}LgY<Q=uuGq>hxHXV<8EpdXst?C(TQNCzd%5h1=Hv%>kV*je{ zos=%U>%k%v=W#aMR~4N>c~|R>>Az>RRBjX-Ia%mcIuXd4Gs)$dXxifz#h2ZJ2q!bT zamQGUjA>(YdJNO5mgqF1c=-K3;d7!8(1pe{l~&UD>1HcTZRe+FD|9<wwHRh~@tj0f zATBQKvcfiYYrpW<8m#72%#azi^)$Q|Ee$gSfwmS42v;^uW`L)HqE}(p;Be|tY)yY< z*^Sel7?nZe0@wXEN*jp)sCOC-Sn_ZrBQ|Tfv{IrRZhEjTgBT?gP+GsU!GK012@9e{ zp5z8g06%7}7{O`uFxe`yZ*sTW-d`(}NCt827%Y$pwjJ%fiOK>u@~*4H<rU2mGLSNQ z7l1&=&wa7`BW1Ia!CQmxgAt3w9kY*D1dvrA)r7EBq=#rC?ENPN{2!65LDJG;33DKp z*cu|Vly8TG5k)TQw@Wb)<h$WRqRmT%84q`N%tYQ(iH#iKO54)H@MYiwjt3Q6QU?SS z4Y<s=UiMYEo+t6@H9e^vL2|^4yx%UlfD@T#w3K~`WWb0SFKFOp1pVSYt<<$`=0q^F z%)*;Ke(Sv8p%6JXbMq4Zt#;kVt!45tjv1b&787M|Er)P2X(LurC5d#CxaD?yp1Wzl z?UkUhoDFj_xL*o6A2MIw=f+8^$w{?(CK}d#ubPbYjP=K#FpXXQu9Df#-~akO+P;(1 zbo{ZXv7F%Mf7`3EGMnp4naGe><+`{DuQP**!v_xw)jX~W<Ce3xZyc8r98A0w<*%HH zq~sFrlKJ0#wFIc=IR?15+WQOx+hP@}N@o-NA~cf|g&Wq3jkuNFkxCvP-+btNO(-7a zR^A5WuaZHh?%O`1Ymn5tEVz&X2YTh|zX`9WZgGUxZ-RhkBo>HAtnMv=lv5N4@9l58 zxaw7NBIXVeM8I9s^a5P`Y$!WbD-dUT@{?g07*&?KB)C6m5ktxvv`2CjM7HLx5L*Ma zDQ+2@=?&sv`QwUT2FOmEOC)#i#IvB2a~#Zz8t2rM|HD^I27S+H#rrQ?VO~E7I&#tY zv#Z`$m2gRx0Psrw?^pk=S0W0($xvzmi<_51-Y=Y%?}W=(_QFu~uQ-R>g5J6fs3Qiy z=Zg<zqAZ;UlbXFB>X)wsYe~G;z%LG$hWFV%<9qoM8B#vl)18r|>LK1}xgCddX&lek zUPpW+vQ8O`VBd<}E4gU8r82NYb8l6Md{HElr!Qn{+4lNI2}`IDK^xnSK`5uiI*>x} z>du#JMjjVvLbJ1o4MzyH41R?E6X-F*yR6XM{tdfA+R2Y4W^U<TQE-!OQom^0N7h*9 zu63HD8d3PZDx{E~_#|()R#ug?N=jj6aUtHLh|{{qAqqlsBe7ue^&W%|O%;{)#cI9w z8lK?nE7}r8ub;Pk6ot11=HsZ-uh_dXkETi1PAg1b(VEE8DmHZzLpMQU7VnaVApmJt z+DBV>uf7e;CvRpgA!8TWU#KBTX2|c6iHEF_PLo^=h_F_?WzsAJmxig{6FCsFJx@Nq z+wn$qpFH`ElxCxfiS!Jjg3z0>1V||<TL})PlR;8cjc3VgTx3N&hxK0ha4s3YeZtb} zo!*Z{3|yP}_Cfr{Ox(QJ*N}Nc2`O}*yrxH<DAAk@k)TMzxwMo7WOO$$nxn!pgi#Is zEf_~^fO0_P5j82V76C)AF;TQ&Mf^s$>)>7Vo%$Uv%`R>g`C95klnp_Bx5d3)cjJRP z;3oNcj*m#JvWR1iX&S+5E`-k+<RwUK#h;0BY`NW6a(qTT5BY9btkl?DZHDoXj^}g` z+P=$_8^2*4RBj9(ZZSN$@nKl(5@I8ueEj1sv4C~vT3&nPWVXh1l^$7>4HtD~T^gGn zGAlGd{M|JmJM1iCnSH};A%eeE0ADX###QR?QvZ7la;}C?5bjX?f6Gg0UWv~=n~D=z zJ7u<$jNHbZN|_Vi7w^MqHL4I7LCm7KivRg?<k^?=uUVYCkngvUQFY)KoI5%0LF2@- z`1XcuQ1=T>y_HEjg}=Ncg!$R(4qpDO>xrBUMHhMYWLmT}<VQ%;e{(FULdM?o-Uau= zch$CJ>JthG-w%K2vdk_?b_eN?=s}P%0>~}aVxT0!D$=>%Neq%2Fq{*6S8pc07WhGs zEu37ug@Utbm!rJrW_n%)WbZa(Dd}PDG5TI}s)p%60i1L07PD4EaZV+jFRQIdOMj1) zxtQjn$(k7=sgHzN_TIP}($!)pz0R{r{p|LSoBhN*Qp~9$#B0R4&-yXaqU?Q&4B|tJ zLEd7Jl$Y+Lw0XVm73fz--}Ek2!CgYE1vWciK%`|zgsm9+{1E3B4V!cDh`K}H_d<*p zcaEgJZlYS=&W$D34b-mma<3tR_|@BU=}eB>1-#)B*<RjsCdkS_!bl`y3%c})P=R1^ zK7(tZ+~ylh6z_`p&aa$Sbr;cdS4$z!ZRBaI`Sfz-du{)_h$K>KQl|G~eChtk&KBrY zC!u;nLsf_PecG8qJTbg#N7+F5CXo5WwyTIEm5MB2PiNQ@1utGQ=kMEQw5{0x>5b$n z$MQ>#n@`fC^(AHm)3h@=QlvKOCKP&@5!Me0pBjd;8EuINnty*RJ@C12^cnX6g0G7! z>hO$xRH!u{_cRYxZoGz&)ZjP&tEwc@MEkICQAcVhyR}h6{N6KeP)xcb)59c+J*&bN zW^WGtj`YyGh!0$sMY*DM@63tnxm22QkTr!xn|4FDHn8!9as7HOoIAz$g+*_I{RDpS zfAS7fY!-Yztc5N*^$RPwWOXi6olOXfE5TkcV*Q9Bcf&zdEAt-JK=F$c9l?mT39cF0 zwyFs0cHQzX;iUQ^0T%elX)D>Xh<uHa=R4n9Bb0|Vu(l6KK8I!e2XK8-jPowQ5GNB7 z*JFXCArn&4U_p>ZTA(yGb-lb~GFUaeuVTr$l{$mYYxZgeo%f0_iVeN;GBEQ4_Ci%= zivR;%Xf#q@P?Lss8qxo@D5iT$(G9cRTcpLc(~nFC0VM+{iAr36ym?E|`~Ev?u{*;v z=@fLb$8uR+>xYUX(#H`XvMPHW$PvV0%=w+lY?_f)c{lQpua>*v`G_7XzFfnUTsIV! zNFrPo#+;^+ntm3aLGom4Mrh?)63WkTcl_o~b(n?sR=z-81a&}bC!nqt@pEt+UwyNf zhwn!wy^U8SPN+i{$z>?o6+Q5MR5__T1kvM3uf3YHiPK)R`ch40Z=n+0yqmMR8zkDv z5qF7fO44NIcPB3M=EP&6@ds`ZJ_oA76%hFyJI^c*fMk=I+#prPt9!#Zhr{B?Ki)BM z&Z@HCNEy{`qxsk{Bs?u9j&4BNlwDC$K;9N>=yFHBC@@9ovf37m3or||YLvro%rGMb zFPzjM&Ogjm#*LqXeJVS`@AcA5W>~0O$wONf`NmAQY(*#g){Om|@Wr5sI$y@vv3$L7 zH4=?64EODF_02ZuUsYr^z)SX-2RIh_=8!pAo5oo3*tp}tcD);dcntYf;q>nr1-E!E z_)4`-pP*sLoTQ1JYI3SOaTdnZZXfvLPqs~b+MU{+Pv^-wf$O=+EDsKVPKwI^&rfRD zM$UF$m8MtEavIBj*zCj^8m1#BqbB?FYfZMFf-%wkFHWDazT0OJEd6QwT(S46B&W85 zH+u$rx7ujqWHv=82f~;-QD_N}Jf89}Jy`3=-mH`}imzjT{^mg=OXXy&UUc`&g-HIQ zjIs4yHYUy52<r@VT9;!%kl~J%Tvg|yh}n_@@~q6cNhW<3Bx0=Q1!{Mz!um{~5EzA6 z`ydZJZW724vDK37;p?8nfB=y6Wv^wAZ*1F<nB8ReI&RKR?6;fmTb~r>glE$}5UFb! zm)iSf2J2S!Lkh$>_2`U><05`3vJt*2@~iKSBjX#IpgKbY;h(sf-K<qkY|^gmdUaac z3fuFxNEGefg4le8Fpo&av4y1jXwudLTR+2@UHFCRo6_xc=aw?o!qv9ZZ1O$n<TppL zw&Zo&3_yv!V=R-W7oP2$$}%99M|?uFexMhJJJ|{M8)|A(=j^<oo$MzcjDpKpJ>FTC z2P1>o>vwf$l1b*tl*#2P(x&H|nXvR~ul{}fdQoO`c_nR5HJ4t8*HchX@=Mj4m0aS$ zU3(K=?-*rLZ?*~k7QXl_`K>-;La$-s?lj^nUZE|ronN+q4}8`!dhRvP&6W!>6YTu* z(4o;tfvx7PK23E4p7FF0K~F8q@V1HLA{l1LH-~<HVwVM6H6Nd6AyLp64umH_7qKmO zT*UJef4AFka8(pppD^isCg$N>jak8`IaxvBe0P^9_?I7_XpB{Cxxjgn7u;`Xl>d5q z{UQ8LC6hO*_41Q)4wI!I$%RpiURY!SXRTHlin<6tv-EJM#lq_nY%VVeRqrRrR(c>i z$GuD(Jfn=ZCBI!V)6+YoFN@p1GowH*$-%k6@{C)*z~4@toEZ=||5~yj3-1)H7-F9& zN7~D}Bc+4n@QqeW^W`S_4+5Rh#L_j+cHuS;c4VS!Cca-Jwq?4qO-9^r>cPxNj_NY* z@5BC|z9f3fpt|#Ho`H{zaV*={H7CD+g!84If%lnw2yD=ub0VJ_|7><GvboKdd9kak z^*_5;+w2}&jc&DBO-&J&BUOId6xkA(z+i=jnnQeLczyU<4Mcg%IVw52?>-7fkZS>o zg+d4a4MQ@)P_q~A+^NK@DdahJ1lblF?Pt9j@n%aT(j>|?bJM&Ggy%&v-sNCsvrP;# z$yG#!r8C;HJj`0p%x}A*C#c|kKr-lRFC0o_Gq&-X+<DF;8?WPY(!>h;(V)29b6Vt{ zMfuq!NTZb_y;MBG`ri6wu&)W|W7^ZRSuf=$3}q&d0k&e1I~pI;XRw28RIoyL4n>=B z#pU9(S~~%W*~DaNb-rt7U8ccp^-3aG)2cm=_RX=5if=fhz1V}$xosxxo|htbq?h|I zd@_l4trDz2?kw6OhV(@GfFcEmWOPthIaiO-b*>73YHlk!D%PFEOvTpYJU(F;WhE%H z>>VCMtfdMNmQ#bV)wc`lgJ-~#nX|$q8YwuK<O;6ChGd}1@`IUNGx_jVuV_~*rsmwX zGQ&{xgj9oD&;)!f(3#U?`oq9*pBoaE%RXPe<2)x9^Y>x@$tAHo#)O%xIo3YMo6CVP z93x60DY!PjReESmv{f5k*umYdNZ~9<Ip<lXZy;;qk7DHlO<A!j<=wbwHi_O;{;8u) zC8hm&U|OWd@?_&H7rQJ+xjCcZoKZJY4w?BXx6n@sVqW_>gc|m!RPn0FI@Bq#3}0j= zCJaw;*=sDV`fblLPrX(NEavrPQ%*GeShmY8*re~R!9`49$9<<~HnpoYUjv6D>Xb^F zg|Ofg+?-P52{bk*1H8fELB+hTTS{Kw6Ls7wdLOH46FY^P^hxy0Q-W2gLEajH@X6PH zmx>>WZiB-W#=%*c3E&g-LG1P#R1*HmRp4-NT-k1d{I-(R_<L~j(U+azD+!YSKk=o} z?}DS-2>_#TjoQ4`_cWL}h>fVcH7>Z--*!u_E13`T$$tD6O30?}{=_Ymt#f0JrVXh2 zFWQ!7NjQLQXNDA8YkHw)&t&Lq4%s=!%^A0-no(aQIA_}uZQc`t;h%2FAo38$<;!GI zZtRn;AOTJjSfQ9l!hlnCh*otgmHpSZ^FV(*a%c+x7NO#k)X%w&YA7rGyt3?hTIHsu zhMp!90`3~S9VNR}<ejQk;?*psg$b~Bx+T4APKzQZilg}qt*~nix|lXA!UHkgosOn) z-v($~fYr=#M>*g-rzW;uym1KS+SVxCf^yuGP~nFHAjj!Jzy(FNskao5XizbqFIGhI zZa=<c|3!(#>oXVxua|>yegMOPuWdRv&c5nQYY0y_9FDmV7{fK&e1s;8CR;PUPv2Gl zeltqfzx%+ei_qv<`Z0QtLgHv;y^px7T&8P(kHJ4ZIDJY4KVxP+JH;fA3n0l4afCZ? zDOb;JDkMw((rAZ@&NhTzq2zZKx_5(Fi?9FNhc@d1F}<xSZ{4zVykUmjd)aQ7{q{tb z`lg5r+GO}-hL{0=Kd1d{b%k{lygz>}MIj4->)Q@PatQPis(i#XvZrq|NkP9i(@Lf+ zFtO7tXDS=^kQMG_Q}*TdsMx|;adi4`UWQ}wgK{`|UOnW~?f?<uhuacy+zk^(zQ?(T z&TY&$(JA9ZjoBCOtX@fa^(vuO<?H0KfXam9B%WIi-}B-<2b<G7HF4!|@+ERQWe%GK zMTNN(c_(L4UZv$;6!$a(b(>f7mUf#0_SwUg?K_L+b%PH6a0?pg>ob*;P6|b#yI_Av zmqcnJRL!%-Z-1lW`1~P21N1qG>II|DSFPii^+$3PEPm^zy(?Cf3A|3dhURz9p^;7L zh$%>5m`>h`C8zZ~SEU%L2r=CG?tQg$gl$JX`+<aIHz{Loy}y}xE%}~ll4|2Yf~MuG zR<c{4P-Yu>tZMf6`TD%RL>Kw;CzSzs^LH=L9=d-M&Rg2>Xx#J;5!s+C7U0Gmjy#P7 zU{|N;JZX|g;YozGx-6~^3&hc0j`D$#7~IA>$t<AAy*M$1KfjuEb-=}X1IX>PD^^2t z^x78Xmfh3|K6IXOon^5UNqw((Fev!E{iw;k6s>zBKxQ~tZ2UYR18G4p&gxH7^ww|g zx$Fs?A+>?Dch`Y7tF&#d-!kSqohCa@o<X}-*yfPB_llA6L{_0r0GhR~N1VK1rjXI2 zmytXHoMQHGe6pB=ER8P|otgWxd+-$VeRnvowCA;fSh&A=;3px;pl;qpO1Aswz`Kr? zc$o&U2syPXJlI8zw#di(Qme}Do?((>*iGFs$(~h_9nWdm-HyCQ=j9a%JkK{OL%sq; zb@fU?JHH26qTk5ZVYgOn5gkPiv()TW7&=fPffbtO+X4Bc*YFc2)@7uR6J*5Hwr+M+ z>-n~leFA-$5b}n4)ch*x9vWeM`{M?tk>x>Wm4Z{%jSV(Y<aRJTYCh7YG_4ev^$u;+ zHMV?+4Jr}L69}YN@K|540MpN+ABXVdi>9M=O3=vh9|9M&j~@9N$psCiiAmS0?;n`4 zE`4vnb)E>DJ%T1|XjY1%1KlP=EmO0I`RDpiDC}0FD|X%}aEkaFw~ko%HTvDqZ&9hl z%X#UFT2#uXh~4_xqE~yYX0sR=JF3r9WY<3&%4q9m_fnwY_n=g&T=y>XoK5&qSrOf2 zKlr4^EHBP;NVz&Fn7M@)cat=Q`Rb`Qu6HKrO7rf9%>$YU^`d}FhKVgQVH)EhyGbNX zp(&!-YHfM!37p;)&KCfD)gw#h+!q>W(XoD9`dWqaMc{GuleC2=-ewE;3e|y+j890d zG+TuWj=xulPprdRvr#JCG`N^p$G@dYOf!&Nj+-?WI309Fm6+AP6U3U~B+I$-^pGgI z&eG053WhY1p2nEG?jur&q2I<zjSEfx*6flW&B^?4zPwh-ZeJfiiqo~ev7)u_bmXRE zHJi;qkw)tJ;%>bkmTK6~63)><BHh6+eu`|d!CucT|Kz3iy%zehI2>GOB8yf2)l?rb z55TdN?p+^Z?$6D1D6{Bz?_T<GHgo@t3`3$t38O6vo-s{&w4;7uReoNl-GWvAeZ0l- z3Q)lFi)D;)r^mDVx2%`6du2-lCoiA-kZrv)DBHy^!Tt4bNB1jDeGo&ZzX^dSur82= zym5Zm@ODp_GuZ7*xEripT-a(y$d6waZT2yNT@3}F)ajoIlDuP$0q%+=dfh8Gc%tuD zjM3Vf8!f2|YS6B8?Op0oaCv<L>2X>x(uG4q(F2#FS03V+*hq<YJg<o@EpBn~R241* z0la0AMqlwOVC#8T!uLUqo>Qk%DqAV&HWMBRkLRCTP;jP0$=j8G9T(WCsSLP+)9KzY z+-a)x&%+q4oZqS1jwScV-ABILW^T`AP{4jmVJAE6YKrK{xmo+)6-w-lv4d_bkEP?s zEk3-$HjV$KSg2o?mH@}RNJtz^Jv*tvD{o-3X<B%T8TUQ0Lt}iaFyI;2Ss^gIvTU{r zBC^N_x*@1$;pom8#oHy@<qB5CLHJb<&=)k2!)gRspt;Z9bG_q~z}i`r!m;}{DD|bW z$j|%3i+k=YzisTRymOIE!{w#?M((%n5EJVTbq}!MGz}Jl-^3L8D6|*zdR@~NP!OC~ zQ9K5{PO2BQ@|6tiuyd%cqz?)dOpCt8^d`3xAzWn)J0<wGQb?~(Qb)<lZohNXf+(6= zA>Z5XWz|jsH;k!yLRvjaQQqiUW60c1QlrF$*c3%s{DWyk-utYKw$im0+r8fJd&QaK z1y=;#SkSD_op#Sz3gXn?d;g7M!L_X4R4Qoj@1w^^8Y<<%RXY`RGeKKjvPUCCrgeIV zor&D&xCcgWl>EV2R_J>V39FJEh#LAd>1QpJB(bJpK?^h+LDJySoZ6mnzVtffB^8S1 zq(;yS&gj$zaNr9Hg%%Z;mpdvP{OE=T-LbE?SvNgw=8yw0<3@GvhTlJ}<>Htwc;9}y zP03{}bCgEjsKb{Lb&}yorrqePt?zAi<Wz37*I9CIXsn(<rS;+NxWie2=qXxM)NNRS z*y+S}ok{z3srf8#T?x!!EQ_Ofj6PDnT!^W%PLBm2D+cvZz@)oQe^c<WhEsP1SwEo2 zzJBP@Rzc|kFyx<%97YN~_!1|*yFxNiZIO>#%vc+ETV%M^q}_!lA6AE7$-gOp`x=1- zMub8A+W@aS&{8-btSXo`-4=c1b3Dk_h7kt)DhtO(cvdCdh^jM^7xlLv1r!1L5Kt@T z?rnAZM9b%rBemSaQWiU_B!{`!q%{H*cMfPtu58j+lrt*V5<MbraNv?7FeWnUF&cOb zSpU3+=5o)dFDMStz<PFljc;pvi;c!Q_v$PrTj$m@p+MYm|94@sMAcU7^jMBRa1(Pb z7;zaAle9j<y}jx3jJ|bk_O%2r(*t9Ak9Tw@J)aX4Z>`QZADm54?>S*6ji-C7xw=s~ z++cqmkBRhA6su(yHmk)V?qu$v8(gRZCU;t&o+lK+%E`3SpQd(&W)M<jp5=ObYc{90 zr|0{s9EkY&8GY9gO|P*dhUQG-apFC2Hp?5aDqASdU1EiH<x=8{<4gh%e|HvvwS;K^ z=}yiVF7_f}?)6;mLA%)RC(Pc_g`GSiC#=#K6m)N+&&52>armM)pZvYn5bNgqc(YtB zGyNy!(c_&`yB)si1NksQ`Mg4<SJGgAm`tipp><bue_%h{V;sk2;dmj9%~M^T;D6o* zhn-gj$ZEOiV`kxj4zqHnsNy?WgVnwwfK~!9l_MwQ-zJXb!2?<(#=rfx?A>PK*DvVy z&bARlRy@@fKmD*&(NS^%PO~b2H=K@*z(0&j{-f1SaP9E;t&cjJTZ40QzK?z84OC!l z-`hizXIX0s67&$~*pBZ$lr~>FBiQx`z{=jl0DiQE=}ilfNM!azjj(+gzHV*a_=EX) zJ)sm4hgj`X|5CPmiZe15nJC|{JRnBZs6WI>%sW~0aktr!++MLXj`iyk=vn(ZF&iCZ z9$}NTQWDj)D^zLy#Cc)r2==n`MSU#`X|o9(RA(7y{E8RuRpY%z^_FgRg^H~$`9@Z# zd7A{bItp`#8u^0_bG0>zPtHCRGv40pjwSVE!ez`6FI;zkosD6%W1AFba!{YMVn*JV zU_s?ri5b(-%n9I)eQ4jZ9!{%26XyZ~S7wLQ#!6Xj^LO?9dY;39?LpPZQDC|3c*_~6 zX(dV(EA!})Zc?SO`2H2PB%GG~s9ZbLcE*AZO<Bug2VbT1QcSnoez}H=ZtrrCZvu)e z`g?`DT<G2k>u-7KzCJH)Ln<C$jI-W|YRkFq?MZ~^bA`9suZ*tv?Zmyx2P*EumexDq z_7=c4D_{3rH5OaQfvVYp6ZVPIt_oA^zc(i<S|MF<HD%x{yar*U<BO*-A@3Dz)Eg1Y zoS?cU&X_>co-|Lffr~y~uU+anCXV%h>Mk$cDj}-v1mKvFm${|`Cjh1#MUGO@v4%%~ z^R2bLL+cX&T$(+JQLZrnSC%4cs`y&Gei)BVkp13g+2&?Uldh2Elp)l({ave^LxK#_ zy0yLLbukvT*id`%LGwgq7+1b^{kgayWUIRIhNFA~*Ezb?kbp&(80)7;-|mMUBlNeG zsfQYbF}5zd^*Vu?OAYs1Lx_2hC$enldTqoLU8B}DvAJHJjv7^=3_%0<jU!LkY%Oo= z=@e0BjrmJZd0u$>hZg`Ed!XhpwygezlJvr?9+Nta2CFR@a16x9U}~9g{%ZT+k-o*1 z1lAa#CQk05N<mro!W#~gN!`3#q2yz6ZjUOX0;LT{R|s(MnLRA==zV@x1G=eQ(5r9Q zdUFZ?qB08cVHsgBD5}D0V5<R>kMHE1dhI6#N?tD0am7TrCIDrHPArSflv}89W5HLT zeG~Zh(5sxu@2V+dTM2rrp<5|7&~qhZz?INKI3QQREw$S9B(t@TOAKuRU|!;y$jq_( zh4$-QnY*uj0=Hf~s}|IeH5_JC5E)k3H&I#Fyy`sGIWdnLRTAs3yijRX_kE$0OV-`< ztcrnjK*4EfgOVO;Gtc;hpi$@=p1zK@@Fp~6O%oOkhx_a|5V))ptwjz|-xH_NDOTk= zGF9GD<54;0-br#G+93nj%-^yS>49g2Xf+n(;gMc;I=f9RU@1v&{75yRu{vM<uFZoB zL}yt#1Ka(Q^ip7dl)+pvt29?mJ-hQ}_m8q`ND?Z$k{E4scl7F$)w1BK6Im1a4Z2xO zAEq{li2hnmEh2>O6hUz@77?~@0;-E{NQb^T6tK?g+stZ<*eJsg>ObYYocU1xxG~rQ z-zvd86qo~SS5b~J_$cK-cxa>0DbKIX4Z}W;(G&S5b?J3=cCu1$_-}pn5VXtogBw5I zN<e^>1AQFns6^&HLC3nN5m+2{&xLmV?6yicyu;j8hj!DxURMkaNEcHX^v;5QW?cQS zA{E5SEG~rIZBA7A4f8~k&``{4?i5zru@UXviubWm!rG07(+a)Mo5$0JGSMc)rz%09 z%+T~8o(I#WLX2PfVOj-DV#^i{_$4ZOEiC_X@?ZpEb4MF_p7Y3@sPXOM7Tj|%G?*RT ztsaRcw3)76QK|QZ%JO>myVj|KCv8I8OtD8<7X|12nzRkvlJ0v=fV>Br$p?N<Wn-NL z{j}Rdmogv)d_eOA=SJ~*<*k=ynEvUL>heYjh>vnq@|-zGg5;MR*C=^zdO8WJB8?*7 zMY{}?t}V&%DMaTgx0aMn+?-fs2)twUNgog&v;e22B7lL-_K;W$U+?gUi#29aU4GHu zVy?^7Iy1RCG_sOVZ`*+_$?9fpsB6%*u8hqb_p-BpD{B1v{F%&TU7{a9`WX*1gWShm zVZ(D16ofF&LuI@tQ-{9z!M0X>V3n)g$CN2R2b0+|el~vTP_o}R1trhGgptbf&b0VK zLf~ne&*4Hly5RXy=WvVmzk794$?BtAHhf_vp(hbed$A+NWmVHX;4Zm>PRV!rkwdS0 zRC`)`;>5ShBj?b>Z%&;pp%aVt?93)5x660Hp(2>zs&aC@^r|#V(#z*uPH6htiMOs5 za9V6G_!1ZItlin5=vKn{Jo~U<|0Qw5%aP4R19?oMt0j~Opfg-bV7Z!d+Ueah;!T{| zvMz89tVTK2Npp3XExronH1g`kA+atco{VIq&xc9pNy&=|neYr0b3q=v*bLn1y|Vvf z<66I_c2g&MRnL)cQ+{Qj7%(q7T-JT=OGRDS<fZFn0f7N7yWgBNHcrqTHTXzm&e=~j z*sWH1GiPk)uz1&v9L`tz!AN^{a0L^%!UQ9>@~T!l-+7`5M>6n;`x0o29;{bkxZxg< z>ewCDn!_)&eJ-ZrI)XH=RH1i!o1CHDGg2<?9$Kr*P}$LYvHE(BFluZ0A<pH@?nAF# z@HB!6+nJ2nYID^BEd$w=muS%DLkX5G+!Zh=FGgjsY;>s#S(^%b-y%vLxJ%*G_qNDr z1pud-_fq;^cs4vSW;DPdb|<*BK@QRT{y^aSlkW~#y+f|(JO%x)&M`*cZZPCjZ}tC1 z@LSW#|H5i3HXH<31Bnz%*lId&JKw1(FnqHhQl@C-Bwlj#njBNVdFTS3-RqqRRLG0~ zmSm*ehO#%t24}@wZa%DX@y??jc=O64)xX@f66b&3wty`i+^3W3-m4!nqFn~hznmSi z`Jyi>?fb!?oNB21H^PyVyzZ$xK6441m#c5AOZIo}4Bt#?(0#c>pYxBw$c0xadklub z-Hj7L90pFe!w}XywKD<4e?6#_wk*};HQSTvX3x-F%eJj$WM`1BELy`w0oOmKly(Tm zY7{58IGM4=3OZB7Ll&R?)U<8~QSda*f44V^v+?sbDm9;0t!P%EV6pOl!HM;zXEXJT z>p$zkzA#H1cKGKH`VYq8oCmp+*>j8X^fX7)+ah)!`x(QHOC*9JnQ>!U`+1M&y!}Iy z)_2TUaUAr>!76(qk@kB2Q{W|Y?)T0V)wY${IQ_~lm0KSVZNW&{0B`so?7e4H6KmT) zy7zV~j~f9Mr9-x&qS6Emy@&|dD2j9er7Bf=Cn_6|E?sH_l#&1e6c7kRN<exIp#~xJ z9zuWw63!i;xBO3CXRY&oJYQIg$;@OJu9^EPzf%4b`6c)>SdPxtOw41E<VL-h6EEsq zqVAko$=o-USp#}}O@u$VIXV2LPgMkI1kFEP7SwodU!mNV(Kh5)zY~s}h>qF4&^VCG ziF<lS!Sd(#<=k|m(t!`pIePgt>2Kk-vr%wI#&h>~qFGuU(}AZEwO7g0NT-#zo;m)x zM$)_!<^Ez6{K2uu<WEv7Xoc!-*dE20+<JJ!A+cDg$eFn`Q&7eyLs#3J!f1IuMW{!! z$uv>C+Dg0A{h(n3<D~||BzKk<-%qT8TS8}n`a@Fap#UrUbRx`S9{rsB!yO><6wdXb z^BgP(LVIkTTL7qTo~A+9cgW*=BssPk#&>K{`mkJHNN@BJU7)^lThhF`WK5{k57}n! zVNWfOl-AqIJGCqKxTYmZyK;*ZT~E8`&-SW2d(pRk{{y$FESvQ^5s84=JeJIk(Qs@n zY7sNDYlo{y6E706l)>>^jc&GvKexPmLl2bFKR<YOv|G4GJ;Y_j+Cz2FvHF;Qec4=` zzOEI=rsBBR0;UIjj(@klzx9+f7na9)JOX9wx5o5#@g~N~8NrVBVAD5k?xS+ylLsrt zm~qY(W2(yhHN9e?osTS4?rs1P`3o0sJ4X3w4UTa2^kXn3lV-Il-}aVp|K-O-QnViR zxP=&402LJ-n?(SUuvA%)iZ5njI~O3aIqvoR?KI7R-7azm1GHcertU__0mdvh=EcV5 z@?;j&$%y<htW9dYr6AMw{*Q13X~a`ePw4m0_+uBL2DJO-W(k_ef5F|`cnyQ@daYOC zjV4^{U6kTmN%UtJ+XEoui2*c{rzEZ*XLPJi_L}yHUsqI3qhKfM0tVQ1)G_C&0a200 z>(O!Nsi@k83?ITd2LLcbRZn_!ozQvu$6fm$R#c!^Ixf@)vd@}G@tCzS*)Ox=)TXGj zR<gKe8_0o4@kB1Xd=en$_<4`++6@QKh?afJ8<P!Q)?mZM2Mp(D@a0I^XnnSKgi-=j zsdkmKzEHwn@OfjgW#~<{>HRjji~ysSZyV;KIV*d`dclsA7zgEitk1mLA2`X;%kAhN z&pIS|)vQP(q-RaFr@*|M2q|{v%cm*$C~iB=uLAAO`mqxY&Y*sENxE5^9I>t?q9{l` zuWe(v4wDSbnKni@NN%XL&o>4fb}=MjQ`Wk7@VjJqus8)ajb;F*NH2`AmplB=i&{p? zBD_LKi>@@X+F|2okt?~W<}`f}A6FbAcz5r^?EBcj>%%9LGfuD9F_uC~8@mrdyD69Y zl(M9)RtKPo4SdS(ALmlL|1PtA#f-kKlvA5NLFGy*IyUFjX12n(v3Qr!idq5pO6ohG zw0b{ky~}$6_Z%g%XZ?X9oT^#hZYt=vk=AClo7q`S$5uk7Z~E7i#%;x9?|rzRg&S$l zd^Yyub64sJaw_M|=;QXse>#4^nLI|lP=al^;>1*1i}g&{8YJp=DpzL1(r#8_ZXyY~ z%3JCffOI}EYSYAAdCcdQCf0~>BYOkwWZToIrsKzXEz(NPJMFCdj5!R;8IaQ82X{xd z(3PPq{PXInl~|sA8&1ljZ9SnqdEX3?g?Qo{cClmy?=k<e%k7|?=~napgJO0Kyiqi8 zec5H6;r?WW&~~F<41;$m<H15ERU_3mE#A2zoYa10C0~?_x}}}!1~y!V9ZjF^hIk6E z<U2{EyB#LXPs|IOGba_6GF!vpMe${3d4&Jim)U3Y@A+=PpQl>q7#Yw4F>SO^txTbr zd#>ooecF-PD)H;8n3uPgu6wld#_ZMgBj=(5G$<28j-Dk4MLj6{Aq-};2)peRnpH&~ zWc{zN89OxM5y2dg7Aoc^cTYdGV`P3%D>3fR{uZGp?3R>QmML54DmVNAyd7MP8s<M# zci5G!#$~)YtL-&RL@o3)GkFP(_Fv;YCQ;#4)KQ0CNM*oKCSjPyB-!AAuh7UiwtPLH z{|#!#?Bx?=deF~fkRkv#yjna+s>3&w(ON}RAGrWbUhuB^0ct_7R5g&`zeu5e+v<-{ z{Tk3^PI%k^hEQe0`^bXlkVeqq`{~n%Dwt=Y3|-4!lo@*FWn65yW-Qto0uoHu_yhr> z)ZBhY0sPKR?F3L9%ZPZqe=DpfLy>8dmQHglKt>wM$BUTuWCO3P2_)vA9+Na0_f1f` z^>A=`CY`S~xYwG!!*MNm`hXyk<}(Qx8anx3&y6o&Xh@8si()vzPc(G)#SPdG$BVFz z2bP1Qegl0bOnuMTrHNxG`zhe8Q(LU27P7BVCCDr$kjy3$juXD$swGH%(7|Y5SYm$j zdE{AE?GO@QBDc8Nli;0vNU21lpY`#LoR_uuLI5qpO&|75f2CZsIzi30CTI0_ZAg6= z4PUs__J?Tjj<<7n?!p2nk&v}4C>9+@+mVC7n1QP+X=Ns+Aq{G)%1;DE3mTO_3OEZZ zybqoj_6r0KpwO3}jfv}DawsJg+Z+@2V^y(cDW*p^zsAxEn^d9AtzGg5lH4j2{iHz# z(h@pqMQZHp1u=iY$|5OP$=1O<GFB|p=8M3_u}vwgOr3QC2h5i0P5rSjK~$D~1hJ_2 zVZ0sh%Q(nVLMb@tb{*>V-YUi{QxDR3DH)!Yy8s*u)3{;9jA8ejTlA;bHevJhzE$-g zJoH!={?xxu@y&=BFE%X!8M9_1#_J4g8;fnv{CmTF2IHWQX;p>X3|dsm$XJl+GBS5D z1Zcf!rv-gQC_&mme>r_qos5!1S^A9Gy_K^8-d`!IN%b7)-&)sl15qJjl(7{+s&hKk zyb|3;n=FzHT<xl0j^<2VDm$+9G@Kb=QQdmu@^FfOAo#@0IRh*95$--pe8PO14y*ps zgYQQq$kC(a5L`IF>uAsgzumR5^|$AmXErCq8aSShIxGsG;4PVxP##_G-t>=D6Z9HY zeW)GhZo>qH+Q-<NvCj?C=1g97E@z*~2p<ceMA$Fcr%YWPg4g$eVUkYC^9pvgosW(_ z4H==~+mc9#K3nJ1Z}|7zZs_?xnhUi3Kd6pFjq6B-tVOP`d*=LpE4ij1PnvIeWzoi} zt#SvWE=|&W!06ym%!rqFTk1U2V>I<W-Jfjr=fBhy{|HbK;ErJ#QQrBAkv`=hISjRR z)ceZh*qK-jvv_l@FNL+p77>c1W)-no-8}7{cL?)Ka(5-DA`TzBK|{v7ESc=Ky{Xj8 z4o`}a#KS%4i<7)NAuZ6<I*+KHRo41d>5#fr@D{qcf8|@ot6&VD4ZT@bSQ`|?KIn-o z769TzRA}4S2Oqtrw#BVY@DlIvT0L^k<C9`ntZAtir?Dl@w|_&;t8Hu>Ah0!4Pc}nT zrYT2`iMXdyh3<r#dIRi6)t;#OZ?su&RwsS&rPCujtOtA6on;pe8{uk|BEu-XV&i%h zP>AsR+x5Vlb6k={x`A7#Y4OV^8VA>{p#0L7^c7=cIJMh>Z(#9u)TlD8nY*#v|L!dV zeko~$p(EwX>wv3GS@vX9psz@_*W)4mOl*f2kbv{7de-zdD#g2LsVTBdG^UJ-KgK~n zL<_yWkwaf|Ft$3P;U`=ShgLu<?o2lueO?kacJrW({)#t3U6k+_(K8Y1jUc5G)q?~@ zpwNSFJA;Hgj^-B<X=0|2mw*2t^tkvQE+Vc2-?&><;Ep3Riyah!HWDyz&o7eo>b5uV zT#}u*7m}WCK&ta`oT!?WB7zQxtM`10v20%Xk-i*(CX0OY-Z0>}HAEO?qu{$SX^$Jf zGTIuQAwW4DGc%EY-gOVS!8We{j@PVGF%vXoYity67LIPS`D7UB9iyzK@O7ODdll`O zk=Ix(&ImU>Lm+dCEJRDoGyg+Th4w~lcsukB(~usF<HIUVvFE%TfFPNvg-@p(6z_)e zR7N{25gPasy^k!ZpkKIJAVK*~rmdpfJYI)guQu9ZW<BP|whf=+7;5w(wJNlc*0wqk zkx`uz9XvwK4;c2F6NZ>Bk2gP?2(Gsq(l9QSFH1=#o;JdB(TD!(YCYXcyo%ZOV01FR z7OIpMf5Ap`8`q62{a(ruJn*bA+sBbFYv9Y#58a9iRA*n*Oj(y7_W1<Sha)j!zCCCD z5`<??oqDc)eLu>Y{B+bJjntfS*nr6n3Q0GBYuDs+A73R$PkHl7K4q@D!|(C2c=NBJ zoY)0Q*srb3h9=mmQ;g}r5N8i>=;e(b9yV{(#c-D~S*iKqXxC0^4J{jn0gB{ECbD>4 z0cn*yu=s51nDr8O7|)nOAC>)tDSW*bc<by&_tON5B;Po-(!S$ea#-s(ES5t4QrHQb z114^t=*PWZ<<Yvo0+B|!p4K{T0PsH=?GeW?M-T9sPg_~Dl;eg|aD5v|*_j_GN#m7} zx6?z-C(h@b@lFi(W5+v$Jj?H)Yt2VsL0**&fljZ4n_r8q$>0I4P=C@&HAeKSN{MpU z8#Ta=5aMwgDe1{bagjs1Ni3(P+JFAcDfh>dZZqiKtY#XUMbj>mE-`1osH!0OEVCKQ zar3NyS_o5g^if3L2}~C34VA%WnnGCFw)FAdq-MughrtKRy2mp7cnf?FZdm%nCc^e1 z8Jt7YLJqc9J=s!1c&rvM!|;_)%)3T*(nR~*wZHRpxIUOivi=tl#8MOydG$e|)Wgl) z=jb(1)q-rNwCGBnSa#cuhKUGLr4uN?D2r8j8Sg5+_*!;cA#Gh{fZi~VgMdzVMwBQX znxsaWZNHDW8Y)=e8`!pLLdIHv!NdW}{5}dzMAgQ&ClN0qD)PvfX$3bVYr)AUJ!7`y zm7?rGWOJgng0yNEj6jJ7lHD(?KTkvkjt9D_pe)sWbDDRs3cH}*=XW(9UrISD%H{xd zfvwLMwKGbN49jwc@{%=Kj27dVVgyx{J~CUz8KZ-HoGgcKYIn-@!k&_3qt)&fqT#gR zLfXRh4NSG>fy_pK)K^DcaxRO?DnNgF9GvlF>PzCfEO(`SU4+({Li+2~h}x}tdI66i zTFCkpczC<lX<AvE`I=BZvUo^p7T3ChY`-tJ(!bIOIsD0z8F6>`kBK~cZKxnkKdCH3 zG+nPIGHsI^vyZ*+xuDS#FA11K6V%9wheUCyB884E$E6?~($a8Qp4xxC&+*&Hvxy1^ zosLnhT*pcyvU^OlK>QgnQ5+p-!HpO<Zl}E9yJvK)d_mtI`U8?3u{^bL$YfVovi3(i z-Z;uTbt91?R2C7zw^Uzb6cP*ovePAef40$|c!mTqU%9e9Uw;)i`(vyVpHsXk&x~VB zPh}s_ZvR&Mu`(L}9>eGBJL%r8mC67dS~vc86!K^0*nEO|<_EE8*@PpJ$)YlfSIIZS z-sLc$?6FU<>sD+6iS<UsfzEcODhGeVn)}soq5cgZ+}#s3+3F=g%B@sDkvY_M^7sbx zoz77nBx~d9r+-BzrW=Ega=h3%`0~`y|MvjwDNzefFx~rO|8{AJx|Zl5;Z+M;&*J4c z6d2{0eJ6MyQfdt_Lc;ZJfEi9W%wzY+&+@yV`eY>r4}7}$k~y~P*+cAuVI~-^JV~h2 zX_?3CHM<a%(J)qSSvdUjCSNB?QessGLDT}|s|v{e8RUb$-Dlcy$$oQ9LI8dlropkk z?OE@)%R*ndQ&`1(Sk<U%(_;>6==PPbC{eWdO~Uo}?2NpBk2X5`znNY0-Egfh2rJ)8 ze4rgCg^GK`@^U+NMb3+8bnG?CuWO+w?q<8YzSY2j-(uKM4VTyNxc;z58UgLl`+-d- zu$N42h7X(19<w?eco27t|D2K($j-*M{5>qm;oXz>jN@R%u$9}C(=4)AeH@E^y(F*P zY0%B`<*yR9_(cjW;lv$3#y?D%?V<pxd(p{9D9**HD=PU+0=&q`$*MC>Z7AsQ`&9vm ze;O&JjG3pDFuXMGBOf77UUou%4&NxH83;`&^{f0za=e)z!f!u|-NX8)Cye<l->0K8 zXjV_<8ifM=QP=d^pKq34$+W#JbNIo()cw@Jx^J9OMd`FLWyB2Mt~!DK__7XL=GUqS zBjv3GL6>!7@_iNZ0y?!C0&cSa`G)|KkX0q|XVv3RM)|n=+3o^<Ki>pjhdOQm{&cAX zP?|t|iz=O=vOo#0UwUM5Ocqn=b}soYhgRh}b;B29UYr}#r21~9DS{71)b|_(N&@;S ziwb?k%&}F$fDW>_=z@EH|FOTZm$k!F*8TeeEx*)>`^@WeqB6#Vj)1LnUt^oROIpUp zzJmYuJLx$|g)**^^M=DQ%c^rxI@u)!hz~!pdR4VM;%@#Az61a<+1AkOWo;9L-RhNm z2>pfL2S1z?PD7$vhW6sPE$*TQUcdANkvt06g*Nv_NJD*U2zv@=iu=`SISo!CQzwB> zK-h8{$RrGuoJH7_82Xphtsw6AEHPDz(?XrF{7^62-`YMg!{0kdZHu6;xl<SLC9X*n z%=8z67eKM2^BEi!X(;0U;=tr{#$mJkX64SQ>Ij=~q5DJ^t_L5MST-`8%8Elk&2y$; z%5A$U{A9Si84&cv0CYo}x!aAA+Rrw(m5UCuMB=;<J-{@E)PwH#TLs<mg%{D{)i3zm z#@JPE*w0(yeneaDT=aEXe9DnxxatVp<1;@7>vH-m3z6PwKauonVjVY(=@3Q0`5V9t z>ELN3OUi(Mha%?dET<Z*vr)lFb?hT4b^SMun59Me#rcRBl$WzpjBsZ7fqXbmnP<?P zMVoP5A`Ev(|6Gf|${bmHqK(hcQKKJC6e7B))3B-C{|fqEj0fWpHzGp5T)o0TgQ->l zfnHego<&a-2`+b178`x(pb6eMB>QRQO9yCAo0kIr?w*F<K&v~}kLY6bU^xD&hJ3KX zV|Y4r_z<yAvOKZ>XjN}7*xRky$#~EE>ugEm>udEJ=a;@*km|?{{9Q(b?^oyTK0KD! zEY=uKrYj<>ydO!l0SM5<WP3lVa;cHC2VLpJ@Y;Nk>=I24(_l&IjaW>}F_|U3x!-<^ zC57Pss$ar9O-OA(ou@`&lhI;*XRYCao)d8$v|OHS9?TuLb1^3wG4Y!})EkJ8;Y;KA zng+6pFhqpfS9T<BI(`6nHJo0_znQI9r%#;RYCe-0q8-_QkOG`k?+aTQe0JufGe%(C z8ifx#t-{S)w06q+4&V9@U6MMt-SU_Sb4>@}%FNqERz>M|^99GQsV?P-1s7uo2gwV! z$@!0%cNH3@k9pPm--rEzYU099d}Y2Z3a`D3%=pPSb8|c)yKPk`IqY)5{$o&C!ZS|e zKH6VgHx>EMZv!$edurgYC(tIgYer~XtbwDZSMr%v@y;mFyv?zy3_n=n_VhA%qGl)S zIm>u65h#>|8sM_Kpbgf}WU)tDl6)?YxE2~Sj?k;zBcj6+C9q(GFQb^Wn_}LBPrm6n zc!Sc#RwIe*ZD7ngcEvgvA9SZ@_Ab}rEuIFG>cXmQh!&VbP4C_i$h`_csih0yZ_-Eh zzOEd_jRClgfh?h<N$yNZqk?_HUxjZPMJO1p31BW|DHyPnEB*pQ-*w`n{xkI2k)Ibp zY(`bIje&;MznEChg_(%<I3)UdK{=uSUJ(6heTbq8duieUurEN<?|IcANqTG!W|2^S z$3}yoUH+AcqHtX(>wzC=a2Pl2HEg;(afbg1&2c==31QkP)~}S<G+j;Gao+$?gfK($ zM-*W-wx;!bwj;4L2v<%6LHuPLc0|v-a;sVpu}TIS{C~Pc7=6L%DNBF9Z&~eZ`uV&{ z@Qe9b;JSczV^F@|YaecpP~FL0s6!Gz=Z2e<{tXPyW_^J#f-$oZa?oq%5-(&~oIbdy zr|K95iZqOw%eR^EF6z?rjFlgm;q&<gcS^n1M2qjEq>4z@5k)Ij)#hd{pyTpR+%R;# zm$PTH`@&77f{LchTl-!eg9fnKF#HxRKDH*mbvSEDL{``bSz3*dCHN5wet*JNOykvg z-jra~Q{w1|`(B`B#J3!r8J3_7$lxnd@%|4DkTugGfkRsokZJDVH`=1Zs%y_VlFTWg zki(DEv#$w#RpV!=^Izsu&1HF9BCNj%I-(6*P;<^$bA@HMKcPKCJd=MStp34+Htl0w zDCe{vF}6#k1m~@*)7+_U3BUqG#_I3oy_%)B#V32@rYBpm##GAIE^nWo)^t$0h5igQ zs22ce+t0~%4oc;TcQ#WSf5eqN2NTVUu|Bqi`yZn#cP_)Ihq-nAuLI}?G6}NmoT_o! zl2IIWS07k03;mVb$5tqJdhU$NKiroWYPk9z&lI32v$7T8IiZ{{i8p2d*Cy}RxtMu& zvBb@fmU_bvKgG8E6Hgq7o(+}g989Ct`>yK2b#@do{qfw!wecVOZabpq{e(PzTv(Ty z8&$85D^|tBz%<T@xN7`lf7@k8aB&~$`w-qhG6ge%3@gNd!@X+by$H(utL=BaC7Ya1 zkOq=597-pX)L8_F$In|GyaIG7Xzfnk!3D<>yWX1-W@n7yz7#u8dS0~0%X0DAF?JH) zqm7p$6shp8t?lPZTfV%6;#d3imUUM-hpzE>fyXjR{PB&Y1Y_vDLd1s7k|_)MX39E^ z6-uZh0zhEtt`3smY6O3xQ;R=-&N#==v$RcKrz*Ck^}zz_yl2&T=@n!D%&ce$?;2=E z;jcnx&*D~iwpiBpwV>pIReQKA;W{CPS4LmbS3Qa$ng}<^s~am|Ef2Sr{_X{oALbw| z-3deL<cQL4STT58{nEWi-Gemv0{k$T-@-Ju<Zh=u1)g{?Sg}@J+ecc{6*C6oDh!s4 zQPVm&(1<ltbTA>M`girJ_ewcGN)6HMQ^RhZcXJro3*nK1cWsGgSTQU@1x78xxyAAD zj#a%OF>^V>2<#+69>K(hXMAx-CA?P{3fl1Poyb@itvimWfK+wOJoMDaJVEI93fw76 z5*<C;wTLlw*{j5$=-v+lkwips+8d5-FFM^FxcC_X@Da~*Q2@c1ky-HcHzAh3eG}i4 zU-|O*0Pry>uH8(*O+T>QPFzrrDd%&P$06bvd$s!j(VZKBuP5M+>7Wr*L!I)u_N7X& zrULVa%r?C>{VCRAZ!D>@wj@GG`Bjr1hw4s$=<k*Xg%QeiK2nz?!Ti_EA=~>z4$MN7 za9vlKQBiE5Q#7u9Vj>CpQaYmbiOsx@+|&~b7@g7u&A(2Vto1~~7>h7hp}$T;5GiI~ z>tZ;d2Cj9>1?wam^EhC*w*m?Rr(DOSgFP^^DmZy2CdLts`>R@18ttDsny085aD$6K zu&TLI$hLUd=oqA0-Scx`yIF-XM|V(B?qR80uv0yzvO`T)dzD9poZh!qe}ts=qxa>3 zjcdmFfaIj6ircEdmo|g^m+213|By@?yVm>!hh#=J%;UEqd6smXMTOlk-B1s4a@xLB z@sqt7^xa>`CI)lLjKdsuVQxlSpEj3Y?*e_uXvE9Mc35-kXvfc&utq9Uqe9S07!%Y~ zqq*O%x?9l`RXLXyZ=|~mKZDcrMVwLM2P{6k==K|YRHs?w*q&j#Wo&yHr{zR$o4<;e z{lD@L9Z&D&hI^L9&c%q%{Uw<>`*IqZtkHg}hbV<vYdwpa*#^|T_dbk(k$EdY2)!aw z_cP<1-h|{)nL7KLL`!t)VG``fk1nG<c6iU2S*kmJayo^8IOqLJX5hpwiUYF)c%~P1 zHEq?cmVvlZr&Yq8Hlx|a6s<Czrx?c;)13VP3?2$I==~s-Pd$Ih@d-vhzs<aZ&x~Yb zleG$O+$u7(o6qkHr)i2{%?D_Oq*NE&q6|GM>4YK)AW-bcnr_vm)GEOotG#ShO0iy5 z2(1JusUv+;4}^+Q{WR@t(KfZ=x=Z{<tdk#TpU?TKuJAph&oTzVgvRb>%L5i8<reQ= z2cPBdw}d5DDtrgrNfzz}25P0TH4ohOJC5A9z9u-?5Z6oUDt6y#tg>nZza@(dR|cH_ zEw<o7jq2}SAE8_p9xuH~@7O8<ec0#-J=`6jIce%LBW_XsHS)_?Hvz$OuK%rp9^Avm zjq?>WF!z^c&Uo}2t8=4nvJ)<4Ll7QISY=1eYE!y%T~Va;JGRRw<Y(*SZw!)IbibZa z8cbx4i!@#Ief5_cbnnx37;l=gBAGyYrvBI7?_bbI4;$eJ(2Lt47T7j#?&}T2U%Ft$ zCmprEqK}gI;J+9Ov(w~|*mr0Q>KQSZ1?)4jy9bAZj%3f1@>y~6_mHl4Wxwm9@1_Ma zd>_t1Q9{N()*4|0Y>%dH8V1oH)`jn={;-Mz3;8*C{*OQl8yiCIpptHY7n=-8dgbuT zY-xbi`7}d^NKFE<O#ZW3&}yPqsZy}HE70or6lh`qiE?Lf9N9G+;UChcRVTVpyCIz$ zT~m4&%U-x)Cz1jYifX`QO*{c|eJg6?2+V;}WeEY31TCEr7|2|zqg|RsK=sr&TRc<Z z6vWgt`TF>}#-icV;|8(r6}c2(&FSNfJ#T!It#m)iv3~Zzt=h4){3gL?9g}evH@8BB zqWpEd7t$T7@vLh0&Ef!K96;osUXswUnE^!@%}e5HIG+S1=}pYH+0q?n2S7?Y?-qPi zl}%_xEZiymgO9}>S5#<k--F~>Co|_QT3Bx#|72g#PV{&|0kAPl0Dy;086TPb{$!#g z<t|9EcUvHgSHg)_UYbD60cM6XrL_7aa@2t#*b~PX+oH0aay`+C>uMSYBD~k>K!By* zv1ZC=)%>L~1#v=ee&`tkjDSRTq0$FZXLX^9Al*=XXxwsR;&NvQbN&!aUe?*EV5GS9 zZ+-hY>SlyaA-GrOJAH^uW0K=&;EJYuGmVIkS}OVE>%--e-ws??&(NsWK(+wXw@QCd z6RTx^*)vhAEq$Zu%VkTz&vaWAf-B^kPIrK!5oMP-wL=oU8?3SBrQyf|D@efK2$PMy z;X>7_fbpT6g>qF(e2rTOIkV@lA3R?Z6RU@a`^xuFxx_MD8c!TP=p}&%(D#tEjP!v6 zcTH`9Y=iD-;*a<qdchaQC_7e?D$)m<r&NkI`SA)Wh_MiyxH|av3jX}7r@kKtmHyo* zy;8(G;6cBJpZ*oSod<o}dq-YYZ>%7Xhl(1%Atg<>8xbkbD5hDfMSO1U{zo{}MJhKZ zg*VPh;^kW(^n0shb<3iF_8m=oTe?S7NP27V95PU6n!e%7pS59uq2W+hY#}&qmGcG~ zd*{BcpxX1^@Q4Hp4NImjg@jhCAKjePmY!fqaqa(&<#@DMr+!({-r+OB2-J%m><LSt z9g>?reo>;c)m(7tt1Q70Yd$>&I-f=?E|yc5l-%~F0z{fx?;#D+{@^UQHc{tCjQUoI z%{}k3I3hY;hq;mT*^0Yh?hFyTkE~ydt#L-;&nRB4mba?3;gqar@C@om(T8Ho{Bp@W zKraA0_&tuT)?vND+EZD6Y?fa}wmo`JJ`wueT4TdB5H%{mQ3mvzKrVO0q0!5xX4QJ& zf64TinCx6m)m~H&>1QV(t1(jzvL62T6ZjJt%XfRLcU!GJt!|87vWe(4`jrH}R(J7h zc(<n*W#YWSdLq+yO@9nvLTLtqH;UL$+$2lwGtoW4P0x~I1h1PHV{r8h6Oxfy#pkxO zg7xz9Z34zMHc9MCUZbSG*&h*-8=a~kV5?;#GpY9?1Qo^9<f*ifyCeVoXM9UMIzm8> z+Vzk&nT8I5Wbd6ax1yZNN2v4+|HRKO{p(FD2X09{H3vDKwt+A`xrJRqfF&hLJdiCl zbm0gc5H=|}qEk<4a>?6hpd7A%lFBWv>Riq=@uBl=r}hQE8>7lO8E1j(p#I<MQ8jUq zhazg!jun6?@m$SkIT`R<?*820FlV&kP^wWD&Jp#DM5G}j&NZ4L&n{aEYV5;-ldDU< zQb4IPwKA=tB%O8JhVwGqZ;bMrmS`VPJ>!ZA%2Hb?%Fobxyf@I9QomODfD_U%E3@Od z<>*I|f-w#k7CFXr=bs-nF`Juu{BFT&-`PQJEKgmQw~MVY4XM^?WIBFPD&m75Ix7JO z%>5M?w?K2@P(uOeEhngPc*YruL8RhBceGJAu3|fvh262l_O$2q*cvl`Ej2vTnX^W; zeII@1fT=KPM7&(M1dM1c=<`+#yFlH0ESBi@gc5kg6N9fDrLKw&y#mHiwuuauaPTg2 zjGbME6Q*USgFL(049OJ0B2u`4c|ERLYKe&OJjFMX5L`b7DRQo0ly^*1L7}oX_lnAD zwSSv@{QTHWugR*!8zztF(bOs$$u7-eWOn#prQsIge0L?k{d_x8#^V@pKJM_DaKl1| z69PhC(k=~{aH%Q%+F4=!VoC9%V*h*B{-_$Wib#7~TmZnbi}tLTaGJN<EoS>}Ot_BC zG9DC?@8BQoM$nyPOF|wIOXC!LRQ3%u)THH?42>;tzC9D*4VMv46vMQ?vJ{=azx&3* zy;WH0M5fnhE^%&8zI9K2HlZTA4&w8o0~17-lFLw93>LB*`d@;Nso+DT#E)+UoZ0mL z-#seKkQb%Y1WX?dC?IAQ-SdmA4wbp$V=RX0<r-a7pkCv_n66*Ma6Rrvb-r@l0G*lO zJuffULBB5l0AP-_lieQcNq?K|DPW4p%Iix=q&Qs*8aS=wb$t=D0bok0S#|i2k}21( zxK{<!=Kl_{)5IL+_q`g;jmkYRrj-=twoQzEageLH%vvaUZPhZAEAV}Hf0_>NH8POp z@Zu@=CR=IQfwk!0=bjzi;T^pc@8oMWd*+xz{<DwIp8BYc%b2(Rjk>S69$V8W<K#pv z-6g$iVMiE$E3NMr@iCddKO?7U%zfiBdTFo=5zTEW{bo(%Ch7hJZSS8B&dSvDPA`Lp zHs%ca-g}qwnG#*9Ly0+0npeTNWEKdIjs0^awJ3Zchw65&Bf6Xv%l~2G9kHTG-R_u( z1;8Iquf9=qUx6+JkX(gz!SKsdDN}OcUN!Tz)3<tIB-&Q3J#WgT_1Z5TToKUtdcr?^ zk|#~rvJ!9dwLVt<S6vCR8vsMEw|tfTQR``(Uq?u6q)*Kmro1Ud+grMq5&_`aF&|To zO&U|?D)G<k`D+-;LTKxLKT%6IXzOv|>w<eH?$h^-Vr_FOZLaW>KT$b1E4|$J1vo0t zh;&VtC<bCXdPrw=k-Zx-4z3v(d{Cf!He!#Fs}#_hs^#F@fWs*q1lxWhPRo)<ddFo; ztLw2^GMN^So?6RA&DkLiP;C=n0WXOy!ks0q#7MzF#b~7VxozSZl#}0Wu{Yb?B8Y_T zQT?lM)cu8_soVEt3#%C45~I+d4Nv&QBEs{L4%K~s@<#k%_N(TTxOxJmO!XVz#w_FF z(F_OdMM$b8(p<M)pJ-K0i>lU9AWl}yx}++}5@?Qy#v?~`@YJd$J{*u5E@O(qt2ISm ztAf_>vN^92N5all43XVXIM1kzlxyg4_$J9u<(y5?%O`9Zd{QuHE-tN}Z!yf7ak;o* zet8@!d=s;)DSfb;y&2?Cdp-bnrvst1y|_;l&gQ^%=L=Da>~RJ=+!kJszHB3Gw>ivG zOuqd>x|88YK@~%?JGWvF^W2Xvx6gp}h{+fJIk&2@*bUgr6AQuJHbO()tlz}c7~?)v z0>HP$VuY@*I4JT0C``7sUDd~@!v!}IO~unp0ycMR@lrUwK<RJ*?bJPY03>yHJak4K zZ{zg}uA^=^3K@l#h0m#L=+p<i=<-26GM{MvNHVItVWw%U)2bSD1OozKH<26<3Q37+ z=ugEK?Mi*JNx*aXvvuDLV|GeQVEaK_XjWX4q;-M{i(=7#1#GroT9X1rpp1J{7T_$C zHpRz+r1UCNsFIXL%IQ_jO1RCy2Ka<2B#hw1X$T<LR{o6XIwLveBsM;!mBnObJrMyo zT56hw<TqV?VF_)tEvD^G{lvR32$Wio#BlKO*mUpBlnu6*FD6EHgBb%+H9s8DJ>i?e zKEX49y2$Vl?zFO67?F(qmy+PYW^B#<yuN}ux6=`FgcYIJsz-KIO4l_o;?lOsKWQrO zqI7`r9|~F$O7}W7GyEDUX|WPrsA@~@!&EMRsXBNN@lf~C399gkz_j=^S5MfO_2fGi zBJD^0WQyp*^XX9`?2i*9>50xk9l(3sY#pEULmnF}dty$$K5a*-p{9vhjGW6bD#!J| z6rPwMP=zA9V&jAML&deUpm+(3-JwRFC45_f`8t1Wjhw|%c4LxPGH3g0X{4dm-NQRc zQ;@8l4^kTC_VT)aSx2s1EMQI3YK3-2atHNm@~S-X(Ta&iy#Ox=%&?Whkyq(E{K+y% z-cy<X<-`9F{!CttFFQ|CY@%o+JDsSznjg{G`_7$o9yBqSX(0G9P<7E#<Xgx)kDgoH zc02lGyiyX4c|hCQu}sZzd(a)M6^zLE_DG^gr<BHj?VyWwu$sJlVpIZLi(lJEz*siY zrHeOu1Jc%c)(nl0fu4F}em>qi5)pFJ?T?eGYRt(_v>GDwt_ZuCMJ(lbF_)LX>bUX> zHNx0aHXZuhqEX0Pqes9OdksgaAq*oL%cmp7C9iZz2A6Oy^DsM#aG&v)!Lc>KHPLNo zi<fxzffrM6G?TD%rCC-jdolJs&p$XsDM3uG$R8+6mfl9NoKxL-9d76WJ#rj;l5~T} zoZ=2mhKqH|=0{fwc`>KEANUc<QSkL6UWcrK8pT&|;<-Pe%1#ozYZ%-4KCr0&afQO7 zdlQsMp;x9ku<<%21V4VVsDy@WPp#2gN&=Jv`SMY0Ok*9A?{G(EZ(K;lq#qSc)gLMj zIgvOsQ92%l+(EcM){rkfn~$@rx(He&yDRGFG!A~ce^vwHzt?ff8s47_eJ-+F4LCD! zf0o(53hzY%K@Li=d!@}+@J{?Wcr!gfrzZUTvzvOfd-vIPb49b(VgN=j0!BMfvfc{2 zo+EUL7FFVS3fIzCcBY2ZDT;D7`r`!3Fl^`bBP!_ZPRl~WbcQoKZAz{p%RUV~`)qdO zCczQ%dBQqc9O0m{YRc9}ayY`h(3Pna3P2P;4K<185=Sthbh3CSOL9g*IG?^>6HC=@ zLPYzZ3ji6X7>(L98c0Sy*&0mzJ+_+4|NQnyUmYUBSYrYO*ESrI7hZ@D7&FwHCmT}_ zKac+u_^6xJW)@XxgYEhid-I2!va?&<SQd-q0S!Bc)^Gb!sbEyIxhZ|beERX3Z$MPC zEO$IA!!-0s%+m|eM`dg<*iskXEHZU3$YRr^)O)*RlfL~go@ENw@%iUWfNdc^(1`P8 z0MhEq4d}m+2Uyx#(Q*E|@I~Hv+5@6E2`ELqw#S;=Vhsf7h{O%HyWp1_x>d8Ks*+BC zjD^v@EjD(JJYw$V5>lbL_juH`+H_C(rrf@K3QTtHfj|xCkW2ovrk|(}?n;y4*^}u# zHkB%8BGgEex*_d%8d--v$1{d5Fd5LYQGzBD{B8=reX(~j5-;U<4c?FXMl(2=8|pP- z7sj-3C=_{j8MXCT*RVUC)F7@WVvVZ;@32)xWvH{HunF;bCwh~H)ne0S9Av#lquY-~ zvtL(HW-4c3?%v(t6XH0fShTa%udX--#=UC0P?51MYHQqo>{I<qM3JQ>9M5UurN2Cr z8|np+sX#4Wkw+Gt^F1&0J_iSo%_wE6fa03UXDEMi2?FtlrN6VCe<cd+;cO_8@}-Z1 zEgCG#wxU2;SkL>0v!BWvO_mfPA;r5Q6DyXm$@hajc*=-5$}MnAd+B2^E<|hc$*z@@ z*XFIB0JDUo^KR+d9=BLrhMsJ9MX0m?$JLIyl0w7Vk460FmEta_v6bs^x=cL|)P3=q z5`22P<VoOEGof+BqNb;_rYdB!bg>3GA6I#F5Io~j<-1ASOOAD@V#9QviD+*LXP)Nf z5Eh7UFp6h9`}cw9hG_$}$IbPE<E5dfnlXPI7_HXaYm#Sx=Hs!yAddeG9TQ=rBF4mJ zAJPzsKPz2s7s4wXQc|wGqR;yGM<NCu_GCLg&Fm#Haqpg#t`d@wPK>Ir^MjG$dw|gv z0j)SInV(_R^M-@|<dc!Z1(uypNxBFI4Rti0t8?tLk#q=ik|XHZEmf)$`;XcAWa2d6 zl@HFDxc5sM9AoGXBU$KqWTa1$j_gaDFTwrb^alzrey)CCDr%+}QS5@2G$05dg73SN z%{eCZm{>ada!EjO|7Yk)De)(4@X%eWdq1Y3NA4Ogq`iY>MFs&F$)%^y#-rB-^fz?K zMMQwgo<)Hn@j{{E0OoLB(v3gTv?_J9*%r{WA(l@T(;DUTD`vv^jhMR1EvsQ|=I3q_ zE-K-U85lJcyfOCicuBE=hCLYRm$gn>L)${k*7veJdtVyTsE@3c&0}j2O4cAF5rUuh zI<HSIXq#YiUe~DuSNOg&wLH6KI(|=4V#aCpqt!lQhu$$kucz5t%n`|FX7IKB4+I}5 zkOK=Dv)8LL0@)U<+MSYfB~Pu8Kb~mkL4a1KbDtl89$PMd5%Ia&m^as67(I&&#LzB& zIs9b6<QQFMm$xFNwwXJ3{*LNPpq;Il8}*y05~rPA^TixY-S_PD*+>73U^BhBGVAlj zA}@5SQbD#YwsBMi!ZYwZ^l2RbCr^ImCsJ8^ACOUt3fj9}Aw<_9E3t+dk)8pY%1u!q z_J0RkU{)Gl|1){$;A6>$XlbWjY_+U`8#-3xoh_U0Tud5!mLHp=J`MZ_3jJSQ39+B@ z6J6PT*M3FCy)XmLv#*4`a$k44`o-orS9>J>?;JmCttg#y$~?<A>pbcR?y&~++se*~ zk!;v2e-T^;HWadb!TDw*MeIL~-f0R=&}|`mk>Z@PR=8)MCp~n&D*I^5HF`Hu4a2ps z9EpFXij^r$u;x6@p`{pGrr_H^<SV3w`Hf!U<Og4Zp2(Z>RNRy&@wIa5b>FRse9I!7 z9lp3cD~OlJNw&6JNgvgB&igsVwSF1kN*u9HO{;g%Cn%S4GNR69UiG^%_|h*&;{SAs zmfLBxLL)R6TDR3nUvIX!_<!oeAyz*iZg*d@-~51yNsFsJgK7$ja?lk9H%2JNi_ftw zpJY_cD`PKKBi`Jx5b8HN8d3;uQTt&lmZM}<CGP+3uGt)9gBt{Mn^R)~&47~c%Zz8Z zJN11=WTde(<!CIB``K7o<<okpgiHVYcHzRGx4l^Ok1jpC_Gc&mU;lb@ec<-rej0bw zVSl>)thlAg{_(NU{Rg@FZ;MR+W%&42$(=W6@36gPY2yFmq<{yt>GeOzfA0Lj^JBVi zjj|JhuW4VZ9qH7qOj6Opt!(awY|1Szx%FBi14{;w7BYd9G3strSGJqVh_)mtUV)f9 z5f}KEtBRlMhgXfed2*8EBM&zJZVwO?4mk}jA=r_phrQ+x<T#e^#?@`5VoStQ?dCiY zI<9Ur;vWLU8nF4#cza*o=gP0<A~dg8z=7d)^d_CKX^|iXG2ICvVYwmt(|k@pA18#8 z=UNg4HcFx;``}XsQytQzzJQT0gOeuk<DY6-#UlFx31qHUbJV~frF13v?|9AZHOCJ8 zpo}ud4k50ll(yinY-|-w`TF6!5KHtQOnu@qr`MM^L7I}qB@?BgdN9^!c{nIZAM`4z zRT38fL!RD%jS>gCPWveo6wcTwl(gJ$=AJd<XdD@^c<bF6-*bE6>8pFw6`UL`wAl)r zQx*q>!EDcT5@!JDm-_bj@+p54udKeK2_Q<myeg>@;v-wCbmM5Uk3QKP7PtKl{-aBy ztshQ`ad@cIdgT<R#S@X}H!^euA6B!#qtWRSgF5Iw-T_AP!Q4zWNe(Z**{=p?13?a7 z{cSFBp6-W4jaI#b)ji+3aCz^IfCRb}J<1+WN<jt9?-0~vqxHs8#vXAKa)2%U>gv51 zsF@Oh?^xG{?xD;ZVPCXPmiuL?GGSUXS&iH+Q<(F+#-w0akNb?vJl1|I{@6~o>|&M@ zp)>RxF^Ctiw}@AuL=_ePZavj)<(lMl5z7+ghKyxBA@ZC|s`nSI=)#5O=OGVjP7FR$ z=+-;wGi*gEA*b}|WW%$N!<-Sl?>Q`bug6}%MmM$pP*hQIHyGSjSG5`S5Cz*DO4_vP z^oB&w1oA(<uT%%JhyEY;BpptOj<Jr3ES)+yIhBJL<avzd35qEh8se0@EDo8I2^X&c z+k)C0gN7k=H<YcUE&QX*nuu2*;=avYlJ%BUrLLadWb)Ub_kBFolgw?rNK)p5V6Ld` z#_0A{>gTC#1?^UW!>Q)LTf7E~nUDR{?h+u38HnZ4)KXBh#$;A<+xuDUtWCMk+If`S z8maz2wE+CEohGW=F1HR#U3JK#q*ROzuLL?fW<E6QZsVH{K{u+y!cgk!0MFJ|OJGm; zG^rh;MkUX{0qKDI@O5Z3+3w7Z7Ggyz4;dM2WhENHqhVRGkI0et3a2h@i;@%)Ay!!D zN^>dsO4;4XB4yA0&@(8w=i2TEGLNhG*ny;FgS4|h$6{E`!zMQdYEcrBo;a^r^;sO7 zT748-k>Xad59!;#jBB}Hx3xRVIxUs$+fd$c<GsT5UX$4YI^wSCoi0JAxd%e>gGR<? z`C&4t6zqi|cu;XPs@+IRTtHQ8r0Ggp0%Puh;M4Jy`?GO7xk{Dnsy550+E#&56Iy^g z-IQgzNG%6O`}^SH!8Pv#Y{<=mOB;6~b;7GZWl|X#PAa7F+2oNIGck68?mu=!tX5{V z={Wk2+DFoA%(Hpqka!=!db}I4PSFOxuE4wX-&X*kw3Fct`hk~hR_<!;^2*l6FpvHT zF7&MLCyuEE?=9wmmls}O2k|Y-eTw^9bkgAv%NX~VUh#zFZobrIcWqj~peYNyVh8_p zH4@KN_*IM5L2UJ%Mu8gjF}K<ZBnPF2zJM)DTl4EO4$pO%?uW#!@q1}w`N4^+rhoq6 zsXqGFb-+^S((uU4edIgbyVVdja@PXgZu9WoWP++!dlBX+)@Px$*4<J9J)4L{S#BjR zXDckO>0vhI3~N-5dZo6ZT^4SVwARm@8)F<n+rP`7EJ^B{**jW3GTBV-Lh&7uoAgYx zLI$S_&pCa7SJyp0B^|sJXLe*K88|k}q*Bei<Q_YGcFF&@=Wb?xq6z-5R5sk>hZ^?F zHfd!qD{OMqnv}~%n$5XdJsP^YBp_>C8KF}Uy8dkecQ5Uc=NEt$Bn`!%@rl)qyx$LD zY(+@!ckT<MS%pw%%X}MFX&<CV5PjCFs(u}sg=_DrOvZE_JUzd}v%PtGa_X@_r3Bjh zkx2WU$$<$K*+orD&umt%TQunIHXU$(DLdZr);ldtaVQKm^8h8-o09#?v(P%ITi8nG zrNw88d3$#p=(()1clOG98(YV{(X5S8)?0(o@vv;4W_924yW0RuM7Hg85p(h8y2KQ6 z=a#;=Fb~w|etrtI8D1=sh_lB}yU|D7vddNb7pM1Qr;BP;9Rx;<%hb<sI+WyK+EYPr zT1fc%LQ~H^^pKJhdk9Tq_(s?U|LA_B2dV$9wx1hbkInnCN&=EU5p_asDp&s4&NXN0 zRW1uY*wyJvbKf{7*6m$R6lWb1mE2d>qNT6ibXP{L<(0%wC5$~!o2f80zIQ4+u;n=S z)7J`Y8~$Q{*uOXDmi@A|>x9{L!dJEGoa~C2Byqu6-Aa*{QUk_=zIAT}B`0~VUI<=d zS4cR;d|IrT;jR0RImfbwudQHE+n|+asfeX{)*zpFRz-<0dph&4I4r_od_4#sAlkkB zb@{WgpD_!H)33f-FMrYfuRxxB1fv8gS@lMcKY7KO%iAdQ&AwmOYaGVL(}=V#%OaIT zDep_d2d6ThYSEG;y<fdVibg68Mr{00+>Zh0JL?Hfw>q=qAQ+U-@MA28u0^jE4zF_` z417rZCJZ94B(%?j=2S*${XagA7zO-dW|N6$%3}HQA+?Q<D_PM*-*E$=L@S;d_bX~2 zx};5?^#Ek7KvEANu5oJi%CLLzGB2&^bC3U)UK6`7x>UaRO<2ubjz{OUq3MX6W2z^7 zzzU{B*e2|m0}Fv=`T{etUv;~;{mrzzYdV*mk^W)tMhvmfrjLf(l<L4GEnMSF11x^O zN>%@5Zj_#-%luOz`S75m3QB+UW#3u1hxCsUXh9`{D{LiX`zUyDHmA#iuVCb(`YiVO zSonjjmA7-GSU1KhHj}Y}s^Jv4VkCj4{LvXL>|J<C^18Rps}G@bp)ywgGV$xWA+kE7 zSN}Qmxosoudgbi*G%7EWs-i^3%~xCr@wTCLclc3UDrE{>*%U}f{vik5Hl$lpwv@Ni zk4USj52~Khmcf~8F~#N@x`!)mJLyTJl?hvihf{nWv&M1-eOWQa(^r&iRz}`)V(O%V z7i`fq*)d*&n((ZBT<o%p2oYD)(fgqeI@gMF1rD9Os74*1w&BtXBLDwa|Bu~pM9;-@ zL1Jh-ypq>8)>K26NK2q~pK&@>jItg~Z3lsxRb90uOUBLEeMozX{Bb?pRTukdYH+?I z$lGRart2^!H`74sWsR4=wAB=ke?$O%k<sIUpNO}T7L-2XQd@r(xUehe%rQd6EHulB zTOMr8yViEe(fm-G16@<DW8!HEP(-#A<=RW?&n)7vpr|9RGl5HzmK21s&MPU87d2dj z%9cW5QmKXc*qbL36>}>GKeSaV<$;RM=gd#6)>1!eXQM<5IHb<*45l@Dk%(#x;;Lu3 zB(-TpgD}JHYXZ|mD~rWZ<dcDuz)`geN!Y|k?)h_}!`ZoVW)w3K(p;GRXiSm9y@d^c z7d^~q&#K#!<rX&|qBUq{dzhA21&T$R@OF$<nz#3sN$-7YS1AaBlu&ayf?tex--118 zrjpf;$Oc8mn5wN*&9qZ}FzHl|pu5b%R?kzMsrw-@3J^Z6W<k%q3zeo`#%esz-5AQ* z{TfStu1Z<WYIa}#oTiIn={?>ElJ-`fwQ$xeERzyX`!d9{m3>z2+(q3(DplQs)8pZf zf>koZYIqH-DoTWcE%!gBs4mdF%aN%1f>|=pyi}S~R(3(`mzFcEnz2JQ-ZSEm`<45a zF|{MrC-7by`rQ)f9niiBe!a@CEFgw1g%F}jS>0-Nzo;q+4Zz~&5|1rcq(^VEx%sus z0y00(%1xo&@(A$_kF@%dio-9z*UKuc#MMv^O_O`yy0MTuTrn|5!G|6^zAW}Ov<lux zV=GN|-J_<LJ;SBXb#8!X-Y%rAzo+=aSMxgMbd+n1a!@*4%FFZmmGx8!y#*w{u-h<% z45ueGym9S&@^D<-BB$F}PK&UF8Gwzcjqxw-KK$=!i)HZB)BfM>I+aC>hnXDKV-A!! zU?fg85+{oQ#`D5E&9cLu`PyyE9$+P>6h=u;A{zu}I$N*ZGUp~d*4DkTB+xYt%nS7> z)QK#&nFRjAeUMhHZsiETG;GLvozo=2>5BD+^9=Pg*u~U%H^Uhf57~dpxx9y)a*0Sr zr0uGDOrs-FPuIDxFzj;gkE~WsWV;NvNFlpIa;t$}5XD%jLM}W+pPR4{SCchr$`Q~S z>&_nG#l|&Fu&EtQlAAPjoZw3X%-z|`lJrocrSh%Xt=+_ELhX8UZiHD&bi-wAX7mp7 zqGvmwCpIwYH+UT>d7=7~{Hjy*lr1MerTs9TL3FLH<GS)$*-yOcQ@=ai1>>t|+^g4h zMRr4t$k1>bWlef4w3eNEPO%K*P9I~v8>ngZfAJx6XB)}C*UtxwXO4b5n*6#4?@HYa zD_^}_FYs;XO&`E1mtDpRl&nI8rqymu*SJmBrMbq?a`ZZlrq;~MSym6fl+na<83(E% zW3#oegTS1@9meDr$k%b8rD`**a1NbGhOKMDs{Gai3E$?d8h>x3u>Z74Wp(RQAg{R` zn#y=P6-?>`Z!h?uk0(I~RzZ3fTenp`;wCO+H{-(Yxl`qX_EvWm>Z*Yq)S%S*|4xHt z9Wl)UU#gd8U7KI5C2GV0y*X{XS>1Oz__T=1^1W3u=Z^?=Z{Nq(rW|nq#5S?sAp(!7 z6B47@ocY@%T)}$-q%aSKAU<x73ZHuHaaCM_D{M)ZQ@7q}25<P(MTv1SjeH8G0;+lp zD_I|Is0!<L#AS;ePCUU#I5$kKyVks_C|AC}q6&yuR?0vybr5<lfM~H9fUicqJ+}p9 zAp$1;(A^)K+6QE}jK5z=2dUx`*6a-y=Yciu_qV9Jb0}x=IC~a@#lKX!*cRXF`}ElD zJ(cno`{`N!EeV?or0I5NePMgPg{!#>Z~AK6xI%khjP0v%_?&y3)|Hhyr_r>BUR2S4 z7#da~_V;|Kdbq;MT`r?9OQ{wyf)dxU1+Gr*=HC=xjrKC}34H86H$#a0X-8|PTP$8+ z-62cseh<t%KoMR`6c2hTj0&M3^T(}Mczp`&zV<>wxDpo8%<gJ56O}pPLxWF{j9mMi zhT>|3SO>`(zDqU(Hv^n(RY><qP`m(9Jkw<RNnD1g_I)X+aSSO{$9Wj@5_SY3t1ZBt zhMe3VcZT9!AN(bVKiUnf@ti;W>TFG<@#7&4&m|w;_b>M~d%X0G(MECj?+_FS*@G}F zi&@>)j~`sV43k`#b_r7YQ4>5-qoZ<V<JlC<Z*%WF$}jBekQ#VaBX^4v_jFB8b-$Wf zSA1DKx+#Ii0vjg?dL5E6<~6J17GO}I10!zhwH$(p`mGy3dMvyv7Q-pnDrakNLTlm8 z8XyrAnbK7|B+Km_*ZP^z;;@m6fb4|TsJcHS1Vi>MB3AsTi`psWUm()Z9hHrc@!!42 z=646X7?@*+5lJm!HQZMFaV~}H*t(vv8`pcIIn|<F#@18$ui8vE1}9B+Xw0wAKY3cZ ziMQL`4rFxJ8%!2qX!F=bSohJ&s#zd?h#b!_r`PDah3w${`S8=<7)z1vN2U#oxP#4a zM;>~U>qUDw%MffV^H;FVkIsw2{BP{NX;@R)x-MFlrL0;gR7nXoK*~Z*DV;!JXhKp| ztP(p&DJ4AtK|zdw5NSe}QbY=AA|fJPqJ@A+6F?v|ArWap9~DUG0|62sfdEN>1d`kt z*V^aob@z|E_qlsN_c{0MKWIi~#u#(VF~|7E_r34?L8wfx$w%ysT@mD^3E=>BL5`is z%G!8G93By@b|nQVRwnPVo}otrR49pWN?-zb3Ja^&$HL+_NL(W$>2N61eUdxJ%qWam z--!(k>Bx6(ie_*#@i$T*3O8^8Ap+L+WHru7Gz;S(f&DwnnzwxIw@IW!yDJDT17O}O zD#=Pn5>F)9q6pk8FDw<c{7E55vI(xXq0>vF4TUwDK>phTvAc}^uAY%b^46IZzMyH~ zSHAGfxVA&b+&x+P*=@O!hpok0*~_XlM8xlka4oL=%d>=P1NMDXPz{HWKsNZjuZ4YH z)0H!YnJV3{V=#}7=;;QQ@aod*o`YYihbbY3=NpD={<!iUNMXbYNDuYAvjw31!dCy( zYCh}YNSV<QJkvZ_cTY*gZjJ=BMJ=px<q0H%Mt&bWxkfV8?dez6XLL%LrpQ8!TnB+} z*Z`snTBpx(64bXhbGjMd5<CN4WBPm+wfPRM{U1_d@NV=Ekk|nTpti%3<g;7_pBaGB zB1gE`F(>09Qd?V<+gs6)*0}Qrd6bM)0T)I;P9P2Xi|{+qEw#WKR%Nbwt-&E<Cp5Oh zf!Hwrlo_MhEmVi3=o*`7v8sRF@3HnK_jK}W^lbzFcK26;G!lEb@F}-@N7{}E)N~;G z?fYcDT7EoM+nY2Gh4J2ON+$$y5%07%0FJ!oc=Q1VQ8m~#QWoa55ypc`?yUT@4mjt+ z`xeL(tD64p#JevlSHi*dnjr3ZBlye)VRegzT!xoZ9<GlUF<?3}2(VQs4sNhkrDjMh zO#qtNz^!i4UP$D*)V8XbCE(oR)VFXr_0*yu?DI(K5k(MNup(VLslpQz+AG4Q%dL4) z&_ShuAye>6{r8L+=X(*;hEbl8?wGeV53t}jpVg}=`tK(b8ny^jeSLkF10M=s30(+2 z7t+OQO-gqzp?0SfBSVHeG7Wq8PFv3d2l;Pl@5b^{Uu^h&3v8zC8`oh!xHoT@PyDTu z`+14)+^B+9q?PUxgwKUpT%at8H-e{A2}k@n^E)#n812Puz&}dJEegwIbbG{lo3e7w zihEHD+3-c2gd}*f?zWx=J2e7d*S>5cbc^EP0K3DVbz-TOuM_KCjpbXujN;UadO<RX zlumIRMU7ZX-(FJ;qyJHfG+0E4Ev{i!M~Lor$*Z`JJ~f9GvF71h4gtjL0-zHzU;2?D zGh(5?e4g4$RBRHl9hdBMY6EFweKNZ<TLSD>K(LG!y;o&9@<OflZL?R`n@?^yDORH8 z=*gfIo&uwF%aAg6VmykN)Lz9M=kXWpQE4=;<^tNrlB6rTE8g_HqYqY%rdvqxJqgWQ zT5pdhHcC3<!{o|@71Wso60nbwum4ocU0nUnJ=xA{qmfxIkj$>^Bo&ZW*8k8;bMdvr zhChbRq?pwip1vR79snr#FW0OL`rae7-@&edvDMzwsNlf_l2Q<+F|r?xf3sI^hZWhW z0_1|;^QdDkpaXH0BVB6%WEcBR69<T2X>tKK_h~QBnqKGOH}0pPVu@g>$c-n2%7$^W z;YKypi^^PLM0&zoWlXO9SeA#Wp%EwEKr^mxx0gHpT}y+||L)be=4KCr&w*`D&=BV! zb{=ty%%zRLrvLm~#5eXZ&35@)_3gKf$Az|Dl{<NWyW-LNc0fn`2SYXorBl+P9(k18 zni$paKJ%KUU3Jr5;-!>41>m3G^+<F#Z_2f;=UrE0r$j4mT1!)zX^7cmxwS2vG*^Wa z)}9n=KN8;4B73g_$s2S=ccv+4&6oAlEkdevv6RU@2HA(7^yV_KuIsViZ9aO;%hGwC zZ9JI_<lXKmp2%!aL&tC<;<)#8H(b&U=F6EWmbaCFisYv8IU@~->TlWZu)){yzmOU> zpG2aj4U^s8P@uV*lMk<cZNdyPI)1#vq1VGU#-bP9E$mP18{dh}i)1IMRw($kY{K>| zSZf@i1H5T*M;mT)-?=Ya=UG=-#Zbg3G`&*sNA_5hTzuDrdY(IIWs{95kZ;Oxao*np zGaB??GNTI=p)_~-xeV;ziqzfca9|_&ib2)E1h-)QV8b#yIzuPe^0Z=lOumaoVs9ee zZmlon%BKhMc2>Y9VGEMJ--V@`w%t}E3s%(?E9xp_!H+4_V-oJKT8bPMJ3KXS^EJ%U zN`1;^nX&EPtoaM4$2ZMH2tCbz_;v0_@)OSV1=uZ~vraU)HRif8&G(f!I&xbjcDh_; zhXk;>zwk*h*?HLiZ2~FFL)5?ElZ_Ic=d`=ZhHuZMnUB}=Kjak0p5ifmt9Q!>2Xw_G z>{&-{<!G2L3cA!*q;@8{SMdxRb+x#aGV&#?swAV-26*E^&6NXJS^O^u!-HKzy1>eS zLk=%g28Z86+*+Kysa!$qjQMwlA=WM6(_x{tc8XMafmXN`KR16$BiE{7G!d=v1oV0a zpp`rw)v#w74b$Yl=|8}y#VLTc2KVpo*PPmuh>q9z;lXGzDz2vjYM4T4D{}C#rnAWQ zAIbIye3R_+>(^6V74P%`9b3V@ECbf}?9ZOU-394z>7>7Lzoqb&8Y(<;{Btk#bgrgi z%ch5z@+OQ_KVrYpJI8kK$6XTEsIN<?{OiUjBXTXCR&Fn2Z8fu+CV_xR?#DyQ9rC_e z+8wemU*J(WTxRa_`_^+6n;RiC>&cK1fTnO!^&8&uOLID~wRv9^C=K60)kCg#Ix4bb zGGz`AXdYGkC*3OFTW<c|(f;Rb)eQ-dd~p2GyEKv!+0&Zzr18}o(oCRd+j%Q5?6U%+ z<9*MptdA+?aq?Gw&Y`*n;eMnM?ec^UOXm`%FUQjR!`yfzfH|A=xYpNSKxXE~<C~O* z!`tOrZx`+JpsKI364GM+=tz4RcH6_?wZk$LH;F!q8&<*vRm1T?do}k8?|x@(F53du z#KD2EbR!H7)9b5=l@?<gOLd0I5pjzFXxW>U@M3^5G`aSaWB{ud)6J~=RA^zn=$$I? z+op@}+{3q4ZJA$I#;d?yU4ytkpgrtQtQVEH>IA=`RN1QrXJoWfl@LSwv8roaWQ7*& z*K#rM-B_^XX|OBH_WMWTDqb3CrTSG?x{LT^34$QF^Ngwy<KqZ+Zo(_Hi5PT!*(Gre z5GP`?g1C3o2=pt9zH&RonEKzX<^M73XfpqCEI(1XO@sdD<iu^!?IRScm|rJ<Wx}`j zY#wBkhW^zE<g(dKl5fWC$7b|3gN;brp(n}<%a79YUvL3H{SE!Ovd0#!zTbEiViq6> zHIpmdsaQ34bS<~vYh0YJ5;nb5DA;;Cc*$YdB{Dh|pVJBk4h>3Ucm14k(@jbE_&2#m zMRWF_mm*z|cP4*4JH=^FP4?XR9^?DO0+6uGzPI|VT2^zpZl$>wgP!c7%e!LTa9PXW zJ`mHk2m-e1a(bQxq8~vI*Dd`axK}ZcjiSX>;`mxJ<t-DMf3HD^#J9Fyofmc}@A=c8 zW>6$(HSPtLEKgyAqIU!k=6NIQmoho2Ov0)ZZA+2A_cs`Qu{-!w^=A0u5N~xuAzs3+ zVFbUoljixIG}#d92ys6<B}CDTnZS<ZuVb)H9x**r&C^2z77P5it$8zD(}bdx2UJC! zVST2rz7PwWKas59z8pBt>!2vAe_!iDOi~AoROK!!0n{icFT>+xxlZuNF3nqgrPh;; zDE%1kIXW3|CcwQrXCB2TWFunO8mJo#IbI;a2OL3tUf#M|6FGtrLE>g0j1#($G=@a= z8?KoCXD3Md0%Qv9Dh7C9$x8j_3^hDZ^Dpf!@5Yo)tM?u=zpgKhkpi{8(VF~g9nAXO zY#ON}LJv3<W22i_+>mS0TmbeD;Q#cgYx-m7$pA<P30=9Xeha4fY%T#k@XkGCc2L>| zfMe}+R<z#?Kb{E0LDxD1#jbzp(<W(FzoQ1Mv}mdNNgkfvO#?FRjfk`{x|}M<z~JKP z*}w&ZeJ}t>rzr``SR2F6PQSsg;`76lVhKNxY@9Qlzun#@1EE|`W4Fn3G8O35j)9+j zF_#-x7`|{o@}(&MCQDoqQBJ==K0sH8%V_9(xDCa@js|tIGBM8>|L1Y{DY~#f?@_eU zZMJv>bNu66ym+A;h_z5%l^L3>bFkq%{b+NOKVvl~qY%%J(>mEQWUOX>)7B5PwjioD z+6Idwt=)!+OWkekDx0A)l>$Xs;uEb{!0{9eAEXSyr2>w4D<W36p&z|TW*=rM>g7v` zqYx=g46nfcV=`gr=O)Piuz}H=&GOq5(dwPiiH#e7H7RF;Dz|0V)%HQ*(%DN7Kb$E- zc%D!jn>IPt5!unUam}XxrazML(JOXncNVQMjWzR4LH@J0LOAXX=gQ%<$ydX(OLL;_ z?N(#OuYDmwTX_Xpr)H@8RfCUwvT?Hy9-a=^?Gd?kcSCNw!QT0-uOf&T*f<;+pGvI% z9Po+=g(uE>E&6;cPP-;r^bcb9Leeh&<8z91%<EPt>>0rd(GN1QlU`<hLnM1gH?%=3 zbp1%Hm#`x2`u->)X&<vSMeaUf7j6YtzG7ZTXW*X=!eq1F*2_e|><>{)+)*!)nIN$p zJjA5)X|V%at$m9=e)uw`chP!DF<1I=ZG%0bknMsCK$R;`Ar2!t8IYcEcdBl&1PV?Q z6;e(hF)iz%NkdyIFgp(LG44VM_5;nxlg#-OVmL{9qLMOq;p4#w3YRUio`}t%nmN>4 zFV*DrwzJ<MJQ^ceYurC^#=^Q7UP9A_&VxNVK_Il$R;!p$(|hDP&we$(U+|<x{K#_A zI$HspDwQNH2F+)$WfhPqS<5(X-5<+%&sKVN-zAVN+P{l<6FDgKw{z93;(FiR0>U>Y z4YPEMrbpF1-0`$J4s<C1;lAR?yKMug1lM2yZg#fmIn4?{=QseB(gHmmcGMPj$9LQe zc<mzIu7+;&-(PU>tl__Nx12)PggZ6^5+U$}H*ydll_v;DH~pKz{56yBt=}F8S1EtX z?TVQbz9U!rmT6BN2q>Ll)vP?VXw4~^@h$cRcETbh*JZ9<h~FTG8U59Kp&7K@0`ed) z1qSE(SYxJQTw*Z5rs;bx+CWTRM2pr*)YumEZy_A2sL<FG3dqrpbR8)(p~o(xwdj!@ zW}1At8)ipWv%@ez8|T`jgm5m~U<UgHLtLII99RV|HW70&9`E|VKh^X3<p}3Yjl4$H z;J)kAOF;f>V!#e78Nfb`z4_O<s_wp@-Rf=5SU%d^yqey)6AA1kkf+v@$~abXB6Rl1 zz;<W8c(p1T(zHPZ1|WEOoP6J4Ifk22L=h7()qab;$C|vYL#G2vVNDB_!pe9oY$`58 zPa-bH?V7+ic$-$FT|3Gc{$@DpRlV*Re13<%@my3xTX+v5O%F3<r;KZZ*7r9y-(7wc z`?0n2%|PT_A<{T&I7reJa+D~21(y=!mBjZ;d+*pSW&EQ8@xQL%gF=)Tn-CQI-1;U# zbZU+N0}@lh>^WBF9v7<JRSH|g$&2B9{X5Y+CoTcgKHa}~wfjPIZvrBPcG*N~W*o-O zq}7k>M$A=U7&p&Zx|?90`1F1t9!*<*MGL@(T<h`oKo-h#9A}13s|Q^C(%HzZgP?~h z(L0!A{<OjR!^UG$miDBv@63)g$$SA0KS}GFVRcm<_ZxfX{>SpxTS52c`{1w5ek=&4 zep?|3XjnNNK^EV8oEzu1_0-Dlk$v#RynS%cyeGQPTmw(^Kx^I4L8RHj0wu2l(;`F8 zuXeT_BEnYJ0+Na091V@)Z-VzMVDtwP`wxhnA)=vMd;;?(PU7Whww@eYe24PL(z&A) zL5>+^m*z{_+D^0|wjJH*7QHY#Bm1Bzb#Sp^#C<$t%Fhz<+)YyC^oDLss5}K_9ej3G zTGJO&F+em%zh4C##rn86ETHBxa^-D@ZPTQ_@;8WT@cV=1ljpqj31ks?@<1qX?4|NE z_+Q>RQyTG+*$p<9B|#o&0|v73RvX^C>aSjR9a11Kx2-28T{i}d<Z>``hjFXi-T28x z*8O3Y!rRhF5wdY#!{J$YJW2;%vfu?0X!@5^VQJT)VN>PfqU-r>#qd?{GqNQ*w!c9d z#dJGvaQIqvt4b#JyD-s!AO_d|22_tN9?88a_Y&qX4K}4wG=zK>;h>7L;VzWb#ep?j zoh#wfUn1Un7?X$6V}ZqD-9H&{9n;>|96oCOL(n1>pl=i;J0fht^5fs#bD50vuL)hP z`b%m8h2Popj>4EK9agG)InY`Tj{|2g)fiWAp7Z;jR%W#l*EJz!uWhel$P2U$Ww1P% z3*}lC**~7a@_j+pbEhKa(>x+e)xQ(~DkqesJTz^rj5+`q+ULgspZdLxzX7MAM59kZ z7?-lnN5Mc`3GZCH`UW+R+wR02$eC4ATm!8o>@RwLcZbD_pD8J~!Pd^J8ZB!-jm1cp z(s3~_r)#&BGP2$;j@lZCF^J97;FuXUpsD0Z2GVP}%#^-!c*)n?3sLpdsig?pKcC`X zz!x-HG~(gOW?pNLvo11UZePLQ`FL)?sDuCfB1p7Y%<_G#Plt!J*&MG5`}$2JJ5z;F zTOT(uq5@)yhMc{cH^;d!Nb>_-AUDMT%G&z%nsoB;TEhxMYLKE7Td^s;dsS-`KxHU$ zZfXNg<pH&~gRhbwx74LYS5QKDzNAR#WR!f$64p-ug^r9o_2n<!zK|9(pTcuwjWa@s z!|E};`A<-?nv6G6ckX8$+@G^ych2ZTV$0FreVSo46##@J#VJTy?Z6%&M4oDEJ8l%K z;VpUJZ4XS%aplz9hh=|E?7uNrM9f4Wr5eF|ECKfq9oB{a(Z41N99tf<_K^_j+xY=o zps4<jOzWf3pXYyA%oo+JbzQ)+Q;(=;%4b}n3c~nO3%dv07iqU-vMltyWfpA;lIo^j zW}e{)H<fW_{J-+;G&z``*lTW#E{|8wNBi8Ca~M`@^N4d5A$Kg_AFS1d35U|zPlmv! zQPZfsxFc1rX6Pt++bbb{7t3d-vA}hftL+o6SDZk~J{3;x8?o@X150)BoU*p@1ze*u zh6Se^p(w>#YJ5pIBlZ5~o%CNB>b6f$MsAb4x^unuOun79Cw>XXtk2Z-jz~EbIRETd z2(@d*%OOdDBOQ;OVX>p$;_O6zySvyF>j==(qAgCPAY%q`zs$M|XY=~|4u@1VOLn!+ zw*yfq2`Q1EaTBq(Cgz4jESC0+BV&{fu;?2i)*{T4+lqQM$7D89dY9U1Vn_v0?tz_= zq9)YIiG#2fA~6DMLedHz%E%bE$F#Mt-}XMxy!i@yV^ZPr>|I3?6mD=nWTR*3%|SXB zSTZ0?e3dchmN3#beM8;i^lsJ54uBreIf0n@jR#D`E>NiT$%U9`AlPJHqS$H<cALB< zI(-d84M?aD3Xz6JjH4ak(G6ouHzO`?qh(GrPN;u$dHd;mZ0`>1^J|%bWD@P&<_r!V zR~5{nh$~)_W`$hK<$PAEWLpRY=K6*!8IWhL<Ja_juZoxa+H#fd1G*{ONJ7N;tSa$D zi^pJJU5)rvGvQ72lIL=$7UHT63*Xa%$7;T+K9GlnO@k1_eVI})A!coGz-YVq#bWfI zd0HSfld=RP9TLb+vESV96G4Xq;W0pq^+aYA;26w5Tp%wJHXLL6U;UvVOfFs97Tce5 zS8ukEw~=mPPO4EUy3~f|$WnaXY*4qJQC;Fr;MpiQ(lOihbG600-C#A_(kR*WAY+)) zXKC|;lqlQ!gZXPd7$|0DH8gL2iomFU&@YdxOjOo~#Ac5rlNP(qEf+!A|ML6+u%Y@0 zcnE*!hUEPkk0)0CFi5Iifoz^76}j+JW=IurRRN{B#%JVD)(VZqv*+<S;C|mHwjN?; z{ppWZvpGbT)dHANy=wi~EOu?dwysiIo`Jyxm4LZHqWs${aT)^gZSA=JbXrYrly|Ta z@`s-+s@oi14JSE9zM3k&UT$siZ2LE#h~&VG@dOe-@`7M+dY7Zj(7o(3?2t~rr|xzR zWb3z!oafdeRPbY;Om9bsGr=@O*SY;>@Z+@;84zKLz6NA580!e(e$TBeOuoV)AD^r@ z4e^!Jwg<G*_+Q7`oN)TmC`>3ip#f34dt#?Mbw4mOd@`plLl8h!1&T93ZixTI3nLuG zpyXQ><hAaFuVk-%(~NN+W(4P|x}n5glM4RyGu7Ry>2KFq3(L<fc6G<coPSrM$}GM( zZf~y8?RiCQRFDO}Sw=?NgV&QcVz;Z?e*rbM6&uaUH(vL<7}Z^ea#G#^mhzpAKzf7l zP!cb)V-R>jx8TiFmBuxYb5-XnOL9vQ+4U157T_<fjO?`4{ch=~GSX=Th-CYhvwHdt zeJ(z+;pPP^jOm`;pFz<Kf^Z3WXmV0*g(+G+L2BT~wOFfPa}j!6)+*@TZk~bxvN2^5 z&mRaWz*^5nZZtYy4jd>iB~!#^a7)tuy|yW)!ku-L<J{ZXgyGrqp1{Y5hk6hIoLez_ zW5Fjgx&-^Z2u>4pqW|?6&ur6p@c-0-he!oe8z5m1*(xvMm>j_CE~6i7`#hO7J9%1` zw7;0{5h!${nJ4yXW7dXK55MtipVHDlGxF|`p8r5UCG=$11slx!{L&{rk7lh-7VXz? zFXTS4++Sd*84ZpU0w6BjMb;Ph^9kq!tn%@?8ABCQ&B^6Ee{DFz56%l`IGnoX<S|;} zpNWS{_GLt^9Ytb&93d1a+gP#jv3}^g2y$N$-X#mtH}M0+#e%#!QuQDoHEjMo?)Gk@ zhQ0~x{Vn5dQQ*h9VO3H?mlwvA@p0}IMr!77{H!;4fia>ib^q_u|Ij$>g;>j0Ay(EC zjqcw;Q@RIUXH%L7AuNwui>5J(&tieF?H{SOX;I@+GtB?vD67(IK8tAhib)#ohfXiM zKXNyWXt?6lFl+HlJUzYuSmgpms)Qwr&Rus{cgwf)Rc6M}RO&iaSe}EqcxO3<-kfx( zkGMDDRC%@2WKpmr;fj}mq!OO=TluuG=LHrD^Kl{A$Yk5BU&19&)mVVt=bne*WTTpj zkJ|Y}$t`>B!{oZmR96E1>~M%B4asAY8QX$g88pVn@;6#R=nT@@wX(vVOG1%<Kk`&I z>;K47jpbf2?k8kgcZLb7Px1$;(p<fXLCc~QrBThx9C7YgeH8*Zx;)s1cf%b)4bRM7 zj5qi4;BZY2)1@U$=<0$U#4eliFmNQ>KQGwXXT?&*deSsXTs+m=S~FvqaG-O`X0yrv za!}Xw`ga3|ms3zS!P?fCH!w5`nOeJfQ_X*5t(HEi6YLo|_Vb5l>rNeF#9sOS9^bK( z)+6b{cH_8^)db_1tL)9!MCt3Dl#a^|!q<U1vh%WLXoz*DjV|vuU0E~vA>mCllu;s) zMq~EF{Wl`Z9EIYIwUcrE%d0NM9G+nA%68twOqD|)lhsqYY1u^c&CelHvz%Aa;W(O= zxfj-$$ma5OabY(pawM{yJ_1xc81sKt#WuOSNXoO8rq}9zuPO^b1x1rY5toC%-`>N! zcm_I8ScJ&s>htFlh~$!}&yH)an96~`LA2B=TArRoRP-mbcvlD{?$xvz%tOaT!CcZ< z2_G2!wfX;=(FY5SDVywe;LwP#XwSflUbZW9tiP4rK71p-Dp&eG(xaKYw=n00@}WNd zHxG4gRqQ|xtI1qIc<P39x6O|o^^8OzJtIp&X@lxcu{gs9@lZ}ugC*1dgJE*;LA)J) z3~<c6H|}?-71O(NiUWc9<CV91lSjxfM~ne8h-xu2#DIfQ_&Q(?#f5Z~mSY_l&_LxZ zVy8H}EAq-Pqsj@|evnuvw{#WOlmk;V*$f#dLsxSG+<{4|<xd`!a<BCb)B)4fxIgm$ z_YG+gCo=Xs2MRwDqRN9Wj&w5<zo4DP4;D``cE&xhoVVfkmBiT)CoQk!adEwtEt5<0 zLuF9l2dhjEbRSzOYP^9~3u#IR5LlYC_k%IklOLx_ReeTA-O=%$GM`Xs)MnfBp2G3j z9uJgXe$LoC-Wz0QW~<N~(Xb&kA~$a~3tVC(jmAXQkGV!U*Fm17?aH3R5485hKGl;g zwzaRawtlc#{}P;6Sr0(lvKDxUGi9YuW~74<Eh90s!zuL=R^hO>KjEX~XRADV+gAf; zOgpxTnw8dG11}9gq4-7Zp#zrv#get8A)+BAlyrN4hPErs<C=76)xW|bc33U;%07Xl z_ZK(EGLyiU7O_5$q_1zai;n0N$QQ*l2^v|GzK3&;aNs57q`OJ%S=uv&i9&Qw=IeDs z?_hxffQBK4_0Gm#sq>LOO8a}*t3_UAT$2t&aex?D^gG?37E7!54<z34U~SO>iJjU_ z00CsKLsLROn@x6c%b%)-5a}$1F3Up^@9t#1B1<eJwAXE~h{yKGFUSCPan2nO@Jcf= z%m-ecCG^qGOW1M6l4|skz^KHZ47P5B8i7Pt&XKuhS^@S|9X07}QPRIOnIeV6Dd0*s zGI_Jzc>Tn)S*0dQyV9pxYfM1o6)1vWOad_?4wXkgM%S|{fDw|iKXX^NiSe0wU8^*o z4f=s|o_TKq$%Yc|Ne#QG-D_A2<Awq1@Z|y;9>v2T;U_L6MEaykVnm$M1k}(?U?`O? zxP_ftd-Gq|NQtpjWZ%bi%uP>}A)%o&M3&0K!B(Pd{cqrS!5&zVZ8L7l_Zs21i>XP3 zeI(saVKhE)b4wu#OQ--osmH-%Z;R|@TW{vx5PMhUFA3Vw?;DeLa6bbdM-A0m6owp& zJ419}oKne-S?o^X*_zJgrp(z&hX7_9^FVk<9u}SI9N=*xIP{=x5y&&fr|o*VJ<P|( zph}yuJxqh0j*ZsE#H78gAf-&M9<@Ud!pYa!!?pK+_P3e;+J<j9Oy8Tv@tBx*YAham zxYTAx$um3$#k5TkeI56dg%nDL9DtxU&ue4O*j}R8uu)W&r#HKJ(|41SGTU^drp^<@ zWFU&ArxnpOHgR#}I7%m8TAPVH<w{CC=I>}Qv)_5?64rcYuc|Kqw`)Jjy=rbd28xb7 z+Ff4_T&E1Neo!5WsEy$7pDl9f(61N`W&5W9^b(TYll8OR_9nMGGC5AxvU%mfZ$$5W z^wGJZ0~Ryq(WUuuBBjfS|8=3w<50&vc_D=j%C0IA&Fg=B)IB$n9J|>H!c#_bAb$?q zKizl~`i%KFsRwou+oxCO2+G^Tf`5w(?)z!2wX<=};qF@HiQR+sA4NBdK|sWcNwE2| z#_n>^!@Fh`KafTj>_D=JNHNGdoq>f}Z1LY{DMQUnn`^k2d~y1LneIiV(>>o5x%H-u zRzbSu)UqNuYq_i27N*YmGN9d!(gqNCfJ_6-S_>c+rwL>k=iGs!{J%%X=)zAdo{#<5 zGWS)+N0;v0=veq35!8kRbi#(-l(>s@;_2$c($g-x<2qhpSBMHH1tLR7T{&o}ykKQW zHewtbo9fij)8;nu&CY8c0Y0?@xW79Y{!RC9Y!K*#$J~paCF)%_WO98?R~4968n9e- zO|U;Q*-y=UGvQlbd32;sJ3F&|dxs$S(9DLYC+b}m-|)CqOQJ|;e~99HQ0HK+#0kC~ z)8E1x?M3u|h)LM_HLx-+P%r>_YexXS%i)gj$t?f3EJAX&_L)U}dbpRqQ3WUY3Zou# zkjczI52uvslb8{-F?E9oa^Z>M`RXG>HlG`>BRxDi`tI_Qfk=|5mFf10x8v-_&<@Vy zT!)G$+S*SFH&1e3QAZ~%xF@-1V<90`-6o19Ef<cz(&HulmbjnT@T4gz`AVAdy&F+o z-%t6pLP?(wf!5Cn<R6lI3i)#yN;nw~)`{$*TxQvOlmU+ONLdfE6K|z0fGc&|w3LaL zOqvh2J8Of&1~2tN3PSrYN60T9vNPS>@&bh~4yT9;m$$y6VBezeBwCMO4FRO3iTe)Y zvWXRCwHLv07BI!kwzJtOyyAlblEqVy;&`M_D5vH-U<r_eENHbd(dO1i_l?G<#$TRM zfTCn{)T9<=B|(gSc-iYhtXgbbdJ=DeQsIXb2Ld#_^#^6fkZL^BupCB>Sl!a%E}$QC z3DO|8PiFshlsw32g9^>c(-H&YN|OXDJgvF6po$rpRz(KciI4k_kI35XMR<R93+vF8 z4S_oMmxh42$2~DIdxWU`D|fJYPzc!EkHW-C-5YC7iv$l|8&hdfz66E1gkH7IImSH| zvOpM!c)YQIz(%!f9fWQujXNe!-KL`9Q1fQZOd#xFBIn)Mq|Y!T;EKVsp#-wqx5;?b z>q)2r?kks&h2Uuvd9*xFR4cOAX19MY4t{Li9z<(cd8!kvgS^(gNK6e9`YE#Yp5~4M z{%@NGOvb`&1|n$kvmGwZNeKLF-{9AX@g0efiNRF;^3pc=;zlsuSKd(MWMg_FKat-s zs6S3|+^3ub#zeEQDBFD9ksqqLmx-3^`Hwe0(INa7MGt^wBt-T>y*Yg&Z%}`7EA8=S zy&`1`G3h_Juvh%|S@i<4hR=v<k7ixkM=hMhy4>jjkUio$QuET$X8hWA_Rgg|RoU6? z@~gTg;{1NN;P9!pLh;z}_Fh2+sci~~AtPGKH#fJi;#3#wd@T2yY++gd`0L~_N@;IS ziL-VLBg66Vt;OL2`8;;(^O3`%zCM}MA3O*U2@PTLRU8o^L{T^>O)X^PwA9K)<zeUr z3#`M!?MAt4WNvb><;Db_y5Y!iu!-J*RWot+3>#ttDI0pM?tEg+4SC6iAa1d^)}8Mu zRsF0e$emc2`gH4$iD8+W!aPUt?zFqufp6o`R0Rf)H>;CcC{_W+gMj|FUQUw*k1J>_ z>bS}p@>jtD`Q(eEYA`SVp`?;{U?lw(&1sG2*#+`v3chl9V@0eN7};D{8D)&e;%1Y{ zTJv@sVX)3jN44`{%ixYl=6N50g5a~}vePRq%AoC}ohkt{WrNQddrfG#!nzO}dJ@MS zd(E-}Sw0eL@AH}|w_@~?b-{5FO~>eT%g(^nquji>zX&3G`n<&*Z|{QBO~i~oJz*+u zpn~5PT?K?A#JXp&>P-Xn_4%C*ZiZ?3a~{B6W|%>A2O{XlU!Ftl<k3$Wdg-fa?d(#C zA&2xP0y=IyPc1u8tf+A{3GKTYUq}9ybMv}q7<#ecfSunh0MG!J0!z${{EgfEsbwlT zuHpgl*r;_nXBKs_uV+{Z5Qoo*{gogY02b5AYm1cW5UFy?lwjYds{{wkal~plz*Ddi zA8IOBqWv}6SiiLO6sF#igllN!LKlI6|G1Xx?`=lE&+{Xr0o>Q6oSoN_OYhBg2rO|* zAo@pj5v~>aaWd%#aC8~x`YjP_Q-%do6-r@JBov_Sjxo+Fp`>iUHO@W_1P9lnM=Z|) z>k%$EX{I)(#l$Qo4qUK$N(*u<WYN-iN~AvkMr0<HSJh|~$JGyVV{oo<yF=U3?b2BA z4laB~NL-b$Hn-6dl1_YdK`V3DQvO-=BI+E+Z%-_kioGsB9y>^#+m_Fv8x|xLCg^I~ z$>Y9C^AQ3tT!e(y1)1G);w0FSzU3ozcVU;OyRe7%)F14~Tqw0-7Gl~CWRuozVaq~p zJ%Dx$5Y_YI!nj9;NdX1iQ>^;a&t}iVtxRUtjuioc*DKwbb&cESw-?v0+Y8sfn+D+V zk~}@84w7Y+xB`HcjdJ1?#)GAQz^=1DIBT63FO#ON4?L5lBxV3)AOUt`jO58Lw_IVL zatf4Pi85LJb4{7xOggisMC0Z~EtY5uCf9_0{VewY&&icnln)&uj32b6lii4;=8&b? z68R-;SSyH*ZHA=Ddw502;Gurr>&32&D$BIq(&3w6Ae;jBMQdj}R}DE#z6K*YI2NWv zpVEBt6$Cz|FXS4s-N_nLiiaM|o#`Y$EDv9EvcZ_1rln){yD!a_N3C7Em8K^=SvT6{ zE}rcg*0$qZxmBA11OqavED-7||Dpx(U*6b%QUhPLQUGACmcin*paRH`87`elci{<6 zp-uf_eXI`}l3~}A6A#31s1J*swt@f~QY7xp4V^Os;|R|h&aZa&Y7As>YObwaBZpq! zW1}3FPtPEZ^S6qW7ykHX__BroFhYz24DzKC{$3IPu!)T;dcXm{NVOERKAqPAl!sRZ zVj2K&$k+t=0zs41&=<&{JPo~Isfek#399LLXBkd!ONup+M9Fjv6iW|rs9TXfDpx;{ z;aEnw$rE&GB0+1nU(qesMri3h?R7DKdB#NqGk?mfDiO@R`qTk%M8|tGy46402IK^I zRGZA^yZBhWA}}gww98TU$$)hPsCFX|pQvh%a$W(e2oMhXcU&fT%ECgq>-GW(Yl(&J z8W>nGJhM)S>N|I9amvkR)QVuA*OgJP8PNe*;2b|5JHLnS>Q3f9AEY{F*Y=(xh}F)> zqEd$H;<^Fp({O2?EejBcC&^=4ea-5$8UU$rl{-`w>;^J&{aI`7PD#;S)vMxzh=3C& z!<>Vqmv6CG3O&&^5f3%6HZO}YHs7nAooI9Q9fJLSiwdxB_>u0$X}9>VTfJxe_F$7$ z;Gn#aBbDgAR>6k|fJo*2qN}<Ow1}5Mmpw`;Cb#zpOFe$sAnXk1)UCLx$BdR}pnua{ zN-4!je^|b0fjCc|-@`qzGzfmrh?iV>Xrk_p6lo&M>T4XqtV@_0vkD{QI*UTsOADXT z5=4Kwim>z>Up#c7I1RJeo+d4Y^-0c7Sl;Om)kVWnlOvE~e?07EeOb2Efkg4^-ug!J zuwhJjdidg6ZRG5JU)}Xr@MY|XR)K;hg9x-H^~s2r`HeRBf1sW>;au%Wo_v?QKP!B3 z*7_tayklstU9)&F@f*8~*5a-Pv3FdiPj3cTHfW+w9liwMA(?Tnnm_Og_{Fn7l87Rl zylJ`uE?3?DB>!@E#hhmFdB~)&fxqCB4nxfEA<%O49U6WXVEJ=*r(~b+W<6_#aDShx zca6!73B5Qq7cX<V-Z5lGN}vmmfR_g6G-g%{zxmYRI7J`jmCT1Y3=SwZQrU-HyOFFM zr8^<#W6y?gx&hMX1Id+&KevcSZec#SZ<c{~TP_lj;5^lr1^orUZ74%hxMpv{_p1eF z{EQk$!jJCi9On}qQ03*3RqT%r`7w5LANrMp1*9N<#Qr0o7zS`1dWn})Fl#RfR-9=q z>qQ)udJ{f4IWNAn?il)f%vq{Dkr;0kuDgtu48YZdrM>ll3AMVF*!+GmYt&cS)#^_@ zjsApFNnVvgkczdq>E?G^e;X|svpuVPkh*o`c|)>GNI<azrC{xbzlSIC)~DNQ1G<?9 zbdz+AJ^RyfXM~nr-o}IWF2|+GKascdaF1gi)LjOd(g~X$vFN_m@JE7E74(_!Dv-PY zt|aLgu0H&{&mPo^!*;~@1Lg++*#R%#;by6;bA=mx2_Muqdw~z+lb&91U$Y2@8BeL) zVwY33Fr^oaq*Ugy5hZsN8ChYchUkzVA4NQg6F=EXA2Y9iYjW8O6LcDfU$hT<YbN%L z>`5c-iR$dQ!nX4t_8pbB1wH0e@(dNV^u0W#fx66?3OR}$s&dyu+vvu2J0Yd}m;)Mw zD5XM4at`{>Udhb`!0IoD#w2~>?!{GtpEOT?Ak^cH>bl!L0o&oj8r`F2Lk=DYqUC7P zr*n+*s`c}T;}yk%qY<BuK{VaV>rr-Cc2wi=Ne$%!1Cn_ozDLo2vktLo=G*|wf8|r@ zGA36O(3>t8I2^#Ig!h`zE(%*$w|3*XzhAqpn{pGNibU_r17=d5K1%#7OhfR_{a1;6 zhoU780EeD9!JwNvSe_Kr-G6Wd|0^Q+rF}&kAP6D1RrU`lm`8XZwA`<=KSA$7{4cLB zW#0r>6f?D#{>NRMk1hmjFo9Eo^{4*%s-K8%E`W#Fc;3qVpSM-(|2n@Ok3`q}&%0R4 z#9#D4u+A+j?Q{{&1~`1D$=k$ts;(T5`*iay_+J_Ll5loZRNn`O?dfrB|IWwL9u|n< zuxk$N_U>PRLC?)wu-lL=>7Jp|?s|sBF#02P563+a&;45QrwZ&40`u+7H(+!*;>_Y` zW|Bu@q-3SosN%fIiIz?<^6<j9w5uLX07c4ZS(#ut3jH;ldwcaZ<7=u`12U4gLmLQ+ zUrf<>9HskO{-mR;optEoh316jq!|3ZIY$<6x;JDna<l|=UkU(pR0}_jI&L}=Eta|q z?2X_6em>EEl<zik{!T3B>ePV4MAQ{GqO>+zn==IbrpLJuIz*h9IYsOkaPXv@oGXc2 z(oMve<AJs8$_a!RwPDd)x?1CyMLdsr?bSrPicBreZ;ZLp?I;_yQ4`*T0&7U=W&9#@ zIpmr14DdR7Wv=~34ac>T4<W3>B(I+o|94aWt^uTRc)*Ewdu>4wFqy*E?`{zeL^(dr z1Gbnd#w&4YzU9FSHYSX}txfJ&1G3I#-{ET@pdr$AZFCg0V{X7HM>+UG$p0Sv|DL`7 z(RWf>S`Nyt8q~-zchqtex}A0jMgQJ&6{$35I5}WK-Rj8<J%A;p=f!p;l1B}7*A^d9 zrKr>zM<Qkv5*C{lA1vGg#6uh89`SU`&6s#!UOtINJ#1-6?z^uHo(@3&hzg$L-bL_l zRxJl@tE`^Vzhc9$iH@3k>u{?>tfv#EQx%>$)vN+ULPPzazOK$?VXw=vC(zS|l?|#W za7g4$bVgP@F=ZP_bbV?mCRs7)h{&fbUyfTf#4lzrwF7T=G2gWGWN(Uk0z9neUQuP1 z%Y6}IF4UUZUr0|D-tw?6w3Ob=$M2oATI(tFa+n!C(f5H_>MWZo*Q0t!=YFWj|EL{X z>p<TftRtEGXj~k!^n^3d8!C-kVWfK*$wCh?9RkuQZpHrbq_pkOg{%Q!=SPdgi&x;0 zyiVh+ILlO2@eg)h<pXb8-0k8TKJ^1=GD`d!L=KzHx<JkAsCCRKATkz4{;A34s3G-# z-6v<B=+-|qiELg}`PY3a4U0PcPfZe$;(zMXkd@8he`?a1DE+5C{qHdh9??s+ykAId z!wXN_NsO~(?JGgA)fv8z2DW?kI_`}yerC00mmWP1=dMZU*f{o){t6P{9}7%yFs0i~ zKK+8f>Iao+Os};lEi_9&Qca#Lt3LP9tU%!u?8kx5kt011G9Att&_3bgsJ9-AdX@jP z16?Cr^LlQULM&UtwS}f^(d!k%#<@pr%#>mpw*SlDl6tpr8#@VD0<W2@xDd3~xfFZG z-I7b+6faO`t4?3WA~;(t9}DUtqMsr0*Y-@wGq3PEr=5Rw`Pv;_Q}wg8_PIiT;A8Aj zTg5d4PzuWV-1h6z3b)EJ!-n3u4|X7%*#5iyuktc|A?r~z_s8GIt!Pe~?kGJsg8fnQ zIm#f!Jjg({HKO*=FG<tYm|>L{Wd#VH5$SGiqCy9cCJrx4uh68>#Ih_iF1B3Thx53g z`3aEzYN>6Fg583T9s0Q2+2MJ)O6>XZlH{S{Z;G#N=xDO``R6H_0|jYTH$V27JQz?t z9xHA4Ep<L;U^jQ<srh@2jH=nMvsOhI?d*8`c!!&I`7_ux#=AOXCNQ$nQc92IK_RvA z(lvnv+!7*vRG?T_+-;AU9Up2qvV1@(mcZY29qGI70O$gpsK|8p%~rzpyw>BJ@ApPO zd&W18?Hu*Z{-<KyeP+^Ng}|@>%W5Q$Ki>Q)W=3iq1DuvVi1k2{PU!--@0A`78XDz$ zzL=>MzI4Q-`PrtWM{03%hIFtB$g1>N+PH+_TVjfO(UTE}JAzL2zX;k#jl3m3nKbt; z(vI=S`C^CYNc(kYtgapBxzaU&LexZ^RTjQsRxXi%%MN@3#_zC+?xpO@02Hx?QNxQ@ z{L<<ddkz6oWeRJ-rIEuUko9vN1O6bte&tEVZvAQVhs7687eS`cd&lBRAG@R}k9~gd z=Q#P8LN}S2iGG4E05nzHTAhfd=(a0fj00kT!jHlAPj*tO5T<z8)+zKEMJfwkP2#6I zsn-JW)DhJ1y8EYr2AKYQm1uRAhv4Y(u;{NrwoSC=pO>)TkaDGr&M4DE8P4#JhZZj6 zYfmyyI|txR8{SSu+{n!xZaYTtF?IGhkD9t*v!rQPPB=if&lV4w72&NX-Z{g$orl&u zKn;_tnm%gmDMPZjavh%Cv*2k}mFe@y(5oZ(GaL27r^LEBvEIR42L%7G4U%sn;+Iyt zE){Otf7CV^Vo;Bvr^}B-zv@PMz=73wr~`pLDOpKT-__8vf?n$aBdnQ`M+);E`{~|n zzUi(7w_Pw<=xH=eJJGQEYt_*4UxGw{h#WKp$X>g%+W+-SFU|u?_UlxDr60!QrAa~@ zj$a1^sjdXXWc*-vv33<F0SOUar=HBnA<I}t+gsxM8-G0MfOJJsOHMb0{s|m|Hn7p3 zcUAho_V@(?&(V85x(S>!m~iR67caru>lZUSAm`9+za3Ug19`syHC8~cs^XdEh$+ZR zlIdmHe54(^;x!ePR#RGrzUcw4mcBN0f<LYr<FX(}B{a`T+iw*Yyrdu5Y7zCVY(O8l zrgsO;*N}HI!X4}R{Cj-X@=csHktNP*Hpc@F@d5S8h$ka@lV-0)`08^xdPSp39}l3O z!~|{ZdJqc4=UAYBbq~@g$H36Jzky^V5*7QbiSbJ485r6D9LK55{Kxp)!)8|wv5xkA z?HIWIcaZCzIb{&Ses9%~#-!e5;5(kIXmqwa2__YEC}gb|I(Ns!G}@^U)0xwxQD)iQ zo!IxvW3+UB-2x_g)ZlJdm6MEn0qVjD{E2^-(%RlGorP0?qwhh87xZ-GnPfQq7`o_w zf4q3FbCVQ6_z!iJhzFb$n>09OlkX32l3$!*0I{2zbnxn7ACh|-&nb%{*m*%NL-bE- zO}=Z%s5<9xjC5*#588==2ccY(INMWgFOjipL#^d?_4si^%9{3f5@sx>c4lddC0q~G z^0FDf$y7ZVD1I_KMmXy;e(Sw!Brnl_b903cK)$`a3^>OLjkGI)GREtWr9(_7CtVrm zuoA`+lZw*U$H|orSYk)5KB2C9Z63l>B3GtS9`3Ff5i@G20%Km`DXGcKw4+Lts2DY` znbGd<0xF|4ystE5sk^wm3@Yt|D1k7Wf3Le1Sqp%}P|mQx>vJE1DN2w{E3;l%H&OiB zQ+U&(X)OR~Hcprd;A*rf9koE+*mCD3z=j{qL@1lh4OT*FR?I7ub)%YZGRcRS6*0<Y zSuskOP9iZxS+^JON)u<OJ{++B|F^rP43+f(K%DrV;&X8S)Zyzck-Wo~HvgzyOA?=H zFD}RL(@mpYE%OId6uECV)GM0TM;CI@l?U@?fW$D|06VX$<|trvYAAKpG%(WgAL9XE zBt?YZraVCluY7t&fDjKr^l!Pe^^?MbI{4pD;D6&u1&?H*&P4ncQ`=s6@#3O4fGol} zW>dbb6nl@y1YY-XB!>Mlq<xAEZXOUK(z-KiKiD9{uIbx(vHOm2I_s@I9>HBsS*;mz zyvG~T+x_$iH8eD6MT0BDp4Pmop%%HhidJLyQ_WX&%1o9bRja@d>dMn|5k9e>*9a@y zP9!C1*&)RTd7bB(C+%Nb6jEN+l1+V^KJ+;+AK&nM2=M8*CS_QL7JB_s^Ji`*G2`Bk ztaT<IJsO;1UtKk9Vw_5|VE^$+#bl{>fL%*Z#pFqC)YyR800?fX=GN!nY!-=lG`Fka zPK6u#{6(@=b%MS2fy6Li5tkH$`5IgAU;*Oa*hA@tW#l%r%inPc?_gEN{7fgrF{IAO zyY36n#4zO^QDCgR9Qps^a_+B7R8&QS->Q=PB5lg?o$UiprdR<`oMPduM~rPZx>vZd zoq}2RsZ5<7TVg3Vz~a-HV&AdWB5iB`N=S&nD1J;+YKJFV1L+tXPhu?FrZVi7+m2Uo ze3SQsvxYUnCaa5`nx{j&wHXJ+G#L(GiQubly&Q5(a<;3hT-!&#ny-Z5%&Ts-Q7WC? zY%(LmuBqx9uL74VK^7F{<<W)zpI_ckC<1ZQxdO?YgxkRJn2G?TSq>s>EHA6HZcQ^X z>~bU9ok1Z&U`Fh@T|Q&ZvhwCG_JECe%mZ~h^SGtK6)+2vc}5#4cSAAv>$~>%XROLz z<Uh^<WVIERfd=fDPzU~<9<KI$=%1{wd;yu9HWedsUuJ32#aQuGTK5~pY?dSW&Q)gQ zXxG5|!W;J)6)&48b2c7xjh*%d{8>?Oryg$zkn+HMsLR0?ul9=b);_<Sh3HE3D|7Sz z+9*DG;WQAjs@YmHp=qPv+V?>#k=~1)+Q?_-Dtjosv|`U=CJ*G9wG+pk0EuWR9cQB0 z3JzWGQW_89Ww108Ad-)?Egsk)geU@Jf7%m1otH%aw{H$^5QYw0BM&3NGji)?YV%e} z-1T(_nfqV2fRtU^BEN4`gS(~^Aul4$9%B8%4h)=eg84Sf`R&scwrblY;2@H?T{!x4 zpH#jhq+bT)MRu?JOO_A<Xdr`OqC*$3#>=Y!ZP&N+li$CC2S9F0Hx4ZC#SmKjBH<;W z`zJubBQtXJ6c0GceUe@K`yV=J&0HgvEKj3iw{7&J^|t=hB1ZC8x0su<9?GvkWSS-* z%xutCx46^NEq}_>C`1`Cqr71UDriwGw(y<r$h^&8m&PYnWk?x2a7a5MEba^kg}6J{ z+Va{9r;jR{EG5v~R%d5J7;e!RS$sx1S$C&u5FF6zuYhR2&=m*(5Woi>-4ePRcO|+# z>b7oh*uoa95?Um~{x%_K!MT`%hCeF}o%&;mCLr~74WC3g<BBe1b>())mnQlJ(Sx^- zKgK&e4VI)FwlzI%|KYDyQAPW}DyxIhk+LMhA{JBInW+=(zBlO2p&s2gFQ$J(#7KwI zyE0=ImyxaQ4{;!hZpH-4<@a3Bx7}R(p_xZLGdr^MLgq)kFGEydsCh@fUO=RIXrk8+ zH4A-#inpH_&-0D#PRX|BV0+=RpWroT*1v45vs}kDjQC2Q9L%7_@EK>d8&3}p_VpbC z3d|w^5qkvoy?S|i?7fP>G?{PE`ZL(|j#(2>lli{HioK`9&~F|91-&|AJH-G<WQzji z?oqkEif6etMTl$@OfM}cwe9asm%RWA&~^Z|S)?L+e+ZD!ALR_gIexeWN56}@LLl~` z?71TZ^7oFnmcSIR7Vo*s!^2lLZZ3!B3Oy80!zLf4SYd~KW)beqnbgA-P86DNY8gHH z3pL&;mF=BGlkGfXMO!ogHVleV|H+7c;c&%ZMpM75zF!6H-o&9KTjuWE#s+*mS(<*( z%vn1ebyUq0z|nC0_I?_cMH~|(jgPyL%GbCPh~|UPZ)l<uX2)@o;qr8gJAnX2E7u$- z@LT@GbAJwU)7$#Ob4+`SHqJKzD(Lcs{o5J=KKpzkqZ9TM^E6Fv0*SszF!fz~hWj6# zakT{sIBC)X#e%x@g?TmNeQjSAwzp4rpt$!Ll;cY}!+u}eQWO-#cn=gbC=oyZ`CZfs zy)kfjJt<_V?W+s!07DP##ZJmD@FEN5a@<3tEoL>PKO857MG6jjB5!v*w#Bw59qE7X zR6#Dai>Zad&djxg?R-ue`I_4qd~{)enTIsIc}G@54=^hZ%&b&pcV;>xExYo(Lbvnc zXF4wh`sf~hd=+>f<^Xm^`Tbel`WeH?D@SUsH_WNmY1!%T4${(Fa0@8kr+bF&PDx>X z)|iNYY-(w}_*84GI`u@$b8F}?mhFXK=sW0S1KA3^$SyNyJ8}R8zNG{~)L7$==D#>~ zF5x<!oGC5$YB=G*8f`-E@o-UUP!#W9nwL)de!UE2LmgZ2*;0&I=N7uwv7y+!ous4h z4?y2M^2bZRtN)xc{zWe|{`MDNr#%WBIsUHNP}GY1%J1EeUw^UFyX~{#=%&fnagBuj z{>5eDI!ybkhHsk8gnba!m1auWm7&;&n$%eh*&c%^{m7`Q-O#m_zzkuCVCc8hw)sap z^(F`YG&=3ep>FT{Fqu<TROack)juN$xCG(BWm(8<VK4v(+r<Y}@%MYDEm`B>TR4G- z5vr@P-LF>yF#e+N3c*j2JJ7dSm~Bf1XS+blXF+Rh>W!jTo`HX^<-`^JO#I!lP5_ms z%fPiC`iz@6(;s8L7W2FmQL?<0Aj*x0r>UWb;fhTk1F}`bDNyiQQqxars>K~s!*-I5 zY{ICEqUX>Y$c19p+37YL9UtSGrAUCXj$G?2+h2jRrl@$FqOIrCSpT>U5&PeF7YMB3 z^$8y{&UUVl-uzagap51m1Q5#d52{t7<iM2?te@f>;=O7qI_ib<TkWw3UF<qx1UsML zB5gmt$%nsDyadlD3|Th6*Z;@R(D`uD&jvD|!`t)njM1RyUg)VRc}3%z1>Oclv1}>m zJKG;GiNC~!MjCh+kPpSvoccDhL7sGHK<(LF@q$Z_f$64w?aqbh5=Mt(0Ntl0;kH-Y zk9vxHJ-E@kjg1fNP2ohW{OjU~1Kw>P{O&Y7Y-#pqss!6k?e&01_T2x$-DkV@q%kdV zZYA)NU-xVrF5VUseqIgNYOiysj-kp7(@}5EL6@7)G!=2Q-FJdi>2BQdg_bdpyfxx^ ze)Rkv1GU(ptNqiytt5eTF)=G$!vOpfd%NdcR>q?Px|%vZH>+kXtKR7`uVxbJ8K<%u zycxSyiMge%Wl3<Mm!gkcQD!(?rU+lIR1^KmMCmw5l8O~Yig~a>>^{^Ukg9RWnWe&q z<uB)U#q~K)%%)EJX3)>(nFzf$LOnCW(w}NEN;$m7<H37CxiM$hDXt1vY*Ya+srKAc ztx!+;%S7mV)d#qQ#7Pkg5Lf#k{@YSkTdjYQa@rw$7QkB_Z+%h5R}4aSHy<P%S~--M zi<N*1|F8DG1ggn1{kIMlY7tU(6og3Hx=<B}h%6C8YOPYGLakMhU8qLcAs|b(5vmlG zFiK^IsHlh#5GhL_5EdatLLwCs)&vM7K!5-tgsk8FV&^||=bZmJ_uPBVz4O2K4st$| zk9T?A=iPqK@;<LH@T6wzo8*I+M4iLmE$SL~E(+F+trPG&e(Mwl-lD)-&yXZ0FT0)_ z3S}P`4>~~gsjt_)F_XT#3vW|eSH7wgmPf91Eme1;_povmRp7FJhI7Ivz`H8HN}Nx# z#f7izOt-tDL2G6+DlIwtE(ZJ-kIb@I`4VpGy2B#*9q}D;^(1#&ZQxdJah|q7n(3PU zlss>)mq}^<q5AdC)hlWrJB_0zrzNO?yHqWFT?M{=Q>A!OpeuTyKp|4PN4>t%U>Qp9 zcd1<p26;BIm$l>v^49;%5f>K|*Bt?lUTNnElgUgwpaO;8Dh}viw2PA|9S2a$t9)58 zQp7JL7Ft%1CH=^Ra*+Zz27lnX{luvF6q`*Qot?jw8R~)}gm;zr2%oTQwY!bDlUVJ{ zCnbvC^4aRa{z=Alh&u+#Of43-jz9DTMn1&sA^Q>bfTL0`ATBpE<XC~ig^{*`k^+RK z5~;^uH^Cu1eGk3DccqAf7X)5VAImce-s%+Uud>g=7g{!PXOnWgpCyEoT{zVBoyE@8 z2>;PbwfhPqbJ6_K+uXs?gr3y;Zc*FF@WXVwt1~Q!KAfO$1cUXG^z_M2@jHjYcP=Y( z3}U3^D5w`jue7eKt?hera&A5{j5jB$3N&klvM--;0(n79zCno2jB80MM`;{I{CSjD z>23DCJ)z;@Yy2VNJD7i_pZ&o8Ls2p`P^3v%<CmZ76#Xps$r@*BomEkP&kR^L0IzJ4 z0LA@T@UVXX&}m?pR(qS03Z;3oPBf(39pEOeyk53*f#vTq*z7ubX8N%zUqRVIMy!k- z!?ienx=(`0rPl~4T5=HJPZ^>CR3J}9E~m6(zus!^kd4`|AYt|<f6VmN=oZidsbubl zWyB<=caIZB+pEnAcnBNaT@=NeV}n#l=IQ@Sjaat({kTQ+iv_2k=xttO`5~@}BYVf= zHurpHEzutuXe|D^^JjLxVV`u6|Lzcp+~@(W(i=slE~WTTe?6gco!qbPo8I6hyi%F$ zXD>7rV;@@}6RXt;B$sgWX0_o31H_WYJL-BF;%Fsd+2M2IS|{D<+GqJ)cZvA>h2JnX zfB)^4?S~GwFn)CneP)||tyRE<DvUiBkCU3~scFRDs3q|~7P}-CEO*cWkTLLUqsb|G z0-TwXZR#^eV|_IHu^wv2-Fz3EVWe2$RCeE>$~0NH(T?mFtsdOGIw_gH+hO4DuOAcM z#UyGBkH?SEJj5y1@G-M}XxiLpd9#<JG*G$9Gh-<|fidUIMH#EPQO9d{$xAX9-$ljZ z{~T}&kuFj?a|7iY@mKD;ruPo^?5sNKdpQtWWkUt)D3BD!tOre8{)BPmCv*iTuYQLW zTv)Otj5fE2e92=nkI3O8&#Lwzlt0F2n@Ef70^%13c;%`iLUy%CnyBp*1(I&EX9>h5 zrwcrYL~*Y+k`eDJJ?z=QybP^)H+M*kdcy@T<-%#(1QR0zHhgF^7ONnAifOAcB1MLu zT)Eq<t6v^E5!BI{+50728^ChHz3l&=q^CfE){KQLkHJ|x$=Z?1oQhMN{i#k4A#1=8 zFt$xbiy>DS)zET1A)RJbN4wFvS&7OhCHp^V*gq9ipn}Lxt2fKPnWSoaWngl7#?(yK zz{LP&0xNNV>V>U}6apPS#I-wWWE0)UiAdBgW>&;cnAH@k_WH$kwY?p#VcxK3n<jU) zU-pRh74_Zp3@5}|Or>-(E)>Uvj#r)Vq<x2eQSFf__=YvAw4kJWo*{g<N6%M^jfrM^ zGGks}7vzPM$9vHe3#Q2U<sM5C5R~^e=8Ij|4>Y4c$GluEp0`8r+Dc|&({^0DLNsYM zGrI;HaI)3ZdiIeZCq-tmBJ;wLIL^bcxfdcQ+!62NA_2C4u(q<?-ql8G(Hm7X$Mq3| z=#z1NcRb4%^gy{@RXIs2?_#3F676%Os9}v2;NQ8+D`S>Ei;}0QD9YM|wYdX}4WZux zX8<ZHl#QrtuJQ5$3kcEiR5L*+CoB{-H{N!xG}G-7i<!e1QkZ0Z;QVOJK&}?s0;m-Q z@WZc)cMe7(QLmM59a76mX=Urmq#_03s+1G2YnNQeA<@LN?=s=byypy3z_b^b^&5)x zd`}Ezth~HI@WNKgRyLtVqXw$}sqV8_R?I)u4UzlG{!w><7DMbW#`s~;f3y+YZON(* z%>~V{Gd6yEf}i~}a8DnF)rz28-q0WQfE$=d8%;k?|0g!MEg%^G!3J6#@VM6TaS=^a z?&ma4S`I<h?XM#4xq+M3M;#`Xc0j#JnS&e|ELdxGj8{+gnitAxQ+Z^+$-7uv1aF&< z_gvp$2&_l_8pJV+rYNB3#s+;8XaR0lyw)uSbb_m*CyGxrs3#-ds6}&=*x%nwOJp~m zJW1wKO5=-)Cy|BfLBfaXJN1#@$nPJ#re?L5*G6ZFUI*EP#|}Wco)=K;CxVc4kvq?} zMcnGN<JS~(%(uww{MVdvTLkw;lFi)RUUd%LK%7=2qtEAq8i_Bm1A==GoGh-5qa)G? z1E1}SDmrT77gv<9OA%Ve_&zI9$bJx`!ZMPPOR4CWm1`G!qPxACc8G80f63e+G$nr@ zw@uK*%FRqmwz5yp(_`xDbul^G)xP_gMUP*9XUche=y*R(oLl7+_E7Iia}a5H;&Fi~ z%3-%(2+1oY;Q1q)9d{9Z-w$1cxnlNoNh<80e<;PZK?NN$+X+=ehQjGNNJTE96)I>l zW?~+NSh)nxRWnccTX_$Z>U;DykrXd#^^XQ|427mJo5u9z5W9AJVdCDIn`U#tZMoa5 z9~8+Z?A(IYET2@LLu?bKt*akwTTA9hZf5F#C6cq@B|o!)D8g&sJ09@<eLs4HR(GFA zdGER!zauivWn5qNtB~DMi<MTTPd{w|l1Hb?pIV6J5_thF1P6Ak@!Z{;Zr>uWgR%0+ z+^qP!3mlfIYuK#px-p((5fQw?xpCasrjgY|!qxVNl$~Ni!G7>J5F*~%?f?(Vcncrf z?5LPKr&lWUXW#~W^mZK*e~7sYF&TTkUcGa|3`5(x`jt_9br3T>`wdIEl(*ZKfTkR? z&K2pnUYWUx&xl|$j_C%PZcy;!gNhAzg-mQYmwDL+?1dMu_R*odc%~P{{_TdEfJ2P+ z=)N;|VFg<%Z5aoT!TY~6G3+Y5S~gz+AtSa55;$i4DM>B5fuhV^!jE?0p#MF|)PIxw z|00)NuaV`wF0Y}El8&T9nBPMBKI7Fah07bp+0heE^!W}>Vhi$FMB70Kt2w{Y*wvv? zonUb2*N~m@glH>!lAyHGSiH~8nsHV-aR}uwXlc))C-(d}0_O=cpox1Pyn-$)__$~+ ztj^teVdZu)f>N;F_i^IDf;`?OQI$$p!H^Rh-lTt!p*1W920J%>r9D2#Y+HXKEQREu z*(~*l(FbDbBdxYZ%Z_N)ZF4+`NIjy>iI!kBc^dQ@xyN7MtKRoLu&n_CSiexUOqnHi z(vQfONF`y5DBOAFcOtUAL_zMCNqB{<U3q*}ZS6e$iiRS8#32gFDt6ELfuf`Z*enos z(=}gP0R9uRjY>f5ETU7jf!A+?aGOmW+9s9YwJQE7k*Q%^_FCR9A0~?>engQHi#R6) zfghi$Woa0&c8v-4o?MjNEDSY{bhqL7Ow1c4ma|4K!`Ek&%AW}ogL+CKC|R}@(%9n) z?ikRxuQt8Rllg&V-HF|U7LZZDupjv9#l!>T+@q7;LR<z(+!uuGe&lXZm^9vD$BH?c zW=wnGhGSPkc%NHL%HTZS!LjaXA66+$sgA|-_s>lnII-FMqNjnrXs5fzZWO|p_~zmh z4{D2mbj~*PrM)N3kuIJ;S3lHj5OwY3eEdLJoy!MeEv86=+~x7nN`FvWL{`WXf{^a_ zBQ0|6B7DRKa?2iuLUdICtDqc+(N<d~@?WwEmqw=BUJ3=4j9gte=yV;IJeOK7ku~jg zJ*k&^8J;9t6{ye9DRMfB$MGGms+$ox1|9jCWN64A>GL#c$Trn2{F>q4>-ZzRoeF|Y zksGPzP3rtDHix+qV(;q8*Y!7SZKK3|Z3rIT<YLOfsi#bJ<=g2hn%~58oUaKSyq<KZ zLb2X$`$u|^u)%G#s6jOS<-$skw{*dhd{$0=b4uIykmy|CBfJf<B%BNmag9`&W3fgk zJ^wjp!@Bdl79YdN&d>+a?kx<ttz-h~SUYhxjpCEOv*)&TR*P?_!;^BiG-&NW?A@j6 ziJ_`^QeH{TOlz9J6t>tLa=2cKxDw9TROgy#zEuE94u=;*3SO;_KUK%{?$VEaG-ye> z+!&grigQCwa-kU}ha^@dbBM0`u@{wI9~BKY2HQVt8D31x&RSe3c#s=Niw7F2onaNj zM-Rp%?qr@7|J++OIyJs<ajx75RT6q(*Ieti1Xu6celPQYE+#pEUNOs4-Y5to<7y}3 zcGGl95McG#g8AgsVW=*huWTVKai?xB&87}JzV5#4w1|5dT0b|!T{^4-X1^QMM*W=C z6FsU38i*XIubQ~5L!eI~q5MxQb0!+3Z7;@NL<M&A<bo5$9oFCSnTJhBj41Vd(|LZ& ztsGmOD#G<S{&=C^Edk4*{Car{-UzOPtZ@8ys#{Lf&5R<*g@p@vm03U+2n++257&%h zVt0~sEu<*d>}hvF1Wf-|6D+9Ja0kG4el!d^#=~5ojP2r;iTRAHX9bF0bjzUnW9yjd zI9YUFhy8MvWUladho3sMuk@B_Q(Bh9%D!48r?2<iAZMZwbVzWh^H`8@K<T5$bu#53 zaH6FU@r)31B{HMr5|c0>nPjWiRlu){SH(B1@3M)@@T0sBN7m?<r)}QO?PS1zvH9sX zG^U{qnjj-@&b}z#ve1cj8{aK=u9gfNS9xdn11*Hou}dQ^;CiZ&Xys$+@9yqA63s1) zc2&-lNH=YU$0H`nZwc(F(v&qOnJ$o>Y`b55vPKK4mD&r5BPSAcvr(k9<MRCu;vo~c z;;ZN(Pyag*7)!Uhxx<;Vgi895<w{f~3Zq$;-9kPNaBC<YykMg`&Bzn8{fILr${+uu z3^KU>icpJ=4JSWQ1w2+h=!x%ial!z$a@gvh@Q3BF_aFcEXw&F(KMLl%|3HtWR^}R@ z7g0iOYQRHJp*BSKQP43)tbl}r=QSlA2(A;*3Mzx%xEEit=H`V|%8Ak34>6;&-+3)G zA0<iq)Jy|%L%~5)+PW~-DrkuSlcH^ey)jAAepu6ZD7;#+OzvBbiA(O9ccXW;t#u(6 zm3Qj*|FrrdkmheFe>TQQ+9Qk2x02pz0UAobkxXB4V7FLuc5Qb{8!I<5Ho#_zN5d4A znoqO>Mbgq5mZ;*2vi2i?@cbxbeKntIo(&A*5L!F<+iM{KVJlxs(tp14#o9KsX-8&n zt^$6inbNIWJ(EK#;3Dad&KGS&zZVj9D;L()t$`GcrxqRqS(`sjmT!-!Gk4&^th*J( zxaQOFO`NEhzb#~!KV*r%ULHzqQrB^r8WfjOF;KU!24HD>@{W62iB3HPot@Y6-)};r z#0v8h3HavuPc^cnO1e}dxPB^60z-HSwFgD7!Gj_iOEmajaaGpH6$E$%8(yxK)2H(h zWRy_Kz-hhVf0il)E6khRl=A1c>cNHkhvoc$QYuiWl28HR-E|F*r~=xsi_3#0Hg4~* z^Vj@$?9w{B4Q%wJ#6K4wac1JeQbNiu+hE$-%Wxr;n-&{i?|e}6D90<5saN7!ZNQky zpYpF?j*|bi*(~fZnOZ;W`nZ?Qs3r_DZ=5bVxQ?s<HNtP{Xl@{F`h(-6_@(QrfT_pv zngr^2hL`)JPw(}hT&a*S{Kf(Hx6loo8Vu&EF-z=|Vg+P~C|^quPv9j{a^iCK<)?^Q zyZnM}8)#VYqDZm!wEqH=Uh(Gl${OuRS{4SFIUc6er->iU(j$P9v<pqO=j;8rgR@^h z&5mEofA)d8G4T%brlSbR;`Uqw6&zOpvY0=M@-CFKsalFjj$h7U?;QIt;22GwnCO#& z&7}et7oXNxOuJm`paQw7Oe)|c+2x1Eo#{@};}snjwiigFbQ7hi=4p^F6F7H-N;@)< zi@ht=bl|jsI>r;5?mUFQ8Ne8cw04eLdM>a2n#L3X3N?yM7fQJ}txtWY3NBTIxe|Lt zRnlfX`NfvfH=8!{ioO-Lt3s&SXc`S3Ob1UXuPk+U#sbp@alNT}UC{A#3SZInf|W$r z>gg@+WPe#IYz?s+7dT5sPxF$>F#Us=g;_fjMNyeg1FQc2iq?a8r#?#R$9W3$x-A{= zg&|id7ndW?v?mEQ=k8nyKk3!vn%MNTo?C7Z^-iyF+B++7c6ZJzN^`*eC0-n?jdvFJ z7e^(Jp-6+brq%=NM4)kOPk_|;s<+2Sq1U{_JGXJ6;Qcb_c_zImqehF6!&7<f_hZ6Q zidnh{;GPcf<QQ9J*LL2=fUn+fVXwpV)w)i=@L$#kbtCG?>OV{<0e0hT5CUYXZZ&`C z&Z^c-p+TfziCoU#@ZQ`q>Ns!h9ZOoUMCnk%Y&v)Ix^CtPS}sMky)XO^GY#!ZD_Msx z<VIM-?7|RLx2{aj<Vkxyt*)Aes6pSCQ_vAlg02I9-&VDANmmU6-@!}SD;gxM=*rA0 z9yIqSHl!6gw#0EhzcwabPnIOtyEwnvbz?cKxo3-+Ty4@75m+J~UTR7X>AyH)#!3zG zuPMD&D0o!)?z6N7p_`>_b0X)+g{1V}y@4@D?s6N=N=`(qShTf`J9*mVN|~u=ENomv z_leg>wUY}bbegPTdm?Q0D5ucbbvoe-NnY?RXs+85+IVdzDV_o9z}1u1y}!Nae^!x{ zSdH})ET#6%3{Jgh2`f8RGK{Q@34QzOOr#J*)EC}_F?_0T4J^iFoJ-A)h^+w;_v$wl z*tCEc9vJY?3HNI_7?8U_TjCZx=Dd1ax+ZVvnkczkFsiepAh(KnkGu-&=?r^gnDxk% z4n@q|^OhSoPtr7CE$df@_Bn#Mz%BE2W5UdK(Sjr<qr<JofvVGWCGX)hAFpzXB4&m` zU481h&wyZ~Z+G?LuH?=nm5$^-kVFtZWLl)hOWq!2jqn9#X_+92?+qjW5)w7Gt9+hn zqInv*)RNMc$yV)__^H9b+PAKs*Go7vnsls3nmTa!NOkv!WmoKIded1^^$tYXU(WN8 zB&y8xMKN{C?>LV-o$ym2uccf}4m9CuBWs02A(u&SJioPJ>;R4fn!f2~%w}10KaR4S zKcqE@s>xj0d{8Un4PPs&*4rx@7VTnBrs4xG<ubhfVh|<0Q@``b)9vC@lYXL-v*K2N z%ufO(3thZ>xZkIK&WWqI+J7{f3!P|ak>-hhcBti0j<Vui&1#KD?cJOzB{(7C@fk{d zISEsgd6J@+(7S~sb|xp0uAU1Udm;GO7wNKPkNpQ9n16HX>tjFs-$C)esr;`vpo${X z;?>6P3l^lvm7R#iqlFz+(8;5aYHPo$EsbO9i3HiqAQ)-OO^kiH7SN0sQ)4mhGTM57 z|9XHCBS9iR(}zD<>f7N1VI)U8t$A17TVCG<LvlfjusKT4Xf9=}XD_=UdCB2K;QH@@ zHn*Q#j>7tMhvm2hr?xzv_nEr1+PxoDnEVkOJj2zS{q)qgcEj>l1E99F%$}~~P<-sU zvjh1v3Eo9H4XiDNNukDt!-J8P#+VGvQMXv;Im~!1&wd%Ljqsf1^nlBCTe;Xlj1tkY zdVJ&$*jvT77uG9p8dinsR#2+r(%A7@^i0_xN#fJ6^n#<)!T*1kFk4l{K~&Pr3RHK= zf(h?-OQ92G1Do2c=zCP0JM0#}^c;-InikO(e2}ad|Aa3XfY#2Sl7Xr+$*(S+r2_*S z?YM+qg=St+hPJ@mwM$D1sw`{CO!Jv5ERTOJPOT4{Sa}&ia99Ur{FRlB7PF%8nWPIj zhgIzT^VQ!~B(a0&EBmxhF0?{;!qVbvjZ72r72LB;Cb73!X8nu1nq&gDS|^7M8Prcm zLs)e29Yk2%WgV_a(8*f<$)AFP(Ar{Cz5hEfaypQ&VpD-)9R>#<3v-9a03Kh+4wNc- zu)9USJt$(6r3#EIktJd))YQm3QU%tP80ZgkA6J#HzyFKUqDNyZ=VO2c-WR^zJ6Ia| zD3SfQM<eY0*LrUEwiz%zR?c5~S@aCEY}bG;$A4q7OZqmw7e(4+Y%jM`_8&qy)utEO z!6MVnW>QAY5-?A$M-jx=rM^{y3lUB_Lky0ze+Npz976hiYYm<IIYj(XDJe)z=^jut zHIfY3VI~&IQ)Qj`kkXEEMlp<b0;lQpwX;|sdi)An2RWS|M>)AAG^33{@Hq&gM<PH6 z#KXBzw+N@;m4Rmxr<nHMhe-mmIA?TtuOV#Sf)5p+co!lh%Rr-KOG8tFtF`4=A+e|H zo~9k^zP42YXXS~JjQ2oJr!9hDJ9&h|Do}eT)Pl0@{I<bn&0}8LdU1#Ly?XEcqeSzg zP6~Z5il*ZK<P3)N)_5l0I4f~Z@AfJfeh={7RNa5iV4&LQz|C6UT<JJ)zsjNZJ-#m? z<o^xib75<n!YeJ8cgh-%f7>$LuMMMV`{lC@mHs>w1kLlU!q~9Wul4qI95$)8Muf*! z5MN56pX_kQf2tmI6WlHj(XUF*GiMHCaZXbaeG{6XjFHkER@rAUoR8CJ*0n`OY`tdL z$2Hn(RnnPf`h1QLd!0!vPPmw``ds4F-PVzEHf`T>F%p&7v^D!fMY~B(APpZ|Ve<H9 zQ*BSy39lmuUk*OsdtLh?I>j^T!^EXEn3hfSbu5RH3hs3Xsv2_Ayrfqzg%vlZDQ+e% zK7UHb1kY!9ly~?6hftu2kZjh~JZaIMU;#5HX|VQFoc!sVB*|P=!%@_Du$T3888(*; zT8=$?Cj%Z4!BEqTTWIppkTtfVGf&IEP~r>Y?B^um!h6rj579qCYw8D9e5wg`EI~*| zjc1XqN~E4-Dx=E#C=l_V#V)ROLa@BRpFtrmG>PJk@)a$EI=E6+t_DMhxdLXM;iSdi zj<<mMO8b#a`0I;6L@n(?1(_mUA6%M0hh}OKbSGWrIC00(&ZC)`l%zQep~++gQ0EhH zki*tdlDJl8cLgX6ECe&#H_9#*1%pI$T;d^8!x#?H*Sc!E7!6Y5;G*i^Swm#OSzu<f zG385-YLMtZ*yJRpQ?j|YWi=or=EeBAyF)0E2^!3t5sCLM^#+Ny_Z;g`e^n^sU+4+z zR1SfZ7_nXByXMK#J9c2^ll86@=PE#=^Gg>m5k6yq9GI>R*8DU3z|8*}*@u6Qi#x0y zpDbpNPF0U%IgF1DDhg20m4PbRRGTxl?@d*E0Nra&jHUMbk#2@Oy=9O#aa1Ds)N_pI zS6OAxsUhLH1yR<~heB7D7G52FG9p7^WUW?%)R!^2<)<jpjq?0?MSoUiZ=%q&-B(Od zYluEpzVCW^KwnLxcaU=@XB5Zc54-?qZw{d}+sAd{%tCXu!^N7ifKZEscOe;fd}J0} z&`Ln{_FCME3g|GbPtFWOgRWE<>p@s1b_O4+b02#Ktg#<Hb@p&<m>8sc9cSTGQ)FsE zT#@EZR|~pD<K9^aV6<!n5dn)tk{#Eg^6Gz9tihRxKfGyTT}P8$qvrXCqqayF0&_vT z0O+^KpT;%FaJ)hKW!~q)5&9t!=ywyvqW37G#R^(Av4?hoSx>yg(xogU=13<v(xea| zJLyht6wqF%ONjt%L>&~7v`cF(-C@hu-bCn9VzmCOG+(wTL*py74sOvHVst5m>ZU?S zeKFfyRnPQ&jZ>Kj3yGk%U#dq6z^E$d)S#l9CPsu^^(*7Aul!UnVM;tx7`xQ^a%S(d zN-X3-)MB%bbgAz#DMWy@?5eU)$K(3jG1kiBD&@?FXx92nr~EITEd^x1xg|W4Qv+;v zg#Maa;N-Km&DSnQ->e8$5xP<OTw#XZ#Wi>eD6lBnuuOtXH2-|$&z!6l7CnD0{weX} z@Et09iR_!+Vy&LF1x?dLSHQh`LlI`q-e!kD+jMWb5nEx_VP}By)5q-H2N60EqUXcb zC%!l5r&2+iqnRDNP8hbCoxeVD_=<MnPld7|y!ST7vcmkj!Y7Il+utSs@?fs0yju1= zDH}$~qXT=xIIk)bGSHe*0FgG6hX9J30(3GvT;!45mWtUwSR>kI&t54(O4+hZ!YS0D znWwL(+MtZmv_>4o5rqg9U>|O0N(Tm$`(1i6IiLf%C;bV`boKk-l^~Mf-EsdGP5~KO zyNrDMu}~2jjtniHb_)}dwWWc-LpCSxw@o_4Se|`k6DaQWBn_`yTm^0C_H`Dz8ttW? zz&rS?fqwHZxh}ba_0{iks$@b-w+I~MS6x$mGxO1kzI;U~Fq^Zgml|;TTMK3kF8O&6 zH(8oh;?QE?)8-PGL2>J?QD5y<zXMj?l{b#T-!sh>**_iDtmr;#&ex*^6<2j}N`w~) zzh2SK5|w*3tq*gyW*K0hWD79p6Hh($JVSEh!XdU-i1@733gu%5tfDmc2|;h&)4Nj< zBu_~Ef67{-lKekr7fhh8*dTGNcEbbq3Fi}%P4C73)YBN0dJc`B3r=eN^JZ%+AI?zu zjjUm0^NTy#F*sk+Zg1H{lJ@p=;^6}fAAf@N_hZfW<-;?!jy@(XjG9MSap&@*h+@qh z;hJk+Pkd0Fy(iRIIe2@o1FG6hTNlNnB`LZbTb5Vy&=$1bM|6H_-GxNdUiv+h4|#eJ ztH)xno$RL+3GdpN{^`k&>SFyv$lr%t{YAlVR*k*UE&|H(_?pvyy`|oB%e;BcGUpcP zi;32R5ph3*K1xlt3!GRMU8f2v5__)Q0@bLp`lgdKxP#8Fw}^jOq|@fTSLwZfyoX{q zKDM`#u!s_AF^eb#<O44Hw}0TNe|(aSwWXyCwb(_vNcU(O`_YxC7OT~53KsH2Fi!cw zW}Ef2msby4#+2gWUW$p6nEHLCiY9g;?8`IwbzIk1Y_lexznWk(YjO+;5=|DroV%JJ z3QX$p(-?!tnxKY_Re9umY_@!&_OeH8e@9!2<RVE{9;lh?;nKA-u|d@C6%ioh7lmQW zscUUJ5t9$^`|xvH=qvY16kmrX`o^&ad;?ORmT_V_oTpp4vSWL;PaQu*_*gPfq$nN! z1y1DGcx2=-*W}AChA75j;{%hc*d+&gqC4g!wj|JDhvPn%{6T8`T72=h)LnWC^QOO6 zkyd_i1aW~UFg;o*ty=s{zLxVY`#O&iYAsHx)2Yhb-&r}}t22g(I@ie@{9)18veW^M zy|=#TY;Q?SongWvz}f2?=v`0!!?kh*$xxm0FlDT_Au?N8s@_?G66&`5!_s3Q&ii9U zhN-@;OPez&SGm93yml|&O%QIfIFAzFr@$*l=IJ^`IkriZi0a-XFhx0uwhSiGK_|-i zUY7WtJu{_9U+nOAYo+VGg-6P^IjxyhD*lPE&uQeQvx?pLqu3Bk1Nu+a0K7#6&oj2& zsSCnN+IXE8CDcYO0@>TdqmbE0N0`^%I_hdu&1(ygLhue%QS%p+uZh&EmDX$1d&$Yl z#j%yb(N`<KP&i2vbbr@%X`BCvY?HW`Z3h`gm&X6<J}*C;)OWK7nl5Pumgb%}Uj4}g zwHr!eKvt8r4-zL+Li#@K`u<#m@XaB%)Ifd+#gIqNW=;R)3{`3F?YM`r&P=;*h4^Wk zU13_<&D5vH5z-Y$06gQYS`om2_349wiZ?yF%M>FtU{onoB4f|&7z+4(Z9KyGM*VFf z!s;2W%c4B_q+;9j(lfhsJcAH+(JFB~sElg%p!IY?+*V)vPxg5tW2~|+=~-*3c`4|) zT3_MgiCnWdN7dq3!Gm7{X)-7I?|&Lb!HT;RaQP-i74GAvc5E%EdjGu{)ofzh|1|0q zq2e>n5vML@4N6QtAv--Lzv#>PM10_nH(<gFy6<$QXH?&DZ<99LE5({w`sD|p&)9(k zeDWQO_QsFEo4Myb0qgQ38qo!+_?_?SC!7<}ck|FhWz@x|v#9zv{$$?cw3jw1Axsz5 zJ7UiPP$WLTs9fEF{3(75G(<Q=*7{z!resrMxux|ppH<v>PvR>7)#-P{$OlcX%_kt2 z{5LXklh#Us?DP3rO!=s6);jqk@#pVJ)YMn}zDoW-K;o=t15laVX0#h%B2b}qNDu5{ zO$GnHyPsPq7d^K6<@81PWlI_d5n%7pn#4M%e$K1C+Smo&-{|TJJ>mypWUDP;wDJwd zcQ5xT`fke#i|VK*ggG0j0h_EU$+UsI5f0AHtRjii2{ENxEW*x);h>d9QTU)l1WOkm z8Xl+`<_5HYxBIrJ!I+XrAa)tOGH#u+U)!FeU7?}g0#mS&Z=N0yST)@wua!f38Iv6q zQ4L*U?9pbF=mOF6x3BjtzMNW%o?DymYkVQ6v6SNrE7^3F<49`#kw@lljlxhhTNAQN zzB&knM2AEd9(Q(8k=i2qP8>x1@!js<-~Y{ze~*WM&xilI>p^7=*(dI<z_-Isbua-N zE1eSN)r}}%n$wY?k#U~hu@(<<oH`g`FjtpfTS2R5p^X6-(<+H&9%qeSjl;Cg#?B1* zA&ZZa?aPpC`UbCGphI=9a_AZMVjO89F#W)i>Z7|3jExV{Li;vD77HAs0#+otlk7dZ zVDmX(=m}>y9bBL}E`<+(ESMHU7+#s~9dU%ih^xyzbd4OigiWCJ3@$`fyL1&?@%g=n zo>02|=ZnCF4O~W_Nmfd&V%os4Gxhvt;pl+_pHnYuALKM}ibbe<lxk>C@?-1$PaYFo zUvIn`oND_;FzZcB_~H<1*Jj(snY}0V3>o%bl1=Sp4wrh*HMN}m)4+h@)L4h-VNgyd zYCVA%&8CGT6ATy;w<eXoxz@T_kbcd3=}2$`X<|<fIn1N*mZy4gA@-9V+b;H}p7;jv z%*}fzvmqD_zUNBR2AxF~#NSLASG55PdMq$CCh{B%fROX0iV&Rv9Mp6o`6#9wF4erl z0ojsm4X7z;2M%!J(^+!1R3pU!E_{?oIWGPxxW)HRWC>ZM5-GGvEyOiKtA#Be#g?;i zExG@AtqoCY5!{;j5UiZueVJHurplnF`Rp79Kb34+v>v9ulH?k$pil9w2o}$<La8J4 zNWIe0i*bykKxoSqp6t>XjWKt)t1Pn;k;Gr}PK#d3BMZu;mcsQ84S1tx0zqpd{Th{c zvO<K;Kv)RX%vWnLYsQxm;1-;iu0iC`ABa5tg;Rl~&*Eu;M-T*|8!<}Tf7U!=PLLpV zv)rxdUncZDELNm4M96ypc$L@kN)unRIGsaRPxn+2WaT+z%{&?otbo5Ox?m>LZYX76 ok0)UzOLl35xjjQ&E&%lA`9FDlS~TbU0r+$3gvZyFUj?Q7H;!Mf!vFvP literal 250274 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 Th4~8jZ|`pOuKEuTfA&8C<tNvY From 0c86c704c288e8865abb17fb3d639e81f4e4aed1 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 27 Feb 2026 12:13:23 +0300 Subject: [PATCH 19/22] docs: reformat-fix --- docs/quickstart/index.mdx | 68 ++-- docs/quickstart/running-tests.mdx | 150 +++++++-- docs/quickstart/writing-tests.mdx | 520 +++++++++++++++++++++++++++++- 3 files changed, 676 insertions(+), 62 deletions(-) diff --git a/docs/quickstart/index.mdx b/docs/quickstart/index.mdx index d8e7d9e0..525c015e 100644 --- a/docs/quickstart/index.mdx +++ b/docs/quickstart/index.mdx @@ -4,36 +4,59 @@ sidebar_position: 1 import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; +import Admonition from "@theme/Admonition"; -# Installation {#install} +# Installation and setup -Run the Testplane installer using `npm`. +## System requirements + +To start working with Testplane, install `Node.js` version 18.0 or higher. + +## Installation {#install} + +To run the Testplane installer using `npm`, execute the following command: ```bash npm init testplane@latest YOUR_PROJECT_PATH ``` -If you do not want to use the defaults when initializing the project and want to configure it using a wizard, specify the `-v` option. +To configure the project instead of using defaults during initialization, specify the `-v` option. + +After running the installation command, the following set of files and folders will appear in the project directory: + +```bash +node_modules +testplane-tests + example.testplane.ts + ts.config.json +package-lock.json +package.json +testplane.config.ts +``` ## Setup {#setup} -After executing the command mentioned above, a `testplane.config.ts` file with basic settings will be generated at the root of the project. +The `testplane.config.ts` file contains a basic set of settings for running tests: ```typescript export default { - // https://testplane.io/docs/v8/basic-guides/managing-browsers/ gridUrl: "local", baseUrl: "http://localhost", pageLoadTimeout: 0, httpTimeout: 60000, testTimeout: 90000, resetCursor: false, + + // The `sets` parameter contains information about the directory where the tests are located + // and a list of browsers in which they will be run: sets: { desktop: { files: ["testplane-tests/**/*.testplane.(t|j)s"], browsers: ["chrome", "firefox"], }, }, + + // The `browsers` field describes the configuration of the browsers used: browsers: { chrome: { headless: true, @@ -48,9 +71,9 @@ export default { }, }, }, + plugins: { "html-reporter/testplane": { - // https://github.com/gemini-testing/html-reporter enabled: true, path: "testplane-report", defaultView: "all", @@ -60,39 +83,10 @@ export default { }; ``` -You can download these browsers, described in the config, separately from running Testplane itself: +To download the browsers described in the config separately from running Testplane itself, execute the command: ```bash npx testplane install-deps ``` -Without running the command, absent browsers will be downloaded during first Testplane launch. - -## Creating a Test {#test_creation} - -Navigate to the `tests/example.testplane.js` file with a test. Here you can see a test example or write your own. For example, - -```javascript -describe("github", async function () { - it("should find testplane", async function ({ browser }) { - await browser.url("https://github.com/gemini-testing/testplane"); - const elem = await browser.$("#readme h1"); - - await expect(elem).toHaveText("Testplane"); - }); -}); -``` - -## Running a Test {#test_running} - -Now you can run the tests: - -```bash -npx testplane -``` - -or launch the GUI mode and run the test through the browser interface - -```bash -npx testplane gui -``` +Without running this command beforehand, missing browsers will be automatically downloaded the first time Testplane is launched. diff --git a/docs/quickstart/running-tests.mdx b/docs/quickstart/running-tests.mdx index 621f294c..2d032c5c 100644 --- a/docs/quickstart/running-tests.mdx +++ b/docs/quickstart/running-tests.mdx @@ -2,54 +2,158 @@ sidebar_position: 3 --- -# Running Tests +# Running and debugging -Use the `npx testplane` command to run all tests in your project. +## Running tests -## Running a Specific File {#running_a_specific_file} +To run tests, use the following command: -If you want to run a whole group of tests located in a specific file, specify the path to this file as an input parameter for testplane: +```bash +npx testplane +``` + +You can also run tests in `gui` mode. To do this, execute the command: + +```bash +npx testplane gui +``` + +### Running a specific test + +You have a set of tests and need to run just one of them. + +```javascript +const assert = require("assert"); + +describe("tests", () => { + it("Checking the display of the main page", async ({ browser }) => { + await browser.url("https://testplane.io/ru/"); + const title = await browser.getTitle(); + assert.ok(title.includes("Testplane")); + }); + + it("Checking for the presence of a search field", async ({ browser }) => { + await browser.url("https://testplane.io/ru/"); + const searchButton = await browser.$("button.DocSearch"); + const isExisting = await searchButton.isExisting(); + assert.strictEqual(isExisting, true); + }); +}); +``` + +In this case, run the command: ```bash -npx testplane src/features/Reviews/Reviews.test/MyReview/MyReview.a11y@touch-phone.testplane.js +testplane --grep "Checking for the presence of a search field" ``` -## The `--grep` Option {#the_grep_option} +In the quotes, you need to pass the content of the parentheses in the `it` keyword. + +### Running tests in specific browsers + +By default, tests run in the browsers specified in the `testplane.config.ts` file. -If you want to run a specific test, use the `--grep` option by providing the full name of the test as its value: +```bash +browsers: ["chrome", "firefox"]; +``` + +When you run the `npx testplane` command, tests will run in Google Chrome and Mozilla Firefox. ```bash -npx testplane --grep "Accessibility Leaving a review" +# Run in all browsers (default) +testplane ``` -## The `.only` Directive {#the_only_directive} +To run tests in a specific browser, use the command: -You can also use the `.only` directive for a suite of tests (`describe`) or a specific test (`it`), similar to what is implemented in `mocha` (see the [exclusive tests](https://mochajs.org/#exclusive-tests) section): +```bash +# Run only in Chrome +testplane --browser chrome +``` -For example: +You can also specify a specific browser for use within the test body. ```javascript -describe.only("Accessibility", function () { - // Test suite... +// tests/browser-specific.test.js +describe("Browser specific tests", () => { + it("should work in all browsers", async ({ browser }) => { + await browser.url("https://example.com"); + }); + + // Skip the test in Safari + testplane.skip.in("safari", "Feature not supported in Safari"); + it("should work only in Chrome and Firefox", async ({ browser }) => { + await browser.url("https://example.com"); + // ... test body + }); + + // Run only in Chrome + testplane.only.in("chrome"); + it("should work only in Chrome", async ({ browser }) => { + await browser.url("https://example.com"); + // ... test body + }); }); ``` -or +### Running a test from a specific file + +To run tests from a specific file, execute the command: + +```bash +# Running a specific file +testplane ../testplane-tests/example.testplane.ts +``` + +Where `../testplane-tests/example.testplane.ts` is the path to the test file. + +### User interface mode + +In Testplane, you can work with tests in UI format using Testplane UI. + +![](/img/docs/html-reporter/html-reporter-demo.png) + +You can read about the installation and setup processes for Testplane UI in the [UI.](..//html-reporter//overview.mdx) section. + +## Debugging + +It’s very easy to track the test execution process if you run tests in `gui` mode. In this mode, the HTML reporter will show which tests were executed successfully, which ones have errors, and what kind of errors they are. + +![Testplane GUI](/img/docs/guides/testplane-gui.png) + +### Browser.debug() + +Testplane has a built‑in debugging tool — `browser.debug`. ```javascript -it.only("Leaving a review", async function () { - // Test code... +it("debugging with a pause", async ({ browser }) => { + // Open the page being tested + await browser.url("/page"); + + // browser.debug() stops test execution + // and opens an interactive console (REPL — Read-Eval-Print Loop) + await browser.debug(); + + // After calling debug(), the test pauses + // In the console, you can enter WebdriverIO commands in real time: + + // Examples of commands you can enter in REPL: + // > await browser.$('.button').click() - click the button + // > await browser.getTitle() - get the page title + // > await browser.$$('.items') - find all elements + // > .exit - exit debug mode + + // This code will run only after exiting debug() + await browser.$(".button").click(); }); ``` -## Running a Test N Times {#running_tests_multiple_times} +### Debugging via Testplane UI -You might want to run the same test multiple times, for example, to check test stability. Use the [@testplane/test-repeater][testplane-test-repeater] plugin to run tests a specified number of times. +The most convenient way to debug tests is using the UI mode, where you can observe test execution in real time. -After installing and enabling the plugin, you can run the test multiple times like this: +![](/gif/docs/ui/run-debug.gif) -```bash -npx testplane --test-repeater-repeat 5 --grep 'Test name' -``` +You can find unstable, slow tests, or other issues using the «sorting» and «grouping» options. -[testplane-test-repeater]: ../../plugins/testplane-test-repeater +![](/gif/docs/ui/analytics.gif) diff --git a/docs/quickstart/writing-tests.mdx b/docs/quickstart/writing-tests.mdx index a7df061b..52867a43 100644 --- a/docs/quickstart/writing-tests.mdx +++ b/docs/quickstart/writing-tests.mdx @@ -3,6 +3,522 @@ sidebar_position: 2 draft: true --- -# Writing Tests +# Writing tests -<!--Here we should not forget to mention testplane.only.in() directives and link to a reference article--> +## Test structure + +The `describe` block is used to group related tests. + +````javascript +describe("Test group name", () => { + it("description of what should happen", async ({ browser }) => { + // Test body + }); +}); + + +The `it` block describes test scenarios. + +```javascript +it("description of what should happen", async ({ browser }) => { + // Test body +}); +```` + +After installing Testplane, you can view a test example by navigating to the `testplane-tests` folder and opening the `example.testplane.ts file`. + +```javascript +describe("test examples", () => { + it("docs search test", async ({ browser }) => { + await browser.openAndWait("https://testplane.io/"); + + // Find by tag name + const navBar = await browser.$("nav"); + + // Find by aria-label + await navBar.$("aria/Search").click(); + + // Find by placeholder + const fileSearchInput = await browser.findByPlaceholderText("Search docs"); + await fileSearchInput.waitForDisplayed(); + await fileSearchInput.setValue("config"); + + // Find by id + const fileSearchResults = await browser.$("#docsearch-list"); + + // Find by role + const fileSearchResultsItems = await fileSearchResults.findAllByRole("option"); + + await expect(fileSearchResultsItems.length).toBeGreaterThan(1); + }); +}); +``` + +## Basic syntax + +### Navigation + +To navigate between pages, use the method: + +```javascript +await browser.url("https://testplane.io/"); +``` + +If the page contains elements that appear with a delay, specify an explicit wait for the tests to run correctly: + +```javascript +await browser.url("https://testplane.io/"); +await browser.$("h1").waitForExist({ timeout: 5000 }); +const title = await browser.$("h1").getText(); +``` + +Alternatively, use the command: + +```javascript +await browser.openAndWait("https://testplane.io/"); +``` + +The await `browser.openAndWait()` command waits for all necessary elements on the page to load by default. + +### Selectors + +Testplane supports various element-finding strategies: `CSS` selectors (the most common), text selectors (by content), and `XPath` for complex queries. The `$()` method returns the first matching element, while `$$()` returns an array of all matching elements: + +```javascript +const assert = require("assert"); + +describe("tests", () => { + it("Checking the display of the main page", async ({ browser }) => { + await browser.url("https://testplane.io/"); + const title = await browser.getTitle(); + assert.ok(title.includes("Testplane")); + }); + + it("Checking for the logo on the main page", async ({ browser }) => { + await browser.url("https://testplane.io/"); + const logo = await browser.$("a.navbar__brand"); + const isDisplayed = await logo.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + + it("Checking the navigation menu", async ({ browser }) => { + await browser.url("https://testplane.io/"); + const menuItems = await browser.$$("nav.navbar a.navbar__item"); + assert.ok(menuItems.length > 0); + }); + + it("Checking for a search field", async ({ browser }) => { + await browser.url("https://testplane.io/"); + const searchButton = await browser.$("button.DocSearch"); + const isExisting = await searchButton.isExisting(); + assert.strictEqual(isExisting, true); + }); +}); +``` + +### Interactions with elements + +After learning about selectors and finding an element, you can perform various actions: clicking, typing text, double-clicking. + +To click on an element, use the `element.click()` method. + +```javascript +const assert = require("assert"); + +describe("Click test", () => { + it("Example of a click — opening search", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + // Click on the search button + const searchButton = await browser.$("button.DocSearch"); + await searchButton.waitForClickable({ timeout: 5000 }); + await searchButton.click(); + + // Check that the search modal appears + const searchModal = await browser.$(".DocSearch-Modal"); + const isDisplayed = await searchModal.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); +}); +``` + +To fill in a text input field, use the `element.setValue("text")` method. + +```javascript +const assert = require("assert"); + +describe("Text input test", () => { + it("Example of text input — searching documentation", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + // Open search + const searchButton = await browser.$("button.DocSearch"); + await searchButton.waitForClickable({ timeout: 5000 }); + await searchButton.click(); + + // Enter text into the search field + const searchInput = await browser.$("input.DocSearch-Input"); + await searchInput.waitForDisplayed({ timeout: 5000 }); + await searchInput.setValue("browser"); + + // Check that the text is entered + const inputValue = await searchInput.getValue(); + assert.strictEqual(inputValue, "browser"); + }); +}); +``` + +To double-click on an element, use the `element.doubleClick()` method. + +```javascript +const assert = require("assert"); + +describe("Double-click test", () => { + it("Example of a double click — highlighting the heading text", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + // Find the heading on the main page + const heading = await browser.$("h1"); + await heading.waitForDisplayed({ timeout: 5000 }); + await heading.scrollIntoView(); + + // Double-click on the heading + await heading.doubleClick(); + + // Check that the element exists and is displayed + const isDisplayed = await heading.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); +}); +``` + +Testplane provides special methods for working with various form elements. For example, checkboxes and radio buttons are controlled via clicking. + +```javascript +const assert = require("assert"); + +describe("Form interactions", () => { + it("Working with checkboxes via click", async ({ browser }) => { + // For demonstration, use a page with a form + await browser.url("https://the-internet.herokuapp.com/checkboxes"); + + const checkbox1 = await browser.$("#checkboxes input:nth-child(1)"); + await checkbox1.waitForDisplayed({ timeout: 5000 }); + + // Check initial state + let isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, false); + + // Click to select + await checkbox1.click(); + isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, true); + + // Click again to deselect + await checkbox1.click(); + isSelected = await checkbox1.isSelected(); + assert.strictEqual(isSelected, false); + }); + + it("Working with radio buttons via click", async ({ browser }) => { + await browser.url("https://the-internet.herokuapp.com/"); + + // Navigate to the examples page + const link = await browser.$("a[href='/forgot_password']"); + await link.click(); + + // Work with the email field (as an example of radio buttons) + const emailInput = await browser.$("#email"); + await emailInput.waitForDisplayed({ timeout: 5000 }); + await emailInput.setValue("test@example.com"); + + const value = await emailInput.getValue(); + assert.ok(value.includes("test@example.com")); + }); +}); +``` + +For dropdown lists `(<select>)`, there are convenient methods to select options by visible text or attribute value. + +```javascript +const assert = require("assert"); + +describe("Working with dropdown list", () => { + it("Working with dropdown (select) — selecting by text", async ({ browser }) => { + await browser.url("https://the-internet.herokuapp.com/dropdown"); + + const dropdown = await browser.$("#dropdown"); + await dropdown.waitForDisplayed({ timeout: 5000 }); + + // Select option by visible text + await dropdown.selectByVisibleText("Option 1"); + + // Check selected value + let selectedValue = await dropdown.getValue(); + assert.strictEqual(selectedValue, "1"); + + // Get text of selected option + let selectedText = await dropdown.$("option:checked").getText(); + assert.strictEqual(selectedText, "Option 1"); + }); +}); +``` + +### Assertions + +Testplane uses the `expect API` from `WebdriverIO` to verify the state of elements and pages — this allows you to formulate `assertions` about what the properties of elements or the page should be. + +```javascript +const assert = require("assert"); + +describe("tests", () => { + it("WebdriverIO assert — checking URL", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + // WebdriverIO expect for browser + await expect(browser).toHaveUrl("https://testplane.io/"); + }); + + it("WebdriverIO assert — checking element existence", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + const logo = await browser.$("a.navbar__brand"); + + // WebdriverIO expect for element + await expect(logo).toExist(); + }); + + it("WebdriverIO assert — checking element visibility", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + const searchButton = await browser.$("button.DocSearch"); + + // WebdriverIO expect + await expect(searchButton).toBeDisplayed(); + }); + + // Examples with Jest assertions + it("Jest assert — checking page title", async ({ browser }) => { + await browser.url("https://testplane.io/ru/"); + + const title = await browser.getTitle(); + + // Jest expect + expect(title).toContain("Testplane"); + }); + + it("Jest assert — checking number of elements", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + const menuItems = await browser.$$("nav.navbar a.navbar__item"); + + // Jest expect + expect(menuItems.length).toBeGreaterThan(0); + }); + + it("Jest assert — checking element attribute", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + const docsLink = await browser.$("a[href='/ru/docs/v8/']"); + const href = await docsLink.getAttribute("href"); + + // Jest expect + expect(href).toBe("/ru/docs/v8/"); + }); + + it("Jest assert — checking URL with regex", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + const currentUrl = await browser.getUrl(); + + // Jest expect with regex + expect(currentUrl).toMatch(/testplane\.io/); + }); +}); +``` + +### Hooks + +Hooks are special functions that run automatically at specific points in the test lifecycle. They allow you to prepare the environment before tests and clean it up afterward. Two types of hooks are available by default — `beforeEach` and `afterEach`, with the former running before each test and the latter after. + +```javascript +const assert = require("assert"); + +describe("Example of working with hooks", () => { + beforeEach(async ({ browser }) => { + console.log("--- OUTER BEFOREEACH ---"); + await browser.url("https://testplane.io/"); + }); + + afterEach(async ({ browser }) => { + console.log("--- OUTER AFTEREACH ---"); + }); + + it("Outer test", async ({ browser }) => { + const title = await browser.getTitle(); + assert.ok(title.length > 0); + }); + + describe("Inner test block", () => { + beforeEach(async ({ browser }) => { + console.log("--- INNER BEFOREEACH ---"); + // Outer beforeEach runs first, then this one + await browser.url("https://testplane.io/ru/docs/v8/"); + }); + + afterEach(async ({ browser }) => { + console.log("--- INNER AFTEREACH ---"); + // This afterEach runs first, then outer + }); + + it("Inner test 1", async ({ browser }) => { + const currentUrl = await browser.getUrl(); + assert.ok(currentUrl.includes("docs")); + }); + + it("Inner test 2", async ({ browser }) => { + const heading = await browser.$("h1"); + const isDisplayed = await heading.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + }); +}); +``` + +### Waits + +Explicit waits are necessary for working with dynamic content that loads or changes asynchronously. Testplane automatically waits for elements to appear, but for complex scenarios, you can use special wait methods. + +```javascript +const assert = require("assert"); + +describe("Examples of waits in Testplane", () => { + it("Waiting for element to appear and become clickable", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + // Wait for search button to appear on page + const searchButton = await browser.$("button.DocSearch"); + await searchButton.waitForDisplayed({ + timeout: 5000, + timeoutMsg: "Search button did not appear within 5 seconds", + }); + + // Wait for element to become clickable + await searchButton.waitForClickable({ + timeout: 3000, + timeoutMsg: "Search button did not become clickable", + }); + + await searchButton.click(); + + // Wait for search modal to appear + const searchModal = await browser.$(".DocSearch-Modal"); + await searchModal.waitForDisplayed({ timeout: 3000 }); + + const isDisplayed = await searchModal.isDisplayed(); + assert.strictEqual(isDisplayed, true); + }); + + it("Waiting for element text to change", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + const heading = await browser.$("h1"); + + // Wait for element to exist + await heading.waitForExist({ + timeout: 5000, + timeoutMsg: "Heading not found on page", + }); + + // Wait for element to have specific text + await heading.waitUntil( + async function () { + const text = await this.getText(); + return text.length > 0; + }, + { + timeout: 5000, + timeoutMsg: "Heading text did not appear", + }, + ); + + const text = await heading.getText(); + assert.ok(text.length > 0); + }); + + it("Wait using browser.waitUntil to check URL", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + const docsLink = await browser.$("a[href='/ru/docs/v8/']"); + await docsLink.waitForExist({ timeout: 5000 }); + + // Use JavaScript click for reliability + await browser.execute(el => el.click(), docsLink); + + // Wait for URL to change using browser.waitUntil + await browser.waitUntil( + async () => { + const currentUrl = await browser.getUrl(); + return currentUrl.includes("docs"); + }, + { + timeout: 5000, + timeoutMsg: "URL did not change to documentation page", + }, + ); + + const finalUrl = await browser.getUrl(); + assert.ok(finalUrl.includes("docs")); + }); +}); +``` + +### Working with JavaScript code + +Sometimes you need to execute arbitrary JavaScript code in the page context — for example, to work with `localStorage`, call functions, or manipulate the `DOM` directly. The `execute()` method runs code in the browser and can return a result. + +```javascript +const assert = require("assert"); + +describe("Examples of working with JavaScript code", () => { + it("Executing JavaScript code in the page context", async ({ browser }) => { + await browser.url("https://testplane.io/"); + + // Example 1: Retrieving data from localStorage + await browser.execute(() => { + localStorage.setItem("testKey", "testValue"); + localStorage.setItem("userName", "John Doe"); + }); + + const storageValue = await browser.execute(() => { + return localStorage.getItem("testKey"); + }); + assert.strictEqual(storageValue, "testValue"); + + // Example 2: DOM manipulation — changing element text + const newText = await browser.execute(() => { + const heading = document.querySelector("h1"); + if (heading) { + const originalText = heading.textContent; + heading.textContent = "Modified heading"; + return originalText; + } + return ""; + }); + + const modifiedHeading = await browser.$("h1"); + const currentText = await modifiedHeading.getText(); + assert.strictEqual(currentText, "Modified heading"); + + // Example 3: Calling a function with parameters + const sum = await browser.execute( + (a, b) => { + return a + b; + }, + 5, + 10, + ); + assert.strictEqual(sum, 15); + }); +}); +``` From c40bee8df9fe8533de4e1a8130275425e51d3853 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 27 Feb 2026 14:52:55 +0300 Subject: [PATCH 20/22] docs: backtick-fix --- docs/quickstart/index.mdx | 2 +- docs/quickstart/running-tests.mdx | 8 ++++---- docs/quickstart/writing-tests.mdx | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/quickstart/index.mdx b/docs/quickstart/index.mdx index 525c015e..b30ea944 100644 --- a/docs/quickstart/index.mdx +++ b/docs/quickstart/index.mdx @@ -6,7 +6,7 @@ import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; import Admonition from "@theme/Admonition"; -# Installation and setup +# Installation and Setup ## System requirements diff --git a/docs/quickstart/running-tests.mdx b/docs/quickstart/running-tests.mdx index 2d032c5c..2f175927 100644 --- a/docs/quickstart/running-tests.mdx +++ b/docs/quickstart/running-tests.mdx @@ -2,7 +2,7 @@ sidebar_position: 3 --- -# Running and debugging +# Running and Debugging Tests ## Running tests @@ -20,7 +20,7 @@ npx testplane gui ### Running a specific test -You have a set of tests and need to run just one of them. +Consider the following set of tests: ```javascript const assert = require("assert"); @@ -41,13 +41,13 @@ describe("tests", () => { }); ``` -In this case, run the command: +If you want to run just one of them, use --grep option: ```bash testplane --grep "Checking for the presence of a search field" ``` -In the quotes, you need to pass the content of the parentheses in the `it` keyword. +You can pass the whole test name, some part of it or regex pattern to run only those tests whose names will match. ### Running tests in specific browsers diff --git a/docs/quickstart/writing-tests.mdx b/docs/quickstart/writing-tests.mdx index 52867a43..a4d3e6fa 100644 --- a/docs/quickstart/writing-tests.mdx +++ b/docs/quickstart/writing-tests.mdx @@ -9,13 +9,13 @@ draft: true The `describe` block is used to group related tests. -````javascript +```javascript describe("Test group name", () => { it("description of what should happen", async ({ browser }) => { // Test body }); }); - +``` The `it` block describes test scenarios. @@ -23,7 +23,7 @@ The `it` block describes test scenarios. it("description of what should happen", async ({ browser }) => { // Test body }); -```` +``` After installing Testplane, you can view a test example by navigating to the `testplane-tests` folder and opening the `example.testplane.ts file`. From 04720a8920de5bfb5a7dac9ab2b364627779c7d7 Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 27 Feb 2026 15:06:15 +0300 Subject: [PATCH 21/22] docs: character-fix --- docs/quickstart/running-tests.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/running-tests.mdx b/docs/quickstart/running-tests.mdx index 2f175927..81a4364e 100644 --- a/docs/quickstart/running-tests.mdx +++ b/docs/quickstart/running-tests.mdx @@ -41,7 +41,7 @@ describe("tests", () => { }); ``` -If you want to run just one of them, use --grep option: +If you want to run just one of them, use `--grep` option: ```bash testplane --grep "Checking for the presence of a search field" From a95feda0e83fa7a4a460c24f8caf745a70a445be Mon Sep 17 00:00:00 2001 From: Nikolaengel <bratashick@gmail.com> Date: Fri, 27 Feb 2026 15:14:23 +0300 Subject: [PATCH 22/22] docs: headline-fix --- docs/quickstart/writing-tests.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/writing-tests.mdx b/docs/quickstart/writing-tests.mdx index a4d3e6fa..3a121a5d 100644 --- a/docs/quickstart/writing-tests.mdx +++ b/docs/quickstart/writing-tests.mdx @@ -3,7 +3,7 @@ sidebar_position: 2 draft: true --- -# Writing tests +# Writing Tests ## Test structure