From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728522080; x=1729126880; darn=lists.altlinux.org; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=qtPd6y7Lu005e2IpxR+X2Zu3gwAGESGMZ71SCQELxqY=; b=OyA1ql+p87WDBoQZetxHxClOTSAjpWjPkGxeN1ezBRLIRmU69gZ9WUeIJbO/0FbYeX qPGek2aImSZpiOx3XpHFH1MmpC2zUDeqwLuQu52LSSdjmWyEt2lTmVqjDTA56NzrJ6v9 t0AZKX7RZE+qcV7PqhmwOAueG9KpXorWrYueFqbHcTsc3faQ/ZHSxplrHv4/F8YK+lIS 38Kwa1mDWJvRImR0rdCldbeBLUEKwxrXdrclngqw/cUZna+97cfJmuONR+dMebvoJHV1 VjBYpE4cUYqge18hk4LJH5msyxwatfEL3cWEWBALkJoR8JmwWrJ/03PDghPgKmHuHx25 gOOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728522080; x=1729126880; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=qtPd6y7Lu005e2IpxR+X2Zu3gwAGESGMZ71SCQELxqY=; b=FgriAMQJkAgxl63fLkDItQEfANZvFW/fm6cQoHVYcp/OmnOyOqa2tfN1d+AC4Gz0ao gr4NnkFnUM9r/9s2NnnPTLM3rZrPjuaRA38g32xrxiioaZtsM6oJDRJzRD3q+vT0lF8j KmF3hgFiQXNvttB92TMYA+lEE439DLcSnXtRwI6v/R/+Dpi+91ZiMVJmB9lvc47mLDdF vSm3fnlOo31viBoIvTdjWe4b/VPotCwDYGS9WgT2IW9J8KW++U9zpzEKgXzcFaG1wZo8 Fxq7rPw3eKeXjMkiDY6MNlU/s9BqDfbrgjTMG7XxFM6WTpTPM4hoxGAmbcFKS51jVlTm gOtg== X-Gm-Message-State: AOJu0YzjKoyHYW6Ev+td6UJPqJvJrOpKed+04CsnAU/n1NVNQ1r18YkM 6EUg3Xmm0s1/nVjv6JvJhHmLilpF+9RFGjIokA/J4v6qN1vsidF0ZwO6jA== X-Google-Smtp-Source: AGHT+IHlVs1SD+RwhAku4TWIs34XEy06t6PRVTiNDXNBZBe1yMZa9d6SeVE9FImFPPPWhqJxAEdnMw== X-Received: by 2002:ac2:4c48:0:b0:533:c9d:a01f with SMTP id 2adb3069b0e04-539c488d913mr3957924e87.4.1728522079712; Wed, 09 Oct 2024 18:01:19 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------3D689Ls3nP4PR5eWhG20ADiR" Message-ID: <0b88a4bf-6636-4bfe-8f39-e56dbec47a6e@gmail.com> Date: Thu, 10 Oct 2024 04:01:15 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: Leonid Krivoshein To: devel-distro@lists.altlinux.org References: Content-Language: ru, en-US In-Reply-To: Subject: Re: [devel-distro] =?utf-8?b?0J/RgNC40LzQtdGAINGE0LDQudC70LAg0YDQsNC3?= =?utf-8?b?0LzQtdGC0LrQuCDQuCDQvtC/0LjRgdCw0L3QuNGP?= X-BeenThere: devel-distro@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Distributions development List-Id: Distributions development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Oct 2024 01:01:24 -0000 Archived-At: List-Archive: This is a multi-part message in MIME format. --------------3D689Ls3nP4PR5eWhG20ADiR Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 10/10/24 01:08, Leonid Krivoshein wrote: >> [...] >>> По результатам обсуждения я сформулировал следующие тезисы: >>> 1. Графический интерфейс инсталлятора представляет собой конфигуратор, >>> который создаёт сценарий автоустановки (kickstart-файл) >> Я не считаю, что у нас возможна совместимость с redhat в этом вопросе. >> Поэтому я предлагаю придумать этому файлу другой формат и название. >> Взяв у коллег лучшее, естественно. >> >> Формат должен быть документирован, его корректность и наличие >> всех необходимых полей должны быть проверяемы программно (т.е. >> нужна схема). > > Да. Yaml. СхемЫ тоже на Yaml. Есть возражения? Во множественном, т.к. > модульность, схемы будут разделены по пакетам. Важна строгая > типизация, давно обсуждали это и кажется Иван Захарящев даже что-то > делал для этого с woo. > Разметка дисков -- существенная часть установщика. Давно хочу написать этот бэкенд и уже примеряюсь к инструментарию, хотя архитектура Volume Slicer (vs) созрела окончательно в прошлом году. Всегда считал, что описание разметки -- весьма непростая сущность, оно не обязано быть в том же формате, что и файл ответов, хотя служит тем же целям. Если вдруг это совпадёт, будет здорово, можно вложить одно Yaml-дерево в другое, но всегда можно использовать просто ссылку на отдельный файл. Для предметного обсуждения приложил пару файлов одной и той же развесистой разметки и краткое описание основных разделов. Ключи в описаниях блочных сущностный должны просто соответствовать длинным опциям, создающим эти блочные сущности. К примеру, "homehost: FIXED" в файле разметки превратится в "--homehost FIXED" при вызове mdadm. Такой подход позволяет полностью сохранить семантику при работе с внешними утилитами. Для проверки схемы используется pydantic. Выбирал из десятка похожих проектов. В результате схема описывается где-то в Yaml-файлах, где-то прямо в коде. Пример рабочих сниппетов для лучшего понимания: def to_kebab(s: str) -> str:     return s.replace('_', '-') ... class Filesystem(BaseModel):     id: int | None = None     fstype: str | None = None     label: str | None = None     uuid: UUID | None = None     no_discard: bool | None = None     model_config = ConfigDict(         alias_generator=AliasGenerator(             validation_alias=to_snake,             serialization_alias=to_kebab,         )     )     def model_post_init(self, __context: Any) -> None:         if self.fstype is None:             self.fstype = self.__class__.__name__         self.id = id(self)     @model_validator(mode='after')     def check_fstype(self) -> Self:         print(f'fields of the {self.fstype} filesystem are checked')         return self ... class vfat(Filesystem):     uuid: str | None = Field(         default=None,         min_length=9,         max_lenght=9,         pattern=r'^[0-9A-Fa-f]{4}\-[0-9A-Fa-f]{4}$'     ) ... Сама разбивалка должна получиться не очень сложной, т.к. используется много внешнего и готового. Например, для чтения используется lsblk с выводом в json, pyudev, нативные утилиты, типа dumpe2fs. Ближайшее чем-то похожее решение -- blivet, который немного залочен на RedHat и построен вокруг libblockdev. При желании его можно использовать, в Debian смогли прикрутить. Ещё чем-то очень отдалённо напоминает libstorage-ng, которая использует DOM/XML-дерево (XML-файл разметки). -- WBR, Leonid Krivoshein. --------------3D689Ls3nP4PR5eWhG20ADiR Content-Type: application/x-yaml; name="condtree.yaml" Content-Disposition: attachment; filename="condtree.yaml" Content-Transfer-Encoding: base64 IyBjb25kdHJlZS55YW1sIC0tIEFuIGV4YW1wbGUgb2YgdGhlIGNvbXBsZXggZGlzayBsYXlv dXQuCiMKIyBUaGlzIGZpbGUgaXMgY292ZXJlZCBieSB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UKIyB2ZXJzaW9uIDMsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24sIHdoaWNoCiMgc2hvdWxkIGJlIGluY2x1ZGVkIHdpdGggc291cmNlcyBhcyB0aGUg ZmlsZSBMSUNFTlNFLgojCiMgQ29weXJpZ2h0IChDKSAyMDIzLTIwMjQsIEFMVCBMaW51eCBU ZWFtCiMgQXV0aG9yOiBMZW9uaWQgS3Jpdm9zaGVpbiA8a2xhcmtAYWx0bGludXgub3JnPgot LS0KCmdlbmVyYWw6CgogICMgVm9sdW1lIFNsaWNlciBDb25kZW5zZWQgVHJlZSwgVmVyc2lv biAxLjAKICBkYXRhLWZvcm1hdDogVlNDVC8xLjAKCiAgIyBDb21tb24gb3B0aW9ucwogIHNz ZC1hdXRvLWRldGVjdDogdHJ1ZQogIHNlYXJjaC1yZW1vdmFibGU6IGZhbHNlCiAgYWxsLWRp c2tzLWJvb3RhYmxlOiBmYWxzZQoKZGVmYXVsdHM6CgogIHBhcnQ6CiAgICBwYXJ0dHlwZTog UgogIGx2OgogICAgbmFtZTogInt7SUR9fSIKICByYWlkOgogICAgbGV2ZWw6IHJhaWQxCiAg ICBob21laG9zdDogRklYRUQKICAgIG5hbWU6ICJ7e0lEfX0iCgp0YXJnZXRzOgoKICAjIE5W TUVAMSAtPiAvZGV2L252bWUwbjEsCiAgIyBOVk1FQDIgLT4gL2Rldi9udm1lMW4xCiAgIwog IE5WTUU6CiAgICBxLXR5OiAyCiAgICBrcGF0dGVybjogbnZtZT9uMQogICAgbWluLXNpemU6 IDQxMEdCCiAgICBtYXgtc2l6ZTogNTYwR0IKICAgIHRyYW46IG52bWUKICAgIGJvb3RhYmxl OiB0cnVlCgogICMgU0FUQUAxIC0+IC9kZXYvc2RhLAogICMgU0FUQUAyIC0+IC9kZXYvc2Ri LAogICMgU0FUQUAzIC0+IC9kZXYvc2RjLAogICMgU0FUQUA0IC0+IC9kZXYvc2RkCiAgIwog IFNBVEE6CiAgICBxLXR5OiA0CiAgICBrcGF0dGVybjogc2Q/CiAgICBtaW4tc2l6ZTogMTUw MEdCCiAgICB0cmFuOiBzYXRhCiAgICByb3RhOiB0cnVlCgpjcmVhdGU6CgogICMgTlZNRS1E T1NAMSAtPiBkb3MoL2Rldi9udm1lMG4xKSwKICAjIE5WTUUtRE9TQDIgLT4gZG9zKC9kZXYv bnZtZTFuMSkKICAjCiAgTlZNRS1ET1M6CiAgICBvbi1lYWNoOiBOVk1FCiAgICBiZGV2OiBw dHRhYmxlCiAgICBwdHR5cGU6IGRvcwogICAgd2lwZTogc2lnbgoKICAgICMgUGFydGl0aW9u cyBpbnNpZGUgZWFjaCB0YWJsZQogICAgIwogICAgY2hpbGRyZW46CgogICAgICAjIHN3YXBA MSAtPiAvZGV2L252bWUwbjFwMSwKICAgICAgIyBzd2FwQDIgLT4gL2Rldi9udm1lMW4xcDEK ICAgICAgIwogICAgICBzd2FwOgogICAgICAgIHNpemU6IDhHCiAgICAgICAgcHJpbWFyeTog dHJ1ZQoKICAgICAgIyBib290QDEgLT4gL2Rldi9udm1lMG4xcDIsCiAgICAgICMgYm9vdEAy IC0+IC9kZXYvbnZtZTFuMXAyCiAgICAgICMKICAgICAgYm9vdDoKICAgICAgICBzaXplOiA1 MDBNCiAgICAgICAgcHJpbWFyeTogdHJ1ZQogICAgICAgIGFjdGl2ZTogdHJ1ZQoKICAgICAg IyBmYWtlQDEgLT4gL2Rldi9udm1lMG4xcDMsCiAgICAgICMgZmFrZUAyIC0+IC9kZXYvbnZt ZTFuMXAzCiAgICAgICMKICAgICAgZmFrZToKICAgICAgICBzaXplOiAyRwogICAgICAgIHBy aW1hcnk6IHRydWUKCiAgICAgICMgcm9vdEAxIC0+IC9kZXYvbnZtZTBuMXA1LAogICAgICAj IHJvb3RAMiAtPiAvZGV2L252bWUxbjFwNQogICAgICAjCiAgICAgIHJvb3Q6CiAgICAgICAg c2l6ZTogNEcKCiAgICAgICMgZmFzdEAxIC0+IC9kZXYvbnZtZTBuMXA2LAogICAgICAjIGZh c3RAMiAtPiAvZGV2L252bWUxbjFwNgogICAgICAjCiAgICAgIGZhc3Q6CiAgICAgICAgc2l6 ZTogR1JPVwogICAgICAgIG1pbi1zaXplOiAxRwoKICAjCiAgIyBMaW51eCBzb2Z0d2FyZSBS QUlEIGFuZCBETS1jcnlwdCBzZXR1cAogICMKCiAgIyAvZGV2L21kL0JPT1QgLT4gW2Jvb3RA MSwgYm9vdEAyXQogICMKICBCT09UOgogICAgb3ZlcjogYm9vdAogICAgYmRldjogcmFpZAog ICAgbWV0YWRhdGE6ICIxLjAiCgogICAgIyBbQk9PVF0gIi9ib290IiAtPiAvZGV2L21kL0JP T1QKICAgICMKICAgIG92ZXJsYXBzOgogICAgICBmc3R5cGU6IGV4dDQKICAgICAgbGFiZWw6 IEJPT1QKICAgICAgZnN0YWI6IG5vZGV2LG5vc3VpZCxub2F0aW1lCiAgICAgIGRtb2RlOiAi MDcwMCIKICAgICAgbXBvaW50OiAvYm9vdAoKICAjIC9kZXYvbWQvUk9PVCAtPiBbZmFrZUAx LCBmYWtlQDJdCiAgIwogIFJPT1Q6CiAgICBvdmVyOiBmYWtlCiAgICBiZGV2OiByYWlkCgog ICAgIyBbU1lTVEVNXSAiL21udC9mYWtlcm9vdCIgLT4gL2Rldi9tZC9ST09UCiAgICAjCiAg ICBvdmVybGFwczoKICAgICAgZnN0eXBlOiBleHQ0CiAgICAgIGxhYmVsOiBTWVNURU0KICAg ICAgZnN0YWI6IG5vYXV0byxub2F0aW1lCiAgICAgIG1wb2ludDogL21udC9mYWtlcm9vdAoK ICAjIC9kZXYvbWQvUlgwMCAtPiBbcm9vdEAxLCByb290QDJdCiAgIwogIFJYMDA6CiAgICBv dmVyOiByb290CiAgICBiZGV2OiByYWlkCgogICAgIyAvZGV2L21hcHBlci9SWDAwX2NyeXB0 MSAtPiAvZGV2L21kL1JYMDAKICAgICMKICAgIG92ZXJsYXBzOgogICAgICBiZGV2OiBjcnlw dAogICAgICBsdWtzOiB2MgogICAgICBjcnlwdHRhYjogZGlzY2FyZAoKICAgICAgIyBbQ1JZ UFRPUk9PVF0gIi8iIC0+IC9kZXYvbWFwcGVyL1JYMDBfY3J5cHQxCiAgICAgICMKICAgICAg b3ZlcmxhcHM6CiAgICAgICAgZnN0eXBlOiBleHQyCiAgICAgICAgbGFiZWw6IENSWVBUT1JP T1QKICAgICAgICBmc3RhYjogbm9hdGltZQogICAgICAgIHdpcGU6IHplcm8KICAgICAgICBt cG9pbnQ6IC8KCiAgIyAvZGV2L21kL1NYMDAgLT4gW3N3YXBAMSwgc3dhcEAyXQogICMKICBT WDAwOgogICAgb3Zlcjogc3dhcAogICAgYmRldjogcmFpZAoKICAgICMgL2Rldi9tYXBwZXIv U1gwMF9jcnlwdDEgLT4gL2Rldi9tZC9TWDAwCiAgICAjCiAgICBvdmVybGFwczoKICAgICAg YmRldjogY3J5cHQKICAgICAgY3J5cHR0YWI6ICJwbGFpbjY0LGNpcGhlcj1hZXMteHRzLWVz c2l2OnNoYTI1Nixzd2FwLGRpc2NhcmQiCiAgICAgIGtleS1maWxlOiAvZGV2L3VyYW5kb20K ICAgICAga2V5ZmlsZS1zaXplOiA2NAoKICAgICAgIyBbQ1JZUFRPU1dBUF0gLT4gL2Rldi9t YXBwZXIvU1gwMF9jcnlwdDEKICAgICAgIwogICAgICBvdmVybGFwczoKICAgICAgICBmc3R5 cGU6IHN3YXAKICAgICAgICBsYWJlbDogQ1JZUFRPU1dBUAogICAgICAgIHdpcGU6IHplcm8K ICAgICAgICBtcG9pbnQ6IHN3YXAKCiAgIyAvZGV2L21kL0ZBU1QgLT4gW2Zhc3RAMSwgZmFz dEAyXQogICMKICBGQVNUOgogICAgb3ZlcjogZmFzdAogICAgYmRldjogcmFpZAogICAgd2lw ZTogcmFuZG9tCgogICAgIyAvZGV2L21hcHBlci9GQVNUX2NyeXB0IC0+IC9kZXYvbWQvRkFT VAogICAgIwogICAgb3ZlcmxhcHM6CiAgICAgIEZBU1RfY3J5cHQ6CiAgICAgICAgYmRldjog Y3J5cHQKICAgICAgICBjcnlwdHRhYjogInBsYWluNjQsY2lwaGVyPWFlcy14dHMtZXNzaXY6 c2hhMjU2LGRpc2NhcmQiCiAgICAgICAga2V5LWZpbGU6IC9ldGMvY2FjaGUua2V5CgogICMg L2Rldi9tZC9TTE9XIC0+IFtTQVRBQDEsIFNBVEFAMiwgU0FUQUAzLCBTQVRBQDRdCiAgIwog IFNMT1c6CiAgICBvdmVyOiBTQVRBCiAgICBiZGV2OiByYWlkCiAgICBsZXZlbDogcmFpZDEw CiAgICB3aXBlOiByYW5kb20KCiAgICAjIC9kZXYvbWFwcGVyL1NMT1dfY3J5cHQgLT4gL2Rl di9tZC9TTE9XCiAgICAjCiAgICBvdmVybGFwczoKICAgICAgU0xPV19jcnlwdDoKICAgICAg ICBiZGV2OiBjcnlwdAogICAgICAgIGNyeXB0dGFiOiAicGxhaW42NCxjaXBoZXI9YWVzLXh0 cy1lc3NpdjpzaGEyNTYiCiAgICAgICAga2V5LWZpbGU6IC9ldGMvc3RvcmFnZS5rZXkKCiAg IwogICMgTG9naWNhbCBWb2x1bWUgTWFuYWdtZW50IChMVk0yKQogICMKCiAgIyAvZGV2L3N0 b3JhZ2UvIChWb2x1bWUgR3JvdXApCiAgIwogIHN0b3JhZ2U6CiAgICBvdmVyOiBbU0xPV19j cnlwdCwgRkFTVF9jcnlwdF0KICAgIGJkZXY6IHZnCiAgICBleHRlbnQtc2l6ZTogNjRNCgog ICAgIyBMb2dpY2FsIFZvbHVtZXMKICAgICMKICAgIGNoaWxkcmVuOgoKICAgICAgIyAvZGV2 L3N0b3JhZ2UvaG9tZV9qb3VybmFsCiAgICAgICMKICAgICAgaG9tZV9qb3VybmFsOgogICAg ICAgIHB2OiBGQVNUX2NyeXB0CiAgICAgICAgc2l6ZTogMjU2TQoKICAgICAgIyAvZGV2L3N0 b3JhZ2UvZGF0YV9qb3VybmFsCiAgICAgICMKICAgICAgZGF0YV9qb3VybmFsOgogICAgICAg IHB2OiBGQVNUX2NyeXB0CiAgICAgICAgc2l6ZTogMjU2TQoKICAgICAgIyAvZGV2L3N0b3Jh Z2UvZF9wb29sX2NhY2hlCiAgICAgICMKICAgICAgZF9wb29sX2NhY2hlOgogICAgICAgIHR5 cGU6IGNhY2hlLXBvb2wKICAgICAgICBwdjogRkFTVF9jcnlwdAogICAgICAgIHNpemU6IDJH CiAgICAgICAgY2FjaGVtb2RlOiB3cml0ZWJhY2sKICAgICAgICBjaHVua3NpemU6IDY0Cgog ICAgICAjIC9kZXYvc3RvcmFnZS9iYWNrdXAKICAgICAgIwogICAgICBiYWNrdXA6CiAgICAg ICAgcHY6IFNMT1dfY3J5cHQKICAgICAgICBzaXplOiA1MTJHCiAgICAgICAgY2h1bmtzaXpl OiAyNTYKCiAgICAgICAgIyBbQkFDS1VQXSAiL21udC9iYWNrdXAiIC0+IC9kZXYvc3RvcmFn ZS9iYWNrdXAKICAgICAgICAjCiAgICAgICAgb3ZlcmxhcHM6CiAgICAgICAgICBmc3R5cGU6 IHhmcwogICAgICAgICAgbGFiZWw6IEJBQ0tVUAogICAgICAgICAgbm8tZGlzY2FyZDogdHJ1 ZQogICAgICAgICAgZnN0YWI6IG5vYXV0byxub2Rldixub3N1aWQscmVsYXRpbWUKICAgICAg ICAgIG1wb2ludDogL21udC9iYWNrdXAKCiAgICAgICMgL2Rldi9zdG9yYWdlL2RfcG9vbAog ICAgICAjCiAgICAgIGRfcG9vbDoKICAgICAgICB0eXBlOiB0aGlucG9vbAogICAgICAgIHB2 OiBTTE9XX2NyeXB0MQogICAgICAgIHNpemU6IDEwMEcKICAgICAgICBjaHVua3NpemU6IDY0 CiAgICAgICAgY2FjaGVkZXZpY2U6IGRfcG9vbF9jYWNoZQoKICAgICAgICAjIFZvbHVtZXMg aW5zaWRlIHRoaW5wb29sCiAgICAgICAgIwogICAgICAgIGNoaWxkcmVuOgoKICAgICAgICAg ICMgL2Rldi9zdG9yYWdlL2hvbWVsdgogICAgICAgICAgIwogICAgICAgICAgaG9tZWx2Ogog ICAgICAgICAgICBzaXplOiA1MTJNCiAgICAgICAgICAgIHZpcnR1YWxzaXplOiA0VAoKICAg ICAgICAgICAgIyBbSE9NRV0gIi9ob21lIiAtPgogICAgICAgICAgICAjIFsvZGV2L3N0b3Jh Z2UvaG9tZWx2LCAvZGV2L3N0b3JhZ2UvaG9tZV9qb3VyYWxdCiAgICAgICAgICAgICMKICAg ICAgICAgICAgb3ZlcmxhcHM6CiAgICAgICAgICAgICAgZnN0eXBlOiBqZnMKICAgICAgICAg ICAgICBsYWJlbDogSE9NRQogICAgICAgICAgICAgIGpvdXJuYWw6IGhvbWVfam91cm5hbAog ICAgICAgICAgICAgIGZzdGFiOiBub2Rldixub2V4ZWMsbm9hdGltZQogICAgICAgICAgICAg IG1wb2ludDogL2hvbWUKCiAgICAgICAgICAjIC9kZXYvc3RvcmFnZS9kYXRhbHYKICAgICAg ICAgICMKICAgICAgICAgIGRhdGFsdjoKICAgICAgICAgICAgc2l6ZTogNTEyTQogICAgICAg ICAgICB2aXJ0dWFsc2l6ZTogNFQKCiAgICAgICAgICAgICMgW0RBVEFdICIvbW50L2RhdGEi IC0+CiAgICAgICAgICAgICMgWy9kZXYvc3RvcmFnZS9kYXRhbHYsIC9kZXYvc3RvcmFnZS9k YXRhX2pvdXJhbF0KICAgICAgICAgICAgIwogICAgICAgICAgICBvdmVybGFwczoKICAgICAg ICAgICAgICBmc3R5cGU6IGpmcwogICAgICAgICAgICAgIGxhYmVsOiBEQVRBCiAgICAgICAg ICAgICAgam91cm5hbDogZGF0YV9qb3VybmFsCiAgICAgICAgICAgICAgZnN0YWI6IG5vZGV2 LG5vZXhlYyxub2F0aW1lCiAgICAgICAgICAgICAgbXBvaW50OiAvbW50L2RhdGEK --------------3D689Ls3nP4PR5eWhG20ADiR Content-Type: application/x-yaml; name="exp-list.yaml" Content-Disposition: attachment; filename="exp-list.yaml" Content-Transfer-Encoding: base64 IyBleHAtbGlzdC55YW1sIC0tIEFuIGV4YW1wbGUgb2YgdGhlIGNvbXBsZXggZGlzayBsYXlv dXQuCiMKIyBUaGlzIGZpbGUgaXMgY292ZXJlZCBieSB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UKIyB2ZXJzaW9uIDMsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24sIHdoaWNoCiMgc2hvdWxkIGJlIGluY2x1ZGVkIHdpdGggc291cmNlcyBhcyB0aGUg ZmlsZSBDT1BZSU5HLgojCiMgQ29weXJpZ2h0IChDKSAyMDIzLTIwMjQsIEFMVCBMaW51eCBU ZWFtCiMgQXV0aG9yOiBMZW9uaWQgS3Jpdm9zaGVpbiA8a2xhcmtAYWx0bGludXgub3JnPgot LS0KCmdlbmVyYWw6CgogICMgVm9sdW1lIFNsaWNlciBFeHBhbmRlZCBMaXN0LCBWZXJzaW9u IDEuMAogIGRhdGEtZm9ybWF0OiBWU0VMLzEuMAoKICAjIENvbW1vbiBvcHRpb25zCiAgc3Nk LWF1dG8tZGV0ZWN0OiB0cnVlCiAgc2VhcmNoLXJlbW92YWJsZTogZmFsc2UKICBhbGwtZGlz a3MtYm9vdGFibGU6IGZhbHNlCgphY3RpdmF0ZToKCiAgLSBkaXNrCiAgLSBwdHRhYmxlCiAg LSByYWlkCiAgLSBjcnlwdAogIC0gbHZtMgogIC0gZXh0NAogIC0gZXh0MgogIC0gc3dhcAog IC0geGZzCiAgLSBqZnMKCnRhcmdldHM6CgogICMgL2Rldi9udm1lMG4xCiAgLSBpZDogTlZN RUAxCiAgICBiZGV2OiBkaXNrCiAgICBrcGF0dGVybjogbnZtZT9uMQogICAgbWluLXNpemU6 IDQxMEdCCiAgICBtYXgtc2l6ZTogNTYwR0IKICAgIHRyYW46IG52bWUKICAgIGJvb3RhYmxl OiB0cnVlCgogICMgL2Rldi9udm1lMW4xCiAgLSBpZDogTlZNRUAyCiAgICBiZGV2OiBkaXNr CiAgICBrcGF0dGVybjogbnZtZT9uMQogICAgbWluLXNpemU6IDQxMEdCCiAgICBtYXgtc2l6 ZTogNTYwR0IKICAgIHRyYW46IG52bWUKICAgIGJvb3RhYmxlOiB0cnVlCgogICMgL2Rldi9z ZGEKICAtIGlkOiBTQVRBQDEKICAgIGJkZXY6IGRpc2sKICAgIGtwYXR0ZXJuOiBzZD8KICAg IG1pbi1zaXplOiAxNTAwR0IKICAgIHRyYW46IHNhdGEKICAgIHJvdGE6IHRydWUKCiAgIyAv ZGV2L3NkYgogIC0gaWQ6IFNBVEFAMgogICAgYmRldjogZGlzawogICAga3BhdHRlcm46IHNk PwogICAgbWluLXNpemU6IDE1MDBHQgogICAgdHJhbjogc2F0YQogICAgcm90YTogdHJ1ZQoK ICAjIC9kZXYvc2RjCiAgLSBpZDogU0FUQUAzCiAgICBiZGV2OiBkaXNrCiAgICBrcGF0dGVy bjogc2Q/CiAgICBtaW4tc2l6ZTogMTUwMEdCCiAgICB0cmFuOiBzYXRhCiAgICByb3RhOiB0 cnVlCgogICMgL2Rldi9zZGQKICAtIGlkOiBTQVRBQDQKICAgIGJkZXY6IGRpc2sKICAgIGtw YXR0ZXJuOiBzZD8KICAgIG1pbi1zaXplOiAxNTAwR0IKICAgIHRyYW46IHNhdGEKICAgIHJv dGE6IHRydWUKCmNyZWF0ZToKCiAgIyBkb3MoL2Rldi9udm1lMG4xKQogIC0gaWQ6IE5WTUUt RE9TQDEKICAgIG92ZXI6IE5WTUVAMQogICAgYmRldjogcHR0YWJsZQogICAgcHR0eXBlOiBk b3MKICAgIHdpcGU6IHNpZ24KCiAgIyAvZGV2L252bWUwbjFwMQogIC0gaWQ6IHN3YXBAMQog ICAgaW5zaWRlOiBOVk1FLURPU0AxCiAgICBiZGV2OiBwYXJ0CiAgICBzaXplOiA4RwogICAg cHJpbWFyeTogdHJ1ZQogICAgcGFydHR5cGU6IFIKCiAgIyAvZGV2L252bWUwbjFwMgogIC0g aWQ6IGJvb3RAMQogICAgaW5zaWRlOiBOVk1FLURPU0AxCiAgICBiZGV2OiBwYXJ0CiAgICBz aXplOiA1MDBNCiAgICBwcmltYXJ5OiB0cnVlCiAgICBhY3RpdmU6IHRydWUKICAgIHBhcnR0 eXBlOiBSCgogICMgL2Rldi9udm1lMG4xcDMKICAtIGlkOiBmYWtlQDEKICAgIGluc2lkZTog TlZNRS1ET1NAMQogICAgYmRldjogcGFydAogICAgc2l6ZTogMkcKICAgIHByaW1hcnk6IHRy dWUKICAgIHBhcnR0eXBlOiBSCgogICMgL2Rldi9udm1lMG4xcDUKICAtIGlkOiByb290QDEK ICAgIGluc2lkZTogTlZNRS1ET1NAMQogICAgYmRldjogcGFydAogICAgc2l6ZTogNEcKICAg IHBhcnR0eXBlOiBSCgogICMgL2Rldi9udm1lMG4xcDYKICAtIGlkOiBmYXN0QDEKICAgIGlu c2lkZTogTlZNRS1ET1NAMQogICAgc2l6ZTogR1JPVwogICAgbWluLXNpemU6IDFHCiAgICBw YXJ0dHlwZTogUgoKICAjIGRvcygvZGV2L252bWUwbjEpCiAgLSBlbmQtb2Y6IE5WTUUtRE9T QDEKCiAgIyBkb3MoL2Rldi9udm1lMW4xKQogIC0gaWQ6IE5WTUUtRE9TQDIKICAgIG92ZXI6 IE5WTUVAMgogICAgYmRldjogcHR0YWJsZQogICAgcHR0eXBlOiBkb3MKICAgIHdpcGU6IHNp Z24KCiAgIyAvZGV2L252bWUxbjFwMQogIC0gaWQ6IHN3YXBAMgogICAgaW5zaWRlOiBOVk1F LURPU0AyCiAgICBiZGV2OiBwYXJ0CiAgICBzaXplOiA4RwogICAgcHJpbWFyeTogdHJ1ZQog ICAgcGFydHR5cGU6IFIKCiAgIyAvZGV2L252bWUxbjFwMgogIC0gaWQ6IGJvb3RAMgogICAg aW5zaWRlOiBOVk1FLURPU0AyCiAgICBiZGV2OiBwYXJ0CiAgICBzaXplOiA1MDBNCiAgICBw cmltYXJ5OiB0cnVlCiAgICBhY3RpdmU6IHRydWUKICAgIHBhcnR0eXBlOiBSCgogICMgL2Rl di9udm1lMW4xcDMKICAtIGlkOiBmYWtlQDIKICAgIGluc2lkZTogTlZNRS1ET1NAMgogICAg YmRldjogcGFydAogICAgc2l6ZTogMkcKICAgIHByaW1hcnk6IHRydWUKICAgIHBhcnR0eXBl OiBSCgogICMgL2Rldi9udm1lMW4xcDUKICAtIGlkOiByb290QDIKICAgIGluc2lkZTogTlZN RS1ET1NAMgogICAgYmRldjogcGFydAogICAgc2l6ZTogNEcKICAgIHBhcnR0eXBlOiBSCgog ICMgL2Rldi9udm1lMW4xcDYKICAtIGlkOiBmYXN0QDIKICAgIGluc2lkZTogTlZNRS1ET1NA MgogICAgYmRldjogcGFydAogICAgc2l6ZTogR1JPVwogICAgbWluLXNpemU6IDFHCiAgICBw YXJ0dHlwZTogUgoKICAjIGRvcygvZGV2L252bWUxbjEpCiAgLSBlbmQtb2Y6IE5WTUUtRE9T QDIKCiAgIwogICMgTGludXggc29mdHdhcmUgUkFJRAogICMKCiAgIyAvZGV2L21kL0JPT1Qg LT4gW2Jvb3RAMSwgYm9vdEAyXQogICMKICAtIGlkOiBCT09UCiAgICBvdmVyOiBbYm9vdEAx LCBib290QDJdCiAgICBiZGV2OiByYWlkCiAgICBsZXZlbDogcmFpZDEKICAgIG1ldGFkYXRh OiAiMS4wIgogICAgaG9tZWhvc3Q6IEZJWEVECiAgICBuYW1lOiBCT09UCgogICMgL2Rldi9t ZC9ST09UIC0+IFtmYWtlQDEsIGZha2VAMl0KICAjCiAgLSBpZDogUk9PVAogICAgb3Zlcjog W2Zha2VAMSwgZmFrZUAyXQogICAgYmRldjogcmFpZAogICAgbGV2ZWw6IHJhaWQxCiAgICBo b21laG9zdDogRklYRUQKICAgIG5hbWU6IFJPT1QKCiAgIyAvZGV2L21kL1JYMDAgLT4gW3Jv b3RAMSwgcm9vdEAyXQogICMKICAtIGlkOiBSWDAwCiAgICBvdmVyOiBbcm9vdEAxLCByb290 QDJdCiAgICBiZGV2OiByYWlkCiAgICBsZXZlbDogcmFpZDEKICAgIGhvbWVob3N0OiBGSVhF RAogICAgbmFtZTogUlgwMAoKICAjIC9kZXYvbWQvU1gwMCAtPiBbc3dhcEAxLCBzd2FwQDJd CiAgIwogIC0gaWQ6IFNYMDAKICAgIG92ZXI6IFtzd2FwQDEsIHN3YXBAMl0KICAgIGJkZXY6 IHJhaWQKICAgIGxldmVsOiByYWlkMQogICAgaG9tZWhvc3Q6IEZJWEVECiAgICBuYW1lOiBT WDAwCgogICMgL2Rldi9tZC9GQVNUIC0+IFtmYXN0QDEsIGZhc3RAMl0KICAjCiAgLSBpZDog RkFTVAogICAgb3ZlcjogW2Zhc3RAMSwgZmFzdEAyXQogICAgYmRldjogcmFpZAogICAgbGV2 ZWw6IHJhaWQxCiAgICBob21laG9zdDogRklYRUQKICAgIG5hbWU6IEZBU1QKICAgIHdpcGU6 IHJhbmRvbQoKICAjIC9kZXYvbWQvU0xPVyAtPiBbU0FUQUAxLCBTQVRBQDIsIFNBVEFAMywg U0FUQUA0XQogICMKICAtIGlkOiBTTE9XCiAgICBvdmVyOiBbU0FUQUAxLCBTQVRBQDIsIFNB VEFAMywgU0FUQUA0XQogICAgYmRldjogcmFpZAogICAgbGV2ZWw6IHJhaWQxMAogICAgaG9t ZWhvc3Q6IEZJWEVECiAgICBuYW1lOiBTTE9XCiAgICB3aXBlOiByYW5kb20KCiAgIwogICMg RE0tY3J5cHQgc2V0dXAKICAjCgogICMgL2Rldi9tYXBwZXIvUlgwMF9jcnlwdDEgLT4gL2Rl di9tZC9SWDAwCiAgIwogIC0gaWQ6IFJYMDBfY3J5cHQxCiAgICBvdmVyOiBSWDAwCiAgICBi ZGV2OiBjcnlwdAogICAgbHVrczogdjIKICAgIGNyeXB0dGFiOiBkaXNjYXJkCgogICMgL2Rl di9tYXBwZXIvU1gwMF9jcnlwdDEgLT4gL2Rldi9tZC9TWDAwCiAgIwogIC0gaWQ6IFNYMDBf Y3J5cHQxCiAgICBvdmVyOiBTWDAwCiAgICBiZGV2OiBjcnlwdAogICAgY3J5cHR0YWI6ICJw bGFpbjY0LGNpcGhlcj1hZXMteHRzLWVzc2l2OnNoYTI1Nixzd2FwLGRpc2NhcmQiCiAgICBr ZXktZmlsZTogL2Rldi91cmFuZG9tCiAgICBrZXlmaWxlLXNpemU6IDY0CgogICMgL2Rldi9t YXBwZXIvRkFTVF9jcnlwdCAtPiAvZGV2L21kL0ZBU1QKICAjCiAgLSBpZDogRkFTVF9jcnlw dAogICAgb3ZlcjogRkFTVAogICAgYmRldjogY3J5cHQKICAgIGNyeXB0dGFiOiAicGxhaW42 NCxjaXBoZXI9YWVzLXh0cy1lc3NpdjpzaGEyNTYsZGlzY2FyZCIKICAgIGtleS1maWxlOiAv ZXRjL2NhY2hlLmtleQoKICAjIC9kZXYvbWFwcGVyL1NMT1dfY3J5cHQgLT4gL2Rldi9tZC9T TE9XCiAgIwogIC0gaWQ6IFNMT1dfY3J5cHQKICAgIG92ZXI6IFNMT1cKICAgIGJkZXY6IGNy eXB0CiAgICBjcnlwdHRhYjogInBsYWluNjQsY2lwaGVyPWFlcy14dHMtZXNzaXY6c2hhMjU2 IgogICAga2V5LWZpbGU6IC9ldGMvc3RvcmFnZS5rZXkKCiAgIwogICMgTG9naWNhbCBWb2x1 bWUgTWFuYWdtZW50IChMVk0yKQogICMKCiAgIyAvZGV2L3N0b3JhZ2UvIChWb2x1bWUgR3Jv dXApCiAgIwogIC0gaWQ6IHN0b3JhZ2UKICAgIG92ZXI6IFtTTE9XX2NyeXB0LCBGQVNUX2Ny eXB0XQogICAgYmRldjogdmcKICAgIGV4dGVudC1zaXplOiA2NE0KCiAgIyAvZGV2L3N0b3Jh Z2UvaG9tZV9qb3VybmFsCiAgIwogIC0gaWQ6IGhvbWVfam91cm5hbAogICAgaW5zaWRlOiBz dG9yYWdlCiAgICBwdjogRkFTVF9jcnlwdAogICAgYmRldjogbHYKICAgIHNpemU6IDI1Nk0K ICAgIG5hbWU6IGhvbWVfam91cm5hbAoKICAjIC9kZXYvc3RvcmFnZS9kYXRhX2pvdXJuYWwK ICAjCiAgLSBpZDogZGF0YV9qb3VybmFsCiAgICBpbnNpZGU6IHN0b3JhZ2UKICAgIHB2OiBG QVNUX2NyeXB0CiAgICBiZGV2OiBsdgogICAgc2l6ZTogMjU2TQogICAgbmFtZTogZGF0YV9q b3VybmFsCgogICMgL2Rldi9zdG9yYWdlL2RfcG9vbF9jYWNoZQogICMKICAtIGlkOiBkX3Bv b2xfY2FjaGUKICAgIGluc2lkZTogc3RvcmFnZQogICAgcHY6IEZBU1RfY3J5cHQKICAgIGJk ZXY6IGx2CiAgICB0eXBlOiBjYWNoZS1wb29sCiAgICBzaXplOiAyRwogICAgbmFtZTogZF9w b29sX2NhY2hlCiAgICBjYWNoZW1vZGU6IHdyaXRlYmFjawogICAgY2h1bmtzaXplOiA2NAoK ICAjIC9kZXYvc3RvcmFnZS9iYWNrdXAKICAjCiAgLSBpZDogYmFja3VwCiAgICBpbnNpZGU6 IHN0b3JhZ2UKICAgIHB2OiBTTE9XX2NyeXB0CiAgICBiZGV2OiBsdgogICAgc2l6ZTogNTEy RwogICAgbmFtZTogYmFja3VwCiAgICBjaHVua3NpemU6IDI1NgoKICAjIC9kZXYvc3RvcmFn ZS9kX3Bvb2wKICAjCiAgLSBpZDogZF9wb29sCiAgICBpbnNpZGU6IHN0b3JhZ2UKICAgIHB2 OiBTTE9XX2NyeXB0MQogICAgYmRldjogbHYKICAgIHR5cGU6IHRoaW5wb29sCiAgICBzaXpl OiAxMDBHCiAgICBuYW1lOiBkX3Bvb2wKICAgIGNodW5rc2l6ZTogNjQKICAgIGNhY2hlZGV2 aWNlOiBkX3Bvb2xfY2FjaGUKCiAgIyAvZGV2L3N0b3JhZ2UvaG9tZWx2CiAgIwogIC0gaWQ6 IGhvbWVsdgogICAgaW5zaWRlOiBkX3Bvb2wKICAgIGJkZXY6IGx2CiAgICBzaXplOiA1MTJN CiAgICBuYW1lOiBob21lbHYKICAgIHZpcnR1YWxzaXplOiA0VAoKICAjIC9kZXYvc3RvcmFn ZS9kYXRhbHYKICAjCiAgLSBpZDogZGF0YWx2CiAgICBpbnNpZGU6IGRfcG9vbAogICAgYmRl djogbHYKICAgIHNpemU6IDUxMk0KICAgIG5hbWU6IGRhdGFsdgogICAgdmlydHVhbHNpemU6 IDRUCgogICMgL2Rldi9zdG9yYWdlL2RfcG9vbAogIC0gZW5kLW9mOiBkX3Bvb2wKCiAgIyAv ZGV2L3N0b3JhZ2UvCiAgLSBlbmQtb2Y6IHN0b3JhZ2UKCnZvbHVtZXM6CgogICMgW0NSWVBU T1JPT1RdICIvIiAtPiAvZGV2L21hcHBlci9SWDAwX2NyeXB0MQogICMKICAtIG92ZXI6IFJY MDBfY3J5cHQxCiAgICBmc3R5cGU6IGV4dDIKICAgIGxhYmVsOiBDUllQVE9ST09UCiAgICBm c3RhYjogbm9hdGltZQogICAgd2lwZTogemVybwogICAgbXBvaW50OiAvCgogICMgW0JPT1Rd ICIvYm9vdCIgLT4gL2Rldi9tZC9CT09UCiAgIwogIC0gb3ZlcjogQk9PVAogICAgZnN0eXBl OiBleHQ0CiAgICBsYWJlbDogQk9PVAogICAgZnN0YWI6IG5vZGV2LG5vc3VpZCxub2F0aW1l CiAgICBkbW9kZTogIjA3MDAiCiAgICBtcG9pbnQ6IC9ib290CgogICMgW0hPTUVdICIvaG9t ZSIgLT4KICAjIFsvZGV2L3N0b3JhZ2UvaG9tZWx2LCAvZGV2L3N0b3JhZ2UvaG9tZV9qb3Vy YWxdCiAgIwogIC0gb3ZlcjogaG9tZWx2CiAgICBmc3R5cGU6IGpmcwogICAgbGFiZWw6IEhP TUUKICAgIGpvdXJuYWw6IGhvbWVfam91cm5hbAogICAgZnN0YWI6IG5vZGV2LG5vZXhlYyxu b2F0aW1lCiAgICBtcG9pbnQ6IC9ob21lCgogICMgW0JBQ0tVUF0gIi9tbnQvYmFja3VwIiAt PiAvZGV2L3N0b3JhZ2UvYmFja3VwCiAgIwogIC0gb3ZlcjogYmFja3VwCiAgICBmc3R5cGU6 IHhmcwogICAgbGFiZWw6IEJBQ0tVUAogICAgbm8tZGlzY2FyZDogdHJ1ZQogICAgZnN0YWI6 IG5vYXV0byxub2Rldixub3N1aWQscmVsYXRpbWUKICAgIG1wb2ludDogL21udC9iYWNrdXAK CiAgIyBbREFUQV0gIi9tbnQvZGF0YSIgLT4KICAjIFsvZGV2L3N0b3JhZ2UvZGF0YWx2LCAv ZGV2L3N0b3JhZ2UvZGF0YV9qb3VyYWxdCiAgIwogIC0gb3ZlcjogZGF0YWx2CiAgICBmc3R5 cGU6IGpmcwogICAgbGFiZWw6IERBVEEKICAgIGpvdXJuYWw6IGRhdGFfam91cm5hbAogICAg ZnN0YWI6IG5vZGV2LG5vZXhlYyxub2F0aW1lCiAgICBtcG9pbnQ6IC9tbnQvZGF0YQoKICAj IFtTWVNURU1dICIvbW50L2Zha2Vyb290IiAtPiAvZGV2L21kL1JPT1QKICAjCiAgLSBvdmVy OiBST09UCiAgICBmc3R5cGU6IGV4dDQKICAgIGxhYmVsOiBTWVNURU0KICAgIGZzdGFiOiBu b2F1dG8sbm9hdGltZQogICAgbXBvaW50OiAvbW50L2Zha2Vyb290CgogICMgW0NSWVBUT1NX QVBdIC0+IC9kZXYvbWFwcGVyL1NYMDBfY3J5cHQxCiAgIwogIC0gb3ZlcjogU1gwMF9jcnlw dDEKICAgIGZzdHlwZTogc3dhcAogICAgbGFiZWw6IENSWVBUT1NXQVAKICAgIHdpcGU6IHpl cm8KICAgIG1wb2ludDogc3dhcAo= --------------3D689Ls3nP4PR5eWhG20ADiR Content-Type: text/markdown; charset=UTF-8; name="layout-ru.md" Content-Disposition: attachment; filename="layout-ru.md" Content-Transfer-Encoding: base64 IyDQpNC+0YDQvNCw0YIg0YTQsNC50LvQsCDRgNCw0LfQvNC10YLQutC4INC00LjRgdC60L7Q sgoKIyMgVlNDVC8xLjA6IFZvbHVtZSBTbGljZXIgQ29uZGVuc2VkIFRyZWUsIFZlcnNpb24g MS4wCgrQmNGB0YXQvtC00L3Ri9C5INGE0LDQudC7INGBINCz0LvRg9Cx0L7QutC+0Lkg0LjQ tdGA0LDRgNGF0LjQtdC5INCy0LvQvtC20LXQvdC90L7RgdGC0LgsINC/0L7Qt9Cy0L7Qu9GP 0Y7RidC40Lkg0L7Qv9GA0LXQtNC10LvQuNGC0YwK0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQ vtC00L3QuNGFINGB0YPRidC90L7RgdGC0LXQuSDQvtGCINC00YDRg9Cz0LjRhSDQsdC10Lcg 0L3QtdC+0LHRhdC+0LTQuNC80L7RgdGC0Lgg0LjQtNC10L3RgtC40YTQuNC60LDRhtC40LgK 0LrQsNC20LTQvtC5INCx0LvQvtGH0L3QvtC5INGB0YPRidC90L7RgdGC0LguINCSINGH0LjR gdC70LUg0L7RgdC+0LHQtdC90L3QvtGB0YLQtdC5OiDQv9C+0LTQtNC10YDQttC60LAg0L3Q sNCx0L7RgNC+0LIg0LTQuNGB0LrQvtCyLArQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQsNGP INC40LTQtdC90YLQuNGE0LjQutCw0YbQuNGPINGD0LfQu9C+0LIg0LTQtdGA0LXQstCwINGD 0YHRgtGA0L7QudGB0YLQsiwg0L/QvtC00LTQtdGA0LbQutCwINC30L3QsNGH0LXQvdC40LkK 0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINCx0LvQvtGH0L3Ri9GFINGB0YPRidC9 0L7RgdGC0LXQuSDQuCDRhNCw0LnQu9C+0LLRi9GFINGB0LjRgdGC0LXQvC4g0JIg0Y3RgtC+ 0Lwg0YTQvtGA0LzQsNGC0LUK0LTQvtC/0YPRgdC60LDQtdGC0YHRjyDQvtC/0YDQtdC00LXQ u9C10L3QuNC1INCz0YDRg9C/0L8g0LTQuNGB0LrQvtCyINC/0L7QtCDQvtCx0YnQuNC8INC4 0LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0L7QvCDQuCDQs9GA0YPQv9C/CtC+0L/QtdGA0LDR htC40LksINCy0YvQv9C+0LvQvdGP0LXQvNGL0YUg0L3QsNC0INC90LjQvNC4INC/0L4g0L7Q tNC90L7QvNGDINC/0YDQuNC90YbQuNC/0YMuCgrQn9C10YDQstGL0Lkg0YPRgNC+0LLQtdC9 0Ywg0YTQsNC50LvQsCDRgNCw0LfQvNC10YLQutC4INC/0YDQtdC00YPRgdC80LDRgtGA0LjQ stCw0LXRgiDRgdC70LXQtNGD0Y7RidC40LUg0YHQtdC60YbQuNC4OgoKKiBgZ2VuZXJhbGA6 INC40L3RhNC+0YDQvNCw0YbQuNGPINC+INGE0L7RgNC80LDRgtC1INC00LDQvdC90YvRhSDQ uCDQs9C70L7QsdCw0LvRjNC90YvQtSDQvtC/0YbQuNC4CiogYGRlZmF1bHRzYDog0LfQvdCw 0YfQtdC90LjRjyDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQtNC70Y8g0LTRgNGD0LPQuNGF INGB0LXQutGG0LjQuSDRjdGC0L7Qs9C+INGE0LDQudC70LAKKiBgYWN0aXZhdGVgOiDQvtC/ 0LjRgdCw0L3QuNGPINC/0L7QtNGB0LjRgdGC0LXQvCwg0LfQsNC00LXQudGB0YLQstC+0LLQ sNC90L3Ri9GFINC00L4g0L3QsNGH0LDQu9CwINGA0LDQt9C80LXRgtC60LgKKiBgcHJvdGVj dGVkYDog0L7Qv9C40YHQsNC90LjRjyDQstGB0LXRhSDQuNGB0LrQu9GO0YfQsNC10LzRi9GF ICjQt9Cw0YnQuNGJ0LDQtdC80YvRhSkg0LTQuNGB0LrQvtCyCiogYHRhcmdldHNgOiDQvtC/ 0LjRgdCw0L3QuNGPINCy0YHQtdGFINCy0LrQu9GO0YfQsNC10LzRi9GFINGG0LXQu9C10LLR i9GFINC00LjRgdC60L7QsgoqIGBsYXlvdXRgOiDQvtC/0LjRgdCw0L3QuNC1INC/0YDQvtCy 0LXRgNGP0LXQvNGL0YUg0Y3Qu9C10LzQtdC90YLQvtCyINGB0YPRidC10YHRgtCy0YPRjtGJ 0LXQuSDRgNCw0LfQvNC10YLQutC4CiogYGRlbGV0ZWA6INGB0L/QuNGB0L7QuiDRg9C00LDQ u9GP0LXQvNGL0YUg0Y3Qu9C10LzQtdC90YLQvtCyINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQ uSDRgNCw0LfQvNC10YLQutC4CiogYGNoYW5nZWA6INC+0L/QuNGB0LDQvdC40LUg0LjQt9C8 0LXQvdC10L3QuNC5INGB0YPRidC10YHRgtCy0YPRjtGJ0LXQuSDRgNCw0LfQvNC10YLQutC4 CiogYGNyZWF0ZWA6INC+0L/QuNGB0LDQvdC40LUg0LLQvdC+0LLRjCDRgdC+0LfQtNCw0LLQ sNC10LzRi9GFINGN0LvQtdC80LXQvdGC0L7QsiDQsdGD0LTRg9GJ0LXQuSDRgNCw0LfQvNC1 0YLQutC4CiogYHZvbHVtZXNgOiDRgdC/0LjRgdC+0Log0YTQvtGA0LzQsNGC0LjRgNGD0LXQ vNGL0YUg0YLQvtC80L7QsiDQuCDQvNC+0L3RgtC40YDRg9C10LzRi9GFINGE0LDQudC70L7Q stGL0YUg0YHQuNGB0YLQtdC8CgrQntCx0Y/Qt9Cw0YLQtdC70YzQvdGL0LzQuCDRj9Cy0LvR j9GO0YLRgdGPINGB0LXQutGG0LjQuCBgZ2VuZXJhbGAg0LggYHRhcmdldHNgLiDQntGB0YLQ sNC70YzQvdGL0LUg0LfQsNCy0LjRgdGP0YIK0L7RgiDRgtC+0LPQviwg0YfRgtC+INC80Ysg 0YXQvtGC0LjQvCDRgdC00LXQu9Cw0YLRjCDQv9GA0Lgg0L/QvtC80L7RidC4INC00LDQvdC9 0L7Qs9C+INGE0LDQudC70LAg0YDQsNC30LzQtdGC0LrQuCDQtNC40YHQutC+0LIuCgojIyBW U0VMLzEuMDogVm9sdW1lIFNsaWNlciBFeHBhbmRlZCBMaXN0LCBWZXJzaW9uIDEuMAoK0JLQ vdGD0YLRgNC10L3QvdC40Lkg0YTQvtGA0LzQsNGCINGA0LDQt9Cy0ZHRgNC90YPRgtC+0LPQ viDRgdC/0LjRgdC60LAsINCyINC60L7RgtC+0YDQvtC8INGB0L7RhdGA0LDQvdGR0L0g0YLQ vtC70YzQutC+INC/0LXRgNCy0YvQuQrRg9GA0L7QstC10L3RjCDQuNGB0YXQvtC00L3QvtCz 0L4g0YTQvtGA0LzQsNGC0LAuINCS0YHQtdC8INGD0LfQu9Cw0Lwg0L/RgNC40YHQstC+0LXQ vdGLINC60LDQutC40LUt0YLQviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGLLArQtdGB 0LvQuCDQuNGFINC90LUg0LHRi9C70L4g0LIg0LjRgdGF0L7QtNC90L7QvCDRhNCw0LnQu9C1 LiDQndCw0LHQvtGA0Ysg0LTQuNGB0LrQvtCyINC4INC+0L/QtdGA0LDRhtC40Lkg0L3QsNC0 INC90LjQvNC4INC/0L7QtArQvtCx0YnQuNC8INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA 0L7QvCDRgNCw0LfQstGR0YDQvdGD0YLRiyDQtNC+INC40L3QtNC40LLQuNC00YPQsNC70YzQ vdGL0YUg0LTQuNGB0LrQvtCyINC4INC+0L/QtdGA0LDRhtC40LksCtC60LDQttC00LDRjyDQ v9C+0LQg0YHQstC+0LjQvCDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNC+0LwuINCa0LDQ ttC00LDRjyDQsdC70L7Rh9C90LDRjyDRgdGD0YnQvdC+0YHRgtGMINC/0LXRgNC10L3QtdGB 0LXQvdCwINC90LAK0LLRgtC+0YDQvtC5INGD0YDQvtCy0LXQvdGMINGB0L7QvtGC0LLQtdGC 0YHRgtCy0YPRjtGJ0LXQs9C+INGA0LDQt9C00LXQu9CwLiDQmtCw0LbQtNCw0Y8g0YTQsNC5 0LvQvtCy0LDRjyDRgdC40YHRgtC10LzQsCDQv9C10YDQtdC90LXRgdC10L3QsArQuNC3INGA 0LDQt9C00LXQu9CwIGBjcmVhdGVgINCyINGA0LDQt9C00LXQuyBgdm9sdW1lc2AuINCS0YHQ tSDQsdC70L7Rh9C90YvQtSDRgdGD0YnQvdC+0YHRgtC4INC4INGE0LDQudC70L7QstGL0LUK 0YHQuNGB0YLQtdC80Ysg0L3QsNGB0YvRidC10L3RiyDQtNC10YTQvtC70YLQvdGL0LzQuCDQ t9C90LDRh9C10L3QuNGP0LzQuCDQuCDQuNC90YTQvtGA0LzQsNGG0LjQtdC5INC+INC/0L7Q t9C40YbQuNC+0L3QuNGA0L7QstCw0L3QuNC4CtCx0LvQvtC60LAg0LIg0LjRgdGF0L7QtNC9 0L7QvCDRhNCw0LnQu9C1LiDQoNCw0LfQtNC10Lsg0LfQvdCw0YfQtdC90LjQuSDQv9C+INGD 0LzQvtC70YfQsNC90LjRjiDRg9C00LDQu9GR0L0uINCU0L7QsdCw0LLQu9C10L3RiwrQt9Cw 0LzRi9C60LDQvdC40Y8g0LHQu9C+0YfQvdGL0YUg0YPRgdGC0YDQvtC50YHRgtCyLCDQuNC8 0LXRjtGJ0LjRhSDQtNC+0YfQtdGA0L3QuNC1INGD0YHRgtGA0L7QudGB0YLQstCwLgoK0J/Q tdGA0LLRi9C5INGD0YDQvtCy0LXQvdGMINGE0LDQudC70LAg0YDQsNC30LzQtdGC0LrQuCDQ v9GA0LXQtNGD0YHQvNCw0YLRgNC40LLQsNC10YIg0YHQu9C10LTRg9GO0YnQuNC1INGB0LXQ utGG0LjQuDoKCiogYGdlbmVyYWxgOiDQuNC90YTQvtGA0LzQsNGG0LjRjyDQviDRhNC+0YDQ vNCw0YLQtSDQtNCw0L3QvdGL0YUg0Lgg0LPQu9C+0LHQsNC70YzQvdGL0LUg0L7Qv9GG0LjQ uAoqIGBhY3RpdmF0ZWA6INC+0L/QuNGB0LDQvdC40Y8g0L/QvtC00YHQuNGB0YLQtdC8LCDQ t9Cw0LTQtdC50YHRgtCy0L7QstCw0L3QvdGL0YUg0LTQviDQvdCw0YfQsNC70LAg0YDQsNC3 0LzQtdGC0LrQuAoqIGBwcm90ZWN0ZWRgOiDQvtC/0LjRgdCw0L3QuNGPINCy0YHQtdGFINC4 0YHQutC70Y7Rh9Cw0LXQvNGL0YUgKNC30LDRidC40YnQsNC10LzRi9GFKSDQtNC40YHQutC+ 0LIKKiBgdGFyZ2V0c2A6INC+0L/QuNGB0LDQvdC40Y8g0LLRgdC10YUg0LLQutC70Y7Rh9Cw 0LXQvNGL0YUg0YbQtdC70LXQstGL0YUg0LTQuNGB0LrQvtCyCiogYGxheW91dGA6INC+0L/Q uNGB0LDQvdC40LUg0L/RgNC+0LLQtdGA0Y/QtdC80YvRhSDRjdC70LXQvNC10L3RgtC+0LIg 0YHRg9GJ0LXRgdGC0LLRg9GO0YnQtdC5INGA0LDQt9C80LXRgtC60LgKKiBgZGVsZXRlYDog 0YHQv9C40YHQvtC6INGD0LTQsNC70Y/QtdC80YvRhSDRjdC70LXQvNC10L3RgtC+0LIg0YHR g9GJ0LXRgdGC0LLRg9GO0YnQtdC5INGA0LDQt9C80LXRgtC60LgKKiBgY2hhbmdlYDog0L7Q v9C40YHQsNC90LjQtSDQuNC30LzQtdC90LXQvdC40Lkg0YHRg9GJ0LXRgdGC0LLRg9GO0YnQ tdC5INGA0LDQt9C80LXRgtC60LgKKiBgY3JlYXRlYDog0L7Qv9C40YHQsNC90LjQtSDQstC9 0L7QstGMINGB0L7Qt9C00LDQstCw0LXQvNGL0YUg0Y3Qu9C10LzQtdC90YLQvtCyINCx0YPQ tNGD0YnQtdC5INGA0LDQt9C80LXRgtC60LgKKiBgdm9sdW1lc2A6INGB0L/QuNGB0L7QuiDR hNC+0YDQvNCw0YLQuNGA0YPQtdC80YvRhSDRgtC+0LzQvtCyINC4INC80L7QvdGC0LjRgNGD 0LXQvNGL0YUg0YTQsNC50LvQvtCy0YvRhSDRgdC40YHRgtC10LwKCtCe0LHRj9C30LDRgtC1 0LvRjNC90YvQvNC4INGP0LLQu9GP0Y7RgtGB0Y8g0YHQtdC60YbQuNC4IGBnZW5lcmFsYCDQ uCBgdGFyZ2V0c2AuINCe0YHRgtCw0LvRjNC90YvQtSDQt9Cw0LLQuNGB0Y/RggrQvtGCINGC 0L7Qs9C+LCDRh9GC0L4g0LzRiyDRhdC+0YLQuNC8INGB0LTQtdC70LDRgtGMINC/0YDQuCDQ v9C+0LzQvtGJ0Lgg0LTQsNC90L3QvtCz0L4g0YTQsNC50LvQsCDRgNCw0LfQvNC10YLQutC4 INC00LjRgdC60L7Qsi4KCiMjINCh0LXQutGG0LjRjyBnZW5lcmFsCgrQntC/0YDQtdC00LXQ u9GP0LXRgiDQv9C+INGB0YPRgtC4INC00LLQtSDQstC10YnQuDoKCiogYGRhdGEtZm9ybWF0 YDog0YTQvtGA0LzQsNGCINC00LDQvdC90YvRhSAowqtWU0NULzEuMMK7INC70LjQsdC+IMKr VlNFTC8xLjDCuyksIMKrYXV0b8K7CiAg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4sINGN0YLQ viDQv9C+0LvQtSDQvNC+0LbQvdC+INGB0LTQtdC70LDRgtGMINC90LXQvtCx0Y/Qt9Cw0YLQ tdC70YzQvdGL0LwsINC10YHQu9C4INC+0L/RgNC10LTQtdC70LjRgtGMCiAg0YLQuNC/INC0 0LDQvdC90YvRhSDQvtC60LDQttC10YLRgdGPINCy0L7Qt9C80L7QttC90YvQvCDQsNCy0YLQ vtC80LDRgtC40YfQtdGB0LrQuC4KKiBgKmA6INCz0LvQvtCx0LDQu9GM0L3Ri9C1INGE0LvQ sNCz0Lgg0Lgg0L7Qv9GG0LjQuCwg0L/QtdGA0LXQsdC40LLQsNGO0YnQuNC1INC00LXRhNC+ 0LvRgtC90YvQtSDQt9C90LDRh9C10L3QuNGPIHZzLAogINC90L4g0LjQvNC10Y7RidC40LUg 0LzQtdC90YzRiNC40Lkg0L/RgNC40L7RgNC40YLQtdGCLCDRh9C10Lwg0L7Qv9GG0LjQuCDQ utC+0LzQsNC90LTQvdC+0Lkg0YHRgtGA0L7QutC4LgoKIyMg0KHQtdC60YbQuNGPIGRlZmF1 bHRzCgrQn9C+0LfQstC+0LvRj9C10YIg0L7Qv9GA0LXQtNC10LvQuNGC0Ywg0LfQvdCw0YfQ tdC90LjRjyDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQtNC70Y8g0LTRgNGD0LPQuNGFINGB 0LXQutGG0LjQuSDRjdGC0L7Qs9C+INGE0LDQudC70LAK0L/QtdGA0YHQvtC90LDQu9GM0L3Q viDQtNC70Y8g0LrQsNC20LTQvtCz0L4g0YLQuNC/0LAg0L7Qv9C40YHRi9Cy0LDQtdC80L7Q uSDQsdC70L7Rh9C90L7QuSDRgdGD0YnQvdC+0YHRgtC4INC70LjQsdC+INGE0LDQudC70L7Q stC+0LkK0YHQuNGB0YLQtdC80YsuINCd0LDQv9GA0LjQvNC10YAsINC10YHQu9C4INC80Ysg 0YXQvtGC0LjQvCwg0YfRgtC+0LHRiyDQstGB0LUg0YDQsNC30LTQtdC70Ysg0YHQvtC30LTQ sNCy0LDQu9C40YHRjCDRgSDRgtC40L/QvtC8ClJBSUQsINC80L7QttC90L4g0YPQutCw0LfQ sNGC0Ywg0LTQu9GPINCx0LvQvtGH0L3QvtC5INGB0YPRidC90L7RgdGC0LggYHBhcnRgINC0 0LXRhNC+0LvRgtC90L7QtSDQt9C90LDRh9C10L3QuNC1OgoKYGBgCmRlZmF1bHRzOgogIHBh cnQ6CiAgICBwYXJ0dHlwZTogUgpgYGAKCtCh0LXQutGG0LjRjyDQv9C+0LTQtNC10YDQttC4 0LLQsNC10YLRgdGPINGC0L7Qu9GM0LrQviDQsiDQuNGB0YXQvtC00L3QvtC8INGE0LDQudC7 0LUg0YLQuNC/0LAgYENvbmRlbnNlZCBUcmVlYCwg0L7QvdCwCtGD0LTQsNC70Y/QtdGC0YHR jyDQv9GA0Lgg0YDQsNC30LLRkdGA0YLRi9Cy0LDQvdC40LggwqvRgdC20LDRgtC+0LPQviDQ tNC10YDQtdCy0LDCuyDQstC+INCy0L3Rg9GC0YDQtdC90L3QuNC5INGE0L7RgNC80LDRgiDR gdC/0LjRgdC60LAuCgojIyDQodC10LrRhtC40Y8gYWN0aXZhdGUKCtCc0L7QttC10YIg0LLQ utC70Y7Rh9Cw0YLRjCDQvtC/0LjRgdCw0L3QuNC1INC30LDQtNC10LnRgdGC0LLQvtCy0LDQ vdC90YvRhSDQsiDRgNCw0LfQvNC10YLQutC1INC/0L7QtNGB0LjRgdGC0LXQvCDQuCDRhNCw 0LnQu9C+0LLRi9GFCtGB0LjRgdGC0LXQvCwg0L/RgNC+0LLQtdGA0Y/QtdC80YvRhSDQuCDQ sNC60YLQuNCy0LjRgNGD0LXQvNGL0YUg0LTQviDQvdCw0YfQsNC70LAg0L/RgNC+0YbQtdC0 0YPRgNGLINGA0LDQt9C80LXRgtC60LguINCd0LDQv9GA0LjQvNC10YAsCtGC0LDQutC40YUs INC60LDQujogYG11bHRpcGF0aGAsIGBpc2NzaWAsIGBmY29lYCwgYGFvZWAsIGBpcG9pYmAs IGByYWlkYCwgYGx2bTJgLApgZXh0NGAsIGBzd2FwYCwgYGpmc2AsIGB4ZnNgLCBgYnRyZnNg LCDQuNGC0LQuINCe0L/QuNGB0LDQvdC40LUg0L/QvtC00YHQuNGB0YLQtdC8INC90LXQvtCx 0YXQvtC00LjQvNC+CtC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINCy0YHQtdGFINC9 0LXQvtCx0YXQvtC00LjQvNGL0YUg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5INC90LAg0YbQ tdC70LXQstC+0Lkg0YHQuNGB0YLQtdC80LUg0Lgg0LfQsNC/0YPRgdC60LAK0LrQvtC80LDQ vdC0LCDRgdC70YPQttCxLCDQt9Cw0LPRgNGD0LfQutC4INC80L7QtNGD0LvQtdC5INGP0LTR gNCwLCDRg9GB0YLQsNC90L7QstC60Lgg0YHQvtC10LTQuNC90LXQvdC40LksINCyINGC0L7Q vCDRh9C40YHQu9C1LArRgSDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtdC8INCw0YPRgtC1 0L3RgtC40YTQuNC60LDRhtC40L7QvdC90YvRhSDQtNCw0L3QvdGL0YUsINGH0YLQviDQv9C+ 0LfQstC+0LvQuNGCINC+0LHQvdCw0YDRg9C20LjRgtGMINC40LvQuArQv9C+0LTQutC70Y7R h9C40YLRjCDQsdC70L7Rh9C90YvQtSDRg9GB0YLRgNC+0LnRgdGC0LLQsCDRiNGC0LDRgtC9 0YvQvNC4INGB0YDQtdC00YHQstCw0LzQuCBMaW51eCDRj9C00YDQsCDQuCB1c2Vyc3BhY2UK 0LXRidGRINC00L4g0YLQvtCz0L4sINC60LDQuiDQsdGD0LTQtdGCINC30LDQv9GD0YnQtdC9 INC/0YDQvtGG0LXRgdGBINC+0LHQvdCw0YDRg9C20LXQvdC40Y8g0YbQtdC70LXQstGL0YUg 0LTQuNGB0LrQvtCyLgoK0J3QtdGCINC90LXQvtCx0YXQvtC00LjQvNC+0YHRgtC4INC/0LXR gNC10YfQuNGB0LvRj9GC0Ywg0LLRgdC1INC30LDQtNC10LnRgdGC0LLQvtCy0LDQvdC90YvQ tSDQv9C+0LTRgdC40YHRgtC10LzRiyDQsiDQuNGB0YXQvtC00L3QvtC8CtGE0LDQudC70LUg 0YLQuNC/0LAgYENvbmRlbnNlZCBUcmVlYCwg0L7QvdC4INC30LDQvdC+0LLQviDQvtC/0YDQ tdC00LXQu9GP0Y7RgtGB0Y8g0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60Lgg0L/RgNC4CtGA 0LDQt9Cy0ZHRgNGC0YvQstCw0L3QuNC4IMKr0YHQttCw0YLQvtCz0L4g0LTQtdGA0LXQstCw wrsg0LLQviDQstC90YPRgtGA0LXQvdC90LjQuSDRhNC+0YDQvNCw0YIg0YHQv9C40YHQutCw LgoKIyMg0KHQtdC60YbQuNGPIHByb3RlY3RlZAoK0J/QtdGA0LXQtCDQv9C+0LjRgdC60L7Q vCDRhtC10LvQtdCy0YvRhSDQtNC40YHQutC+0LIg0LLRi9C/0L7Qu9C90Y/QtdGC0YHRjyDQ sNC60YLQuNCy0LDRhtC40Y8g0L/QvtC00YHQuNGB0YLQtdC8LCDQuNGB0LrQu9GO0YfQsNGO 0YLRgdGPCtCy0YHQtSDQtNC40YHQutC4INC4INGA0LDQt9C00LXQu9GLLCDQutC+0YLQvtGA 0YvQtSDRgdC80L7QvdGC0LjRgNC+0LLQsNC90Ysg0LIg0L3QsNGB0YLQvtGP0YnQuNC5INC8 0L7QvNC10L3Rgi4g0JTQvtC/0L7Qu9C90LjRgtC10LvRjNC90L4K0LjRgdC60LvRjtGH0LDR jtGC0YHRjyDQtNC40YHQutC4LCDRg9C60LDQt9Cw0L3QvdGL0LUg0LIg0LrQvtC80LDQvdC0 0L3QvtC5INGB0YLRgNC+0LrQtSwg0Lgg0LTQuNGB0LrQuCwg0L7Qv9C40YHQsNC90LjRjyDQ utC+0YLQvtGA0YvRhQrQv9C10YDQtdGH0LjRgdC70LXQvdGLINCyINC90LDRgdGC0L7Rj9GJ 0LXQuSDRgdC10LrRhtC40Lgg0YTQsNC50LvQsCDRgNCw0LfQvNC10YLQutC4LgoKIyMg0KHQ tdC60YbQuNGPIHRhcmdldHMKCtCS0YLQvtGA0L7QuSDQvtCx0Y/Qt9Cw0YLQtdC70YzQvdGL 0Lkg0YDQsNC30LTQtdC7LCDQsiDQutC+0YLQvtGA0L7QvCDQvtC/0LjRgdGL0LLQsNC10YLR gdGPINC60LDQttC00YvQuSDRhtC10LvQtdCy0L7QuSDQtNC40YHQuiDQuNC70LgK0L3QsNCx 0L7RgCDRhtC10LvQtdCy0YvRhSDQtNC40YHQutC+0LIsINGB0L7QvtGC0LLQtdGC0YHRgtCy 0YPRjtGJ0LjQtSDQt9Cw0LTQsNC90L3Ri9C8INC60YDQuNGC0LXRgNC40Y/QvC4g0JrQsNC2 0LTQsNGPINGB0LvQtdC00YPRjtGJ0LDRjwrRgdC10LrRhtC40Y8g0YTQsNC50LvQsCDQvtC/ 0LjRgdGL0LLQsNC10YIg0LHQu9C+0YfQvdGL0LUg0YHRg9GJ0L3QvtGB0YLQuCwg0LrQvtGC 0L7RgNGL0LUg0YHRgtGA0L7Rj9GC0YHRjyDQv9C+0LLQtdGA0YUg0YbQtdC70LXQstGL0YUK 0LTQuNGB0LrQvtCyLgoKIyMg0KHQtdC60YbQuNGPIGxheW91dAoK0JIg0L3QtdC5INC+0L/Q uNGB0YvQstCw0Y7RgtGB0Y8g0LHQu9C+0YfQvdGL0LUg0YHRg9GJ0L3QvtGB0YLQuCDQuCDR hNCw0LnQu9C+0LLRi9C1INGB0LjRgdGC0LXQvNGLLCDQutC+0YLQvtGA0YvQtSDQtNC+0LvQ ttC90Ysg0LHRi9GC0YwK0L/RgNC+0LLQtdGA0LXQvdGLINC00L4g0LLQvdC10YHQtdC90LjR jyDQsiDRgNCw0LfQvNC10YLQutGDINC60LDQutC40YUt0LvQuNCx0L4g0LjQt9C80LXQvdC1 0L3QuNC5LiDQndCw0L/RgNC40LzQtdGALCDQtdGB0LvQuCDQvNGLCtGB0L7QsdC40YDQsNC1 0LzRgdGPINGD0LTQsNC70LjRgtGMINC00LLQsCDRgNCw0LfQtNC10LvQsCDRgSDQv9C+0YDR j9C00LrQvtCy0YvQvNC4INC90L7QvNC10YDQsNC80LggNSDQuCA2LCDRgdC+0LfQtNCw0YLR jCDQvdC+0LLRi9C5CtGA0LDQt9C00LXQuyDQuCDQvtGC0YTQvtGA0LzQsNGC0LjRgNC+0LLQ sNGC0Ywg0LXQs9C+LCDQsiDQtNCw0L3QvdC+0Lkg0YHQtdC60YbQuNC4INC80Ysg0L7Qv9C4 0YHRi9Cy0LDQtdC8INGB0YPRidC10YHRgtCy0YPRjtGJ0YPRjgrRgtCw0LHQu9C40YbRgyDR gNCw0LfQtNC10LvQvtCyINC4LCDQv9C+INC80LXQvdGM0YjQtdC5INC80LXRgNC1LCDRg9C0 0LDQu9GP0LXQvNGL0LUg0YDQsNC30LTQtdC70Ysg0YEg0L3QvtC80LXRgNCw0LzQuCA1INC4 IDYuCgojIyDQodC10LrRhtC40Y8gZGVsZXRlCgrQkiDQvdC10Lkg0YLQvtC70YzQutC+INC/ 0LXRgNC10YfQuNGB0LvRj9GO0YLRgdGPINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0Ysg 0LHQu9C+0YfQvdGL0YUg0YHRg9GJ0L3QvtGB0YLQtdC5INC4INGE0LDQudC70L7QstGL0YUK 0YHQuNGB0YLQtdC8LCDQutC+0YLQvtGA0YvQtSDQsdGL0LvQuCDQvtC/0LjRgdCw0L3RiyDQ siDRgdC10LrRhtC40LggYGxheW91dGAsINC4INC60L7RgtC+0YDRi9C1INC00L7Qu9C20L3R iyDQsdGL0YLRjArRgNC10LrRg9GA0YHQuNCy0L3QviDRg9C00LDQu9C10L3Riy4g0KPQtNCw 0LvQtdC90LjQtSDQstGL0L/QvtC70L3Rj9C10YLRgdGPINCy0YHQtdCz0LTQsCDQsiDRg9C6 0LDQt9Cw0L3QvdC+0Lwg0L/QvtGA0Y/QtNC60LUK0YLQvtC70YzQutC+INC/0L7RgdC70LUg 0L/RgNC+0LLQtdGA0LrQuCDQuCDQtNC+INCy0L3QtdGB0LXQvdC40Y8g0LrQsNC60LjRhS3Q u9C40LHQviDQuNC90YvRhSDQuNC30LzQtdC90LXQvdC40LkuCgojIyDQodC10LrRhtC40Y8g Y2hhbmdlCgrQntC/0LjRgdGL0LLQsNC10YIg0LjQt9C80LXQvdC10L3QuNGPINC+0YLQtNC1 0LvRjNC90YvRhSDRgdCy0L7QudGB0YLQsiDQsdC70L7Rh9C90YvRhSDRgdGD0YnQvdC+0YHR gtC10Lkg0Lgg0YTQsNC50LvQvtCy0YvRhSDRgdC40YHRgtC10LwK0LIg0YPQttC1INGB0YPR idC10YHRgtCy0YPRjtGJ0LXQuSDRgNCw0LfQvNC10YLQutC1LCDQvtC/0LjRgdCw0L3QvdC+ 0Lkg0YDQsNC90LXQtSDQsiDRgdC10LrRhtC40LggYGxheW91dGAg0Lgg0YEg0YPRh9GR0YLQ vtC8CtGD0LbQtSDQstGL0L/QvtC70L3QtdC90L3Ri9GFINC6INC00LDQvdC90L7QvNGDINC8 0L7QvNC10L3RgtGDINGD0LTQsNC70LXQvdC40LksINC10YHQu9C4INGC0LDQutC+0LLRi9C1 INCx0YvQu9C4INGD0LrQsNC30LDQvdGLINCyCtGB0LXQutGG0LjQuCBgZGVsZXRlYC4g0JfQ tNC10YHRjCDQvNC+0LbQvdC+INC/0LXRgNC10L7Qv9GA0LXQtNC10LvQuNGC0Ywg0L3QsNC3 0LLQsNC90LjRjyDRgtC+0LzQvtCyLCDQuNGFIFVVSUQn0YssCtCy0YvQv9C+0LvQvdC40YLR jCDQvtGH0LjRgdGC0LrRgywg0YPQvNC10L3RjNGI0LjRgtGMINC40LvQuCDRg9Cy0LXQu9C4 0YfQuNGC0Ywg0YDQsNC30LzQtdGA0Ysg0YDQsNC30LTQtdC70L7QsiDQuCDQtNGA0YPQs9C4 0LUK0L/QvtC00LTQtdGA0LbQuNCy0LDQtdC80YvQtSDQvtC/0LXRgNCw0YbQuNC4LCDQstGL 0L/QvtC70L3Rj9C10LzRi9C1INCy0YHQtdCz0LTQsCDQsiDRg9C60LDQt9Cw0L3QvdC+0Lwg 0L/QvtGA0Y/QtNC60LUuCgojIyDQodC10LrRhtC40Y8gY3JlYXRlCgrQntC/0LjRgdGL0LLQ sNC10YIg0LLRgdC1INCy0L3QvtCy0Ywg0YHQvtC30LTQsNCy0LDQtdC80YvQtSDRjdC70LXQ vNC10L3RgtGLINCx0YPQtNGD0YnQtdC5INGA0LDQt9C80LXRgtC60LguINCe0L3QuCDRgdC+ 0LfQtNCw0Y7RgtGB0Y8K0LvQuNCx0L4g0L/QvtCy0LXRgNGFINGG0LXQu9GL0YUg0LTQuNGB 0LrQvtCyLCDQvtC/0LjRgdCw0L3QvdGL0YUg0YDQsNC90LXQtSDQsiDRgdC10LrRhtC40Lgg YHRhcmdldHNgLCDQu9C40LHQviDQv9C+0LLQtdGA0YUK0Y3Qu9C10LzQtdC90YLQvtCyINGB 0YPRidC10YHRgtCy0YPRjtGJ0LXQuSDRgNCw0LfQvNC10YLQutC4LCDQvtC/0LjRgdCw0L3Q vdC+0Lkg0YDQsNC90LXQtSDQsiDRgdC10LrRhtC40LggYGxheW91dGAsINC90L4g0YEK0YPR h9GR0YLQvtC8INGD0LbQtSDQstGL0L/QvtC70L3QtdC90L3Ri9GFINC6INC00LDQvdC90L7Q vNGDINC80L7QvNC10L3RgtGDINGD0LTQsNC70LXQvdC40LksINC10YHQu9C4INGC0LDQutC+ 0LLRi9C1INCx0YvQu9C4INGD0LrQsNC30LDQvdGLCtCyINGB0LXQutGG0LjQuCBgZGVsZXRl YCwg0Lgg0YEg0YPRh9GR0YLQvtC8INGD0LbQtSDQstGL0L/QvtC70L3QtdC90L3Ri9GFINC6 INC00LDQvdC90L7QvNGDINC80L7QvNC10L3RgtGDINC40LfQvNC10L3QtdC90LjQuSwK0LXR gdC70Lgg0YLQsNC60L7QstGL0LUg0LHRi9C70Lgg0YPQutCw0LfQsNC90Ysg0LIg0YHQtdC6 0YbQuNC4IGBjaGFuZ2VgLiDQn9GA0Lgg0LrQvtC90LLQtdGA0YLQuNGA0L7QstCw0L3QuNC4 INCy0L4g0LLQvdGD0YLRgNC10L3QvdC40LkK0YTQvtGA0LzQsNGCINC40Lcg0YHQtdC60YbQ uNC4IGBjcmVhdGVgINGD0LTQsNC70Y/RjtGC0YHRjyDQvtC/0LjRgdCw0L3QuNGPINGE0L7R gNC80LDRgtC40YDRg9C10LzRi9GFINGE0LDQudC70L7QstGL0YUg0YHQuNGB0YLQtdC8LgoK IyMg0KHQtdC60YbQuNGPIHZvbHVtZXMKCtCe0L/QuNGB0YvQstCw0LXRgiDQstGB0LUg0LLQ vdC+0LLRjCDRgdC+0LfQtNCw0LLQsNC10LzRi9C1INGE0LDQudC70L7QstGL0LUg0YHQuNGB 0YLQtdC80YssINGCLtC1LiDRgtC+0LvRjNC60L4g0YLQviwg0YfRgtC+CtC00L7Qu9C20L3Q viDQsdGL0YLRjCDQvtGC0YTQvtGA0LzQsNGC0LjRgNC+0LLQsNC90L4uINCY0YUg0LzQvtC2 0L3QviDQvtC/0LjRgdGL0LLQsNGC0Ywg0Lgg0LIg0YHQtdC60YbQuNC4IGBjcmVhdGVgINCy CtC40YHRhdC+0LTQvdC+0Lwg0YTQsNC50LvQtSDRgNCw0LfQvNC10YLQutC4LCDQvdC+INCy 0L4g0LLQvdGD0YLRgNC10L3QvdC10Lwg0YTQvtGA0LzQsNGC0LUg0L7QvdC4INCy0YHQtSDQ sdGD0LTRg9GCINC/0LXRgNC10L3QtdGB0L3RiwrQsiDRgdC10LrRhtC40Y4gYHZvbHVtZXNg LiDQkiDRgdC10LrRhtC40LggYGxheW91dGAg0L/QtdGA0LXRh9C40YHQu9GP0Y7RgtGB0Y8g 0YLQvtC70YzQutC+INGC0LUg0YTQsNC50LvQvtCy0YvQtQrRgdC40YHRgtC10LzRiywg0LrQ vtGC0L7RgNGL0LUg0LHRg9C00YPRgiDQv9GA0L7QstC10YDQtdC90YssINC60L7RgtC+0YDR i9C1INC00L7Qu9C20L3RiyDRgdGD0YnQtdGB0YLQstC+0LLQsNGC0Ywg0L3QsCDQvNC+0LzQ tdC90YIK0LfQsNC/0YPRgdC60LAg0YPRgtC40LvQuNGC0YssINC4INC60L7RgtC+0YDRi9C1 INC80L7Qs9GD0YIg0LHRi9GC0Ywg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdGLINCyINC/0YDQ vtGG0LXRgdGB0LUg0LrQsNGB0LrQsNC00L3QvtCz0L4K0LzQvtC90YLQuNGA0L7QstCw0L3Q uNGPINGC0L7QvNC+0LIsINC90L4g0L7QvdC4INC90LUg0YPRh9Cw0YHRgtCy0YPRjtGCINCy INC+0YLQtNC10LvRjNC90L7QuSDQvtC/0LXRgNCw0YbQuNC4INGE0L7RgNC80LDRgtC40YDQ vtCy0LDQvdC40Y8uCgo= --------------3D689Ls3nP4PR5eWhG20ADiR--