* [PATCH 05/15] GATT server: parse primary/secondary services
From: Anderson Lizardo @ 2011-03-17 1:00 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300323639-13296-1-git-send-email-anderson.lizardo@openbossa.org>
---
plugins/gatt-profile.c | 76 +++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 75 insertions(+), 1 deletions(-)
diff --git a/plugins/gatt-profile.c b/plugins/gatt-profile.c
index 694769c..c0b2a50 100644
--- a/plugins/gatt-profile.c
+++ b/plugins/gatt-profile.c
@@ -29,6 +29,7 @@
#include <errno.h>
#include <gdbus.h>
+#include <bluetooth/uuid.h>
#include "plugin.h"
#include "adapter.h"
@@ -40,12 +41,72 @@
static DBusConnection *connection = NULL;
static const char *any_path = NULL;
+struct gatt_service {
+ gboolean primary;
+ bt_uuid_t uuid;
+ gchar *id;
+ GSList *chars;
+ GSList *includes;
+};
+
+static void parse_service(const gchar **attribute_names,
+ const gchar **attribute_values,
+ gboolean primary, GSList **services)
+{
+ struct gatt_service *svc;
+ const gchar *uuid, *id;
+ int i;
+
+ for (i = 0, uuid = NULL, id = NULL; attribute_names[i]; i++) {
+ if (g_strcmp0(attribute_names[i], "uuid") == 0)
+ uuid = attribute_values[i];
+ else if (g_strcmp0(attribute_names[i], "id") == 0)
+ id = attribute_values[i];
+ else
+ error("Invalid XML attribute: %s", attribute_names[i]);
+ }
+
+ if (uuid == NULL) {
+ error("Missing UUID for service");
+ return;
+ }
+
+ if (!primary && (id == NULL || id[0] == '\0')) {
+ error("Missing ID for secondary service");
+ return;
+ }
+
+ svc = g_new0(struct gatt_service, 1);
+ svc->primary = primary;
+
+ if (bt_string_to_uuid(&svc->uuid, uuid) < 0) {
+ error("Invalid UUID: %s", uuid);
+ g_free(svc);
+ return;
+ }
+
+ svc->id = g_strdup(id);
+
+ DBG("New %s service with UUID %s", primary ? "primary" : "secondary",
+ uuid);
+
+ *services = g_slist_prepend(*services, svc);
+}
+
static void element_start(GMarkupParseContext *ctx, const gchar *element_name,
const gchar **attribute_names, const gchar **attribute_values,
gpointer user_data, GError **err)
{
+ GSList **services = user_data;
+
if (g_strcmp0(element_name, "gatt-profile") == 0)
return;
+ else if (g_strcmp0(element_name, "primary-service") == 0)
+ parse_service(attribute_names, attribute_values, TRUE,
+ services);
+ else if (g_strcmp0(element_name, "secondary-service") == 0)
+ parse_service(attribute_names, attribute_values, FALSE,
+ services);
else
error("Invalid XML tag: %s", element_name);
}
@@ -56,19 +117,32 @@ static void element_end(GMarkupParseContext *ctx, const gchar *element_name,
/* TODO: verify tag balance */
}
+static void free_services(gpointer data, gpointer user_data)
+{
+ struct gatt_service *svc = data;
+
+ /* TODO: free characteristics, includes and descriptors */
+
+ g_free(svc);
+}
+
static int add_xml_profile(DBusConnection *conn, const char *profile)
{
GMarkupParser parser = { element_start, element_end, NULL, NULL, NULL };
GMarkupParseContext *ctx;
+ GSList *services = NULL;
int ret = 0;
- ctx = g_markup_parse_context_new(&parser, 0, NULL, NULL);
+ ctx = g_markup_parse_context_new(&parser, 0, &services, NULL);
if (!g_markup_parse_context_parse(ctx, profile, strlen(profile),
NULL)) {
error("Parsing of GATT profile XML failed");
ret = -EINVAL;
}
+ g_slist_foreach(services, free_services, NULL);
+ g_slist_free(services);
+
g_markup_parse_context_free(ctx);
return ret;
--
1.7.0.4
^ permalink raw reply related
* [PATCH 04/15] GATT server: add initial XML parsing
From: Anderson Lizardo @ 2011-03-17 1:00 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300323639-13296-1-git-send-email-anderson.lizardo@openbossa.org>
---
plugins/gatt-profile.c | 46 +++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 45 insertions(+), 1 deletions(-)
diff --git a/plugins/gatt-profile.c b/plugins/gatt-profile.c
index fc6b08e..694769c 100644
--- a/plugins/gatt-profile.c
+++ b/plugins/gatt-profile.c
@@ -32,6 +32,7 @@
#include "plugin.h"
#include "adapter.h"
+#include "error.h"
#include "log.h"
#define GATT_PROFILE_INTERFACE "org.bluez.GattProfile"
@@ -39,10 +40,53 @@
static DBusConnection *connection = NULL;
static const char *any_path = NULL;
+static void element_start(GMarkupParseContext *ctx, const gchar *element_name,
+ const gchar **attribute_names, const gchar **attribute_values,
+ gpointer user_data, GError **err)
+{
+ if (g_strcmp0(element_name, "gatt-profile") == 0)
+ return;
+ else
+ error("Invalid XML tag: %s", element_name);
+}
+
+static void element_end(GMarkupParseContext *ctx, const gchar *element_name,
+ gpointer user_data, GError **err)
+{
+ /* TODO: verify tag balance */
+}
+
+static int add_xml_profile(DBusConnection *conn, const char *profile)
+{
+ GMarkupParser parser = { element_start, element_end, NULL, NULL, NULL };
+ GMarkupParseContext *ctx;
+ int ret = 0;
+
+ ctx = g_markup_parse_context_new(&parser, 0, NULL, NULL);
+ if (!g_markup_parse_context_parse(ctx, profile, strlen(profile),
+ NULL)) {
+ error("Parsing of GATT profile XML failed");
+ ret = -EINVAL;
+ }
+
+ g_markup_parse_context_free(ctx);
+
+ return ret;
+}
+
static DBusMessage *add_profile(DBusConnection *conn, DBusMessage *msg,
void *user_data)
{
- /* TODO */
+ const char *profile;
+ int err;
+
+ if (!dbus_message_get_args(msg, NULL, DBUS_TYPE_STRING, &profile,
+ DBUS_TYPE_INVALID))
+ return NULL;
+
+ err = add_xml_profile(conn, profile);
+ if (err < 0)
+ return btd_error_failed(msg, strerror(-err));
return dbus_message_new_method_return(msg);
}
--
1.7.0.4
^ permalink raw reply related
* [PATCH 03/15] GATT server: add initial D-Bus interface
From: Anderson Lizardo @ 2011-03-17 1:00 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300323639-13296-1-git-send-email-anderson.lizardo@openbossa.org>
---
plugins/gatt-profile.c | 96 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 96 insertions(+), 0 deletions(-)
diff --git a/plugins/gatt-profile.c b/plugins/gatt-profile.c
index 025a3c5..fc6b08e 100644
--- a/plugins/gatt-profile.c
+++ b/plugins/gatt-profile.c
@@ -26,15 +26,111 @@
#include <config.h>
#endif
+#include <errno.h>
+
+#include <gdbus.h>
+
#include "plugin.h"
+#include "adapter.h"
+#include "log.h"
+
+#define GATT_PROFILE_INTERFACE "org.bluez.GattProfile"
+
+static DBusConnection *connection = NULL;
+static const char *any_path = NULL;
+
+static DBusMessage *add_profile(DBusConnection *conn, DBusMessage *msg,
+ void *user_data)
+{
+ /* TODO */
+
+ return dbus_message_new_method_return(msg);
+}
+
+static GDBusMethodTable gatt_profile_methods[] = {
+ { "AddProfile", "s", "", add_profile },
+ { }
+};
+
+static int register_interface(const char *path, struct btd_adapter *adapter)
+{
+ DBG("path %s", path);
+
+ if (!g_dbus_register_interface(connection, path, GATT_PROFILE_INTERFACE,
+ gatt_profile_methods, NULL, NULL, NULL,
+ NULL)) {
+ error("D-Bus failed to register %s interface",
+ GATT_PROFILE_INTERFACE);
+ return -EIO;
+ }
+
+ DBG("Registered interface %s on path %s", GATT_PROFILE_INTERFACE, path);
+
+ return 0;
+}
+
+static void unregister_interface(const char *path)
+{
+ DBG("path %s", path);
+
+ g_dbus_unregister_interface(connection, path, GATT_PROFILE_INTERFACE);
+}
+
+static int gatt_profile_probe(struct btd_adapter *adapter)
+{
+ register_interface(adapter_get_path(adapter), adapter);
+
+ return 0;
+}
+
+static void gatt_profile_remove(struct btd_adapter *adapter)
+{
+ unregister_interface(adapter_get_path(adapter));
+}
+
+static struct btd_adapter_driver gatt_profile_driver = {
+ .name = "gatt-profile",
+ .probe = gatt_profile_probe,
+ .remove = gatt_profile_remove,
+};
static int gatt_profile_init(void)
{
+ int err;
+
+ connection = dbus_bus_get(DBUS_BUS_SYSTEM, NULL);
+ if (connection == NULL)
+ return -EIO;
+
+ any_path = btd_adapter_any_request_path();
+ if (any_path != NULL) {
+ if (register_interface(any_path, NULL) < 0) {
+ btd_adapter_any_release_path();
+ any_path = NULL;
+ }
+ }
+
+ err = btd_register_adapter_driver(&gatt_profile_driver);
+ if (err < 0) {
+ dbus_connection_unref(connection);
+ return err;
+ }
+
return 0;
}
static void gatt_profile_exit(void)
{
+ btd_unregister_adapter_driver(&gatt_profile_driver);
+
+ if (any_path != NULL) {
+ unregister_interface(any_path);
+
+ btd_adapter_any_release_path();
+ any_path = NULL;
+ }
+
+ dbus_connection_unref(connection);
}
BLUETOOTH_PLUGIN_DEFINE(gatt_profile, VERSION, BLUETOOTH_PLUGIN_PRIORITY_HIGH,
--
1.7.0.4
^ permalink raw reply related
* [PATCH 02/15] GATT server: add profile API plugin skeleton
From: Anderson Lizardo @ 2011-03-17 1:00 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300323639-13296-1-git-send-email-anderson.lizardo@openbossa.org>
---
Makefile.am | 3 +++
plugins/gatt-profile.c | 41 +++++++++++++++++++++++++++++++++++++++++
2 files changed, 44 insertions(+), 0 deletions(-)
create mode 100644 plugins/gatt-profile.c
diff --git a/Makefile.am b/Makefile.am
index 34c0def..5963c7f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -199,6 +199,9 @@ builtin_modules += attrib
builtin_sources += attrib/main.c \
attrib/manager.h attrib/manager.c \
attrib/client.h attrib/client.c
+
+builtin_modules += gatt_profile
+builtin_sources += plugins/gatt-profile.c
endif
if HEALTHPLUGIN
diff --git a/plugins/gatt-profile.c b/plugins/gatt-profile.c
new file mode 100644
index 0000000..025a3c5
--- /dev/null
+++ b/plugins/gatt-profile.c
@@ -0,0 +1,41 @@
+/*
+ *
+ * BlueZ - Bluetooth protocol stack for Linux
+ *
+ * Copyright (C) 2011 Nokia Corporation
+ * Copyright (C) 2011 Marcel Holtmann <marcel@holtmann.org>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "plugin.h"
+
+static int gatt_profile_init(void)
+{
+ return 0;
+}
+
+static void gatt_profile_exit(void)
+{
+}
+
+BLUETOOTH_PLUGIN_DEFINE(gatt_profile, VERSION, BLUETOOTH_PLUGIN_PRIORITY_HIGH,
+ gatt_profile_init, gatt_profile_exit)
--
1.7.0.4
^ permalink raw reply related
* [PATCH 01/15] Remove built-in example attribute server
From: Anderson Lizardo @ 2011-03-17 1:00 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300323639-13296-1-git-send-email-anderson.lizardo@openbossa.org>
This server was useful for initial implementation of GATT support in
BlueZ. It can now be replaced by an external server which will be put on
the tests/ directory.
---
Makefile.am | 3 +-
attrib/example.c | 341 ------------------------------------------------------
attrib/example.h | 26 ----
attrib/manager.c | 8 --
4 files changed, 1 insertions(+), 377 deletions(-)
delete mode 100644 attrib/example.c
delete mode 100644 attrib/example.h
diff --git a/Makefile.am b/Makefile.am
index 7267200..34c0def 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -198,8 +198,7 @@ endif
builtin_modules += attrib
builtin_sources += attrib/main.c \
attrib/manager.h attrib/manager.c \
- attrib/client.h attrib/client.c \
- attrib/example.h attrib/example.c
+ attrib/client.h attrib/client.c
endif
if HEALTHPLUGIN
diff --git a/attrib/example.c b/attrib/example.c
deleted file mode 100644
index fae288c..0000000
--- a/attrib/example.c
+++ /dev/null
@@ -1,341 +0,0 @@
-/*
- *
- * BlueZ - Bluetooth protocol stack for Linux
- *
- * Copyright (C) 2010 Nokia Corporation
- * Copyright (C) 2010 Marcel Holtmann <marcel@holtmann.org>
- *
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- */
-
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <arpa/inet.h>
-
-#include <bluetooth/uuid.h>
-
-#include <glib.h>
-
-#include "log.h"
-#include "attrib-server.h"
-
-#include "att.h"
-#include "example.h"
-
-/* FIXME: Not defined by SIG? UUID128? */
-#define OPCODES_SUPPORTED_UUID 0xA001
-#define BATTERY_STATE_SVC_UUID 0xA002
-#define BATTERY_STATE_UUID 0xA003
-#define THERM_HUMIDITY_SVC_UUID 0xA004
-#define MANUFACTURER_SVC_UUID 0xA005
-#define TEMPERATURE_UUID 0xA006
-#define FMT_CELSIUS_UUID 0xA007
-#define FMT_OUTSIDE_UUID 0xA008
-#define RELATIVE_HUMIDITY_UUID 0xA009
-#define FMT_PERCENT_UUID 0xA00A
-#define BLUETOOTH_SIG_UUID 0xA00B
-#define MANUFACTURER_NAME_UUID 0xA00C
-#define MANUFACTURER_SERIAL_UUID 0xA00D
-#define VENDOR_SPECIFIC_SVC_UUID 0xA00E
-#define VENDOR_SPECIFIC_TYPE_UUID 0xA00F
-#define FMT_KILOGRAM_UUID 0xA010
-#define FMT_HANGING_UUID 0xA011
-
-static GSList *sdp_handles = NULL;
-
-static int register_attributes(void)
-{
- const char *desc_out_temp = "Outside Temperature";
- const char *desc_out_hum = "Outside Relative Humidity";
- const char *desc_weight = "Rucksack Weight";
- const char *manufacturer_name1 = "ACME Temperature Sensor";
- const char *manufacturer_name2 = "ACME Weighing Scales";
- const char *serial1 = "237495-3282-A";
- const char *serial2 = "11267-2327A00239";
-
- const uint128_t char_weight_uuid_btorder = {
- .data = { 0x80, 0x88, 0xF2, 0x18, 0x90, 0x2C, 0x45, 0x0B,
- 0xB6, 0xC4, 0x62, 0x89, 0x1E, 0x8C, 0x25, 0xE9 } };
- const uint128_t prim_weight_uuid_btorder = {
- .data = { 0x4F, 0x0A, 0xC0, 0x96, 0x35, 0xD4, 0x49, 0x11,
- 0x96, 0x31, 0xDE, 0xA8, 0xDC, 0x74, 0xEE, 0xFE } };
-
- uint128_t char_weight_uuid;
- uint8_t atval[256];
- uint32_t handle;
- bt_uuid_t uuid;
- int len;
-
- btoh128(&char_weight_uuid_btorder, &char_weight_uuid);
-
- /* Battery state service: primary service definition */
- bt_uuid16_create(&uuid, GATT_PRIM_SVC_UUID);
- att_put_u16(BATTERY_STATE_SVC_UUID, &atval[0]);
- attrib_db_add(0x0100, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 2);
-
- /* Battery: battery state characteristic */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0110, &atval[1]);
- att_put_u16(BATTERY_STATE_UUID, &atval[3]);
- attrib_db_add(0x0106, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Battery: battery state attribute */
- bt_uuid16_create(&uuid, BATTERY_STATE_UUID);
- atval[0] = 0x04;
- attrib_db_add(0x0110, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 1);
-
- /* Battery: Client Characteristic Configuration */
- bt_uuid16_create(&uuid, GATT_CLIENT_CHARAC_CFG_UUID);
- atval[0] = 0x00;
- atval[1] = 0x00;
- attrib_db_add(0x0111, &uuid, ATT_NONE, ATT_AUTHENTICATION, atval, 2);
-
- /* Add an SDP record for the above service */
- handle = attrib_create_sdp(0x0100, "Battery State Service");
- if (handle)
- sdp_handles = g_slist_prepend(sdp_handles, GUINT_TO_POINTER(handle));
-
- /* Thermometer: primary service definition */
- bt_uuid16_create(&uuid, GATT_PRIM_SVC_UUID);
- att_put_u16(THERM_HUMIDITY_SVC_UUID, &atval[0]);
- attrib_db_add(0x0200, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 2);
-
- /* Thermometer: Include */
- bt_uuid16_create(&uuid, GATT_INCLUDE_UUID);
- att_put_u16(0x0500, &atval[0]);
- att_put_u16(0x0504, &atval[2]);
- att_put_u16(MANUFACTURER_SVC_UUID, &atval[4]);
- attrib_db_add(0x0201, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 6);
-
- /* Thermometer: Include */
- att_put_u16(0x0550, &atval[0]);
- att_put_u16(0x0568, &atval[2]);
- att_put_u16(VENDOR_SPECIFIC_SVC_UUID, &atval[4]);
- attrib_db_add(0x0202, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 6);
-
- /* Thermometer: temperature characteristic */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0204, &atval[1]);
- att_put_u16(TEMPERATURE_UUID, &atval[3]);
- attrib_db_add(0x0203, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Thermometer: temperature characteristic value */
- bt_uuid16_create(&uuid, TEMPERATURE_UUID);
- atval[0] = 0x8A;
- atval[1] = 0x02;
- attrib_db_add(0x0204, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 2);
-
- /* Thermometer: temperature characteristic format */
- bt_uuid16_create(&uuid, GATT_CHARAC_FMT_UUID);
- atval[0] = 0x0E;
- atval[1] = 0xFE;
- att_put_u16(FMT_CELSIUS_UUID, &atval[2]);
- atval[4] = 0x01;
- att_put_u16(FMT_OUTSIDE_UUID, &atval[5]);
- attrib_db_add(0x0205, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 7);
-
- /* Thermometer: characteristic user description */
- bt_uuid16_create(&uuid, GATT_CHARAC_USER_DESC_UUID);
- len = strlen(desc_out_temp);
- strncpy((char *) atval, desc_out_temp, len);
- attrib_db_add(0x0206, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, len);
-
- /* Thermometer: relative humidity characteristic */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0212, &atval[1]);
- att_put_u16(RELATIVE_HUMIDITY_UUID, &atval[3]);
- attrib_db_add(0x0210, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Thermometer: relative humidity value */
- bt_uuid16_create(&uuid, RELATIVE_HUMIDITY_UUID);
- atval[0] = 0x27;
- attrib_db_add(0x0212, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 1);
-
- /* Thermometer: relative humidity characteristic format */
- bt_uuid16_create(&uuid, GATT_CHARAC_FMT_UUID);
- atval[0] = 0x04;
- atval[1] = 0x00;
- att_put_u16(FMT_PERCENT_UUID, &atval[2]);
- att_put_u16(BLUETOOTH_SIG_UUID, &atval[4]);
- att_put_u16(FMT_OUTSIDE_UUID, &atval[6]);
- attrib_db_add(0x0213, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 8);
-
- /* Thermometer: characteristic user description */
- bt_uuid16_create(&uuid, GATT_CHARAC_USER_DESC_UUID);
- len = strlen(desc_out_hum);
- strncpy((char *) atval, desc_out_hum, len);
- attrib_db_add(0x0214, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, len);
-
- /* Add an SDP record for the above service */
- handle = attrib_create_sdp(0x0200, "Thermometer");
- if (handle)
- sdp_handles = g_slist_prepend(sdp_handles, GUINT_TO_POINTER(handle));
-
- /* Secondary Service: Manufacturer Service */
- bt_uuid16_create(&uuid, GATT_SND_SVC_UUID);
- att_put_u16(MANUFACTURER_SVC_UUID, &atval[0]);
- attrib_db_add(0x0500, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 2);
-
- /* Manufacturer name characteristic definition */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0502, &atval[1]);
- att_put_u16(MANUFACTURER_NAME_UUID, &atval[3]);
- attrib_db_add(0x0501, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Manufacturer name characteristic value */
- bt_uuid16_create(&uuid, MANUFACTURER_NAME_UUID);
- len = strlen(manufacturer_name1);
- strncpy((char *) atval, manufacturer_name1, len);
- attrib_db_add(0x0502, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, len);
-
- /* Manufacturer serial number characteristic */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0504, &atval[1]);
- att_put_u16(MANUFACTURER_SERIAL_UUID, &atval[3]);
- attrib_db_add(0x0503, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Manufacturer serial number characteristic value */
- bt_uuid16_create(&uuid, MANUFACTURER_SERIAL_UUID);
- len = strlen(serial1);
- strncpy((char *) atval, serial1, len);
- attrib_db_add(0x0504, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, len);
-
- /* Secondary Service: Manufacturer Service */
- bt_uuid16_create(&uuid, GATT_SND_SVC_UUID);
- att_put_u16(MANUFACTURER_SVC_UUID, &atval[0]);
- attrib_db_add(0x0505, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 2);
-
- /* Manufacturer name characteristic definition */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0507, &atval[1]);
- att_put_u16(MANUFACTURER_NAME_UUID, &atval[3]);
- attrib_db_add(0x0506, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Secondary Service: Vendor Specific Service */
- bt_uuid16_create(&uuid, GATT_SND_SVC_UUID);
- att_put_u16(VENDOR_SPECIFIC_SVC_UUID, &atval[0]);
- attrib_db_add(0x0550, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 2);
-
- /* Vendor Specific Type characteristic definition */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0568, &atval[1]);
- att_put_u16(VENDOR_SPECIFIC_TYPE_UUID, &atval[3]);
- attrib_db_add(0x0560, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Vendor Specific Type characteristic value */
- bt_uuid16_create(&uuid, VENDOR_SPECIFIC_TYPE_UUID);
- atval[0] = 0x56;
- atval[1] = 0x65;
- atval[2] = 0x6E;
- atval[3] = 0x64;
- atval[4] = 0x6F;
- atval[5] = 0x72;
- attrib_db_add(0x0568, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 6);
-
- /* Manufacturer name attribute */
- bt_uuid16_create(&uuid, MANUFACTURER_NAME_UUID);
- len = strlen(manufacturer_name2);
- strncpy((char *) atval, manufacturer_name2, len);
- attrib_db_add(0x0507, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, len);
-
- /* Characteristic: serial number */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0509, &atval[1]);
- att_put_u16(MANUFACTURER_SERIAL_UUID, &atval[3]);
- attrib_db_add(0x0508, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 5);
-
- /* Serial number characteristic value */
- bt_uuid16_create(&uuid, MANUFACTURER_SERIAL_UUID);
- len = strlen(serial2);
- strncpy((char *) atval, serial2, len);
- attrib_db_add(0x0509, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, len);
-
- /* Weight service: primary service definition */
- bt_uuid16_create(&uuid, GATT_PRIM_SVC_UUID);
- memcpy(atval, &prim_weight_uuid_btorder, 16);
- attrib_db_add(0x0680, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 16);
-
- /* Weight: include */
- bt_uuid16_create(&uuid, GATT_INCLUDE_UUID);
- att_put_u16(0x0505, &atval[0]);
- att_put_u16(0x0509, &atval[2]);
- att_put_u16(MANUFACTURER_SVC_UUID, &atval[4]);
- attrib_db_add(0x0681, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 6);
-
- /* Weight: characteristic */
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
- atval[0] = ATT_CHAR_PROPER_READ;
- att_put_u16(0x0683, &atval[1]);
- memcpy(&atval[3], &char_weight_uuid_btorder, 16);
- attrib_db_add(0x0682, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 19);
-
- /* Weight: characteristic value */
- bt_uuid128_create(&uuid, char_weight_uuid);
- atval[0] = 0x82;
- atval[1] = 0x55;
- atval[2] = 0x00;
- atval[3] = 0x00;
- attrib_db_add(0x0683, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 4);
-
- /* Weight: characteristic format */
- bt_uuid16_create(&uuid, GATT_CHARAC_FMT_UUID);
- atval[0] = 0x08;
- atval[1] = 0xFD;
- att_put_u16(FMT_KILOGRAM_UUID, &atval[2]);
- att_put_u16(BLUETOOTH_SIG_UUID, &atval[4]);
- att_put_u16(FMT_HANGING_UUID, &atval[6]);
- attrib_db_add(0x0684, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, 8);
-
- /* Weight: characteristic user description */
- bt_uuid16_create(&uuid, GATT_CHARAC_USER_DESC_UUID);
- len = strlen(desc_weight);
- strncpy((char *) atval, desc_weight, len);
- attrib_db_add(0x0685, &uuid, ATT_NONE, ATT_NOT_PERMITTED, atval, len);
-
- /* Add an SDP record for the above service */
- handle = attrib_create_sdp(0x0680, "Weight Service");
- if (handle)
- sdp_handles = g_slist_prepend(sdp_handles, GUINT_TO_POINTER(handle));
-
- return 0;
-}
-
-int server_example_init(void)
-{
- return register_attributes();
-}
-
-void server_example_exit(void)
-{
- while (sdp_handles) {
- uint32_t handle = GPOINTER_TO_UINT(sdp_handles->data);
-
- attrib_free_sdp(handle);
- sdp_handles = g_slist_remove(sdp_handles, sdp_handles->data);
- }
-}
diff --git a/attrib/example.h b/attrib/example.h
deleted file mode 100644
index a2b07fe..0000000
--- a/attrib/example.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- *
- * BlueZ - Bluetooth protocol stack for Linux
- *
- * Copyright (C) 2010 Nokia Corporation
- * Copyright (C) 2010 Marcel Holtmann <marcel@holtmann.org>
- *
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- */
-
-int server_example_init(void);
-void server_example_exit(void);
diff --git a/attrib/manager.c b/attrib/manager.c
index a5a7de4..3d40f2d 100644
--- a/attrib/manager.c
+++ b/attrib/manager.c
@@ -36,7 +36,6 @@
#include "manager.h"
#include "client.h"
-#include "example.h"
#define GATT_UUID "00001801-0000-1000-8000-00805f9b34fb"
@@ -85,10 +84,6 @@ int attrib_manager_init(DBusConnection *conn)
btd_register_device_driver(&client_driver);
-
- if (main_opts.attrib_server)
- return server_example_init();
-
return 0;
}
@@ -96,9 +91,6 @@ void attrib_manager_exit(void)
{
btd_unregister_device_driver(&client_driver);
- if (main_opts.attrib_server)
- server_example_exit();
-
attrib_client_exit();
dbus_connection_unref(connection);
--
1.7.0.4
^ permalink raw reply related
* [RFC][PATCH 00/15] Attribute server management API
From: Anderson Lizardo @ 2011-03-17 1:00 UTC (permalink / raw)
To: linux-bluetooth
Hi all,
This series represents a proposal for an "Attribute server management API". It
consists of a D-Bus interface for registering services, specified as XML. It
was inspired on the existing SDP plugin (plugins/service.c), but the XML format
is totally different because the "record" concept used for SDP is much simpler
and lower level than GATT services.
The XML format is currently not documented, but I expect it to be intuitive for
those familiar with the definition of GATT services (of course, we can properly
document it once the API is accepted). Additionally, the API is high level, in
a sense that it is not required to specify attributes individually.
It was implemented as a plugin, so it can be easily disabled. It was also built
on top of the existing (internal) attribute API, requiring only an additional
attrib_db_find_avail() function which is used to find free handle "slots"
inside the attribute database.
What is currently implemented:
* Register primary/secondary services and service includes
* Register characteristics and descriptors (only "User Description" and
"Presentation Format" are supported), including initial values
* Automatically unregister services when the D-Bus client exits
Open issues or not yet implemented:
* Documentation of the plugin API and XML format
* Better handling of malformed XML
* Remaining characteristic descriptors: Extended Properties, Client
Configuration, Server Configuration and Aggregate Format
* Set attribute permissions for characteristic value and descriptors which are
not read-only (note that these permissions are profile specific)
* Manipulate registered services (remove, modify) without requiring to
disconnect from D-Bus
* Callbacks for value/descriptor read/writes (so externally implemented
profiles could react on these procedures)
* Update characteristic value
* Better name for the plugin and D-Bus interface (currently it is
"gatt-profile" and GattProfile, respectively)
Comments and suggestions are welcome. I would also appreciate comments
regarding coding style, given that I based on the SDP "service.c" plugin which
is quite old.
Regards,
--
Anderson Lizardo
Instituto Nokia de Tecnologia - INdT
Manaus - Brazil
^ permalink raw reply
* Re: [PATCH] Bluetooth: Add counter for not acked HCI commands
From: Gustavo F. Padovan @ 2011-03-16 23:27 UTC (permalink / raw)
To: Brian Gix
Cc: Andrzej Kaczmarek, linux-bluetooth@vger.kernel.org,
par-gunnar.p.hjalmdahl@stericsson.com,
henrik.possung@stericsson.com
In-Reply-To: <4D813ECC.10806@codeaurora.org>
Hi Brian,
* Brian Gix <bgix@codeaurora.org> [2011-03-16 15:50:52 -0700]:
> Hi Gustavo & Andrzej,
>
> On 3/16/2011 2:30 PM, Gustavo F. Padovan wrote:
> > Hi Andrzej,
> >
> > * Brian Gix<bgix@codeaurora.org> [2011-03-04 08:12:45 -0800]:
> >
> >> Hi Andrzej,
> >>
> >> On 3/4/2011 4:37 AM, Andrzej Kaczmarek wrote:
> >>> Hi Brian,
> >>>
> >>> On 01.03.2011 20:25, Brian Gix wrote:
> >>>> The problem you describe sounds like one I had to solve in the past, but
> >>>> unfortunately, I think it may be a little more difficult to solve here.
> >>>> This particular baseband appears to have an outstanding Cmd queue of
> >>>> 2. It also appears to consume one of them for extended periods of time
> >>>> when making requests of the remote device, and using the NOP
> >>>> Cmd-Status-Event to inform the host that the slot is now free.
> >>>>
> >>>> As you are observing, the completion of the task (triggering additional
> >>>> requests locally) overlaps with these NOP responses, giving a false
> >>>> count to the host of available cmd slots.
> >>>>
> >>>> Personally, I consider this to be a baseband bug, which could have been
> >>>> avoided by having a max outstanding queue of 1.
> >>>
> >>> This particular controller uses 1 credit for each command that is being
> >>> processed and having max outstanding queue of 1 would make some
> >>> scenarios impossible - consider authentication with
> >>> HCI_Authentication_Request pending and other HCI command to be sent in
> >>> parallel.
> >>>
> >>
> >> The adjustment I suggest doesn't disallow this. I was having a
> >> theory-of-operation talk with a baseband guy once, and this is what he
> >> had to say:
> >>
> >> The HCI interface is intended to be an interface that immediately
> >> responds to *every* command. The problem is that some commands are
> >> intended for the local baseband (and can be handled immediately) and
> >> others require interaction outside of the control of the local baseband,
> >> and take an indeterminate amount of time.
> >>
> >> So two response mechanism were created:
> >>
> >> Command Immediate Rsp Delayed Rsp
> >> Cmd --> Cmd Complete Evt (Cmds handled Locally)
> >> Cmd --> Cmd Status Evt --> Cmplt Event ("long" Async Cmds)
> >>
> >> The HCI flow control is contained in both the Cmd-Complt-Evt and the
> >> Cmd-Status-Evt.
> >>
> >> So it is assumed that both flow control response event types will be
> >> delivered immediately after the baseband receives them. Of course
> >> because of the communication link, these response are still asyncronous
> >> in most cases including the BlueZ case.
> >>
> >> The baseband guy basically said that "the baseband" does not expect the
> >> next command until the host has processed the (immediate) response to
> >> the previous one. And that the (immediate) response to the previous one
> >> should be RXed in milliseconds at the most.
> >>
> >> So I would always delay sending the next command until the prior
> >> commands CmdStatus or CmdCmplt has been received. This should work
> >> unless there is something seriously wrong with the baseband.
> >
> > That's exactly how linux stack work, and I'm seeing where we could be doing
> > wrong, so I believe your patch is fixing nothing. A best version of your
> > patch is:
> >
> > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
> > index cebe7588..2d4d441 100644
> > --- a/net/bluetooth/hci_event.c
> > +++ b/net/bluetooth/hci_event.c
> > @@ -1771,7 +1771,7 @@ static inline void hci_cmd_complete_evt(struct hci_dev *hdev, struct sk_buff *sk
> > if (ev->opcode != HCI_OP_NOP)
> > del_timer(&hdev->cmd_timer);
> >
> > - if (ev->ncmd) {
> > + if (ev->ncmd&& ev->opcode != HCI_OP_NOP) {
> > atomic_set(&hdev->cmd_cnt, 1);
> > if (!skb_queue_empty(&hdev->cmd_q))
> > tasklet_schedule(&hdev->cmd_task);
>
> I don't think that this is correct.
Yes, this is wrong. It's just a simplified version of Andrzej's patch.
>
> First: Any change made here in hci_cmd_cmplete_evt would need to also be
> made in hci_cmd_status_evt. The "NOP" event can be either a Cmd Cmplt
> or a Cmd Status, and in the example given by Andrzej, it was a Cmd Status.
Yes, of course. My patch is just a concept (as it is wrong)
>
> Second: How is cmd_cnt being used? I see it being decremented when a
> command is sent in hci_cmd_task, or being set to "1" when one of the two
> events are received. It is also set to "1" for time-outs and channel
> open/close/reset activities.
>
> It looks to me like the cmd_cnt is being misused. It should in fact be
> set to the value indicated by the event, and not just "1". It also does
> not address the original problem observed by Andrzej, which is that the
> Asyncronous link between the Host and Baseband can cause them to be
> momentarily out of sync with each other.
We limit cmd_cnt to 1 in our stack, to be sure that one command a time will be
sent, I don't for the reason for that but Marcel certainly has one.
--
Gustavo F. Padovan
http://profusion.mobi
^ permalink raw reply
* Re: Switching between SBC and MPEG audio on headsets
From: Brian Gix @ 2011-03-16 23:09 UTC (permalink / raw)
To: Peter Dons Tychsen
Cc: Luiz Augusto von Dentz, Arun Raghavan, linux-bluetooth,
Johan Hedberg
In-Reply-To: <1300315111.4500.34.camel@donpedro>
On 3/16/2011 3:38 PM, Peter Dons Tychsen wrote:
> Hello,
>
> On Tue, 2011-03-15 at 16:29 -0300, Luiz Augusto von Dentz wrote:
>> Actually
>> I would suggest configuring both endpoint since the beginning so that
>> we only need to suspend/resume to switch between them, but I don't
>> think many headsets would be able to handle this situation.
>
> Unfortunately, because of a rather silly flaw in the A2DP specifications
> you cannot do this. The reason is simple. You would need a separate
> L2CAP channel for each data link. A2DP uses up to three L2CAP channels
> all on L2CAP PSM=0x19:
>
> 1) First is always signalling channel.
> 2) Second is always data channel.
> 3) Third is always Journaling channel (never really used).
>
> So if you already had the first two, and you opened yet another on
> PSM=0x19 from the same device, then it could be one of the following:
>
> 1) A new signalling channel (multi-profile).
> 2) A new data channel for already opened profile.
> 3) A new Journalling channel for already opened profile.
>
This is not actually true. You can have multiple media channels open
simultaneously (for instance one for Video and one for Audio) which are
opened with careful handshaking with the AVDTP_OPEN signaling command.
In theory, this could be two audio channels as well. If someone wants a
Journaling channel, it would be opened without the AVDTP_OPEN signaling.
The support for multiple streaming channels is explicitly allowed for in
the specification (AVDTP v1.2, section 6.10 - Stream Establishment).
[...]
--
Brian Gix
bgix@codeaurora.org
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum
^ permalink raw reply
* Re: [PATCH] Bluetooth: Add counter for not acked HCI commands
From: Brian Gix @ 2011-03-16 22:50 UTC (permalink / raw)
To: Andrzej Kaczmarek, linux-bluetooth@vger.kernel.org,
par-gunnar.p.hjalmdahl@stericsson.com,
henrik.possung@stericsson.com
In-Reply-To: <20110316213020.GC2339@joana>
Hi Gustavo & Andrzej,
On 3/16/2011 2:30 PM, Gustavo F. Padovan wrote:
> Hi Andrzej,
>
> * Brian Gix<bgix@codeaurora.org> [2011-03-04 08:12:45 -0800]:
>
>> Hi Andrzej,
>>
>> On 3/4/2011 4:37 AM, Andrzej Kaczmarek wrote:
>>> Hi Brian,
>>>
>>> On 01.03.2011 20:25, Brian Gix wrote:
>>>> The problem you describe sounds like one I had to solve in the past, but
>>>> unfortunately, I think it may be a little more difficult to solve here.
>>>> This particular baseband appears to have an outstanding Cmd queue of
>>>> 2. It also appears to consume one of them for extended periods of time
>>>> when making requests of the remote device, and using the NOP
>>>> Cmd-Status-Event to inform the host that the slot is now free.
>>>>
>>>> As you are observing, the completion of the task (triggering additional
>>>> requests locally) overlaps with these NOP responses, giving a false
>>>> count to the host of available cmd slots.
>>>>
>>>> Personally, I consider this to be a baseband bug, which could have been
>>>> avoided by having a max outstanding queue of 1.
>>>
>>> This particular controller uses 1 credit for each command that is being
>>> processed and having max outstanding queue of 1 would make some
>>> scenarios impossible - consider authentication with
>>> HCI_Authentication_Request pending and other HCI command to be sent in
>>> parallel.
>>>
>>
>> The adjustment I suggest doesn't disallow this. I was having a
>> theory-of-operation talk with a baseband guy once, and this is what he
>> had to say:
>>
>> The HCI interface is intended to be an interface that immediately
>> responds to *every* command. The problem is that some commands are
>> intended for the local baseband (and can be handled immediately) and
>> others require interaction outside of the control of the local baseband,
>> and take an indeterminate amount of time.
>>
>> So two response mechanism were created:
>>
>> Command Immediate Rsp Delayed Rsp
>> Cmd --> Cmd Complete Evt (Cmds handled Locally)
>> Cmd --> Cmd Status Evt --> Cmplt Event ("long" Async Cmds)
>>
>> The HCI flow control is contained in both the Cmd-Complt-Evt and the
>> Cmd-Status-Evt.
>>
>> So it is assumed that both flow control response event types will be
>> delivered immediately after the baseband receives them. Of course
>> because of the communication link, these response are still asyncronous
>> in most cases including the BlueZ case.
>>
>> The baseband guy basically said that "the baseband" does not expect the
>> next command until the host has processed the (immediate) response to
>> the previous one. And that the (immediate) response to the previous one
>> should be RXed in milliseconds at the most.
>>
>> So I would always delay sending the next command until the prior
>> commands CmdStatus or CmdCmplt has been received. This should work
>> unless there is something seriously wrong with the baseband.
>
> That's exactly how linux stack work, and I'm seeing where we could be doing
> wrong, so I believe your patch is fixing nothing. A best version of your
> patch is:
>
> diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
> index cebe7588..2d4d441 100644
> --- a/net/bluetooth/hci_event.c
> +++ b/net/bluetooth/hci_event.c
> @@ -1771,7 +1771,7 @@ static inline void hci_cmd_complete_evt(struct hci_dev *hdev, struct sk_buff *sk
> if (ev->opcode != HCI_OP_NOP)
> del_timer(&hdev->cmd_timer);
>
> - if (ev->ncmd) {
> + if (ev->ncmd&& ev->opcode != HCI_OP_NOP) {
> atomic_set(&hdev->cmd_cnt, 1);
> if (!skb_queue_empty(&hdev->cmd_q))
> tasklet_schedule(&hdev->cmd_task);
I don't think that this is correct.
First: Any change made here in hci_cmd_cmplete_evt would need to also be
made in hci_cmd_status_evt. The "NOP" event can be either a Cmd Cmplt
or a Cmd Status, and in the example given by Andrzej, it was a Cmd Status.
Second: How is cmd_cnt being used? I see it being decremented when a
command is sent in hci_cmd_task, or being set to "1" when one of the two
events are received. It is also set to "1" for time-outs and channel
open/close/reset activities.
It looks to me like the cmd_cnt is being misused. It should in fact be
set to the value indicated by the event, and not just "1". It also does
not address the original problem observed by Andrzej, which is that the
Asyncronous link between the Host and Baseband can cause them to be
momentarily out of sync with each other.
Gustavo's suggestion misses the problem, that the reason basebands use
NOPs at all is to hold onto available command slots, only to release
them later with the NOP. It is entirely possible that a baseband could
indicate with Cmd Status an ev->ncmd == 0, and the entire transaction
then end with a NOP (of either type) with ev->ncmd > 0. If that were to
occur, the cmd_q would never get serviced.
I don't see any solution to this other than to *separately* track the
existence of an unAcked cmd, and conditioning the servicing of the cmd_q
on *both* the (non) existence of an unAcked cmd *and* the availablity of
slots in cmd_cnt.
>
>
> That patch means that want to avoid send new commands when a Command Status
> Event arrives, but we want exactly the opposite.
>
--
Brian Gix
bgix@codeaurora.org
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum
^ permalink raw reply
* Re: Switching between SBC and MPEG audio on headsets
From: Peter Dons Tychsen @ 2011-03-16 22:38 UTC (permalink / raw)
To: Luiz Augusto von Dentz; +Cc: Arun Raghavan, linux-bluetooth, Johan Hedberg
In-Reply-To: <AANLkTimF0Ux=-uQiWaWH14r3_YAuyp2o=QrmyeLkWWeT@mail.gmail.com>
Hello,
On Tue, 2011-03-15 at 16:29 -0300, Luiz Augusto von Dentz wrote:
> Actually
> I would suggest configuring both endpoint since the beginning so that
> we only need to suspend/resume to switch between them, but I don't
> think many headsets would be able to handle this situation.
Unfortunately, because of a rather silly flaw in the A2DP specifications
you cannot do this. The reason is simple. You would need a separate
L2CAP channel for each data link. A2DP uses up to three L2CAP channels
all on L2CAP PSM=0x19:
1) First is always signalling channel.
2) Second is always data channel.
3) Third is always Journaling channel (never really used).
So if you already had the first two, and you opened yet another on
PSM=0x19 from the same device, then it could be one of the following:
1) A new signalling channel (multi-profile).
2) A new data channel for already opened profile.
3) A new Journalling channel for already opened profile.
Because of the specification problem mentioned above, the problem is not
really solvable, and the implementation is forced to assume that the new
L2CAP channel is the 3rd channel (Journalling). The correct solution
would of course have been a dynamic PSM for each service, and for each
profile.
So current the only portable way of supporting multiple codecs is:
1) Close existing data channel.
2) Setup config.
3) Re-open data channel.
4) Send "start".
Anything else will most likely not work with the headsets in the wild.
And also a note: Do not *ever* cache the data from the discovery phase.
That would only make the same mistake many have done with SDP queries.
If you are using a multi-link headset, the other connected device might
have changed which codecs are available (or left), and in some cases it
could also change which options and settings are supported.
Thanks,
/pedro
^ permalink raw reply
* Re: [PATCH] Bluetooth: Fix HCI_RESET command syncronization
From: Ed Tomlinson @ 2011-03-16 22:33 UTC (permalink / raw)
To: Justin Mattock
Cc: Anderson Lizardo, linux-bluetooth, mmvinni, Gustavo F. Padovan
In-Reply-To: <AANLkTi=NCL2mWhLfnjD85Zp2y9SYFf6Dx5K0A8ckK7CX@mail.gmail.com>
On Wednesday 16 March 2011 16:02:17 Justin Mattock wrote:
> > No, it's based on bluetooth-next (2.6.39). But you can drop the hci_cmd_timer
> > part while testing it. It's not needed unless you have and hci_reset cmd
> > timeout.
> >
> > --
> > Gustavo F. Padovan
> > http://profusion.mobi
> >
>
> o.k. works over here..
> Tested-by: Justin P. Mattock <justinmattock@gmail.com>
Works here too (Justin's varient on top of .38)
Tested-by: Ed Tomlinson <edt@aei.ca>
Thanks
Ed
> here is an updated patch for the current Mainline if anybody needs it:
>
> ---
> include/net/bluetooth/hci.h | 1 +
> net/bluetooth/hci_core.c | 1 +
> net/bluetooth/hci_event.c | 4 +++-
> 3 files changed, 5 insertions(+), 1 deletions(-)
>
> diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h
> index 29a7a8c..c4f4c42 100644
> --- a/include/net/bluetooth/hci.h
> +++ b/include/net/bluetooth/hci.h
> @@ -76,6 +76,7 @@ enum {
> HCI_INQUIRY,
>
> HCI_RAW,
> + HCI_RESET,
> };
>
> /* HCI ioctl defines */
> diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
> index 9c4541b..07a1a4c 100644
> --- a/net/bluetooth/hci_core.c
> +++ b/net/bluetooth/hci_core.c
> @@ -522,6 +522,7 @@ int hci_dev_open(__u16 dev)
> atomic_set(&hdev->cmd_cnt, 1);
> set_bit(HCI_INIT, &hdev->flags);
>
> + set_bit(HCI_RESET, &hdev->flags);
> //__hci_request(hdev, hci_reset_req, 0, HZ);
> ret = __hci_request(hdev, hci_init_req, 0,
> msecs_to_jiffies(HCI_INIT_TIMEOUT));
> diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
> index a290854..a63bcf0 100644
> --- a/net/bluetooth/hci_event.c
> +++ b/net/bluetooth/hci_event.c
> @@ -183,6 +183,8 @@ static void hci_cc_reset(struct hci_dev *hdev,
> struct sk_buff *skb)
>
> BT_DBG("%s status 0x%x", hdev->name, status);
>
> + clear_bit(HCI_RESET, &hdev->flags);
> +
> hci_req_complete(hdev, HCI_OP_RESET, status);
> }
>
> @@ -1464,7 +1466,7 @@ static inline void hci_cmd_status_evt(struct
> hci_dev *hdev, struct sk_buff *skb)
> break;
> }
>
> - if (ev->ncmd) {
> + if (ev->ncmd && !test_bit(HCI_RESET, &hdev->flags)) {
> atomic_set(&hdev->cmd_cnt, 1);
> if (!skb_queue_empty(&hdev->cmd_q))
> tasklet_schedule(&hdev->cmd_task);
>
^ permalink raw reply
* Re: [RFC] Auto Connections
From: Claudio Takahasi @ 2011-03-16 22:20 UTC (permalink / raw)
To: Claudio Takahasi, BlueZ development, Ville Tervo; +Cc: Gustavo F. Padovan
In-Reply-To: <20110316204004.GA2339@joana>
Hi Gustavo/Jaikumar
On Wed, Mar 16, 2011 at 8:40 PM, Gustavo F. Padovan
<padovan@profusion.mobi> wrote:
> Hi Claudio,
>
> * Claudio Takahasi <claudio.takahasi@openbossa.org> [2011-03-11 21:30:09 +0000]:
>
>> Hi guys,
>>
>> It is time to get opinions from some gurus!
>>
>> We need to implement automatic connections to implement the Profiles.
>> At the moment BlueZ supports only dual mode adapters, as consequence
>> BlueZ needs to start the LE connection. IMHO, it is better to leave
>> the responsibility to the controller, implementing "selective"
>> connections will only introduce more code without concrete benefits.
>> Configuring the controller to autonomously establish connections seems
>> to be the right approach to proceed.
>>
>> This topic is NOT about StartDiscovery() + CreateDevice.
>> StartDiscovery uses active scanning and CreateDevice uses direct
>> connection establishment. We need a mechanism to automatically connect
>> to "trusted" devices or devices flagged as "AutoConnect".
>>
>>
>> My initial idea is: change the LE server socket to report
>> outgoing(host initiated) connections through the server socket.
>> Awkward?
>> To achieve that we need to manage the LE Create Connection(using
>> whitelist) in the kernel, extend the management interface to control
>> devices in the whitelist, change the LE Connection Complete Event
>> handling to get the Role properly.
>> Pros:
>> - Controller manage connections
>> - Flexible to support connections to "trusted" resolvable address and
>> passive scanning
>> - Only one "flow" for the connections: LE server socket
>> - Maybe we could hide resolvable address from the userspace, mapping
>> it directly to public or static random
>
> This approach have a lot of advantages. It seems the best option to me.
>
>> Cons:
>> - Risky
>
> Define risky here.
More code in the kernel, more time to get the code upstream,
additional verification to avoid insufficient resources when scanning
and connecting, but to me it seems the best approach.
to Jaikumar:
The profiles will indirectly manage the connections providing
informations such as connection parameters(interval, window, ...) and
addresses, but the kernel needs to centralize/manage the connections.
We can't allow the profiles to control the connection directly, a
remote can implement more than one profile, maybe with different
constraints. The host can also provide inputs, for instance power
saving profile or maximum number of LE connections.
>
>> - Less control of the connection establishment process
>
> But do we need this control?
Yes, we need. It is not allowed to send more than one LE Create
Connection command to the controller or try to establish a connection
while scanning.
Some controller also doesn't support some state combination, see "LE
read supported states"
Claudio
>
> --
> Gustavo F. Padovan
> http://profusion.mobi
>
^ permalink raw reply
* Re: [PATCH v5 2/4] Add support for SAP protocol
From: ANGUS.H @ 2011-03-16 22:06 UTC (permalink / raw)
To: Waldemar Rymarkiewicz; +Cc: Johan Hedberg, linux-bluetooth
In-Reply-To: <1300277421-8053-2-git-send-email-waldemar.rymarkiewicz@tieto.com>
2011/3/16 Waldemar Rymarkiewicz <waldemar.rymarkiewicz@tieto.com>:
> Add new protocol features:
> * transfer APDu request/response
> * get ATR request/response
> * power sim of/on request/response
> * card reader status
> * set transport protocol
> ---
> sap/server.c | 415 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
> 1 files changed, 399 insertions(+), 16 deletions(-)
Hi
A lot of code could be refactored.
Quite a few repeatable (logically) blocks in every
"...._req()" and "..._rsp()" handlers.
/A.H
^ permalink raw reply
* [PATCH v2] Add discover characteristics by uuid to gatttool
From: Sheldon Demario @ 2011-03-16 22:00 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Sheldon Demario
In-Reply-To: <1300297246-11056-1-git-send-email-sheldon.demario@openbossa.org>
According to the spec the characteristics discover and characteristics discover
by uuid use the same opcode and the result should be filtered by callback.
---
attrib/client.c | 2 +-
attrib/gatt.c | 16 +++++++++++-----
attrib/gatt.h | 3 ++-
attrib/gatttool.c | 3 ++-
attrib/interactive.c | 16 ++++++++++++++--
5 files changed, 30 insertions(+), 10 deletions(-)
diff --git a/attrib/client.c b/attrib/client.c
index 3237a6b..54bdc79 100644
--- a/attrib/client.c
+++ b/attrib/client.c
@@ -960,7 +960,7 @@ static DBusMessage *discover_char(DBusConnection *conn, DBusMessage *msg,
qchr->prim = prim;
qchr->msg = dbus_message_ref(msg);
- gatt_discover_char(gatt->attrib, att->start, att->end,
+ gatt_discover_char(gatt->attrib, att->start, att->end, NULL,
char_discovered_cb, qchr);
return NULL;
diff --git a/attrib/gatt.c b/attrib/gatt.c
index 32bd4a0..1cd651c 100644
--- a/attrib/gatt.c
+++ b/attrib/gatt.c
@@ -40,7 +40,7 @@ struct discover_primary {
struct discover_char {
GAttrib *attrib;
- bt_uuid_t uuid;
+ bt_uuid_t *uuid;
uint16_t end;
GSList *characteristics;
gatt_cb_t cb;
@@ -59,6 +59,7 @@ static void discover_char_free(struct discover_char *dc)
g_slist_foreach(dc->characteristics, (GFunc) g_free, NULL);
g_slist_free(dc->characteristics);
g_attrib_unref(dc->attrib);
+ g_free(dc->uuid);
g_free(dc);
}
@@ -281,6 +282,9 @@ static void char_discovered_cb(guint8 status, const guint8 *ipdu, guint16 iplen,
goto done;
}
+ if (dc->uuid && bt_uuid_cmp(dc->uuid, &uuid))
+ break;
+
chars->handle = last;
chars->properties = value[2];
chars->value_handle = att_get_u16(&value[3]);
@@ -313,16 +317,17 @@ done:
}
guint gatt_discover_char(GAttrib *attrib, uint16_t start, uint16_t end,
- gatt_cb_t func, gpointer user_data)
+ bt_uuid_t *uuid, gatt_cb_t func,
+ gpointer user_data)
{
uint8_t pdu[ATT_DEFAULT_LE_MTU];
struct discover_char *dc;
+ bt_uuid_t type_uuid;
guint16 plen;
- bt_uuid_t uuid;
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
+ bt_uuid16_create(&type_uuid, GATT_CHARAC_UUID);
- plen = enc_read_by_type_req(start, end, &uuid, pdu, sizeof(pdu));
+ plen = enc_read_by_type_req(start, end, &type_uuid, pdu, sizeof(pdu));
if (plen == 0)
return 0;
@@ -334,6 +339,7 @@ guint gatt_discover_char(GAttrib *attrib, uint16_t start, uint16_t end,
dc->cb = func;
dc->user_data = user_data;
dc->end = end;
+ dc->uuid = g_memdup(uuid, sizeof(bt_uuid_t));
return g_attrib_send(attrib, 0, pdu[0], pdu, plen, char_discovered_cb,
dc, NULL);
diff --git a/attrib/gatt.h b/attrib/gatt.h
index 730de7e..c6d3843 100644
--- a/attrib/gatt.h
+++ b/attrib/gatt.h
@@ -30,7 +30,8 @@ guint gatt_discover_primary(GAttrib *attrib, bt_uuid_t *uuid, gatt_cb_t func,
gpointer user_data);
guint gatt_discover_char(GAttrib *attrib, uint16_t start, uint16_t end,
- gatt_cb_t func, gpointer user_data);
+ bt_uuid_t *uuid, gatt_cb_t func,
+ gpointer user_data);
guint gatt_read_char(GAttrib *attrib, uint16_t handle, uint16_t offset,
GAttribResultFunc func, gpointer user_data);
diff --git a/attrib/gatttool.c b/attrib/gatttool.c
index 729e18d..0dfbc04 100644
--- a/attrib/gatttool.c
+++ b/attrib/gatttool.c
@@ -206,7 +206,8 @@ static gboolean characteristics(gpointer user_data)
{
GAttrib *attrib = user_data;
- gatt_discover_char(attrib, opt_start, opt_end, char_discovered_cb, NULL);
+ gatt_discover_char(attrib, opt_start, opt_end, opt_uuid,
+ char_discovered_cb, NULL);
return FALSE;
}
diff --git a/attrib/interactive.c b/attrib/interactive.c
index b32e9e7..a9157e7 100644
--- a/attrib/interactive.c
+++ b/attrib/interactive.c
@@ -431,7 +431,19 @@ static void cmd_char(int argcp, char **argvp)
}
}
- gatt_discover_char(attrib, start, end, char_cb, NULL);
+ if (argcp > 3) {
+ bt_uuid_t uuid;
+
+ if (bt_string_to_uuid(&uuid, argvp[3]) < 0) {
+ printf("Invalid UUID\n");
+ return;
+ }
+
+ gatt_discover_char(attrib, start, end, &uuid, char_cb, NULL);
+ return;
+ }
+
+ gatt_discover_char(attrib, start, end, NULL, char_cb, NULL);
}
static void cmd_char_desc(int argcp, char **argvp)
@@ -658,7 +670,7 @@ static struct {
"Disconnect from a remote device" },
{ "primary", cmd_primary, "[UUID]",
"Primary Service Discovery" },
- { "characteristics", cmd_char, "[start hnd] [end hnd]",
+ { "characteristics", cmd_char, "[start hnd [end hnd [UUID]]]",
"Characteristics Discovery" },
{ "char-desc", cmd_char_desc, "[start hnd] [end hnd]",
"Characteristics Descriptor Discovery" },
--
1.7.1
^ permalink raw reply related
* [PATCH] Add discover characteristics by uuid to gatttool
From: Sheldon Demario @ 2011-03-16 21:51 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Sheldon Demario
In-Reply-To: <1300297246-11056-1-git-send-email-sheldon.demario@openbossa.org>
According to the spec the characteristics discover and characteristics discover
by uuid use the same opcode and the result should be filtered by callback.
---
attrib/client.c | 2 +-
attrib/gatt.c | 16 +++++++++++-----
attrib/gatt.h | 3 ++-
attrib/gatttool.c | 3 ++-
attrib/interactive.c | 16 ++++++++++++++--
5 files changed, 30 insertions(+), 10 deletions(-)
diff --git a/attrib/client.c b/attrib/client.c
index 3237a6b..54bdc79 100644
--- a/attrib/client.c
+++ b/attrib/client.c
@@ -960,7 +960,7 @@ static DBusMessage *discover_char(DBusConnection *conn, DBusMessage *msg,
qchr->prim = prim;
qchr->msg = dbus_message_ref(msg);
- gatt_discover_char(gatt->attrib, att->start, att->end,
+ gatt_discover_char(gatt->attrib, att->start, att->end, NULL,
char_discovered_cb, qchr);
return NULL;
diff --git a/attrib/gatt.c b/attrib/gatt.c
index 32bd4a0..1cd651c 100644
--- a/attrib/gatt.c
+++ b/attrib/gatt.c
@@ -40,7 +40,7 @@ struct discover_primary {
struct discover_char {
GAttrib *attrib;
- bt_uuid_t uuid;
+ bt_uuid_t *uuid;
uint16_t end;
GSList *characteristics;
gatt_cb_t cb;
@@ -59,6 +59,7 @@ static void discover_char_free(struct discover_char *dc)
g_slist_foreach(dc->characteristics, (GFunc) g_free, NULL);
g_slist_free(dc->characteristics);
g_attrib_unref(dc->attrib);
+ g_free(dc->uuid);
g_free(dc);
}
@@ -281,6 +282,9 @@ static void char_discovered_cb(guint8 status, const guint8 *ipdu, guint16 iplen,
goto done;
}
+ if (dc->uuid && bt_uuid_cmp(dc->uuid, &uuid))
+ break;
+
chars->handle = last;
chars->properties = value[2];
chars->value_handle = att_get_u16(&value[3]);
@@ -313,16 +317,17 @@ done:
}
guint gatt_discover_char(GAttrib *attrib, uint16_t start, uint16_t end,
- gatt_cb_t func, gpointer user_data)
+ bt_uuid_t *uuid, gatt_cb_t func,
+ gpointer user_data)
{
uint8_t pdu[ATT_DEFAULT_LE_MTU];
struct discover_char *dc;
+ bt_uuid_t type_uuid;
guint16 plen;
- bt_uuid_t uuid;
- bt_uuid16_create(&uuid, GATT_CHARAC_UUID);
+ bt_uuid16_create(&type_uuid, GATT_CHARAC_UUID);
- plen = enc_read_by_type_req(start, end, &uuid, pdu, sizeof(pdu));
+ plen = enc_read_by_type_req(start, end, &type_uuid, pdu, sizeof(pdu));
if (plen == 0)
return 0;
@@ -334,6 +339,7 @@ guint gatt_discover_char(GAttrib *attrib, uint16_t start, uint16_t end,
dc->cb = func;
dc->user_data = user_data;
dc->end = end;
+ dc->uuid = g_memdup(uuid, sizeof(bt_uuid_t));
return g_attrib_send(attrib, 0, pdu[0], pdu, plen, char_discovered_cb,
dc, NULL);
diff --git a/attrib/gatt.h b/attrib/gatt.h
index 730de7e..c6d3843 100644
--- a/attrib/gatt.h
+++ b/attrib/gatt.h
@@ -30,7 +30,8 @@ guint gatt_discover_primary(GAttrib *attrib, bt_uuid_t *uuid, gatt_cb_t func,
gpointer user_data);
guint gatt_discover_char(GAttrib *attrib, uint16_t start, uint16_t end,
- gatt_cb_t func, gpointer user_data);
+ bt_uuid_t *uuid, gatt_cb_t func,
+ gpointer user_data);
guint gatt_read_char(GAttrib *attrib, uint16_t handle, uint16_t offset,
GAttribResultFunc func, gpointer user_data);
diff --git a/attrib/gatttool.c b/attrib/gatttool.c
index 729e18d..0dfbc04 100644
--- a/attrib/gatttool.c
+++ b/attrib/gatttool.c
@@ -206,7 +206,8 @@ static gboolean characteristics(gpointer user_data)
{
GAttrib *attrib = user_data;
- gatt_discover_char(attrib, opt_start, opt_end, char_discovered_cb, NULL);
+ gatt_discover_char(attrib, opt_start, opt_end, opt_uuid,
+ char_discovered_cb, NULL);
return FALSE;
}
diff --git a/attrib/interactive.c b/attrib/interactive.c
index b32e9e7..a9157e7 100644
--- a/attrib/interactive.c
+++ b/attrib/interactive.c
@@ -431,7 +431,19 @@ static void cmd_char(int argcp, char **argvp)
}
}
- gatt_discover_char(attrib, start, end, char_cb, NULL);
+ if (argcp > 3) {
+ bt_uuid_t uuid;
+
+ if (bt_string_to_uuid(&uuid, argvp[3]) < 0) {
+ printf("Invalid UUID\n");
+ return;
+ }
+
+ gatt_discover_char(attrib, start, end, &uuid, char_cb, NULL);
+ return;
+ }
+
+ gatt_discover_char(attrib, start, end, NULL, char_cb, NULL);
}
static void cmd_char_desc(int argcp, char **argvp)
@@ -658,7 +670,7 @@ static struct {
"Disconnect from a remote device" },
{ "primary", cmd_primary, "[UUID]",
"Primary Service Discovery" },
- { "characteristics", cmd_char, "[start hnd] [end hnd]",
+ { "characteristics", cmd_char, "[start hnd [end hnd [UUID]]]",
"Characteristics Discovery" },
{ "char-desc", cmd_char_desc, "[start hnd] [end hnd]",
"Characteristics Descriptor Discovery" },
--
1.7.1
^ permalink raw reply related
* Re: [PATCH] Bluetooth: Add counter for not acked HCI commands
From: Gustavo F. Padovan @ 2011-03-16 21:30 UTC (permalink / raw)
To: Brian Gix
Cc: Andrzej Kaczmarek, linux-bluetooth@vger.kernel.org,
par-gunnar.p.hjalmdahl@stericsson.com,
henrik.possung@stericsson.com
In-Reply-To: <4D710F7D.6090905@codeaurora.org>
Hi Andrzej,
* Brian Gix <bgix@codeaurora.org> [2011-03-04 08:12:45 -0800]:
> Hi Andrzej,
>
> On 3/4/2011 4:37 AM, Andrzej Kaczmarek wrote:
> > Hi Brian,
> >
> > On 01.03.2011 20:25, Brian Gix wrote:
> >> The problem you describe sounds like one I had to solve in the past, but
> >> unfortunately, I think it may be a little more difficult to solve here.
> >> This particular baseband appears to have an outstanding Cmd queue of
> >> 2. It also appears to consume one of them for extended periods of time
> >> when making requests of the remote device, and using the NOP
> >> Cmd-Status-Event to inform the host that the slot is now free.
> >>
> >> As you are observing, the completion of the task (triggering additional
> >> requests locally) overlaps with these NOP responses, giving a false
> >> count to the host of available cmd slots.
> >>
> >> Personally, I consider this to be a baseband bug, which could have been
> >> avoided by having a max outstanding queue of 1.
> >
> > This particular controller uses 1 credit for each command that is being
> > processed and having max outstanding queue of 1 would make some
> > scenarios impossible - consider authentication with
> > HCI_Authentication_Request pending and other HCI command to be sent in
> > parallel.
> >
>
> The adjustment I suggest doesn't disallow this. I was having a
> theory-of-operation talk with a baseband guy once, and this is what he
> had to say:
>
> The HCI interface is intended to be an interface that immediately
> responds to *every* command. The problem is that some commands are
> intended for the local baseband (and can be handled immediately) and
> others require interaction outside of the control of the local baseband,
> and take an indeterminate amount of time.
>
> So two response mechanism were created:
>
> Command Immediate Rsp Delayed Rsp
> Cmd --> Cmd Complete Evt (Cmds handled Locally)
> Cmd --> Cmd Status Evt --> Cmplt Event ("long" Async Cmds)
>
> The HCI flow control is contained in both the Cmd-Complt-Evt and the
> Cmd-Status-Evt.
>
> So it is assumed that both flow control response event types will be
> delivered immediately after the baseband receives them. Of course
> because of the communication link, these response are still asyncronous
> in most cases including the BlueZ case.
>
> The baseband guy basically said that "the baseband" does not expect the
> next command until the host has processed the (immediate) response to
> the previous one. And that the (immediate) response to the previous one
> should be RXed in milliseconds at the most.
>
> So I would always delay sending the next command until the prior
> commands CmdStatus or CmdCmplt has been received. This should work
> unless there is something seriously wrong with the baseband.
That's exactly how linux stack work, and I'm seeing where we could be doing
wrong, so I believe your patch is fixing nothing. A best version of your
patch is:
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index cebe7588..2d4d441 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -1771,7 +1771,7 @@ static inline void hci_cmd_complete_evt(struct hci_dev *hdev, struct sk_buff *sk
if (ev->opcode != HCI_OP_NOP)
del_timer(&hdev->cmd_timer);
- if (ev->ncmd) {
+ if (ev->ncmd && ev->opcode != HCI_OP_NOP) {
atomic_set(&hdev->cmd_cnt, 1);
if (!skb_queue_empty(&hdev->cmd_q))
tasklet_schedule(&hdev->cmd_task);
That patch means that want to avoid send new commands when a Command Status
Event arrives, but we want exactly the opposite.
--
Gustavo F. Padovan
http://profusion.mobi
^ permalink raw reply related
* [GIT] Networking
From: David Miller @ 2011-03-16 21:21 UTC (permalink / raw)
To: torvalds
Cc: akpm, netdev, linux-wireless, netfilter-devel, linux-bluetooth,
linux-kernel
DQpJIGp1c3QgZGlkIGEgdGVzdCBtZXJnZSBvZiB0aGlzIHdvcmsgaW50byB5b3VyIHRyZWUgYW5k
IGl0IHdlbnQgd2l0aG91dA0KYW55IGNvbmZsaWN0cywgc28gaXQgc2hvdWxkIGdvIGVhc3kgZm9y
IHlvdSB0b28uDQoNCjEpIFRoZSBsb25nIGF3YWl0ZWQgYWRkaXRpb24gb2YgSm96c2VmIEthZGxl
Y3NpaydzIHRvdGFsbHkgYXdlc29tZQ0KICAgImlwc2V0IiB0byBuZXRmaWx0ZXIuDQoNCjIpIFNl
dmVyYWwgbWFqb3IgY2hhbmdlcyB0byBvdXIgcm91dGluZyBpbmZyYXN0cnVjdHVyZToNCg0KICAg
YSkgUm91dGluZyBtZXRyaWNzIGFyZSBzdG9yZWQgaW4gaW5ldHBlZXIgY2FjaGUgYW5kIGFyZSBD
T1cnYWJsZS4NCg0KICAgYikgUE1UVSBhbmQgcmVkaXJlY3QgaW5mb3JtYXRpb24gY2FuIGJlIHN0
b3JlZCBpbiB0aGUgaW5ldHBlZXINCiAgICAgIGNhY2hlIGFzIHdlbGwuICBJUFY0IGlzIGZ1bGx5
IGNvbnZlcnRlZCBvdmVyIHRvIHRoaXMgc2NoZW1lLg0KDQogICAgICBDaGFuZ2VzICdhJyBhbmQg
J2InIGFyZSBzaWduaWZpY2FudCBiZWNhdXNlIGl0IHBhdmVzIHRoZSB3YXkNCiAgICAgIHRvIGJl
IGFibGUgdG8gbGVnaXRpbWF0ZWx5IHJlbW92ZSB0aGUgaXB2NCByb3V0aW5nIGNhY2hlIG9uY2UN
CiAgICAgIHdlIGNhbiBnZXQgdGhlIEZJQiBiYWNrZW5kIGVmZmljaWVudCBlbm91Z2guDQoNCiAg
IGMpIFJvdXRlIGZsb3cgbG9va3VwIGtleXMgYW5kIGNvbXBhY3RlZCwgYW5kIG9wdGltaXplZCBm
b3IgdGhlDQogICAgICBpbmRpdmlkdWFsIGFkZHJlc3MgZmFtaWxpZXMuICBPbiBpcHY0IHRoaXMg
bWVhbnMgdGhlIChvZnRlbg0KICAgICAgb24tc3RhY2spIGZsb3cga2V5cyBhcmUgMzIgYnl0ZXMg
aW4gc2l6ZSwgaW5zdGVhZCBvZiB0aGUNCiAgICAgIHdob3BwaW5nIDYwIGJ5dGVzIHRoZXkgdXNl
ZCB0byBiZS4NCg0KICAgZCkgSW5zdGVhZCBvZiByZXR1cm5pbmcgYW4gZXJyb3IgY29kZSwgYW5k
IHdyaXRpbmcgdGhlIHJlc3VsdGluZw0KICAgICAgcm91dGUgZW50cnkgcG9pbnRlciBvbiB0aGUg
Y2FsbGVycyBzdGFjayBieSByZWZlcmVuY2UsIHdlDQogICAgICByZXR1cm4gZXJyb3IgZW5jb2Rl
ZCBwb2ludGVycyBpbnN0ZWFkLg0KDQogICBlKSBXZSBoYWQgdHdvIGlwdjQgcm91dGluZyB0YWJs
ZSBsb29rdXAgYWxnb3JpdGhtcywgc2VsZWN0ZWQNCiAgICAgIGF0IGNvbXBpbGUgdGltZSwgb25l
IGJhc2VkIHVwb24gYSBzZXQgb2YgaGFzaCB0YWJsZXMgYW5kDQogICAgICBhbm90aGVyIGJhc2Vk
IHVwb24gdGhlIExDLXRyaWUgZGF0YSBzdHJ1Y3R1cmUuICBBZnRlciBtYW55DQogICAgICB5ZWFy
cyBpdCBpcyB0aW1lIHRvIHN0b3AgaGF2aW5nIHR3byBzZXRzIG9mIGNvZGUgdG8gdXBkYXRlDQog
ICAgICB3aGVuIGZpeGVzIG9yIEFQSSBjaGFuZ2VzIHRha2UgcGxhY2UsIGFuZCBzZXR0bGUgb24g
dGhlDQogICAgICBMQy10cmllLiAgZmliX2hhc2ggaGFzIHRoZXJlZm9yZSBiZWVuIGNvbXBsZXRl
bHkgcmVtb3ZlZC4NCg0KICAgZikgU2V2ZXJhbCBvcHRpbWl6YXRpb25zIHRvIHRoZSBzbG93IHBh
dGhzIG9mIElQVjQgcm91dGluZyBsb29rdXBzLA0KICAgICAgaW4gcGFydGljdWxhciBjYWNoaW5n
IG9mIHBlci1uZXh0aG9wIHNvdXJjZSBhZGRyZXNzIHNlbGVjdGlvbg0KICAgICAgdmFsdWVzIGlu
IHRoZSBGSUIgdGFibGUgZW50cmllcy4NCg0KICAgZykgVGhlIHJvdXRpbmcgY2FjaGUgZW50cnkg
ZGF0YSBzdHJ1Y3R1cmUsIHN0cnVjdCBydGFibGUsIGhhcw0KICAgICAgYmVlbiBjb21wbGV0ZWx5
IHN0cmlwcGVkIG9mIGV4dHJhbmVvdXMgYW5kIHVubmVjZXNzYXJ5IG1lbWJlcnMuDQoNCjMpIFRo
ZSBpbml0aWFsIFRDUCBjb25nZXN0aW9uIHdpbmRvdyBpcyBpbmNyZWFzZWQgdG8gMTAsIGFzIHBl
cg0KICAgZHJhZnQtaGtjaHUtdGNwbS1pbml0Y3duZC0wMQ0KDQo0KSBNdWx0aS10aHJlYWRlZCBz
ZW5kaW5nIG9uIFVEUCBzb2NrZXRzIGFyZSBzaWduaWZpY2FudGx5IGltcHJvdmVkDQogICBieSBl
bGltaW5hdGluZyB0aGUgdXNlIG9mIHNoYXJlZCBzb2NrZXQgc3RhdGUgaW4gdGhlIG5vbi1jb3Jr
DQogICBjYXNlcyBvZiBJL08uICBGcm9tIEhlcmJlcnQgWHUuDQoNCjUpIFNldmVyYWwgZml4ZXMg
dG8gdGhlIEh5c3RhcnQgbWVjaGFuaXNtIG9mIENVQklDIFRDUCBjb25nZXN0aW9uDQogICBjb250
cm9sLiAgRnJvbSBTdGVwaGVtIEhlbW1pbmdlciwgU2FuZ3RhZSBIYSwgYW5kIEx1Y2FzIE51c3Ni
YXVtLg0KDQo2KSBNYW55IGNsZWFudXBzIGFuZCBpbXByb3ZlbWVudHMgdG8gSVBWUyBzdXBwb3J0
IGluIG5ldGZpbHRlciBmcm9tDQogICBTaW1vbiBIb3JtYW4sIEp1bGlhbiBBbmFzdGFzb3YsIGFu
ZCBtYW55IG90aGVycy4NCg0KNykgQWRkIHRoZSBYRU4gbmV0d29yayBiYWNrZW5kIGRyaXZlciwg
ZnJvbSBJYW4gQ2FtcGJlbGwuDQoNCjgpIE51bWVyb3VzIGNsZWFudXBzLCBzaW1wbGlmaWNhdGlv
bnMsIGFuZCBmaXhlcyB0byB0aGUgVElQQyBzdGFjaw0KICAgZnJvbSBBbGxhbiBTdGVwaGVucyBh
bmQgUGF1bCBHb3J0bWFrZXIuDQoNCjkpIFN1cHBvcnQgZm9yIGV4dGVuZGVkIHNlcXVlbmNlIG51
bWJlcnMgaW4gSVBTRUMsIGZyb20gU3RlZmZlbg0KICAgS2xhc3NlcnQuDQoNCjEwKSBTb2NrZXQg
ZmlsdGVycyBjYW4gbm93IGJlIHVzZWQgd2l0aCBBRl9VTklYIHNvY2tldHMuICBGcm9tDQogICAg
QWxiYW4gQ3JlcXV5Lg0KDQoxMSkgU29ja2V0IGZpbHRlciBydW5uaW5nIG5vIGxvbmdlciBibG9j
a3Mgc29mdGlycXMsIGFzIHRoZXkgYXJlIGZ1bGx5DQogICAgcmUtZW50cmFudCBhbmQgbG9jay1s
ZXNzLiAgRnJvbSBFcmljIER1bWF6ZXQuDQoNCjEyKSBTdXBwb3J0IGZvciBuZXR3b3JrIGRldmlj
ZSBncm91cHMsIHdoaWNoIGFsbG93cyBtYW5pcHVsYXRpb24gb2YNCiAgICBzZXR0aW5ncyBvbiBh
IGdyb3VwIGJhc2lzLCBmcm9tIFZsYWQgRG9nYXJ1Lg0KDQoxMykgQWRkIEhXIGJhc2VkIHFvcyBz
dXBwb3J0LCBpbiB0aGF0IHdlIGNhbiBub3cgdXNlIHRoZSBza2ItPnByaW9yaXR5DQogICAgZmll
bGQgdG8gc3RlZXIgcGFja2V0cyB0byBpbmRpdmlkdWFsIEhXIFRYIHF1ZXVlcy4gIEZyb20gSm9o
bg0KICAgIEZhc3RhYmVuZC4NCg0KMTQpIENvbnZlcnQgUFBQIGF3YXkgZnJvbSBkaXJlY3QgU0tC
IGxpc3QgaW1wbGVtZW50YXRpb24gZGV0YWlscyBhcw0KICAgIG11Y2ggYXMgcG9zc2libGUsIHdp
dGggbXVjaCBoZWxwIGZyb20gUGF1bCBNYWNrZXJyYXMuDQoNCjE1KSBSUFMgY2FuIG5vdyBiZSBh
Y2NlbGVyYXRlZCBkaXJlY3RseSBpbiBoYXJkd2FyZSwgdGhhbmtzIHRvDQogICAgQmVuIEh1dGNo
aW5ncy4NCg0KMTYpIE5ldyBwYWNrZXQgc2NoZWR1bGVycywgQ0hPS2UgYW5kIFNGQiwgRnJvbSBT
dGVwaGVuIEhlbW1pbmdlciBhbmQNCiAgICBFcmljIER1bWF6ZXQuDQoNCjE3KSBDb25zb2xpZGF0
aW9uIG9mIGhvdyBib25kaW5nIGJpbmRzIG1hc3RlciBhbmQgc2xhdmUgZGV2aWNlcywgYXMgd2Vs
bAkNCiAgICBhcyBob3cgUlggcGFja2V0IHByb2Nlc3Npbmcgd29ya3MuICBGcm9tIEppcmkgUGly
a28gYW5kIG90aGVycy4NCg0KMTgpIEhhcm1vbml6YXRpb24gb2YgbmV0d29yayBkZXZpY2UgY2hl
Y2tzdW0gb2ZmbG9hZCBzZXR0aW5nDQogICAgbWFuYWdlbWVudCwgZnJvbSBNaWNoYcWCIE1pcm9z
xYJhdy4NCg0KMTkpIFN1cHBvcnQgY29ycmVsYXRlZCBwYWNrZXQgbG9zcyBzdXBwb3J0IHRvIHRo
ZSBuZXR3b3JrIGVtdWxhdG9yDQogICAgcGFja2V0IHNjaGVkdWxlciwgZnJvbSBTdGVwaGVuIEhl
bW1pbmdlciBhbmQgYmFzZWQgdXBvbiB3b3JrIGRvbmUNCiAgICBieSBTdGVmYW5vIFNhbHNhbm8g
YW5kIEZhYmlvIEx1ZG92aWNpLg0KDQoyMCkgQW4gZW50cnkgaW4gdGhlIGlwX3RvczJwcmlvW10g
dGFibGUgaGFzIGJlZW4gd3JvbmcgZm9yIH44IHllYXJzIDotKQ0KICAgIFRoYW5rcyB0byBEYW4g
U2llbW9uIGFuZCBFcmljIER1bWF6ZXQuDQoNCjIxKSBBcyB1c3VhbCB0aGUgd2lyZWQgYW5kIHdp
cmVsZXNzIGRldmVsb3BlcnMgaGF2ZSBiZWVuIGJ1c3kgbGl0dGxlDQogICAgYmVlcyBmaXhpbmcg
YnVncywgaW1wcm92aW5nIHBlcmZvcm1hbmNlLCBhbmQgYWRkaW5nIG5ldyBmZWF0dXJlcy4NCiAg
ICBTZWUgdGhlIGNoYW5nZWxvZyBmb3IgZGV0YWlscy4NCg0KUGxlYXNlIHB1bGwsIHRoYW5rcyBh
IGxvdC4NCg0KVGhlIGZvbGxvd2luZyBjaGFuZ2VzIHNpbmNlIGNvbW1pdCA3NmNhMDc4MzI4NDIx
MDBiMTRhMzFhZDg5OTZkYWI3YjBjMjhhYTQyOg0KDQogIE1lcmdlIGJyYW5jaCAnZm9yLWxpbnVz
JyBvZiBnaXQ6Ly94ZW5iaXRzLnhlbi5vcmcvcGVvcGxlL3NzdGFiZWxsaW5pL2xpbnV4LXB2aHZt
ICgyMDExLTAzLTE1IDEwOjU5OjA5IC0wNzAwKQ0KDQphcmUgYXZhaWxhYmxlIGluIHRoZSBnaXQg
cmVwb3NpdG9yeSBhdDoNCg0KICBtYXN0ZXIua2VybmVsLm9yZzovcHViL3NjbS9saW51eC9rZXJu
ZWwvZ2l0L2RhdmVtL25ldC1uZXh0LTIuNi5naXQgbWFzdGVyDQoNCkFqaXQgS2hhcGFyZGUgKDIz
KToNCiAgICAgIGJlMm5ldDogV2hpbGUgY29uZmlndXJpbmcgUU9TIGZvciBWRiwgcGFzcyBwcm9w
ZXIgZG9tYWluIGlkDQogICAgICBiZTJuZXQ6IGVuZGlhbm5lc3MgZml4IGluIGJlX2NtZF9zZXRf
cW9zKCkuDQogICAgICBiZTJuZXQ6IFVzZSBkb21haW4gaWQgd2hlbiBiZV9jbWRfaWZfZGVzdHJv
eSBpcyBjYWxsZWQuDQogICAgICBiZTJuZXQ6IEluaXRpYWxpemUgYW5kIGNsZWFudXAgc3Jpb3Yg
cmVzb3VyY2VzIG9ubHkgaWYgcGNpX2VuYWJsZV9zcmlvdiBoYXMgc3VjY2VlZGVkLg0KICAgICAg
YmUybmV0OiBjYWxsIGJlX3ZmX2V0aF9hZGRyX2NvbmZpZygpIGFmdGVyIHJlZ2lzdGVyX25ldGRl
dg0KICAgICAgYmUybmV0OiBDbGVhbnVwIHRoZSBWRiBpbnRlcmZhY2UgaGFuZGxlcw0KICAgICAg
YmUybmV0OiBGb3IgdGhlIFZGIE1BQywgdXNlIHRoZSBPVUkgZnJvbSBjdXJyZW50IE1BQyBhZGRy
ZXNzDQogICAgICBiZTJuZXQ6IHBhc3MgZG9tYWluIG51bWJlcnMgZm9yIHBtYWNfYWRkL2RlbCBm
dW5jdGlvbnMNCiAgICAgIGJlMm5ldDogQWxsb3cgVkZzIHRvIGNhbGwgYmVfY21kX3Jlc2V0X2Z1
bmN0aW9uLg0KICAgICAgYmUybmV0OiBGaXggYnJva2VuIHByaW9yaXR5IHNldHRpbmcgd2hlbiB2
bGFuIHRhZ2dpbmcgaXMgZW5hYmxlZC4NCiAgICAgIGJlMm5ldDogcGFzcyBwcm9wZXIgaGRyX3Np
emUgd2hpbGUgZmxhc2hpbmcgcmVkYm9vdC4NCiAgICAgIGJlMm5ldDogZml4IGJlX3N1c3BlbmQv
cmVzdW1lL3NodXRkb3duDQogICAgICBiZTJuZXQ6IGdyYWNlZnVsbHkgaGFuZGxlIHNpdHVhdGlv
bnMgd2hlbiBVRSBpcyBkZXRlY3RlZA0KICAgICAgYmUybmV0OiBkZXRlY3QgYSBVRSBldmVuIHdo
ZW4gYSBpbnRlcmZhY2UgaXMgZG93bi4NCiAgICAgIGJlMm5ldDogcmVzdHJpY3QgV09MIHRvIFBG
cyBvbmx5Lg0KICAgICAgYmUybmV0OiBhZGQgbmV3IGNvdW50ZXJzIHRvIGRpc3BsYXkgdmlhIGV0
aHRvb2wgc3RhdHMNCiAgICAgIGJlMm5ldDogZml4ZXMgaW4gZXRodG9vbCBzZWxmdGVzdA0KICAg
ICAgYmUybmV0OiB2YXJpYWJsZSBuYW1lIGNoYW5nZQ0KICAgICAgYmUybmV0OiBmaXggdG8gaWdu
b3JlIHRyYW5zcGFyZW50IHZsYW4gaWRzIHdyb25nbHkgaW5kaWNhdGVkIGJ5IE5JQw0KICAgICAg
YmUybmV0OiBhZGQgY29kZSB0byBkaXNwbGF5IHRlbXBlcmF0dXJlIG9mIEFTSUMNCiAgICAgIGJl
Mm5ldDogdXNlIGhiYV9wb3J0X251bSBpbnN0ZWFkIG9mIHBvcnRfbnVtDQogICAgICBiZTJuZXQ6
IENvcHlyaWdodCBub3RpY2UgY2hhbmdlLiBVcGRhdGUgdG8gRW11bGV4IGluc3RlYWQgb2YgU2Vy
dmVyRW5naW5lcw0KICAgICAgYmUybmV0OiBCdW1wIHVwIHRoZSB2ZXJzaW9uIG51bWJlcg0KDQpB
bGJhbiBDcmVxdXkgKDIpOg0KICAgICAgYWZfdW5peDogaW1wbGVtZW50IHNvY2tldCBmaWx0ZXIN
CiAgICAgIGFmX3VuaXg6IGNvZGluZyBzdHlsZTogcmVtb3ZlIG9uZSBsZXZlbCBvZiBpbmRlbnRh
dGlvbiBpbiB1bml4X3NodXRkb3duKCkNCg0KQWxlc3NpbyBJZ29yIEJvZ2FuaSAoMik6DQogICAg
ICBydGx3aWZpOiBBZGQgdGhlIG1pc3NpbmcgcmN1X3JlYWRfbG9jay91bmxvY2sNCiAgICAgIHJ0
bHdpZmk6IGZpeCBwbGFjZXMgd2hlcmUgdW5pbml0aWFsaXplZCBkYXRhIGlzIHVzZWQNCg0KQWxl
eGFuZGVyIER1eWNrICgxKToNCiAgICAgIGl4Z2JlOiBiYWxhbmNlIGZyZWVfaXJxIGNhbGxzIHdp
dGggcmVxdWVzdF9pcnEgY2FsbHMNCg0KQWxsYW4gU3RlcGhlbnMgKDQyKToNCiAgICAgIHRpcGM6
IENvbWJpbmUgcG9ydCBzdHJ1Y3R1cmUgd2l0aCB0aXBjX3BvcnQgc3RydWN0dXJlDQogICAgICB0
aXBjOiBDb21iaW5lIGJlYXJlciBzdHJ1Y3R1cmUgd2l0aCB0aXBjX2JlYXJlciBzdHJ1Y3R1cmUN
CiAgICAgIHRpcGM6IFJlbW92ZSB1bnVzZWQgZ2xvYmFsIHZhcmlhYmxlIHRpcGNfdXNlcl9jb3Vu
dA0KICAgICAgdGlwYzogUHJldmVudCBpbnZhbGlkIG1lbW9yeSBhY2Nlc3Mgd2hlbiBzZW5kaW5n
IHRvIGNvbmZpZ3VyYXRpb24gc2VydmljZQ0KICAgICAgdGlwYzogSW1wcm92ZSBoYW5kbGluZyBv
ZiBpbnZhbGlkIGxpbmsgdG9sZXJhbmNlIHZhbHVlcw0KICAgICAgdGlwYzogRml4IHByaW50IHN0
YXRlbWVudHMgdGhhdCBhc3N1bWUgcG9pbnRlcnMgYXJlIDMyLWJpdCB2YWx1ZXMNCiAgICAgIHRp
cGM6IENsZWFuIG91dCBhbGwgcmVtYWluaW5nIGluc3RhbmNlcyBvZiAjaWYgMCdkIHVudXNlZCBj
b2RlDQogICAgICB0aXBjOiBDbGVhbiB1cCB0cmFja2luZyBvZiBub2RlIHJlcXVlc3RpbmcgYSBi
cm9hZGNhc3QgcmV0cmFuc21pdA0KICAgICAgdGlwYzogRWxpbWluYXRlIHVubmVjZXNzYXJ5IGxv
Y2tpbmcgd2hlbiBzdGFydGluZyB0b3BvbG9neSBzZXJ2aWNlDQogICAgICB0aXBjOiBJbXByb3Zl
IGFjY3VyYWN5IG9mIGxpbmsgdHJhbnNtaXQgcXVldWUgbWF4aW11bSBzaXplIHN0YXRpc3RpYw0K
ICAgICAgdGlwYzogU2V0IHVudXNlZCBwcm9iZSBmaWVsZCBvZiBsaW5rIHByb3RvY29sIG1lc3Nh
Z2VzIHRvIGRlZmluZWQgdmFsdWUNCiAgICAgIHRpcGM6IE1pbm9yIG9wdGltaXphdGlvbiB0byB0
b3BvbG9neSBzZXJ2aWNlIGNvbm5lY3Rpb24gZXN0YWJsaXNobWVudA0KICAgICAgdGlwYzogRml4
IHBvcnQgY291bnRlciBoYW5kbGluZyB0byBjb3JyZWN0IGNvbmdlc3Rpb24gY29udHJvbA0KICAg
ICAgdGlwYzogQWRkIGluIG1pc3NpbmcgbG9jayBkdXJpbmcgbGluayBpbml0aWFsaXphdGlvbg0K
ICAgICAgdGlwYzogUmVtb3ZlIHN1cHBvcnQgZm9yIHBlci1jb25uZWN0aW9uIG1lc3NhZ2Ugc2Vx
dWVuY2UgbnVtYmVyaW5nDQogICAgICB0aXBjOiBSZW1vdmUgdW51c2VkIG1lc3NhZ2UgaGVhZGVy
IGZpZWxkIGZvciByZXF1ZXN0ZWQgbnVtYmVyIG9mIGxpbmtzDQogICAgICB0aXBjOiBBdm9pZCBy
ZWxpYWJsZSBicm9hZGNhc3QgcHJlcGFyYXRpb24gZm9yIE5BQ0sgbWVzc2FnZXMNCiAgICAgIHRp
cGM6IEFsbG93IHJlY2VpdmluZyBpbnRvIGlvdmVjIGNvbnRhaW5pbmcgbXVsdGlwbGUgZW50cmll
cw0KICAgICAgdGlwYzogQ29ycmVjdCBicm9hZGNhc3QgbGluayBwZWVyIGluZm8gd2hlbiBkaXNw
bGF5aW5nIGxpbmtzDQogICAgICB0aXBjOiBBZGQgbmV0d29yayBhZGRyZXNzIG1hc2sgaGVscGVy
IHJvdXRpbmVzDQogICAgICB0aXBjOiBQcmV2ZW50IG51bGwgcG9pbnRlciBlcnJvciB3aGVuIHJl
bW92aW5nIGEgbm9kZSBzdWJzY3JpcHRpb24NCiAgICAgIHRpcGM6IENvc21ldGljIGNoYW5nZXMg
dG8gbm9kZSBzdWJzY3JpcHRpb24gY29kZQ0KICAgICAgdGlwYzogQWRkIHN1cHBvcnQgZm9yIFNP
X1JDVlRJTUVPIHNvY2tldCBvcHRpb24NCiAgICAgIHRpcGM6IEZpeCBwcm9ibGVtIHdpdGggbWlz
c2luZyBsaW5rIGluICJ0aXBjLWNvbmZpZyAtbCIgb3V0cHV0DQogICAgICB0aXBjOiBTcGxpdCB1
cCB1bmlmaWVkIHN0cnVjdHVyZSBvZiBuZXR3b3JrLXJlbGF0ZWQgdmFyaWFibGVzDQogICAgICB0
aXBjOiBFbGltaW5hdGUgY29uZmlndXJhdGlvbiBmb3IgbWF4aW11bSBudW1iZXIgb2YgY2x1c3Rl
ciBub2Rlcw0KICAgICAgdGlwYzogQ29udmVydCBub2RlIG9iamVjdCBhcnJheSB0byBhIGhhc2gg
dGFibGUNCiAgICAgIHRpcGM6IG1hbnVhbGx5IGlubGluZSBuZXRfc3RhcnQvc3RvcCwgbWFrZSBh
c3NvYy4gdmFycyBzdGF0aWMNCiAgICAgIHRpcGM6IEVsaW1pbmF0ZSB0aW1lc3RhbXAgZnJvbSBs
aW5rIHByb3RvY29sIG1lc3NhZ2VzDQogICAgICB0aXBjOiBtYWtlIG1zZ19zZXRfcmVkdW5kYW50
X2xpbmsoKSBjb25zaXN0ZW50IHdpdGggb3RoZXIgc2V0IG9wcw0KICAgICAgdGlwYzogRml4IHJl
ZHVuZGFudCBsaW5rIGZpZWxkIGhhbmRsaW5nIGluIGxpbmsgcHJvdG9jb2wgbWVzc2FnZQ0KICAg
ICAgdGlwYzogQ29zbWV0aWMgY2hhbmdlcyB0byBuZWlnaGJvciBkaXNjb3ZlcnkgbG9naWMNCiAg
ICAgIHRpcGM6IEdpdmUgVHggb2YgZGlzY292ZXJ5IHJlc3BvbnNlcyBwcmlvcml0eSBvdmVyIGxp
bmsgbWVzc2FnZXMNCiAgICAgIHRpcGM6IE9wdGltaXphdGlvbnMgdG8gbGluayBjcmVhdGlvbiBj
b2RlDQogICAgICB0aXBjOiBDb3JyZWN0IG1pc25hbWVkIHJlZmVyZW5jZXMgdG8gbmVpZ2hib3Ig
ZGlzY292ZXJ5IGRvbWFpbg0KICAgICAgdGlwYzogUmVtb3ZlIHVudXNlZCBmaWVsZCBpbiBiZWFy
ZXIgc3RydWN0dXJlDQogICAgICB0aXBjOiBFbGltaW5hdGUgdW5uZWNlc3NhcnkgY29uc3RhbnQg
Zm9yIG5laWdoYm9yIGRpc2NvdmVyeSBtc2cgc2l6ZQ0KICAgICAgdGlwYzogRG9uJ3QgcmVzcG9u
ZCB0byBuZWlnaGJvciBkaXNjb3ZlcnkgcmVxdWVzdCBvbiBibG9ja2VkIGJlYXJlcg0KICAgICAg
dGlwYzogUmVtb3ZlIGJlYXJlciBmbGFnIGluZGljYXRpbmcgZXhpc3RlbmNlIG9mIGJyb2FkY2Fz
dCBhZGRyZXNzDQogICAgICB0aXBjOiBFbGltaW5hdGUgcmVtYWluaW5nIHN1cHBvcnQgZm9yIHJv
dXRpbmcgdGFibGUgbWVzc2FnZXMNCiAgICAgIHRpcGM6IEVsaW1pbmF0ZSBvYnNvbGV0ZSByb3V0
aW5lIGZvciBoYW5kbGluZyByb3V0ZWQgbWVzc2FnZXMNCiAgICAgIHRpcGM6IFVwZGF0ZSBtYWlu
dGVuYW5jZSBpbmZvcm1hdGlvbg0KDQpBbWVyaWdvIFdhbmcgKDUpOg0KICAgICAgYm9uZGluZzog
c3luYyBuZXRwb2xsIGNvZGUgd2l0aCBicmlkZ2UNCiAgICAgIG5ldHBvbGw6IHJlbW92ZSBJRkZf
SU5fTkVUUE9MTCBmbGFnDQogICAgICBib25kOiBzZXJ2aWNlIG5ldHBvbGwgYXJwIHF1ZXVlIG9u
IG1hc3RlciBkZXZpY2UNCiAgICAgIGJvbmRpbmc6IHVzZSB0aGUgY29ycmVjdCBzaXplIGZvciBf
c2ltcGxlX2hhc2goKQ0KICAgICAgYm9uZGluZzogbW92ZSBwcm9jZnMgY29kZSBpbnRvIGJvbmRf
cHJvY2ZzLmMNCg0KQW5hbmQgR2FkaXlhciAoMik6DQogICAgICBCbHVldG9vdGg6IGZpeCBidWls
ZCBicmVhayBvbiBoY2lfc29jay5jDQogICAgICBCbHVldG9vdGg6IHJlbW92ZSB1bm5lY2Vzc2Fy
eSBjYWxsIHRvIGhjaV9zb2NrX2NsZWFudXANCg0KQW5kZXJzIEJlcmdncmVuICgyKToNCiAgICAg
IG5ldDogVFggdGltZXN0YW1wcyBmb3IgSVB2NiBVRFAgcGFja2V0cw0KICAgICAgaWdiOiBmaXgg
aHcgdGltZXN0YW1waW5nDQoNCkFuZGVyc29uIEJyaWdsaWEgKDEpOg0KICAgICAgQmx1ZXRvb3Ro
OiBGaXggTEUgY29ubiBjcmVhdGlvbg0KDQpBbmRyZWkgRW1lbHRjaGVua28gKDMpOg0KICAgICAg
Qmx1ZXRvb3RoOiBVc2Ugbm9uLWZsdXNoYWJsZSBieSBkZWZhdWx0IEwyQ0FQIGRhdGEgcGFja2V0
cw0KICAgICAgQmx1ZXRvb3RoOiBEbyBub3QgdXNlIGFzc2lnbm1lbnRzIGluIElGIGNvbmRpdGlv
bnMNCiAgICAgIEJsdWV0b290aDogZml4IGNyYXNoIGJ5IGRpc2FibGluZyB0YXNrbGV0IGluIHNv
Y2sgYWNjZXB0DQoNCkFuZHJlaSBXYXJrZW50aW4gKDEpOg0KICAgICAgQmx1ZXRvb3RoOiBNYWtl
IGhjaSBhIGNoaWxkIG9mIHRoZSBjb3JyZXNwb25kaW5nIHR0eSBkZXZpY2UuDQoNCkFuZHkgR29z
cG9kYXJlayAoMik6DQogICAgICBpeGdiZTogZml4IGNvbXBpbGUgZmFpbHVyZSBpbiBpeGdiZV9p
bml0X21ieF9wYXJhbXNfcGYNCiAgICAgIGJvbmRpbmc6IGVuYWJsZSBuZXRwb2xsIHdpdGhvdXQg
Y2hlY2tpbmcgbGluayBzdGF0dXMNCg0KQXJpZWwgRWxpb3IgKDEpOg0KICAgICAgYm54Mng6IGZp
eCBzd2FwIG9mIHJ4LXRpY2tzIGFuZCB0eC10aWNrcyBwYXJhbWV0ZXJzIGluIGludGVycnVwdCBj
b2FsZXNjaW5nIGZsb3cNCg0KQXJpayBOZW10c292ICgzMyk6DQogICAgICB3bDEyeHg6IEFkZCBB
UCByZWxhdGVkIGNvbmZpZ3VyYXRpb24gdG8gY29uZl9kcnZfc2V0dGluZ3MNCiAgICAgIHdsMTJ4
eDogQVAgbW9kZSAtIEFQIHNwZWNpZmljIENNRF9DT05GSUdVUkUgc3ViLWNvbW1hbmRzDQogICAg
ICB3bDEyeHg6IEFQIG1vZGUgLSBhZGQgQVAgc3BlY2lmaWMgZXZlbnQNCiAgICAgIHdsMTJ4eDog
QVAtbW9kZSBoaWdoIGxldmVsIGNvbW1hbmRzDQogICAgICB3bDEyeHg6IEFQIG1vZGUgLSB3b3Jr
YXJvdW5kIGZvciBGVyBidWcgb24gc3RhdGlvbiByZW1vdmUNCiAgICAgIHdsMTJ4eDogQVAgbW9k
ZSAtIGluaXQgc2VxdWVuY2UNCiAgICAgIHdsMTJ4eDogQVAgc3BlY2lmaWMgUlggZmlsdGVyIGNv
bmZpZ3VyYXRpb24NCiAgICAgIHdsMTJ4eDogQWRkIEFQIHJlbGF0ZWQgZGVmaW5pdGlvbnMgdG8g
SE9TVC1GVyBpbnRlcmZhY2UNCiAgICAgIHdsMTJ4eDogQ29uZmlndXJlIEFQIG9uIEJTUyBpbmZv
IGNoYW5nZQ0KICAgICAgd2wxMnh4OiBBUCBtb2RlIGNvbmZpZyBpbiBpZWVlODAyMTFfb3BzLmNv
bmZpZw0KICAgICAgd2wxMnh4OiBBUCBtb2RlIC0gY2hhbmdlIGZpbHRlciBjb25maWcNCiAgICAg
IHdsMTJ4eDogQVAgbW9kZSAtIGFkZCBTVEEgYWRkL3JlbW92ZSBvcHMNCiAgICAgIHdsMTJ4eDog
QVAgbW9kZSAtIGNoYW5nZXMgaW4gVFggcGF0aA0KICAgICAgd2wxMnh4OiBBUCBtb2RlIC0gcmVj
b3JkIFRYIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MNCiAgICAgIHdsMTJ4eDogQVAgbW9kZSAtIGVu
Y3J5cHRpb24gc3VwcG9ydA0KICAgICAgd2wxMnh4OiBBUCBtb2RlIC0gZmV0Y2ggYXBwcm9wcmlh
dGUgZmlybXdhcmUgZm9yIEFQDQogICAgICB3bDEyeHg6IFJlYWQgTUFDIGFkZHJlc3MgZnJvbSBO
VlMgZmlsZSBvbiBIVyBzdGFydHVwDQogICAgICB3bDEyeHg6IEVuYWJsZSBBUC1tb2RlDQogICAg
ICB3bDEyeHg6IGFkZCBtaXNzaW5nIE1PRFVMRV9GSVJNV0FSRSBzdGF0bWVudCBmb3IgQVAtbW9k
ZSBGVw0KICAgICAgd2wxMnh4OiBBZGQgY2hhbm5lbCAxNCB0byBsaXN0IG9mIHN1cHBvcnRlZCAy
Z2h6IGNoYW5uZWxzDQogICAgICBtYWM4MDIxMTogZG8gbm90IGNhbGMgZnJhbWUgZHVyYXRpb24g
d2hlbiB1c2luZyBIVyByYXRlLWNvbnRyb2wNCiAgICAgIG1hYzgwMjExOiBhZGQgSFcgZmxhZyBm
b3IgZGlzYWJsaW5nIGF1dG8gbGluay1QUyBpbiBBUCBtb2RlDQogICAgICBtYWM4MDIxMTogcGFz
cyB1cCBiZWFjb25zIGZyb20gZXh0ZXJuYWwgQlNTIHdoZW4gb3BlcmF0aW5nIGFzIEFQDQogICAg
ICB3bDEyeHg6IGF2b2lkIGJsb2NraW5nIHdoaWxlIGhvbGRpbmcgcmN1IGxvY2sgb24gYnNzIGlu
Zm8gY2hhbmdlDQogICAgICB3bDEyeHg6IGZpeCBwb3RlbnRpYWwgcmFjZSBjb25kaXRpb24gd2l0
aCBUWCBxdWV1ZSB3YXRlcm1hcmsNCiAgICAgIHdsMTJ4eDogQVAtbW9kZSAtIGZpeCByYWNlIGNv
bmRpdGlvbiBvbiBzdGEgY29ubmVjdGlvbg0KICAgICAgd2wxMnh4OiBBUC1tb2RlIC0gVFggcXVl
dWUgcGVyIGxpbmsgaW4gQUMNCiAgICAgIHdsMTJ4eDogcmVwb3J0IGludmFsaWQgVFggcmF0ZSB3
aGVuIHJldHVybmluZyBub24tVFgtZWQgc2ticw0KICAgICAgd2wxMnh4OiBBUC1tb2RlIC0gc3Vw
cG9ydCBIVyBiYXNlZCBsaW5rIFBTIG1vbml0b3JpbmcNCiAgICAgIHdsMTJ4eDogQVAgbW9kZSAt
IGZpeCBidWcgaW4gY2xlYW51cCBvZiB3bDEyNzFfb3Bfc3RhX2FkZCgpDQogICAgICB3bDEyeHg6
IEFQLW1vZGUgLSBjb3VudCBmcmVlIEZXIFRYIGJsb2NrcyBwZXIgbGluaw0KICAgICAgd2wxMnh4
OiBBUC1tb2RlIC0gbWFuYWdlbWVudCBvZiBsaW5rcyBpbiBQUy1tb2RlDQogICAgICB3bDEyeHg6
IHdha2V1cCBjaGlwIGZyb20gRUxQIGR1cmluZyBzY2FuDQoNCkF0aXRhIFNoaXJ3YWlrYXIgKDEp
Og0KICAgICAgaXhnYmU6IEFkZGluZyAxMDBNQiBGVUxMIHN1cHBvcnQgaW4gZXRodG9vbA0KDQpC
YWxhIFNoYW5tdWdhbSAoMSk6DQogICAgICBCbHVldG9vdGg6IEFkZCBmaXJtd2FyZSBzdXBwb3J0
IGZvciBBdGhlcm9zIDMwMTINCg0KQmFydWNoIFNpYWNoICgxKToNCiAgICAgIHBoeS9taWNyZWw6
IGFkZCBhYmlsaXR5IHRvIHN1cHBvcnQgNTBNSHogUk1JSSBjbG9jayBvbiBLWlM4MDUxUk5MDQoN
CkJlbiBEb29rcyAoMSk6DQogICAgICBETTkwMDA6IEFsbG93IHJhbmRvbWlzZWQgZXRoZXJuZXQg
YWRkcmVzcw0KDQpCZW4gR3JlZWFyICgzMik6DQogICAgICBtYWM4MDIxMTogU2hvdyBtYXggcmV0
cnktY291bnRzIGluIGtlcm5lbCBtZXNzYWdlcy4NCiAgICAgIGF0aDlrOiBGaXggdXAgaGFyZHdh
cmUgbW9kZSBhbmQgYmVhY29ucyB3aXRoIG11bHRpcGxlIHZpZnMuDQogICAgICBtYWM4MDIxMTog
Rml4IHNrYi1jb3B5IGZhaWx1cmUgZGVidWcgbWVzc2FnZS4NCiAgICAgIGF0aDlrOiBTaG93IHNv
bWUgbGl2ZSB0eC1xdWV1ZSB2YWx1ZXMgaW4gZGVidWdmcy4NCiAgICAgIGF0aDlrOiBJbml0aWFs
aXplIGFoLT5odw0KICAgICAgYXRoOWs6IEFkZCBtb3JlIGluZm9ybWF0aW9uIHRvIGRlYnVnZnMg
eG1pdCBmaWxlLg0KICAgICAgYXRoOWs6IFJlbW92ZSB1bi11c2VkIG1lbWJlciBmcm9tIGF0aF9u
b2RlLg0KICAgICAgYXRoOWs6IEVuc3VyZSB4bWl0IG1ha2VzIHByb2dyZXNzLg0KICAgICAgYXRo
OWs6IEFkZCBjb3VudGVycyB0byBkaXN0aW5xdWlzaCBBTVBEVSBlbnF1ZXVlcy4NCiAgICAgIGF0
aDlrOiBLZWVwIHRyYWNrIG9mIHN0YXRpb25zIGZvciBkZWJ1Z2ZzLg0KICAgICAgYXRoOWs6IE1v
cmUgeG1pdCBxdWV1ZSBkZWJ1Z2ZzIGluZm9ybWF0aW9uLg0KICAgICAgYXRoOWs6IFJlc3RhcnQg
eG1pdCBsb2dpYyBpbiB4bWl0IHdhdGNoZG9nLg0KICAgICAgYXRoOWs6IEFkZCAnbWlzYycgZmls
ZSB0byBkZWJ1Z2ZzLCBmaXggcXVldWUgaW5kZXhlcy4NCiAgICAgIGF0aDlrOiBUcnkgbW9yZSB0
aGFuIG9uZSBxdWV1ZSB3aGVuIHNjaGVkdWxpbmcgbmV3IGFnZ3JlZ2F0ZS4NCiAgICAgIG1hYzgw
MjExOiBBZGQgc2RhdGEgc3RhdGUgYW5kIGZsYWdzIHRvIGRlYnVnZnMuDQogICAgICBtYWM4MDIx
MTogQmUgbW9yZSBjYXJlZnVsIHdoZW4gY2hhbmdpbmcgY2hhbm5lbHMuDQogICAgICBtYWM4MDIx
MTogU2hvdyBjb25maWd1cmVkIGNoYW5uZWwtdHlwZSBpbiBuZXRkZXYgZGVidWdmcy4NCiAgICAg
IG1hYzgwMjExOiBXYXJuIHVzZXJzIGlmIEhUIGZhaWxzIGJlY2F1c2Ugb2YgZnJlcSBtaXNtYXRj
aC4NCiAgICAgIGF0aDlrOiBTaG93IGNoYW5uZWwgdHlwZSBhbmQgZnJlcXVlbmN5IGluIGRlYnVn
ZnMuDQogICAgICBtYWM4MDIxMTogUmVjYWxjdWxhdGUgY2hhbm5lbC10eXBlIG9uIGlmYWNlIHJl
bW92YWwuDQogICAgICBtYWM4MDIxMTogT3B0aW1pemUgc2NhbnMgb24gY3VycmVudCBvcGVyYXRp
bmcgY2hhbm5lbC4NCiAgICAgIG1hYzgwMjExOiBNYWtlIHNvbWUgbWxtZSB0aW1lcnMgbW9kdWxl
IHBhcmFtYXRlcnMuDQogICAgICBhdGg5azogUHJpbnQgY2hhbm5lbC10eXBlIGluIGNoYW4tY2hh
bmdlIGRiZyBtZXNzYWdlLg0KICAgICAgbWFjODAyMTE6IFByb3Blcmx5IHNldCB3b3JrLWl0ZW0g
Y2hhbm5lbC10eXBlLg0KICAgICAgbWFjODAyMTE6IEFsbG93IHNjYW5uaW5nIG9uIGV4aXN0aW5n
IGNoYW5uZWwtdHlwZS4NCiAgICAgIG1hYzgwMjExOiBBbGxvdyB3b3JrIGl0ZW1zIHRvIHVzZSBl
eGlzdGluZyBjaGFubmVsIHR5cGUuDQogICAgICBhdGg5azogQWRkIGRlYnVnIGluZm8gZm9yIGNv
bmZpZ3VyaW5nIHBvd2VyIGxldmVsLg0KICAgICAgbWFjODAyMTE6IEVuc3VyZSBwb3dlci1sZXZl
bCBzZXQgcHJvcGVybHkgZm9yIHNjYW5uaW5nLg0KICAgICAgbmV0d29yazogQWxsb3cgYWZfcGFj
a2V0IHRvIHRyYW5zbWl0ICs0IGJ5dGVzIGZvciBWTEFOIHBhY2tldHMuDQogICAgICBtYWM4MDIx
MTogQWRkIHBvd2VyIHRvIGRlYnVnZnMuDQogICAgICBhdGg5azogRml4IHR4cSBtZW1vcnkgYWRk
cmVzcyBwcmludGluZyBpbiBkZWJ1Z2ZzLg0KICAgICAgYXRoNWs6IFB1dCBoYXJkd2FyZSBpbiBQ
Uk9NSVNDIG1vZGUgaWYgdGhlcmUgaXMgbW9yZSB0aGFuIDEgc3RhdGlvbnMuDQoNCkJlbiBIdXRj
aGluZ3MgKDE4KToNCiAgICAgIGdlbmlycTogQWRkIElSUSBhZmZpbml0eSBub3RpZmllcnMNCiAg
ICAgIGxpYjogY3B1X3JtYXA6IENQVSBhZmZpbml0eSByZXZlcnNlLW1hcHBpbmcNCiAgICAgIG5l
dDogUlBTOiBFbmFibGUgaGFyZHdhcmUgYWNjZWxlcmF0aW9uIG9mIFJGUw0KICAgICAgc2NoX21x
cHJpbzogQWx3YXlzIHNldCBudW1fdGMgdG8gMCBpbiBtcXByaW9fZGVzdHJveSgpDQogICAgICBu
ZXQ6IEFkanVzdCBUWCBxdWV1ZSBrb2JqZWN0cyBpZiBudW1iZXIgb2YgcXVldWVzIGNoYW5nZXMg
ZHVyaW5nIHVucmVnaXN0ZXINCiAgICAgIHNmYzogTW92ZSBUWCBxdWV1ZSBjb3JlIHF1ZXVlIG1h
cHBpbmcgaW50byB0eC5jDQogICAgICBzZmM6IERpc3Rpbmd1aXNoIHF1ZXVlIGxvb2t1cCBmcm9t
IHRlc3QgZm9yIHF1ZXVlIGV4aXN0ZW5jZQ0KICAgICAgc2ZjOiBBZGQgVFggcXVldWVzIGZvciBo
aWdoLXByaW9yaXR5IHRyYWZmaWMNCiAgICAgIG5ldDogUlBTOiBNYWtlIGhhcmR3YXJlLWFjY2Vs
ZXJhdGVkIFJGUyBjb25kaXRpb25hbCBvbiBORVRJRl9GX05UVVBMRQ0KICAgICAgc2ZjOiBMaW1p
dCBmaWx0ZXIgc2VhcmNoIGRlcHRoIGZ1cnRoZXIgZm9yIHBlcmZvcm1hbmNlIGhpbnRzIChpLmUu
IFJGUykNCiAgICAgIHNmYzogSW1wbGVtZW50IGhhcmR3YXJlIGFjY2VsZXJhdGlvbiBvZiBSRlMN
CiAgICAgIHNmYzogUmVhZCBNQyBmaXJtd2FyZSB2ZXJzaW9uIHdoZW4gcmVxdWVzdGVkIHRocm91
Z2ggZXRodG9vbA0KICAgICAgc2ZjOiBEbyBub3QgcmVhZCBTVEFUMS5GQVVMVCBpbiBlZnhfbWRp
b19jaGVja19tbWQoKQ0KICAgICAgc2ZjOiBVcGRhdGUgY29weXJpZ2h0IGRhdGVzDQogICAgICBz
ZmM6IEV4cG9zZSBUWCBwdXNoIGFuZCBUU08gY291bnRlcnMgdGhyb3VnaCBldGh0b29sIHN0YXRp
c3RpY3MNCiAgICAgIHNmYzogUmVtb3ZlIGNvbmZpZ3VyYWJsZSBGSUZPIHRocmVzaG9sZHMgZm9y
IHBhdXNlIGZyYW1lIGdlbmVyYXRpb24NCiAgICAgIHNmYzogQnVtcCB2ZXJzaW9uIHRvIDMuMQ0K
ICAgICAgc2ZjOiBVc2Ugd3JpdGUtY29tYmluaW5nIHRvIHJlZHVjZSBUWCBsYXRlbmN5DQoNCkJl
cm5hcmQgUGlkb3V4ICgyKToNCiAgICAgIFJPU0U6IHJvc2UgQVgyNSBwYWNrZXQgcm91dGluZyBp
bXByb3ZlbWVudA0KICAgICAgUk9TRTogQVgyNTogZmluZGluZyByb3V0ZXMgc2ltcGxpZmljYXRp
b24NCg0KQmh1cGVzaCBTaGFybWEgKDEpOg0KICAgICAgY2FuOiBjX2NhbjogQWRkZWQgc3VwcG9y
dCBmb3IgQm9zY2ggQ19DQU4gY29udHJvbGxlcg0KDQpCaW5nIFpoYW8gKDEpOg0KICAgICAgaWVl
ZTgwMjExOiBhZGQgSUVFRTgwMjExX0NPVU5UUllfU1RSSU5HX0xFTiBkZWZpbml0aW9uDQoNCkJv
YiBDb3BlbGFuZCAoMyk6DQogICAgICBhdGg1azogdXNlIHRyYWNpbmcgZm9yIHBhY2tldCB0eC9y
eCBkdW1wDQogICAgICBhdGg1azogcmVtb3ZlIGRlYnVnX2R1bXBfc2tiKCkgZnVuY3Rpb25zDQog
ICAgICBhdGg1azogbW92ZSBleHRlcm5hbCBmdW5jdGlvbiBkZWZpbml0aW9ucyB0byBhIGhlYWRl
ciBmaWxlDQoNCkJydWNlIEFsbGFuICgxMyk6DQogICAgICBlMTAwMGU6IHJlZHVjZSBzY29wZSBv
ZiBzb21lIHZhcmlhYmxlcywgcmVtb3ZlIHVubmVjZXNzYXJ5IG9uZXMNCiAgICAgIGUxMDAwZTog
VXNlIGttZW1kdXAgcmF0aGVyIHRoYW4gZHVwbGljYXRpbmcgaXRzIGltcGxlbWVudGF0aW9uDQog
ICAgICBlMTAwMGU6IHJlcGxhY2UgdW5ib3VuZGVkIHNwcmludGYgd2l0aCBzbnByaW50Zg0KICAg
ICAgZTEwMDBlOiB1c2UgY29ycmVjdCBwb2ludGVyIHdoZW4gbWVtY3B5J2luZyBhIDItZGltZW5z
aW9uYWwgYXJyYXkNCiAgICAgIGUxMDAwZTogcmV0dXJuIGFwcHJvcHJpYXRlIGVycm9ycyBmb3Ig
J2V0aHRvb2wgLXInDQogICAgICBlMTAwMGU6IHVzZSBkZXZfa2ZyZWVfc2tiX2lycSgpIGluc3Rl
YWQgb2YgZGV2X2tmcmVlX3NrYigpDQogICAgICBlMTAwMGU6IG1hZ2ljIG51bWJlciBjbGVhbnVw
IC0gRVRIX0FMRU4NCiAgICAgIGUxMDAwZTogZXh0ZW5kIHRpbWVvdXQgZm9yIGV0aHRvb2wgbGlu
ayB0ZXN0IGRpYWdub3N0aWMNCiAgICAgIGUxMDAwZTogZXh0ZW5kIEVFRSBMUEkgdGltZXIgdG8g
cHJldmVudCBkcm9wcGVkIGxpbmsNCiAgICAgIGUxMDAwZTogZG8gbm90IHRvZ2dsZSBMQU5QSFlQ
QyB2YWx1ZSBiaXQgd2hlbiBQSFkgcmVzZXQgaXMgYmxvY2tlZA0KICAgICAgZTEwMDBlOiBkaXNh
YmxlIGp1bWJvIGZyYW1lcyBvbiA4MjU3OSB3aGVuIE1BQ3NlYyBlbmFibGVkIGluIEVFUFJPTQ0K
ICAgICAgZTEwMDBlOiBkbyBub3Qgc3VnZ2VzdCB0aGUgZHJpdmVyIHN1cHBvcnRzIFdha2Utb24t
QVJQDQogICAgICBlMTAwMGU6IGJ1bXAgdmVyc2lvbiBudW1iZXINCg0KQnJ1bm8gUmFuZG9sZiAo
MTQpOg0KICAgICAgY2ZnODAyMTE6IEV4dGVuZCBjaGFubmVsIHRvIGZyZXF1ZW5jeSBtYXBwaW5n
IGZvciA4MDIuMTFqDQogICAgICBhdGg1azogVXNlIG1hYzgwMjExIGNoYW5uZWwgbWFwcGluZyBm
dW5jdGlvbg0KICAgICAgYXRoNWs6IFJlbmFtZSBhdGg1a19jb3B5X2NoYW5uZWxzDQogICAgICBh
dGg1azogQWRkIDgwMi4xMWogNC45R0h6IGNoYW5uZWxzIHRvIGFsbG93ZWQgY2hhbm5lbHMNCiAg
ICAgIGF0aDU6IFJlbW92ZSB1bnVzZWQgQ1RMIGRlZmluaXRpb25zDQogICAgICBhdGg1azogUmVt
b3ZlIHVudXNlZCBzYy0+Y3VybW9kZQ0KICAgICAgYXRoNWs6IFJlbW92ZSByZWR1bmRhbnQgc2Mt
PmN1cmJhbmQNCiAgICAgIGF0aDVrOiBTaW1wbGlmeSBsb29wIHdoZW4gc2V0dGluZyB1cCBjaGFu
bmVscw0KICAgICAgYXRoNWs6IGF0aDVrX3NldHVwX2NoYW5uZWxzIGNsZWFudXAgYW5kIHdoaXRl
c3BhY2UNCiAgICAgIGF0aDVrOiBVc2UgbG9jYWwgdmFyaWFibGUgZm9yIGNhcGFiaWxpdGllcw0K
ICAgICAgYXRoOiBBZGQgZnVuY3Rpb24gdG8gY2hlY2sgaWYgNC45R0h6IGNoYW5uZWxzIGFyZSBh
bGxvd2VkDQogICAgICBhdGg1azogRW5hYmxlIDgwMi4xMWogNC45R0h6IGZyZXF1ZW5jaWVzDQog
ICAgICBhdGg5azogUmVtb3ZlIHVudXNlZCBJRUVFODAyMTFfV0VQX05LSUQNCiAgICAgIGF0aDVr
OiBGaXggc2hvcnQgYW5kIGxvbmcgcmV0cnkgY29uZmlndXJhdGlvbg0KDQpDYXJvbHluIFd5Ym9y
bnkgKDEyKToNCiAgICAgIGlnYjogQWRkIHN1cHBvcnQgZm9yIGkzNDAgUXVhZCBQb3J0IEZpYmVy
IEFkYXB0ZXINCiAgICAgIGlnYjogRW5hYmxlIFBGIHNpZGUgb2YgU1ItSU9WIHN1cHBvcnQgZm9y
IGkzNTAgZGV2aWNlcw0KICAgICAgaWdiOiBVcGRhdGUgSW50ZWwgY29weXJpZ2h0IG5vdGljZSBm
b3IgZHJpdmVyIHNvdXJjZS4NCiAgICAgIGlnYjogdXBkYXRlIHZlcnNpb24gc3RyaW5nDQogICAg
ICBpZ2I6IEZpeCByZWcgcGF0dGVybiB0ZXN0IGluIGV0aHRvb2wgZm9yIGkzNTAgZGV2aWNlcw0K
ICAgICAgaWdiOiBGaXggc3RybmNweSBjYWxscyB0byBiZSBzYWZlIHBlciBzb3VyY2UgY29kZSBy
ZXZpZXcgdG9vbHMNCiAgICAgIGlnYjogQWRkIHN0YXRzIG91dHB1dCBmb3IgT1MyQk1DIGZlYXR1
cmUgb24gaTM1MCBkZXZpY2VzDQogICAgICBpZ2I6IEFkZCBFbmVyZ3kgRWZmaWNpZW50IEV0aGVy
bmV0IChFRUUpIGZvciBpMzUwIGRldmljZXMuDQogICAgICBpZ2I6IFVwZGF0ZSBOVk0gZnVuY3Rp
b25zIHRvIHdvcmsgd2l0aCBpMzUwIGRldmljZXMNCiAgICAgIGlnYjogQWRkIERNQSBDb2FsZXNj
aW5nIGZlYXR1cmUgdG8gZHJpdmVyDQogICAgICBpZ2I6IEJ1bXAgdmVyc2lvbiB0byAzLjAuNg0K
ICAgICAgaWdiOiBBZGQgbWVzc2FnaW5nIGZvciB0aGVybWFsIHNlbnNvciBldmVudHMgb24gaTM1
MCBkZXZpY2VzDQoNCkNoYW5nbGkgR2FvICgyMik6DQogICAgICBuZXRmaWx0ZXI6IG5mX2Nvbm50
cmFjazogZG9uJ3QgYWx3YXlzIGluaXRpYWxpemUgY3QtPnByb3RvDQogICAgICBuZXRmaWx0ZXI6
IHh0X05GUVVFVUU6IHJlbW92ZSBtb2R1bG8gb3BlcmF0aW9ucw0KICAgICAgbmV0ZmlsdGVyOiBj
dF9leHRlbmQ6IGZpeCB0aGUgd3JvbmcgYWxsb2Nfc2l6ZQ0KICAgICAgbmV0ZmlsdGVyOiBuZl9j
b25udHJhY2s6IGRlZmluZSBjdF8qX2luZm8gYXMgbmVlZGVkDQogICAgICBuZXRmaWx0ZXI6IG5m
X25hdDogZG9uJ3QgdXNlIGF0b21pYyBiaXQgb3BlcmF0aW9uDQogICAgICBuZXRmaWx0ZXI6IGN0
X2V4dGVuZDogZGVmaW5lIE5GX0NUX0VYVF8qIGFzIG5lZWRlZA0KICAgICAgbmV0ZmlsdGVyOiBu
Zl9uYXQ6IGRlZmluZSBuYXRfcHB0cF9pbmZvIGFzIG5lZWRlZA0KICAgICAgbmV0ZmlsdGVyOiBu
Zl9uYXQ6IGZpeCBjb252ZXJzaW9uIHRvIG5vbi1hdG9taWMgYml0IG9wcw0KICAgICAgbmV0Zmls
dGVyOiBuZl9jb25udHJhY2s6IHJlbW92ZSBhbiBhdG9taWMgYml0IG9wZXJhdGlvbg0KICAgICAg
bmV0ZmlsdGVyOiBuZl9uYXQ6IHBsYWNlIGNvbm50cmFjayBpbiBzb3VyY2UgaGFzaCBhZnRlciBT
TkFUIGlzIGRvbmUNCiAgICAgIG5ldGZpbHRlcjogaXB2czogZml4IGNvbXBpbGVyIHdhcm5pbmdz
DQogICAgICBuZXRmaWx0ZXI6IGlwdnM6IGZpeCBjb21waWxlciB3YXJuaW5ncw0KICAgICAgaXB2
czogdXNlIGhsaXN0IGluc3RlYWQgb2YgbGlzdA0KICAgICAgaXB2czogdXNlIGVudW0gdG8gaW5z
dGVhZCBvZiBtYWdpYyBudW1iZXJzDQogICAgICBpcHZzOiB1bmlmeSB0aGUgZm9ybXVsYSB0byBl
c3RpbWF0ZSB0aGUgb3ZlcmhlYWQgb2YgcHJvY2Vzc2luZyBjb25uZWN0aW9ucw0KICAgICAgbGxj
OiBhdm9pZCBza2JfY2xvbmUoKSBpZiB0aGVyZSBpcyBvbmx5IG9uZSBoYW5kbGVyDQogICAgICBi
b25kaW5nOiByZW1vdmUgdGhlIHVudXNlZCBkdW1teSBmdW5jdGlvbnMgd2hlbiBuZXQgcG9sbCBj
b250cm9sbGVyIGlzbid0IGVuYWJsZWQNCiAgICAgIGJvbmRpbmc6IENPVyBiZWZvcmUgb3Zlcndy
aXRpbmcgdGhlIGRlc3RpbmF0aW9uIE1BQyBhZGRyZXNzDQogICAgICBuZXRmaWx0ZXI6IHh0X2Nv
bm5saW1pdDogZml4IGRhZGRyIGNvbm5saW1pdCBpbiBTTkFUIHNjZW5hcmlvDQogICAgICBuZXRm
aWx0ZXI6IHh0X2Nvbm5saW1pdDogdXNlIGttYWxsb2MoKSBpbnN0ZWFkIG9mIGt6YWxsb2MoKQ0K
ICAgICAgbmV0ZmlsdGVyOiB4dF9jb25ubGltaXQ6IHVzZSBobGlzdCBpbnN0ZWFkDQogICAgICBu
ZXRmaWx0ZXI6IHh0X2Nvbm5saW1pdDogcmVtb3ZlIGNvbm5saW1pdF9ybmRfaW5pdGVkDQoNCkNo
YW9taW5nIExpICgxKToNCiAgICAgIHJ0bHdpZmk6IEZpeCBlcnJvciByZWdpc3RlcmluZyByYXRl
LWNvbnRyb2wNCg0KQ2hyaXN0aWFuIExhbXBhcnRlciAoMTEpOg0KICAgICAgY2FybDkxNzA6IHVw
ZGF0ZSBmdy9odyBoZWFkZXJzDQogICAgICBjYXJsOTE3MDogZW5hYmxlIHdha2Utb24tbGFuIGZl
YXR1cmUgdGVzdGluZw0KICAgICAgY2FybDkxNzA6IHV0aWxpemUgZncgc2VxIGNvdW50ZXIgZm9y
IG1nbXQvbm9uLVFvUyBkYXRhIGZyYW1lcw0KICAgICAgbWFjODAyMTE6IGZpeCByYWNlIGJldHdl
ZW4gbmV4dCBiZWFjb24gZHRpbSBhbmQgaWVlZTgwMjExX2dldF9idWZmZXJlZF9iYw0KICAgICAg
cDU0OiBzb3J0IGNoYW5uZWwgbGlzdCBieSBmcmVxdWVuY3kgaW5zdGVhZCBvZiBjaGFubmVsIGlu
ZGV4DQogICAgICBwNTQ6IHA1NF9nZW5lcmF0ZV9iYW5kIGNsZWFudXANCiAgICAgIHA1NDogZW5o
YW5jZSByc3NpLT5kQm0gZGF0YWJhc2UgaW1wb3J0DQogICAgICBwNTRzcGk6IHVwZGF0ZSBzYW1w
bGUgZWVwcm9tDQogICAgICBwNTQ6IGltcGxlbWVudCBmbHVzaCBjYWxsYmFjaw0KICAgICAgYXI5
MTcwdXNiOiBtYXJrIHRoZSBvbGQgZHJpdmVyIGFzIG9ic29sZXRlDQogICAgICBwNTQ6IGltcGxl
bWVudCBzZXRfY292ZXJhZ2VfY2xhc3MNCg0KQ2xhdWRpbyBUYWthaGFzaSAoMyk6DQogICAgICBC
bHVldG9vdGg6IEFkZCBMRSBzaWduYWxpbmcgY29tbWFuZHMgaGFuZGxpbmcNCiAgICAgIEJsdWV0
b290aDogQWRkIGNvbm5lY3Rpb24gcGFyYW1ldGVyIHVwZGF0ZSByZXNwb25zZQ0KICAgICAgQmx1
ZXRvb3RoOiBTZW5kIExFIENvbm5lY3Rpb24gVXBkYXRlIENvbW1hbmQNCg0KRGFuIENhcnBlbnRl
ciAoNik6DQogICAgICB3bDEyeHg6IHVzZSBhZnRlciBmcmVlIGluIGRlYnVnIGNvZGUNCiAgICAg
IElQVlM6IHByZWNlZGVuY2UgYnVnIGluIGlwX3ZzX3N5bmNfc3dpdGNoX21vZGUoKQ0KICAgICAg
bWFjODAyMTE6IHJlbW92ZSB1bm5lZWRlZCBjaGVjaw0KICAgICAgd2wxMnh4OiBjaGFuZ2UgdHlw
ZSBmcm9tIHU4IHRvIGludA0KICAgICAgaXdsd2lmaTogcmVtb3ZlIGR1cGxpY2F0ZSBpbml0aWFs
aXphdGlvbg0KICAgICAgbGliZXJ0YXM6IGZpeCB3cml0ZSBwYXN0IGVuZCBvZiBhcnJheSBpbiBt
ZXNoX2lkX2dldCgpDQoNCkRhbiBTaWVtb24gKDEpOg0KICAgICAgbmV0X3NjaGVkOiBmaXggaXBf
dG9zMnByaW8NCg0KRGFuaWVsIEJhbHV0YSAoMSk6DQogICAgICBhZl91bml4OiB1cGRhdGUgbG9j
a2luZyBjb21tZW50DQoNCkRhbmllbCBIYWxwZXJpbiAoMSk6DQogICAgICBtYWM4MDIxMTogdXBk
YXRlIG1pbnN0cmVsX2h0IHNhbXBsZSByYXRlIHdoZW4gcHJvYmUgaXMgc2V0DQoNCkRhbmllbCBM
ZXpjYW5vICgxKToNCiAgICAgIG1hY3ZsYW4gOiBmaXggY2hlY2tzdW1zIGVycm9yIHdoZW4gd2Ug
YXJlIGluIGJyaWRnZSBtb2RlDQoNCkRhbmllbCBUdXJ1bGwgKDEpOg0KICAgICAgcGt0Z2VuOiBi
dWcgZml4IGluIHRyYW5zbWlzc2lvbiBoZWFkZXJzIHdpdGggZnJhZ3M9MA0KDQpEYXZpZCBHbmVk
dCAoNik6DQogICAgICB3bDEyNTE6IGZpeCBxdWV1ZSBzdG9wcGluZy93YWtpbmcgZm9yIFRYIHBh
dGgNCiAgICAgIHdsMTI1MTogZml4IDQtYnl0ZSBUWCBidWZmZXIgYWxpZ25tZW50DQogICAgICB3
bDEyNTE6IGVuYWJsZSBiZWFjb24gZWFybHkgdGVybWluYXRpb24gd2hpbGUgaW4gcG93ZXItc2F2
aW5nIG1vZGUNCiAgICAgIHdsMTI1MTogaW1wbGVtZW50IGNvbm5lY3Rpb24gcXVhbGl0eSBtb25p
dG9yaW5nDQogICAgICB3bDEyNTE6IGVuYWJsZSBhZGhvYyBtb2RlDQogICAgICB3bDEyNTE6IHNl
dCByYXRlIGluZGV4IGFuZCBwcmVhbWJsZSBmbGFnIG9uIHJlY2VpdmVkIHBhY2tldHMNCg0KRGF2
aWQgUy4gTWlsbGVyICgyMDQpOg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIG1hc3Rl
ci5rZXJuZWwub3JnOi8uLi4vZGF2ZW0vbmV0LTIuNg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0
ZXInIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9rYWJlci9uZi1uZXh0LTIuNg0KICAgICAg
cHBwOiBDbGVhbiB1cCBrZXJuZWwgbG9nIG1lc3NhZ2VzLg0KICAgICAgcHBwOiBSZWNvbnN0cnVj
dCBmcmFnbWVudGVkIHBhY2tldHMgdXNpbmcgZnJhZyBsaXN0cyBpbnN0ZWFkIG9mIGNvcHlpbmcu
DQogICAgICBuZXQ6IEFkZCBzYWZlIHJldmVyc2UgU0tCIHF1ZXVlIHdhbGtlcnMuDQogICAgICBw
cHA6IFVzZSBTS0IgcXVldWUgYWJzdHJhY3Rpb24gaW50ZXJmYWNlcyBpbiBmcmFnbWVudCBwcm9j
ZXNzaW5nLg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIG1hc3Rlci5rZXJuZWwub3Jn
Oi8uLi4vamtpcnNoZXIvbmV0LW5leHQtMi42DQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicg
b2YgbWFzdGVyLmtlcm5lbC5vcmc6Ly4uLi9kYXZlbS9uZXQtMi42DQogICAgICBNZXJnZSBicmFu
Y2ggJ2lycS9udW1hJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4vdGlwL2xpbnV4LTIuNi10
aXANCiAgICAgIHR5cGhvb246IEtpbGwgcmVmZXJlbmNlcyB0byBVVFNfUkVMRUFTRQ0KICAgICAg
TWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIG1hc3Rlci5rZXJuZWwub3JnOi8uLi4vZGF2ZW0vbmV0
LTIuNg0KICAgICAgbmV0OiBJbXBsZW1lbnQgcmVhZC1vbmx5IHByb3RlY3Rpb24gYW5kIENPVydp
bmcgb2YgbWV0cmljcy4NCiAgICAgIGluZXRwZWVyOiBBZGQgbWV0cmljcyBzdG9yYWdlIHRvIGlu
ZXRwZWVyIGVudHJpZXMuDQogICAgICBpbmV0cGVlcjogTWFyayBtZXRyaWNzIGFzICJuZXciIGlu
IGZyZXNoIGluZXRwZWVyIGVudHJpZXMuDQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2Yg
bWFzdGVyLmtlcm5lbC5vcmc6Ly4uLi9kYXZlbS9uZXQtMi42DQogICAgICBuZXQ6IFN0b3JlIGlw
djQvaXB2NiBDT1cnZCBtZXRyaWNzIGluIGluZXRwZWVyIGNhY2hlLg0KICAgICAgTWVyZ2UgYnJh
bmNoICdtYXN0ZXInIG9mIHNzaDovL21hc3Rlci5rZXJuZWwub3JnLy4uLi9saW52aWxsZS93aXJl
bGVzcy1uZXh0LTIuNg0KICAgICAgbmV0OiBQcmUtQ09XIG1ldHJpY3MgZm9yIFRDUC4NCiAgICAg
IGlwdjQ6IEFsbG9jYXRlIGZpYiBtZXRyaWNzIGR5bmFtaWNhbGx5Lg0KICAgICAgaXB2NDogQXR0
YWNoIEZJQiBpbmZvIHRvIGRzdF9kZWZhdWx0X21ldHJpY3Mgd2hlbiBwb3NzaWJsZQ0KICAgICAg
aXB2NDogSWYgZmliIG1ldHJpY3MgYXJlIGRlZmF1bHQsIG5vIG5lZWQgdG8gZ3JhYiByZWYgdG8g
RklCIGluZm8uDQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8vZ2l0Lmtlcm5l
bC5vcmcvLi4uL2thYmVyL25mLW5leHQtMi42DQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicg
b2YgbWFzdGVyLmtlcm5lbC5vcmc6Ly4uLi9kYXZlbS9uZXQtMi42DQogICAgICBNZXJnZSBicmFu
Y2ggJ2JhdG1hbi1hZHYvbmV4dCcgb2YgZ2l0Oi8vZ2l0Lm9wZW4tbWVzaC5vcmcvZWNzdi9saW51
eC1tZXJnZQ0KICAgICAgaXB2NDogUmVtZW1iZXIgRklCIGFsaWFzIGxpc3QgaGVhZCBhbmQgdGFi
bGUgaW4gbG9va3VwIHJlc3VsdHMuDQogICAgICBpcHY0OiBDb25zb2xpZGF0ZSBhbGwgZGVmYXVs
dCByb3V0ZSBzZWxlY3Rpb24gaW1wbGVtZW50YXRpb25zLg0KICAgICAgaXB2NDogUmVtb3ZlIGZp
Yl9oYXNoLg0KICAgICAgaXB2NDogVXBkYXRlIHNvbWUgZmliX2hhc2ggY2VudHJpYyBpbnRlcmZh
Y2UgbmFtZXMuDQogICAgICBpcHY0OiBSZW5hbWUgZmliX2hhc2hfKiBsb2NhbHMgaW4gZmliX3Nl
bWFudGljcy5jDQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8vZ2l0Lmtlcm5l
bC5vcmcvLi4uL2thYmVyL25mLW5leHQtMi42DQogICAgICB0Y3A6IEluY3JlYXNlIHRoZSBpbml0
aWFsIGNvbmdlc3Rpb24gd2luZG93IHRvIDEwLg0KICAgICAgaXB2NDogRml4IGZpYl90cmllIGJ1
aWxkIGluIHNvbWUgY29uZmlndXJhdGlvbnMuDQogICAgICBzY2hfY2hva2U6IE5lZWQgbGludXgv
dm1hbGxvYy5oDQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8vZ2l0Lmtlcm5l
bC5vcmcvLi4uL2xpbnZpbGxlL3dpcmVsZXNzLW5leHQtMi42DQogICAgICBNZXJnZSBicmFuY2gg
J21hc3Rlcicgb2YgbWFzdGVyLmtlcm5lbC5vcmc6Ly4uLi9kYXZlbS9uZXQtMi42DQogICAgICBp
cHY0OiBEb24ndCBtaXNzIGV4aXN0aW5nIGNhY2hlZCBtZXRyaWNzIGluIG5ldyByb3V0ZXMuDQog
ICAgICBpbmV0cGVlcjogTW92ZSBJQ01QIHJhdGUgbGltaXRpbmcgc3RhdGUgaW50byBpbmV0X3Bl
ZXIgZW50cmllcy4NCiAgICAgIHRjcDogQWRkIHJlZmVyZW5jZSB0byBpbml0aWFsIENXTkQgaWV0
ZiBkcmFmdC4NCiAgICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBnaXQ6Ly9naXQua2VybmVs
Lm9yZy8uLi4vbGludmlsbGUvd2lyZWxlc3MtbmV4dC0yLjYNCiAgICAgIG5ldDogUmVtb3ZlIGJv
Z3VzIGJhcnJpZXIoKSBpbiBkc3RfYWxsZnJhZygpLg0KICAgICAgbmV0OiBLaWxsIE5FVEVWRU5U
X1BNVFVfVVBEQVRFLg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIG1hc3Rlci5rZXJu
ZWwub3JnOi8uLi4vZGF2ZW0vbmV0LTIuNg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9m
IGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9rYWJlci9uZi1uZXh0LTIuNg0KICAgICAgaW5ldHBl
ZXI6IEFic3RyYWN0IGFkZHJlc3MgcmVwcmVzZW50YXRpb24gZnVydGhlci4NCiAgICAgIGluZXRw
ZWVyOiBBZGQgcmVkaXJlY3QgYW5kIFBNVFUgZGlzY292ZXJ5IGNhY2hlZCBpbmZvLg0KICAgICAg
aW5ldDogQ3JlYXRlIGEgbWVjaGFuaXNtIGZvciB1cHdhcmQgaW5ldHBlZXIgcHJvcGFnYXRpb24g
aW50byByb3V0ZXMuDQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgbWFzdGVyLmtlcm5l
bC5vcmc6Ly4uLi9qa2lyc2hlci9uZXQtbmV4dC0yLjYNCiAgICAgIE1lcmdlIGJyYW5jaCAnYmF0
bWFuLWFkdi9uZXh0JyBvZiBnaXQ6Ly9naXQub3Blbi1tZXNoLm9yZy9lY3N2L2xpbnV4LW1lcmdl
DQogICAgICBpcHY0OiBDYWNoZSBsZWFybmVkIFBNVFUgaW5mb3JtYXRpb24gaW4gaW5ldHBlZXIu
DQogICAgICBpcHY0OiBDYWNoZSBsZWFybmVkIHJlZGlyZWN0IGluZm9ybWF0aW9uIGluIGluZXRw
ZWVyLg0KICAgICAgTWVyZ2UgYnJhbmNoICdmZWMnIG9mIGdpdDovL2dpdC5wZW5ndXRyb25peC5k
ZS9naXQvdWtsL2xpbnV4LTIuNg0KICAgICAgTWVyZ2UgYnJhbmNoICdmb3ItZGF2ZW0nIG9mIGdp
dDovL2dpdC5rZXJuZWwub3JnLy4uLi9id2gvc2ZjLW5leHQtMi42DQogICAgICBpcHY0OiBTaW1w
bGlmeSBvdXRwdXQgcm91dGUgY3JlYXRpb24gY2FsbCBzZXF1ZW5jZS4NCiAgICAgIGlwdjQ6IE1v
dmUgcmN1X3JlYWRfe2xvY2ssdW5sb2NrfSgpIGludG8gaXBfcm91dGVfb3V0cHV0X3Nsb3coKS4N
CiAgICAgIGlwdjQ6IENvbnNvbGlkYXRlIGlwdjQgZHN0IGFsbG9jYXRpb24gbG9naWMuDQogICAg
ICBuZXQ6IEFkZCBpbml0aWFsX3JlZiBhcmcgdG8gZHN0X2FsbG9jKCkuDQogICAgICBpcHY0OiBB
dm9pZCB1c2Ugb2Ygc2lnbmVkIGludGVnZXJzIGluIGZpYl90cmllIGNvZGUuDQogICAgICBpcHY0
OiBNYXJrIGZpYl9jb21iaW5lX2l0YWcoKSdzICdyZXMnIGFyZyBhcyBjb25zdC4NCiAgICAgIGlw
djQ6IFVzZSBjb25zdCdpZnkgZmliX3Jlc3VsdCBkZWVwIGluIHRoZSByb3V0ZSBjYWxsIGNoYWlu
cy4NCiAgICAgIGlwdjQ6IEFkZCBoYXNoIHRhYmxlIG9mIGludGVyZmFjZSBhZGRyZXNzZXMuDQog
ICAgICBpcHY0OiBJbXBsZW1lbnQgX19pcF9kZXZfZmluZCB1c2luZyBuZXcgaW50ZXJmYWNlIGFk
ZHJlc3MgaGFzaC4NCiAgICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBtYXN0ZXIua2VybmVs
Lm9yZzovLi4uL2RhdmVtL25ldC0yLjYNCiAgICAgIE1lcmdlIGJyYW5jaCAnZmVjJyBvZiBnaXQ6
Ly9naXQucGVuZ3V0cm9uaXguZGUvZ2l0L3VrbC9saW51eC0yLjYNCiAgICAgIE1lcmdlIGJyYW5j
aCAnZm9yLWRhdmVtJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4vYndoL3NmYy1uZXh0LTIu
Ng0KICAgICAgTWVyZ2UgYnJhbmNoICduZXQvYXg4ODc5Nicgb2YgZ2l0Oi8vZ2l0LnBlbmd1dHJv
bml4LmRlL2dpdC9ta2wvbGludXgtMi42DQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFyZyBjb25z
dCBpbiBrZXkgZXh0cmFjdGlvbiBoZWxwZXJzLg0KICAgICAgeGZybTogTWFyayBmbG93aSBhcmcg
dG8gLT5nZXRfdG9zKCkgY29uc3QuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFyZyB0byAtPmZp
bGxfZHN0KCkgY29uc3QuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFyZyB0byAtPmluaXRfdGVt
cHNlbCgpIGNvbnN0Lg0KICAgICAgeGZybTogTWFyayBmbG93aSBhcmcgdG8geGZybV90eXBlLT5y
ZWplY3QoKSBjb25zdC4NCiAgICAgIHhmcm06IE1hcmsgdG9rZW4gYXJncyB0byBhZGRyX21hdGNo
KCkgY29uc3QuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFyZyB0byB4ZnJtX3NlbGVjdG9yX21h
dGNoKCkgY29uc3QuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFyZyB0byBzZWN1cml0eV94ZnJt
X3N0YXRlX3BvbF9mbG93X21hdGNoKCkgY29uc3QuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFy
ZyB0byB4ZnJtX3N0YXRlX2xvb2tfYXQoKSBjb25zdC4NCiAgICAgIHhmcm06IE1hcmsgZmxvd2kg
YXJnIHRvIHhmcm1faW5pdF90ZW1wc3RhdGUoKSBjb25zdC4NCiAgICAgIHhmcm06IE1hcmsgZmxv
d2kgYXJnIHRvIHhmcm1fc3RhdGVfZmluZCgpIGNvbnN0Lg0KICAgICAgbmV0OiBNYXJrIGZsb3dp
IGFyZyB0byBmbG93X2NhY2hlX3VsaV9tYXRjaCgpIGNvbnN0Lg0KICAgICAgeGZybTogS2lsbCBz
dHJpY3QgYXJnIHRvIHhmcm1fYnVuZGxlX29rKCkuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFy
ZyB0byB4ZnJtX3BvbGljeV97bG9va3VwX2J5X3R5cGUsbWF0Y2h9KCkgY29uc3QuDQogICAgICB4
ZnJtOiBNYXJrIGZsb3dpIGFyZyB0byB4ZnJtX2V4cGFuZF9wb2xpY2llcygpIGNvbnN0Lg0KICAg
ICAgeGZybTogTWFyayBmbG93aSBhcmcgdG8geGZybV90bXBsX3Jlc29sdmV7LF9vbmV9KCkgY29u
c3QuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFyZyB0byB4ZnJtX2J1bmRsZV9jcmVhdGUoKSBj
b25zdC4NCiAgICAgIHhmcm06IE1hcmsgZmxvd2kgYXJnIHRvIHhmcm1fZHN0X3thbGxvY19jb3B5
LHVwZGF0ZV9vcmlnaW59KCkgY29uc3QuDQogICAgICB4ZnJtOiBNYXJrIGZsb3dpIGFyZyB0byB4
ZnJtX3Jlc29sdmVfYW5kX2NyZWF0ZV9idW5kbGUoKSBjb25zdC4NCiAgICAgIG5ldDogTWFrZSBm
bG93IGNhY2hlIHBhdGhzIHVzZSBhIGNvbnN0IHN0cnVjdCBmbG93aS4NCiAgICAgIE1lcmdlIGJy
YW5jaCAndGlwYy1GZWIyMy0yMDExJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4vcGF1bGcv
bmV0LW5leHQtMi42DQogICAgICB4ZnJtOiBQYXNzIGttX2V2ZW50IHBvaW50ZXJzIGFyb3VuZCBh
cyBjb25zdCB3aGVuIHBvc3NpYmxlLg0KICAgICAgeGZybTogQ29uc3QnaWZ5IHRtcGwgYW5kIGFk
ZHJlc3MgYXJndW1lbnRzIHRvIC0+aW5pdF90ZW1wcm9wKCkNCiAgICAgIHhmcm06IENvbnN0J2lm
eSBzZWxlY3RvciBhcmd1bWVudCB0byB4ZnJtX3NlbGVjdG9yX21hdGNoKCkNCiAgICAgIHhmcm06
IENvbnN0J2lmeSBhZGRyZXNzIGFyZ3VtZW50cyB0byAtPmRzdF9sb29rdXAoKQ0KICAgICAgeGZy
bTogQ29uc3QnaWZ5IGFkZHJlc3MgYXJndW1lbnRzIHRvIF9feGZybV9kc3RfbG9va3VwKCkNCiAg
ICAgIHhmcm06IENvbnN0J2lmeSBhZGRyZXNzIGFyZ3VtZW50cyB0byB4ZnJtX2FkZHJfY21wKCkN
CiAgICAgIHhmcm06IENvbnN0J2lmeSBhZGRyZXNzIGFyZ3VtZW50IHRvIHhmcm1fYWRkcl9hbnko
KQ0KICAgICAgeGZybTogQ29uc3QnaWZ5IHBvaW50ZXIgYXJncyB0byBtaWdyYXRlX3RtcGxfbWF0
Y2ggYW5kIHhmcm1fbWlncmF0ZV9jaGVjaw0KICAgICAgeGZybTogQ29uc3QnaWZ5IHBvaW50ZXIg
YXJncyB0byBrbV9taWdyYXRlKCkgYW5kIGltcGxlbWVudGF0aW9ucy4NCiAgICAgIHhmcm06IENv
bnN0J2lmeSBhZGRyZXNzIGFyZ3MgdG8gaGFzaCBoZWxwZXJzLg0KICAgICAgeGZybTogQ29uc3Qn
aWZ5IHNlbGVjdG9yIGFyZ3MgaW4geGZybV9taWdyYXRlIHBhdGhzLg0KICAgICAgeGZybTogQ29u
c3QnaWZ5IGxvY2FsIHhmcm1fYWRkcmVzc190IHBvaW50ZXJzIGluIHhmcm1fcG9saWN5X2xvb2t1
cF9ieXR5cGUuDQogICAgICB4ZnJtOiBDb25zdCdpZnkgcG9saWN5IGFyZyBhbmQgbG9jYWwgc2Vs
ZWN0b3IgaW4geGZybV9wb2xpY3lfbWF0Y2guDQogICAgICB4ZnJtOiBDb25zdCdpZnkgcG9saWN5
IGFyZyB0byB4cF9uZXQuDQogICAgICB4ZnJtOiBDb25zdCdpZnkgcG9saWN5IGFyZyB0byBjbG9u
ZV9wb2xpY3kuDQogICAgICB4ZnJtOiBDb25zdCdpZnkgc2VsZWN0b3IgYXJnIHRvIHhmcm1fZHN0
X3VwZGF0ZV9wYXJlbnQuDQogICAgICB4ZnJtOiBDb25zdCdpZnkgeGZybV90bXBsIGFuZCB4ZnJt
X3N0YXRlIGFyZ3MgdG8geGZybV9zdGF0ZV9hZGRyX2NtcC4NCiAgICAgIHhmcm06IENvbnN0J2lm
eSBwdHIgYXJncyB0byB4ZnJtX3N0YXRlXypfY2hlY2sgYW5kIHhmcm1fc3RhdGVfa2Vybi4NCiAg
ICAgIHhmcm06IENvbnN0J2lmeSBwdHIgYXJncyB0byB4ZnJtX3N0YXRlX29rLg0KICAgICAgeGZy
bTogQ29uc3QnaWZ5IHB0ciBhcmdzIHRvIHhmcm1fcG9saWN5X29rLg0KICAgICAgeGZybTogQ29u
c3QnaWZ5IHNlY19wYXRoIGFyZyB0byBzZWNwYXRoX2hhc19ub250cmFuc3BvcnQuDQogICAgICB4
ZnJtOiBDb25zdCdpZnkgeGZybV9hZGRyZXNzX3QgYXJncyB0byB4ZnJtXypfaGFzaC4NCiAgICAg
IHhmcm06IENvbnN0J2lmeSB4ZnJtX3RtcGwgYXJnIHRvIHhmcm1faW5pdF90ZW1wc3RhdGUuDQog
ICAgICB4ZnJtOiBDb25zdCdpZnkgeGZybV9hZGRyZXNzX3QgYXJncyB0byBfX3hmcm1fc3RhdGVf
bG9va3VweyxfYnlhZGRyfS4NCiAgICAgIHhmcm06IFJlbW92ZSB1bnVzZWQgJ3NhZGRyJyBhbmQg
J2RhZGRyJyBhcmdzIHRvIHhmcm1fc3RhdGVfbG9va19hdC4NCiAgICAgIHhmcm06IENvbnN0J2lm
eSB4ZnJtX2FkZHJlc3NfdCBhcmdzIHRvIHhmcm1fc3RhdGVfZmluZC4NCiAgICAgIGlwdjQ6IFJl
YXJyYW5nZSBob3cgaXBfcm91dGVfbmV3cG9ydHMoKSBnZXRzIHBvcnQga2V5cy4NCiAgICAgIE1l
cmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBtYXN0ZXIua2VybmVsLm9yZzovLi4uL2praXJzaGVyL25l
dC1uZXh0LTIuNg0KICAgICAgTWVyZ2UgYnJhbmNoICdmb3ItZGF2ZW0nIG9mIGdpdDovL2dpdC5r
ZXJuZWwub3JnLy4uLi9saW52aWxsZS93aXJlbGVzcy1uZXh0LTIuNg0KICAgICAgc2NoX25ldGVt
OiBOZWVkIHRvIGluY2x1ZGUgdm1hbGxvYy5oDQogICAgICBydGx3aWZpOiBOZWVkIHRvIGluY2x1
ZGUgdm1hbGxvYy5oDQogICAgICBwaG9uZXQ6IFByb3RlY3QgcGlwZV9kb19yZW1vdmUoKSB3aXRo
IGFwcHJvcHJpYXRlIGlmZGVmcy4NCiAgICAgIHBma2V5OiBVc2UgY29uc3Qgd2hlcmUgcG9zc2li
bGUuDQogICAgICB4ZnJtOiBQYXNzIG5hbWUgYXMgY29uc3QgdG8geGZybV8qX2dldF9ieW5hbWUo
KS4NCiAgICAgIHhmcm06IFBhc3MgY29uc3QgYXJnIHRvIHhmcm1fYWxnX2xlbiBhbmQgeGZybV9h
bGdfYXV0aF9sZW4uDQogICAgICB4ZnJtOiBQYXNzIGNvbnN0IHhmcm1fYWRkcmVzc190IG9iamVj
dHMgdG8geGZybV9zdGF0ZV9sb29rdXAqIGFuZCB4ZnJtX2ZpbmRfYWNxLg0KICAgICAgeGZybTog
UGFzcyBjb25zdCB4ZnJtX21hcmsgdG8geGZybV9tYXJrX3B1dCgpLg0KICAgICAgbmV0OiBGb3Jn
b3QgdG8gY29tbWl0IG5ldC9jb3JlL2Rldi5jIHBhcnQgb2YgSmlyaSdzIC0+cnhfaGFuZGxlciBw
YXRjaC4NCiAgICAgIE1lcmdlIGJyYW5jaCAnZm9yLWRhdmVtJyBvZiBnaXQ6Ly9naXQua2VybmVs
Lm9yZy8uLi4vYndoL3NmYy1uZXh0LTIuNg0KICAgICAgaXB2NjogQ29uc29saWRhdGUgcm91dGUg
bG9va3VwIHNlcXVlbmNlcy4NCiAgICAgIGlwdjQ6IENhbiBmaW5hbCBpcF9yb3V0ZV9jb25uZWN0
KCkgYXJnIHRvIGJvb2xlYW4gImNhbl9zbGVlcCIuDQogICAgICBpcHY0OiBNYWtlIGZpbmFsIGFy
ZyB0byBpcF9yb3V0ZV9vdXRwdXRfZmxvdyB0byBiZSBib29sZWFuICJjYW5fc2xlZXAiDQogICAg
ICBuZXQ6IEFkZCBGTE9XSV9GTEFHX0NBTl9TTEVFUC4NCiAgICAgIGlwdjQ6IEtpbGwgY2FuX3Ns
ZWVwIGFyZyB0byBpcF9yb3V0ZV9vdXRwdXRfZmxvdygpDQogICAgICBpcHY2OiBDaGFuZ2UgZmlu
YWwgZHN0IGxvb2t1cCBhcmcgbmFtZSB0byAiY2FuX3NsZWVwIg0KICAgICAgeGZybTogS2lsbCBY
RlJNX0xPT0tVUF9XQUlUIGZsYWcuDQogICAgICBpcHY2OiBOb3JtYWxpemUgYXJndW1lbnRzIHRv
IGlwNl9kc3RfYmxhY2tob2xlKCkuDQogICAgICB4ZnJtOiBIYW5kbGUgYmxhY2tob2xlIHJvdXRl
IGNyZWF0aW9uIHZpYSBhZmluZm8uDQogICAgICBpcHY0OiBNYWtlIGljbXAgcm91dGUgbG9va3Vw
IGNvZGUgYSBiaXQgY2xlYXJlci4NCiAgICAgIGlwdjY6IE1ha2UgaWNtcCByb3V0ZSBsb29rdXAg
Y29kZSBhIGJpdCBjbGVhcmVyLg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIGdpdDov
L2dpdC5rZXJuZWwub3JnLy4uLi9rYWJlci9uZi1uZXh0LTIuNg0KICAgICAgeGZybTogUmV0dXJu
IGRzdCBkaXJlY3RseSBmcm9tIHhmcm1fbG9va3VwKCkNCiAgICAgIGlwdjQ6IE1ha2Ugb3V0cHV0
IHJvdXRlIGxvb2t1cCByZXR1cm4gcnRhYmxlIGRpcmVjdGx5Lg0KICAgICAgaXB2NDogaXBfcm91
dGVfb3V0cHV0X2tleSgpIGlzIGJldHRlciBhcyBhbiBpbmxpbmUuDQogICAgICBpcHY0OiBGaXgg
Y3Jhc2ggaW4gZHN0X3JlbGVhc2Ugd2hlbiB1ZHBfc2VuZG1zZyByb3V0ZSBsb29rdXAgZmFpbHMu
DQogICAgICBpcHY0OiBGaXggX19pcF9kZXZfZmluZCgpIHRvIHVzZSBpZmFfbG9jYWwgaW5zdGVh
ZCBvZiBpZmFfYWRkcmVzcy4NCiAgICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBtYXN0ZXIu
a2VybmVsLm9yZzovLi4uL2praXJzaGVyL25ldC1uZXh0LTIuNg0KICAgICAgaXB2NjogVXNlIEVS
Ul9DQVNUIGluIGFkZHJjb25mX2RzdF9hbGxvYy4NCiAgICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVy
JyBvZiBtYXN0ZXIua2VybmVsLm9yZzovLi4uL2RhdmVtL25ldC0yLjYNCiAgICAgIE1lcmdlIGJy
YW5jaCAnZm9yLWRhdmVtJyBvZiBzc2g6Ly9tYXN0ZXIua2VybmVsLm9yZy8uLi4vbGludmlsbGUv
d2lyZWxlc3MtbmV4dC0yLjYNCiAgICAgIGlwdjQ6IE9wdGltaXplIGZsb3cgaW5pdGlhbGl6YXRp
b24gaW4gb3V0cHV0IHJvdXRlIGxvb2t1cC4NCiAgICAgIGlwdjQ6IEdldCBwZWVyIG1vcmUgY2hl
YXBseSBpbiBydF9pbml0X21ldHJpY3MoKS4NCiAgICAgIGlwdjQ6IFVzZSBwYXNzZWQtaW4gcHJv
dG9jb2wgaW4gaXBfcm91dGVfbmV3cG9ydHMoKS4NCiAgICAgIGlwdjQ6IFNldCBydC0+cnRfaWlm
IG1vcmUgc2FuZWx5IG9uIG91dHB1dCByb3V0ZXMuDQogICAgICBpcHY0OiBSZW1vdmUgZmxvd2kg
ZnJvbSBzdHJ1Y3QgcnRhYmxlLg0KICAgICAgTWVyZ2UgYnJhbmNoICdiYXRtYW4tYWR2L25leHQn
IG9mIGdpdDovL2dpdC5vcGVuLW1lc2gub3JnL2Vjc3YvbGludXgtbWVyZ2UNCiAgICAgIGlwdjQ6
IFZhbGlkYXRlIHJvdXRlIGVudHJ5IHR5cGUgYXQgaW5zZXJ0IGluc3RlYWQgb2YgZXZlcnkgbG9v
a3VwLg0KICAgICAgaXB2NDogSW5saW5lIGZpYl9zZW1hbnRpY19tYXRjaCBpbnRvIGNoZWNrX2xl
YWYNCiAgICAgIE1lcmdlIGJyYW5jaCAnZGF2ZW0tbmV4dC5yODE2OScgb2YgZ2l0Oi8vZ2l0Lmtl
cm5lbC5vcmcvLi4uL3JvbWlldS9uZXRkZXYtMi42DQogICAgICBpcHY0OiBDYWNoZSBzb3VyY2Ug
YWRkcmVzcyBpbiBuZXh0aG9wIGVudHJpZXMuDQogICAgICBpcHY0OiBGaXggc2NvcGUgdmFsdWUg
dXNlZCBpbiByb3V0ZSBzcmMtYWRkcmVzcyBjYWNoaW5nLg0KICAgICAgTWVyZ2UgYnJhbmNoICdt
YXN0ZXInIG9mIG1hc3Rlci5rZXJuZWwub3JnOi8uLi4vamtpcnNoZXIvbmV0LW5leHQtMi42DQog
ICAgICBNZXJnZSBicmFuY2ggJ2Zvci1kYXZlbScgb2YgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvLi4u
L2J3aC9zZmMtbmV4dC0yLjYNCiAgICAgIGluZXRwZWVyOiBEb24ndCBkaXNhYmxlIEJIIGZvciBp
bml0aWFsIGZhc3QgUkNVIGxvb2t1cC4NCiAgICAgIGlwdjQ6IExvb2t1cCBtdWx0aWNhc3Qgcm91
dGVzIGJ5IHJ0YWJsZSB1c2luZyBoZWxwZXIuDQogICAgICBpcHY0OiBPcHRpbWl6ZSBmbG93IGlu
aXRpYWxpemF0aW9uIGluIGlucHV0IHJvdXRlIGxvb2t1cC4NCiAgICAgIGlwdjQ6IE9wdGltaXpl
IGZsb3cgaW5pdGlhbGl6YXRpb24gaW4gZmliX3ZhbGlkYXRlX3NvdXJjZSgpLg0KICAgICAgTWVy
Z2UgYnJhbmNoICdtYXN0ZXInIG9mIG1hc3Rlci5rZXJuZWwub3JnOi8uLi4vZGF2ZW0vbmV0LTIu
Ng0KICAgICAgaXB2NDogUmVtb3ZlIHJlZHVuZGFudCBSQ1UgbG9ja2luZyBpbiBpcF9jaGVja19t
YygpLg0KICAgICAgaXB2NDogUmVtb3ZlIHVubmVjZXNzYXJ5IHRlc3QgZnJvbSBpcF9ta3JvdXRl
X2lucHV0KCkNCiAgICAgIGlwdjQ6IEtpbGwgZmxvd2kgYXJnIHRvIGZpYl9zZWxlY3RfbXVsdGlw
YXRoKCkNCiAgICAgIE1lcmdlIGJyYW5jaCAnZm9yLWRhdmVtJyBvZiBnaXQ6Ly9naXQua2VybmVs
Lm9yZy8uLi4vbGludmlsbGUvd2lyZWxlc3MtbmV4dC0yLjYNCiAgICAgIE1lcmdlIGJyYW5jaCAn
bWFzdGVyJyBvZiBtYXN0ZXIua2VybmVsLm9yZzovLi4uL2praXJzaGVyL25ldC1uZXh0LTIuNg0K
ICAgICAgaXB2NDogQ3JlYXRlIGFuZCB1c2Ugcm91dGUgbG9va3VwIGhlbHBlcnMuDQogICAgICBu
ZXQ6IFJlbW92ZSB1bm5lY2Vzc2FyeSBwYWRkaW5nIGluIHN0cnVjdCBmbG93aQ0KICAgICAgeGZy
bTogRWxpbWluYXRlICJmbCIgYW5kICJwb2wiIGFyZ3MgdG8geGZybV9idW5kbGVfb2soKS4NCiAg
ICAgIG5ldDogUHV0IGZsb3dpXyogcHJlZml4IG9uIEFGIGluZGVwZW5kZW50IG1lbWJlcnMgb2Yg
c3RydWN0IGZsb3dpDQogICAgICBuZXQ6IENyZWF0ZSBzdHJ1Y3QgZmxvd2lfY29tbW9uDQogICAg
ICBuZXQ6IENyZWF0ZSB1bmlvbiBmbG93aV91bGkNCiAgICAgIG5ldDogTWFrZSBmbG93aSBwb3J0
cyBBRiBkZXBlbmRlbnQuDQogICAgICBuZXQ6IEJyZWFrIHN0cnVjdCBmbG93aSBvdXQgaW50byBB
RiBzcGVjaWZpYyBpbnN0YW5jZXMuDQogICAgICBuZXQ6IEFkZCBmbG93aVhfdG9fZmxvd2koKSBz
aG9ydGhhbmRzLg0KICAgICAgaXB2NDogUGFzcyBpcHY0IGZsb3cgb2JqZWN0cyBpbnRvIGZpYl9s
b29rdXAoKSBwYXRocy4NCiAgICAgIGlwdjQ6IFVzZSBzdHJ1Y3QgZmxvd2k0IGludGVybmFsbHkg
aW4gcm91dGluZyBsb29rdXBzLg0KICAgICAgaXB2NDogVXNlIGZsb3dpNCBpbiBwdWJsaWMgcm91
dGUgbG9va3VwIGludGVyZmFjZXMuDQogICAgICBpcHY0OiBVc2UgZmxvd2k0IGluIEZJQiBsYXll
ci4NCiAgICAgIGlwdjQ6IFVzZSBmbG93aTQgaW4gaXBtciBjb2RlLg0KICAgICAgbmV0ZmlsdGVy
OiBVc2UgZmxvd2k0IGluIG5mX25hdF9zdGFuZGFsb25lLmMNCiAgICAgIGlwdjQ6IFVzZSBmbG93
aTQgaW4gVURQDQogICAgICBuZXRmaWx0ZXI6IFVzZSBmbG93aTQgYW5kIGZsb3dpNiBpbiBuZl9j
b25udHJhY2tfaDMyM19tYWluDQogICAgICBuZXRmaWx0ZXI6IFVzZSBmbG93aTQgYW5kIGZsb3dp
NiBpbiB4dF9UQ1BNU1MNCiAgICAgIG5ldDogQWRkIGZsb3dpNl8qIG1lbWJlciBoZWxwZXIgbWFj
cm9zLg0KICAgICAgbmV0OiBVc2UgZmxvd2k0IGFuZCBmbG93aTYgaW4geGZybSBsYXllci4NCiAg
ICAgIGlwdjQ6IEtpbGwgZmliX3NlbWFudGljX21hdGNoIGRlY2xhcmF0aW9uIGZyb20gZmliX2xv
b2t1cC5oDQogICAgICBuZXQ6IFB1dCBmbDRfKiBtYWNyb3MgdG8gc3RydWN0IGZsb3dpNCBhbmQg
dXNlIHRoZW0gYWdhaW4uDQogICAgICBpcHY2OiBDb252ZXJ0IHRvIHVzZSBmbG93aTYgd2hlcmUg
YXBwbGljYWJsZS4NCiAgICAgIG5ldDogUHV0IGZsNl8qIG1hY3JvcyB0byBzdHJ1Y3QgZmxvd2k2
IGFuZCB1c2UgdGhlbSBhZ2Fpbi4NCiAgICAgIGRlY25ldDogQ29udmVydCB0byB1c2UgZmxvd2lk
biB3aGVyZSBhcHBsaWNhYmxlLg0KICAgICAgTWVyZ2UgYnJhbmNoICd0aXBjLU1hcjEzLTIwMTEn
IG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9wYXVsZy9uZXQtbmV4dC0yLjYNCiAgICAgIE1l
cmdlIGJyYW5jaCAndGlwYy1NYXIxNC0yMDExJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4v
cGF1bGcvbmV0LW5leHQtMi42DQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8v
Z2l0Lmtlcm5lbC5vcmcvLi4uL2thYmVyL25mLW5leHQtMi42DQogICAgICBNZXJnZSBicmFuY2gg
J2Zvci1kYXZlbScgb2YgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvLi4uL2xpbnZpbGxlL3dpcmVsZXNz
LW5leHQtMi42DQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgbWFzdGVyLmtlcm5lbC5v
cmc6Ly4uLi9qa2lyc2hlci9uZXQtbmV4dC0yLjYNCiAgICAgIE1lcmdlIGJyYW5jaCAnaXJxL251
bWEnIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi90aXAvbGludXgtMi42LXRpcA0KICAgICAg
TWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIG1hc3Rlci5rZXJuZWwub3JnOi8uLi4vZGF2ZW0vbmV0
LTIuNg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIGdpdDovL2dpdC5rZXJuZWwub3Jn
Ly4uLi9saW52aWxsZS93aXJlbGVzcy0yLjYNCiAgICAgIE1lcmdlIGJyYW5jaCAnc3RhYmxlL2Jh
Y2tlbmRzJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4va29ucmFkL3hlbg0KICAgICAgTWVy
Z2UgYnJhbmNoICdtYXN0ZXInIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9rYWJlci9uZi1u
ZXh0LTIuNg0KDQpEZW5pcyBLaXJqYW5vdiAoMSk6DQogICAgICBzdW5nZW06IFVzZSBuZXRfZGV2
aWNlJ3MgaW50ZXJuYWwgc3RhdHMNCg0KRGltaXRyaXMgTWljaGFpbGlkaXMgKDEpOg0KICAgICAg
Y3hnYnszLDR9KjogaW1wcm92ZSBLY29uZmlnIGRlcGVuZGVuY2llcw0KDQpEb21lbmljbyBBbmRy
ZW9saSAoMik6DQogICAgICBDUzg5eDA6IEZpbmlzaCB0cmFuc2l0aW9uIHRvIENTODl4MF9OT05J
U0FfSVJRDQogICAgICBDUzg5eDA6IEFkZCBuZXR3b3JraW5nIHN1cHBvcnQgZm9yIFFRMjQ0MA0K
DQpEb24gU2tpZG1vcmUgKDcpOg0KICAgICAgaXhnYmU6IGZpeCBuYW1lc3BhY2UgaXNzdWUgd2l0
aCBpeGdiZV9kY2JfdHhxX3RvX3RjDQogICAgICBpeGdiZTogY2xlYW51cCBuYW1lc3BhY2UgY29t
cGxhaW50IGJ5IHJlbW92aW5nIGxpdHRsZSB1c2VkIGZ1bmN0aW9uDQogICAgICBpeGdiZTogY2xl
YW51cCBpeGdiZV9pbml0X21ieF9wYXJhbXNfcGYgbmFtZXNwYWNlIGlzc3VlDQogICAgICBpeGdi
ZTogY2xlYW51cCBYNTQwIFBIWSByZXNldCBmdW5jdGlvbiBwb2ludGVyDQogICAgICBpeGdiZTog
YWRkIGZ1bmN0aW9uIHBvaW50ZXIgZm9yIHNlbWFwaG9yZSBmdW5jdGlvbg0KICAgICAgaXhnYmU6
IGNsZWFudXAgY29weXJpZ2h0IHN0cmluZyBmb3IgMjAxMQ0KICAgICAgaXhnYmU6IGZpeCBtaXNz
aW5nIGZ1bmN0aW9uIHBvaW50ZXIgY29udmVyc2lvbg0KDQpFbGlhZCBQZWxsZXIgKDE0KToNCiAg
ICAgIHdsMTJ4eDogcmVtb3ZlIHJlZHVuZGFudCBkZWJ1Z2ZzX3JlbW92ZV9yZWN1cnNpdmUoKSBj
YWxsDQogICAgICB3bDEyeHg6IGZpeCBzb21lIHNwYXJzZSB3YXJuaW5ncw0KICAgICAgd2wxMnh4
OiBkb24ndCBqb2luIHVwb24gZGlzYXNzb2NpYXRpb24NCiAgICAgIHdsMTJ4eDogZml4IHNvbWUg
ZW5kaWFuZXNzIGJ1Z3MNCiAgICAgIHdsMTJ4eDogd3JvbmcgdmFsdWVzIGFyZSByZXR1cm5lZCBp
biBncGlvX3Bvd2VyX3dyaXRlKCkNCiAgICAgIHdsMTJ4eDogZGlzYWJsZSBhdXRvLWFycA0KICAg
ICAgd2wxMnh4OiBtY3AyLjUgLSBhZGQgY29uZmlnX3BzIGFjeA0KICAgICAgd2wxMnh4OiBtb3Zl
IHRvIG5ldyBmaXJtd2FyZSAoNi4xLjMuNTAuNDkpDQogICAgICB3bDEyeHg6IHVzZSB0aGUgY29u
ZiBzdHJ1Y3QgaW5zdGVhZCBvZiBtYWNyb3MgZm9yIG1lbW9yeSBjb25maWd1cmF0aW9uDQogICAg
ICB3bDEyeHg6IHNldCBzdXBwb3J0ZWRfcmF0ZXMgYWZ0ZXIgYXNzb2NpYXRpb24NCiAgICAgIHds
MTJ4eDogZml4IGlkZW50aWZpY2F0aW9uIG9mIGJlYWNvbiBwYWNrZXRzIChkZWJ1ZykNCiAgICAg
IHdsMTJ4eDogZGVjbGFyZSBzdXBwb3J0IGZvciBJRUVFODAyMTFfSFdfUkVQT1JUU19UWF9BQ0tf
U1RBVFVTDQogICAgICB3bDEyeHg6IHVzZSBzdGFuZGFyZCBBTElHTigpIG1hY3JvDQogICAgICB3
bDEyeHg6IGFsd2F5cyBzZXQgbWFjX2FkZHJlc3Mgd2hlbiBjb25maWd1cmluZyBodCBjYXBzDQoN
CkVtaWwgVGFudGlsb3YgKDI4KToNCiAgICAgIGl4Z2JlOiBjbGVhbnVwIHdha2Ugb24gTEFOIGRl
ZmluZXMNCiAgICAgIGl4Z2JlOiBjbGVhbnVwIGxvZ2ljIHJlbGF0ZWQgdG8gSFcgc2VtYXBob3Jl
cw0KICAgICAgaXhnYmU6IHNldCBtZWRpYSB0eXBlIGZvciA4MjU5OSBUMyBMT00NCiAgICAgIGl4
Z2JlOiBBZGQgYWJpbGl0eSB0byBkb3VibGUgcmVzZXQgb24gZmFpbHVyZSB0byBjbGVhciBtYXN0
ZXIgZW5hYmxlDQogICAgICBpeGdiZTogY2xlYW51cCBjb2RlIGluIGl4Z2JlX2lkZW50aWZ5X3Nm
cF9tb2R1bGVfZ2VuZXJpYw0KICAgICAgaXhnYmU6IENoZWNrIGxpbmsgd2FudHMgcmVwb3J0IGN1
cnJlbnQgbGluayBzdGF0ZQ0KICAgICAgaXhnYmU6IGFkZCBwb2xsaW5nIHRlc3QgdG8gZW5kIG9m
IFBIWSByZXNldA0KICAgICAgaXhnYmU6IEZpbGwgb3V0IFBDSWUgc3BlZWQgYW5kIHdpZHRoIGVu
dW1zIHdpdGggdmFsdWVzDQogICAgICBpeGdiZTogQm91bmRzIGNoZWNraW5nIGZvciBzZXRfcmFy
LCBjbGVhcl9yYXIsIHNldF92bWRxLCBjbGVhcl92bWRxDQogICAgICBpeGdiZTogcmV3b3JrIGl4
Z2JlIE1UQSBoYW5kbGluZyB0byBub3QgZHJvcCBwYWNrZXRzDQogICAgICBpeGdiZTogRHJvcCB1
bnVzZWQgY29kZSBmb3Igc2V0dGluZyB1cCB1bmljYXN0IGFkZHJlc3Nlcw0KICAgICAgaXhnYmU6
IFNwZWNpZmljIGNoZWNrIGZvciAxMDAgRnVsbCBsaW5rIHNwZWVkDQogICAgICBpeGdiZTogTnVt
ZXJvdXMgd2hpdGVzcGFjZSAvIGZvcm1hdHRpbmcgY2xlYW51cHMNCiAgICAgIGl4Z2JlOiBzdG9y
ZSBwZXJtYW5lbnQgYWRkcmVzcyBiZWZvcmUgaW5pdGlhbGl6aW5nIFJ4IGFkZHJlc3Nlcw0KICAg
ICAgaXhnYmU6IGNsZWFudXAgaGFuZGxpbmcgb2YgSTJDIGludGVyZmFjZSB0byBQSFkNCiAgICAg
IGUxMDAwZTogZml4IGJ1aWxkIGlzc3VlIGR1ZSB0byB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGNy
YzMyX2xlDQogICAgICBpeGdiZTogY2xlYW51cCBQSFkgaW5pdA0KICAgICAgaXhnYmU6IGNsZWFy
IGNvcnJlY3QgY291bnRlcnMgZm9yIGZsb3cgY29udHJvbCBvbiA4MjU5OQ0KICAgICAgaXhnYmU6
IEFkZCB4NTQwIHN0YXRpc3RpYyBjb3VudGVyIGRlZmluaXRpb25zDQogICAgICBpeGdiZTogRW5h
YmxlIGZsb3cgY29udHJvbCBwYXVzZSBwYXJhbWV0ZXIgYXV0by1uZWdvdGlhdGlvbiBzdXBwb3J0
DQogICAgICBpeGdiZTogYWRkIGZ1bmN0aW9uIGRlc2NyaXB0aW9uDQogICAgICBpeGdiZTogaW1w
cm92ZSBsb2dpYyBpbiBpeGdiZV9pbml0X21ieF9wYXJhbXNfcGYNCiAgICAgIGl4Z2JlOiBmaXgg
c3BlbGxpbmcgZXJyb3JzDQogICAgICBpeGdiZTogZml4IHNldHRpbmcgYW5kIHJlcG9ydGluZyBv
ZiBhZHZlcnRpc2VkIHNwZWVkcw0KICAgICAgaXhnYjogY29udmVydCB0byBuZXcgVkxBTiBtb2Rl
bA0KICAgICAgaXhnYmU6IHJlbW92ZSB0aW1lciByZXNldCB0byAwIG9uIHRpbWVvdXQNCiAgICAg
IGl4Z2JlOiB1cGRhdGUgUEhZIGNvZGUgdG8gc3VwcG9ydCAxMDBNYnBzIGFzIHdlbGwgYXMgMUcv
MTBHDQogICAgICBpeGdiZTogY29ycmVjdCB0eXBvIGluIGRlZmluZSBuYW1lDQoNCkVyaWMgRHVt
YXpldCAoMzgpOg0KICAgICAgbmV0ZmlsdGVyOiBhZGQgX19yY3UgYW5ub3RhdGlvbnMNCiAgICAg
IG5ldGZpbHRlcjogbmZfY3RfZnJhZzZfc3lzY3RsX3RhYmxlIGlzIHN0YXRpYw0KICAgICAgbmV0
ZmlsdGVyOiBhZGQgX19yY3UgYW5ub3RhdGlvbnMNCiAgICAgIG5ldGZpbHRlcjogbmZfbmF0X2Ft
YW5kYTogcmVuYW1lIGEgdmFyaWFibGUNCiAgICAgIG5ldGZpbHRlcjogcmN1IHNwYXJzZSBjbGVh
bnVwcw0KICAgICAgaXB2czogYWRkIHN0YXRpYyBhbmQgcmVhZF9tb3N0bHkgYXR0cmlidXRlcw0K
ICAgICAgaXB2czogcmVtb3ZlIHNoYWRvdyBydCB2YXJpYWJsZQ0KICAgICAgbmV0ZmlsdGVyOiBu
Zl9jb25udHJhY2s6IG9uZSBsZXNzIGF0b21pYyBvcCBpbiBuZl9jdF9leHBlY3RfaW5zZXJ0KCkN
CiAgICAgIG5ldGZpbHRlcjogeF90YWJsZTogc3BlZWR1cCBjb21wYXQgb3BlcmF0aW9ucw0KICAg
ICAgbmV0ZmlsdGVyOiBpcHRfQ0xVU1RFUklQOiByZW1vdmUgIm5vIGNvbm50cmFjayEiDQogICAg
ICBuZXQ6IGZpbHRlcjogZG9udCBibG9jayBzb2Z0aXJxcyBpbiBza19ydW5fZmlsdGVyKCkNCiAg
ICAgIG5ldF9zY2hlZDogY2xlYW51cHMNCiAgICAgIG5ldGZpbHRlcjogYWRkIGEgbWlzc2luZyBp
bmNsdWRlIGluIG5mX2Nvbm50cmFja19yZWFzbS5jDQogICAgICBuZXQ6IGRldl9jbG9zZV9tYW55
KCkgaXMgc3RhdGljDQogICAgICBuZXRfc2NoZWQ6IHNmcTogYWxsb3cgZGl2aXNvciB0byBiZSBh
IHBhcmFtZXRlcg0KICAgICAgbmV0X3NjaGVkOiBtb3ZlIFRDUV9GX1RIUk9UVExFRCBmbGFnDQog
ICAgICBuZXRfc2NoZWQ6IFJDVSBjb252ZXJzaW9uIG9mIHN0YWINCiAgICAgIG5ldDogaXB2Njog
c2l0OiBmaXggcmN1IGFubm90YXRpb25zDQogICAgICBuZWlnaDogX19yY3UgYW5ub3RhdGlvbnMN
CiAgICAgIGlwdjY6IHJhdzogcmN1IGFubm90YXRpb25zDQogICAgICBuZXQ6IG5ldGlmX3NldHVw
X3RjKCkgaXMgc3RhdGljDQogICAgICBuZXRfc2NoZWQ6IFRDUV9GX0NBTl9CWVBBU1MgZ2VuZXJh
bGl6YXRpb24NCiAgICAgIHBrdGdlbjogc3BlZWR1cCBmcmFnbWVudGVkIHNrYnMNCiAgICAgIG5l
dF9zY2hlZDogc2NoX21xcHJpbzogZG9udCBsZWFrIGtlcm5lbCBtZW1vcnkNCiAgICAgIG5ldDog
Zml4IGRldl9zZXFfbmV4dCgpDQogICAgICBkcml2ZXJzL25ldDogcmVtb3ZlIHNvbWUgcmN1IHNw
YXJzZSB3YXJuaW5ncw0KICAgICAgaXB2NDogZml4IHJjdSBsb2NrIGltYmFsYW5jZSBpbiBmaWJf
c2VsZWN0X2RlZmF1bHQoKQ0KICAgICAgbmV0OiBhZGQgX19yY3UgYW5ub3RhdGlvbnMgdG8gc2tf
d3EgYW5kIHdxDQogICAgICBuZXRfc2NoZWQ6IFNGQiBmbG93IHNjaGVkdWxlcg0KICAgICAgc2No
X2Nob2tlOiBhZGQgY2hva2Vfc2tiX2NiDQogICAgICBuZXRfc2NoZWQ6IHJlZHVjZSBmaWZvIHFk
aXNjIHNpemUNCiAgICAgIGJlbmV0OiB1c2UgR0ZQX0tFUk5FTCBhbGxvY2F0aW9ucyB3aGVuIHBv
c3NpYmxlDQogICAgICBpbmV0cGVlcjogc2VxbG9jayBvcHRpbWl6YXRpb24NCiAgICAgIGluZXRw
ZWVyOiBzaG91bGQgdXNlIGNhbGxfcmN1KCkgdmFyaWFudA0KICAgICAgZnRtYWMxMDA6IHVzZSBH
RlBfQVRPTUlDIGFsbG9jYXRpb25zIHdoZXJlIG5lZWRlZA0KICAgICAgeGVuOiBuZXRmcm9udDog
Zml4IHhlbm5ldF9nZXRfZXRodG9vbF9zdGF0cygpDQogICAgICB4ZnJtOiBmaXggX194ZnJtX3Jv
dXRlX2ZvcndhcmQoKQ0KICAgICAgZTEwMDBlOiBmaXgga2NvbmZpZyBmb3IgY3JjMzIgZGVwZW5k
ZW5jeQ0KDQpGZWxpeCBGaWV0a2F1ICgzMyk6DQogICAgICBhdGg5azogZml4IGJvZ3VzIHNlcXVl
bmNlIG51bWJlciBpbmNyZWFzZXMgb24gYWdncmVnYXRpb24gdGlkIGZsdXNoDQogICAgICBhdGg5
azogZml4IGluaXRpYWwgc2VxdWVuY2UgbnVtYmVyIGFmdGVyIHN0YXJ0aW5nIGFuIGFtcGR1IHNl
c3Npb24NCiAgICAgIGF0aDlrOiByZWluaXRpYWxpemUgYmxvY2sgYWNrIHdpbmRvdyBkYXRhIHdo
ZW4gc3RhcnRpbmcgYWdncmVnYXRpb24NCiAgICAgIGF0aDlrOiByZWR1Y2UgdGhlIGxpa2VsaWhv
b2Qgb2YgYmFzZWJhbmQgaGFuZyBjaGVjayBmYWxzZSBwb3NpdGl2ZXMNCiAgICAgIGF0aDlrX2h3
OiBwYXJ0aWFsbHkgcmV2ZXJ0ICJmaXggZG1hIGRlc2NyaXB0b3IgcnggZXJyb3IgYml0IHBhcnNp
bmciDQogICAgICBhdGg5azogdHJ5IG1vcmUgdGhhbiBvbmUgdGlkIHdoZW4gc2NoZWR1bGluZyBh
IG5ldyBhZ2dyZWdhdGUNCiAgICAgIGF0aDlrOiBmaXggZXhjZXNzaXZlIEJBUiBzZW5kaW5nIHdo
ZW4gYSBmcmFtZSBleGNlZWRzIGl0cyByZXRyeSBsaW1pdA0KICAgICAgbWFjODAyMTE6IGRyb3Ag
bm9uLWF1dGggMy1hZGRyIGRhdGEgZnJhbWVzIHdoZW4gcnVubmluZyBhcyBhIDQtYWRkciBzdGF0
aW9uDQogICAgICBhdGg5azogcmVtb3ZlIGEgYm9ndXMgZXJyb3IgbWVzc2FnZQ0KICAgICAgYXRo
OWtfaHc6IHJlcGxhY2UgbWFnaWMgdmFsdWVzIGluIHJlZ2lzdGVyIHdyaXRlcyB3aXRoIHByb3Bl
ciBkZWZpbmVzDQogICAgICBhdGg5azogZml4IG1pc3BsYWNlZCBkZWJ1ZyBjb2RlDQogICAgICBh
dGg5azogY2xlYW4gdXAgdGhlIGNvZGUgdGhhdCB3YWtlcyB0aGUgbWFjODAyMTEgcXVldWVzDQog
ICAgICBhdGg5azogcmVtb3ZlIHRoZSB2aXJ0dWFsIHdpcGh5IGRlYnVnZnMgaW50ZXJmYWNlDQog
ICAgICBhdGg5azogcmVtb3ZlIHN1cHBvcnQgZm9yIHZpcnR1YWwgd2lwaHlzDQogICAgICBhdGg5
azogcmVtb3ZlIHRoZSBiZi0+YXBoeSBmaWVsZA0KICAgICAgYXRoOWs6IGZvbGQgc3RydWN0IGF0
aF93aXBoeSBpbnRvIHN0cnVjdCBhdGhfc29mdGMNCiAgICAgIGF0aDlrOiBmaXggdHggcXVldWUg
aW5kZXggY29uZnVzaW9uIGluIGRlYnVnZnMgY29kZQ0KICAgICAgYXRoOWs6IHVzZSBzcGxpdCBy
eCBidWZmZXJzIHRvIGdldCByaWQgb2Ygb3JkZXItMSBza2IgYWxsb2NhdGlvbnMNCiAgICAgIGF0
aDlrOiBmaXggY29tcGlsZSBlcnJvciBpbiBub24tZGVidWcgYXRoX2RlYnVnX3N0YXRfdHgoKSBz
dHViDQogICAgICBtYWM4MDIxMTogZG8gbm90IHNlbmQgZHVwbGljYXRlIGRhdGEgZnJhbWVzIHRv
IHRoZSBjb29rZWQgbW9uaXRvciBpbnRlcmZhY2UNCiAgICAgIGF0aDlrOiBhZGQgYWRkaXRpb25h
bCBjaGVja3MgZm9yIHRoZSBiYXNlYmFuZCBoYW5nIGRldGVjdGlvbg0KICAgICAgbWFjODAyMTE6
IGFzIGEgNC1hZGRyIHN0YXRpb24sIGRvIG5vdCByZWNlaXZlIHBhY2tldHMgZm9yIG90aGVyIHN0
YXRpb25zDQogICAgICBwNTQ6IGZpeCBhIE5VTEwgcG9pbnRlciBkZXJlZmVyZW5jZSBidWcNCiAg
ICAgIGF0aDlrOiB1c2UgZ2VuZXJpYyBtYWM4MDIxMSBMRUQgYmxpbmtpbmcgY29kZQ0KICAgICAg
Y2ZnODAyMTE6IGFkZCBhIGZpZWxkIGZvciB0aGUgYml0cmF0ZSBvZiB0aGUgbGFzdCByeCBkYXRh
IHBhY2tldCBmcm9tIGEgc3RhdGlvbg0KICAgICAgbWFjODAyMTE6IGFkZCBzdXBwb3J0IGZvciBz
aG93aW5nIHRoZSBsYXN0IHJ4IGJpdHJhdGUNCiAgICAgIGF0aDlrOiByZW1vdmUgc3VwcG9ydCBm
b3IgdGhlIEZJRl9QUk9NSVNDX0lOX0JTUyBmaWx0ZXIgZmxhZw0KICAgICAgYXRoOWtfaHc6IGZp
eCBSRUdfU0VUX0JJVCBhbmQgUkVHX0NMUl9CSVQgZm9yIG11bHRpcGxlIGJpdHMNCiAgICAgIGF0
aDlrOiBmaXggc3RvcHBpbmcgdHggZG1hIG9uIHJlc2V0DQogICAgICBhdGg5azogZml4IHRoZSAu
Zmx1c2ggZHJpdmVyIG9wIGltcGxlbWVudGF0aW9uDQogICAgICBhdGg5azogaW1wcm92ZSByZWxp
YWJpbGl0eSBvZiBiZWFjb24gdHJhbnNtaXNzaW9uIGFuZCBzdHVjayBiZWFjb24gaGFuZGxpbmcN
CiAgICAgIG1hYzgwMjExOiBmaXggY2hhbm5lbCB0eXBlIHJlY2FsY3VsYXRpb24gd2l0aCBIVCBh
bmQgbm9uLUhUIGludGVyZmFjZXMNCiAgICAgIGF0aDlrOiBmaXggYWdncmVnYXRpb24gcmVsYXRl
ZCBpbnRlcm9wZXJhYmlsaXR5IGlzc3Vlcw0KDQpGbG9yaWFuIEZhaW5lbGxpICgxKToNCiAgICAg
IHI2MDQwOiBidW1wIHRvIHZlcnNpb24gMC4yNyBhbmQgZGF0ZSAyM0ZlYjIwMTENCg0KRmxvcmlh
biBXZXN0cGhhbCAoMTApOg0KICAgICAgbmV0ZmlsdGVyOiBlYnRfaXA2OiBhbGxvdyBtYXRjaGlu
ZyBvbiBpcHY2LWljbXAgdHlwZXMvY29kZXMNCiAgICAgIG5ldGZpbHRlcjogS2NvbmZpZzogTkZR
VUVVRSBpcyB1c2VsZXNzIHdpdGhvdXQgTkVURklMVEVSX05FVExJTktfUVVFVUUNCiAgICAgIG5l
dGZpbHRlcjogbmZuZXRsaW5rX3F1ZXVlOiByZXR1cm4gZXJyb3IgbnVtYmVyIHRvIGNhbGxlcg0K
ICAgICAgbmV0ZmlsdGVyOiBuZm5ldGxpbmtfcXVldWU6IGRvIG5vdCBmcmVlIHNrYiBvbiBlcnJv
cg0KICAgICAgbmV0ZmlsdGVyOiByZWR1Y2UgTkZfVkVSRElDVF9NQVNLIHRvIDB4ZmYNCiAgICAg
IG5ldGZpbHRlcjogYWxsb3cgTkZRVUVVRSBieXBhc3MgaWYgbm8gbGlzdGVuZXIgaXMgYXZhaWxh
YmxlDQogICAgICBuZXRmaWx0ZXI6IGRvIG5vdCBvbWl0IHJlLXJvdXRlIGNoZWNrIG9uIE5GX1FV
RVVFIHZlcmRpY3QNCiAgICAgIG5ldGZpbHRlcjogbmZuZXRsaW5rX2xvZzogcmVtb3ZlIHVudXNl
ZCBwYXJhbWV0ZXINCiAgICAgIG5ldGZpbHRlcjogaXB0X2FkZHJ0eXBlOiByZW5hbWUgdG8geHRf
YWRkcnR5cGUNCiAgICAgIG5ldGZpbHRlcjogeHRfYWRkcnR5cGU6IGlwdjYgc3VwcG9ydA0KDQpG
cmFuY29pcyBSb21pZXUgKDEpOg0KICAgICAgcjgxNjk6IGNvbnZlcnQgdG8gbmV3IFZMQU4gbW9k
ZWwuDQoNCkZyYW5rIEJsYXNjaGthICgxKToNCiAgICAgIHFldGg6IGNoYW5nZSBzb21lIGNvbmZp
Z3VyYXRpb25zIGRlZmF1bHRzDQoNCkZyeSwgRG9uYWxkIEggKDIpOg0KICAgICAgaXdsYWduOiBT
dXBwb3J0IG5ldyAxMDAwIG1pY3JvY29kZS4NCiAgICAgIGl3bGFnbjogcmVwb3J0IGNvcnJlY3Qg
dGVtcGVyYXR1cmUgZm9yIFdpRmkvQlQgZGV2aWNlcy4NCg0KRnLpZOlyaWMgTGVyb3kgKDEpOg0K
ICAgICAgbmV0ZmlsdGVyOiB4dF9DTEFTU0lGWTogYWRkIEFSUCBzdXBwb3J0LCBhbGxvdyBDTEFT
U0lGWSB0YXJnZXQgb24gYW55IHRhYmxlDQoNCkdhYm9yIEp1aG9zICgxKToNCiAgICAgIHJ0Mngw
MDogZml4IHdoaXRlc3BhY2UgZGFtYWdlIGluIHRoZSBydDI4MDAgc3BlY2lmaWMgY29kZQ0KDQpH
ZW9yZ2UgKDkpOg0KICAgICAgcnRsd2lmaTogQWRkIHVzYiBkcml2ZXINCiAgICAgIHJ0bHdpZmk6
IEFkZCBoZWFkZXJzIGZvciBydGw4MTg3Y3UNCiAgICAgIHJ0bHdpZmk6IHJ0bDgxOTJjdTogQWRk
IHJvdXRpbmVzIGRtLCBmdywgbGVkIGFuZCBzdw0KICAgICAgcnRsd2lmaTogcnRsODE5MmN1OiBB
ZGQgcm91dGluZSBodw0KICAgICAgcnRsd2lmaTogcnRsODE5MmN1OiBBZGQgcm91dGluZSBtYWMN
CiAgICAgIHJ0bHdpZmk6IHJ0bDgxOTJjdTogQWRkIHJvdXRpbmUgcGh5DQogICAgICBydGx3aWZp
OiBydGw4MTkyY3U6IEFkZCByb3V0aW5lIHJmDQogICAgICBydGx3aWZpOiBydGw4MTkyY3U6IEFk
ZCByb3V0aW5lIHRhYmxlDQogICAgICBydGx3aWZpOiBydGw4MTkyY3U6IEFkZCByb3V0aW5lIHRy
eA0KDQpHZXJ0amFuIHZhbiBXaW5nZXJkZSAoNyk6DQogICAgICBydDJ4MDA6IEZpeCBXUEEgVEtJ
UCBNaWNoYWVsIE1JQyBmYWlsdXJlcy4NCiAgICAgIHJ0MngwMDogQ29weSB0aGUgTUFDIGFkZHJl
c3MgdG8gdGhlIFdDSUQgZW50cnkgcHJvcGVybHkuDQogICAgICBydDJ4MDA6IEZpeCBGSVhNRSBj
b21tZW50cyBpbiBydDYxcGNpIGFuZCBydDczdXNiIG9uIE1pY2hhZWwgTUlDLg0KICAgICAgcnQy
eDAwOiBEb24ndCB0cmVhdCBBVElNIHF1ZXVlIGFzIHNlY29uZCBiZWFjb24gcXVldWUuDQogICAg
ICBydDJ4MDA6IEluY2x1ZGUgQVRJTSBxdWV1ZSBzdXBwb3J0IGluIHJ0MngwMHF1ZXVlX2dldF90
eF9xdWV1ZS4NCiAgICAgIHJ0MngwMDogT3B0aW1pemUgZ2V0dGluZyB0aGUgYmVhY29uIHF1ZXVl
IHN0cnVjdHVyZS4NCiAgICAgIHJ0MngwMDogUmVtb3ZlIHVudXNlZCBydDJ4MDBxdWV1ZV9nZXRf
cXVldWUgZnVuY3Rpb24uDQoNCkdlcnkgS2FobiAoMSk6DQogICAgICB3bDEyeHg6IHVwZGF0ZSBQ
TFQgaW5pdGlhbGl6YXRpb24gZm9yIG5ldyBmaXJtd2FyZQ0KDQpHcmF6dnlkYXMgSWdub3RhcyAo
Mik6DQogICAgICB3bDEyNTE6IHJlbW92ZSB3bDEyNTFfcHNfc2V0X2VscCBmdW5jdGlvbg0KICAg
ICAgd2wxMjUxOiBmaXggZWxwX3dvcmsgcmFjZSBjb25kaXRpb24NCg0KR3JlZyBSb3NlICg3KToN
CiAgICAgIGl4Z2JlOiBFbmFibGUgSnVtYm8gRnJhbWVzIG9uIHRoZSBYNTQwIDEwR2lnYWJpdCBD
b250cm9sbGVyDQogICAgICBpeGdiZXZmOiBFbmFibGUganVtYm8gZnJhbWUgc3VwcG9ydCBmb3Ig
WDU0MCBWRg0KICAgICAgaXhnYmV2ZjogRml4IG5hbWUgb2YgZnVuY3Rpb24gaW4gZnVuY3Rpb24g
aGVhZGVyIGNvbW1lbnQNCiAgICAgIGl4Z2JldmY6IEZpeCBDb21waWxlciBXYXJuaW5ncw0KICAg
ICAgaXhnYmU6IFg1NDAgQ2xlYW51cA0KICAgICAgaXhnYmV2ZjogRml4IFZlcnNpb24gU3RyaW5n
DQogICAgICBpeGdiZXZmOiBGaXggRHJpdmVyIFN0cmluZw0KDQpHdW8tRnUgVHNlbmcgKDkpOg0K
ICAgICAgam1lOiBFeHRyYWN0IG1haW4gYW5kIHN1YiBjaGlwIHJldmlzaW9uDQogICAgICBqbWU6
IFBIWSBQb3dlciBjb250cm9sIGZvciBuZXcgY2hpcA0KICAgICAgam1lOiBGaXggYml0IHR5cG8g
b2YgSk1DMjUwQTIgd29ya2Fyb3VuZA0KICAgICAgam1lOiBSZW5hbWUgcGh5ZmlmbyBmdW5jdGlv
biBmb3IgZWFzaWVyIHVuZGVyc3RhbmQNCiAgICAgIGptZTogRml4IGhhcmR3YXJlIGFjdGlvbiBv
ZiBmdWxsLWR1cGxleA0KICAgICAgam1lOiBTYWZlciBNQUMgcHJvY2Vzc29yIHJlc2V0IHNlcXVl
bmNlDQogICAgICBqbWU6IFJlZmlsbCByZWNlaXZlIHVuaWNhc2UgTUFDIGFkZHIgYWZ0ZXIgcmVz
dW1lDQogICAgICBqbWU6IERvbid0IHNob3cgVURQIENoZWNrc3VtIGVycm9yIGlmIEhXIG1pc2p1
ZGdlZA0KICAgICAgam1lOiBBZHZhbmNlIGRyaXZlciB2ZXJzaW9uDQoNCkd1c3Rhdm8gRi4gUGFk
b3ZhbiAoMjkpOg0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIGdpdDovL2dpdC5rZXJu
ZWwub3JnLy4uLi9wYWRvdmFuL2JsdWV0b290aC0yLjYgaW50byB3aXJlbGVzcw0KICAgICAgQmx1
ZXRvb3RoOiBGaXggc2V0dGluZyBvZiBNVFUgZm9yIEVSVE0gYW5kIFN0cmVhbWluZyBNb2RlDQog
ICAgICBCbHVldG9vdGg6IFJlbmFtZSBsMmNhcC5jIHRvIGwyY2FwX2NvcmUuYw0KICAgICAgQmx1
ZXRvb3RoOiBJbml0aWFsIHdvcmsgZm9yIEwyQ0FQIHNwbGl0Lg0KICAgICAgQmx1ZXRvb3RoOiBt
b3ZlIGwyY2FwX3NvY2tfb3BzIHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1ZXRvb3RoOiBtb3Zl
IGwyY2FwX3NvY2tfcmVsZWFzZSgpIHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1ZXRvb3RoOiBt
b3ZlIGwyY2FwX3NvY2tfYmluZCgpL2xpc3RlbigpIHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1
ZXRvb3RoOiBtb3ZlIGwyY2FwX3NvY2tfYWNjZXB0KCkgdG8gbDJjYXBfc29jay5jDQogICAgICBC
bHVldG9vdGg6IG1vdmUgbDJjYXBfc29ja19nZXRuYW1lKCkgdG8gbDJjYXBfc29jay5jDQogICAg
ICBCbHVldG9vdGg6IG1vdmUgbDJjYXBfc29ja19zZXRzb2Nrb3B0KCkgdG8gbDJjYXBfc29jay5j
DQogICAgICBCbHVldG9vdGg6IG1vdmUgbDJjYXBfc29ja19nZXRzb2Nrb3B0KCkgdG8gbDJjYXBf
c29jay5jDQogICAgICBCbHVldG9vdGg6IG1vdmUgbDJjYXBfc29ja19jb25uZWN0KCkgdG8gbDJj
YXBfc29jay5jDQogICAgICBCbHVldG9vdGg6IG1vdmUgbDJjYXBfc29ja19yZWN2bXNnKCkgdG8g
bDJjYXBfc29jay5jDQogICAgICBCbHVldG9vdGg6IG1vdmUgbDJjYXBfc29ja19zaHV0ZG93bigp
IHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1ZXRvb3RoOiBtb3ZlIGwyY2FwX3NvY2tfc2VuZG1z
ZygpIHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1ZXRvb3RoOiBtb3ZlIEwyQ0FQIHNvY2sgdGlt
ZXJzIGZ1bmN0aW9uIHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1ZXRvb3RoOiBtb3ZlIGwyY2Fw
X3NvY2tfa2lsbCgpIHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1ZXRvb3RoOiBtb3ZlIF9fbDJj
YXBfc29ja19jbG9zZSgpIHRvIGwyY2FwX3NvY2suYw0KICAgICAgQmx1ZXRvb3RoOiB1cGRhdGUg
Qmx1ZXRvb3RoIGRhZW1vbiBuYW1lIGluIEtjb25maWcgaGVscA0KICAgICAgQmx1ZXRvb3RoOiBN
ZXJnZSBMMkNBUCBhbmQgU0NPIG1vZHVsZXMgaW50byBibHVldG9vdGgua28NCiAgICAgIEJsdWV0
b290aDogcmVtb3ZlIGwyY2FwX2xvYWQoKSBoYWNrDQogICAgICBCbHVldG9vdGg6IEFkZCBMMkNB
UCBtb2RlIHRvIGRlYnVnZnMgb3V0cHV0DQogICAgICBCbHVldG9vdGg6IFVzZSB1c2JfZmlsbF9p
bnRfdXJiKCkNCiAgICAgIEJsdWV0b290aDogRml4IGNyYXNoIHdoZW4gaW9jdGwoSENJVUFSVFNF
VFBST1RPKSBmYWlscw0KICAgICAgQmx1ZXRvb3RoOiBmaXggZXJyb3JzIHJlcG9ydGVkIGJ5IGNo
ZWNrcGF0Y2gucGwNCiAgICAgIEJsdWV0b290aDogRml4IGVycm9ycyByZXBvcnRlZCBieSBjaGVj
a3BhdGNoLnBsDQogICAgICBCbHVldG9vdGg6IGZpeCBjaGVja3BhdGNoIGVycm9ycyBpbiBhZl9i
bHVldG9vdGguYw0KICAgICAgQmx1ZXRvb3RoOiBSZW1vdmUgZHVwbGljYXRlZCBCVF9JTkZPKCkg
ZnJvbSBMMkNBUA0KICAgICAgQmx1ZXRvb3RoOiBGaXggQlRfTDJDQVAgYW5kIEJUX1NDTyBpbiBL
Y29uZmlnDQoNCkd1eSBFaWxhbSAoMSk6DQogICAgICB3bDEyeHg6IGNoYW5nZSBkZWJ1Z19sZXZl
bCBtb2R1bGUgcGFyYW0gc3lzZnMgcGVybWlzc2lvbnMNCg0KSGFnZW4gUGF1bCBQZmVpZmVyICgx
MCk6DQogICAgICBkY2NwOiBuZXdkcCBpcyBkZWNsYXJlZC9hc3NpZ25lZCBidXQgbmV2ZXIgYmUg
dXNlZA0KICAgICAgaXB2NjogdG90bGVuIGlzIGRlY2xhcmVkIGFuZCBhc3NpZ25lZCBidXQgbm90
IHVzZWQNCiAgICAgIGlwdjY6IGhhc2ggaXMgY2FsY3VsYXRlZCBidXQgbm90IHVzZWQgYWZ0ZXJ3
YXJkcw0KICAgICAgaXB2NjogdmFyaWFibGUgbmV4dCBpcyBuZXZlciB1c2VkIGluIHRoaXMgZnVu
Y3Rpb24NCiAgICAgIGlwdjY6IGlnbm9yZSBydG5sX3VuaWNhc3QoKSByZXR1cm4gY29kZQ0KICAg
ICAgc2NoZWQ6IHByb3RvY29sIG9ubHkgbmVlZGVkIHdoZW4gQ09ORklHX05FVF9DTFNfQUNUIGlz
IGVuYWJsZWQNCiAgICAgIG1jYXN0OiBuZXRfZGV2aWNlIGRldiBub3QgdXNlZA0KICAgICAgYWZf
cGFja2V0OiBzdHJ1Y3Qgc29ja2V0IGRlY2xhcmVkL2Fzc2lnbmVkIGJ1dCB1bnVzZWQNCiAgICAg
IHNjdHA6IHNldmVyYWwgZGVjbGFyZWQvc2V0IGJ1dCB1bnVzZWQgZml4ZXMNCiAgICAgIGFmX3Vu
aXg6IHJlbW92ZSB1bnVzZWQgc3RydWN0IHNvY2thZGRyX3VuIGNydWZ0DQoNCkhhbnMgU2NoaWxs
c3Ryb20gKDMxKToNCiAgICAgIElQVlM6IEJhY2t1cCwgUHJlcGFyZSBmb3IgdHJhbnNmZXJyaW5n
IGZpcmV3YWxsIG1hcmtzIChmd21hcmspIHRvIHRoZSBiYWNrdXAgZGFlbW9uLg0KICAgICAgSVBW
UzogU3BsaXQgcG9ydHNbMl0gaW50byBzcmNfcG9ydCBhbmQgZHN0X3BvcnQNCiAgICAgIElQVlM6
IHNrYiBkZWZyYWcgaW4gTDcgaGVscGVycw0KICAgICAgSVBWUzogSGFuZGxlIFNjaGVkdWxpbmcg
ZXJyb3JzLg0KICAgICAgSVBWUzogQmFja3VwLCBBZGRpbmcgc3RydWN0cyBmb3IgbmV3IHN5bmMg
Zm9ybWF0DQogICAgICBJUFZTOiBCYWNrdXAsIEFkZGluZyBWZXJzaW9uIDEgcmVjZWl2ZSBjYXBh
YmlsaXR5DQogICAgICBJUFZTOiBCYWNrdXAsIENoYW5nZSBzZW5kaW5nIHRvIFZlcnNpb24gMSBm
b3JtYXQNCiAgICAgIElQVlM6IEJhY2t1cCwgYWRkaW5nIHZlcnNpb24gMCBzZW5kaW5nIGNhcGFi
aWxpdGllcw0KICAgICAgSVBWUzogbmV0bnMsIGFkZCBiYXNpYyBpbml0IHBlciBuZXRucy4NCiAg
ICAgIElQVlM6IG5ldG5zIHRvIHNlcnZpY2VzIHBhcnQgMQ0KICAgICAgSVBWUzogbmV0bnMgYXdh
cm5lc3MgdG8gbGJsY3Igc2hlZHVsZXINCiAgICAgIElQVlM6IG5ldG5zIGF3YXJuZXNzIHRvIGxi
bGMgc2hlZHVsZXINCiAgICAgIElQVlM6IG5ldG5zLCBwcmVwYXJlIHByb3RvY29sDQogICAgICBJ
UFZTOiBuZXRucyBwcmVwYXJhdGlvbiBmb3IgcHJvdG9fdGNwDQogICAgICBJUFZTOiBuZXRucyBw
cmVwYXJhdGlvbiBmb3IgcHJvdG9fdWRwDQogICAgICBJUFZTOiBuZXRucyBwcmVwYXJhdGlvbiBm
b3IgcHJvdG9fc2N0cA0KICAgICAgSVBWUzogbmV0bnMgcHJlcGFyYXRpb24gZm9yIHByb3RvX2Fo
X2VzcA0KICAgICAgSVBWUzogbmV0bnMsIHVzZSBpcF92c19wcm90b19kYXRhIGFzIHBhcmFtLg0K
ICAgICAgSVBWUzogbmV0bnMsIGNvbW1vbiBwcm90b2NvbCBjaGFuZ2VzIGFuZCB1c2Ugb2YgYXBw
Y250Lg0KICAgICAgSVBWUzogbmV0bnMgYXdhcmVuZXNzIHRvIGlwX3ZzX2FwcA0KICAgICAgSVBW
UzogbmV0bnMgYXdhcmVuZXNzIHRvIGlwX3ZzX2VzdA0KICAgICAgSVBWUzogbmV0bnMgYXdhcmVu
ZXNzIHRvIGlwX3ZzX3N5bmMNCiAgICAgIElQVlM6IG5ldG5zLCBpcF92c19zdGF0cyBhbmQgaXRz
IHByb2Nmcw0KICAgICAgSVBWUzogbmV0bnMsIGNvbm5lY3Rpb24gaGFzaCBnb3QgbmV0IGFzIHBh
cmFtLg0KICAgICAgSVBWUzogbmV0bnMsIGlwX3ZzX2N0bCBsb2NhbCB2YXJzIG1vdmVkIHRvIGlw
dnMgc3RydWN0Lg0KICAgICAgSVBWUzogbmV0bnMsIGRlZmVuc2Ugd29yayB0aW1lci4NCiAgICAg
IElQVlM6IG5ldG5zLCB0cmFzaCBoYW5kbGluZw0KICAgICAgSVBWUzogbmV0bnMsIHN2YyBjb3Vu
dGVycyBtb3ZlZCBpbiBpcF92c19jdGwsYw0KICAgICAgSVBWUzogbmV0bnMsIG1pc2MgaW5pdF9u
ZXQgcmVtb3ZhbCBpbiBjb3JlLg0KICAgICAgSVBWUzogbmV0bnMsIGZpbmFsIHBhdGNoIGVuYWJs
aW5nIG5ldHdvcmsgbmFtZSBzcGFjZS4NCiAgICAgIElQVlMgbmV0bnMgQlVHLCByZWdpc3RlciBz
eXNjdGwgZm9yIHJvb3QgbnMNCg0KSGF5ZXMgV2FuZyAoMik6DQogICAgICByODE2OTogYWRqdXN0
IHJ0bDgxNjlfc2V0X3NwZWVkX3htaWkgZnVuY3Rpb24uDQogICAgICByODE2OTogc3VwcG9ydCB0
aGUgbmV3IGNoaXBzIGZvciBSVEw4MTA1RS4NCg0KSGVsbXV0IFNjaGFhICgzNCk6DQogICAgICBy
dDJ4MDA6IFJlZmFjdG9yIGJlYWNvbiBjb2RlIHRvIG1ha2UgdXNlIG9mIHN0YXJ0LSBhbmQgc3Rv
cF9xdWV1ZQ0KICAgICAgcnQyeDAwOiBJbnRyb2R1Y2UgYmVhY29uX3VwZGF0ZV9sb2NrZWQgdGhh
dCByZXF1aXJlcyBjYWxsZXIgbG9ja2luZw0KICAgICAgcnQyeDAwOiBMaW1pdCBiZWFjb24gdXBk
YXRlcyBpbiBic3NfaW5mb19jaGFuZ2VkIHRvIFVTQiBkZXZpY2VzDQogICAgICBydDJ4MDA6IE1h
a2UgcGVyaW9kaWMgYmVhY29uIHVwZGF0ZXMgZm9yIFBDSSBkZXZpY2VzIGF0b21pYw0KICAgICAg
cnQyeDAwOiBJbnRyb2R1Y2UgdGFza2xldHMgZm9yIGludGVycnVwdCBoYW5kbGluZw0KICAgICAg
cnQyeDAwOiBEaXNhYmxlIHR4c3RhdHVzIHRhc2tsZXQgYnkgZGVmYXVsdA0KICAgICAgcnQyeDAw
OiBDb252ZXJ0IHJ0MjgwMHBjaSB0byB1c2UgdGFza2xldHMNCiAgICAgIHJ0MngwMDogQ29udmVy
dCBydDYxcGNpIHRvIHVzZSB0YXNrbGV0cw0KICAgICAgcnQyeDAwOiBDb252ZXJ0IHJ0MjUwMHBj
aSBpbnRlcnJ1cHQgaGFuZGxpbmcgdG8gdXNlIHRhc2tsZXRzDQogICAgICBydDJ4MDA6IENvbnZl
cnQgcnQyNDAwcGNpIGludGVycnVwdCBoYW5kbGluZyB0byB1c2UgdGFza2xldHMNCiAgICAgIHJ0
MngwMDogUmVtb3ZlIGludGVycnVwdCB0aHJlYWQgcmVnaXN0cmF0aW9uDQogICAgICBydDJ4MDA6
IFJlbW92ZSBTVEFURV9SQURJT19JUlFfT0ZGX0lTUiBhbmQgU1RBVEVfUkFESU9fSVJRX09OX0lT
Ug0KICAgICAgcnQyeDAwOiBVcGRhdGUgTUFJTlRBSU5FUlMNCiAgICAgIG1hYzgwMjExOiBSZW1v
dmUgc3VwZXJmbHVvdXMgaWYgY2xhdXNlDQogICAgICBydDJ4MDA6IE1pbm9yIG9wdGltaXphdGlv
biBmb3IgZGV2aWNlcyB3aXRoIFJUUy9DVFMgb2ZmbG9hZA0KICAgICAgUmV2ZXJ0ICJydDJ4MDAg
OiBhdm9pZCB0aW1lc3RhbXAgZm9yIG1vbml0b3IgaW5qZWN0ZWQgZnJhbWUuIg0KICAgICAgcnQy
eDAwOiBSZW1vdmUgc3VwZXJmbHVvcyBlbXB0eSBsaW5lDQogICAgICB3bDEyeHg6IENvcnJlY3Rs
eSBzZXQgdXAgcHJvdGVjdGlvbiBpZiBub24tR0YgU1RBcyBhcmUgcHJlc2VudA0KICAgICAgcnQy
eDAwOiBPcHRpbWl6ZSBjYWxscyB0byBydDJ4MDBxdWV1ZV9nZXRfcXVldWUNCiAgICAgIHJ0Mngw
MDogTWFrZSB1c2Ugb2YgdW5saWtlbHkgZHVyaW5nIHR4IHN0YXR1cyBwcm9jZXNzaW5nDQogICAg
ICBydDJ4MDA6IFJlbW92ZSB1c2VsZXNzIE5VTEwgY2hlY2sNCiAgICAgIHJ0MngwMDogQWRkIHVu
bGlrZWx5IG1hY3JvIHRvIHNwZWNpYWwgY2FzZSB0eCBzdGF0dXMgaGFuZGxpbmcNCiAgICAgIHJ0
MngwMDogVXNlIHVubGlrZWx5IGZvciB1bmV4cGVjdGVkIGVycm9yIGNvbmRpdGlvbiBpbiBydDJ4
MDBfbWFjX3R4DQogICAgICBydDJ4MDA6IEdlbmVyYXRlIHN3IHNlcXVlbmNlIG51bWJlcnMgb25s
eSBmb3IgZGV2aWNlcyB0aGF0IG5lZWQgaXQNCiAgICAgIHJ0MngwMDogT3B0aW1pemUgVFggZGVz
Y3JpcHRvciBoYW5kbGluZw0KICAgICAgcnQyeDAwOiBNb3ZlIFRYIGRlc2NyaXB0b3IgZmllbGQg
ImlmcyIgaW50byBwbGNwIHN1YnN0cnVjdA0KICAgICAgcnQyeDAwOiBEb24ndCBjYWxsIGllZWU4
MDIxMV9nZXRfdHhfcmF0ZSBmb3IgTUNTIHJhdGVzDQogICAgICBydDJ4MDA6IFVzZSBhbiBlbnVt
IGluc3RlYWQgb2YgdTE2IGZvciB0aGUgcmF0ZV9tb2RlIFRYIGRlc2NyaXB0b3IgZmllbGQNCiAg
ICAgIHJ0MngwMDogRml4IHJ0MjgwMCBrZXkgYXNzaWdubWVudCBpbiBtdWx0aSBic3NpZCBzZXR1
cHMNCiAgICAgIHJ0MngwMDogUmVtb3ZlIG5vdyB1bnVzZWQgY3J5cHRvLmFpZCBmaWVsZA0KICAg
ICAgcnQyeDAwOiBSZXZpc2UgaXJxbWFzayBsb2NraW5nIGZvciBQQ0kgZGV2aWNlcw0KICAgICAg
cnQyeDAwOiBGaXggY29tbWVudCBpbiBydDI4MDBwY2kNCiAgICAgIG1hYzgwMjExOiBSZW1vdmUg
cmVkdW5kYW50IHByZWFtYmxlIGFuZCBSVFMgZmxhZyBzZXR1cCBpbiBtaW5zdHJlbF9odA0KICAg
ICAgbWFjODAyMTE6IFNob3J0Y3V0IG1pbnN0cmVsX2h0IHJhdGUgc2V0dXAgZm9yIG5vbi1NUlIg
Y2FwYWJsZSBkZXZpY2VzDQoNCkhlbnJ5IFB0YXNpbnNraSAoMSk6DQogICAgICB3aXJlbGVzcy1u
ZXh0LTIuNjogYnJjbTgwMjExOiBmaXggY29tcGlsZSBpc3N1ZQ0KDQpIZXJiZXJ0IFh1ICg2KToN
CiAgICAgIGluZXQ6IFJlbW92ZSB1bnVzZWQgc2tfc25kbXNnXyogZnJvbSBVRk8NCiAgICAgIGlu
ZXQ6IFJlbW92ZSBleHBsaWNpdCB3cml0ZSByZWZlcmVuY2VzIHRvIHNrL2luZXQgaW4gaXBfYXBw
ZW5kX2RhdGENCiAgICAgIGluZXQ6IEFkZCBpcF9tYWtlX3NrYiBhbmQgaXBfZmluaXNoX3NrYg0K
ICAgICAgdWRwOiBTd2l0Y2ggdG8gaXBfZmluaXNoX3NrYg0KICAgICAgdWRwOiBBZGQgbG9ja2xl
c3MgdHJhbnNtaXQgcGF0aA0KICAgICAgaW5ldDogUmVwbGFjZSBsZWZ0LW92ZXIgcmVmZXJlbmNl
cyB0byBpbmV0LT5jb3JrDQoNCkhpcm9ha2kgU0hJTU9EQSAoMSk6DQogICAgICBpcHY0OiBGaXgg
UE1UVSB1cGRhdGUuDQoNCklhbiBDYW1wYmVsbCAoMyk6DQogICAgICB4ZW4vaXJxOiBpbXBsZW1l
bnQgYmluZF9pbnRlcmRvbWFpbl9ldnRjaG5fdG9faXJxaGFuZGxlciBmb3IgYmFja2VuZCBkcml2
ZXJzDQogICAgICB4ZW46IG5ldGZyb250OiBldGh0b29sIHN0YXRzIGZpZWxkcyBzaG91bGQgYmUg
dW5zaWduZWQgbG9uZw0KICAgICAgeGVuIG5ldHdvcmsgYmFja2VuZCBkcml2ZXINCg0KSWRvIFlh
cml2ICg5KToNCiAgICAgIHdsMTJ4eDogRG9uJ3QgcmVseSBvbiBydW50aW1lIFBNIGZvciB0b2dn
bGluZyBwb3dlcg0KICAgICAgd2wxMnh4OiBSZW1vdmUgcHJpdmF0ZSBoZWFkZXJzIGluIHdsMTI3
MV90eF9yZXNldA0KICAgICAgd2wxMnh4OiBSZW9yZGVyIGRhdGEgaGFuZGxpbmcgaW4gaXJxX3dv
cmsNCiAgICAgIHdsMTJ4eDogRG8gZW5kLW9mLXRyYW5zYWN0aW9ucyB0cmFuc2ZlcnMgb25seSBp
ZiBuZWVkZWQNCiAgICAgIHdsMTJ4eDogQ2hhbmdlIGNsYWltaW5nIG9mIHRoZSBTRElPIGJ1cw0K
ICAgICAgd2wxMnh4OiBTd2l0Y2ggdG8gYSB0aHJlYWRlZCBpbnRlcnJ1cHQgaGFuZGxlcg0KICAg
ICAgd2wxMnh4OiBTd2l0Y2ggdG8gbGV2ZWwgdHJpZ2dlciBpbnRlcnJ1cHRzDQogICAgICB3bDEy
eHg6IEF2b2lkIHJlZHVuZGFudCBUWCB3b3JrDQogICAgICB3bDEyeHg6IE1vZGlmeSByZXF1ZXN0
ZWQgbnVtYmVyIG9mIG1lbW9yeSBibG9ja3MNCg0KSWxwbyBKw6RydmluZW4gKDEpOg0KICAgICAg
dGNwOiBkb2N1bWVudCB0Y3BfbWF4X3NzdGhyZXNoIChMaW1pdGVkIFNsb3ctU3RhcnQpDQoNCkl2
YW4gVmVjZXJhICgyKToNCiAgICAgIGJuYTogdXNlIGRldmljZSBtb2RlbCBETUEgQVBJDQogICAg
ICBiZTJuZXQ6IHVzZSBkZXZpY2UgbW9kZWwgRE1BIEFQSQ0KDQpJdm8gdmFuIERvb3JuICgzKToN
CiAgICAgIHJ0MngwMDogS2lsbCBhbGwgdGFza2xldHMgZHVyaW5nIGRldmljZSByZW1vdmFsDQog
ICAgICBydDJ4MDA6IE1vdmUgVFgvUlggd29yayBpbnRvIGRlZGljYXRlZCB3b3JrcXVldWUNCiAg
ICAgIHJ0MngwMDogT3B0aW1pemUgVFggZGVzY3JpcHRvciBtZW1vcnkgbGF5b3V0DQoNCkphbiBC
ZXVsaWNoICgxKToNCiAgICAgIHNtYWxsIGFkanVzdG1lbnQgdG8gbmV0L21hYzgwMjExL0tjb25m
aWcNCg0KSmFuIEVuZ2VsaGFyZHQgKDEzKToNCiAgICAgIG5ldGZpbHRlcjogeHRfTE9HOiBkbyBw
cmludCBNQUMgaGVhZGVyIG9uIEZPUldBUkQNCiAgICAgIG5ldGZpbHRlcjogeHRhYmxlczogdXNl
IGd1YXJkZWQgdHlwZXMNCiAgICAgIG5ldGZpbHRlcjogeHRfY29tbWVudDogZHJvcCB1bm5lZWRl
ZCB1bnNpZ25lZCBxdWFsaWZpZXINCiAgICAgIG5ldGZpbHRlcjogeHRhYmxlczogYWRkIG1pc3Np
bmcgYWxpYXNlcyBmb3IgYXV0b2xvYWRpbmcgdmlhIGlwdGFibGVzDQogICAgICBhdWRpdDogZXhw
b3J0IHN5bWJvbCBmb3IgdXNlIHdpdGggeHRfQVVESVQNCiAgICAgIG5ldGZpbHRlcjogeHRhYmxl
czogdXNlIF9fdVhYIGd1YXJkZWQgdHlwZXMgZm9yIHVzZXJzcGFjZSBleHBvcnRzDQogICAgICBu
ZXRmaWx0ZXI6IHh0YWJsZXM6IGFkZCBtaXNzaW5nIGhlYWRlciBmaWxlcyB0byBleHBvcnQgbGlz
dA0KICAgICAgbmV0ZmlsdGVyOiB4dGFibGVzOiBjb25ubGltaXQgcmV2aXNpb24gMQ0KICAgICAg
bmV0ZmlsdGVyOiB4dGFibGVzOiByZW1vdmUgZXh0cmFuZW91cyBoZWFkZXIgdGhhdCBzbGlwcGVk
IGluDQogICAgICBuZXRmaWx0ZXI6IHh0YWJsZXM6IHJlbW92ZSBkdXBsaWNhdGUgbWVtYmVyDQog
ICAgICBuZXRmaWx0ZXI6IHh0YWJsZXM6IGFkZCBtaXNzaW5nIGhlYWRlciBpbmNsdXNpb25zIGZv
ciBoZWFkZXJzX2NoZWNrDQogICAgICBuZXRmaWx0ZXI6IHh0X2Nvbm5saW1pdDogcGljayByaWdo
dCBkc3RhZGRyIGluIE5BVCBzY2VuYXJpbw0KICAgICAgbmV0ZmlsdGVyOiB4dF9jb25udHJhY2s6
IHdhcm4gYWJvdXQgdXNlIGluIHJhdyB0YWJsZQ0KDQpKYXNvbiBZb3VuZyAoMSk6DQogICAgICBt
YWM4MDIxMTogZG8gbm90IGVuYWJsZSBwcyBpZiA4MDIuMXggY29udHJvbGxlZCBwb3J0IGlzIHVu
YmxvY2tlZA0KDQpKYXkgU3Rlcm5iZXJnICgxKToNCiAgICAgIGl3bHdpZmk6IGNvcnJlY3QgZGVi
dWdmcyBkYXRhIGR1bXBlZCBmcm9tIHNyYW0NCg0KSmVmZiBLaXJzaGVyICgxKToNCiAgICAgIGUx
MDAwZTogY29udmVydCB0byBzdGF0czY0DQoNCkplb25ndGFlIFBhcmsgKDEpOg0KICAgICAgc21z
YzkxMXg6IEZpeCBidWlsZCBlcnJvciB3aGVuIFNNU0NfVFJBQ0UoKSB1c2VkDQoNCkplc3BlciBK
dWhsICgzKToNCiAgICAgIEJsdWV0b290aDogRml4IGZhaWx1cmUgdG8gcmVsZWFzZSBsb2NrIGlu
IHJlYWRfaW5kZXhfbGlzdCgpDQogICAgICBiYXRtYW4tYWR2OiBSZW1vdmUgdHdvIGR1cGxpY2F0
ZSBpbmNsdWRlcy4NCiAgICAgIElQVlM6IEZpeCB2YXJpYWJsZSBhc3NpZ25tZW50IGluIGlwX3Zz
X25vdHJhY2sNCg0KSmlyaSBPbHNhICgxKToNCiAgICAgIG5ldGZpbHRlcjogbmZfY29ubnRyYWNr
OiBuZl9jb25udHJhY2sgc25tcCBoZWxwZXINCg0KSmlyaSBQaXJrbyAoMTUpOg0KICAgICAgdmV0
aDogcmVtb3ZlIHVubmVlZGVkIGlmbmFtZSBjb2RlIGZyb20gdmV0aF9uZXdsaW5rKCkNCiAgICAg
IGJvbmRpbmc6IGZpeCByZXR1cm4gdmFsdWUgb2YgY291cGxlIG9mIHN0b3JlIGZ1bmN0aW9ucw0K
ICAgICAgbmV0OiByZW1vdmUgdGhlIHVubmVjZXNzYXJ5IGRhbmNlIGFyb3VuZCBza2JfYm9uZF9z
aG91bGRfZHJvcA0KICAgICAgbmV0OiBtYWtlIGRldi0+bWFzdGVyIGdlbmVyYWwNCiAgICAgIHJ0
bmV0bGluazogaW1wbGVtZW50IHNldHRpbmcgb2YgbWFzdGVyIGRldmljZQ0KICAgICAgYm9uZDog
aW1wbGVtZW50IFthZGQvZGVsXV9zbGF2ZSBvcHMNCiAgICAgIGJyaWRnZTogaW1wbGVtZW50IFth
ZGQvZGVsXV9zbGF2ZSBvcHMNCiAgICAgIG5ldDogY29udmVydCBib25kaW5nIHRvIHVzZSByeF9o
YW5kbGVyDQogICAgICBuZXQ6IGFsbG93IGhhbmRsZXJzIHRvIGJlIHByb2Nlc3NlZCBmb3Igb3Jp
Z19kZXYNCiAgICAgIGZjb2U6IGNvcnJlY3QgY2hlY2tpbmcgZm9yIGJvbmRpbmcNCiAgICAgIGJv
bmRpbmc6IHJlZ2lzdGVyIHNsYXZlIHBvaW50ZXIgZm9yIHJ4X2hhbmRsZXINCiAgICAgIG5ldDog
Z2V0IHJpZCBvZiBtdWx0aXBsZSBib25kLXJlbGF0ZWQgbmV0ZGV2aWNlLT5wcml2X2ZsYWdzDQog
ICAgICBib25kaW5nOiB3cmFwIHNsYXZlIHN0YXRlIHdvcmsNCiAgICAgIGJvbmRpbmc6IGdldCBy
aWQgb2YgSUZGX1NMQVZFX0lOQUNUSVZFIG5ldGRldi0+cHJpdl9mbGFnDQogICAgICBuZXQ6IGlu
dHJvZHVjZSByeF9oYW5kbGVyIHJlc3VsdHMgYW5kIGxvZ2ljIGFyb3VuZCB0aGF0DQoNCkppcmkg
U2xhYnkgKDIpOg0KICAgICAgTkVUOiBjZGMtcGhvbmV0LCBmaXggc3RvcC1xdWV1ZSBoYW5kbGlu
Zw0KICAgICAgTkVUOiBjZGMtcGhvbmV0LCBoYW5kbGUgZW1wdHkgcGhvbmV0IGhlYWRlcg0KDQpK
b2UgR3VubiAoMSk6DQogICAgICBvcmlub2NvOiBEcm9wIHNjYW4gcmVzdWx0cyB3aXRoIHVua25v
d24gY2hhbm5lbHMNCg0KSm9lIFBlcmNoZXMgKDcpOg0KICAgICAgdHVuOiBDb252ZXJ0IGxvZ2dp
bmcgbWVzc2FnZXMgdG8gcHJfPGxldmVsPiBhbmQgdHVuX2RlYnVnDQogICAgICB0bGFuOiBSZW1v
dmUgY2hhbmdlbG9nDQogICAgICB0bGFuOiBVc2UgcHJfZm10LCBwcl88bGV2ZWw+IGFuZCBuZXRk
ZXZfPGxldmVsPg0KICAgICAgbXY2NDN4eF9ldGg6IFVzZSBuZXRkZXZfPGxldmVsPiBhbmQgcHJf
PGxldmVsPg0KICAgICAgbWlpOiBDb252ZXJ0IHByaW50a3MgdG8gbmV0ZGV2X2luZm8NCiAgICAg
IGVxbDogQ29udmVydCBwcmludGtzIHRvIHByXzxsZXZlbD4gYW5kIG5ldGRldl88bGV2ZWw+DQog
ICAgICBuZXRkZXZpY2U6IENvbnZlcnQgcHJpbnRrIHRvIHByX2luZm8gaW4gbmV0aWZfdHhfc3Rv
cF9xdWV1ZQ0KDQpKb2VsIEEgRmVybmFuZGVzICgxKToNCiAgICAgIG1hYzgwMjExOiBSZXdyb3Rl
IGNvZGUgZm9yIGNoZWNraW5nIGlmIGRlc3RpbmF0aW9ucyBhcmUgcHJveGllZC4NCg0KSm9oYW4g
SGVkYmVyZyAoMzMpOg0KICAgICAgQmx1ZXRvb3RoOiBJbXBsZW1lbnQgYXV0b21hdGljIHNldHVw
IHByb2NlZHVyZSBmb3IgbG9jYWwgYWRhcHRlcnMNCiAgICAgIEJsdWV0b290aDogQWRkIHN1cHBv
cnQgZm9yIG1hbmFnZW1lbnQgcG93ZXJlZCBldmVudA0KICAgICAgQmx1ZXRvb3RoOiBBZGQgc3Vw
cG9ydCBmb3Igc2V0X3Bvd2VyZWQgbWFuYWdlbWVudCBjb21tYW5kDQogICAgICBCbHVldG9vdGg6
IEFkZCBzdXBwb3J0IGZvciBzZXRfZGlzY292ZXJhYmxlIG1hbmFnZW1lbnQgY29tbWFuZA0KICAg
ICAgQmx1ZXRvb3RoOiBBZGQgc2V0X2Nvbm5lY3RhYmxlIG1hbmFnZW1lbnQgY29tbWFuZA0KICAg
ICAgQmx1ZXRvb3RoOiBVbmlmeSBtb2RlIHJlbGF0ZWQgbWFuYWdlbWVudCBtZXNzYWdlcyB0byBh
IHNpbmdsZSBzdHJ1Y3QNCiAgICAgIEJsdWV0b290aDogQWRkIGZsYWcgdG8gdHJhY2sgbWFuYWdt
ZW50IGNvbnRyb2xsZWQgYWRhcHRlcnMNCiAgICAgIEJsdWV0b290aDogQWRkIHNlbmRfbW9kZV9y
c3AgY29udmVuaWVuY2UgZnVuY3Rpb24gZm9yIG1nbXQuYw0KICAgICAgQmx1ZXRvb3RoOiBJbXBs
ZW1lbnQgc2V0X3BhaXJhYmxlIG1hbmFnbWVudCBjb21tYW5kDQogICAgICBCbHVldG9vdGg6IElt
cGxlbWVudCBVVUlEIGhhbmRsaW5nIHRocm91Z2ggdGhlIG1hbmFnZW1lbnQgaW50ZXJmYWNlDQog
ICAgICBCbHVldG9vdGg6IEltcGxlbWVudCBkZWJ1Z2ZzIHN1cHBvcnQgZm9yIGxpc3RpbmcgVVVJ
RHMNCiAgICAgIEJsdWV0b290aDogUmVqZWN0IHBhaXJpbmcgcmVxdWVzdHMgd2hlbiBpbiBub24t
cGFpcmFibGUgbW9kZQ0KICAgICAgQmx1ZXRvb3RoOiBBZGQgc3BlY2lhbCBoYW5kbGluZyB3aXRo
IF9faGNpX3JlcXVlc3QgYW5kIEhDSV9JTklUDQogICAgICBCbHVldG9vdGg6IEFkZCBjb250cm9s
bGVyIHNpZGUgbGluayBrZXkgY2xlYXJpbmcgdG8gaGNpX2luaXRfcmVxDQogICAgICBCbHVldG9v
dGg6IFJlbW92ZSBwYWdlIHRpbWVvdXQgc2V0dGluZyBmcm9tIEhDSSBpbml0IHNlcXVlbmNlDQog
ICAgICBCbHVldG9vdGg6IEltcGxlbWVudCBhIG1vcmUgY29tcGxldGUgYWRhcHRlciBpbml0aWFs
aXphdGlvbiBzZXF1ZW5jZQ0KICAgICAgQmx1ZXRvb3RoOiBBZGQgY2xhc3Mgb2YgZGV2aWNlIGNv
bnRyb2wgdG8gdGhlIG1hbmFnZW1lbnQgaW50ZXJmYWNlDQogICAgICBCbHVldG9vdGg6IEltcGxl
bWVudCBsaW5rIGtleSBoYW5kbGluZyBmb3IgdGhlIG1hbmFnZW1lbnQgaW50ZXJmYWNlDQogICAg
ICBCbHVldG9vdGg6IEFkZCBjb25uZWN0ZWQvZGlzY29ubmVjdGVkIG1hbmFnZW1lbnQgZXZlbnRz
DQogICAgICBCbHVldG9vdGg6IEFkZCBkaXNjb25uZWN0IG1hbmFnbWVudCBjb21tYW5kDQogICAg
ICBCbHVldG9vdGg6IEFkZCBzdXBwb3J0IGZvciBjb25uZWN0IGZhaWxlZCBtYW5hZ2VtZW50IGV2
ZW50DQogICAgICBCbHVldG9vdGg6IEFkZCBnZXRfY29ubmVjdGlvbnMgbWFuYWdtZW50IGludGVy
ZmFjZSBjb21tYW5kDQogICAgICBCbHVldG9vdGg6IENyZWF0ZSBjb21tb24gY21kX2NvbXBsZXRl
IGZ1bmN0aW9uIGZvciBtZ210LmMNCiAgICAgIEJsdWV0b290aDogQWRkIHN1cHBvcnQgZm9yIFBJ
TiBjb2RlIGhhbmRsaW5nIGluIHRoZSBtYW5hZ2VtZW50IGludGVyZmFjZQ0KICAgICAgQmx1ZXRv
b3RoOiBBZGQgc2V0X2lvX2NhcGFiaWxpdHkgbWFuYWdlbWVudCBjb21tYW5kDQogICAgICBCbHVl
dG9vdGg6IE1ha2UgcGVuZGluZ19hZGQgcmV0dXJuIGEgcG9pbnRlciB0byB0aGUgYWRkZWQgZW50
cnkNCiAgICAgIEJsdWV0b290aDogQWRkIG1nbXRfcGFpcl9kZXZpY2UgY29tbWFuZA0KICAgICAg
Qmx1ZXRvb3RoOiBBZGQgbWFuYWdlbWVudCBzdXBwb3J0IGZvciB1c2VyIGNvbmZpcm1hdGlvbiBy
ZXF1ZXN0DQogICAgICBCbHVldG9vdGg6IEZpeCBtZ210X3Bpbl9jb2RlX3JlcGx5IGNvbW1hbmQg
c3RhdHVzIG9wY29kZQ0KICAgICAgQmx1ZXRvb3RoOiBGaXggbWdtdF9waW5fY29kZV9yZXBseSBy
ZXR1cm4gcGFyYW1ldGVycw0KICAgICAgQmx1ZXRvb3RoOiBBZGQgbWdtdF9hdXRoX2ZhaWxlZCBl
dmVudA0KICAgICAgQmx1ZXRvb3RoOiBGaXggaW5pdGl0aWFsIHZhbHVlIGZvciByZW1vdGUgYXV0
aGVudGljYXRpb24gcmVxdWlyZW1lbnRzDQogICAgICBCbHVldG9vdGg6IEZpeCB1bm5lY2Vzc2Fy
eSBsaXN0IHRyYXZlcnNhbCBpbiBtZ210X3BlbmRpbmdfcmVtb3ZlDQoNCkpvaGFubmVzIEJlcmcg
KDMwKToNCiAgICAgIG1hYzgwMjExOiBkb24ndCByZXR1cm4gYmVhY29ucyB3aGVuIG1lc2ggaXMg
ZGlzYWJsZWQNCiAgICAgIG1hYzgwMjExOiB0cmFjayByZWNlaXZlcidzIGFnZ3JlZ2F0aW9uIHJl
b3JkZXIgYnVmZmVyIHNpemUNCiAgICAgIG1hYzgwMjExOiBhbGxvdyBhZHZlcnRpc2luZyBjb3Jy
ZWN0IG1heGltdW0gYWdncmVnYXRlIHNpemUNCiAgICAgIGl3bGFnbjogbWFrZSBpd2xfcnhfaGFu
ZGxlIHN0YXRpYw0KICAgICAgaXdsYWduOiBhZGQgc3VwcG9ydCBmb3Igd2FpdGluZyBmb3Igbm90
aWZpY2F0aW9ucw0KICAgICAgaXdsYWduOiBwcm9wZXJseSB3YWl0IGZvciBQQU4gZGlzYWJsZQ0K
ICAgICAgaXdsYWduOiByZXR1cm4gZXJyb3IgaWYgUEFOIGRpc2FibGUgdGltZW91dA0KICAgICAg
aXdsd2lmaTogZml4IDQ5NjUgbm90aWZpY2F0aW9uIHdhaXQgc2V0dXANCiAgICAgIGl3bHdpZmk6
IGltcGxlbWVudCByZW1haW4tb24tY2hhbm5lbA0KICAgICAgaXdsd2lmaTogcmVwbGFjZSBtaW5p
bXVtIHNsb3QgdGltZSBjb25zdGFudA0KICAgICAgbWFjODAyMTE6IHVzZSBERUNMQVJFX0VWRU5U
X0NMQVNTDQogICAgICBtYWM4MDIxMTogYWRkIE1DUyBpbmZvcm1hdGlvbiB0byByYWRpb3RhcA0K
ICAgICAgaXdsd2lmaTogc3VwcG9ydCBSU04gSUJTUw0KICAgICAgaXdsd2lmaTogYWR2ZXJ0aXNl
IG1heCBhZ2dyZWdhdGUgc2l6ZQ0KICAgICAgaXdsd2lmaTogdXNlIG1heGltdW0gYWdncmVnYXRp
b24gc2l6ZQ0KICAgICAgaXdsd2lmaTogZml4IGJlYWNvbiBub3RpZmljYXRpb24gcGFyc2luZw0K
ICAgICAgbWFjODAyMTE6IGFsbG93IEdPIHRvIHNjYW4gbGlrZSBBUA0KICAgICAgaXdsd2lmaTog
cmVtb3ZlIHVubmVjZXNzYXJ5IGxvY2tpbmcNCiAgICAgIG1hYzgwMjExOiByZXBseSB0byBkaXJl
Y3RlZCBwcm9iZXMgaW4gSUJTUw0KICAgICAgbWFjODAyMTE6IGZpeCAyLjQgR0h6IDQwIE1IeiBk
aXNhYmxpbmcNCiAgICAgIG1hYzgwMjExOiByZW5hbWUgUlhfRkxBR19UU0ZUDQogICAgICBydGw4
MTkyYzogZml4IGNvbXBpbGF0aW9uIGVycm9ycw0KICAgICAgbWFjODAyMTE6IG1ha2UgdHgoKSBv
cGVyYXRpb24gcmV0dXJuIHZvaWQNCiAgICAgIG1hYzgwMjExOiByZW1vdmUgSUJTUyBtZXJnZSBk
ZWxheQ0KICAgICAgbWFjODAyMTE6IGNvcHkgcGVlciBNQ1MgVFggcGFyYW1ldGVycw0KICAgICAg
aXdsYWduOiBmaXggaXdsYWduX2NoZWNrX25lZWRlZF9jaGFpbnMNCiAgICAgIG1hYzgwMjExOiBz
dXBwb3J0IGRpcmVjdCBvZmZjaGFubmVsIFRYIG9mZmxvYWQNCiAgICAgIG1hYzgwMjExOiBtYWtl
IHJhdGUgY29udHJvbCBLY29uZmlnIHdhcm5pbmcgZGVwZW5kIG9uIG1hYzgwMjExDQogICAgICBt
YWM4MDIxMTogZml4IHNjYW4gcmFjZSwgc2ltcGxpZnkgY29kZQ0KICAgICAgaXdsYWduOiBzdXBw
b3J0IG9mZi1jaGFubmVsIFRYDQoNCkpvaGFubmVzIFN0ZXplbmJhY2ggKDEpOg0KICAgICAgcnQy
eDAwOiB0cml2aWFsOiBhZGQgXG4gdG8gV0FSTklORyBtZXNzYWdlDQoNCkpvaG4gRmFzdGFiZW5k
ICgyMCk6DQogICAgICBuZXQ6IGltcGxlbWVudCBtZWNoYW5pc20gZm9yIEhXIGJhc2VkIFFPUw0K
ICAgICAgbmV0X3NjaGVkOiBpbXBsZW1lbnQgYSByb290IGNvbnRhaW5lciBxZGlzYyBzY2hfbXFw
cmlvDQogICAgICBpeGdiZTogRENCLCBvbmx5IHJlcHJvZ3JhbSBIVyBpZiB0aGUgRkNvRSBwcmlv
cml0eSBpcyBjaGFuZ2VkDQogICAgICBpeGdiZTogRENCLCByZW1vdmUgcm91bmQgcm9iaW4gbW9k
ZSBvbiA4MjU5OCBkZXZpY2VzDQogICAgICBpeGdiZTogRENCLCBhYnN0cmFjdCBvdXQgZGNiX2Nv
bmZpZyBmcm9tIERDQiBoYXJkd2FyZSBjb25maWd1cmF0aW9uDQogICAgICBpeGdiZTogRENCLCBp
bXBsZW1lbnQgODAyLjFRYXogcm91dGluZXMNCiAgICAgIGl4Z2JlOiBEQ0IsIGRvIG5vdCByZXNl
dCBvbiBDRUUgcGcgY2hhbmdlcw0KICAgICAgaXhnYmU6IERDQiwgcmVtb3ZlIFJFU0VUIGJpdCBp
dCBpcyBubyBsb25nZXIgbmVlZGVkDQogICAgICBpeGdiZTogRENCLCB1c2UgaGFyZHdhcmUgaW5k
ZXBlbmRlbnQgcm91dGluZXMNCiAgICAgIGl4Z2JlOiBEQ0IsIGltcGxlbWVudCBjYXBhYmlsaXRp
ZXMgZmxhZ3MNCiAgICAgIGl4Z2JlOiBEQ0IsIGltcGxlbWVudCBpZWVlX3NldGFwcCBkY2JubCBv
cHMNCiAgICAgIGl4Z2JlOiBEQ0IgcmVtb3ZlIGl4Z2JlX2Zjb2VfZ2V0YXBwIHJvdXRpbmUNCiAg
ICAgIGl4Z2JlOiBEQ0IsIHVzZSBtdWx0aXBsZSBUeCByaW5ncyBwZXIgdHJhZmZpYyBjbGFzcw0K
ICAgICAgaXhnYmU6IGVuYWJsZSBuZG9fdGNfc2V0dXANCiAgICAgIGl4Z2JlOiBEQ0I6IGVuYWJs
ZSBSU1MgdG8gYmUgdXNlZCB3aXRoIERDQg0KICAgICAgaXhnYmU6IERDQiwgbWlzc2VkIHRyYW5z
bGF0aW9uIGZyb20gODAyMVFheiBUU0EgdG8gQ0VFIGxpbmsgc3RyaWN0DQogICAgICBpeGdiZTog
SUVFRSA4MDIuMVFheiwgaW1wbGVtZW50IHByaW9yaXR5IGFzc2lnbm1lbnQgdGFibGUNCiAgICAg
IGl4Z2JlOiBEQ0IgZHVyaW5nIGlmdXAgdXNlIGNvcnJlY3QgQ0VFIG9yIElFRUUgbW9kZQ0KICAg
ICAgaXhnYmU6IERDQiwgc2V0IG1pbmltdW0gYmFuZHdpZHRoIHBlciB0cmFmZmljIGNsYXNzDQog
ICAgICBpeGdiZTogRENCLCBQRkMgbm90IGNsZWFyZWQgdW50aWwgcmVzZXQgb2NjdXJzDQoNCkpv
aG4gVy4gTGludmlsbGUgKDI2KToNCiAgICAgIE1lcmdlIGJyYW5jaCAnd2lyZWxlc3MtbmV4dC0y
LjYnIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9pd2x3aWZpL2l3bHdpZmktMi42DQogICAg
ICBNZXJnZSBicmFuY2ggJ2Zvci1saW52aWxsZScgb2YgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvLi4u
L2x1Y2Evd2wxMnh4DQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8vZ2l0Lmtl
cm5lbC5vcmcvLi4uL2xpbnZpbGxlL3dpcmVsZXNzLTIuNg0KICAgICAgTWVyZ2UgYnJhbmNoICdt
YXN0ZXInIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9saW52aWxsZS93aXJlbGVzcy0yLjYN
CiAgICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4v
bGludmlsbGUvd2lyZWxlc3MtMi42DQogICAgICBNZXJnZSBicmFuY2ggJ3dpcmVsZXNzLW5leHQt
Mi42JyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4vaXdsd2lmaS9pd2x3aWZpLTIuNg0KICAg
ICAgTWVyZ2UgYnJhbmNoICdmb3ItbGludmlsbGUnIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4u
Li9sdWNhL3dsMTJ4eA0KICAgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIGdpdDovL2dpdC5r
ZXJuZWwub3JnLy4uLi9wYWRvdmFuL2JsdWV0b290aC1uZXh0LTIuNg0KICAgICAgTWVyZ2Ugc3No
Oi8vbWFzdGVyLmtlcm5lbC5vcmcvLi4uL2xpbnZpbGxlL3dpcmVsZXNzLTIuNg0KICAgICAgTWVy
Z2UgYnJhbmNoICdtYXN0ZXInIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9saW52aWxsZS93
aXJlbGVzcy1uZXh0LTIuNiBpbnRvIGZvci1kYXZlbQ0KICAgICAgTWVyZ2UgYnJhbmNoICd3aXJl
bGVzcy1uZXh0LTIuNicgb2YgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvLi4uL2l3bHdpZmkvaXdsd2lm
aS0yLjYNCiAgICAgIE1lcmdlIGJyYW5jaCAnZm9yLWxpbnZpbGxlJyBvZiBnaXQ6Ly9naXQua2Vy
bmVsLm9yZy8uLi4vbHVjYS93bDEyeHgNCiAgICAgIGl3bGVnYWN5OiBjaGFuZ2Ugc29tZSBzeW1i
b2xzIGR1cGxpY2F0ZWQgZnJvbSBpd2x3aWZpIGRpcmVjdG9yeQ0KICAgICAgYXQ3NmM1MHgtdXNi
OiBmaXggd2FybmluZyBjYXVzZWQgYnkgYXQ3Nl9tYWM4MDIxMV90eCBub3cgcmV0dXJuaW5nIHZv
aWQNCiAgICAgIE1lcmdlIGJyYW5jaCAnd2lyZWxlc3MtbmV4dC0yLjYnIG9mIGdpdDovL2dpdC5r
ZXJuZWwub3JnLy4uLi9pd2x3aWZpL2l3bHdpZmktMi42DQogICAgICBNZXJnZSBicmFuY2ggJ21h
c3Rlcicgb2YgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvLi4uL3BhZG92YW4vYmx1ZXRvb3RoLW5leHQt
Mi42DQogICAgICBNZXJnZSBicmFuY2ggJ2Zvci1saW52aWxsZScgb2YgZ2l0Oi8vZ2l0Lmtlcm5l
bC5vcmcvLi4uL2x1Y2Evd2wxMnh4DQogICAgICBNZXJnZSBicmFuY2ggJ3dpcmVsZXNzLW5leHQt
Mi42JyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4vaXdsd2lmaS9pd2x3aWZpLTIuNg0KICAg
ICAgcnRsd2lmaTogdXNiIHBhcnRzIHNob3VsZCBkZXBlbmQgb24gQ09ORklHX1VTQg0KICAgICAg
TWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIGdpdDovL2dpdC5rZXJuZWwub3JnLy4uLi9saW52aWxs
ZS93aXJlbGVzcy1uZXh0LTIuNiBpbnRvIGZvci1kYXZlbQ0KICAgICAgYXRoNWs6IHJlc3RyaWN0
IEFSNUtfVFhfUVVFVUVfSURfREFUQV9NQVggdG8gcmVmbGVjdCB0aGUgWzAsM10gcmFuZ2UNCiAg
ICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy8uLi4vbGlu
dmlsbGUvd2lyZWxlc3MtbmV4dC0yLjYgaW50byBmb3ItZGF2ZW0NCiAgICAgIHdpcmVsZXNzOiBh
ZGQgc3VwcG9ydCBmb3IgZXRodG9vbF9vcHMtPntnZXQsc2V0fV9yaW5ncGFyYW0NCiAgICAgIG1h
YzgwMjExOiBpbXBsZW1lbnQgc3VwcG9ydCBmb3IgY2ZnODAyMTFfb3BzLT57Z2V0LHNldH1fcmlu
Z3BhcmFtDQogICAgICBhdGg1azogaW1wbGVtZW50IGllZWU4MDIxMV9vcHMtPntnZXQsc2V0fV9y
aW5ncGFyYW0NCiAgICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBnaXQ6Ly9naXQua2VybmVs
Lm9yZy8uLi4vbGludmlsbGUvd2lyZWxlc3MtbmV4dC0yLjYgaW50byBmb3ItZGF2ZW0NCg0KSm9u
IE1hc29uICg0KToNCiAgICAgIHZ4Z2U6IGNsZWFudXAgcHJvYmUgZXJyb3IgcGF0aHMNCiAgICAg
IHZ4Z2U6IGNvcnJlY3QgZXByb20gdmVyc2lvbiBkZXRlY3Rpb24NCiAgICAgIHZ4Z2U6IE1TSVgg
b25lIHNob3QgbW9kZQ0KICAgICAgdnhnZTogdXBkYXRlIGRyaXZlciB2ZXJzaW9uDQoNCkpvdW5p
IE1hbGluZW4gKDMpOg0KICAgICAgbWFjODAyMTE6IFJlbW92ZSBvYnNvbGV0ZSBUS0lQIGZsZXhp
YmlsaXR5DQogICAgICBtYWM4MDIxMTogQWRkIHRlc3RpbmcgZnVuY3Rpb25hbGl0eSBmb3IgVEtJ
UA0KICAgICAgYXRoOiBGaXggY2xlYXJpbmcgb2Ygc2Vjb25kYXJ5IGtleSBjYWNoZSBlbnRyeSBm
b3IgVEtJUA0KDQpKb3pzZWYgS2FkbGVjc2lrICgxNCk6DQogICAgICBuZXRmaWx0ZXI6IE5GTkxf
U1VCU1lTX0lQU0VUIGlkIGFuZCBOTEFfUFVUX05FVCogbWFjcm9zDQogICAgICBuZXRmaWx0ZXI6
IGlwc2V0OiBJUCBzZXQgY29yZSBzdXBwb3J0DQogICAgICBuZXRmaWx0ZXI6IGlwc2V0OiBiaXRt
YXA6aXAgc2V0IHR5cGUgc3VwcG9ydA0KICAgICAgbmV0ZmlsdGVyOiBpcHNldDogYml0bWFwOmlw
LG1hYyB0eXBlIHN1cHBvcnQNCiAgICAgIG5ldGZpbHRlcjogaXBzZXQ7IGJpdG1hcDpwb3J0IHNl
dCB0eXBlIHN1cHBvcnQNCiAgICAgIG5ldGZpbHRlcjogaXBzZXQ6IGhhc2g6aXAgc2V0IHR5cGUg
c3VwcG9ydA0KICAgICAgbmV0ZmlsdGVyOiBpcHNldDogaGFzaDppcCxwb3J0IHNldCB0eXBlIHN1
cHBvcnQNCiAgICAgIG5ldGZpbHRlcjogaXBzZXQ6IGhhc2g6aXAscG9ydCxpcCBzZXQgdHlwZSBz
dXBwb3J0DQogICAgICBuZXRmaWx0ZXI6IGlwc2V0OiBoYXNoOmlwLHBvcnQsbmV0IHNldCB0eXBl
IHN1cHBvcnQNCiAgICAgIG5ldGZpbHRlcjogaXBzZXQ6IGhhc2g6bmV0IHNldCB0eXBlIHN1cHBv
cnQNCiAgICAgIG5ldGZpbHRlcjogaXBzZXQ6IGhhc2g6bmV0LHBvcnQgc2V0IHR5cGUgc3VwcG9y
dA0KICAgICAgbmV0ZmlsdGVyOiBpcHNldDogbGlzdDpzZXQgc2V0IHR5cGUgc3VwcG9ydA0KICAg
ICAgbmV0ZmlsdGVyOiB4dGFibGVzOiAic2V0IiBtYXRjaCBhbmQgIlNFVCIgdGFyZ2V0IHN1cHBv
cnQNCiAgICAgIG5ldGZpbHRlcjogaXBzZXQ6IHNlbmQgZXJyb3IgbWVzc2FnZSBtYW51YWxseQ0K
DQpKdWxpYSBMYXdhbGwgKDEpOg0KICAgICAgbmV0L3dpcmVsZXNzL25sODAyMTEuYzogQXZvaWQg
Y2FsbCB0byBnZW5sbXNnX2NhbmNlbA0KDQpKdWxpYW4gQW5hc3Rhc292ICg5KToNCiAgICAgIGlw
dnM6IHJlbW92ZSBleHRyYSBsb29rdXBzIGZvciBJQ01QIHBhY2tldHMNCiAgICAgIGlwdnM6IGF2
b2lkIGxvb2t1cCBmb3IgZndtYXJrIDANCiAgICAgIGlwdnM6IHJlbW92ZSBfYmggZnJvbSBwZXJj
cHUgc3RhdHMgcmVhZGluZw0KICAgICAgaXB2czogbW92ZSBzdHJ1Y3QgbmV0bnNfaXB2cw0KICAg
ICAgaXB2czogcmVvcmdhbml6ZSB0b3Rfc3RhdHMNCiAgICAgIGlwdnM6IHByb3Blcmx5IHplcm8g
c3RhdHMgYW5kIHJhdGVzDQogICAgICBpcHZzOiByZW1vdmUgdW51c2VkIHNlcWNvdW50IHN0YXRz
DQogICAgICBpcHZzOiBvcHRpbWl6ZSByYXRlcyByZWFkaW5nDQogICAgICBpcHZzOiByZW5hbWUg
ZXN0aW1hdG9yIGZ1bmN0aW9ucw0KDQpKdXNzaSBLaXZpbGlubmEgKDI1KToNCiAgICAgIHpkMTIx
MXJ3OiB1c2UgdXJiIGFuY2hvcnMgZm9yIHR4IGFuZCBmaXggdHgtcXVldWUgZGlzYWJsaW5nDQog
ICAgICB6ZDEyMTFydzogY2FuY2VsIHByb2Nlc3NfaW50ciB3b3JrIG9uIHpkX2NoaXBfZGlzYWJs
ZV9pbnQoKQ0KICAgICAgemQxMjExcnc6IGFkZCBsb2NraW5nIGZvciBtYWMtPnByb2Nlc3NfaW50
cg0KICAgICAgemQxMjExcnc6IGZpeCBiZWFjb24gaW50ZXJ2YWwgc2V0dXANCiAgICAgIHpkMTIx
MXJ3OiBtb3ZlIHNldF9tdWx0aWNhc3RfaGFzaCBhbmQgc2V0X3J4X2ZpbHRlciBmcm9tIHdvcmtl
cnMgdG8gY29uZmlndXJlX2ZpbHRlcg0KICAgICAgemQxMjExcnc6IG1vdmUgc2V0X3J0c19jdHNf
d29yayB0byBic3NfaW5mb19jaGFuZ2VkDQogICAgICB6ZDEyMTFydzogc3VwcG9ydCBzZXR0aW5n
IEJTU0lEIGZvciBBUCBtb2RlDQogICAgICB6ZDEyMTFydzogZml4IGFja19wZW5kaW5nIGluIGZp
bHRlcl9hY2sgY2F1c2luZyB0eC1wYWNrZXQgb3JkZXJpbmcgcHJvYmxlbSBvbiBtb25pdG9yDQog
ICAgICB6ZDEyMTFydzogbGV0IHpkX3NldF9iZWFjb25faW50ZXJ2YWwoKSBzZXQgZHRpbV9wZXJp
b2QgYW5kIGFkZCBBUC1iZWFjb24gZmxhZw0KICAgICAgemQxMjExcnc6IGltcGxlbWVudCBiZWFj
b24gZmV0Y2hpbmcgYW5kIGhhbmRsaW5nIGllZWU4MDIxMV9nZXRfYnVmZmVyZWRfYmMoKQ0KICAg
ICAgemQxMjExcnc6IGFkZCBiZWFjb24gd2F0Y2hkb2cgYW5kIHNldHRpbmcgSFcgYmVhY29uIG1v
cmUgZmFpbHNhZmUNCiAgICAgIHpkMTIxMXJ3OiBiYXRjaCBiZWFjb24gY29uZmlnIGNvbW1hbmRz
IHRvZ2V0aGVyDQogICAgICB6ZDEyMTFydzogdXNlIHN0YWNrIGFuZCBwcmVhbGxvY2F0ZWQgbWVt
b3J5IGZvciBzbWFsbCBjbWQtYnVmZmVycw0KICAgICAgemQxMjExcnc6IGNoYW5nZSBpbnRlcnJ1
cHQgVVJCIGJ1ZmZlciB0byBETUEgYnVmZmVyDQogICAgICB6ZDEyMTFydzogbG93ZXIgaHcgY29t
bWFuZCB0aW1lb3V0cw0KICAgICAgemQxMjExcnc6IGNvbGxlY3QgZHJpdmVyIHNldHRpbmdzIGFu
ZCBhZGQgZnVuY3Rpb24gdG8gcmVzdG9yZSB0aGVpbQ0KICAgICAgemQxMjExcnc6IGFkZCBUWCB3
YXRjaGRvZyBhbmQgZGV2aWNlIHJlc2V0dGluZw0KICAgICAgemQxMjExcnc6IHJlc2V0IGRldmlj
ZSB3aGVuIENSX0JDTl9GSUZPX1NFTUFQSE9SRSBmcmVlemVzIGluIGJlYWNvbiBzZXR1cA0KICAg
ICAgemQxMjExcnc6IHJlc2V0IHJ4IHVyYnMgYWZ0ZXIgaWRsZSBwZXJpb2Qgb2YgMzAgc2Vjb25k
cw0KICAgICAgemQxMjExcnc6IGVuYWJsZSBOTDgwMjExX0lGVFlQRV9BUA0KICAgICAgemQxMjEx
cnc6IGFkZCB1c2VmdWwgZGVidWcgb3V0cHV0DQogICAgICB6ZDEyMTFydzogY29ycmVjdCB1c2Ug
b2YgdXNiX2J1bGtfbXNnIG9uIGludGVycnVwdCBlbmRwb2ludHMNCiAgICAgIHpkMTIxMXJ3OiB1
c2UgYXN5bmMgdXJiIGZvciB3cml0ZSBjb21tYW5kDQogICAgICB6ZDEyMTFydzogbW92ZSBhc3lu
YyBpb3dyaXRlMTZ2IHVwIHRvIGNhbGxlcnMNCiAgICAgIHpkMTIxMXJ3OiBhZGQgdW5saWtlbHkg
dG8gWkRfQVNTRVJUDQoNCkp1c3RpbiBQLiBNYXR0b2NrICgxKToNCiAgICAgIGRyaXZlcnM6bmV0
OmlwdzIxMDAuYyBjaGFuZ2UgYSB0eXBvIGNvbWFtbmQgdG8gY29tbWFuZA0KDQpKdXVzbyBPaWth
cmluZW4gKDQpOg0KICAgICAgd2wxMnh4OiBDbGVhbnVwIFBMVCBtb2RlIHdoZW4gbW9kdWxlIGlz
IHJlbW92ZWQNCiAgICAgIHdsMTJ4eDogSW5jcmVhc2Ugc2NhbiBjaGFubmVsIGR3ZWxsIHRpbWUg
Zm9yIHBhc3NpdmUgc2NhbnMNCiAgICAgIGNmZzgwMjExOiBBbGxvdyBub24temVybyBpbmRleGVz
IGZvciBkZXZpY2Ugc3BlY2lmaWMgcGFpci13aXNlIGNpcGhlcnMNCiAgICAgIGNmZzgwMjExOiBG
aXggcG93ZXIgc2F2ZSBzdGF0ZSBhZnRlciBpbnRlcmZhY2UgdHlwZSBjaGFuZ2UNCg0KS09WQUNT
IEtyaXN6dGlhbiAoMSk6DQogICAgICBuZXRmaWx0ZXI6IGZpeCBjb21waWxhdGlvbiB3aGVuIGNv
bm50cmFjayBpcyBkaXNhYmxlZCBidXQgdHByb3h5IGlzIGVuYWJsZWQNCg0KTGFycnkgRmluZ2Vy
ICgxNSk6DQogICAgICBydGx3aWZpOiBNb2RpZnkgY29yZSByb3V0aW5lcw0KICAgICAgcnRsd2lm
aTogcnRsODE5MmNlOiBSZWZhY3RvciBydGw4MTkyY2UvZG0NCiAgICAgIHJ0bHdpZmk6IHJ0bDgx
OTJjZTogUmVmYWN0b3IgcnRsODE5MmNlL2Z3DQogICAgICBydGx3aWZpOiBydGw4MTkyY2U6IFJl
d29yayBydGw4MTkyY2UvcGh5LmMNCiAgICAgIHA1NDogRml4IGNvbXBpbGUgd2FybmluZw0KICAg
ICAgcnRsd2lmaTogTWFrZSBjaGFuZ2VzIGluIHJ0bHdpZmkvcnRsODE5MmNlL3JlZy5oIHRvIHN1
cHBvcnQgcnRsODE5MmN1DQogICAgICBydGx3aWZpOiBNYWtlIGNoYW5nZXMgaW4gcnRsd2lmaS9y
dGw4MTkyY2UvZGVmLmggdG8gc3VwcG9ydCBydGw4MTkyY3UNCiAgICAgIHJ0bHdpZmk6IE1vZGlm
eSBzb21lIHJ0bDgxOTJjZSByb3V0aW5lcyBmb3IgbWVyZ2luZyBydGw4MTkyY3UNCiAgICAgIHJ0
bHdpZmk6IE1vZGlmeSB3aWZpLmggZm9yIHJ0bDgxOTJjdQ0KICAgICAgcnRsd2lmaTogTW92ZSBj
b21tb24gcGFydHMgb2YgcnRsODE5MmNlL3BoeS5jDQogICAgICBydGx3aWZpOiBNb2RpZnkgYnVp
bGQgc3lzdGVtIGZvciBydGw4MTkyY3UNCiAgICAgIHJ0bHdpZmk6IHJ0bDgxOTJjZTogRml4IGVu
ZGlhbiB3YXJuaW5ncw0KICAgICAgcnRsd2lmaTogUmVtb3ZlIG9ic29sZXRlL3VudXNlZCBtYWNy
b3MNCiAgICAgIHJ0bHdpZmk6IHJ0bDgxOTJjZTogcnRsODE5MmN1OiBGaXggbXVsdGlwbGUgZGVm
IGVycm9ycyBmb3IgYWxseWVzY29uZmlnIGJ1aWxkDQogICAgICBydGw4MTg3OiBDaGFuZ2UgcmF0
ZS1jb250cm9sIGZlZWRiYWNrDQoNCkxldmksIFNoYWhhciAoMik6DQogICAgICB3bDEyeHg6IEJB
IGluaXRpYXRvciBzdXBwb3J0DQogICAgICB3bDEyeHg6IEJBIHJlY2VpdmVyIHN1cHBvcnQNCg0K
TGludXMgTMO8c3NpbmcgKDYpOg0KICAgICAgYmF0bWFuLWFkdjogUmVtb3ZlIGR1cGxpY2F0ZSB0
eXBlcy5oIGluY2x1c2lvbnMNCiAgICAgIGJhdG1hbi1hZHY6IERpc2FsbG93IG9yaWdpbmF0b3Ig
YWRkcmVzc2luZyB3aXRoaW4gbWVzaCBsYXllcg0KICAgICAgYmF0bWFuLWFkdjogTWFrZSBiYXRf
cHJpdi0+Y3Vycl9ndyBhbiByY3UgcHJvdGVjdGVkIHBvaW50ZXINCiAgICAgIGJhdG1hbi1hZHY6
IEluY3JlYXNlIG9yaWdfbm9kZSByZWZjb3VudCBiZWZvcmUgcmVsZWFzaW5nIHJjdSByZWFkIGxv
Y2sNCiAgICAgIGJhdG1hbi1hZHY6IEZpeCBwb3NzaWJsZSBidWZmZXIgb3ZlcmZsb3cgaW4gc29m
dGlmIG5laWdoIGxpc3Qgb3V0cHV0DQogICAgICBiYXRtYW4tYWR2OiBSZW1vdmUgdW51c2VkIGhk
cl9zaXplIHZhcmlhYmxlIGluIHJvdXRlX3VuaWNhc3RfcGFja2V0KCkNCg0KTGlvciBMZXZ5ICg0
KToNCiAgICAgIGlnYnZmOiByZW1vdmUgVHggaGFuZyBkZXRlY3Rpb24NCiAgICAgIGlnYjogYWRk
IHN1cHBvcnQgZm9yIFZGIFRyYW5zbWl0IHJhdGUgbGltaXQgdXNpbmcgaXByb3V0ZTINCiAgICAg
IGl4Z2JldmY6IHJlbW92ZSBUeCBoYW5nIGRldGVjdGlvbg0KICAgICAgaXhnYmU6IGFkZCBzdXBw
b3J0IGZvciBWRiBUcmFuc21pdCByYXRlIGxpbWl0IHVzaW5nIGlwcm91dGUyDQoNCkx1Y2lhbm8g
Q29lbGhvICg3KToNCiAgICAgIG1hYzgwMjExOiBhZGQgaHcgY29uZmlndXJhdGlvbiBmb3IgbWF4
IGFtcGR1IGJ1ZmZlciBzaXplDQogICAgICBNQUlOVEFJTkVSUzogdXBkYXRlIGluZm9ybWF0aW9u
IGZvciB0aGUgd2wxMnh4IGRyaXZlcg0KICAgICAgd2wxMnh4OiBkb24ndCBtb2RpZnkgdGhlIGds
b2JhbCBzdXBwb3J0ZWQgYmFuZCBzdHJ1Y3R1cmVzDQogICAgICB3bDEyeHg6IGxvY2sgdGhlIFJD
VSB3aGVuIGFjY2Vzc2luZyBzdGEgdmlhIGllZWU4MDIxMV9maW5kX3N0YSgpDQogICAgICB3bDEy
eHg6IGFkZCBodyBjb25maWd1cmF0aW9uIGZvciBtYXggc3VwcG9ydGVkIEFNRFBVIHNpemUNCiAg
ICAgIHdsMTJ4eDogZml4IHdhcm5pbmcgZHVlIHRvIG1pc3NpbmcgYXJnIGluIGFtcGR1X2FjdGlv
bg0KICAgICAgd2wxMnh4OiBmaXggTU9EVUxFX0FVVEhPUiBlbWFpbCBhZGRyZXNzDQoNCk1hcmMg
S2xlaW5lLUJ1ZGRlICg5KToNCiAgICAgIGF4ODg3OTY6IGZpeCBjb2RpbmdzdHlsZSBhbmQgY2hl
Y2twYXRjaCB3YXJuaW5ncw0KICAgICAgYXg4ODc5NjogZG9uJ3QgdXNlIG1hZ2ljIGVpX3N0YXR1
cyB0byBhY2NlcyBwcml2YXRlIGRhdGENCiAgICAgIGF4ODg3OTY6IHJlbW92ZSBtZW1zZXQgb2Yg
cHJpdmF0ZSBkYXRhDQogICAgICBheDg4Nzk2OiByZW1vdmUgZmlyc3RfaW5pdCBwYXJhbWV0ZXIg
ZnJvbSBheF9pbml0X2RldigpDQogICAgICBheDg4Nzk2OiB1c2UgbmV0ZGV2XzxMRVZFTD4gaW5z
dGVhZCBvZiBkZXZfPExFVkVMPiBhbmQgcHJfPExFVkVMPg0KICAgICAgYXg4ODc5NjogcmVtb3Zl
IHBsYXRmb3JtX2RldmljZSBtZW1iZXIgZnJvbSBzdHJ1Y3QgYXhfZGV2aWNlDQogICAgICBheDg4
Nzk2OiBtYWtlIHBvaW50ZXIgdG8gcGxhdGZvcm0gZGF0YSBjb25zdA0KICAgICAgYXg4ODc5Njog
Y2xlYW4gdXAgcHJvYmUgYW5kIHJlbW92ZSBmdW5jdGlvbg0KICAgICAgYXg4ODc5NjogdXNlIGdl
bmVyaWMgbWRpb19iaXRiYW5nIGRyaXZlcg0KDQpNYXJlayBMaW5kbmVyICgyMik6DQogICAgICBi
YXRtYW4tYWR2OiBTcGxpdCBjb21iaW5lZCB2YXJpYWJsZSBkZWNsYXJhdGlvbnMNCiAgICAgIGJh
dG1hbi1hZHY6IHByb3RlY3QgbmVpZ2hib3Igbm9kZXMgd2l0aCByZWZlcmVuY2UgY291bnRlcnMN
CiAgICAgIGJhdG1hbi1hZHY6IGNvbnZlcnQgbmVpZ2hib3IgbGlzdCB0byBobGlzdA0KICAgICAg
YmF0bWFuLWFkdjogcHJvdGVjdCBuZWlnaGJvciBsaXN0IHdpdGggcmN1IGxvY2tzDQogICAgICBi
YXRtYW4tYWR2OiBmcmVlIG5laWdoYm9ycyB3aGVuIGFuIGludGVyZmFjZSBpcyBkZWFjdGl2YXRl
ZA0KICAgICAgYmF0bWFuLWFkdjogcHJvdGVjdCBuZWlnaF9ub2RlcyB1c2VkIG91dHNpZGUgb2Yg
cmN1X2xvY2tzIHdpdGggcmVmY291bnRpbmcNCiAgICAgIGJhdG1hbi1hZHY6IHByb3RlY3QgZWFj
aCBoYXNoIHJvdyB3aXRoIHJjdSBsb2Nrcw0KICAgICAgYmF0bWFuLWFkdjogcHJvdGVjdCBvcmln
aW5hdG9yIG5vZGVzIHdpdGggcmVmZXJlbmNlIGNvdW50ZXJzDQogICAgICBiYXRtYW4tYWR2OiBw
cm90ZWN0IG9nbSBjb3VudGVyIGFycmF5cyB3aXRoIHNwaW5sb2NrDQogICAgICBiYXRtYW4tYWR2
OiBDb3JyZWN0IHJjdSByZWZjb3VudGluZyBmb3IgbmVpZ2hfbm9kZQ0KICAgICAgYmF0bWFuLWFk
djogQ29ycmVjdCByY3UgcmVmY291bnRpbmcgZm9yIGd3X25vZGUNCiAgICAgIGJhdG1hbi1hZHY6
IENvcnJlY3QgcmN1IHJlZmNvdW50aW5nIGZvciBzb2Z0aWZfbmVpZ2gNCiAgICAgIGJhdG1hbi1h
ZHY6IENvcnJlY3QgcmN1IHJlZmNvdW50aW5nIGZvciBiYXRtYW5faWYNCiAgICAgIGJhdG1hbi1h
ZHY6IHByb3RlY3QgYml0IG9wZXJhdGlvbnMgdG8gY291bnQgT0dNcyB3aXRoIHNwaW5sb2NrDQog
ICAgICBiYXRtYW4tYWR2OiBtYWtlIGJyb2FkY2FzdCBzZXFubyBvcGVyYXRpb25zIGF0b21pYw0K
ICAgICAgYmF0bWFuLWFkdjogc2VwYXJhdGUgZXRoZXJuZXQgY29tcGFyaW5nIGNhbGxzIGZyb20g
aGFzaCBmdW5jdGlvbnMNCiAgICAgIGJhdG1hbi1hZHY6IHJlbW92ZSBleHRyYSBsYXllciBiZXR3
ZWVuIGhhc2ggYW5kIGhhc2ggZWxlbWVudCAtIGhhc2ggYnVja2V0DQogICAgICBiYXRtYW4tYWR2
OiBDb3JyZWN0IHJjdSByZWZjb3VudGluZyBmb3Igb3JpZ19ub2RlDQogICAgICBiYXRtYW4tYWR2
OiBpbmNyZWFzZSByZWZjb3VudCBpbiBjcmVhdGVfbmVpZ2hib3IgdG8gYmUgY29uc2lzdGVudA0K
ICAgICAgYmF0bWFuLWFkdjogcmVtb3ZlIG9yaWdfaGFzaCBzcGlubG9jaw0KICAgICAgYmF0bWFu
LWFkdjogcmVuYW1lIGdsb2JhbCBpZl9saXN0IHRvIGhhcmRpZl9saXN0DQogICAgICBiYXRtYW4t
YWR2OiByZW5hbWUgYmF0bWFuX2lmIHN0cnVjdCB0byBoYXJkX2lmYWNlDQoNCk1hcmlvIFNjaHVr
bmVjaHQgKDEpOg0KICAgICAgdGNwOiBpb2N0bCB0eXBlIFNJT0NPVVRRTlNEIHJldHVybnMgYW1v
dW50IG9mIGRhdGEgbm90IHNlbnQNCg0KTWFyayBFaW5vbiAoMSk6DQogICAgICBUcml2aWFsIHR5
cG8gZml4IGluIGNvbW1lbnQNCg0KTWFyayBSdXN0YWQgKDMpOg0KICAgICAgbmV0OiBkY2JubDog
VXBkYXRlIGNvcHlyaWdodCBkYXRlcw0KICAgICAgbmV0OiBkY2JubDogRml4IG1pc3NwZWxsaW5n
cw0KICAgICAgbmV0OiBkY2JubDogQWRkIElFRUUgYXBwIHNlbGVjdG9yIHZhbHVlIGRlZmluaXRp
b25zDQoNCk1hdHQgQ2FybHNvbiAoMTkpOg0KICAgICAgdGczOiBSZXZpc2UgNTcxOSBpbnRlcm5h
bCBGSUZPIG92ZXJmbG93IHNvbHV0aW9uDQogICAgICB0ZzM6IEZpeCA1NzE5IEEwIHR4IGNvbXBs
ZXRpb24gYnVnDQogICAgICB0ZzM6IFVzZSBuZXcgVkxBTiBjb2RlDQogICAgICB0ZzM6IERpc2Fi
bGUgbXVsdGl2ZWMgbW9kZSBmb3IgMSBNU0lYIHZlY3Rvcg0KICAgICAgdGczOiBSZXN0cmljdCBw
aHkgaW9jdGwgYWNjZXNzDQogICAgICB0ZzM6IEZpeCBsb29wYmFjayB0ZXN0cw0KICAgICAgdGcz
OiBEaXNhYmxlIE1BQyBsb29wYmFjayB0ZXN0IGZvciBDUE1VIGRldmljZXMNCiAgICAgIHRnMzog
RGlzYWJsZSBFRUUgZHVyaW5nIGxvb3BiYWNrIHRlc3RzDQogICAgICB0ZzM6IEZpeCBFRUUgaW50
ZXJvcGVyYWJpbGl0eSBpc3N1ZQ0KICAgICAgdGczOiBGaXggZWVlIHByZXByb2Nlc3NvciBuYW1p
bmcNCiAgICAgIHRnMzogVXBkYXRlIGNvcHlyaWdodHMgYW5kIHVwZGF0ZSB2ZXJzaW9uIHRvIDMu
MTE3DQogICAgICB0ZzM6IEV4cGFuZCA1NzE5IHdvcmthcm91bmQNCiAgICAgIHRnMzogQWRkIG1p
c3NlZCA1NzE5IHdvcmthcm91bmQgY2hhbmdlDQogICAgICB0ZzM6IEZpeCBOVlJBTSBzZWxmdGVz
dA0KICAgICAgdGczOiBBZGQgY29kZSB0byB2ZXJpZnkgUk9EQVRBIGNoZWNrc3VtIG9mIFZQRA0K
ICAgICAgdGczOiBjbGVhbnVwIHBjaSBkZXZpY2UgdGFibGUgdmFycw0KICAgICAgdGczOiBSZWZp
bmUgVkF1eCBkZWNpc2lvbiBwcm9jZXNzDQogICAgICB0ZzM6IE1vdmUgdGczX2luaXRfbGlua19j
b25maWcgdG8gdGczX3BoeV9wcm9iZQ0KICAgICAgdGczOiBSZW1vdmUgNTc1MCBQQ0kgY29kZQ0K
DQpNZWVuYWtzaGkgVmVua2F0YXJhbWFuICgxKToNCiAgICAgIGl3bGFnbjogRW5hYmxlIGlkbGUg
cG93ZXJzYXZlIG1vZGUgaW4gMTAwMCBzZXJpZXMNCg0KTWljaGFlbCBCdWVzY2ggKDQpOg0KICAg
ICAgc3NiOiBNYWtlIHNzYl93YWl0X2JpdCBtdWx0aS1iaXQgc2FmZQ0KICAgICAgbGliLWF2ZXJh
Z2U6IE1ha2UgY29uZmlnIG9wdGlvbiBzZWxlY3RhYmxlDQogICAgICBtYWM4MDIxMTogQWRkIGxv
ZyBtZXNzYWdlIHRvIGllZWU4MDIxMV9yZXN0YXJ0X2h3KCkNCiAgICAgIHA1NHNwaTogVXBkYXRl
IGtjb25maWcgaGVscCB0ZXh0DQoNCk1pY2hhZWwgQ2hhbiAoMSk6DQogICAgICBibngyOiBVcGRh
dGUgZmlybXdhcmUgYW5kIHZlcnNpb24NCg0KTWljaGHFgiBNaXJvc8WCYXcgKDE2KToNCiAgICAg
IG5ldDogTW92ZSBjaGVjayBvZiBjaGVja3N1bSBmZWF0dXJlcyB0byBuZXRkZXZfZml4X2ZlYXR1
cmVzKCkNCiAgICAgIG5ldDogY2hhbmdlIG5ldGRldi0+ZmVhdHVyZXMgdG8gdTMyDQogICAgICBu
ZXQ6IHJlZHVjZSBhbmQgdW5pZnkgcHJpbnRrIGxldmVsIGluIG5ldGRldl9maXhfZmVhdHVyZXMo
KQ0KICAgICAgZXRodG9vbDogbW92ZSBFWFBPUlRfU1lNQk9MKGV0aHRvb2xfb3Bfc2V0X3R4X2Nz
dW0pIHRvIGNvcnJlY3QgcGxhY2UNCiAgICAgIGV0aHRvb2w6IGVuYWJsZSBHU08gYW5kIEdSTyBi
eSBkZWZhdWx0DQogICAgICBldGh0b29sOiBmYWN0b3JpemUgZXRodG9vbF9nZXRfc3RyaW5ncygp
IGFuZCBldGh0b29sX2dldF9zc2V0X2NvdW50KCkNCiAgICAgIGV0aHRvb2w6IGZhY3Rvcml6ZSBn
ZXQvc2V0X29uZV9mZWF0dXJlDQogICAgICBuZXQ6IEludHJvZHVjZSBuZXcgZmVhdHVyZSBzZXR0
aW5nIG9wcw0KICAgICAgbmV0OiBldGh0b29sOiB1c2UgbmRvX2ZpeF9mZWF0dXJlcyBmb3Igb2Zm
bG9hZCBzZXR0aW5nDQogICAgICBuZXQ6IHVzZSBuZG9fZml4X2ZlYXR1cmVzIGZvciBldGh0b29s
X29wcy0+c2V0X2ZsYWdzDQogICAgICBuZXQ6IGludHJvZHVjZSBORVRJRl9GX1JYQ1NVTQ0KICAg
ICAgbG9vcGJhY2s6IGNvbnZlcnQgdG8gaHdfZmVhdHVyZXMNCiAgICAgIEZpeCAiKHVucmVnaXN0
ZXJlZCBuZXRfZGV2aWNlKTogRmVhdHVyZXMgY2hhbmdlZCIgbWVzc2FnZQ0KICAgICAgbmV0OiBh
dm9pZCBpbml0aWFsICJGZWF0dXJlcyBjaGFuZ2VkIiBtZXNzYWdlDQogICAgICBuZXQ6IEZpeCBF
VEhUT09MX0dGRUFUVVJFUyBjb21wYXRpYmlsaXR5DQogICAgICBuZXQ6IEltcGxlbWVudCBTRkVB
VFVSRVMgY29tcGF0aWJpbGl0eSBmb3Igbm90IHVwZGF0ZWQgZHJpdmVycw0KDQpNaWNoZWwgTGVz
cGluYXNzZSAoMSk6DQogICAgICBkcml2ZXJzL25ldDogZml4IGJ1aWxkIHdhcm5pbmdzIHdpdGgg
Q09ORklHX1BNX1NMRUVQIGRpc2FibGVkDQoNCk1vaGFtbWVkIFNoYWZpIFNoYWpha2hhbiAoNCk6
DQogICAgICBhdGg5azogY2xlYW4gdXAgZW51bXMgYW5kIHVudXNlZCBtYWNyb3MNCiAgICAgIGF0
aDlrOiBGaXggbWVtb3J5IGxlYWsgZHVlIHRvIGZhaWxlZCBQQVBSRCBmcmFtZXMNCiAgICAgIG1h
YzgwMjExOiBVcGRhdGUgY29tbWVudHMgb24gcmFkaW90YXAgTUNTIGluZGV4DQogICAgICBhdGg5
azogVXBkYXRlIGNvbW1lbnRzIGZvciBub3QgcGFyc2luZyBEVElNIHBlcmlvZA0KDQpOaWNrIEtv
c3NpZmlkaXMgKDEpOg0KICAgICAgYXRoNWs6IEZpeCBmYXN0IGNoYW5uZWwgc3dpdGNoaW5nDQoN
Ck5pY2sgTGVkb3Zza2lraCAoMSk6DQogICAgICBtYWM4MDIxMTptZXNoX21wcF90YWJsZV9ncm93
IGNhbGwgc2hvdWxkIGRlcGVuZCBvbiBNRVNIX1dPUktfR1JPV19NUFBfVEFCTEUgZmxhZy4NCg0K
Tmljb2xhcyBEaWNodGVsICgxKToNCiAgICAgIGlwc2VjOiBhbGxvdyB0byBhbGlnbiBJUHY0IEFI
IG9uIDMyIGJpdHMNCg0KTmljb2xhcyBkZSBQZXNsb8O8YW4gKDEpOg0KICAgICAgYm9uZGluZzog
ZG9jdW1lbnRhdGlvbiB1cGRhdGU6IG1haWxpbmcgbGlzdHMuDQoNCk5pc2hhbnQgU2FybXVrYWRh
bSAoNyk6DQogICAgICBtd2w4azogTW9kaWZ5IGFkZF9kbWFfaGVhZGVyIHRvIGluY2x1ZGUgcGFk
IHBhcmFtZXRlcnMNCiAgICAgIG13bDhrOiBBZGQgZW5jYXBzdWxhdGlvbiBvZiBkYXRhIHBhY2tl
dCBmb3IgY3J5cHRvDQogICAgICBtd2w4azogU2V0IG1hYzgwMjExIHJ4IHN0YXR1cyBmbGFncyBh
cHByb3ByaWF0ZWx5IHdoZW4gaHcgY3J5cHRvIGlzIGVuYWJsZWQNCiAgICAgIG13bDhrOiBFbmFi
bGUgSFcgZW5jcnlwdGlvbiBmb3IgQVAgbW9kZQ0KICAgICAgbXdsOGs6IGZpeCByZl9hbnRlbm5h
IHJ4IGFyZ3VtZW50IGZvciBBUA0KICAgICAgbXdsOGs6IFRlbGwgbWFjODAyMTEgd2UgaGF2ZSBy
YXRlIGFkYXB0YXRpb24gaW4gRlcNCiAgICAgIG13bDhrOiBJbnZlcnQgdHggcXVldWVzIGZvciBz
ZXRfaHdfc3BlYyBhbmQgc2V0X2VkY2FfcGFyYW1zDQoNCk5vYnVoaXJvIEl3YW1hdHN1ICgxKToN
CiAgICAgIHNoOiBzaF9ldGg6IEFkZCBzdXBwb3J0IGV0aHRvb2wNCg0KT2xpdmVyIE5ldWt1bSAo
MSk6DQogICAgICByODE2OTogc3VwcG9ydCBjb250cm9sIG9mIGFkdmVydGlzaW5nLg0KDQpQYWJs
byBOZWlyYSBBeXVzbyAoMik6DQogICAgICBuZXRmaWx0ZXI6IG5mX2Nvbm50cmFja190c3RhbXA6
IGFkZCBmbG93LWJhc2VkIHRpbWVzdGFtcCBleHRlbnNpb24NCiAgICAgIG5ldGZpbHRlcjogbmZf
Y3RfdGNwOiBmaXggb3V0IG9mIHN5bmMgc2NlbmFyaW8gd2hpbGUgaW4gU1lOX1JFQ1YNCg0KUGFk
bWFuYWJoIFJhdG5ha2FyICg4KToNCiAgICAgIGJlMm5ldDogUmVtb3ZlIEVSUiBjb21wbCB3b3Jr
YXJvdW5kIGZvciBMYW5jZXINCiAgICAgIGJlMm5ldDogQ2hlY2tzdW0gZmllbGQgdmFsaWQgb25s
eSBmb3IgVENQL1VEUA0KICAgICAgYmUybmV0OiBBZGQgZXJyb3IgcmVjb3ZlcnkgZHVyaW5nIGxv
YWQgZm9yIExhbmNlcg0KICAgICAgYmUybmV0OiBDaGFuZ2UgZi93IGNvbW1hbmQgdmVyc2lvbnMg
Zm9yIExhbmNlcg0KICAgICAgYmUybmV0OiBSZW1vdmUgVFggUXVldWUgc3RvcCBpbiBjbG9zZQ0K
ICAgICAgYmUybmV0OiBEaXNhcm0gQ1EgYW5kIEVRIHRvIGRpc2FibGUgaW50ZXJydXB0IGluIExh
bmNlcg0KICAgICAgYmUybmV0OiBBZGQgbXVsdGljYXN0IGZpbHRlciBjYXBhYmlsaXR5IGZvciBM
YW5jZXINCiAgICAgIGJlMm5ldDogRml4IFVEUCBwYWNrZXQgZGV0ZWN0ZWQgc3RhdHVzIGluIFJY
IGNvbXBsDQoNClBhdHJpY2sgTWNIYXJkeSAoMjQpOg0KICAgICAgTWVyZ2UgYnJhbmNoICdmb3It
cGF0cmljaycgb2YgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvLi4uL2hvcm1zL2x2cy10ZXN0LTIuNg0K
ICAgICAgbmV0ZmlsdGVyOiB4dF9jb25udHJhY2s6IHN1cHBvcnQgbWF0Y2hpbmcgb24gcG9ydCBy
YW5nZXMNCiAgICAgIG5ldGZpbHRlcjogZml4IEtjb25maWcgZGVwZW5kZW5jaWVzDQogICAgICBN
ZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8vMTk4NC5sc2kudXMuZXMvbmV0LW5leHQtMi42
DQogICAgICBuZXRmaWx0ZXI6IG5mX2Nvbm50cmFjazogdXNlIGlzX3ZtYWxsb2NfYWRkcigpDQog
ICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8vZGV2Lm1lZG96YXMuZGUvbGludXgN
CiAgICAgIG5ldGZpbHRlcjogbmZfY29ubnRyYWNrOiBmaXggbGlmZXRpbWUgZGlzcGxheSBmb3Ig
ZGlzYWJsZWQgY29ubmVjdGlvbnMNCiAgICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiAvcmVw
b3MvZ2l0L25ldC1uZXh0LTIuNg0KICAgICAgTWVyZ2UgYnJhbmNoICdjb25ubGltaXQnIG9mIGdp
dDovL2Rldi5tZWRvemFzLmRlL2xpbnV4DQogICAgICBNZXJnZSBicmFuY2ggJ2Nvbm5saW1pdCcg
b2YgZ2l0Oi8vZGV2Lm1lZG96YXMuZGUvbGludXgNCiAgICAgIG5ldGZpbHRlcjogbmZfY29ubnRy
YWNrOiBmaXggbGlua2VyIGVycm9yIHdpdGggTkZfQ09OTlRSQUNLX1RJTUVTVEFNUD1uDQogICAg
ICBydG5ldGxpbms6IGZpeCBsaW5rIGF0dHJpYnV0ZSB2YWxpZGF0aW9uIHdpdGggSUZMQV9HUk9V
UA0KICAgICAgTWVyZ2UgYnJhbmNoICdjb25ubGltaXQnIG9mIGdpdDovL2Rldi5tZWRvemFzLmRl
L2xpbnV4DQogICAgICBuZXRmaWx0ZXI6IGlwc2V0OiB1c2UgbmxhX3BhcnNlX25lc3RlZCgpDQog
ICAgICBuZXRmaWx0ZXI6IGlwc2V0OiByZW1vdmUgdW5uZWNlc3NhcnkgaW5jbHVkZXMNCiAgICAg
IG5ldGZpbHRlcjogY3RuZXRsaW5rOiBmaXggY3RuZXRsaW5rX3BhcnNlX3R1cGxlKCkgd2Fybmlu
Zw0KICAgICAgbmV0ZmlsdGVyOiBpcHNldDogaW5zdGFsbCBpcHNldCByZWxhdGVkIGhlYWRlciBm
aWxlcw0KICAgICAgbmV0ZmlsdGVyOiBpcHNldDogYWRkIG1pc3NpbmcgYnJlYWsgc3RhdGVtdG5z
IGluIGlwX3NldF9nZXRfaXBfcG9ydCgpDQogICAgICBuZXRmaWx0ZXI6IGlwc2V0OiBmaXggbGlu
a2luZyB3aXRoIENPTkZJR19JUFY2PW4NCiAgICAgIG5ldGZpbHRlcjogeHRhYmxlczogYWRkIGRl
dmljZSBncm91cCBtYXRjaA0KICAgICAgbmV0ZmlsdGVyOiBpcHNldDogYWRkIGRlcGVuZGVuY3kg
b24gQ09ORklHX05FVEZJTFRFUl9ORVRMSU5LDQogICAgICBuZXRsaW5rOiBraWxsIGxvZ2ludWlk
L3Nlc3Npb25pZC9zaWQgbWVtYmVycyBmcm9tIHN0cnVjdCBuZXRsaW5rX3NrYl9wYXJtcw0KICAg
ICAgbmV0bGluazoga2lsbCBlZmZfY2FwIGZyb20gc3RydWN0IG5ldGxpbmtfc2tiX3Bhcm1zDQog
ICAgICBuZXRmaWx0ZXI6IHhfdGFibGVzOiByZXR1cm4gLUVOT0VOVCBmb3Igbm9uLWV4aXN0YW50
IG1hdGNoZXMvdGFyZ2V0cw0KDQpQYXRyaWNrIFNjaGFhZiAoMSk6DQogICAgICBpcHZzOiBtYWtl
ICJubyBkZXN0aW5hdGlvbiBhdmFpbGFibGUiIG1lc3NhZ2UgbW9yZSBpbmZvcm1hdGl2ZQ0KDQpQ
YXVsIEdvcnRtYWtlciAoMik6DQogICAgICB0aXBjOiBjb3NtZXRpYyAtIGZ1bmN0aW9uIG5hbWVz
IGFyZSBub3QgdG8gYmUgZnVsbCBzZW50ZW5jZXMNCiAgICAgIHRpcGM6IGRlbGV0ZSBleHRyYSBz
ZW1pY29sb24gYmxvY2tpbmcgbm9kZSBkZWxldGlvbg0KDQpQZXRlciBLb3JzZ2FhcmQgKDIpOg0K
ICAgICAgZHNhL212ODhlNjA2MDogc3VwcG9ydCBub256ZXJvIG1paSBiYXNlIGFkZHJlc3MNCiAg
ICAgIHBoeWxpYjogU0lPQ0dNSUlSRUcvU0lPQ1NNSUlSRUc6IGFsbG93IGFjY2VzcyB0byBhbGwg
bWRpbyBhZGRyZXNzZXMNCg0KUGhpbCBPZXN0ZXIgKDMpOg0KICAgICAgYm9uZGluZzogSW5jb3Jy
ZWN0IFRYIHF1ZXVlIG9mZnNldA0KICAgICAgYm9uZGluZzogQ2FsbCBuZXRpZl9jYXJyaWVyX29m
ZiBhZnRlciByZWdpc3Rlcl9uZXRkZXZpY2UNCiAgICAgIGJvbmRpbmc6IEltcHJvdmUgc3lzbG9n
IG1lc3NhZ2UgYXQgZGV2aWNlIGNyZWF0aW9uIHRpbWUNCg0KUG8tWXUgQ2h1YW5nICgxKToNCiAg
ICAgIG5ldDogYWRkIEZhcmFkYXkgRlRNQUMxMDAgMTAvMTAwIEV0aGVybmV0IGRyaXZlcg0KDQpS
QS1KYXkgSHVuZyAoNSk6DQogICAgICBydDJ4MDA6IEZpeCByYWRpbyBvZmYgaGFuZyBpc3N1ZSBm
b3IgUENJRSBpbnRlcmZhY2UNCiAgICAgIHJ0MngwMDogRml4IGFuZCBmaW5lLXR1bmUgcmYgcmVn
aXN0ZXJzIGZvciBSVDMwNzAvUlQzMDcxL1JUMzA5MA0KICAgICAgcnQyeDAwOiBDb3JyZWN0IGlu
aXRpYWwgdmFsdWUgb2YgVVNfQ1lDX0NOVCByZWdpc3RlciBmb3IgcGNpZSBpbnRlcmZhY2UNCiAg
ICAgIHJ0MngwMDogQWRkIGFudGVubmEgc2V0dGluZyBmb3IgUlQzMDcwL1JUMzA5MC9SVDMzOTAg
d2l0aCBSWCBhbnRlbm5hIGRpdmVyc2l0eSBzdXBwb3J0DQogICAgICBydDJ4MDA6IEZpeCBydDI4
MDAgdHhwb3dlciBzZXR0aW5nIHRvIGNvcnJlY3QgdmFsdWUNCg0KUkEtU2hpYW5nIFR1ICgxKToN
CiAgICAgIHJ0MngwMDogQWRkIHN1cHBvcnQgZm9yIFJUNTM5MCBjaGlwDQoNClJhZmFlbCBKLiBX
eXNvY2tpICgzKToNCiAgICAgIHRnMzogQXZvaWQgc2V0dGluZyBwb3dlci5jYW5fd2FrZXVwIGZv
ciBkZXZpY2VzIHRoYXQgY2Fubm90IHdha2UgdXANCiAgICAgIGF0bDFjOiBEbyBub3QgY2FsbCBk
ZXZpY2VfaW5pdF93YWtldXAoKSBpbiBhdGwxY19wcm9iZSgpDQogICAgICBhdGwxOiBEbyBub3Qg
dXNlIGxlZ2FjeSBQQ0kgcG93ZXIgbWFuYWdlbWVudA0KDQpSYWZhxYIgTWnFgmVja2kgKDE0KToN
CiAgICAgIHNzYjogZXh0cmFjdCBib2FyZGZsYWdzMiBmb3IgU1BST01zIHJldiA0IGFuZCA1DQog
ICAgICBzc2I6IHRyaXZpYWw6IGZpeCBTUFJPTSBleHRyYWN0IHdhcm5pbmcgZm9ybWF0dGluZw0K
ICAgICAgc3NiOiByZW1vdmUgaW52YWxpZCBkZWZpbmUgU1NCX1RNU0xPV19QSFlDTEsNCiAgICAg
IHNzYjogd2hlbiBuZWVkZWQsIHJlamVjdCBJTSBpbnB1dCB3aGlsZSBkaXNhYmxpbmcgZGV2aWNl
DQogICAgICBzc2I6IHJlc2V0IGRldmljZSBvbmx5IGlmIGl0IHdhcyBlbmFibGVkDQogICAgICBi
NDM6IE4tUEhZOiBmaXggMHgyMDU1IHJhZGlvIHdvcmthcm91bmQgY29uZGl0aW9uDQogICAgICBi
NDM6IE4tUEhZOiByZXYxOiBlbmFibGUgc29tZSBnYWluIGN0bCB3b3JrYXJvdW5kcw0KICAgICAg
YjQzOiBOLVBIWTogcmV2MTogcmVzdG9yZSBQSFkgc3RhdGUgYWZ0ZXIgUlNTSSBvcGVyYXRpb25z
DQogICAgICBiNDM6IGZpbGwgUEhZIGN0bCB3b3JkMSBpbiBUWCBoZWFkZXIgZm9yIE4tUEhZDQog
ICAgICBiNDM6IE4tUEhZOiByZXYzKzogYWRkIHN0YXRpYyB0YWJsZXMNCiAgICAgIGI0MzogTi1Q
SFk6IHJldjMrOiBjb3JyZWN0IHN3aXRjaGluZyBhbmFsb2cgY29yZQ0KICAgICAgYjQzOiBOLVBI
WTogcmV2Mys6IGFkZCB0YWJsZXMgd2l0aCBnYWluIGN0bCB3b3JrYXJvdW5kcw0KICAgICAgYjQz
OiBOLVBIWTogcmV2Mys6IGltcGxlbWVudCBnYWluIGN0bCB3b3JrYXJvdW5kcw0KICAgICAgYjQz
OiB0cml2aWFsOiB1cGRhdGUgQjQzX1BIWV9OIGRlc2NyaXB0aW9uIChQSFkgc3VwcG9ydCkNCg0K
UmFqZXNoIEJvcnVuZGlhICgxKToNCiAgICAgIHFsY25pYzogUmVtb3ZlIHZhbGlkYXRpb24gZm9y
IG1heCB0eCBhbmQgbWF4IHJ4IHF1ZXVlcw0KDQpSYWprdW1hciBNYW5vaGFyYW4gKDEzKToNCiAg
ICAgIGF0aDlrOiBwcmVzZXJ2ZSBjYWxkYXRhIGhpc3RvcnkgYnVmZmVyIGFjcm9zcyBzY2Fubmlu
Zw0KICAgICAgYXRoOWtfaHRjOiBrZWVwIGNhbGlicmF0ZWQgbm9pc2UgZmxvb3IgdmFsdWUgZm9y
IG9wZXIgY2hhbm5lbA0KICAgICAgYXRoOWtfaHc6IGZpeCBjYXJyaWVyIGxlYWthZ2UgY2FsaWJy
YXRpb24gZm9yIEFSOTI3MQ0KICAgICAgYXRoOWs6IHVzZSBjb21tb24gQVBJIHRvIGF2b2lkIGNv
ZGUgZHVwbGljYXRpb24NCiAgICAgIG1hYzgwMjExOiBkaXNhYmxlIHBvd2VyIHNhdmUgaWYgYW4g
aW5mcmEgQVAgdmlmIGV4aXN0cw0KICAgICAgYXRoOWtfaHRjOiBjYW5jZWwgYW5pIHdvcmsgaW4g
YXRoOWtfaHRjX3N0b3ANCiAgICAgIGF0aDlrOiB1c2UgY29tbW9uIGdldCBjdXJyZW50IGNoYW5u
ZWwgZnVuY3Rpb24NCiAgICAgIGF0aDlrOiBtb3ZlIHVwZGF0ZSB0eCBwb3dlciB0byBjb21tb24N
CiAgICAgIGF0aDlrX2h0YzogbWFrZSB1c2UgY29tbW9uIG9mIGZ1bmN0aW9uIHRvIHVwZGF0ZSB0
eHBvd2VyDQogICAgICBhdGg5azogZG8gbm90IGFjY2VzcyBodyByZWdpc3RlcnMgaW4gRlVMTCBT
TEVFUA0KICAgICAgYXRoOWs6IHJlc2VydmUgYSBiZWFjb24gc2xvdCBvbiBiZWFjb25pbmcgdmlm
IGFkZGl0aW9uDQogICAgICBtYWM4MDIxMTogZG8gbm90IHJlc3RhcnQgcHMgdGltZXIgZHVyaW5n
IHNjYW4gb3Igb2ZmY2hhbm5lbA0KICAgICAgYXRoOWs6IGRpc2FibGUgYmVhY29uaW5nIGJlZm9y
ZSBzdG9wcGluZyBiZWFjb24gcXVldWUNCg0KUmFuZHkgRHVubGFwICgxKToNCiAgICAgIHdsMTJ4
eDogZml4IHNkaW9fdGVzdCBrY29uZmlnL2J1aWxkIGVycm9ycw0KDQpSaWNoYXJkIFdlaW5iZXJn
ZXIgKDEpOg0KICAgICAgbmV0ZmlsdGVyOiB4dF9jb25ubGltaXQ6IHVzZSBob3Rkcm9wIGp1bXAg
bWFyaw0KDQpSb2fDqXJpbyBCcml0byAoMSk6DQogICAgICBCbHVldG9vdGg6IGF0aDNrOiBBdm9p
ZCBkdXBsaWNhdGlvbiBvZiBjb2RlDQoNClJvb3BhIFByYWJodSAoMyk6DQogICAgICBlbmljOiBC
dWcgRml4OiBEb250IHJlc2V0IEVOSUNfU0VUX0FQUExJRUQgZmxhZyBvbiBwb3J0IHByb2ZpbGUg
ZGlzYXNzb2NpYXRlDQogICAgICBlbmljOiBEZWNvdXBsZSBtYWMgYWRkcmVzcyByZWdpc3RyYXRp
b24gYW5kIGRlcmVnaXN0cmF0aW9uIGZyb20gcG9ydCBwcm9maWxlIHNldCBvcGVyYXRpb24NCiAg
ICAgIGVuaWM6IEZsdXNoIGRyaXZlciBjYWNoZSBvZiByZWdpc3RlcmVkIGFkZHIgbGlzdHMgZHVy
aW5nIHBvcnQgcHJvZmlsZSBkaXNhc3NvY2lhdGUNCg0KUsOpbWkgRGVuaXMtQ291cm1vbnQgKDE1
KToNCiAgICAgIFBob25ldDogYWxsb3cgbXVsdGlwbGUgbGlzdGVuKCkgYW5kIGZpeCBzbWFsbCBy
YWNlIGNvbmRpdGlvbg0KICAgICAgUGhvbmV0OiBpbXBsZW1lbnQgcGVyLXNvY2tldCBkZXN0aW5h
dGlvbi9wZWVyIGFkZHJlc3MNCiAgICAgIFBob25ldDogdXNlIHNvY2tldCBkZXN0aW5hdGlvbiBp
biBwaXBlIHByb3RvY29sDQogICAgICBQaG9uZXQ6IHJlbW92ZSByZWR1bWRhbnQgcGVwLT5waXBl
X3N0YXRlDQogICAgICBQaG9uZXQ6IGRvbid0IGJvdGhlciB3aXRoIHRyYW5zYWN0aW9uIElEcyAo
ZXNwZWNpYWxseSBmb3IgaW5kaWNhdGlvbnMpDQogICAgICBQaG9uZXQ6IGZpeCBmbGF3ZWQgIlNZ
Ti9BQ0siIGxvZ2ljDQogICAgICBQaG9uZXQ6IGZpeCBOVUxMIGRlcmVmZXJlbmNlIG9uIFRYIHBh
dGggd2l0aCBpbXBsaWNpdCBzb3VyY2UNCiAgICAgIFBob25ldDogcmV0dXJuIGFuIGVycm9yIHdo
ZW4gcGFja2V0IFRYIGZhaWxzDQogICAgICBQaG9uZXQ6IGNvcnJlY3QgcGlwZSBiYWNrbG9nIGNh
bGxiYWNrIHJldHVybiB2YWx1ZXMNCiAgICAgIFBob25ldDogZmFjdG9yIGNvbW1vbiBjb2RlIHRv
IHNlbmQgY29udHJvbCBtZXNzYWdlcw0KICAgICAgUGhvbmV0OiBhbGxvY2F0ZSBzb2NrIGZyb20g
YWNjZXB0IHN5c2NhbGwgcmF0aGVyIHRoYW4gc29mdCBJUlENCiAgICAgIFBob25ldDogcHJvdmlk
ZSBwaXBlIHNvY2tldCBvcHRpb24gdG8gcmV0cmlldmUgdGhlIHBpcGUgaWRlbnRpZmllcg0KICAg
ICAgUGhvbmV0OiBzdXBwb3J0IGFjdGl2ZSBjb25uZWN0aW9uIHdpdGhvdXQgcGlwZSBjb250cm9s
bGVyIG9uIG1vZGVtDQogICAgICBQaG9uZXQ6IGtpbGwgdGhlIFNULUVyaWNzc29uIHBpcGUgY29u
dHJvbGxlciBLY29uZmlnDQogICAgICBQaG9uZXQ6IGZpeCBhbGlnbmVkLW1vZGUgcGlwZSBzb2Nr
ZXQgYnVmZmVyIGhlYWRlciByZXNlcnZlDQoNClNha2FyaSBBaWx1cyAoMyk6DQogICAgICB0bGFu
OiBDb2RlIGNsZWFudXA6IGNoZWNrcGF0Y2gucGwgaXMgcmVsYXRpdmVseSBoYXBweSBub3cuDQog
ICAgICB0bGFuOiBhZGQgc3VzcGVuZC9yZXN1bWUgc3VwcG9ydA0KICAgICAgdGxhbjogRml4IGJ1
Z3MgaW50cm9kdWNlZCBieSB0aGUgbGFzdCB0bGFuIGNsZWFudXAgcGF0Y2gNCg0KU2FuZ3RhZSBI
YSAoMik6DQogICAgICB0Y3BfY3ViaWM6IG1ha2UgdGhlIGRlbGF5IHRocmVzaG9sZCBvZiBIeVN0
YXJ0IGxlc3Mgc2Vuc2l0aXZlDQogICAgICB0Y3BfY3ViaWM6IGZpeCBsb3cgdXRpbGl6YXRpb24g
b2YgQ1VCSUMgd2l0aCBIeVN0YXJ0DQoNClNhdGh5YSBQZXJsYSAoMSk6DQogICAgICBiZTJuZXQ6
IGNoYW5nZXMgZm9yIEJFMyBuYXRpdmUgbW9kZSBzdXBwb3J0DQoNClNjb3R0IEphbWVzIFJlbW5h
bnQgKDEpOg0KICAgICAgbmV0L3dpcmVsZXNzOiBhZGQgQ09VTlRSWSB0byB0byByZWd1bGF0b3J5
IGRldmljZSB1ZXZlbnQNCg0KU2ViYXN0aWVuIEphbiAoMSk6DQogICAgICB3bDEyeHg6IGZpeCB0
aGUgcGF0aCB0byB0aGUgd2wxMnh4IGZpcm13YXJlcw0KDQpTZW50aGlsIEJhbGFzdWJyYW1hbmlh
biAoMyk6DQogICAgICBhdGg5a19odzogRml4IGluY29ycmVjdCBtYWN2ZXJzaW9uIGFuZCBtYWNy
ZXYgY2hlY2tzDQogICAgICBhdGg5a19odzogcmVhZCBhbmQgYmFja3VwIEFSX1dBIHJlZ2lzdGVy
IHZhbHVlIGV2ZW4gYmVmb3JlIGNoaXAgcmVzZXQgb24uDQogICAgICBhdGg5azogRml4IGluY29y
cmVjdCBHUElPIExFRCBwaW4gZm9yIEFSOTQ4NQ0KDQpTZXJnZWkgU2h0eWx5b3YgKDIpOg0KICAg
ICAgbmV0OiB1c2UgcGNpX2Rldi0+cmV2aXNpb24sIGFnYWluDQogICAgICBzaXM5MDA6IHVzZSBw
Y2lfZGV2LT5yZXZpc2lvbg0KDQpTZXRoIEZvcnNoZWUgKDEpOg0KICAgICAgcnQyeDAwOiBDaGVj
ayBmb3IgZXJyb3JzIGZyb20gc2tiX3BhZCgpIGNhbGxzDQoNClNoYW4gV2VpICgxMCk6DQogICAg
ICBuZXQ6IGNsZWFudXAgdW51c2VkIG1hY3JvcyBpbiBuZXQgZGlyZWN0b3J5DQogICAgICBkY2Nw
OiBjbGVhbiB1cCB1bnVzZWQgRENDUF9TVEFURV9NQVNLIGRlZmluaXRpb24NCiAgICAgIHRjcDog
UmVtb3ZlIGRlYnVnIG1hY3JvIG9mIFRDUF9DSEVDS19USU1FUg0KICAgICAgc2N0cDogZml4IGNv
bXBpbGUgd2FybmluZ3MgaW4gc2N0cF90c25tYXBfbnVtX2dhYnMNCiAgICAgIG1hYzgwMjExOiBy
ZW1vdmUgdW51c2VkIG1hY3Jvcw0KICAgICAgd2lyZWxlc3M6YXRoOiB1c2UgcmVzb3VyY2Vfc2l6
ZSgpIGhlbHAgZnVuY3Rpb24NCiAgICAgIHMyaW86IGZpeCB1bmluaXRpYWxpemVkIGNvbXBpbGUg
d2FybmluZw0KICAgICAgbmV0ZmlsdGVyOiBpcHNldDogZml4IHRoZSBjb21waWxlIHdhcm5pbmcg
aW4gaXBfc2V0X2NyZWF0ZQ0KICAgICAgbXdsOGs6IHVzZSBrY2FsbG9jIGluc3RlYWQgb2Yga21h
bGxvYyAmIG1lbXNldA0KICAgICAgbmV0ZmlsdGVyOmlwdnM6IHVzZSBrbWVtZHVwDQoNClNoYXdu
IExpbiAoMSk6DQogICAgICByNjA0MDogZml4IG11bHRpY2FzdCBvcGVyYXRpb25zDQoNClNoaWFu
ZyBUdSAoMik6DQogICAgICBydDJ4MDA6IEFkZC9Nb2RpZnkgcHJvdGVjdGlvbiByZWxhdGVkIHJl
Z2lzdGVyIGRlZmluaXRpb25zDQogICAgICBydDJ4MDA6IEFkZC9Nb2RpZnkgdGhlIEdQSU8gcmVn
aXN0ZXIgZGVmaW5pdGlvbg0KDQpTaG11bGlrIFJhdmlkICgzKToNCiAgICAgIGJueDJ4OiB1c2Ug
ZGNiX3NldGFwcCB0byBtYW5hZ2UgbmVnb3RpYXRlZCBhcHBsaWNhdGlvbiB0bHZzDQogICAgICBk
Y2JubDogYWRkIHN1cHBvcnQgZm9yIHJldHJpZXZpbmcgcGVlciBjb25maWd1cmF0aW9uIC0gaWVl
ZQ0KICAgICAgZGNibmw6IGFkZCBzdXBwb3J0IGZvciByZXRyaWV2aW5nIHBlZXIgY29uZmlndXJh
dGlvbiAtIGNlZQ0KDQpTaW1vbiBIb3JtYW4gKDI4KToNCiAgICAgIElQVlM6IEFkZCBwZXJzaXN0
ZW5jZSBlbmdpbmUgdG8gY29ubmVjdGlvbiBlbnRyeQ0KICAgICAgSVBWUzogT25seSBtYXRjaCBw
ZV9kYXRhIGNyZWF0ZWQgYnkgdGhlIHNhbWUgcGUNCiAgICAgIElQVlM6IE1ha2UgdGhlIGNwIGFy
Z3VtZW50IHRvIGlwX3ZzX3N5bmNfY29ubigpIHN0YXRpYw0KICAgICAgSVBWUzogUmVtb3ZlIHVz
ZWxlc3MgeyB9IGJsb2NrIGZyb20gaXBfdnNfcHJvY2Vzc19tZXNzYWdlKCkNCiAgICAgIElQVlM6
IGJ1ZmZlciBhcmd1bWVudCB0byBpcF92c19wcm9jZXNzX21lc3NhZ2UoKSBzaG91bGQgbm90IGJl
IGNvbnN0DQogICAgICBpcHZzOiBhbGxvdyB0cmFuc21pdCBvZiBHUk8gYWdncmVnYXRlZCBza2Jz
DQogICAgICBNZXJnZSBicmFuY2ggJ21hc3Rlcicgb2YgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvLi4u
L2RhdmVtL25ldC1uZXh0LTIuNiBpbnRvIEhFQUQNCiAgICAgIElQVlM6IENoYW5nZSBzb2NrX2Ny
ZWF0ZV9rZXJuZWwoKSB0byBfX3NvY2tfY3JlYXRlKCkNCiAgICAgIElQVlM6IHVzZSB6IG1vZGlm
aWVyIGZvciBzaXplb2YoKSBhcmd1bWVudA0KICAgICAgSVBWUzogcmVtb3ZlIGR1cGxpY2F0ZSBp
bml0aWFsaXNhdGlvbiBvciByc190YWJsZQ0KICAgICAgSVBWUzogUmVtb3ZlIHVudXNlZCB2YXJp
YWJsZXMNCiAgICAgIElQVlM6IEFsbG93IGNvbXBpbGF0aW9uIHdpdGggQ09ORklHX1NZU0NUTCBk
aXNhYmxlZA0KICAgICAgSVBWUzogUmVtb3ZlIGlwX3ZzX3N5bmNfY2xlYW51cCBmcm9tIHNlY3Rp
b24gX19leGl0DQogICAgICBJUFZTOiBVc2UgY29ycmVjdCBsb2NrIGluIFNDVFAgbW9kdWxlDQog
ICAgICBJUFZTOiBBZGQgaXBfdnNfcm91dGVfbWVfaGFyZGVyKCkNCiAgICAgIElQVlM6IEFkZCBz
eXNjdGxfc25hdF9yZXJvdXRlKCkNCiAgICAgIElQVlM6IEFkZCBzeXNjdGxfbmF0X2ljbXBfc2Vu
ZCgpDQogICAgICBJUFZTOiBBZGQge3N5c2N0bF9zeW5jX3RocmVzaG9sZCxwZXJpb2R9KCkNCiAg
ICAgIElQVlM6IEFkZCBzeXNjdGxfc3luY192ZXIoKQ0KICAgICAgSVBWUzogQWRkIHN5c2N0bF9l
eHBpcmVfbm9kZXN0X2Nvbm4oKQ0KICAgICAgSVBWUzogQWRkIGV4cGlyZV9xdWllc2NlbnRfdGVt
cGxhdGUoKQ0KICAgICAgSVBWUzogQ29uZGl0aW5hbGx5IHVzZSBzeXNjdGxfbGJsY3tyfV9leHBp
cmF0aW9uDQogICAgICBJUFZTOiBpcF92c190b2Ryb3AoKSBiZWNvbWVzIGEgbm9vcCB3aGVuIENP
TkZJR19TWVNDVEwgaXMgdW5kZWZpbmVkDQogICAgICBJUFZTOiBDb25kaXRpb25hbCBpcF92c19j
b25udHJhY2tfZW5hYmxlZCgpDQogICAgICBJUFZTOiBNaW5pbWlzZSBpcF92c19sZWF2ZSB3aGVu
IENPTkZJR19TWVNDVEwgaXMgdW5kZWZpbmVkDQogICAgICBJUFZTOiBDb25kaXRpb25hbGx5IGRl
ZmluZSBhbmQgdXNlIGlwX3ZzX2xibGN7cn1fdGFibGUNCiAgICAgIElQVlM6IEFkZCBfX2lwX3Zz
X2NvbnRyb2xfe2luaXQsY2xlYW51cH1fc3lzY3RsKCkNCiAgICAgIElQVlM6IENvbmRpdGlvbmFs
bHkgaW5jbHVkZSBzeXNjdGwgbWVtYmVycyBvZiBzdHJ1Y3QgbmV0bnNfaXB2cw0KDQpTaW1vbiBX
dW5kZXJsaWNoICgyKToNCiAgICAgIGJhdG1hbi1hZHY6IHJlbW92ZSB1bnVzZWQgcGFyYW1ldGVy
cw0KICAgICAgYmF0bWFuLWFkdjogcHJvdGVjdCBib25kaW5nIHdpdGggcmN1IGxvY2tzDQoNClNv
bnkgQ2hhY2tvICgyKToNCiAgICAgIG5ldHhlbjogTm90aWZ5IGZpcm13YXJlIG9mIEZsZXgtMTAg
aW50ZXJmYWNlIGRvd24NCiAgICAgIG5ldHhlbjogc3VwcG9ydCBmb3IgR2JFIHBvcnQgc2V0dGlu
Z3MNCg0KU3RhbmlzbGF3IEdydXN6a2EgKDIyKToNCiAgICAgIGl3bHdpZmk6IGRvIG5vdCBzZXQg
dHggcG93ZXIgd2hlbiBjaGFubmVsIGlzIGNoYW5naW5nDQogICAgICBpd2wzOTQ1OiBzZXQgU1RB
VFVTX1JFQURZIGJlZm9yZSBjb21taXRfcnhvbg0KICAgICAgaXdsd2lmaTogcmVtb3ZlIHVubmVl
ZGVkIF9fcGFja2VkDQogICAgICBpd2x3aWZpOiBpbnRyb2R1Y2UgaXdsX2FkdmFuY2VkX2J0X2Nv
ZXhpc3QoKQ0KICAgICAgaXdsd2lmaTogcmVtb3ZlIHVubmVlZGVkIGRpc2FibGVfaHdfc2NhbiBj
aGVjaw0KICAgICAgaXdsd2lmaTogaW50cm9kdWNlIGl3bF9idF9zdGF0aXN0aWNzDQogICAgICBp
d2wzOTQ1OiBkbyBub3QgdXNlIGFnbiBzcGVjaWZpYyBJV0xfUkFURV9DT1VOVA0KICAgICAgaXds
d2lmaTogY29ycmVjdCBmcmVxdWVuY3kgc2V0dGluZ3MNCiAgICAgIGl3bHdpZmk6IGNsZWFudXAg
aXdsX3JlY292ZXJfZnJvbV9zdGF0aXN0aWNzDQogICAgICBpd2x3aWZpOiBjbGVhbnVwIGl3bF9n
b29kX2Fja19oZWFsdGgNCiAgICAgIGl3bHdpZmk6IGZpeCBhY2sgaGVhbHRoIGZvciBXaUZpL0JU
IGNvbWJvIGRldmljZXMNCiAgICAgIGl3bGVnYWN5OiBkbyBub3Qgc2V0IHR4IHBvd2VyIHdoZW4g
Y2hhbm5lbCBpcyBjaGFuZ2luZw0KICAgICAgbWFjODAyMTE6IGJldHRlciBmaXggZm9yIGNvbm5f
bW9uX3RpbWVyIHJ1bm5pbmcgYWZ0ZXIgZGlzYXNzb2NpYXRlDQogICAgICBpd2x3aWZpOiBmaXgg
ZG1hIG1hcHBpbmdzIGFuZCBza2JzIGxlYWsNCiAgICAgIGl3bGVnYWN5OiBmaXggZG1hIG1hcHBp
bmdzIGFuZCBza2JzIGxlYWsNCiAgICAgIGl3bHdpZmk6IGFkZCB7YWNrLHBscGN9X2NoZWNrIG1v
ZHVsZSBwYXJhbWV0ZXJzDQogICAgICBpd2x3aWZpOiBtb3ZlIGNoZWNrIGhlYWx0aCBjb2RlIGlu
dG8gaXdsLXJ4LmMNCiAgICAgIGl3bHdpZmk6IG1vdmUgcmVtYWluaW5nIGl3bC1hZ24tcnguYyBj
b2RlIGludG8gaXdsLXJ4LmMNCiAgICAgIGl3bHdpZmk6IG1vdmUgcnggaGFuZGxlcnMgY29kZSB0
byBpd2wtcnguYw0KICAgICAgaXdsd2lmaTogY2xlYW51cCBpd2xfZ29vZF9wbGNwX2hlYWx0aA0K
ICAgICAgaXdsd2lmaTogYXZvaWQgdG9vIGZyZXF1ZW50IHJlY292ZXIgZnJvbSBzdGF0aXN0aWNz
DQogICAgICBpd2x3aWZpOiBmaXggaXdsLXJ4LmMgY29tcGlsYXRpb24NCg0KU3RlZmFuIEFzc21h
bm4gKDEpOg0KICAgICAgaWdiOiB3YXJuIGlmIG1heF92ZnMgbGltaXQgaXMgZXhjZWVkZWQNCg0K
U3RlZmFuIEJlcmdlciAoMik6DQogICAgICBuZXRmaWx0ZXI6IHh0X2Nvbm5saW1pdDogY29ubmxp
bWl0LWFib3ZlIGVhcmx5IGxvb3AgdGVybWluYXRpb24NCiAgICAgIFJldmVydCAibmV0ZmlsdGVy
OiB4dF9jb25ubGltaXQ6IGNvbm5saW1pdC1hYm92ZSBlYXJseSBsb29wIHRlcm1pbmF0aW9uIg0K
DQpTdGVmZmVuIEtsYXNzZXJ0ICgxMCk6DQogICAgICBjcnlwdG86IGF1dGhlbmNlc24gLSBBZGQg
YWxnb3JpdGhtIHRvIGhhbmRsZSBJUHNlYyBleHRlbmRlZCBzZXF1ZW5jZSBudW1iZXJzDQogICAg
ICB4ZnJtOiBBZGQgYmFzaWMgaW5mcmFzdHJ1Y3R1cmUgdG8gc3VwcG9ydCBJUHNlYyBleHRlbmRl
ZCBzZXF1ZW5jZSBudW1iZXJzDQogICAgICB4ZnJtOiBVc2Ugc2VwYXJhdGUgbG93IGFuZCBoaWdo
IG9yZGVyIGJpdHMgb2YgdGhlIHNlcXVlbmNlIG51bWJlcnMgaW4geGZybV9za2JfY2INCiAgICAg
IGVzcDQ6IEFkZCBzdXBwb3J0IGZvciBJUHNlYyBleHRlbmRlZCBzZXF1ZW5jZSBudW1iZXJzDQog
ICAgICBlc3A2OiBBZGQgc3VwcG9ydCBmb3IgSVBzZWMgZXh0ZW5kZWQgc2VxdWVuY2UgbnVtYmVy
cw0KICAgICAgeGZybTogTW92ZSBJUHNlYyByZXBsYXkgZGV0ZWN0aW9uIGZ1bmN0aW9ucyB0byBh
IHNlcGFyYXRlIGZpbGUNCiAgICAgIHhmcm06IFN1cHBvcnQgYW50aS1yZXBsYXkgd2luZG93IHNp
emUgYmlnZ2VyIHRoYW4gMzIgcGFja2V0cw0KICAgICAgeGZybTogQWRkIHN1cHBvcnQgZm9yIElQ
c2VjIGV4dGVuZGVkIHNlcXVlbmNlIG51bWJlcnMNCiAgICAgIHhmcm06IEFkZCB1c2VyIGludGVy
ZmFjZSBmb3IgZXNuIGFuZCBiaWcgYW50aS1yZXBsYXkgd2luZG93cw0KICAgICAgeGZybTogUmVm
Y291bnQgZGVzdGluYXRpb24gZW50cnkgb24geGZybV9sb29rdXANCg0KU3RlcGhlbiBIZW1taW5n
ZXIgKDQpOg0KICAgICAgcGZrZXk6IGZpeCB3YXJuaW5nDQogICAgICBuZXRmaWx0ZXI6IHhfdGFi
bGVzOiBtaXN1c2Ugb2YgdHJ5X3RoZW5fcmVxdWVzdF9tb2R1bGUNCiAgICAgIHRjcDogbWFyayB0
Y3BfY29uZ2VzdGlvbl9vcHMgcmVhZF9tb3N0bHkNCiAgICAgIG5ldGZpbHRlcjogbmZfY29ubnRy
YWNrOiBmaXggc3lzY3RsIG1lbW9yeSBsZWFrDQoNClN0ZXZlIEJyb3duICgxKToNCiAgICAgIGF0
aDlrOiBSZW1vdmUgcmVkdW5kYW50IGJlYWNvbl9pbnRlcnZhbA0KDQpTdGV2ZSBIb2Rnc29uICgy
KToNCiAgICAgIHNmYzogUmVkdWNlIHNpemUgb2YgZWZ4X3J4X2J1ZmZlciBieSB1bmlvbmlzaW5n
IHNrYiBhbmQgcGFnZQ0KICAgICAgc2ZjOiBSZWR1Y2Ugc2l6ZSBvZiBlZnhfcnhfYnVmZmVyIGZ1
cnRoZXIgYnkgcmVtb3ZpbmcgZGF0YSBtZW1iZXINCg0KU3VqaXRoIE1hbm9oYXJhbiAoMjgpOg0K
ICAgICAgYXRoOWtfaHRjOiBBZGQgbXVsdGlwbGUgcmVnaXN0ZXIgcmVhZCBBUEkNCiAgICAgIGF0
aDlrX2h3OiBPZmZsb2FkIFVTQiBlZXByb20gcmVhZGluZyB0byB0YXJnZXQNCiAgICAgIGF0aDlr
X2h3OiBGaXggb3Btb2RlIGluaXRpYWxpemF0aW9uDQogICAgICBhdGg5a19odzogRml4IElOSSBm
aXh1cA0KICAgICAgYXRoOWtfaHc6IEFkZCBSWCBmaWx0ZXJzDQogICAgICBhdGg5a19odzogRml4
IHBvd2VyIG9uIHJlc2V0DQogICAgICBhdGg5a19odGM6IEhhbmRsZSBzdG9yYWdlIGRldmljZXMN
CiAgICAgIGF0aDlrX2h0YzogQWxsb3cgdXB0byB0d28gc2ltdWx0YW5lb3VzIGludGVyZmFjZXMN
CiAgICAgIGF0aDlrX2h0YzogVW5pZnkgdGFyZ2V0IGNhcGFiaWxpdHkgdXBkYXRpbmcNCiAgICAg
IGF0aDlrX2h0YzogRml4IGVycm9yIGhhbmRsaW5nIGluIGFkZF9pbnRlcmZhY2UNCiAgICAgIGF0
aDlrX2h0YzogUmVtb3ZlIE9QX1BSRUFNQkxFX1NIT1JUDQogICAgICBhdGg5a19odGM6IFJlbW92
ZSBPUF9QUk9URUNUX0VOQUJMRQ0KICAgICAgYXRoOWtfaHRjOiBSZW1vdmUgT1BfQVNTT0NJQVRF
RCB2YXJpYWJsZQ0KICAgICAgYXRoOWtfaHRjOiBTZXQgdGhlIEJTU0lEIG1hc2sgZm9yIG11bHRp
cGxlIGludGVyZmFjZXMNCiAgICAgIGF0aDlrX2h0YzogTWFrZSBzZXF1ZW5jZSBudW1iZXIgY2Fs
Y3VsYXRpb24gcGVyLVZJRg0KICAgICAgYXRoOWtfaHRjOiBVc2UgVklGIGZyb20gdGhlIHBhY2tl
dCdzIGNvbnRyb2wgZGF0YQ0KICAgICAgYXRoOWtfaHRjOiBQcm90ZWN0IGFtcGR1X2FjdGlvbiB3
aXRoIGEgbXV0ZXgNCiAgICAgIGF0aDlrX2h0YzogTWFpbnRhaW4gaW5kaXZpZHVhbCBjb3VudGVy
cyBmb3IgaW50ZXJmYWNlcw0KICAgICAgYXRoOWtfaHRjOiBBbGxvdyBBUCBpbnRlcmZhY2UgdG8g
YmUgY3JlYXRlZA0KICAgICAgYXRoOWtfaHRjOiBDYWxjdWxhdGUgYW5kIHNldCB0aGUgSFcgb3Bt
b2RlDQogICAgICBhdGg5a19odGM6IEFkZCBBTkkgZm9yIEFQIG1vZGUNCiAgICAgIGF0aDlrX2h0
YzogQ29uZmlndXJlIGJlYWNvbiB0aW1lcnMgaW4gQVAgbW9kZQ0KICAgICAgYXRoOWtfaHRjOiBG
aXggVEJUVCBjYWxjdWxhdGlvbiBmb3IgSUJTUyBtb2RlDQogICAgICBhdGg5a19odGM6IEZpeCBo
b3N0IFJYIGluaXRpYWxpemF0aW9uDQogICAgICBhdGg5a19odGM6IEZpeCBSWCBmaWx0ZXJzDQog
ICAgICBhdGg5a19odGM6IEFkZCBkZWJ1ZyBjb2RlIHRvIHByaW50IGVuZHBvaW50IG1hcHBpbmcN
CiAgICAgIGF0aDlrX2h0YzogRml4IGVycm9yIHBhdGggaW4gVVJCIGFsbG9jYXRpb24NCiAgICAg
IGF0aDlrX2h0YzogSGFuZGxlIEJTU0lEL0FJRCBmb3IgbXVsdGlwbGUgaW50ZXJmYWNlcw0KDQpT
dmVuIEVja2VsbWFubiAoMTApOg0KICAgICAgYmF0bWFuLWFkdjogQ3JlYXRlIHJvdWdobHkgZXF1
YWwgc2l6ZWQgZnJhZ21lbnRzDQogICAgICBiYXRtYW4tYWR2OiBDYWxjdWxhdGUgY29ycmVjdCBz
aXplIGZvciBtZXJnZWQgcGFja2V0cw0KICAgICAgYmF0bWFuLWFkdjogUmVtb3ZlIGRhbmdsaW5n
IGRlY2xhcmF0aW9uIG9mIGhhc2hfcmVtb3ZlX2VsZW1lbnQNCiAgICAgIGJhdG1hbi1hZHY6IFJl
bW92ZSB1bnVzZWQgZGVmaW5pdGlvbnMNCiAgICAgIGJhdG1hbi1hZHY6IFJlbW92ZSBkZWNsYXJh
dGlvbiBvZiBiYXRtYW5fc2tiX3JlY3YNCiAgICAgIGJhdG1hbi1hZHY6IFJlbW92ZSB1bnVzZWQg
dmFyaWFibGVzDQogICAgICBiYXRtYW4tYWR2OiBVcGRhdGUgY29weXJpZ2h0IHllYXJzDQogICAg
ICBiYXRtYW4tYWR2OiBNZXJnZSBSRUFETUUgb2YgdjIwMTEuMC4wIHJlbGVhc2UNCiAgICAgIGJh
dG1hbi1hZHY6IFVzZSBzdWNjZXNzaXZlIHNlcXVlbmNlIG51bWJlcnMgZm9yIGZyYWdtZW50cw0K
ICAgICAgYmF0bWFuLWFkdjogRGlzYWxsb3cgcmVndWxhciBpbnRlcmZhY2UgYXMgbWVzaCBkZXZp
Y2UNCg0KU3p5bW9uIEphbmMgKDEzKToNCiAgICAgIEJsdWV0b290aDogVXNlICNpbmNsdWRlIDxs
aW51eC91YWNjZXNzLmg+IGluc3RlYWQgb2YgPGFzbS91YWNjZXNzLmg+DQogICAgICBCbHVldG9v
dGg6IENsZWFuIHVwIGhjaV9zbmlmZl9zdWJyYXRlX2V2dCBmdW5jdGlvbg0KICAgICAgQmx1ZXRv
b3RoOiBGaXggc29tZSBjb2RlIHN0eWxlIGlzc3VlcyBpbiBoY2lfY29yZS5oDQogICAgICBCbHVl
dG9vdGg6IEZpeCBzb21lIGNvZGUgc3R5bGUgaXNzdWVzIGluIGhjaV9jb3JlLmMNCiAgICAgIEJs
dWV0b290aDogRml4IHNvbWUgY29kZSBzdHlsZSBpc3N1ZXMgaW4gaGNpX2V2ZW50LmMNCiAgICAg
IEJsdWV0b290aDogVXNlIHByb3BlciBjb21tYW5kIHN0cnVjdHVyZSBpbiByZW1vdmVfdXVpZA0K
ICAgICAgQmx1ZXRvb3RoOiBNb3ZlIGluZGV4IHRvIGNvbW1vbiBoZWFkZXIgaW4gbWFuYWdlbWVu
dCBpbnRlcmZhY2UNCiAgICAgIEJsdWV0b290aDogVmFsaWRhdGUgZGF0YSBzaXplIGJlZm9yZSBh
Y2Nlc3NpbmcgbWdtdCBjb21tYW5kcw0KICAgICAgQmx1ZXRvb3RoOiBGaXggcG9zc2libGUgTlVM
TCBwb2ludGVyIGRlcmVmZXJlbmNlIGluIGNtZF9jb21wbGV0ZQ0KICAgICAgQmx1ZXRvb3RoOiBM
b2cgYWxsIHBhcmFtZXRlcnMgaW4gY21kX3N0YXR1cyBmb3IgZWFzaWVyIGRlYnVnZ2luZw0KICAg
ICAgQmx1ZXRvb3RoOiBSZW1vdmUgdW51c2VkIGNvZGUgZnJvbSBnZXRfY29ubmVjdGlvbnMNCiAg
ICAgIEJsdWV0b290aDogVXNlIHZhcmlhYmxlIG5hbWUgaW5zdGVhZCBvZiB0eXBlIGluIHNpemVv
ZigpDQogICAgICBCbHVldG9vdGg6IEZpeCBzb21lIHNtYWxsIGNvZGUgc3R5bGUgaXNzdWVzIGlu
IG1nbXQuYw0KDQpUaG9tYXMgQ2hvdSAoMSk6DQogICAgICBzbWM5MXg6IGFkZCBkZXZpY2V0cmVl
IHN1cHBvcnQNCg0KVGhvbWFzIEdsZWl4bmVyICgxKToNCiAgICAgIGdlbmlycTogRml4IGFmZmlu
aXR5IG5vdGlmaWVyIGZhbGxvdXQNCg0KVGhvbWFzIEdyYWYgKDMpOg0KICAgICAgbmV0ZmlsdGVy
OiBhdWRpdCB0YXJnZXQgdG8gcmVjb3JkIGFjY2VwdGVkL2Ryb3BwZWQgcGFja2V0cw0KICAgICAg
bmV0ZmlsdGVyOiBjcmVhdGUgYXVkaXQgcmVjb3JkcyBmb3IgeF90YWJsZXMgcmVwbGFjZXMNCiAg
ICAgIG5ldGZpbHRlciBlYnRhYmxlczogZml4IHh0X0FVRElUIHRvIHdvcmsgd2l0aCBlYnRhYmxl
cw0KDQpUaG9tYXMgSmFjb2IgKDIpOg0KICAgICAgbmV0ZmlsdGVyOiB4dF9pcHJhbmdlOiB0eXBv
IGluIElQdjQgbWF0Y2ggZGVidWcgcHJpbnQgY29kZQ0KICAgICAgbmV0ZmlsdGVyOiB4dF9pcHJh
bmdlOiBhZGQgSVB2NiBtYXRjaCBkZWJ1ZyBwcmludCBjb2RlDQoNClRob21hcyBMYW5nZSAoMSk6
DQogICAgICBEYXZpbmNpOiBEbyBub3QgcmVzZXQgRU1BQyBUWCBvdmVycnVucyBjb3VudGVyIG9u
IHJlYWQNCg0KVGluZ2dvbmcgV2FuZyAoMSk6DQogICAgICBpcHZzOiBmaXggdGltZXIgaW4gZ2V0
X2N1cnJfc3luY19idWZmDQoNClRvbSBIZXJiZXJ0ICgxKToNCiAgICAgIGJueDJ4OiBTdXBwb3J0
IGZvciBtYW5hZ2luZyBSWCBpbmRpcmVjdGlvbiB0YWJsZQ0KDQpVcnN1bGEgQnJhdW4gKDEpOg0K
ICAgICAgcWV0aDogcmVtb3ZlIG5lZWRsZXNzIElQQS1jb21tYW5kcyBpbiBvZmZsaW5lDQoNClV3
ZSBLbGVpbmUtS8O2bmlnICgxNSk6DQogICAgICBuZXQvZmVjOiBubyBuZWVkIHRvIGNhc3QgYXJn
dW1lbnRzIGZvciBtZW1jcHkNCiAgICAgIG5ldC9mZWM6IHJlbGVhc2UgbWVtX3JlZ2lvbiByZXF1
ZXN0ZWQgaW4gcHJvYmUgaW4gZXJyb3IgcGF0aCBhbmQgcmVtb3ZlDQogICAgICBuZXQvZmVjOiBk
b24ndCBmcmVlIGFuIGlycSB0aGF0IGZhaWxlZCB0byBiZSByZXF1ZXN0ZWQNCiAgICAgIG5ldC9m
ZWM6IG5vIG5lZWQgdG8gY2hlY2sgZm9yIHZhbGlkaXR5IG9mIG5kZXYgaW4gc3VzcGVuZCBhbmQg
cmVzdW1lDQogICAgICBuZXQvZmVjOiBubyBuZWVkIHRvIG1lbXplcm8gcHJpdmF0ZSBkYXRhDQog
ICAgICBuZXQvZmVjOiBwdXQgdGhlIGlvcmVtYXAgY29va2llIGltbWVkaWF0ZWx5IGludG8gYSB2
b2lkIF9faW9tZW0gcG9pbnRlcg0KICAgICAgbmV0L2ZlYzogY29uc29saWRhdGUgYWxsIGkuTVgg
b3B0aW9ucyB0byBDT05GSUdfQVJNDQogICAgICBuZXQvZmVjOiBhZGQgcGh5X3N0b3AgdG8gZmVj
X2VuZXRfY2xvc2UNCiAgICAgIG5ldC9mZWM6IGNvbnNpc3Rlbmx5IG5hbWUgc3RydWN0IG5ldF9k
ZXZpY2UgcG9pbnRlcnMgIm5kZXYiDQogICAgICBuZXQvZmVjOiBzb21lIHdoaXRlc3BhY2UgY2xl
YW51cA0KICAgICAgbmV0L2ZlYzogcmVvcmRlciBmdW5jdGlvbnMgYSBiaXQgYWxsb3dzIHJlbW92
aW5nIGZvcndhcmQgZGVjbGFyYXRpb25zDQogICAgICBuZXQvZmVjOiBwcm92aWRlIGRldmljZSBm
b3IgZG1hIGZ1bmN0aW9ucyBhbmQgbWF0Y2hpbmcgc2l6ZXMgZm9yIG1hcCBhbmQgdW5tYXANCiAg
ICAgIG5ldC9mZWM6IHBvc3Rwb25lIHVuc2V0dGluZyBkcml2ZXIgZGF0YSB1bnRpbCB0aGUgaGFy
ZHdhcmUgaXMgc3RvcHBlZA0KICAgICAgbmV0L2ZlYzogZW5hYmxlIGZsb3cgY29udHJvbCBhbmQg
bGVuZ3RoIGNoZWNrIG9uIGVuZXQtbWFjDQogICAgICBuZXQvZmVjOiByZW1vdmUgdW51c2VkIGRy
aXZlciBkYXRhDQoNClZhc2FudGhha3VtYXIgVGhpYWdhcmFqYW4gKDMpOg0KICAgICAgYXRoOWs6
IEltcGxlbWVudCBvcF9mbHVzaCgpDQogICAgICBhdGg5azogQWRkIGEgZGVidWdmcyBpbnRlcmZh
Y2UgdG8gZHVtcCBjaGlwIHJlZ2lzdGVycw0KICAgICAgYXRoOWtfaHc6IFJlYWQgbm9pc2UgZmxv
b3Igb25seSBmb3IgYXZhaWxhYmxlIGNoYWlucyBmb3IgQVI5MDAzDQoNClZhc2FudGh5IEtvbGx1
cmkgKDkpOg0KICAgICAgZW5pYzogQ2xlYW4gdXA6IE9yZ2FuaXplIGRldmNtZCB3cmFwcGVyIHJv
dXRpbmVzDQogICAgICBlbmljOiBCdWcgRml4OiBGaXggcmV0dXJuIHZhbHVlcyBvZiBlbmljX2Fk
ZC9kZWxfc3RhdGlvbl9hZGRyIHJvdXRpbmVzDQogICAgICBlbmljOiBCdWcgRml4OiBSZW9yZGVy
IGZpcm13YXJlIGRldmNtZHMgLSBDTURfSU5JVCBhbmQgQ01EX0lHX1ZMQU5fUkVXUklURV9NT0RF
DQogICAgICBlbmljOiBDbGVhbiB1cDogUmVtb3ZlIHN1cHBvcnQgZm9yIGFuIG9sZGVyIHZlcnNp
b24gb2YgaGFyZHdhcmUNCiAgICAgIGVuaWM6IFVwZGF0ZSBNQUlOVEFJTkVSUw0KICAgICAgZW5p
YzogQnVnIGZpeDogUmVzZXQgZHJpdmVyIGNvdW50IG9mIHJlZ2lzdGVyZWQgdW5pY2FzdCBhZGRy
ZXNzZXMgdG8gemVybyBkdXJpbmcgZGV2aWNlIHJlc2V0DQogICAgICBlbmljOiBDbGVhbiB1cDog
UmVtb3ZlIGEgbm90IG5lZWRlZCAjaWZkZWYNCiAgICAgIGVuaWM6IEFsd2F5cyB1c2Ugc2luZ2xl
IHRyYW5zbWl0IGFuZCBzaW5nbGUgcmVjZWl2ZSBoYXJkd2FyZSBxdWV1ZXMgcGVyIGRldmljZQ0K
ICAgICAgZW5pYzogU3VwcG9ydCBuZXdlciB2ZXJzaW9uIG9mIGZpcm13YXJlIGRldmNtZCBDTURf
TUNQVV9GV19JTkZPDQoNClZhc2lsaXkgS3VsaWtvdiAoNyk6DQogICAgICBCbHVldG9vdGg6IGwy
Y2FwOiBmaXggMSBieXRlIGluZm9sZWFrIHRvIHVzZXJzcGFjZQ0KICAgICAgQmx1ZXRvb3RoOiBi
bmVwOiBmaXggYnVmZmVyIG92ZXJmbG93DQogICAgICBCbHVldG9vdGg6IHNjbzogZml4IGluZm9y
bWF0aW9uIGxlYWsgdG8gdXNlcnNwYWNlDQogICAgICBicmlkZ2U6IG5ldGZpbHRlcjogZml4IGlu
Zm9ybWF0aW9uIGxlYWsNCiAgICAgIG5ldGZpbHRlcjogYXJwX3RhYmxlczogZml4IGluZm9sZWFr
IHRvIHVzZXJzcGFjZQ0KICAgICAgbmV0ZmlsdGVyOiBpcF90YWJsZXM6IGZpeCBpbmZvbGVhayB0
byB1c2Vyc3BhY2UNCiAgICAgIGlwdjY6IG5ldGZpbHRlcjogaXA2X3RhYmxlczogZml4IGluZm9s
ZWFrIHRvIHVzZXJzcGFjZQ0KDQpWYXNpbHkgS2hvcnV6aGljayAoMik6DQogICAgICBsaWJlcnRh
c19zcGk6IFVzZSB3b3JrcXVldWUgaW4gaHdfaG9zdF90b19jYXJkDQogICAgICBsaWJlcnRhczog
UHJlcGFyZSBzdHVmZiBmb3IgaWZfc3BpLmMgcG0gc3VwcG9ydA0KDQpWaWxsZSBUZXJ2byAoMTAp
Og0KICAgICAgQmx1ZXRvb3RoOiBBZGQgbG93IGVuZXJneSBjb21tYW5kcyBhbmQgZXZlbnRzDQog
ICAgICBCbHVldG9vdGg6IEFkZCBMRSBjb25uZWN0IHN1cHBvcnQNCiAgICAgIEJsdWV0b290aDog
VXNlIExFIGJ1ZmZlcnMgZm9yIExFIHRyYWZmaWMNCiAgICAgIEJsdWV0b290aDogQWRkIExFIGNv
bm5lY3Rpb24gc3VwcG9ydCB0byBMMkNBUA0KICAgICAgQmx1ZXRvb3RoOiBBZGQgc2VydmVyIHNv
Y2tldCBzdXBwb3J0IGZvciBMRSBjb25uZWN0aW9uDQogICAgICBCbHVldG9vdGg6IERvIG5vdCBz
ZW5kIGRpc2Nvbm4gY29tYW5kIG92ZXIgTEUgbGlua3MNCiAgICAgIEJsdWV0b290aDogVHJlYXQg
TEUgYW5kIEFDTCBsaW5rcyBzZXBhcmF0ZWx5IG9uIHRpbWVvdXQNCiAgICAgIEJsdWV0b290aDog
QWRkIFNNUCBjb21tYW5kIHN0cnVjdHVyZXMNCiAgICAgIEJsdWV0b290aDogVXNlIHByb3BlciB0
aW1lciBmb3IgaGNpIGNvbW1hbmQgdGltb3V0DQogICAgICBCbHVldG9vdGg6IFVzZSBFUlJfUFRS
IGFzIHJldHVybiBlcnJvciBmcm9tIGhjaV9jb25uZWN0DQoNClZpbmljaXVzIENvc3RhIEdvbWVz
ICgxKToNCiAgICAgIEJsdWV0b290aDogRml4IGluaXRpYXRlZCBMRSBjb25uZWN0aW9ucw0KDQpW
aXZlayBOYXRhcmFqYW4gKDE1KToNCiAgICAgIGF0aDlrX2h3OiBBZGQgYSBmdW5jdGlvbiB0byBy
ZWFkIHNxc3VtX2R2Yy4NCiAgICAgIGF0aDlrOiBGaXggYSBQTEwgaGFuZyBpc3N1ZSBvYnNlcnZl
ZCB3aXRoIEFSOTQ4NS4NCiAgICAgIGF0aDlrX2h3OiBERFJfUExMIGFuZCBCQl9QTEwgbmVlZCBj
b3JyZWN0IHNldHRpbmcuDQogICAgICBhdGg5azogRml4IGEgbG9ja2luZyByZWxhdGVkIGlzc3Vl
Lg0KICAgICAgYXRoOWtfaHc6IFVwZGF0ZSBQTVUgc2V0dGluZyB0byBpbXByb3ZlIHJpcHBsZSBp
c3N1ZSBmb3IgQVI5NDg1Lg0KICAgICAgYXRoOWtfaHRjOiBGaXggYSBjb21waWxhdGlvbiB3YXJu
aW5nLg0KICAgICAgYXRoOWtfaHc6IFVwZGF0ZXMgZm9yIEFSOTQ4NSAxLjEgY2hpcHNldHMuDQog
ICAgICBtYWM4MDIxMTogQ2xlYXIgUFMgcmVsYXRlZCBmbGFnIG9uIGRpc2FibGluZyBwb3dlciBz
YXZlLg0KICAgICAgbWFjODAyMTE6IEZpeCBhIHJhY2Ugb24gZW5hYmxpbmcgcG93ZXIgc2F2ZS4N
CiAgICAgIGF0aDlrX2h3OiBGaXggcGNpZV9zZXJkZXMgc2V0dGluZyBmb3IgQVI5NDg1IDEuMSB2
ZXJzaW9uLg0KICAgICAgYXRoOWs6IENhbmNlbCBwbGxfd29yayB3aGlsZSBkaXNhYmxpbmcgcmFk
aW8uDQogICAgICBhdGg5azogRml4IGNvbXBpbGF0aW9uIHdhcm5pbmcuDQogICAgICBhdGg5a19o
dzogSW1wcm92ZSBpZGxlIHBvd2VyIGNvbnN1bXB0aW9uIGZvciBBUjk0ODUuDQogICAgICBhdGg5
a19odzogRml4IFBMTCBpbml0aWFsaXphdGlvbiBmb3IgQVI5NDg1Lg0KICAgICAgYXRoOWtfaHc6
IEluY3JlYXNlIHRoZSB3YWl0IGNvdW50IGZvciBuZiBsb2FkLg0KDQpWbGFkIERvZ2FydSAoNCk6
DQogICAgICBuZXRfZGV2aWNlOiBhZGQgc3VwcG9ydCBmb3IgbmV0d29yayBkZXZpY2UgZ3JvdXBz
DQogICAgICBuZXRsaW5rOiBzdXBwb3J0IHNldHRpbmcgZGV2Z3JvdXAgcGFyYW1ldGVycw0KICAg
ICAgbmV0OiBhZGQgc3lzZnMgZW50cnkgZm9yIGRldmljZSBncm91cA0KICAgICAgbmV0ZGV2aWNl
OiBtYWtlIGluaXRpYWwgZ3JvdXAgdmlzaWJsZSB0byB1c2Vyc3BhY2UNCg0KVmxhZGlzbGF2IFpv
bG90YXJvdiAoMyk6DQogICAgICBibngyeCwgY25pYzogQ29uc29saWRhdGUgaVNDU0kvRkNvRSBz
aGFyZWQgbWVtIGxvZ2ljIGluIGJueDJ4DQogICAgICBibngyeDogTVRVIGZvciBGQ29FIEwyIHJp
bmcNCiAgICAgIGJueDJ4OiBQcm9wZXIgbmV0ZGV2LT5uZG9fc2V0X3J4X21vZGUoKSBpbXBsZW1l
bnRhdGlvbi4NCg0KV2V5LVlpIEd1eSAoMzIpOg0KICAgICAgbWFjODAyMTE6IG1lc2ggb25seSBw
YXJhbWV0ZXIgbXBwYXRoIG1heWJlIHVudXNlZA0KICAgICAgaXdsd2lmaTogdXNlIG1hYzgwMjEx
IHRocm91Z2hwdXQgdHJpZ2dlcg0KICAgICAgaXdsYWduOiByZW1vdmUgcmVmZXJlbmNlIHRvIGdl
bjJhIGFuZCBnZW4yYg0KICAgICAgaXdsYWduOiBhZGQgMjAwMCBzZXJpZXMgRUVQUk9NIHZlcnNp
b24NCiAgICAgIGl3bGFnbjogMjAwMCBzZXJpZXMgZGV2aWNlcyBzdXBwb3J0DQogICAgICBpd2xh
Z246IGFkZCAyMDAwIHNlcmllcyBwY2kgaWQNCiAgICAgIGl3bGFnbjogYWRkIDIwMDAgc2VyaWVz
IHRvIEtjb25maWcNCiAgICAgIGl3bGFnbjogcmVtb3ZlIEdlbjIgZnJvbSBLY29uZmlnDQogICAg
ICBpd2x3aWZpOiByZW1vdmUgZzIgZnJvbSBjc3IgaHcgcmV2DQogICAgICBpd2x3aWZpOiBhZGQg
aHcgcmV2IGZvciAyMDAwIHNlcmllcyBkZXZpY2VzDQogICAgICBpd2x3aWZpOiBpbml0aWFsIFAy
UCBzdXBwb3J0DQogICAgICBpd2x3aWZpOiBjaGVjayB1Y29kZSBsb2FkaW5nIGVycm9yIGFuZCBy
ZXN0YXJ0DQogICAgICBpd2xhZ246IGFkanVzdCByYXRlIHRhYmxlDQogICAgICBpd2xhZ246IGFk
ZCBJUSBpbnZlcnNpb24gc3VwcG9ydCBmb3IgMjAwMCBzZXJpZXMgZGV2aWNlcw0KICAgICAgaXds
d2lmaTogYWx3YXlzIHN1cHBvcnQgaWRsZSBtb2RlIGZvciBhZ24gZGV2aWNlcw0KICAgICAgaXds
YWduOiB1c2UgMjAzMCBtYWNybyBmb3IgMjAzMCBkZXZpY2VzDQogICAgICBpd2xhZ246IHJlbW92
ZSB1bnN1cHBvcnRlZCBCVCBTQ08gY29tbWFuZA0KICAgICAgaWl3bGFnbjogcmVtb3ZlIHVudXNl
ZCBwYXJhbWV0ZXINCiAgICAgIGl3bHdpZmk6IGZpeCBjb21waWxpbmcgZXJyb3Igd2l0aCBkaWZm
ZXJlbnQgY29uZmlndXJhdGlvbg0KICAgICAgaXdsYWduOiBkb25vdCBwcm9jZXNzIGJ0IHVwZGF0
ZSB3aGVuIGJ0IGNvZXggZGlzYWJsZQ0KICAgICAgaXdsYWduOiBoYW5kbGUgYnQgZGVmZXIgd29y
ayBpbiAyMDAwIHNlcmllcw0KICAgICAgaXdsd2lmaTogTGltaXQgbnVtYmVyIG9mIGZpcm13YXJl
IHJlbG9hZA0KICAgICAgaXdsd2lmaTogTG9hZGluZyBjb3JyZWN0IHVDb2RlIGFnYWluIHdoZW4g
ZmFpbCB0byBsb2FkDQogICAgICBpd2x3aWZpOiBlbmFibGUgMi13aXJlIGJ0IGNvZXggc3VwcG9y
dCBmb3Igbm9uLWNvbWJvIGRldmljZQ0KICAgICAgaXdsd2lmaTogc3BsaXQgdGhlIGRyaXZlcnMg
Zm9yIGFnbiBhbmQgbGVnYWN5IGRldmljZXMgMzk0NS80OTY1DQogICAgICBSZXZlcnQgIml3bHdp
Zmk6IHNwbGl0IHRoZSBkcml2ZXJzIGZvciBhZ24gYW5kIGxlZ2FjeSBkZXZpY2VzIDM5NDUvNDk2
NSINCiAgICAgIGl3bHdpZmk6IHNwbGl0IHRoZSBkcml2ZXJzIGZvciBhZ24gYW5kIGxlZ2FjeSBk
ZXZpY2VzIDM5NDUvNDk2NQ0KICAgICAgaXdsYWduOiBuYW1lIGNoYW5nZSBmb3IgQlQgY29uZmln
IGNvbW1hbmQNCiAgICAgIGl3bGFnbjogYWRkIGJ0IGNvbmZpZyBzdHJ1Y3R1cmUgc3VwcG9ydCBm
b3IgMjAwMCBzZXJpZXMNCiAgICAgIGl3bGFnbjogYWRkIEJUIFNlc3Npb24gQWN0aXZpdHkgMiBV
QVJUIG1lc3NhZ2UgKEJUIC0+IFdpRmkpDQogICAgICBpd2xhZ246IHNwbGl0IEJUIHBhZ2UgYW5k
IGlucXVpcnkgVUFSVCBtc2cNCiAgICAgIGl3bGFnbjogZW5hYmxlIEJUIHNlc3Npb24gMiB0eXBl
IFVBUlQgZm9yIDIwMDAgc2VyaWVzDQoNCldpbGx5IFRhcnJlYXUgKDQpOg0KICAgICAgcnRsd2lm
aTogRml4IGJ1aWxkIHdoZW4gUlRMODE5MkNVIGlzIHNlbGVjdGVkLCBidXQgUlRMODE5MkNFIGlz
IG5vdA0KICAgICAgcnRsODE5MmN1OiBmaXggYnVpbGQgZXJyb3IgKHZtYWxsb2MvdmZyZWUgdW5k
ZWZpbmVkKQ0KICAgICAgcnRsd2lmaTogTGV0IHJ0bHdpZmkgYnVpbGQgd2hlbiBQQ0kgaXMgbm90
IGVuYWJsZWQNCiAgICAgIHJ0bHdpZmk6IEVsaW1pbmF0ZSB1ZGVsYXkgY2FsbHMgd2l0aCB0b28g
bGFyZ2UgdmFsdWVzDQoNCldvamNpZWNoIER1Ym93aWsgKDIpOg0KICAgICAgYXRoNWs6IEZpeCBy
ZXR1cm4gY29kZXMgZm9yIGVlcHJvbSByZWFkIGZ1bmN0aW9ucy4NCiAgICAgIGF0aDVrOiBFbmFi
bGUgQVIyMzE1IGNoaXBzZXQgcmVjb2duaXRpb24NCg0KWGlhb3RpYW4gRmVuZyAoMSk6DQogICAg
ICBuZXQ6IHJlbmFtZSBncm91cCBzeXNmcyBlbnRyeSB0byBuZXRkZXZfZ3JvdXANCg0KWWFuaXYg
Um9zbmVyICgxMCk6DQogICAgICBibngyeDogRml4IGxpbmUgaW5kZW50YXRpb24NCiAgICAgIGJu
eDJ4OiBSZW5hbWUgQ0w0NSBtYWNybw0KICAgICAgYm54Mng6IFNldCBjb21tZW50cyBhY2NvcmRp
bmcgdG8gcHJlZmVycmVkIExpbnV4IHN0eWxlDQogICAgICBibngyeDogRml4IGNvbXBpbGF0aW9u
IHdhcm5pbmcgbWVzc2FnZXMNCiAgICAgIGJueDJ4OiBBZGQgYW5kIGNoYW5nZSBzb21lIG5ldF9k
ZXYgbWVzc2FnZXMNCiAgICAgIGJueDJ4OiBFbmhhbmNlIFNGUCsgbW9kdWxlIGNvbnRyb2wNCiAg
ICAgIGJueDJ4OiBBZGQgc3VwcG9ydCBmb3IgbmV3IFBIWSBCQ004NDgzMw0KICAgICAgYm54Mng6
IEFkZCBDTVMgZnVuY3Rpb25hbGl0eSBmb3IgODQ4eDMNCiAgICAgIGJueDJ4OiBSZW1vdmUgc3Vw
cG9ydCBmb3IgZW11bGF0aW9uL0ZQR0ENCiAgICAgIGJueDJ4OiBVcGRhdGUgYm54MnggdmVyc2lv
biB0byAxLjYyLjExLTANCg0KWWkgWm91ICg0KToNCiAgICAgIG5ldDogYWRkIG5kb19mY29lX2Rk
cF90YXJnZXQoKSB0byBzdXBwb3J0IEZDb0UgRERQIGluIHRhcmdldCBtb2RlDQogICAgICB2bGFu
OiBhZGQgc3VwcG9ydCB0byBuZG9fZmNvZV9kZHBfdGFyZ2V0KCkNCiAgICAgIGl4Z2JlOiBhZGQg
c3VwcG9ydCB0byBGQ29FIEREUCBpbiB0YXJnZXQgbW9kZQ0KICAgICAgbmV0OiBhZGQgcHJvcGVy
IGRvY3VtZW50YXRpb24gZm9yIHByZXZpb3VzbHkgYWRkZWQgbmV0X2RldmljZV9vcHMgZm9yIEZD
b0UNCg0KWW9zaGloaXJvIFNoaW1vZGEgKDYpOg0KICAgICAgbmV0OiBzaF9ldGg6IG1vZGlmeSB0
aGUgZGVmaW5pdGlvbnMgb2YgcmVnaXN0ZXINCiAgICAgIG5ldDogc2hfZXRoOiByZW1vdmUgdGhl
IFNIX1RTVV9BRERSDQogICAgICBuZXQ6IHNoX2V0aDogcmVtb3ZlIGFsbW9zdCAjaWZkZWYgb2Yg
U0g3NzYzDQogICAgICBuZXQ6IHNoX2V0aDogbW9kaWZ5IHRoZSBQSFlfSU5URVJGQUNFX01PREUN
CiAgICAgIG5ldDogc2hfZXRoOiBhZGQgc3VwcG9ydCBmb3IgU0g3NzU3J3MgR0VUSEVSDQogICAg
ICBuZXQ6IHNoX2V0aDogYWRkIHNldF9tZGlvX2dhdGUgaW4gYmJfaW5mbw0KDQphbWl0IHNhbGVj
aGEgKDEpOg0KICAgICAgcWxjbmljOiBmaXggY2hlY2tzIGZvciBhdXRvX2Z3X3Jlc2V0DQoNCmZy
YW7Dp29pcyByb21pZXUgKDMpOg0KICAgICAgYXRsMWM6IHJlbW92ZSBwcml2YXRlICNkZWZpbmUu
DQogICAgICBhdGwxZTogcmVtb3ZlIHByaXZhdGUgI2RlZmluZS4NCiAgICAgIHZpYS12ZWxvY2l0
eTogZml4IHRoZSBXT0wgYnVnIG9uIDEwMDBNIGZ1bGwgZHVwbGV4IGZvcmNlZCBtb2RlLg0KDQpo
YXJ0bGV5cyAoMSk6DQogICAgICBwaHk6IFJlbW92ZSB1bm5lZWRlZCBkZXBlbmRzIG9uIFBIWUxJ
Qg0KDQpyb2VsIGtsdWluICgxKToNCiAgICAgIGNhbjogd3JvbmcgaW5kZXggdXNlZCBpbiBpbm5l
ciBsb29wDQoNCnN0ZXBoZW4gaGVtbWluZ2VyICgyMyk6DQogICAgICBzZnE6IGRlYWRsb2NrIGlu
IGVycm9yIHBhdGgNCiAgICAgIHNjaGVkOiBDSE9LZSBmbG93IHNjaGVkdWxlcg0KICAgICAgY2xz
X3UzMjogZml4IHNwYXJzZSB3YXJuaW5ncw0KICAgICAgc29ja2V0OiBzdXBwcmVzcyBzcGFyc2Ug
d2FybmluZ3MNCiAgICAgIGF0bDFbY2VdOiBmaXggc3BhcnNlIHdhcm5pbmdzDQogICAgICBhZmtl
eTogYWRkIHNwYXJzZSBhbm5vdGF0aW9uIGFib3V0IHJjdQ0KICAgICAgbXFwcmlvOiBjbGVhbnVw
cw0KICAgICAgZW1fbWV0YTogZml4IHNwYXJzZSB3YXJuaW5nDQogICAgICBuZXRlbTogY2xlYW51
cCBkdW1wIGNvZGUNCiAgICAgIG5ldGVtOiB1c2Ugdm1hbGxvYyBmb3IgZGlzdHJpYnV0aW9uIHRh
YmxlDQogICAgICBuZXRlbTogZGVmaW5lIE5FVEVNX0RJU1RfTUFYDQogICAgICBSZXZlcnQgInNj
aF9uZXRlbTogUmVtb3ZlIGNsYXNzZnVsIGZ1bmN0aW9uYWxpdHkiDQogICAgICBuZXRlbTogcmV2
aXNlZCBjb3JyZWxhdGVkIGxvc3MgZ2VuZXJhdG9yDQogICAgICBuZXRlbTogdXBkYXRlIHZlcnNp
b24gYW5kIGNsZWFudXANCiAgICAgIGJvbmRpbmc6IGZpeCBzcGFyc2Ugd2FybmluZw0KICAgICAg
cWxhM3h4eDogYWRkIG1pc3NpbmcgX19pb21lbSBhbm5vdGF0aW9uDQogICAgICBicmlkZ2U6IGNv
bnRyb2wgY2FycmllciBiYXNlZCBvbiBwb3J0cyBvbmxpbmUNCiAgICAgIGJyaWRnZTogc2tpcCBm
b3J3YXJkaW5nIGRlbGF5IGlmIG5vdCB1c2luZyBTVFANCiAgICAgIHRjcDogZml4IFJUVCBmb3Ig
cXVpY2sgcGFja2V0cyBpbiBjb25nZXN0aW9uIGNvbnRyb2wNCiAgICAgIHRjcF9jdWJpYzogZml4
IGNvbXBhcmlzb24gb2YgamlmZmllcw0KICAgICAgdGNwX2N1YmljOiBtYWtlIGFjayB0cmFpbiBk
ZWx0YSB2YWx1ZSBhIHBhcmFtZXRlcg0KICAgICAgdGNwX2N1YmljOiBmaXggY2xvY2sgZGVwZW5k
ZW5jeQ0KICAgICAgdGNwX2N1YmljOiBlbmFibGUgaGlnaCByZXNvbHV0aW9uIGFjayB0aW1lIGlm
IG5lZWRlZA0KDQogRG9jdW1lbnRhdGlvbi9mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUudHh0ICAg
ICAgICAgfCAgIDI3ICsNCiBEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvYmF0bWFuLWFkdi50eHQg
ICAgICAgICAgICB8ICAgMTYgKy0NCiBEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvYm9uZGluZy50
eHQgICAgICAgICAgICAgICB8ICAgMjYgKy0NCiBEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvaXAt
c3lzY3RsLnR4dCAgICAgICAgICAgICB8ICAgMTEgKw0KIERvY3VtZW50YXRpb24vbmV0d29ya2lu
Zy9waG9uZXQudHh0ICAgICAgICAgICAgICAgIHwgICA2NyArLQ0KIE1BSU5UQUlORVJTICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArLQ0KIGFyY2gvc2gvaW5j
bHVkZS9hc20vc2hfZXRoLmggICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArDQogY3J5cHRv
L01ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQog
Y3J5cHRvL2F1dGhlbmNlc24uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgODM1
ICsrKysNCiBkcml2ZXJzL2Jsb2NrL2RyYmQvZHJiZF9ubC5jICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKy0NCiBkcml2ZXJzL2JsdWV0b290aC9hdGgzay5jICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAyODcgKystDQogZHJpdmVycy9ibHVldG9vdGgvYnR1c2IuYyAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgIDEzICstDQogZHJpdmVycy9ibHVldG9vdGgvaGNpX2xkaXNjLmMg
ICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsNCiBkcml2ZXJzL2luZmluaWJhbmQvY29yZS9h
ZGRyLmMgICAgICAgICAgICAgICAgICAgICB8ICAgMzEgKy0NCiBkcml2ZXJzL2luZmluaWJhbmQv
aHcvY3hnYjMvaXdjaF9jbS5jICAgICAgICAgICAgICB8ICAgMjIgKy0NCiBkcml2ZXJzL2luZmlu
aWJhbmQvaHcvY3hnYjQvY20uYyAgICAgICAgICAgICAgICAgICB8ICAgMjIgKy0NCiBkcml2ZXJz
L2luZmluaWJhbmQvaHcvbmVzL25lcy5jICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKy0NCiBk
cml2ZXJzL2luZmluaWJhbmQvaHcvbmVzL25lc19jbS5jICAgICAgICAgICAgICAgICB8ICAgIDgg
Ky0NCiBkcml2ZXJzL21kL2RtLWxvZy11c2Vyc3BhY2UtdHJhbnNmZXIuYyAgICAgICAgICAgICB8
ICAgIDIgKy0NCiBkcml2ZXJzL25ldC9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgOTAgKy0NCiBkcml2ZXJzL25ldC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgIDIgKw0KIGRyaXZlcnMvbmV0L2F0bDFjL2F0bDFjX2h3LmMgICAgICAg
ICAgICAgICAgICAgICAgIHwgICAxNSArLQ0KIGRyaXZlcnMvbmV0L2F0bDFjL2F0bDFjX2h3Lmgg
ICAgICAgICAgICAgICAgICAgICAgIHwgICA0MyArLQ0KIGRyaXZlcnMvbmV0L2F0bDFjL2F0bDFj
X21haW4uYyAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArLQ0KIGRyaXZlcnMvbmV0L2F0bDFl
L2F0bDFlX2V0aHRvb2wuYyAgICAgICAgICAgICAgICAgIHwgICAxMiArLQ0KIGRyaXZlcnMvbmV0
L2F0bDFlL2F0bDFlX2h3LmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAzNCArLQ0KIGRyaXZl
cnMvbmV0L2F0bDFlL2F0bDFlX2h3LmggICAgICAgICAgICAgICAgICAgICAgIHwgIDExMSArLQ0K
IGRyaXZlcnMvbmV0L2F0bDFlL2F0bDFlX21haW4uYyAgICAgICAgICAgICAgICAgICAgIHwgICAx
MCArLQ0KIGRyaXZlcnMvbmV0L2F0bHgvYXRsMS5jICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICA3NyArLQ0KIGRyaXZlcnMvbmV0L2F0bHgvYXRsMi5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L2F4ODg3OTYuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDgxMCArKy0tDQogZHJpdmVycy9uZXQvYmVuZXQvYmUuaCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDU1ICstDQogZHJpdmVycy9uZXQvYmVuZXQvYmVfY21k
cy5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjAyICstDQogZHJpdmVycy9uZXQvYmVuZXQv
YmVfY21kcy5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDk2ICstDQogZHJpdmVycy9uZXQv
YmVuZXQvYmVfZXRodG9vbC5jICAgICAgICAgICAgICAgICAgICAgfCAgIDg3ICstDQogZHJpdmVy
cy9uZXQvYmVuZXQvYmVfaHcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTEwICstDQog
ZHJpdmVycy9uZXQvYmVuZXQvYmVfbWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgNjIw
ICsrLS0NCiBkcml2ZXJzL25ldC9ibmEvYm5hZC5jICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAxMDggKy0NCiBkcml2ZXJzL25ldC9ibmEvYm5hZC5oICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDIgKy0NCiBkcml2ZXJzL25ldC9ibngyLmMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMTYgKy0NCiBkcml2ZXJzL25ldC9ibngyLmggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKy0NCiBkcml2ZXJzL25ldC9ibngyeC9ibngyeC5o
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzUgKy0NCiBkcml2ZXJzL25ldC9ibngyeC9i
bngyeF9jbW4uYyAgICAgICAgICAgICAgICAgICAgICB8ICAgNzAgKy0NCiBkcml2ZXJzL25ldC9i
bngyeC9ibngyeF9jbW4uaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKy0NCiBkcml2ZXJz
L25ldC9ibngyeC9ibngyeF9kY2IuYyAgICAgICAgICAgICAgICAgICAgICB8ICAxMzcgKy0NCiBk
cml2ZXJzL25ldC9ibngyeC9ibngyeF9kY2IuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUg
Ky0NCiBkcml2ZXJzL25ldC9ibngyeC9ibngyeF9ldGh0b29sLmMgICAgICAgICAgICAgICAgICB8
ICAgNTggKy0NCiBkcml2ZXJzL25ldC9ibngyeC9ibngyeF9oc2kuaCAgICAgICAgICAgICAgICAg
ICAgICB8ICAxMTQgKy0NCiBkcml2ZXJzL25ldC9ibngyeC9ibngyeF9saW5rLmMgICAgICAgICAg
ICAgICAgICAgICB8IDI1MjcgKysrKysrLS0tLS0NCiBkcml2ZXJzL25ldC9ibngyeC9ibngyeF9s
aW5rLmggICAgICAgICAgICAgICAgICAgICB8ICAgMzQgKy0NCiBkcml2ZXJzL25ldC9ibngyeC9i
bngyeF9tYWluLmMgICAgICAgICAgICAgICAgICAgICB8ICA2MDAgKystDQogZHJpdmVycy9uZXQv
Ym54MngvYm54MnhfcmVnLmggICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsNCiBkcml2ZXJz
L25ldC9ib25kaW5nL01ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKw0KIGRy
aXZlcnMvbmV0L2JvbmRpbmcvYm9uZF8zYWQuYyAgICAgICAgICAgICAgICAgICAgIHwgICAgMiAr
LQ0KIGRyaXZlcnMvbmV0L2JvbmRpbmcvYm9uZF9hbGIuYyAgICAgICAgICAgICAgICAgICAgIHwg
ICAgMiArLQ0KIGRyaXZlcnMvbmV0L2JvbmRpbmcvYm9uZF9tYWluLmMgICAgICAgICAgICAgICAg
ICAgIHwgIDYzOCArLS0NCiBkcml2ZXJzL25ldC9ib25kaW5nL2JvbmRfcHJvY2ZzLmMgICAgICAg
ICAgICAgICAgICB8ICAyNzUgKysNCiBkcml2ZXJzL25ldC9ib25kaW5nL2JvbmRfc3lzZnMuYyAg
ICAgICAgICAgICAgICAgICB8ICAgMjMgKy0NCiBkcml2ZXJzL25ldC9ib25kaW5nL2JvbmRpbmcu
aCAgICAgICAgICAgICAgICAgICAgICB8ICAxMTEgKy0NCiBkcml2ZXJzL25ldC9jYW4vS2NvbmZp
ZyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKw0KIGRyaXZlcnMvbmV0L2Nhbi9N
YWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArDQogZHJpdmVycy9uZXQv
Y2FuL2NfY2FuL0tjb25maWcgICAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICsNCiBkcml2ZXJz
L25ldC9jYW4vY19jYW4vTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICB8ICAgIDggKw0KIGRy
aXZlcnMvbmV0L2Nhbi9jX2Nhbi9jX2Nhbi5jICAgICAgICAgICAgICAgICAgICAgIHwgMTE1OCAr
KysrKw0KIGRyaXZlcnMvbmV0L2Nhbi9jX2Nhbi9jX2Nhbi5oICAgICAgICAgICAgICAgICAgICAg
IHwgICA4NiArDQogZHJpdmVycy9uZXQvY2FuL2NfY2FuL2NfY2FuX3BsYXRmb3JtLmMgICAgICAg
ICAgICAgfCAgMjE1ICsNCiBkcml2ZXJzL25ldC9jYW4vdXNiL2VzZF91c2IyLmMgICAgICAgICAg
ICAgICAgICAgICB8ICAgIDYgKy0NCiBkcml2ZXJzL25ldC9jbmljLmMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAyMDkgKy0NCiBkcml2ZXJzL25ldC9jbmljLmggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBkcml2ZXJzL25ldC9jbmljX2lmLmgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDggKy0NCiBkcml2ZXJzL25ldC9jczg5
eDAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTkgKy0NCiBkcml2ZXJzL25l
dC9jeGdiMy9jeGdiM19vZmZsb2FkLmMgICAgICAgICAgICAgICAgICB8ICAgIDUgKy0NCiBkcml2
ZXJzL25ldC9jeGdiNC9jeGdiNF9tYWluLmMgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQ0K
IGRyaXZlcnMvbmV0L2RhdmluY2lfZW1hYy5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg
MiArLQ0KIGRyaXZlcnMvbmV0L2RtOTAwMC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgNyArLQ0KIGRyaXZlcnMvbmV0L2UxMDAwZS9kZWZpbmVzLmggICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgMSArDQogZHJpdmVycy9uZXQvZTEwMDBlL2UxMDAwLmggICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgICA1ICstDQogZHJpdmVycy9uZXQvZTEwMDBlL2V0aHRvb2wuYyAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDkyICstDQogZHJpdmVycy9uZXQvZTEwMDBlL2h3LmggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICstDQogZHJpdmVycy9uZXQvZTEwMDBlL2lj
aDhsYW4uYyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ4ICstDQogZHJpdmVycy9uZXQvZTEw
MDBlL2xpYi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstDQogZHJpdmVycy9u
ZXQvZTEwMDBlL25ldGRldi5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTI5ICstDQogZHJp
dmVycy9uZXQvZTEwMDBlL3BoeS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICst
DQogZHJpdmVycy9uZXQvZW5pYy9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAyICstDQogZHJpdmVycy9uZXQvZW5pYy9lbmljLmggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgIDExICstDQogZHJpdmVycy9uZXQvZW5pYy9lbmljX2Rldi5jICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgMjIxICsNCiBkcml2ZXJzL25ldC9lbmljL2VuaWNfZGV2LmggICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgNDEgKw0KIGRyaXZlcnMvbmV0L2VuaWMvZW5pY19tYWluLmMgICAg
ICAgICAgICAgICAgICAgICAgIHwgIDMyNiArLS0NCiBkcml2ZXJzL25ldC9lbmljL3ZuaWNfZGV2
LmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjYgKy0NCiBkcml2ZXJzL25ldC9lbmljL3Zu
aWNfZGV2LmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDggLQ0KIGRyaXZlcnMvbmV0L2Vu
aWMvdm5pY19kZXZjbWQuaCAgICAgICAgICAgICAgICAgICAgIHwgICAzOCArLQ0KIGRyaXZlcnMv
bmV0L2VuaWMvdm5pY19ycS5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSAtDQogZHJp
dmVycy9uZXQvZXFsLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEwICst
DQogZHJpdmVycy9uZXQvZmVjLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
NjUwICsrLS0NCiBkcml2ZXJzL25ldC9mb3JjZWRldGguYyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgIDggKy0NCiBkcml2ZXJzL25ldC9mdG1hYzEwMC5jICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8IDExOTggKysrKysNCiBkcml2ZXJzL25ldC9mdG1hYzEwMC5oICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAxODAgKw0KIGRyaXZlcnMvbmV0L2hhbXJhZGlvL2JwcWV0
aGVyLmMgICAgICAgICAgICAgICAgICAgIHwgICAgNSArLQ0KIGRyaXZlcnMvbmV0L2lnYi9lMTAw
MF84MjU3NS5jICAgICAgICAgICAgICAgICAgICAgIHwgIDI5NiArKy0NCiBkcml2ZXJzL25ldC9p
Z2IvZTEwMDBfODI1NzUuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgKw0KIGRyaXZlcnMv
bmV0L2lnYi9lMTAwMF9kZWZpbmVzLmggICAgICAgICAgICAgICAgICAgIHwgICA1MiArLQ0KIGRy
aXZlcnMvbmV0L2lnYi9lMTAwMF9ody5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOSAr
LQ0KIGRyaXZlcnMvbmV0L2lnYi9lMTAwMF9tYnguYyAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAzOCArLQ0KIGRyaXZlcnMvbmV0L2lnYi9lMTAwMF9udm0uYyAgICAgICAgICAgICAgICAgICAg
ICAgIHwgICA2NCArLQ0KIGRyaXZlcnMvbmV0L2lnYi9lMTAwMF9udm0uaCAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAgMSArDQogZHJpdmVycy9uZXQvaWdiL2UxMDAwX3JlZ3MuaCAgICAgICAg
ICAgICAgICAgICAgICAgfCAgIDI3ICsNCiBkcml2ZXJzL25ldC9pZ2IvaWdiLmggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgIDggKw0KIGRyaXZlcnMvbmV0L2lnYi9pZ2JfZXRodG9v
bC5jICAgICAgICAgICAgICAgICAgICAgIHwgICAzMCArLQ0KIGRyaXZlcnMvbmV0L2lnYi9pZ2Jf
bWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIzMiArLQ0KIGRyaXZlcnMvbmV0L2ln
YnZmL2V0aHRvb2wuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArLQ0KIGRyaXZlcnMv
bmV0L2lnYnZmL2lnYnZmLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyAtDQogZHJp
dmVycy9uZXQvaWdidmYvbmV0ZGV2LmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYzICst
DQogZHJpdmVycy9uZXQvaXBnLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICA0ICstDQogZHJpdmVycy9uZXQvaXhnYi9peGdiLmggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgICAyICstDQogZHJpdmVycy9uZXQvaXhnYi9peGdiX2V0aHRvb2wuYyAgICAgICAgICAg
ICAgICAgICAgfCAgIDM5ICsNCiBkcml2ZXJzL25ldC9peGdiL2l4Z2JfbWFpbi5jICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgNTQgKy0NCiBkcml2ZXJzL25ldC9peGdiZS9peGdiZS5oICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKy0NCiBkcml2ZXJzL25ldC9peGdiZS9peGdiZV84
MjU5OC5jICAgICAgICAgICAgICAgICAgICB8ICAxMDIgKy0NCiBkcml2ZXJzL25ldC9peGdiZS9p
eGdiZV84MjU5OS5jICAgICAgICAgICAgICAgICAgICB8ICAyMjggKy0NCiBkcml2ZXJzL25ldC9p
eGdiZS9peGdiZV9jb21tb24uYyAgICAgICAgICAgICAgICAgICB8ICA5NDcgKystLQ0KIGRyaXZl
cnMvbmV0L2l4Z2JlL2l4Z2JlX2NvbW1vbi5oICAgICAgICAgICAgICAgICAgIHwgICAgOCArLQ0K
IGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2RjYi5jICAgICAgICAgICAgICAgICAgICAgIHwgIDE2
MCArLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2RjYi5oICAgICAgICAgICAgICAgICAgICAg
IHwgICAxMiArLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2RjYl84MjU5OC5jICAgICAgICAg
ICAgICAgIHwgIDEzOCArLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2RjYl84MjU5OC5oICAg
ICAgICAgICAgICAgIHwgICAyNSArLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2RjYl84MjU5
OS5jICAgICAgICAgICAgICAgIHwgIDE3NiArLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2Rj
Yl84MjU5OS5oICAgICAgICAgICAgICAgIHwgICAyOSArLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4
Z2JlX2RjYl9ubC5jICAgICAgICAgICAgICAgICAgIHwgIDQyOSArKy0NCiBkcml2ZXJzL25ldC9p
eGdiZS9peGdiZV9ldGh0b29sLmMgICAgICAgICAgICAgICAgICB8ICAgNTcgKy0NCiBkcml2ZXJz
L25ldC9peGdiZS9peGdiZV9mY29lLmMgICAgICAgICAgICAgICAgICAgICB8ICAxMDMgKy0NCiBk
cml2ZXJzL25ldC9peGdiZS9peGdiZV9mY29lLmggICAgICAgICAgICAgICAgICAgICB8ICAgIDYg
Ky0NCiBkcml2ZXJzL25ldC9peGdiZS9peGdiZV9tYWluLmMgICAgICAgICAgICAgICAgICAgICB8
ICA0ODEgKystDQogZHJpdmVycy9uZXQvaXhnYmUvaXhnYmVfbWJ4LmMgICAgICAgICAgICAgICAg
ICAgICAgfCAgIDM3ICstDQogZHJpdmVycy9uZXQvaXhnYmUvaXhnYmVfbWJ4LmggICAgICAgICAg
ICAgICAgICAgICAgfCAgICA0ICstDQogZHJpdmVycy9uZXQvaXhnYmUvaXhnYmVfcGh5LmMgICAg
ICAgICAgICAgICAgICAgICAgfCAgNTk0ICsrLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX3Bo
eS5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNyArLQ0KIGRyaXZlcnMvbmV0L2l4Z2JlL2l4
Z2JlX3NyaW92LmMgICAgICAgICAgICAgICAgICAgIHwgIDExNiArLQ0KIGRyaXZlcnMvbmV0L2l4
Z2JlL2l4Z2JlX3NyaW92LmggICAgICAgICAgICAgICAgICAgIHwgICAgMyArLQ0KIGRyaXZlcnMv
bmV0L2l4Z2JlL2l4Z2JlX3R5cGUuaCAgICAgICAgICAgICAgICAgICAgIHwgICA2NSArLQ0KIGRy
aXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX3g1NDAuYyAgICAgICAgICAgICAgICAgICAgIHwgICA0MyAr
LQ0KIGRyaXZlcnMvbmV0L2l4Z2JldmYvZGVmaW5lcy5oICAgICAgICAgICAgICAgICAgICAgIHwg
ICAgMiArDQogZHJpdmVycy9uZXQvaXhnYmV2Zi9ldGh0b29sLmMgICAgICAgICAgICAgICAgICAg
ICAgfCAgICA0ICstDQogZHJpdmVycy9uZXQvaXhnYmV2Zi9peGdiZXZmLmggICAgICAgICAgICAg
ICAgICAgICAgfCAgICAxIC0NCiBkcml2ZXJzL25ldC9peGdiZXZmL2l4Z2JldmZfbWFpbi5jICAg
ICAgICAgICAgICAgICB8ICAgOTggKy0NCiBkcml2ZXJzL25ldC9peGdiZXZmL3JlZ3MuaCAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBkcml2ZXJzL25ldC9qbWUuYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAzMDYgKy0NCiBkcml2ZXJzL25ldC9qbWUuaCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgODcgKy0NCiBkcml2ZXJzL25ldC9s
b29wYmFjay5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDkgKy0NCiBkcml2ZXJz
L25ldC9tYWN2bGFuLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKy0NCiBk
cml2ZXJzL25ldC9tYWN2dGFwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTgg
Ky0NCiBkcml2ZXJzL25ldC9taWkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMTQgKy0NCiBkcml2ZXJzL25ldC9tdjY0M3h4X2V0aC5jICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgNzQgKy0NCiBkcml2ZXJzL25ldC9teXJpMTBnZS9teXJpMTBnZS5jICAgICAgICAg
ICAgICAgICAgICB8ICAgIDQgKy0NCiBkcml2ZXJzL25ldC9uZXR4ZW4vbmV0eGVuX25pYy5oICAg
ICAgICAgICAgICAgICAgICB8ICAgIDYgKy0NCiBkcml2ZXJzL25ldC9uZXR4ZW4vbmV0eGVuX25p
Y19jdHguYyAgICAgICAgICAgICAgICB8ICAgMTUgKw0KIGRyaXZlcnMvbmV0L25ldHhlbi9uZXR4
ZW5fbmljX2V0aHRvb2wuYyAgICAgICAgICAgIHwgICA2MiArLQ0KIGRyaXZlcnMvbmV0L25ldHhl
bi9uZXR4ZW5fbmljX21haW4uYyAgICAgICAgICAgICAgIHwgICAgMyArDQogZHJpdmVycy9uZXQv
cGh5L0tjb25maWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0NCiBkcml2ZXJz
L25ldC9waHkvbWljcmVsLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjQgKy0NCiBk
cml2ZXJzL25ldC9waHkvcGh5LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDgg
Ky0NCiBkcml2ZXJzL25ldC9wcHBfZ2VuZXJpYy5jICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAxNDggKy0NCiBkcml2ZXJzL25ldC9wcHRwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgNDUgKy0NCiBkcml2ZXJzL25ldC9xbGEzeHh4LmMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgMTAgKy0NCiBkcml2ZXJzL25ldC9xbGNuaWMvcWxjbmljLmggICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgIDUgLQ0KIGRyaXZlcnMvbmV0L3FsY25pYy9xbGNuaWNfbWFp
bi5jICAgICAgICAgICAgICAgICAgIHwgICAxNSArLQ0KIGRyaXZlcnMvbmV0L3I4MTY5LmMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDI3MiArLQ0KIGRyaXZlcnMvbmV0L3MyaW8u
YyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0
L3NmYy9lZnguYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA4NiArLQ0KIGRyaXZl
cnMvbmV0L3NmYy9lZnguaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxOSArLQ0K
IGRyaXZlcnMvbmV0L3NmYy9ldGh0b29sLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAz
NyArLQ0KIGRyaXZlcnMvbmV0L3NmYy9mYWxjb24uYyAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAyMiArLQ0KIGRyaXZlcnMvbmV0L3NmYy9mYWxjb25fYm9hcmRzLmMgICAgICAgICAgICAg
ICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L3NmYy9mYWxjb25feG1hYy5jICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L3NmYy9maWx0ZXIuYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgIDExNyArLQ0KIGRyaXZlcnMvbmV0L3NmYy9pby5oICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNSArLQ0KIGRyaXZlcnMvbmV0L3NmYy9tY2Rp
LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMiArLQ0KIGRyaXZlcnMvbmV0L3Nm
Yy9tY2RpLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQ0KIGRyaXZlcnMv
bmV0L3NmYy9tY2RpX21hYy5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRy
aXZlcnMvbmV0L3NmYy9tY2RpX3Bjb2wuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiAr
LQ0KIGRyaXZlcnMvbmV0L3NmYy9tY2RpX3BoeS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAgMiArLQ0KIGRyaXZlcnMvbmV0L3NmYy9tZGlvXzEwZy5jICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgICAzNCArLQ0KIGRyaXZlcnMvbmV0L3NmYy9tZGlvXzEwZy5oICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAgNSArLQ0KIGRyaXZlcnMvbmV0L3NmYy9tdGQuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L3NmYy9uZXRfZHJpdmVyLmgg
ICAgICAgICAgICAgICAgICAgICAgIHwgICA4MyArLQ0KIGRyaXZlcnMvbmV0L3NmYy9uaWMuYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA3MyArLQ0KIGRyaXZlcnMvbmV0L3NmYy9u
aWMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOSArLQ0KIGRyaXZlcnMvbmV0
L3NmYy9waHkuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZl
cnMvbmV0L3NmYy9xdDIwMnhfcGh5LmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0K
IGRyaXZlcnMvbmV0L3NmYy9yZWdzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg
OCArLQ0KIGRyaXZlcnMvbmV0L3NmYy9yeC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgIDE0NCArLQ0KIGRyaXZlcnMvbmV0L3NmYy9zZWxmdGVzdC5jICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgNCArLQ0KIGRyaXZlcnMvbmV0L3NmYy9zZWxmdGVzdC5oICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L3NmYy9zaWVuYS5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAyNCArLQ0KIGRyaXZlcnMvbmV0L3NmYy9zcGkuaCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L3NmYy90ZW54
cHJlc3MuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQ0KIGRyaXZlcnMvbmV0L3Nm
Yy90eC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA5MiArLQ0KIGRyaXZlcnMv
bmV0L3NmYy90eGM0MzEyOF9waHkuYyAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQ0KIGRy
aXZlcnMvbmV0L3NmYy93b3JrYXJvdW5kcy5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiAr
LQ0KIGRyaXZlcnMvbmV0L3NoX2V0aC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
IDczNyArKystDQogZHJpdmVycy9uZXQvc2hfZXRoLmggICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgNjU0ICsrLS0NCiBkcml2ZXJzL25ldC9zaXM5MDAuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBkcml2ZXJzL25ldC9za3kyLmMgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBkcml2ZXJzL25ldC9zbWM5MXguYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTMgKw0KIGRyaXZlcnMvbmV0L3Ntc2M5MTF4
LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQ0KIGRyaXZlcnMvbmV0L3N1
bmdlbS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA1OCArLQ0KIGRyaXZlcnMv
bmV0L3N1bmdlbS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtDQogZHJp
dmVycy9uZXQvdGczLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzM1ICst
DQogZHJpdmVycy9uZXQvdGczLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
IDEzICstDQogZHJpdmVycy9uZXQvdGxhbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAzODQwICsrKysrKysrLS0tLS0tLS0NCiBkcml2ZXJzL25ldC90bGFuLmggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAxOTIgKy0NCiBkcml2ZXJzL25ldC90dW4uYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgODUgKy0NCiBkcml2ZXJzL25ldC90eXBo
b29uLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKy0NCiBkcml2ZXJzL25l
dC91c2IvY2RjLXBob25ldC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTAgKy0NCiBkcml2
ZXJzL25ldC92ZXRoLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTIgLQ0K
IGRyaXZlcnMvbmV0L3ZpYS12ZWxvY2l0eS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg
OSArDQogZHJpdmVycy9uZXQvdmlhLXZlbG9jaXR5LmggICAgICAgICAgICAgICAgICAgICAgICAg
fCAgICA4ICstDQogZHJpdmVycy9uZXQvdnhnZS92eGdlLWNvbmZpZy5jICAgICAgICAgICAgICAg
ICAgICAgfCAgIDMyICstDQogZHJpdmVycy9uZXQvdnhnZS92eGdlLWNvbmZpZy5oICAgICAgICAg
ICAgICAgICAgICAgfCAgIDEwICsNCiBkcml2ZXJzL25ldC92eGdlL3Z4Z2UtbWFpbi5jICAgICAg
ICAgICAgICAgICAgICAgICB8ICAyMzQgKy0NCiBkcml2ZXJzL25ldC92eGdlL3Z4Z2UtbWFpbi5o
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjMgKy0NCiBkcml2ZXJzL25ldC92eGdlL3Z4Z2Ut
dHJhZmZpYy5jICAgICAgICAgICAgICAgICAgICB8ICAxMTYgKy0NCiBkcml2ZXJzL25ldC92eGdl
L3Z4Z2UtdHJhZmZpYy5oICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKy0NCiBkcml2ZXJzL25l
dC92eGdlL3Z4Z2UtdmVyc2lvbi5oICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBkcml2
ZXJzL25ldC93aXJlbGVzcy9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgKw0K
IGRyaXZlcnMvbmV0L3dpcmVsZXNzL01ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgIHwgICAg
NSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2FkbTgyMTEuYyAgICAgICAgICAgICAgICAgICAg
IHwgICAgNCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0NzZjNTB4LXVzYi5jICAgICAgICAg
ICAgICAgIHwgICAxMCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0NzZjNTB4LXVzYi5oICAg
ICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hcjkxNzAv
S2NvbmZpZyAgICAgICAgICAgIHwgICAgNCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9h
cjkxNzAvYXI5MTcwLmggICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L2F0aC9hcjkxNzAvbWFpbi5jICAgICAgICAgICAgIHwgICAgOCArLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL2F0aC9hdGguaCAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArDQogZHJpdmVycy9u
ZXQvd2lyZWxlc3MvYXRoL2F0aDVrL0tjb25maWcgICAgICAgICAgICAgfCAgIDExICsNCiBkcml2
ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoNWsvYWhiLmMgICAgICAgICAgICAgICB8ICAgIDkgKy0N
CiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoNWsvYXRoNWsuaCAgICAgICAgICAgICB8ICAg
NDAgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoNWsvYXR0YWNoLmMgICAgICAgICAg
ICB8ICAgIDcgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoNWsvYmFzZS5jICAgICAg
ICAgICAgICB8ICAxNzYgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoNWsvYmFzZS5o
ICAgICAgICAgICAgICB8ICAgMTcgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoNWsv
Y2Fwcy5jICAgICAgICAgICAgICB8ICAgNDggKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgv
YXRoNWsvZGVidWcuYyAgICAgICAgICAgICB8ICAgMjAgLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L2F0aC9hdGg1ay9kZWJ1Zy5oICAgICAgICAgICAgIHwgICAxMCAtDQogZHJpdmVycy9uZXQvd2ly
ZWxlc3MvYXRoL2F0aDVrL2VlcHJvbS5jICAgICAgICAgICAgfCAgIDI0ICstDQogZHJpdmVycy9u
ZXQvd2lyZWxlc3MvYXRoL2F0aDVrL2VlcHJvbS5oICAgICAgICAgICAgfCAgIDI4ICstDQogZHJp
dmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDVrL21hYzgwMjExLW9wcy5jICAgICAgfCAgIDk0ICst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDVrL3BjaS5jICAgICAgICAgICAgICAgfCAg
ICA5ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDVrL3FjdS5jICAgICAgICAgICAg
ICAgfCAgIDQ2ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDVrL3JlZy5oICAgICAg
ICAgICAgICAgfCAgIDE1ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDVrL3RyYWNl
LmggICAgICAgICAgICAgfCAgMTA3ICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoOWsv
TWFrZWZpbGUgICAgICAgICAgICB8ICAgIDEgLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9h
dGg5ay9haGIuYyAgICAgICAgICAgICAgIHwgICAxNSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L2F0aC9hdGg5ay9hcjkwMDJfY2FsaWIuYyAgICAgIHwgICAgNSArLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL2F0aC9hdGg5ay9hcjkwMDNfZWVwcm9tLmMgICAgIHwgICAyNiArLQ0KIGRyaXZlcnMv
bmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9hcjkwMDNfaHcuYyAgICAgICAgIHwgIDExMiArLQ0KIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9hcjkwMDNfbWFjLmMgICAgICAgIHwgICAgOCAr
LQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9hcjkwMDNfcGh5LmMgICAgICAgIHwg
ICAzNyArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9hcjkwMDNfcGh5LmggICAg
ICAgIHwgICAgMiArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDlrL2FyOTQ4NV9pbml0
dmFscy5oICAgfCAxMTQzICsrKysrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDlrL2F0
aDlrLmggICAgICAgICAgICAgfCAgMTU3ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0
aDlrL2JlYWNvbi5jICAgICAgICAgICAgfCAgIDkzICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mv
YXRoL2F0aDlrL2NhbGliLmMgICAgICAgICAgICAgfCAgICA5ICstDQogZHJpdmVycy9uZXQvd2ly
ZWxlc3MvYXRoL2F0aDlrL2NvbW1vbi5jICAgICAgICAgICAgfCAgIDExICsNCiBkcml2ZXJzL25l
dC93aXJlbGVzcy9hdGgvYXRoOWsvY29tbW9uLmggICAgICAgICAgICB8ICAgIDQgKy0NCiBkcml2
ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoOWsvZGVidWcuYyAgICAgICAgICAgICB8ICA0OTQgKyst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDlrL2RlYnVnLmggICAgICAgICAgICAgfCAg
IDE3ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDlrL2VlcHJvbS5jICAgICAgICAg
ICAgfCAgIDMyICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoOWsvZWVwcm9tLmggICAg
ICAgICAgICB8ICAgIDIgKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9lZXByb21f
NGsuYyAgICAgICAgIHwgICA0MSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9l
ZXByb21fOTI4Ny5jICAgICAgIHwgICA0NSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9h
dGg5ay9lZXByb21fZGVmLmMgICAgICAgIHwgICAzOCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L2F0aC9hdGg5ay9ncGlvLmMgICAgICAgICAgICAgIHwgIDE2OSArLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL2F0aC9hdGg5ay9oaWZfdXNiLmMgICAgICAgICAgIHwgICA3OCArLQ0KIGRyaXZlcnMv
bmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9odGMuaCAgICAgICAgICAgICAgIHwgICA4MCArLQ0KIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9odGNfZHJ2X2JlYWNvbi5jICAgIHwgIDE3MCAr
LQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9odGNfZHJ2X2dwaW8uYyAgICAgIHwg
ICAgMyArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9odGNfZHJ2X2luaXQuYyAg
ICAgIHwgICA0OCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9odGNfZHJ2X21h
aW4uYyAgICAgIHwgIDQ4NSArKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoOWsvaHRj
X2Rydl90eHJ4LmMgICAgICB8ICAgODQgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRo
OWsvaHcuYyAgICAgICAgICAgICAgICB8ICAgNjUgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9h
dGgvYXRoOWsvaHcuaCAgICAgICAgICAgICAgICB8ICAgIDggKy0NCiBkcml2ZXJzL25ldC93aXJl
bGVzcy9hdGgvYXRoOWsvaW5pdC5jICAgICAgICAgICAgICB8ICAgNTcgKy0NCiBkcml2ZXJzL25l
dC93aXJlbGVzcy9hdGgvYXRoOWsvbWFjLmMgICAgICAgICAgICAgICB8ICAxMDMgKy0NCiBkcml2
ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoOWsvbWFjLmggICAgICAgICAgICAgICB8ICAgIDUgKy0N
CiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoOWsvbWFpbi5jICAgICAgICAgICAgICB8ICA3
NTQgKystLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9wY2kuYyAgICAgICAgICAg
ICAgIHwgICAyMCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9yYy5jICAgICAg
ICAgICAgICAgIHwgICAgMyArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5ay9yZWN2
LmMgICAgICAgICAgICAgIHwgIDE3NyArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGg5
ay9yZWcuaCAgICAgICAgICAgICAgIHwgICAyMiArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRo
L2F0aDlrL3ZpcnR1YWwuYyAgICAgICAgICAgfCAgNzE3IC0tLQ0KIGRyaXZlcnMvbmV0L3dpcmVs
ZXNzL2F0aC9hdGg5ay93bWkuYyAgICAgICAgICAgICAgIHwgICAgNCAtDQogZHJpdmVycy9uZXQv
d2lyZWxlc3MvYXRoL2F0aDlrL3htaXQuYyAgICAgICAgICAgICAgfCAgMzA4ICstDQogZHJpdmVy
cy9uZXQvd2lyZWxlc3MvYXRoL2Nhcmw5MTcwL2Nhcmw5MTcwLmggICAgICAgfCAgICAzICstDQog
ZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2Nhcmw5MTcwL2Z3LmMgICAgICAgICAgICAgfCAgIDE1
ICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvY2FybDkxNzAvZndjbWQuaCAgICAgICAgICB8
ICAgIDEgKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9jYXJsOTE3MC9md2Rlc2MuaCAgICAg
ICAgIHwgICAyOCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9jYXJsOTE3MC9ody5oICAg
ICAgICAgICAgIHwgICAyNSArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2Nhcmw5MTcwL21h
aW4uYyAgICAgICAgICAgfCAgICA5ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2Nhcmw5
MTcwL3R4LmMgICAgICAgICAgICAgfCAgICA4ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRo
L2Nhcmw5MTcwL3ZlcnNpb24uaCAgICAgICAgfCAgICA4ICstDQogZHJpdmVycy9uZXQvd2lyZWxl
c3MvYXRoL2Nhcmw5MTcwL3dsYW4uaCAgICAgICAgICAgfCAgIDIwICstDQogZHJpdmVycy9uZXQv
d2lyZWxlc3MvYXRoL2tleS5jICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICstDQogZHJpdmVy
cy9uZXQvd2lyZWxlc3MvYXRoL3JlZ2QuYyAgICAgICAgICAgICAgICAgICAgfCAgICA3ICsNCiBk
cml2ZXJzL25ldC93aXJlbGVzcy9hdGgvcmVnZC5oICAgICAgICAgICAgICAgICAgICB8ICAgIDEg
Kw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2I0My9LY29uZmlnICAgICAgICAgICAgICAgICAgIHwg
ICAgMiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2I0My9tYWluLmMgICAgICAgICAgICAgICAg
ICAgIHwgICAgNiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2I0My9waHlfbi5jICAgICAgICAg
ICAgICAgICAgIHwgIDIwNyArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2I0My90YWJsZXNfbnBo
eS5jICAgICAgICAgICAgIHwgMTIwOSArKysrKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9iNDMv
dGFibGVzX25waHkuaCAgICAgICAgICAgICB8ICAgNTIgKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L2I0My94bWl0LmMgICAgICAgICAgICAgICAgICAgIHwgICA3NSArLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL2I0My94bWl0LmggICAgICAgICAgICAgICAgICAgIHwgICAgNiArDQogZHJpdmVycy9u
ZXQvd2lyZWxlc3MvYjQzbGVnYWN5L21haW4uYyAgICAgICAgICAgICAgfCAgICA1ICstDQogZHJp
dmVycy9uZXQvd2lyZWxlc3MvYjQzbGVnYWN5L3htaXQuYyAgICAgICAgICAgICAgfCAgICAyICst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXB3MngwMC9pcHcyMTAwLmMgICAgICAgICAgICAgfCAg
ICAyICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXB3MngwMC9pcHcyMjAwLmggICAgICAgICAg
ICAgfCAgICAyICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvS2NvbmZpZyAgICAg
ICAgICAgICAgfCAgMTE2ICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9NYWtlZmls
ZSAgICAgICAgICAgICB8ICAgMjUgKw0KIC4uLi97aXdsd2lmaSA9PiBpd2xlZ2FjeX0vaXdsLTM5
NDUtZGVidWdmcy5jICAgICAgIHwgICAxMSArLQ0KIC4uLi97aXdsd2lmaSA9PiBpd2xlZ2FjeX0v
aXdsLTM5NDUtZGVidWdmcy5oICAgICAgIHwgICAgNCArLQ0KIC4uLi93aXJlbGVzcy97aXdsd2lm
aSA9PiBpd2xlZ2FjeX0vaXdsLTM5NDUtZmguaCAgIHwgICAgNSArLQ0KIC4uLi93aXJlbGVzcy97
aXdsd2lmaSA9PiBpd2xlZ2FjeX0vaXdsLTM5NDUtaHcuaCAgIHwgICAgOSArLQ0KIC4uLi93aXJl
bGVzcy97aXdsd2lmaSA9PiBpd2xlZ2FjeX0vaXdsLTM5NDUtbGVkLmMgIHwgICAzMSArLQ0KIC4u
Li93aXJlbGVzcy97aXdsd2lmaSA9PiBpd2xlZ2FjeX0vaXdsLTM5NDUtbGVkLmggIHwgICAgMiAr
LQ0KIC4uLi93aXJlbGVzcy97aXdsd2lmaSA9PiBpd2xlZ2FjeX0vaXdsLTM5NDUtcnMuYyAgIHwg
ICA0MSArLQ0KIC4uLi9uZXQvd2lyZWxlc3Mve2l3bHdpZmkgPT4gaXdsZWdhY3l9L2l3bC0zOTQ1
LmMgIHwgIDI2NyArLQ0KIC4uLi9uZXQvd2lyZWxlc3Mve2l3bHdpZmkgPT4gaXdsZWdhY3l9L2l3
bC0zOTQ1LmggIHwgICAxMiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC00
OTY1LWNhbGliLmMgICAgIHwgIDk2NyArKysrDQogLi4uL2l3bC1sZWdhY3kuaCA9PiBpd2xlZ2Fj
eS9pd2wtNDk2NS1jYWxpYi5ofSAgICAgfCAgIDMwICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mv
aXdsZWdhY3kvaXdsLTQ5NjUtZGVidWdmcy5jICAgfCAgNzc0ICsrKw0KIC4uLi9pd2wtNDk2NS1k
ZWJ1Z2ZzLmh9ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzNSArLQ0KIC4uLi9pd2wt
bGVnYWN5LmggPT4gaXdsZWdhY3kvaXdsLTQ5NjUtZWVwcm9tLmN9ICAgIHwgIDEwNyArLQ0KIC4u
Li93aXJlbGVzcy97aXdsd2lmaSA9PiBpd2xlZ2FjeX0vaXdsLTQ5NjUtaHcuaCAgIHwgICAyNiAr
LQ0KIC4uLi9pd2wtMzk0NS1sZWQuYyA9PiBpd2xlZ2FjeS9pd2wtNDk2NS1sZWQuY30gICAgIHwg
ICA0OSArLQ0KIC4uLi9pd2wtMzk0NS1sZWQuaCA9PiBpd2xlZ2FjeS9pd2wtNDk2NS1sZWQuaH0g
ICAgIHwgICAxMSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC00OTY1LWxp
Yi5jICAgICAgIHwgMTI2MCArKysrKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3
bC00OTY1LXJzLmMgICAgICAgIHwgMjg3MCArKysrKysrKysrKw0KIC4uLi9pd2wtYWduLXJ4LmMg
PT4gaXdsZWdhY3kvaXdsLTQ5NjUtcnguY30gICAgICAgIHwgIDE3NyArLQ0KIGRyaXZlcnMvbmV0
L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC00OTY1LXN0YS5jICAgICAgIHwgIDcyMSArKysNCiBkcml2
ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtNDk2NS10eC5jICAgICAgICB8IDEzNjkgKysr
KysrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLTQ5NjUtdWNvZGUuYyAgICAg
fCAgMTY2ICsNCiAuLi4vbmV0L3dpcmVsZXNzL3tpd2x3aWZpID0+IGl3bGVnYWN5fS9pd2wtNDk2
NS5jICB8ICA4MTUgKy0tLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC00OTY1
LmggICAgICAgICAgIHwgIDI4MiArKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3
bC1jb21tYW5kcy5oICAgICAgIHwgMzQwNSArKysrKysrKysrKysrDQogZHJpdmVycy9uZXQvd2ly
ZWxlc3MvaXdsZWdhY3kvaXdsLWNvcmUuYyAgICAgICAgICAgfCAyNjc0ICsrKysrKysrKysrDQog
ZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWNvcmUuaCAgICAgICAgICAgfCAgNjQ2
ICsrKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1jc3IuaCAgICAgICAgICAg
IHwgIDQyMiArKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1kZWJ1Zy5oICAg
ICAgICAgIHwgIDE5OCArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWRlYnVn
ZnMuYyAgICAgICAgfCAxNDY3ICsrKysrKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5
L2l3bC1kZXYuaCAgICAgICAgICAgIHwgMTQyNiArKysrKysNCiAuLi4vaXdsLTM5NDUtbGVkLmgg
PT4gaXdsZWdhY3kvaXdsLWRldnRyYWNlLmN9ICAgICB8ICAgMjMgKy0NCiBkcml2ZXJzL25ldC93
aXJlbGVzcy9pd2xlZ2FjeS9pd2wtZGV2dHJhY2UuaCAgICAgICB8ICAyNzAgKysNCiBkcml2ZXJz
L25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtZWVwcm9tLmMgICAgICAgICB8ICA1NjEgKysrDQog
ZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWVlcHJvbS5oICAgICAgICAgfCAgMzQ0
ICsrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWZoLmggICAgICAgICAgICAg
fCAgNTEzICsrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWhjbWQuYyAgICAg
ICAgICAgfCAgMjcxICsrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWhlbHBl
cnMuaCAgICAgICAgfCAgMTgxICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wt
aW8uaCAgICAgICAgICAgICB8ICA1NDUgKysrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdh
Y3kvaXdsLWxlZC5jICAgICAgICAgICAgfCAgMTg4ICsNCiAuLi4ve2l3bHdpZmkvaXdsLTM5NDUt
bGVkLmggPT4gaXdsZWdhY3kvaXdsLWxlZC5ofSB8ICAgMzQgKy0NCiBkcml2ZXJzL25ldC93aXJl
bGVzcy9pd2xlZ2FjeS9pd2wtbGVnYWN5LXJzLmggICAgICB8ICA0NTYgKysNCiBkcml2ZXJzL25l
dC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtcG93ZXIuYyAgICAgICAgICB8ICAxNjUgKw0KIGRyaXZl
cnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1wb3dlci5oICAgICAgICAgIHwgICA1NSArDQog
ZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLXBycGguaCAgICAgICAgICAgfCAgNTIz
ICsrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLXJ4LmMgICAgICAgICAgICAg
fCAgMzAyICsrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLXNjYW4uYyAgICAg
ICAgICAgfCAgNjI1ICsrKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1zcGVj
dHJ1bS5oICAgICAgIHwgICA5MiArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXds
LXN0YS5jICAgICAgICAgICAgfCAgODE2ICsrKysNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xl
Z2FjeS9pd2wtc3RhLmggICAgICAgICAgICB8ICAxNDggKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L2l3bGVnYWN5L2l3bC10eC5jICAgICAgICAgICAgIHwgIDY2MCArKysNCiAuLi4vd2lyZWxlc3Mv
e2l3bHdpZmkgPT4gaXdsZWdhY3l9L2l3bDM5NDUtYmFzZS5jICB8ICA1NjYgKystLQ0KIGRyaXZl
cnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bDQ5NjUtYmFzZS5jICAgICAgIHwgMzYzMiArKysr
KysrKysrKysrKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvS2NvbmZpZyAgICAgICAg
ICAgICAgIHwgIDEzMiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvTWFrZWZpbGUg
ICAgICAgICAgICAgIHwgICA0MCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXds
LTEwMDAuYyAgICAgICAgICAgIHwgICAgNCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdp
ZmkvaXdsLTIwMDAuYyAgICAgICAgICAgIHwgIDU2MCArKysNCiBkcml2ZXJzL25ldC93aXJlbGVz
cy9pd2x3aWZpL2l3bC01MDAwLmMgICAgICAgICAgICB8ICAgIDQgLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL2l3bHdpZmkvaXdsLTYwMDAuYyAgICAgICAgICAgIHwgICA1OSArLQ0KIGRyaXZlcnMv
bmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWFnbi1jYWxpYi5jICAgICAgIHwgICAgOSArLQ0KIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWFnbi1kZWJ1Z2ZzLmMgICAgIHwgICAxMiAr
LQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWFnbi1oY21kLmMgICAgICAgIHwg
ICAxOCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWFnbi1sZWQuYyAgICAg
ICAgIHwgICAxNCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWFnbi1sZWQu
aCAgICAgICAgIHwgICAgMSArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtYWdu
LWxpYi5jICAgICAgICAgfCAgNTM5ICstLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkv
aXdsLWFnbi1ycy5jICAgICAgICAgIHwgICAyOSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3
bHdpZmkvaXdsLWFnbi1ycy5oICAgICAgICAgIHwgICAgMSArDQogZHJpdmVycy9uZXQvd2lyZWxl
c3MvaXdsd2lmaS9pd2wtYWduLXJ4b24uYyAgICAgICAgfCAgMTAxICstDQogZHJpdmVycy9uZXQv
d2lyZWxlc3MvaXdsd2lmaS9pd2wtYWduLXR4LmMgICAgICAgICAgfCAgIDIxICstDQogZHJpdmVy
cy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtYWduLXVjb2RlLmMgICAgICAgfCAgICA4IC0NCiBk
cml2ZXJzL25ldC93aXJlbGVzcy9pd2x3aWZpL2l3bC1hZ24uYyAgICAgICAgICAgICB8ICA1ODIg
KystLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWFnbi5oICAgICAgICAgICAg
IHwgICA0OSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWNvbW1hbmRzLmgg
ICAgICAgIHwgIDEzMCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWNvcmUu
YyAgICAgICAgICAgIHwgIDE2NiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkvaXds
LWNvcmUuaCAgICAgICAgICAgIHwgICA2NiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdp
ZmkvaXdsLWNzci5oICAgICAgICAgICAgIHwgICAxNiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L2l3bHdpZmkvaXdsLWRlYnVnZnMuYyAgICAgICAgIHwgIDExOSArLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL2l3bHdpZmkvaXdsLWRldi5oICAgICAgICAgICAgIHwgICA5MCArLQ0KIGRyaXZlcnMv
bmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLWVlcHJvbS5jICAgICAgICAgIHwgICAgOCAtDQogZHJp
dmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtZWVwcm9tLmggICAgICAgICAgfCAgIDI2ICst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtaGNtZC5jICAgICAgICAgICAgfCAg
ICA2ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtbGVkLmMgICAgICAgICAg
ICAgfCAgMTk5ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtbGVkLmggICAg
ICAgICAgICAgfCAgIDE2ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtbGVn
YWN5LmMgICAgICAgICAgfCAgNjYyIC0tLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdpZmkv
aXdsLXBvd2VyLmMgICAgICAgICAgIHwgICAxMiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3
bHdpZmkvaXdsLXJ4LmMgICAgICAgICAgICAgIHwgIDg4MCArKysrLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL2l3bHdpZmkvaXdsLXNjYW4uYyAgICAgICAgICAgIHwgICA1NCArLQ0KIGRyaXZlcnMv
bmV0L3dpcmVsZXNzL2l3bHdpZmkvaXdsLXN0YS5jICAgICAgICAgICAgIHwgICAxMSAtDQogZHJp
dmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9pd2wtdHguYyAgICAgICAgICAgICAgfCAgIDc4ICst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdtYzMyMDB3aWZpL2NmZzgwMjExLmMgICAgICAgfCAg
ICAzICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdtYzMyMDB3aWZpL3J4LmMgICAgICAgICAg
ICAgfCAgICA3ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvbGliZXJ0YXMvY2ZnLmMgICAgICAg
ICAgICAgICAgfCAgICA2ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvbGliZXJ0YXMvY21kLmMg
ICAgICAgICAgICAgICAgfCAgIDEwICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvbGliZXJ0YXMv
ZGV2LmggICAgICAgICAgICAgICAgfCAgICAyICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9saWJl
cnRhcy9ob3N0LmggICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVz
cy9saWJlcnRhcy9pZl9zcGkuYyAgICAgICAgICAgICB8ICAzNjggKy0NCiBkcml2ZXJzL25ldC93
aXJlbGVzcy9saWJlcnRhcy9tYWluLmMgICAgICAgICAgICAgICB8ICAgNzcgKy0NCiBkcml2ZXJz
L25ldC93aXJlbGVzcy9saWJlcnRhcy9tZXNoLmMgICAgICAgICAgICAgICB8ICAgMTEgKy0NCiBk
cml2ZXJzL25ldC93aXJlbGVzcy9saWJlcnRhc190Zi9tYWluLmMgICAgICAgICAgICB8ICAgIDMg
Ky0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9tYWM4MDIxMV9od3NpbS5jICAgICAgICAgICAgICB8
ICAgIDggKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9td2w4ay5jICAgICAgICAgICAgICAgICAg
ICAgICB8ICA1MTYgKystDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvb3Jpbm9jby9zY2FuLmMgICAg
ICAgICAgICAgICAgfCAgICA1ICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9wNTQvS2NvbmZpZyAg
ICAgICAgICAgICAgICAgICB8ICAgIDUgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9wNTQvZWVw
cm9tLmMgICAgICAgICAgICAgICAgICB8ICAyMTEgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9w
NTQvZWVwcm9tLmggICAgICAgICAgICAgICAgICB8ICAgIDcgKw0KIGRyaXZlcnMvbmV0L3dpcmVs
ZXNzL3A1NC9md2lvLmMgICAgICAgICAgICAgICAgICAgIHwgICAyMSArLQ0KIGRyaXZlcnMvbmV0
L3dpcmVsZXNzL3A1NC9sbWFjLmggICAgICAgICAgICAgICAgICAgIHwgICAgMyArLQ0KIGRyaXZl
cnMvbmV0L3dpcmVsZXNzL3A1NC9tYWluLmMgICAgICAgICAgICAgICAgICAgIHwgICA2MSArLQ0K
IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3A1NC9wNTQuaCAgICAgICAgICAgICAgICAgICAgIHwgICAg
NyArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3A1NC9wNTRzcGlfZWVwcm9tLmggICAgICAgICAg
IHwgICAgOSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3A1NC90eHJ4LmMgICAgICAgICAgICAg
ICAgICAgIHwgICAxOSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0MngwMC9LY29uZmlnICAg
ICAgICAgICAgICAgIHwgICAxMiArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnQyeDAwL3J0MjQw
MHBjaS5jICAgICAgICAgICAgfCAgMTgzICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnQyeDAw
L3J0MjUwMHBjaS5jICAgICAgICAgICAgfCAgMTc5ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mv
cnQyeDAwL3J0MjUwMHVzYi5jICAgICAgICAgICAgfCAgIDE3ICstDQogZHJpdmVycy9uZXQvd2ly
ZWxlc3MvcnQyeDAwL3J0MjgwMC5oICAgICAgICAgICAgICAgfCAgMTM5ICstDQogZHJpdmVycy9u
ZXQvd2lyZWxlc3MvcnQyeDAwL3J0MjgwMGxpYi5jICAgICAgICAgICAgfCAgOTE3ICsrKy0NCiBk
cml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyODAwbGliLmggICAgICAgICAgICB8ICAgIDQg
Ky0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyODAwcGNpLmMgICAgICAgICAgICB8
ICAyMzkgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyODAwdXNiLmMgICAgICAg
ICAgICB8ICAgIDQgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyeDAwLmggICAg
ICAgICAgICAgICB8ICAgNjcgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyeDAw
ZGV2LmMgICAgICAgICAgICB8ICAgNzQgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAv
cnQyeDAwaHQuYyAgICAgICAgICAgICB8ICAgMjkgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9y
dDJ4MDAvcnQyeDAwbGliLmggICAgICAgICAgICB8ICAgMjQgKy0NCiBkcml2ZXJzL25ldC93aXJl
bGVzcy9ydDJ4MDAvcnQyeDAwbGluay5jICAgICAgICAgICB8ICAgIDcgKy0NCiBkcml2ZXJzL25l
dC93aXJlbGVzcy9ydDJ4MDAvcnQyeDAwbWFjLmMgICAgICAgICAgICB8ICAgNzUgKy0NCiBkcml2
ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyeDAwcGNpLmMgICAgICAgICAgICB8ICAgIDcgKy0N
CiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyeDAwcXVldWUuYyAgICAgICAgICB8ICAx
NzggKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyeDAwcXVldWUuaCAgICAgICAg
ICB8ICAgMjkgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydDJ4MDAvcnQyeDAwcmVnLmggICAg
ICAgICAgICB8ICAgIDIgLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0MngwMC9ydDJ4MDB1c2Iu
YyAgICAgICAgICAgIHwgICAgOCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0MngwMC9ydDYx
cGNpLmMgICAgICAgICAgICAgIHwgIDI1MSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0Mngw
MC9ydDczdXNiLmMgICAgICAgICAgICAgIHwgICA3NSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L3J0bDgxOHgvcnRsODE4MC9kZXYuYyAgICAgICAgIHwgICAxMCArLQ0KIGRyaXZlcnMvbmV0L3dp
cmVsZXNzL3J0bDgxOHgvcnRsODE4Ny9kZXYuYyAgICAgICAgIHwgICAzMyArLQ0KIGRyaXZlcnMv
bmV0L3dpcmVsZXNzL3J0bDgxOHgvcnRsODE4Ny9ydGw4MTg3LmggICAgIHwgICAgMiArDQogZHJp
dmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9LY29uZmlnICAgICAgICAgICAgICAgfCAgIDI0ICst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9NYWtlZmlsZSAgICAgICAgICAgICAgfCAg
IDE1ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9iYXNlLmMgICAgICAgICAgICAg
ICAgfCAgIDkxICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9iYXNlLmggICAgICAg
ICAgICAgICAgfCAgIDM5ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9jb3JlLmMg
ICAgICAgICAgICAgICAgfCAgIDI2ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9k
ZWJ1Zy5oICAgICAgICAgICAgICAgfCAgICAxICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3
aWZpL2VmdXNlLmMgICAgICAgICAgICAgICB8ICAgMTggLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L3J0bHdpZmkvZWZ1c2UuaCAgICAgICAgICAgICAgIHwgICAgMyAtDQogZHJpdmVycy9uZXQvd2ly
ZWxlc3MvcnRsd2lmaS9wY2kuYyAgICAgICAgICAgICAgICAgfCAgMTUyICstDQogZHJpdmVycy9u
ZXQvd2lyZWxlc3MvcnRsd2lmaS9wY2kuaCAgICAgICAgICAgICAgICAgfCAgIDEyICstDQogZHJp
dmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9wcy5jICAgICAgICAgICAgICAgICAgfCAgIDU4ICst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyYy9NYWtlZmlsZSAgICAgfCAg
ICA5ICsNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjL2RtX2NvbW1vbi5j
ICB8IDEzOTggKysrKysrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyYy9k
bV9jb21tb24uaCAgfCAgMjA0ICsNCiAuLi4ve3J0bDgxOTJjZS9mdy5jID0+IHJ0bDgxOTJjL2Z3
X2NvbW1vbi5jfSAgICAgICB8ICAgNzIgKy0NCiAuLi4ve3J0bDgxOTJjZS9mdy5oID0+IHJ0bDgx
OTJjL2Z3X2NvbW1vbi5ofSAgICAgICB8ICAgIDANCiAuLi4vaXdsLTM5NDUtbGVkLmggPT4gcnRs
d2lmaS9ydGw4MTkyYy9tYWluLmN9ICAgICB8ICAgMjEgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVz
cy9ydGx3aWZpL3J0bDgxOTJjL3BoeV9jb21tb24uYyB8IDIwNDIgKysrKysrKysNCiBkcml2ZXJz
L25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjL3BoeV9jb21tb24uaCB8ICAyNDYgKw0KIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmNlL01ha2VmaWxlICAgIHwgICAgMyAr
LQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmNlL2RlZi5oICAgICAgIHwg
IDE0NCArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyY2UvZG0uYyAgICAg
ICAgfCAxMzY0ICstLS0tLS0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJj
ZS9kbS5oICAgICAgICB8ICAgIDEgKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRs
ODE5MmNlL2h3LmMgICAgICAgIHwgIDE1OCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdp
ZmkvcnRsODE5MmNlL2h3LmggICAgICAgIHwgICAxMSArDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mv
cnRsd2lmaS9ydGw4MTkyY2UvbGVkLmMgICAgICAgfCAgICA2ICstDQogZHJpdmVycy9uZXQvd2ly
ZWxlc3MvcnRsd2lmaS9ydGw4MTkyY2UvcGh5LmMgICAgICAgfCAyMDk1ICstLS0tLS0tLQ0KIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmNlL3BoeS5oICAgICAgIHwgICAzNSAr
LQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmNlL3JlZy5oICAgICAgIHwg
ICA3MyArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmNlL3JmLmMgICAg
ICAgIHwgICAxMCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmNlL3Jm
LmggICAgICAgIHwgICAgNSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5
MmNlL3N3LmMgICAgICAgIHwgICAyMiArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkv
cnRsODE5MmNlL3N3LmggICAgICAgIHwgICAxNCArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRs
d2lmaS9ydGw4MTkyY2UvdHJ4LmMgICAgICAgfCAgMTgzICstDQogZHJpdmVycy9uZXQvd2lyZWxl
c3MvcnRsd2lmaS9ydGw4MTkyY2UvdHJ4LmggICAgICAgfCAgNDY0ICstDQogZHJpdmVycy9uZXQv
d2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyY3UvTWFrZWZpbGUgICAgfCAgIDE0ICsNCiBkcml2ZXJz
L25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjdS9kZWYuaCAgICAgICB8ICAgNjIgKw0KIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmN1L2RtLmMgICAgICAgIHwgIDExMyAr
DQogLi4uL2l3bC0zOTQ1LWxlZC5oID0+IHJ0bHdpZmkvcnRsODE5MmN1L2RtLmh9ICAgICAgfCAg
IDE2ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyY3UvaHcuYyAgICAg
ICAgfCAyNTA0ICsrKysrKysrKysNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgx
OTJjdS9ody5oICAgICAgICB8ICAxMTYgKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkv
cnRsODE5MmN1L2xlZC5jICAgICAgIHwgIDE0MiArDQogLi4uL2l3bC0zOTQ1LWxlZC5oID0+IHJ0
bHdpZmkvcnRsODE5MmN1L2xlZC5ofSAgICAgfCAgIDE5ICstDQogZHJpdmVycy9uZXQvd2lyZWxl
c3MvcnRsd2lmaS9ydGw4MTkyY3UvbWFjLmMgICAgICAgfCAxMTQ0ICsrKysrDQogZHJpdmVycy9u
ZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyY3UvbWFjLmggICAgICAgfCAgMTgwICsNCiBkcml2
ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjdS9waHkuYyAgICAgICB8ICA2MDcgKysr
DQogLi4uL2l3bC0zOTQ1LWxlZC5oID0+IHJ0bHdpZmkvcnRsODE5MmN1L3BoeS5ofSAgICAgfCAg
IDIwICstDQogLi4uL2l3bC0zOTQ1LWxlZC5oID0+IHJ0bHdpZmkvcnRsODE5MmN1L3JlZy5ofSAg
ICAgfCAgIDE2ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyY3UvcmYu
YyAgICAgICAgfCAgNDkzICsrDQogLi4uL2l3bC0zOTQ1LWxlZC5oID0+IHJ0bHdpZmkvcnRsODE5
MmN1L3JmLmh9ICAgICAgfCAgIDI5ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9y
dGw4MTkyY3Uvc3cuYyAgICAgICAgfCAgMzM2ICsrDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRs
d2lmaS9ydGw4MTkyY3Uvc3cuaCAgICAgICAgfCAgIDUzICsNCiBkcml2ZXJzL25ldC93aXJlbGVz
cy9ydGx3aWZpL3J0bDgxOTJjdS90YWJsZS5jICAgICB8IDE4ODggKysrKysrKysNCiBkcml2ZXJz
L25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjdS90YWJsZS5oICAgICB8ICAgNzEgKw0KIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmN1L3RyeC5jICAgICAgIHwgIDY4NyAr
KysNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjdS90cnguaCAgICAgICB8
ICA0MzAgKysNCiBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3VzYi5jICAgICAgICAgICAg
ICAgICB8IDEwMzUgKysrKw0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvdXNiLmggICAg
ICAgICAgICAgICAgIHwgIDE2NCArDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS93aWZp
LmggICAgICAgICAgICAgICAgfCAgNjgwICsrLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3dsMTI1
MS9hY3guYyAgICAgICAgICAgICAgICAgIHwgICA1MyArDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mv
d2wxMjUxL2FjeC5oICAgICAgICAgICAgICAgICAgfCAgIDcyICsNCiBkcml2ZXJzL25ldC93aXJl
bGVzcy93bDEyNTEvZXZlbnQuYyAgICAgICAgICAgICAgICB8ICAgMTggKw0KIGRyaXZlcnMvbmV0
L3dpcmVsZXNzL3dsMTI1MS9tYWluLmMgICAgICAgICAgICAgICAgIHwgICAyMiArLQ0KIGRyaXZl
cnMvbmV0L3dpcmVsZXNzL3dsMTI1MS9wcy5jICAgICAgICAgICAgICAgICAgIHwgICA1MiArLQ0K
IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3dsMTI1MS9yeC5jICAgICAgICAgICAgICAgICAgIHwgICA1
MSArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3dsMTI1MS90eC5jICAgICAgICAgICAgICAgICAg
IHwgICA3NCArLQ0KIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3dsMTI1MS93bDEyNTEuaCAgICAgICAg
ICAgICAgIHwgICAgNyArDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMjUxL3dsMTJ4eF84MDIx
MS5oICAgICAgICAgfCAgICAzICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L0tjb25m
aWcgICAgICAgICAgICAgICAgfCAgICAyICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4
L2FjeC5jICAgICAgICAgICAgICAgICAgfCAgMjc3ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mv
d2wxMnh4L2FjeC5oICAgICAgICAgICAgICAgICAgfCAgMTQxICstDQogZHJpdmVycy9uZXQvd2ly
ZWxlc3Mvd2wxMnh4L2Jvb3QuYyAgICAgICAgICAgICAgICAgfCAgIDM4ICstDQogZHJpdmVycy9u
ZXQvd2lyZWxlc3Mvd2wxMnh4L2Jvb3QuaCAgICAgICAgICAgICAgICAgfCAgICA1ICsNCiBkcml2
ZXJzL25ldC93aXJlbGVzcy93bDEyeHgvY21kLmMgICAgICAgICAgICAgICAgICB8ICAzMTkgKyst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L2NtZC5oICAgICAgICAgICAgICAgICAgfCAg
MTYxICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L2NvbmYuaCAgICAgICAgICAgICAg
ICAgfCAgMTI1ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L2RlYnVnZnMuYyAgICAg
ICAgICAgICAgfCAgIDUxICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L2V2ZW50LmMg
ICAgICAgICAgICAgICAgfCAgIDIxICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L2V2
ZW50LmggICAgICAgICAgICAgICAgfCAgIDEwICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wx
Mnh4L2luaXQuYyAgICAgICAgICAgICAgICAgfCAgNDAwICsrLQ0KIGRyaXZlcnMvbmV0L3dpcmVs
ZXNzL3dsMTJ4eC9pbml0LmggICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIGRyaXZlcnMvbmV0
L3dpcmVsZXNzL3dsMTJ4eC9pby5oICAgICAgICAgICAgICAgICAgIHwgICAgMSArDQogZHJpdmVy
cy9uZXQvd2lyZWxlc3Mvd2wxMnh4L21haW4uYyAgICAgICAgICAgICAgICAgfCAxNDYyICsrKysr
LS0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy93bDEyeHgvcHMuYyAgICAgICAgICAgICAgICAgICB8
ICAgOTAgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy93bDEyeHgvcHMuaCAgICAgICAgICAgICAg
ICAgICB8ICAgIDQgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy93bDEyeHgvcnguYyAgICAgICAg
ICAgICAgICAgICB8ICAgMzcgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy93bDEyeHgvcnguaCAg
ICAgICAgICAgICAgICAgICB8ICAgMTcgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy93bDEyeHgv
c2Nhbi5jICAgICAgICAgICAgICAgICB8ICAgMjAgKy0NCiBkcml2ZXJzL25ldC93aXJlbGVzcy93
bDEyeHgvc2Rpby5jICAgICAgICAgICAgICAgICB8ICAgNDMgKy0NCiBkcml2ZXJzL25ldC93aXJl
bGVzcy93bDEyeHgvc3BpLmMgICAgICAgICAgICAgICAgICB8ICAgMjEgKy0NCiBkcml2ZXJzL25l
dC93aXJlbGVzcy93bDEyeHgvdHguYyAgICAgICAgICAgICAgICAgICB8ICAzNjUgKystDQogZHJp
dmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L3R4LmggICAgICAgICAgICAgICAgICAgfCAgIDE1ICst
DQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L3dsMTJ4eC5oICAgICAgICAgICAgICAgfCAg
MjExICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3Mvd2wxMnh4L3dsMTJ4eF84MDIxMS5oICAgICAg
ICAgfCAgIDE0ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvemQxMjExcncvemRfY2hpcC5jICAg
ICAgICAgICAgfCAgMTY5ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvemQxMjExcncvemRfY2hp
cC5oICAgICAgICAgICAgfCAgICA1ICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvemQxMjExcncv
emRfZGVmLmggICAgICAgICAgICAgfCAgICAyICstDQogZHJpdmVycy9uZXQvd2lyZWxlc3MvemQx
MjExcncvemRfbWFjLmMgICAgICAgICAgICAgfCAgNDUzICsrLQ0KIGRyaXZlcnMvbmV0L3dpcmVs
ZXNzL3pkMTIxMXJ3L3pkX21hYy5oICAgICAgICAgICAgIHwgICAyNCArLQ0KIGRyaXZlcnMvbmV0
L3dpcmVsZXNzL3pkMTIxMXJ3L3pkX3VzYi5jICAgICAgICAgICAgIHwgIDU5NyArKy0NCiBkcml2
ZXJzL25ldC93aXJlbGVzcy96ZDEyMTFydy96ZF91c2IuaCAgICAgICAgICAgICB8ICAgMzcgKy0N
CiBkcml2ZXJzL25ldC94ZW4tbmV0YmFjay9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICB8ICAg
IDMgKw0KIGRyaXZlcnMvbmV0L3hlbi1uZXRiYWNrL2NvbW1vbi5oICAgICAgICAgICAgICAgICAg
IHwgIDE2MSArDQogZHJpdmVycy9uZXQveGVuLW5ldGJhY2svaW50ZXJmYWNlLmMgICAgICAgICAg
ICAgICAgfCAgNDI0ICsrDQogZHJpdmVycy9uZXQveGVuLW5ldGJhY2svbmV0YmFjay5jICAgICAg
ICAgICAgICAgICAgfCAxNzQ1ICsrKysrKysNCiBkcml2ZXJzL25ldC94ZW4tbmV0YmFjay94ZW5i
dXMuYyAgICAgICAgICAgICAgICAgICB8ICA0OTAgKysNCiBkcml2ZXJzL25ldC94ZW4tbmV0ZnJv
bnQuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjQgKy0NCiBkcml2ZXJzL3MzOTAvbmV0
L3FldGhfY29yZS5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBkcml2ZXJzL3Mz
OTAvbmV0L3FldGhfY29yZV9tYWluLmMgICAgICAgICAgICAgICAgICB8ICAgNTcgKy0NCiBkcml2
ZXJzL3MzOTAvbmV0L3FldGhfbDJfbWFpbi5jICAgICAgICAgICAgICAgICAgICB8ICAgNDUgKy0N
CiBkcml2ZXJzL3MzOTAvbmV0L3FldGhfbDNfbWFpbi5jICAgICAgICAgICAgICAgICAgICB8ICAg
NjAgKy0NCiBkcml2ZXJzL3Njc2kvY3hnYmkvY3hnYjNpL0tjb25maWcgICAgICAgICAgICAgICAg
ICB8ICAgIDQgKy0NCiBkcml2ZXJzL3Njc2kvY3hnYmkvY3hnYjRpL0tjb25maWcgICAgICAgICAg
ICAgICAgICB8ICAgIDQgKy0NCiBkcml2ZXJzL3Njc2kvY3hnYmkvbGliY3hnYmkuYyAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMjEgKy0NCiBkcml2ZXJzL3Njc2kvZmNvZS9mY29lLmMgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBkcml2ZXJzL3NzYi9tYWluLmMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNDQgKy0NCiBkcml2ZXJzL3NzYi9wY2kuYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKy0NCiBkcml2ZXJzL3N0YWdp
bmcvYnJjbTgwMjExL2JyY21mbWFjL3dsX2NmZzgwMjExLmMgICB8ICAgIDQgKy0NCiBkcml2ZXJz
L3N0YWdpbmcvYnJjbTgwMjExL3N5cy93bF9tYWM4MDIxMS5jICAgICAgICB8ICAgMjggKy0NCiBk
cml2ZXJzL3N0YWdpbmcvYnJjbTgwMjExL3N5cy93bGNfbWFjODAyMTEuYyAgICAgICB8ICAgIDUg
Ky0NCiBkcml2ZXJzL3N0YWdpbmcvcG9obWVsZnMvY29uZmlnLmMgICAgICAgICAgICAgICAgICB8
ICAgIDIgKy0NCiBkcml2ZXJzL3N0YWdpbmcvd2luYm9uZC93YnVzYi5jICAgICAgICAgICAgICAg
ICAgICB8ICAgIDcgKy0NCiBkcml2ZXJzL3ZpZGVvL3V2ZXNhZmIuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgIDIgKy0NCiBkcml2ZXJzL3hlbi9ldmVudHMuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgMzggKw0KIGZpcm13YXJlL01ha2VmaWxlICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIGZpcm13YXJlL1dIRU5DRSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIC4uLjktNi4yLjEuZncuaWhl
eCA9PiBibngyLW1pcHMtMDktNi4yLjFhLmZ3LmloZXh9IHwgNTAwNiArKysrKysrKysrLS0tLS0t
LS0tLQ0KIGluY2x1ZGUvbGludXgvYXVkaXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgMiArDQogaW5jbHVkZS9saW51eC9jcHVfcm1hcC5oICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgIDczICsNCiBpbmNsdWRlL2xpbnV4L2RjYm5sLmggICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAxMTMgKy0NCiBpbmNsdWRlL2xpbnV4L2RjY3AuaCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgIDIgLQ0KIGluY2x1ZGUvbGludXgvZXRodG9vbC5oICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICA5MSArLQ0KIGluY2x1ZGUvbGludXgvaWNtcHY2Lmgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQ0KIGluY2x1ZGUvbGludXgvaWVl
ZTgwMjExLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArDQogaW5jbHVkZS9saW51
eC9pZi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICstDQogaW5jbHVk
ZS9saW51eC9pZl9saW5rLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsNCiBp
bmNsdWRlL2xpbnV4L2lnbXAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIg
Ky0NCiBpbmNsdWRlL2xpbnV4L2luZXRkZXZpY2UuaCAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgIDEgKw0KIGluY2x1ZGUvbGludXgvaW50ZXJydXB0LmggICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgICAzMyArLQ0KIGluY2x1ZGUvbGludXgvaXBfdnMuaCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAgOCArDQogaW5jbHVkZS9saW51eC9pcnFkZXNjLmggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgICAzICsNCiBpbmNsdWRlL2xpbnV4L21pY3JlbF9waHkuaCAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKw0KIGluY2x1ZGUvbGludXgvbmV0LmggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArLQ0KIGluY2x1ZGUvbGludXgvbmV0ZGV2
aWNlLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMwNSArKy0NCiBpbmNsdWRlL2xpbnV4
L25ldGZpbHRlci5oICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjcgKy0NCiBpbmNsdWRl
L2xpbnV4L25ldGZpbHRlci9LYnVpbGQgICAgICAgICAgICAgICAgICAgICB8ICAgIDcgKw0KIGlu
Y2x1ZGUvbGludXgvbmV0ZmlsdGVyL2lwc2V0L0tidWlsZCAgICAgICAgICAgICAgIHwgICAgNCAr
DQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0LmggICAgICAgICAgICAgfCAg
NDUyICsrDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2FoYXNoLmggICAg
ICAgfCAxMDc0ICsrKysrDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2Jp
dG1hcC5oICAgICAgfCAgIDMxICsNCiBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9z
ZXRfZ2V0cG9ydC5oICAgICB8ICAgMjEgKw0KIGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL2lwc2V0
L2lwX3NldF9oYXNoLmggICAgICAgIHwgICAyNiArDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIv
aXBzZXQvaXBfc2V0X2xpc3QuaCAgICAgICAgfCAgIDI3ICsNCiBpbmNsdWRlL2xpbnV4L25ldGZp
bHRlci9pcHNldC9pcF9zZXRfdGltZW91dC5oICAgICB8ICAxMjcgKw0KIGluY2x1ZGUvbGludXgv
bmV0ZmlsdGVyL2lwc2V0L3BmeGxlbi5oICAgICAgICAgICAgIHwgICAzNSArDQogaW5jbHVkZS9s
aW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3NubXAuaCAgICAgICAgfCAgICA5ICsNCiBpbmNs
dWRlL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmsuaCAgICAgICAgICAgICAgICB8ICAgIDMgKy0N
CiBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY29ubnRyYWNrLmggICAgICB8ICAg
IDkgKw0KIGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3hfdGFibGVzLmggICAgICAgICAgICAgICAg
IHwgICAgMyArLQ0KIGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0X0FVRElULmggICAgICAgICAg
ICAgICAgIHwgICAzMCArDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIveHRfQ1QuaCAgICAgICAg
ICAgICAgICAgICAgfCAgIDEyICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIveHRfTkZRVUVV
RS5oICAgICAgICAgICAgICAgfCAgICA2ICsNCiBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci94dF9U
Q1BPUFRTVFJJUC5oICAgICAgICAgICB8ICAgIDQgKy0NCiBpbmNsdWRlL2xpbnV4L25ldGZpbHRl
ci94dF9UUFJPWFkuaCAgICAgICAgICAgICAgICB8ICAgMTAgKy0NCiBpbmNsdWRlL2xpbnV4L25l
dGZpbHRlci94dF9hZGRydHlwZS5oICAgICAgICAgICAgICB8ICAgNDQgKw0KIGluY2x1ZGUvbGlu
dXgvbmV0ZmlsdGVyL3h0X2NsdXN0ZXIuaCAgICAgICAgICAgICAgIHwgICAxMCArLQ0KIGluY2x1
ZGUvbGludXgvbmV0ZmlsdGVyL3h0X2NvbW1lbnQuaCAgICAgICAgICAgICAgIHwgICAgMiArLQ0K
IGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5saW1pdC5oICAgICAgICAgICAgIHwgICAx
NiArLQ0KIGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm50cmFjay5oICAgICAgICAgICAg
IHwgICAxNSArDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIveHRfZGV2Z3JvdXAuaCAgICAgICAg
ICAgICAgfCAgIDIxICsNCiBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci94dF9xdW90YS5oICAgICAg
ICAgICAgICAgICB8ICAgIDggKy0NCiBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci94dF9zZXQuaCAg
ICAgICAgICAgICAgICAgICB8ICAgNTYgKw0KIGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0X3Nv
Y2tldC5oICAgICAgICAgICAgICAgIHwgICAgMiArDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIv
eHRfdGltZS5oICAgICAgICAgICAgICAgICAgfCAgIDE2ICstDQogaW5jbHVkZS9saW51eC9uZXRm
aWx0ZXIveHRfdTMyLmggICAgICAgICAgICAgICAgICAgfCAgIDE4ICstDQogaW5jbHVkZS9saW51
eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF84MDJfMy5oICAgICAgICAgfCAgIDI2ICstDQogaW5jbHVk
ZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hbW9uZy5oICAgICAgICAgfCAgICA0ICstDQog
aW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hcnAuaCAgICAgICAgICAgfCAgICA2
ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9pcC5oICAgICAgICAgICAg
fCAgIDE0ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9pcDYuaCAgICAg
ICAgICAgfCAgIDI1ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9saW1p
dC5oICAgICAgICAgfCAgIDEwICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2Vi
dF9sb2cuaCAgICAgICAgICAgfCAgICA4ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfYnJp
ZGdlL2VidF9tYXJrX20uaCAgICAgICAgfCAgICA2ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0
ZXJfYnJpZGdlL2VidF9uZmxvZy5oICAgICAgICAgfCAgIDEyICstDQogaW5jbHVkZS9saW51eC9u
ZXRmaWx0ZXJfYnJpZGdlL2VidF9wa3R0eXBlLmggICAgICAgfCAgICA2ICstDQogaW5jbHVkZS9s
aW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9zdHAuaCAgICAgICAgICAgfCAgIDI2ICstDQogaW5j
bHVkZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF91bG9nLmggICAgICAgICAgfCAgICA0ICst
DQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF92bGFuLmggICAgICAgICAgfCAg
IDEwICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfQ0xVU1RFUklQLmggICAg
ICAgfCAgIDE2ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfRUNOLmggICAg
ICAgICAgICAgfCAgICA4ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfU0FN
RS5oICAgICAgICAgICAgfCAgICA4ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2NC9p
cHRfVFRMLmggICAgICAgICAgICAgfCAgICA2ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJf
aXB2NC9pcHRfYWRkcnR5cGUuaCAgICAgICAgfCAgIDE2ICstDQogaW5jbHVkZS9saW51eC9uZXRm
aWx0ZXJfaXB2NC9pcHRfYWguaCAgICAgICAgICAgICAgfCAgICA2ICstDQogaW5jbHVkZS9saW51
eC9uZXRmaWx0ZXJfaXB2NC9pcHRfZWNuLmggICAgICAgICAgICAgfCAgIDEwICstDQogaW5jbHVk
ZS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfdHRsLmggICAgICAgICAgICAgfCAgICA2ICstDQog
aW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X0hMLmggICAgICAgICAgICAgfCAgICA2
ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X1JFSkVDVC5oICAgICAgICAg
fCAgICA0ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2FoLmggICAgICAg
ICAgICAgfCAgIDEwICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2ZyYWcu
aCAgICAgICAgICAgfCAgIDEwICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0
X2hsLmggICAgICAgICAgICAgfCAgICA2ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0ZXJfaXB2
Ni9pcDZ0X2lwdjZoZWFkZXIuaCAgICAgfCAgICA4ICstDQogaW5jbHVkZS9saW51eC9uZXRmaWx0
ZXJfaXB2Ni9pcDZ0X21oLmggICAgICAgICAgICAgfCAgICA2ICstDQogaW5jbHVkZS9saW51eC9u
ZXRmaWx0ZXJfaXB2Ni9pcDZ0X29wdHMuaCAgICAgICAgICAgfCAgIDEyICstDQogaW5jbHVkZS9s
aW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X3J0LmggICAgICAgICAgICAgfCAgIDEzICstDQogaW5j
bHVkZS9saW51eC9uZXRsaW5rLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0IC0N
CiBpbmNsdWRlL2xpbnV4L25sODAyMTEuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
IDMgKw0KIGluY2x1ZGUvbGludXgvcGNpLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgMSArDQogaW5jbHVkZS9saW51eC9waG9uZXQuaCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgICA0ICstDQogaW5jbHVkZS9saW51eC9wa3Rfc2NoZWQuaCAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgMTA3ICsNCiBpbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmggICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgIDcgKy0NCiBpbmNsdWRlL2xpbnV4L3NrYnVmZi5oICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKy0NCiBpbmNsdWRlL2xpbnV4L3NvY2tpb3Mu
aCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBpbmNsdWRlL2xpbnV4L3Nz
Yi9zc2JfcmVncy5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDcgKy0NCiBpbmNsdWRlL2xp
bnV4L3RpcGMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDggKy0NCiBpbmNs
dWRlL2xpbnV4L3RpcGNfY29uZmlnLmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzggKy0N
CiBpbmNsdWRlL2xpbnV4L3hmcm0uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
MTMgKw0KIGluY2x1ZGUvbmV0L2JsdWV0b290aC9ibHVldG9vdGguaCAgICAgICAgICAgICAgICAg
IHwgICAzMyArDQogaW5jbHVkZS9uZXQvYmx1ZXRvb3RoL2hjaS5oICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgMTM5ICsNCiBpbmNsdWRlL25ldC9ibHVldG9vdGgvaGNpX2NvcmUuaCAgICAgICAg
ICAgICAgICAgICB8ICAxNzMgKy0NCiBpbmNsdWRlL25ldC9ibHVldG9vdGgvbDJjYXAuaCAgICAg
ICAgICAgICAgICAgICAgICB8ICAgNTMgKy0NCiBpbmNsdWRlL25ldC9ibHVldG9vdGgvbWdtdC5o
ICAgICAgICAgICAgICAgICAgICAgICB8ICAxNzEgKy0NCiBpbmNsdWRlL25ldC9ibHVldG9vdGgv
c21wLmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgNzYgKw0KIGluY2x1ZGUvbmV0L2NmZzgw
MjExLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNiArLQ0KIGluY2x1ZGUvbmV0
L2RjYm5sLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOSArDQogaW5jbHVk
ZS9uZXQvZG4uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA2ICstDQog
aW5jbHVkZS9uZXQvZG5fZmliLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4
ICstDQogaW5jbHVkZS9uZXQvZG5fcm91dGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgICA4ICstDQogaW5jbHVkZS9uZXQvZHN0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgMTQyICstDQogaW5jbHVkZS9uZXQvZHN0X29wcy5oICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgICAxICsNCiBpbmNsdWRlL25ldC9mbG93LmggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAyMDQgKy0NCiBpbmNsdWRlL25ldC9pY21wLmggICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgLQ0KIGluY2x1ZGUvbmV0L2llZWU4MDIxMV9y
YWRpb3RhcC5oICAgICAgICAgICAgICAgICAgIHwgICAyNSArDQogaW5jbHVkZS9uZXQvaW5ldF9z
b2NrLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDMxICstDQogaW5jbHVkZS9uZXQv
aW5ldHBlZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ0ICstDQogaW5jbHVk
ZS9uZXQvaXAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICsNCiBp
bmNsdWRlL25ldC9pcDZfZmliLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUg
Ky0NCiBpbmNsdWRlL25ldC9pcDZfcm91dGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgIDIgKy0NCiBpbmNsdWRlL25ldC9pcF9maWIuaCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgNDMgKy0NCiBpbmNsdWRlL25ldC9pcF92cy5oICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICA0NzcgKystDQogaW5jbHVkZS9uZXQvaXB2Ni5oICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDI4ICstDQogaW5jbHVkZS9uZXQvbWFjODAyMTEuaCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTA2ICstDQogaW5jbHVkZS9uZXQvbmV0X25hbWVz
cGFjZS5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsNCiBpbmNsdWRlL25ldC9uZXRl
dmVudC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQ0KIGluY2x1ZGUvbmV0
L25ldGZpbHRlci9uZl9jb25udHJhY2suaCAgICAgICAgICAgICAgIHwgICAyMyArLQ0KIGluY2x1
ZGUvbmV0L25ldGZpbHRlci9uZl9jb25udHJhY2tfZWNhY2hlLmggICAgICAgIHwgICAxMiArLQ0K
IGluY2x1ZGUvbmV0L25ldGZpbHRlci9uZl9jb25udHJhY2tfZXh0ZW5kLmggICAgICAgIHwgICAx
MCArDQogaW5jbHVkZS9uZXQvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19oZWxwZXIuaCAgICAgICAg
fCAgICA2ICsNCiBpbmNsdWRlL25ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2wzcHJvdG8uaCAg
ICAgICB8ICAgIDIgKy0NCiBpbmNsdWRlL25ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3RpbWVz
dGFtcC5oICAgICB8ICAgNjUgKw0KIGluY2x1ZGUvbmV0L25ldGZpbHRlci9uZl9uYXQuaCAgICAg
ICAgICAgICAgICAgICAgIHwgICAgNiArDQogaW5jbHVkZS9uZXQvbmV0ZmlsdGVyL25mX25hdF9j
b3JlLmggICAgICAgICAgICAgICAgfCAgICA0ICstDQogaW5jbHVkZS9uZXQvbmV0bGluay5oICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICsNCiBpbmNsdWRlL25ldC9uZXRucy9j
b25udHJhY2suaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBpbmNsdWRlL25ldC9u
ZXRucy9pcHY0LmggICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQ0KIGluY2x1ZGUv
bmV0L3Bob25ldC9wZXAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyMyArLQ0KIGlu
Y2x1ZGUvbmV0L3Bob25ldC9waG9uZXQuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAr
DQogaW5jbHVkZS9uZXQvcHJvdG9jb2wuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICA0ICstDQogaW5jbHVkZS9uZXQvcm91dGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgMTY0ICstDQogaW5jbHVkZS9uZXQvc2NoX2dlbmVyaWMuaCAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgIDYwICstDQogaW5jbHVkZS9uZXQvc29jay5oICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgICA5ICstDQogaW5jbHVkZS9uZXQvdGNwLmggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICstDQogaW5jbHVkZS9uZXQvdHJhbnNwX3Y2Lmgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstDQogaW5jbHVkZS9uZXQvdWRwLmgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEzICstDQogaW5jbHVkZS9uZXQv
dWRwbGl0ZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEyICsNCiBpbmNsdWRl
L25ldC94ZnJtLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyMTMgKy0NCiBp
bmNsdWRlL3hlbi9ldmVudHMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYg
Kw0KIGluY2x1ZGUveGVuL2ludGVyZmFjZS9pby9uZXRpZi5oICAgICAgICAgICAgICAgICAgIHwg
ICA4MCArLQ0KIGtlcm5lbC9hdWRpdC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgICAgOCArLQ0KIGtlcm5lbC9hdWRpdGZpbHRlci5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAxMCArLQ0KIGtlcm5lbC9pcnEvbWFuYWdlLmMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwgICA4MiArDQogbGliL0tjb25maWcgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDEzICstDQogbGliL01ha2VmaWxlICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsNCiBsaWIvY3B1X3JtYXAuYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyNjkgKysNCiBuZXQvODAyMXEvdmxh
bi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvODAy
MXEvdmxhbl9kZXYuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKw0KIG5l
dC85cC90cmFuc19yZG1hLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAt
DQogbmV0L0tjb25maWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICA2ICsNCiBuZXQvYXRtL2NsaXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDggKy0NCiBuZXQvYmF0bWFuLWFkdi9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDIgKy0NCiBuZXQvYmF0bWFuLWFkdi9hZ2dyZWdhdGlvbi5jICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMTAgKy0NCiBuZXQvYmF0bWFuLWFkdi9hZ2dyZWdhdGlvbi5oICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKy0NCiBuZXQvYmF0bWFuLWFkdi9iYXRfZGVidWdm
cy5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKy0NCiBuZXQvYmF0bWFuLWFkdi9iYXRf
ZGVidWdmcy5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvYmF0bWFuLWFk
di9iYXRfc3lzZnMuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNTMgKy0NCiBuZXQvYmF0
bWFuLWFkdi9iYXRfc3lzZnMuaCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBu
ZXQvYmF0bWFuLWFkdi9iaXRhcnJheS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIg
Ky0NCiBuZXQvYmF0bWFuLWFkdi9iaXRhcnJheS5oICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgIDIgKy0NCiBuZXQvYmF0bWFuLWFkdi9nYXRld2F5X2NsaWVudC5jICAgICAgICAgICAgICAg
ICAgICB8ICAxNDIgKy0NCiBuZXQvYmF0bWFuLWFkdi9nYXRld2F5X2NsaWVudC5oICAgICAgICAg
ICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvYmF0bWFuLWFkdi9nYXRld2F5X2NvbW1vbi5jICAg
ICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvYmF0bWFuLWFkdi9nYXRld2F5X2NvbW1v
bi5oICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvYmF0bWFuLWFkdi9oYXJkLWlu
dGVyZmFjZS5jICAgICAgICAgICAgICAgICAgICB8ICA0MjAgKy0NCiBuZXQvYmF0bWFuLWFkdi9o
YXJkLWludGVyZmFjZS5oICAgICAgICAgICAgICAgICAgICB8ICAgMjEgKy0NCiBuZXQvYmF0bWFu
LWFkdi9oYXNoLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjggKy0NCiBuZXQv
YmF0bWFuLWFkdi9oYXNoLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxMTkgKy0N
CiBuZXQvYmF0bWFuLWFkdi9pY21wX3NvY2tldC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAg
NDMgKy0NCiBuZXQvYmF0bWFuLWFkdi9pY21wX3NvY2tldC5oICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDQgKy0NCiBuZXQvYmF0bWFuLWFkdi9tYWluLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMTYgKy0NCiBuZXQvYmF0bWFuLWFkdi9tYWluLmggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMjkgKy0NCiBuZXQvYmF0bWFuLWFkdi9vcmlnaW5hdG9yLmMgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAyNTQgKy0NCiBuZXQvYmF0bWFuLWFkdi9vcmlnaW5hdG9y
LmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgNTIgKy0NCiBuZXQvYmF0bWFuLWFkdi9wYWNr
ZXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKy0NCiBuZXQvYmF0bWFuLWFk
di9yaW5nX2J1ZmZlci5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvYmF0
bWFuLWFkdi9yaW5nX2J1ZmZlci5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBu
ZXQvYmF0bWFuLWFkdi9yb3V0aW5nLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEwMDAg
KysrLS0NCiBuZXQvYmF0bWFuLWFkdi9yb3V0aW5nLmggICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgMzAgKy0NCiBuZXQvYmF0bWFuLWFkdi9zZW5kLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAxMTAgKy0NCiBuZXQvYmF0bWFuLWFkdi9zZW5kLmggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMTIgKy0NCiBuZXQvYmF0bWFuLWFkdi9zb2Z0LWludGVyZmFjZS5j
ICAgICAgICAgICAgICAgICAgICB8ICAgNzcgKy0NCiBuZXQvYmF0bWFuLWFkdi9zb2Z0LWludGVy
ZmFjZS5oICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKy0NCiBuZXQvYmF0bWFuLWFkdi90cmFu
c2xhdGlvbi10YWJsZS5jICAgICAgICAgICAgICAgICB8ICAyMDggKy0NCiBuZXQvYmF0bWFuLWFk
di90cmFuc2xhdGlvbi10YWJsZS5oICAgICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBuZXQvYmF0
bWFuLWFkdi90eXBlcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNTAgKy0NCiBu
ZXQvYmF0bWFuLWFkdi91bmljYXN0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxMjEg
Ky0NCiBuZXQvYmF0bWFuLWFkdi91bmljYXN0LmggICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMjcgKy0NCiBuZXQvYmF0bWFuLWFkdi92aXMuYyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAxOTQgKy0NCiBuZXQvYmF0bWFuLWFkdi92aXMuaCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvYmx1ZXRvb3RoL0tjb25maWcgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgMjAgKy0NCiBuZXQvYmx1ZXRvb3RoL01ha2VmaWxlICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0NCiBuZXQvYmx1ZXRvb3RoL2FmX2JsdWV0
b290aC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgNTEgKy0NCiBuZXQvYmx1ZXRvb3RoL2Ju
ZXAvY29yZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLQ0KIG5ldC9ibHVldG9v
dGgvYm5lcC9zb2NrLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArDQogbmV0L2Js
dWV0b290aC9jbXRwL2NhcGkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICstDQog
bmV0L2JsdWV0b290aC9jbXRwL2NvcmUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEx
ICstDQogbmV0L2JsdWV0b290aC9oY2lfY29ubi5jICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgIDgwICstDQogbmV0L2JsdWV0b290aC9oY2lfY29yZS5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgMzQ1ICsrLQ0KIG5ldC9ibHVldG9vdGgvaGNpX2V2ZW50LmMgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDY5MSArKystDQogbmV0L2JsdWV0b290aC9oY2lfc29jay5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICstDQogbmV0L2JsdWV0b290aC9oY2lfc3lzZnMu
YyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDU4ICstDQogbmV0L2JsdWV0b290aC9oaWRw
L2NvcmUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDExICstDQogbmV0L2JsdWV0b290
aC97bDJjYXAuYyA9PiBsMmNhcF9jb3JlLmN9ICAgICAgICAgICAgfCAxNzIzICsrLS0tLS0NCiBu
ZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYyAgICAgICAgICAgICAgICAgICAgICAgICB8IDExNTYg
KysrKysNCiBuZXQvYmx1ZXRvb3RoL21nbXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8IDE1ODUgKysrKysrLQ0KIG5ldC9ibHVldG9vdGgvcmZjb21tL2NvcmUuYyAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgMiAtDQogbmV0L2JsdWV0b290aC9zY28uYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDI0ICstDQogbmV0L2JyaWRnZS9icl9kZXZpY2UuYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIxICsNCiBuZXQvYnJpZGdlL2JyX2lmLmMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTUgKy0NCiBuZXQvYnJpZGdlL2JyX2lu
cHV0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjUgKy0NCiBuZXQvYnJpZGdl
L2JyX25ldGZpbHRlci5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKy0NCiBuZXQv
YnJpZGdlL2JyX3ByaXZhdGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0N
CiBuZXQvYnJpZGdlL2JyX3N0cC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
MzkgKy0NCiBuZXQvYnJpZGdlL2JyX3N0cF90aW1lci5jICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDEgKw0KIG5ldC9icmlkZ2UvbmV0ZmlsdGVyL2VidF9pcDYuYyAgICAgICAgICAgICAg
ICAgICAgIHwgICA0NiArLQ0KIG5ldC9icmlkZ2UvbmV0ZmlsdGVyL2VidGFibGVzLmMgICAgICAg
ICAgICAgICAgICAgIHwgICAgMyArDQogbmV0L2NhaWYvY2ZjbmZnLmMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgICAyIC0NCiBuZXQvY2FpZi9jZmRnbWwuYyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQ0KIG5ldC9jYWlmL2Nmc2VybC5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtDQogbmV0L2NhaWYvY2Z1dGlsbC5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0L2NhaWYvY2Z2
ZWlsLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0L2Nv
cmUvZGV2LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNDYzICsrLQ0K
IG5ldC9jb3JlL2RzdC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0
MyArLQ0KIG5ldC9jb3JlL2V0aHRvb2wuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgIDYwNCArKy0NCiBuZXQvY29yZS9maWJfcnVsZXMuYyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDYgKy0NCiBuZXQvY29yZS9maWx0ZXIuYyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgIDYgKy0NCiBuZXQvY29yZS9mbG93LmMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKy0NCiBuZXQvY29yZS9uZWlnaGJvdXIuYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTMgKy0NCiBuZXQvY29yZS9uZXQtc3lzZnMu
YyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTcgKy0NCiBuZXQvY29yZS9uZXRw
b2xsLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTMgKy0NCiBuZXQvY29y
ZS9wa3RnZW4uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyMzMgKy0NCiBu
ZXQvY29yZS9ydG5ldGxpbmsuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgODYg
Ky0NCiBuZXQvY29yZS9za2J1ZmYuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgIDggKy0NCiBuZXQvZGNiL2RjYm5sLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAxNDggKy0NCiBuZXQvZGNjcC9jY2lkcy9jY2lkMi5jICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgIDkgKw0KIG5ldC9kY2NwL2lwdjQuYyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwgICA1MCArLQ0KIG5ldC9kY2NwL2lwdjYuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgIDE4OCArLQ0KIG5ldC9kZWNuZXQvYWZfZGVjbmV0LmMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNiArLQ0KIG5ldC9kZWNuZXQvZG5fZmli
LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyMyArLQ0KIG5ldC9kZWNuZXQv
ZG5fbnNwX291dC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNiArLQ0KIG5ldC9k
ZWNuZXQvZG5fcm91dGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMwMCArLQ0K
IG5ldC9kZWNuZXQvZG5fcnVsZXMuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAx
NyArLQ0KIG5ldC9kZWNuZXQvZG5fdGFibGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAgNyArLQ0KIG5ldC9kc2EvbXY4OGU2MDYwLmMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgNyArLQ0KIG5ldC9pcHY0L0tjb25maWcgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICA0MiArLQ0KIG5ldC9pcHY0L01ha2VmaWxlICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQ0KIG5ldC9pcHY0L2FmX2luZXQuYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0NiArLQ0KIG5ldC9pcHY0L2FoNC5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyNyArLQ0KIG5ldC9pcHY0L2FycC5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyNSArLQ0KIG5ldC9pcHY0
L2RhdGFncmFtLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMSArLQ0KIG5l
dC9pcHY0L2RldmluZXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA3OCAr
DQogbmV0L2lwdjQvZXNwNC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
MTA0ICstDQogbmV0L2lwdjQvZmliX2Zyb250ZW5kLmMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgMTA1ICstDQogbmV0L2lwdjQvZmliX2hhc2guYyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAxMTMzIC0tLS0tDQogbmV0L2lwdjQvZmliX2xvb2t1cC5oICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDEwICstDQogbmV0L2lwdjQvZmliX3J1bGVzLmMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDI1ICstDQogbmV0L2lwdjQvZmliX3NlbWFudGlj
cy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjU3ICstDQogbmV0L2lwdjQvZmliX3Ry
aWUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjcyICstDQogbmV0L2lwdjQv
aWNtcC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjQwICstDQogbmV0
L2lwdjQvaWdtcC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ1ICst
DQogbmV0L2lwdjQvaW5ldF9jb25uZWN0aW9uX3NvY2suYyAgICAgICAgICAgICAgICAgICAgfCAg
IDI3ICstDQogbmV0L2lwdjQvaW5ldHBlZXIuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgMTQ4ICstDQogbmV0L2lwdjQvaXBfZ3JlLmMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgIDU2ICstDQogbmV0L2lwdjQvaXBfaW5wdXQuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0L2lwdjQvaXBfb3V0cHV0LmMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgMzQ1ICstDQogbmV0L2lwdjQvaXBpcC5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM5ICstDQogbmV0L2lwdjQvaXBtci5jICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDc5ICstDQogbmV0L2lwdjQvbmV0
ZmlsdGVyLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICstDQogbmV0L2lw
djQvbmV0ZmlsdGVyL0tjb25maWcgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEzICstDQog
bmV0L2lwdjQvbmV0ZmlsdGVyL01ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAx
IC0NCiBuZXQvaXB2NC9uZXRmaWx0ZXIvYXJwX3RhYmxlcy5jICAgICAgICAgICAgICAgICAgICB8
ICAgIDUgKw0KIG5ldC9pcHY0L25ldGZpbHRlci9pcF90YWJsZXMuYyAgICAgICAgICAgICAgICAg
ICAgIHwgICAgNSArDQogbmV0L2lwdjQvbmV0ZmlsdGVyL2lwdF9DTFVTVEVSSVAuYyAgICAgICAg
ICAgICAgICAgfCAgICA3ICstDQogbmV0L2lwdjQvbmV0ZmlsdGVyL2lwdF9MT0cuYyAgICAgICAg
ICAgICAgICAgICAgICAgfCAgICAzICstDQogbmV0L2lwdjQvbmV0ZmlsdGVyL2lwdF9hZGRydHlw
ZS5jICAgICAgICAgICAgICAgICAgfCAgMTM0IC0NCiBuZXQvaXB2NC9uZXRmaWx0ZXIvaXB0YWJs
ZV9tYW5nbGUuYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiAuLi4vbmV0ZmlsdGVyL25mX2Nv
bm50cmFja19sM3Byb3RvX2lwdjRfY29tcGF0LmMgICB8ICAgMTcgKy0NCiBuZXQvaXB2NC9uZXRm
aWx0ZXIvbmZfbmF0X2FtYW5kYS5jICAgICAgICAgICAgICAgICB8ICAgIDggKy0NCiBuZXQvaXB2
NC9uZXRmaWx0ZXIvbmZfbmF0X2NvcmUuYyAgICAgICAgICAgICAgICAgICB8ICAgMzMgKy0NCiBu
ZXQvaXB2NC9uZXRmaWx0ZXIvbmZfbmF0X3NubXBfYmFzaWMuYyAgICAgICAgICAgICB8ICAgIDkg
Ky0NCiBuZXQvaXB2NC9uZXRmaWx0ZXIvbmZfbmF0X3N0YW5kYWxvbmUuYyAgICAgICAgICAgICB8
ICAgIDkgKy0NCiBuZXQvaXB2NC9yYXcuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgMzkgKy0NCiBuZXQvaXB2NC9yb3V0ZS5jICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8IDExODEgKysrLS0tDQogbmV0L2lwdjQvc3luY29va2llcy5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDI1ICstDQogbmV0L2lwdjQvdGNwLmMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIwICstDQogbmV0L2lwdjQvdGNwX2JpYy5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0L2lwdjQvdGNw
X2N1YmljLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ3ICstDQogbmV0L2lw
djQvdGNwX2hpZ2hzcGVlZC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQog
bmV0L2lwdjQvdGNwX2h0Y3AuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAy
ICstDQogbmV0L2lwdjQvdGNwX2h5YmxhLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgICAyICstDQogbmV0L2lwdjQvdGNwX2lsbGlub2lzLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgICAyICstDQogbmV0L2lwdjQvdGNwX2lucHV0LmMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgICA0ICstDQogbmV0L2lwdjQvdGNwX2lwdjQuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDM3ICstDQogbmV0L2lwdjQvdGNwX2xwLmMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0L2lwdjQvdGNwX3NjYWxhYmxl
LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0L2lwdjQvdGNwX3Rp
bWVyLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzIC0NCiBuZXQvaXB2NC90
Y3BfdmVnYXMuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQv
aXB2NC90Y3BfdmVuby5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0N
CiBuZXQvaXB2NC90Y3Bfd2VzdHdvb2QuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
IDIgKy0NCiBuZXQvaXB2NC90Y3BfeWVhaC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKy0NCiBuZXQvaXB2NC91ZHAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAxMzkgKy0NCiBuZXQvaXB2NC94ZnJtNF9wb2xpY3kuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgNzQgKy0NCiBuZXQvaXB2NC94ZnJtNF9zdGF0ZS5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgMjAgKy0NCiBuZXQvaXB2Ni9hZGRyY29uZi5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgLQ0KIG5ldC9pcHY2L2FmX2luZXQ2LmMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0OSArLQ0KIG5ldC9pcHY2L2FoNi5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIG5ldC9pcHY2
L2RhdGFncmFtLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA4OCArLQ0KIG5l
dC9pcHY2L2VzcDYuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEwOSAr
LQ0KIG5ldC9pcHY2L2V4dGhkcnMuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAxMiArLQ0KIG5ldC9pcHY2L2ZpYjZfcnVsZXMuYyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgICAxOSArLQ0KIG5ldC9pcHY2L2ljbXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgIDIyNiArLQ0KIG5ldC9pcHY2L2luZXQ2X2Nvbm5lY3Rpb25fc29jay5jICAg
ICAgICAgICAgICAgICAgIHwgICA4MSArLQ0KIG5ldC9pcHY2L2lwNl9maWIuYyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQ0KIG5ldC9pcHY2L2lwNl9mbG93bGFiZWwu
YyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArLQ0KIG5ldC9pcHY2L2lwNl9vdXRw
dXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE1NiArLQ0KIG5ldC9pcHY2L2lw
Nl90dW5uZWwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA4MiArLQ0KIG5ldC9p
cHY2L2lwNm1yLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA1NiArLQ0K
IG5ldC9pcHY2L2lwdjZfc29ja2dsdWUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAx
MCArLQ0KIG5ldC9pcHY2L21jYXN0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAyNyArLQ0KIG5ldC9pcHY2L21pcDYuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAxNiArLQ0KIG5ldC9pcHY2L25kaXNjLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAyMiArLQ0KIG5ldC9pcHY2L25ldGZpbHRlci5jICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAxOSArLQ0KIG5ldC9pcHY2L25ldGZpbHRlci9pcDZfdGFi
bGVzLmMgICAgICAgICAgICAgICAgICAgIHwgICAgNSArDQogbmV0L2lwdjYvbmV0ZmlsdGVyL2lw
NnRfTE9HLmMgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICstDQogbmV0L2lwdjYvbmV0Zmls
dGVyL2lwNnRfUkVKRUNULmMgICAgICAgICAgICAgICAgICAgfCAgIDIxICstDQogbmV0L2lwdjYv
bmV0ZmlsdGVyL25mX2Nvbm50cmFja19yZWFzbS5jICAgICAgICAgICAgfCAgICAzICstDQogbmV0
L2lwdjYvcmF3LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTA2ICst
DQogbmV0L2lwdjYvcm91dGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
MTg2ICstDQogbmV0L2lwdjYvc2l0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgIDU2ICstDQogbmV0L2lwdjYvc3luY29va2llcy5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgIDMxICstDQogbmV0L2lwdjYvdGNwX2lwdjYuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgMTY5ICstDQogbmV0L2lwdjYvdWRwLmMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDkxICstDQogbmV0L2lwdjYveGZybTZfcG9saWN5LmMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ5ICstDQogbmV0L2lwdjYveGZybTZfc3Rh
dGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIwICstDQogbmV0L2tleS9hZl9r
ZXkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjQzICstDQogbmV0L2wy
dHAvbDJ0cF9pcC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICstDQog
bmV0L2xsYy9sbGNfaW5wdXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDI1
ICstDQogbmV0L21hYzgwMjExL0tjb25maWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgICA0ICstDQogbmV0L21hYzgwMjExL2FnZy1yeC5jICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgICA3ICstDQogbmV0L21hYzgwMjExL2FnZy10eC5jICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDIzICstDQogbmV0L21hYzgwMjExL2NmZy5jICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgMTE2ICstDQogbmV0L21hYzgwMjExL2NoYW4uYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICsNCiBuZXQvbWFjODAyMTEvZGVidWdmcy5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKw0KIG5ldC9tYWM4MDIxMS9kZWJ1
Z2ZzX25ldGRldi5jICAgICAgICAgICAgICAgICAgICAgIHwgIDEyMiArLQ0KIG5ldC9tYWM4MDIx
MS9kcml2ZXItb3BzLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2NyArLQ0KIG5ldC9t
YWM4MDIxMS9kcml2ZXItdHJhY2UuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgIDI3NCArLQ0K
IG5ldC9tYWM4MDIxMS9odC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg
NSArLQ0KIG5ldC9tYWM4MDIxMS9pYnNzLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAyMSArLQ0KIG5ldC9tYWM4MDIxMS9pZWVlODAyMTFfaS5oICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAxNyArLQ0KIG5ldC9tYWM4MDIxMS9pZmFjZS5jICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgOSArLQ0KIG5ldC9tYWM4MDIxMS9rZXkuaCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgMSAtDQogbmV0L21hYzgwMjExL21haW4uYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDg4ICstDQogbmV0L21hYzgwMjExL21lc2guYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstDQogbmV0L21hYzgwMjExL21s
bWUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTQ0ICstDQogbmV0L21hYzgw
MjExL29mZmNoYW5uZWwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDY4ICstDQogbmV0
L21hYzgwMjExL3JjODAyMTFfbWluc3RyZWxfaHQuYyAgICAgICAgICAgICAgICAgfCAgIDYwICst
DQogbmV0L21hYzgwMjExL3JjODAyMTFfcGlkLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAzIC0NCiBuZXQvbWFjODAyMTEvcnguYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICAxMzAgKy0NCiBuZXQvbWFjODAyMTEvc2Nhbi5jICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAxMzggKy0NCiBuZXQvbWFjODAyMTEvc3RhX2luZm8uYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgIDMgKy0NCiBuZXQvbWFjODAyMTEvc3RhX2luZm8uaCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKw0KIG5ldC9tYWM4MDIxMS9zdGF0dXMuYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArLQ0KIG5ldC9tYWM4MDIxMS90eC5jICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE5NCArLQ0KIG5ldC9tYWM4MDIxMS91
dGlsLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiAtDQogbmV0L21hYzgw
MjExL3dvcmsuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTIyICstDQogbmV0
L21hYzgwMjExL3dwYS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM5ICst
DQogbmV0L25ldGZpbHRlci9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
IDc3ICstDQogbmV0L25ldGZpbHRlci9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgIDEwICsNCiBuZXQvbmV0ZmlsdGVyL2NvcmUuYyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMjAgKy0NCiBuZXQvbmV0ZmlsdGVyL2lwc2V0L0tjb25maWcgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAxMjIgKw0KIG5ldC9uZXRmaWx0ZXIvaXBzZXQvTWFrZWZpbGUgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAyNCArDQogbmV0L25ldGZpbHRlci9pcHNldC9pcF9zZXRf
Yml0bWFwX2lwLmMgICAgICAgICAgICAgfCAgNTg3ICsrKw0KIG5ldC9uZXRmaWx0ZXIvaXBzZXQv
aXBfc2V0X2JpdG1hcF9pcG1hYy5jICAgICAgICAgIHwgIDY1MiArKysNCiBuZXQvbmV0ZmlsdGVy
L2lwc2V0L2lwX3NldF9iaXRtYXBfcG9ydC5jICAgICAgICAgICB8ICA1MTUgKysNCiBuZXQvbmV0
ZmlsdGVyL2lwc2V0L2lwX3NldF9jb3JlLmMgICAgICAgICAgICAgICAgICB8IDE2NzEgKysrKysr
Kw0KIG5ldC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2dldHBvcnQuYyAgICAgICAgICAgICAgIHwg
IDE0MSArDQogbmV0L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaF9pcC5jICAgICAgICAgICAg
ICAgfCAgNDY0ICsrDQogbmV0L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaF9pcHBvcnQuYyAg
ICAgICAgICAgfCAgNTQ0ICsrKw0KIG5ldC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2hhc2hfaXBw
b3J0aXAuYyAgICAgICAgIHwgIDU2MiArKysNCiBuZXQvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9o
YXNoX2lwcG9ydG5ldC5jICAgICAgICB8ICA2MjggKysrDQogbmV0L25ldGZpbHRlci9pcHNldC9p
cF9zZXRfaGFzaF9uZXQuYyAgICAgICAgICAgICAgfCAgNDU4ICsrDQogbmV0L25ldGZpbHRlci9p
cHNldC9pcF9zZXRfaGFzaF9uZXRwb3J0LmMgICAgICAgICAgfCAgNTc4ICsrKw0KIG5ldC9uZXRm
aWx0ZXIvaXBzZXQvaXBfc2V0X2xpc3Rfc2V0LmMgICAgICAgICAgICAgIHwgIDU4NCArKysNCiBu
ZXQvbmV0ZmlsdGVyL2lwc2V0L3BmeGxlbi5jICAgICAgICAgICAgICAgICAgICAgICB8ICAyOTEg
KysNCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfYXBwLmMgICAgICAgICAgICAgICAgICAgICB8
ICAgOTggKy0NCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfY29ubi5jICAgICAgICAgICAgICAg
ICAgICB8ICAyNDggKy0NCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfY29yZS5jICAgICAgICAg
ICAgICAgICAgICB8ICA0NTYgKystDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX2N0bC5jICAg
ICAgICAgICAgICAgICAgICAgfCAxMDAyICsrKy0tDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3Zz
X2VzdC5jICAgICAgICAgICAgICAgICAgICAgfCAgMTcxICstDQogbmV0L25ldGZpbHRlci9pcHZz
L2lwX3ZzX2Z0cC5jICAgICAgICAgICAgICAgICAgICAgfCAgIDYxICstDQogbmV0L25ldGZpbHRl
ci9pcHZzL2lwX3ZzX2xibGMuYyAgICAgICAgICAgICAgICAgICAgfCAgIDk5ICstDQogbmV0L25l
dGZpbHRlci9pcHZzL2lwX3ZzX2xibGNyLmMgICAgICAgICAgICAgICAgICAgfCAgMTE0ICstDQog
bmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX2xjLmMgICAgICAgICAgICAgICAgICAgICAgfCAgIDIw
ICstDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX25mY3QuYyAgICAgICAgICAgICAgICAgICAg
fCAgICA2ICstDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX25xLmMgICAgICAgICAgICAgICAg
ICAgICAgfCAgICAyICstDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX3BlLmMgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDE3ICstDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX3BlX3NpcC5j
ICAgICAgICAgICAgICAgICAgfCAgIDEyICstDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX3By
b3RvLmMgICAgICAgICAgICAgICAgICAgfCAgMTI5ICstDQogbmV0L25ldGZpbHRlci9pcHZzL2lw
X3ZzX3Byb3RvX2FoX2VzcC5jICAgICAgICAgICAgfCAgIDQ1ICstDQogbmV0L25ldGZpbHRlci9p
cHZzL2lwX3ZzX3Byb3RvX3NjdHAuYyAgICAgICAgICAgICAgfCAgMTUzICstDQogbmV0L25ldGZp
bHRlci9pcHZzL2lwX3ZzX3Byb3RvX3RjcC5jICAgICAgICAgICAgICAgfCAgMTQyICstDQogbmV0
L25ldGZpbHRlci9pcHZzL2lwX3ZzX3Byb3RvX3VkcC5jICAgICAgICAgICAgICAgfCAgMTEwICst
DQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX3JyLmMgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAyICstDQogbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX3NjaGVkLmMgICAgICAgICAgICAgICAg
ICAgfCAgIDI1ICsNCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfc2VkLmMgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDIgKy0NCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfc2guYyAgICAgICAg
ICAgICAgICAgICAgICB8ICAgIDIgKy0NCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfc3luYy5j
ICAgICAgICAgICAgICAgICAgICB8IDEyMzggKysrKy0NCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBf
dnNfd2xjLmMgICAgICAgICAgICAgICAgICAgICB8ICAgMjIgKy0NCiBuZXQvbmV0ZmlsdGVyL2lw
dnMvaXBfdnNfd3JyLmMgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKy0NCiBuZXQvbmV0Zmls
dGVyL2lwdnMvaXBfdnNfeG1pdC5jICAgICAgICAgICAgICAgICAgICB8ICAxMTcgKy0NCiBuZXQv
bmV0ZmlsdGVyL25mX2Nvbm50cmFja19icm9hZGNhc3QuYyAgICAgICAgICAgICB8ICAgODIgKw0K
IG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2NvcmUuYyAgICAgICAgICAgICAgICAgIHwgICA1
OCArLQ0KIG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2V4cGVjdC5jICAgICAgICAgICAgICAg
IHwgICAzNCArLQ0KIG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2V4dGVuZC5jICAgICAgICAg
ICAgICAgIHwgICAxMSArLQ0KIG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2gzMjNfbWFpbi5j
ICAgICAgICAgICAgIHwgICAzMiArLQ0KIG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2hlbHBl
ci5jICAgICAgICAgICAgICAgIHwgICAyMCArLQ0KIG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNr
X25ldGJpb3NfbnMuYyAgICAgICAgICAgIHwgICA3NCArLQ0KIG5ldC9uZXRmaWx0ZXIvbmZfY29u
bnRyYWNrX25ldGxpbmsuYyAgICAgICAgICAgICAgIHwgICA0OSArLQ0KIG5ldC9uZXRmaWx0ZXIv
bmZfY29ubnRyYWNrX3Byb3RvLmMgICAgICAgICAgICAgICAgIHwgICAyNCArLQ0KIG5ldC9uZXRm
aWx0ZXIvbmZfY29ubnRyYWNrX3Byb3RvX2RjY3AuYyAgICAgICAgICAgIHwgICAgMyArDQogbmV0
L25ldGZpbHRlci9uZl9jb25udHJhY2tfcHJvdG9fc2N0cC5jICAgICAgICAgICAgfCAgICAxICsN
CiBuZXQvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19wcm90b190Y3AuYyAgICAgICAgICAgICB8ICAg
MTggKy0NCiBuZXQvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zbm1wLmMgICAgICAgICAgICAgICAg
ICB8ICAgNzcgKw0KIG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3N0YW5kYWxvbmUuYyAgICAg
ICAgICAgIHwgICA0NSArLQ0KIG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3RpbWVzdGFtcC5j
ICAgICAgICAgICAgIHwgIDEyMCArDQogbmV0L25ldGZpbHRlci9uZl9sb2cuYyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgICA2ICstDQogbmV0L25ldGZpbHRlci9uZl9xdWV1ZS5jICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDgyICstDQogbmV0L25ldGZpbHRlci9uZm5ldGxp
bmtfbG9nLmMgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICstDQogbmV0L25ldGZpbHRlci9u
Zm5ldGxpbmtfcXVldWUuYyAgICAgICAgICAgICAgICAgICAgfCAgIDIyICstDQogbmV0L25ldGZp
bHRlci94X3RhYmxlcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTI0ICstDQogbmV0
L25ldGZpbHRlci94dF9BVURJVC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjIyICsN
CiBuZXQvbmV0ZmlsdGVyL3h0X0NMQVNTSUZZLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
MzYgKy0NCiBuZXQvbmV0ZmlsdGVyL3h0X0lETEVUSU1FUi5jICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKw0KIG5ldC9uZXRmaWx0ZXIveHRfTEVELmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgMiArDQogbmV0L25ldGZpbHRlci94dF9ORlFVRVVFLmMgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDM0ICstDQogbmV0L25ldGZpbHRlci94dF9UQ1BNU1MuYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDE1ICstDQogbmV0L25ldGZpbHRlci94dF9URUUuYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDI3ICstDQogbmV0L25ldGZpbHRlci94dF9hZGRy
dHlwZS5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjI5ICsNCiBuZXQvbmV0ZmlsdGVyL3h0
X2Nvbm5saW1pdC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgOTkgKy0NCiBuZXQvbmV0Zmls
dGVyL3h0X2Nvbm50cmFjay5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgODAgKy0NCiBuZXQv
bmV0ZmlsdGVyL3h0X2NwdS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKw0K
IG5ldC9uZXRmaWx0ZXIveHRfZGV2Z3JvdXAuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICA4
MiArDQogbmV0L25ldGZpbHRlci94dF9pcHJhbmdlLmMgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgIDE4ICstDQogbmV0L25ldGZpbHRlci94dF9pcHZzLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgICAyICstDQogbmV0L25ldGZpbHRlci94dF9zZXQuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgMzU5ICsrDQogbmV0L25ldGxhYmVsL25ldGxhYmVsX3VzZXIuaCAgICAg
ICAgICAgICAgICAgICAgICAgfCAgICA2ICstDQogbmV0L25ldGxpbmsvYWZfbmV0bGluay5jICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5IC0NCiBuZXQvcGFja2V0L2FmX3BhY2tldC5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNDEgKy0NCiBuZXQvcGhvbmV0L0tjb25m
aWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTIgLQ0KIG5ldC9waG9uZXQv
YWZfcGhvbmV0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMiArLQ0KIG5ldC9w
aG9uZXQvcGVwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDgzNCArKy0t
DQogbmV0L3Bob25ldC9zb2NrZXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
MTI2ICstDQogbmV0L3Jkcy9yZHMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgICAxIC0NCiBuZXQvcm9zZS9hZl9yb3NlLmMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgIDcgLQ0KIG5ldC9yb3NlL3Jvc2Vfcm91dGUuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAyOCArLQ0KIG5ldC9yeHJwYy9hci1wZWVyLmMgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAyOCArLQ0KIG5ldC9zY2hlZC9LY29uZmlnICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzOSArLQ0KIG5ldC9zY2hlZC9NYWtlZmlsZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArDQogbmV0L3NjaGVkL2FjdF9h
cGkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ2ICstDQogbmV0L3NjaGVk
L2FjdF9jc3VtLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0
L3NjaGVkL2FjdF9nYWN0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICst
DQogbmV0L3NjaGVkL2FjdF9pcHQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
IDE2ICstDQogbmV0L3NjaGVkL2FjdF9taXJyZWQuYyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgICA0ICstDQogbmV0L3NjaGVkL2FjdF9uYXQuYyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgICAyICstDQogbmV0L3NjaGVkL2FjdF9wZWRpdC5jICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgIDEwICstDQogbmV0L3NjaGVkL2FjdF9wb2xpY2UuYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICstDQogbmV0L3NjaGVkL2FjdF9zaW1wbGUuYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEwICstDQogbmV0L3NjaGVkL2FjdF9za2Jl
ZGl0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICstDQogbmV0L3NjaGVkL2Ns
c19hcGkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDMzICstDQogbmV0L3Nj
aGVkL2Nsc19iYXNpYy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE3ICstDQog
bmV0L3NjaGVkL2Nsc19jZ3JvdXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4
ICstDQogbmV0L3NjaGVkL2Nsc19mbG93LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgICA2ICstDQogbmV0L3NjaGVkL2Nsc19mdy5jICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgIDM4ICstDQogbmV0L3NjaGVkL2Nsc19yb3V0ZS5jICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgMTI2ICstDQogbmV0L3NjaGVkL2Nsc19yc3ZwLmggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDk1ICstDQogbmV0L3NjaGVkL2Nsc190Y2luZGV4LmMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstDQogbmV0L3NjaGVkL2Nsc191MzIuYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDg5ICstDQogbmV0L3NjaGVkL2VtX2Nt
cC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ3ICstDQogbmV0L3NjaGVk
L2VtX21ldGEuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ4ICstDQogbmV0
L3NjaGVkL2VtX25ieXRlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICst
DQogbmV0L3NjaGVkL2VtX3RleHQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAzICstDQogbmV0L3NjaGVkL2VtX3UzMi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgICAyICstDQogbmV0L3NjaGVkL2VtYXRjaC5jICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgIDM3ICstDQogbmV0L3NjaGVkL3NjaF9hcGkuYyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgMTczICstDQogbmV0L3NjaGVkL3NjaF9hdG0uYyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICstDQogbmV0L3NjaGVkL3NjaF9jYnEuYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzYyICstDQogbmV0L3NjaGVkL3NjaF9jaG9r
ZS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNjg4ICsrKw0KIG5ldC9zY2hlZC9z
Y2hfZHNtYXJrLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyMSArLQ0KIG5ldC9z
Y2hlZC9zY2hfZmlmby5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA1MCArLQ0K
IG5ldC9zY2hlZC9zY2hfZ2VuZXJpYy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA1
OCArLQ0KIG5ldC9zY2hlZC9zY2hfZ3JlZC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICA4NSArLQ0KIG5ldC9zY2hlZC9zY2hfaGZzYy5jICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAzNyArLQ0KIG5ldC9zY2hlZC9zY2hfaHRiLmMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDEwNiArLQ0KIG5ldC9zY2hlZC9zY2hfbXEuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgMSAtDQogbmV0L3NjaGVkL3NjaF9tcXByaW8uYyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgNDE4ICsrDQogbmV0L3NjaGVkL3NjaF9tdWx0aXEu
YyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICstDQogbmV0L3NjaGVkL3NjaF9u
ZXRlbS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNDExICsrLQ0KIG5ldC9zY2hl
ZC9zY2hfcHJpby5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzNCArLQ0KIG5l
dC9zY2hlZC9zY2hfcmVkLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2MSAr
LQ0KIG5ldC9zY2hlZC9zY2hfc2ZiLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
IDcwOSArKysNCiBuZXQvc2NoZWQvc2NoX3NmcS5jICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgNjcgKy0NCiBuZXQvc2NoZWQvc2NoX3RiZi5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgMzkgKy0NCiBuZXQvc2NoZWQvc2NoX3RlcWwuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgMzYgKy0NCiBuZXQvc2N0cC9hc3NvY2lvbGEuYyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLQ0KIG5ldC9zY3RwL2lucHV0LmMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyAtDQogbmV0L3NjdHAvaXB2Ni5jICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQyICstDQogbmV0L3NjdHAvb3V0
cXVldWUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyIC0NCiBuZXQvc2N0
cC9wcm90b2NvbC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzMgKy0NCiBu
ZXQvc2N0cC9zbV9tYWtlX2NodW5rLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMg
LQ0KIG5ldC9zY3RwL3NvY2tldC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAxMSArLQ0KIG5ldC9zY3RwL3Rzbm1hcC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgICAgMiArLQ0KIG5ldC9zY3RwL3VscHF1ZXVlLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAgNyArLQ0KIG5ldC9zb2NrZXQuYyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwgICAzMSArLQ0KIG5ldC9zdW5ycGMvc3Zjc29jay5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICAzMiArLQ0KIG5ldC90aXBjL0tjb25maWcgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMiAtDQogbmV0L3RpcGMvYWRkci5jICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICstDQogbmV0L3RpcGMvYWRk
ci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE3ICstDQogbmV0L3Rp
cGMvYmNhc3QuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ3ICstDQog
bmV0L3RpcGMvYmNhc3QuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAz
ICstDQogbmV0L3RpcGMvYmVhcmVyLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgMTE2ICstDQogbmV0L3RpcGMvYmVhcmVyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgIDczICstDQogbmV0L3RpcGMvY29uZmlnLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDMxICstDQogbmV0L3RpcGMvY29yZS5jICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgICA5ICstDQogbmV0L3RpcGMvY29yZS5oICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstDQogbmV0L3RpcGMvZGlzY292ZXIuYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTQwICstDQogbmV0L3RpcGMvZGlzY292
ZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICstDQogbmV0L3RpcGMv
bGluay5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTMwICstDQogbmV0
L3RpcGMvbGluay5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDI5ICst
DQogbmV0L3RpcGMvbXNnLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
IDQxICstDQogbmV0L3RpcGMvbXNnLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgIDY0ICstDQogbmV0L3RpcGMvbmFtZV9kaXN0ci5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgIDE4ICstDQogbmV0L3RpcGMvbmV0LmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgIDMyICstDQogbmV0L3RpcGMvbmV0LmggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDE5ICstDQogbmV0L3RpcGMvbm9kZS5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTI1ICstDQogbmV0L3RpcGMvbm9kZS5oICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICstDQogbmV0L3RpcGMvbm9k
ZV9zdWJzY3IuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIxICstDQogbmV0L3Rp
cGMvbm9kZV9zdWJzY3IuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICstDQog
bmV0L3RpcGMvcG9ydC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzA2
ICstDQogbmV0L3RpcGMvcG9ydC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgIDczICstDQogbmV0L3RpcGMvc29ja2V0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgIDc2ICstDQogbmV0L3RpcGMvc3Vic2NyLmMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgIDEzICstDQogbmV0L3VuaXgvYWZfdW5peC5jICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDcyICstDQogbmV0L3dhbnJvdXRlci93YW5tYWluLmMgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyIC0NCiBuZXQvd2lyZWxlc3MvY29yZS5jICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjAgKy0NCiBuZXQvd2lyZWxlc3MvZXRo
dG9vbC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzMgKw0KIG5ldC93aXJlbGVz
cy9ubDgwMjExLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2MiArLQ0KIG5ldC93
aXJlbGVzcy9yZWcuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0NSArLQ0K
IG5ldC93aXJlbGVzcy9yZWcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg
MSArDQogbmV0L3dpcmVsZXNzL3V0aWwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgIDQ3ICstDQogbmV0L3dpcmVsZXNzL3dleHQtY29tcGF0LmMgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgICA1ICstDQogbmV0L3hmcm0vTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgICAyICstDQogbmV0L3hmcm0veGZybV9hbGdvLmMgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgICA4ICstDQogbmV0L3hmcm0veGZybV9oYXNoLmggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDMyICstDQogbmV0L3hmcm0veGZybV9pbnB1dC5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEzICstDQogbmV0L3hmcm0veGZybV9v
dXRwdXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICstDQogbmV0L3hmcm0v
eGZybV9wb2xpY3kuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjE4ICstDQogbmV0
L3hmcm0veGZybV9yZXBsYXkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNTM0ICsr
Kw0KIG5ldC94ZnJtL3hmcm1fc3RhdGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
IDE3NSArLQ0KIG5ldC94ZnJtL3hmcm1fdXNlci5jICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgIDIwOSArLQ0KIHNlY3VyaXR5L2NhcGFiaWxpdHkuYyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAgMiArLQ0KIHNlY3VyaXR5L2NvbW1vbmNhcC5jICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwgICAgMyArLQ0KIHNlY3VyaXR5L3NlY3VyaXR5LmMgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICAgNyArLQ0KIHNlY3VyaXR5L3NlbGludXgvaG9va3Mu
YyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOCArLQ0KIHNlY3VyaXR5L3NlbGludXgv
aW5jbHVkZS94ZnJtLmggICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KIHNlY3VyaXR5L3Nl
bGludXgveGZybS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArLQ0KIDExNDYg
ZmlsZXMgY2hhbmdlZCwgMTE4OTk1IGluc2VydGlvbnMoKyksIDM4MTgwIGRlbGV0aW9ucygtKQ0K
IGNyZWF0ZSBtb2RlIDEwMDY0NCBjcnlwdG8vYXV0aGVuY2Vzbi5jDQogY3JlYXRlIG1vZGUgMTAw
NjQ0IGRyaXZlcnMvbmV0L2JvbmRpbmcvYm9uZF9wcm9jZnMuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0
NCBkcml2ZXJzL25ldC9jYW4vY19jYW4vS2NvbmZpZw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2
ZXJzL25ldC9jYW4vY19jYW4vTWFrZWZpbGUNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9u
ZXQvY2FuL2NfY2FuL2NfY2FuLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvY2Fu
L2NfY2FuL2NfY2FuLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvY2FuL2NfY2Fu
L2NfY2FuX3BsYXRmb3JtLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvZW5pYy9l
bmljX2Rldi5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L2VuaWMvZW5pY19kZXYu
aA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC9mdG1hYzEwMC5jDQogY3JlYXRlIG1v
ZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L2Z0bWFjMTAwLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJp
dmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDVrL3RyYWNlLmgNCiBkZWxldGUgbW9kZSAxMDA2NDQg
ZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDlrL3ZpcnR1YWwuYw0KIGNyZWF0ZSBtb2RlIDEw
MDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9LY29uZmlnDQogY3JlYXRlIG1vZGUg
MTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L01ha2VmaWxlDQogcmVuYW1lIGRy
aXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZpID0+IGl3bGVnYWN5fS9pd2wtMzk0NS1kZWJ1Z2Zz
LmMgKDk5JSkNCiBjb3B5IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZpID0+IGl3bGVnYWN5
fS9pd2wtMzk0NS1kZWJ1Z2ZzLmggKDk1JSkNCiByZW5hbWUgZHJpdmVycy9uZXQvd2lyZWxlc3Mv
e2l3bHdpZmkgPT4gaXdsZWdhY3l9L2l3bC0zOTQ1LWZoLmggKDk4JSkNCiByZW5hbWUgZHJpdmVy
cy9uZXQvd2lyZWxlc3Mve2l3bHdpZmkgPT4gaXdsZWdhY3l9L2l3bC0zOTQ1LWh3LmggKDk2JSkN
CiBjb3B5IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZpID0+IGl3bGVnYWN5fS9pd2wtMzk0
NS1sZWQuYyAoNzMlKQ0KIGNvcHkgZHJpdmVycy9uZXQvd2lyZWxlc3Mve2l3bHdpZmkgPT4gaXds
ZWdhY3l9L2l3bC0zOTQ1LWxlZC5oICg5NSUpDQogcmVuYW1lIGRyaXZlcnMvbmV0L3dpcmVsZXNz
L3tpd2x3aWZpID0+IGl3bGVnYWN5fS9pd2wtMzk0NS1ycy5jICg5NiUpDQogcmVuYW1lIGRyaXZl
cnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZpID0+IGl3bGVnYWN5fS9pd2wtMzk0NS5jICg5MiUpDQog
cmVuYW1lIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZpID0+IGl3bGVnYWN5fS9pd2wtMzk0
NS5oICg5NyUpDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVn
YWN5L2l3bC00OTY1LWNhbGliLmMNCiBjb3B5IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZp
L2l3bC1sZWdhY3kuaCA9PiBpd2xlZ2FjeS9pd2wtNDk2NS1jYWxpYi5ofSAoODAlKQ0KIGNyZWF0
ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtNDk2NS1kZWJ1
Z2ZzLmMNCiByZW5hbWUgZHJpdmVycy9uZXQvd2lyZWxlc3Mve2l3bHdpZmkvaXdsLTM5NDUtZGVi
dWdmcy5oID0+IGl3bGVnYWN5L2l3bC00OTY1LWRlYnVnZnMuaH0gKDYxJSkNCiByZW5hbWUgZHJp
dmVycy9uZXQvd2lyZWxlc3Mve2l3bHdpZmkvaXdsLWxlZ2FjeS5oID0+IGl3bGVnYWN5L2l3bC00
OTY1LWVlcHJvbS5jfSAoNTMlKQ0KIHJlbmFtZSBkcml2ZXJzL25ldC93aXJlbGVzcy97aXdsd2lm
aSA9PiBpd2xlZ2FjeX0vaXdsLTQ5NjUtaHcuaCAoOTclKQ0KIHJlbmFtZSBkcml2ZXJzL25ldC93
aXJlbGVzcy97aXdsd2lmaS9pd2wtMzk0NS1sZWQuYyA9PiBpd2xlZ2FjeS9pd2wtNDk2NS1sZWQu
Y30gKDY1JSkNCiBjb3B5IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZpL2l3bC0zOTQ1LWxl
ZC5oID0+IGl3bGVnYWN5L2l3bC00OTY1LWxlZC5ofSAoODElKQ0KIGNyZWF0ZSBtb2RlIDEwMDY0
NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtNDk2NS1saWIuYw0KIGNyZWF0ZSBt
b2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtNDk2NS1ycy5jDQog
cmVuYW1lIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3aWZpL2l3bC1hZ24tcnguYyA9PiBpd2xl
Z2FjeS9pd2wtNDk2NS1yeC5jfSAoNTklKQ0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25l
dC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtNDk2NS1zdGEuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBk
cml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtNDk2NS10eC5jDQogY3JlYXRlIG1vZGUg
MTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC00OTY1LXVjb2RlLmMNCiBy
ZW5hbWUgZHJpdmVycy9uZXQvd2lyZWxlc3Mve2l3bHdpZmkgPT4gaXdsZWdhY3l9L2l3bC00OTY1
LmMgKDcxJSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdh
Y3kvaXdsLTQ5NjUuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9p
d2xlZ2FjeS9pd2wtY29tbWFuZHMuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93
aXJlbGVzcy9pd2xlZ2FjeS9pd2wtY29yZS5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMv
bmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1jb3JlLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJp
dmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWNzci5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0
IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1kZWJ1Zy5oDQogY3JlYXRlIG1vZGUg
MTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1kZWJ1Z2ZzLmMNCiBjcmVh
dGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWRldi5oDQog
Y29weSBkcml2ZXJzL25ldC93aXJlbGVzcy97aXdsd2lmaS9pd2wtMzk0NS1sZWQuaCA9PiBpd2xl
Z2FjeS9pd2wtZGV2dHJhY2UuY30gKDU5JSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9u
ZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWRldnRyYWNlLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQg
ZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLWVlcHJvbS5jDQogY3JlYXRlIG1vZGUg
MTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1lZXByb20uaA0KIGNyZWF0
ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtZmguaA0KIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtaGNtZC5j
DQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1o
ZWxwZXJzLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdh
Y3kvaXdsLWlvLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvaXds
ZWdhY3kvaXdsLWxlZC5jDQogY29weSBkcml2ZXJzL25ldC93aXJlbGVzcy97aXdsd2lmaS9pd2wt
Mzk0NS1sZWQuaCA9PiBpd2xlZ2FjeS9pd2wtbGVkLmh9ICg1OSUpDQogY3JlYXRlIG1vZGUgMTAw
NjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1sZWdhY3ktcnMuaA0KIGNyZWF0
ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtcG93ZXIuYw0K
IGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtcG93
ZXIuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9p
d2wtcHJwaC5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bGVn
YWN5L2l3bC1yeC5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3
bGVnYWN5L2l3bC1zY2FuLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxl
c3MvaXdsZWdhY3kvaXdsLXNwZWN0cnVtLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9u
ZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsLXN0YS5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZl
cnMvbmV0L3dpcmVsZXNzL2l3bGVnYWN5L2l3bC1zdGEuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBk
cml2ZXJzL25ldC93aXJlbGVzcy9pd2xlZ2FjeS9pd2wtdHguYw0KIHJlbmFtZSBkcml2ZXJzL25l
dC93aXJlbGVzcy97aXdsd2lmaSA9PiBpd2xlZ2FjeX0vaXdsMzk0NS1iYXNlLmMgKDg5JSkNCiBj
cmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsZWdhY3kvaXdsNDk2NS1i
YXNlLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvaXdsd2lmaS9p
d2wtMjAwMC5jDQogZGVsZXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2l3bHdp
ZmkvaXdsLWxlZ2FjeS5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNz
L3J0bHdpZmkvcnRsODE5MmMvTWFrZWZpbGUNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9u
ZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyYy9kbV9jb21tb24uYw0KIGNyZWF0ZSBtb2RlIDEw
MDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjL2RtX2NvbW1vbi5oDQog
cmVuYW1lIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkve3J0bDgxOTJjZS9mdy5jID0+IHJ0
bDgxOTJjL2Z3X2NvbW1vbi5jfSAoOTQlKQ0KIHJlbmFtZSBkcml2ZXJzL25ldC93aXJlbGVzcy9y
dGx3aWZpL3tydGw4MTkyY2UvZncuaCA9PiBydGw4MTkyYy9md19jb21tb24uaH0gKDEwMCUpDQog
Y29weSBkcml2ZXJzL25ldC93aXJlbGVzcy97aXdsd2lmaS9pd2wtMzk0NS1sZWQuaCA9PiBydGx3
aWZpL3J0bDgxOTJjL21haW4uY30gKDYxJSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9u
ZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyYy9waHlfY29tbW9uLmMNCiBjcmVhdGUgbW9kZSAx
MDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyYy9waHlfY29tbW9uLmgN
CiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTky
Y3UvTWFrZWZpbGUNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRs
d2lmaS9ydGw4MTkyY3UvZGVmLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2ly
ZWxlc3MvcnRsd2lmaS9ydGw4MTkyY3UvZG0uYw0KIGNvcHkgZHJpdmVycy9uZXQvd2lyZWxlc3Mv
e2l3bHdpZmkvaXdsLTM5NDUtbGVkLmggPT4gcnRsd2lmaS9ydGw4MTkyY3UvZG0uaH0gKDc0JSkN
CiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTky
Y3UvaHcuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZp
L3J0bDgxOTJjdS9ody5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNz
L3J0bHdpZmkvcnRsODE5MmN1L2xlZC5jDQogY29weSBkcml2ZXJzL25ldC93aXJlbGVzcy97aXds
d2lmaS9pd2wtMzk0NS1sZWQuaCA9PiBydGx3aWZpL3J0bDgxOTJjdS9sZWQuaH0gKDYxJSkNCiBj
cmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyY3Uv
bWFjLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9y
dGw4MTkyY3UvbWFjLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3Mv
cnRsd2lmaS9ydGw4MTkyY3UvcGh5LmMNCiBjb3B5IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3tpd2x3
aWZpL2l3bC0zOTQ1LWxlZC5oID0+IHJ0bHdpZmkvcnRsODE5MmN1L3BoeS5ofSAoNjMlKQ0KIGNv
cHkgZHJpdmVycy9uZXQvd2lyZWxlc3Mve2l3bHdpZmkvaXdsLTM5NDUtbGVkLmggPT4gcnRsd2lm
aS9ydGw4MTkyY3UvcmVnLmh9ICg3NCUpDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0
L3dpcmVsZXNzL3J0bHdpZmkvcnRsODE5MmN1L3JmLmMNCiByZW5hbWUgZHJpdmVycy9uZXQvd2ly
ZWxlc3Mve2l3bHdpZmkvaXdsLTM5NDUtbGVkLmggPT4gcnRsd2lmaS9ydGw4MTkyY3UvcmYuaH0g
KDUzJSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9y
dGw4MTkyY3Uvc3cuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9y
dGx3aWZpL3J0bDgxOTJjdS9zdy5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dp
cmVsZXNzL3J0bHdpZmkvcnRsODE5MmN1L3RhYmxlLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJp
dmVycy9uZXQvd2lyZWxlc3MvcnRsd2lmaS9ydGw4MTkyY3UvdGFibGUuaA0KIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjdS90cnguYw0KIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3J0bDgxOTJjdS90
cnguaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL25ldC93aXJlbGVzcy9ydGx3aWZpL3Vz
Yi5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL3J0bHdpZmkvdXNi
LmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQveGVuLW5ldGJhY2svTWFrZWZpbGUN
CiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQveGVuLW5ldGJhY2svY29tbW9uLmgNCiBj
cmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQveGVuLW5ldGJhY2svaW50ZXJmYWNlLmMNCiBj
cmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQveGVuLW5ldGJhY2svbmV0YmFjay5jDQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3hlbi1uZXRiYWNrL3hlbmJ1cy5jDQogcmVuYW1l
IGZpcm13YXJlL2JueDIve2JueDItbWlwcy0wOS02LjIuMS5mdy5paGV4ID0+IGJueDItbWlwcy0w
OS02LjIuMWEuZncuaWhleH0gKDYyJSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9saW51
eC9jcHVfcm1hcC5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvbGludXgvbWljcmVsX3Bo
eS5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL2lwc2V0L0ti
dWlsZA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci9pcHNldC9p
cF9zZXQuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci9pcHNl
dC9pcF9zZXRfYWhhc2guaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L25ldGZp
bHRlci9pcHNldC9pcF9zZXRfYml0bWFwLmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9s
aW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2dldHBvcnQuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0
NCBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaC5oDQogY3JlYXRlIG1v
ZGUgMTAwNjQ0IGluY2x1ZGUvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9saXN0LmgNCiBj
cmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X3Rp
bWVvdXQuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci9pcHNl
dC9wZnhsZW4uaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci9u
Zl9jb25udHJhY2tfc25tcC5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvbGludXgvbmV0
ZmlsdGVyL3h0X0FVRElULmgNCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9saW51eC9uZXRm
aWx0ZXIveHRfYWRkcnR5cGUuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L25l
dGZpbHRlci94dF9kZXZncm91cC5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvbGludXgv
bmV0ZmlsdGVyL3h0X3NldC5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvbmV0L2JsdWV0
b290aC9zbXAuaA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL25ldC9uZXRmaWx0ZXIvbmZf
Y29ubnRyYWNrX3RpbWVzdGFtcC5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9jcHVfcm1hcC5j
DQogcmVuYW1lIG5ldC9ibHVldG9vdGgve2wyY2FwLmMgPT4gbDJjYXBfY29yZS5jfSAoNzYlKQ0K
IGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYw0KIGRlbGV0ZSBt
b2RlIDEwMDY0NCBuZXQvaXB2NC9maWJfaGFzaC5jDQogZGVsZXRlIG1vZGUgMTAwNjQ0IG5ldC9p
cHY0L25ldGZpbHRlci9pcHRfYWRkcnR5cGUuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQvbmV0
ZmlsdGVyL2lwc2V0L0tjb25maWcNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbmV0L25ldGZpbHRlci9p
cHNldC9NYWtlZmlsZQ0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQvbmV0ZmlsdGVyL2lwc2V0L2lw
X3NldF9iaXRtYXBfaXAuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQvbmV0ZmlsdGVyL2lwc2V0
L2lwX3NldF9iaXRtYXBfaXBtYWMuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQvbmV0ZmlsdGVy
L2lwc2V0L2lwX3NldF9iaXRtYXBfcG9ydC5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IG5ldC9uZXRm
aWx0ZXIvaXBzZXQvaXBfc2V0X2NvcmUuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQvbmV0Zmls
dGVyL2lwc2V0L2lwX3NldF9nZXRwb3J0LmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbmV0L25ldGZp
bHRlci9pcHNldC9pcF9zZXRfaGFzaF9pcC5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IG5ldC9uZXRm
aWx0ZXIvaXBzZXQvaXBfc2V0X2hhc2hfaXBwb3J0LmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbmV0
L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaF9pcHBvcnRpcC5jDQogY3JlYXRlIG1vZGUgMTAw
NjQ0IG5ldC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2hhc2hfaXBwb3J0bmV0LmMNCiBjcmVhdGUg
bW9kZSAxMDA2NDQgbmV0L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaF9uZXQuYw0KIGNyZWF0
ZSBtb2RlIDEwMDY0NCBuZXQvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9oYXNoX25ldHBvcnQuYw0K
IGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9saXN0X3NldC5j
DQogY3JlYXRlIG1vZGUgMTAwNjQ0IG5ldC9uZXRmaWx0ZXIvaXBzZXQvcGZ4bGVuLmMNCiBjcmVh
dGUgbW9kZSAxMDA2NDQgbmV0L25ldGZpbHRlci9uZl9jb25udHJhY2tfYnJvYWRjYXN0LmMNCiBj
cmVhdGUgbW9kZSAxMDA2NDQgbmV0L25ldGZpbHRlci9uZl9jb25udHJhY2tfc25tcC5jDQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IG5ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3RpbWVzdGFtcC5jDQog
Y3JlYXRlIG1vZGUgMTAwNjQ0IG5ldC9uZXRmaWx0ZXIveHRfQVVESVQuYw0KIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBuZXQvbmV0ZmlsdGVyL3h0X2FkZHJ0eXBlLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQg
bmV0L25ldGZpbHRlci94dF9kZXZncm91cC5jDQogY3JlYXRlIG1vZGUgMTAwNjQ0IG5ldC9uZXRm
aWx0ZXIveHRfc2V0LmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgbmV0L3NjaGVkL3NjaF9jaG9rZS5j
DQogY3JlYXRlIG1vZGUgMTAwNjQ0IG5ldC9zY2hlZC9zY2hfbXFwcmlvLmMNCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgbmV0L3NjaGVkL3NjaF9zZmIuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBuZXQveGZy
bS94ZnJtX3JlcGxheS5jDQo=
^ permalink raw reply
* Re: [PATCH] Bluetooth: Fix HCI_RESET command syncronization
From: Mikko Vinni @ 2011-03-16 21:13 UTC (permalink / raw)
To: Justin Mattock, Anderson Lizardo, linux-bluetooth, edt; +Cc: Gustavo F. Padovan
In-Reply-To: <AANLkTi=NCL2mWhLfnjD85Zp2y9SYFf6Dx5K0A8ckK7CX@mail.gmail.com>
Justin Mattock wrote:
> o.k. works over here..
> Tested-by: Justin P. Mattock <justinmattock@gmail.com>
Works for me too (tested with the (original) patch applied on top of
bluetooth-next
merged on 2.6.38).
Tested-by: Mikko Vinni <mmvinni@yahoo.com>
Thanks for solving the problem!
Mikko
>
> here is an updated patch for the current Mainline if anybody needs it:
>
...
^ permalink raw reply
* Re: [bluetooth-next] Bluetooth: fix sending LE data over USB
From: Gustavo F. Padovan @ 2011-03-16 20:45 UTC (permalink / raw)
To: Vinicius Costa Gomes; +Cc: linux-bluetooth
In-Reply-To: <1300137633-24495-1-git-send-email-vinicius.gomes@openbossa.org>
Hi Vinicius,
* Vinicius Costa Gomes <vinicius.gomes@openbossa.org> [2011-03-14 18:20:33 -0300]:
> Now that we have support for LE connections, before discarding a
> frame we must check if there's a LE connection over that transport.
>
> Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@openbossa.org>
> ---
> drivers/bluetooth/btusb.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
Applied, thanks.
--
Gustavo F. Padovan
http://profusion.mobi
^ permalink raw reply
* Re: [RFC] Auto Connections
From: Gustavo F. Padovan @ 2011-03-16 20:40 UTC (permalink / raw)
To: Claudio Takahasi; +Cc: BlueZ development, Ville Tervo
In-Reply-To: <AANLkTimP_XBFy58dMDZa69RQ9UKeZmh++jeuH073doLr@mail.gmail.com>
Hi Claudio,
* Claudio Takahasi <claudio.takahasi@openbossa.org> [2011-03-11 21:30:09 +0000]:
> Hi guys,
>
> It is time to get opinions from some gurus!
>
> We need to implement automatic connections to implement the Profiles.
> At the moment BlueZ supports only dual mode adapters, as consequence
> BlueZ needs to start the LE connection. IMHO, it is better to leave
> the responsibility to the controller, implementing "selective"
> connections will only introduce more code without concrete benefits.
> Configuring the controller to autonomously establish connections seems
> to be the right approach to proceed.
>
> This topic is NOT about StartDiscovery() + CreateDevice.
> StartDiscovery uses active scanning and CreateDevice uses direct
> connection establishment. We need a mechanism to automatically connect
> to "trusted" devices or devices flagged as "AutoConnect".
>
>
> My initial idea is: change the LE server socket to report
> outgoing(host initiated) connections through the server socket.
> Awkward?
> To achieve that we need to manage the LE Create Connection(using
> whitelist) in the kernel, extend the management interface to control
> devices in the whitelist, change the LE Connection Complete Event
> handling to get the Role properly.
> Pros:
> - Controller manage connections
> - Flexible to support connections to "trusted" resolvable address and
> passive scanning
> - Only one "flow" for the connections: LE server socket
> - Maybe we could hide resolvable address from the userspace, mapping
> it directly to public or static random
This approach have a lot of advantages. It seems the best option to me.
> Cons:
> - Risky
Define risky here.
> - Less control of the connection establishment process
But do we need this control?
--
Gustavo F. Padovan
http://profusion.mobi
^ permalink raw reply
* [PATCH 5/5] Check for existing handle in attrib_db_add()
From: Anderson Lizardo @ 2011-03-16 20:30 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300307416-29909-1-git-send-email-anderson.lizardo@openbossa.org>
This check is necessary to avoid inserting attributes with same handle.
---
src/attrib-server.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/src/attrib-server.c b/src/attrib-server.c
index 597a635..74a1c8d 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -1213,10 +1213,12 @@ struct attribute *attrib_db_add(uint16_t handle, bt_uuid_t *uuid, int read_reqs,
int write_reqs, const uint8_t *value, int len)
{
struct attribute *a;
+ guint h = handle;
DBG("handle=0x%04x", handle);
- /* FIXME: handle conflicts */
+ if (g_slist_find_custom(database, GUINT_TO_POINTER(h), handle_cmp))
+ return NULL;
a = g_malloc0(sizeof(struct attribute) + len);
a->handle = handle;
--
1.7.0.4
^ permalink raw reply related
* [PATCH 4/5] Change attrib_db_update() to return reallocated data
From: Anderson Lizardo @ 2011-03-16 20:30 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300307416-29909-1-git-send-email-anderson.lizardo@openbossa.org>
attrib_db_update() uses g_try_realloc(), which means the memory address
of the updated attribute may change. Callers may need to update
references to the old address.
The new struct attribute pointer is returned to caller by the "attr"
paramater.
---
src/attrib-server.c | 9 ++++++---
src/attrib-server.h | 2 +-
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/attrib-server.c b/src/attrib-server.c
index e705310..597a635 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -741,7 +741,7 @@ static uint16_t write_value(struct gatt_channel *channel, uint16_t handle,
if (client_attr)
a = client_attr;
else
- attrib_db_update(a->handle, NULL, value, vlen);
+ attrib_db_update(a->handle, NULL, value, vlen, &a);
if (a->write_cb) {
status = a->write_cb(a, a->cb_user_data);
@@ -1232,7 +1232,7 @@ struct attribute *attrib_db_add(uint16_t handle, bt_uuid_t *uuid, int read_reqs,
}
int attrib_db_update(uint16_t handle, bt_uuid_t *uuid, const uint8_t *value,
- int len)
+ int len, struct attribute **attr)
{
struct attribute *a;
GSList *l;
@@ -1256,6 +1256,9 @@ int attrib_db_update(uint16_t handle, bt_uuid_t *uuid, const uint8_t *value,
attrib_notify_clients(a);
+ if (attr)
+ *attr = a;
+
return 0;
}
@@ -1295,5 +1298,5 @@ int attrib_gap_set(uint16_t uuid, const uint8_t *value, int len)
return -ENOSYS;
}
- return attrib_db_update(handle, NULL, value, len);
+ return attrib_db_update(handle, NULL, value, len, NULL);
}
diff --git a/src/attrib-server.h b/src/attrib-server.h
index c03d3c5..38a1f05 100644
--- a/src/attrib-server.h
+++ b/src/attrib-server.h
@@ -28,7 +28,7 @@ void attrib_server_exit(void);
struct attribute *attrib_db_add(uint16_t handle, bt_uuid_t *uuid, int read_reqs,
int write_reqs, const uint8_t *value, int len);
int attrib_db_update(uint16_t handle, bt_uuid_t *uuid, const uint8_t *value,
- int len);
+ int len, struct attribute **attr);
int attrib_db_del(uint16_t handle);
int attrib_gap_set(uint16_t uuid, const uint8_t *value, int len);
uint32_t attrib_create_sdp(uint16_t handle, const char *name);
--
1.7.0.4
^ permalink raw reply related
* [PATCH 3/5] Remove unnecessary assignment from attrib_db_update()
From: Anderson Lizardo @ 2011-03-16 20:30 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300307416-29909-1-git-send-email-anderson.lizardo@openbossa.org>
attrib_db_update() uses g_try_realloc() only to expand/shrink space for
the variable "data" field. Therefore existing fields (like handle) are
guaranteed to remain unchanged.
---
src/attrib-server.c | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/src/attrib-server.c b/src/attrib-server.c
index 98b3fa3..e705310 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -1249,7 +1249,6 @@ int attrib_db_update(uint16_t handle, bt_uuid_t *uuid, const uint8_t *value,
return -ENOMEM;
l->data = a;
- a->handle = handle;
if (uuid != NULL)
memcpy(&a->uuid, uuid, sizeof(bt_uuid_t));
a->len = len;
--
1.7.0.4
^ permalink raw reply related
* [PATCH 2/5] Allow NULL pointer as UUID for attrib_db_update()
From: Anderson Lizardo @ 2011-03-16 20:30 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300307416-29909-1-git-send-email-anderson.lizardo@openbossa.org>
A NULL uuid_t pointer means that the UUID should remain unchanged. This
simplifies most attrib_db_update() calls which do not change the
attribute UUID.
---
src/attrib-server.c | 9 +++------
1 files changed, 3 insertions(+), 6 deletions(-)
diff --git a/src/attrib-server.c b/src/attrib-server.c
index aab7829..98b3fa3 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -741,7 +741,7 @@ static uint16_t write_value(struct gatt_channel *channel, uint16_t handle,
if (client_attr)
a = client_attr;
else
- attrib_db_update(a->handle, &a->uuid, value, vlen);
+ attrib_db_update(a->handle, NULL, value, vlen);
if (a->write_cb) {
status = a->write_cb(a, a->cb_user_data);
@@ -1250,7 +1250,7 @@ int attrib_db_update(uint16_t handle, bt_uuid_t *uuid, const uint8_t *value,
l->data = a;
a->handle = handle;
- if (uuid != &a->uuid)
+ if (uuid != NULL)
memcpy(&a->uuid, uuid, sizeof(bt_uuid_t));
a->len = len;
memcpy(a->data, value, len);
@@ -1281,13 +1281,10 @@ int attrib_db_del(uint16_t handle)
int attrib_gap_set(uint16_t uuid, const uint8_t *value, int len)
{
- bt_uuid_t u16;
uint16_t handle;
/* FIXME: Missing Privacy and Reconnection Address */
- bt_uuid16_create(&u16, uuid);
-
switch (uuid) {
case GATT_CHARAC_DEVICE_NAME:
handle = name_handle;
@@ -1299,5 +1296,5 @@ int attrib_gap_set(uint16_t uuid, const uint8_t *value, int len)
return -ENOSYS;
}
- return attrib_db_update(handle, &u16, value, len);
+ return attrib_db_update(handle, NULL, value, len);
}
--
1.7.0.4
^ permalink raw reply related
* [PATCH 1/5] Add DBG() calls to attrib_db_* functions
From: Anderson Lizardo @ 2011-03-16 20:30 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Anderson Lizardo
In-Reply-To: <1300307416-29909-1-git-send-email-anderson.lizardo@openbossa.org>
This will help debugging issues with registration of GATT services.
---
src/attrib-server.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/src/attrib-server.c b/src/attrib-server.c
index b076d98..aab7829 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -1214,6 +1214,8 @@ struct attribute *attrib_db_add(uint16_t handle, bt_uuid_t *uuid, int read_reqs,
{
struct attribute *a;
+ DBG("handle=0x%04x", handle);
+
/* FIXME: handle conflicts */
a = g_malloc0(sizeof(struct attribute) + len);
@@ -1236,6 +1238,8 @@ int attrib_db_update(uint16_t handle, bt_uuid_t *uuid, const uint8_t *value,
GSList *l;
guint h = handle;
+ DBG("handle=0x%04x", handle);
+
l = g_slist_find_custom(database, GUINT_TO_POINTER(h), handle_cmp);
if (!l)
return -ENOENT;
@@ -1262,6 +1266,8 @@ int attrib_db_del(uint16_t handle)
GSList *l;
guint h = handle;
+ DBG("handle=0x%04x", handle);
+
l = g_slist_find_custom(database, GUINT_TO_POINTER(h), handle_cmp);
if (!l)
return -ENOENT;
--
1.7.0.4
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox