<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>8817</bug_id>
          
          <creation_ts>2006-01-09 18:51:54 +0300</creation_ts>
          <short_desc>при локали UTF-8 без инициализации поддержки юникода screen виснет</short_desc>
          <delta_ts>2008-03-14 13:31:02 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>screen</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>5440</dependson>
          <blocked>10446</blocked>
    
    <blocked>9199</blocked>
    
    <blocked>14167</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolay A. Fetisov">naf</reporter>
          <assigned_to name="Fr. Br. George">george</assigned_to>
          <cc>eostapets</cc>
    
    <cc>george</cc>
    
    <cc>mike</cc>
    
    <cc>morozov</cc>
    
    <cc>php-coder</cc>
    
    <cc>rider</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>34559</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2006-01-09 18:51:54 +0300</bug_when>
    <thetext>Имеется screen-4.0.2-alt3 на Compact 3.0, обновлённом до текущего Sisyphus.

При запуске выдаётся заставка с предложением &quot;[Press Space or Return to end.]&quot;
При нажатии на указанные клавиши screen зависает, до получения SIGKILL из
соседней консоли.

По-видимому, имеется некая проблема, связанная с нахождением командного
интерпретатора, т.к. при указании /bin/bash в командной строке screen он успешно
стартует (т.е. &apos;screen -s /bin/bash&apos; работает).

Переменная окружения SHELL установлена:
$ set | grep SHELL=
SHELL=/bin/bash

Локального ~/.screen нет. Глобальный /etc/screenrc - из пакета, без изменений.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34561</commentid>
    <comment_count>1</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2006-01-09 19:52:32 +0300</bug_when>
    <thetext>У меня работает,
screen-4.0.2-alt3
bash-3.1.1-alt1
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34562</commentid>
    <comment_count>2</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2006-01-09 20:17:47 +0300</bug_when>
    <thetext>У меня пакеты те же.
screen-4.0.2-alt3
bash-3.1.1-alt1

Разница, как я понимаю, в системах: у меня обновлённый до Sisyphus Compact
3.0rc10. На паре имеющихся вблизи Compact 3.0rc10 + backports ситуация та же.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34563</commentid>
    <comment_count>3</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2006-01-09 20:19:53 +0300</bug_when>
    <thetext>Да, с тем же screen и на Sisyphus, ведущим свой начало с Master 2.4, всё работало.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34565</commentid>
    <comment_count>4</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2006-01-09 20:35:44 +0300</bug_when>
    <thetext>Нет, не в командном интерпретаторе дело...

От пользователя работает запуск вида 
$ screen -U
или
$ LANG=ru_RU.KOI8-R screen

От root - и просто &apos;screen&apos;...

Итого: при локали UTF-8 без инициализации поддержки юникода screen виснет после
вывода экрана приветствия.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41651</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2006-10-24 11:42:10 +0400</bug_when>
    <thetext>Кажется, в федоре сделали автовключатор этой самой инициализации -- мож у них
патчик стырить?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41655</commentid>
    <comment_count>6</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2006-10-24 13:51:12 +0400</bug_when>
    <thetext>Не вижу в федоре такого патчика.  Зато в 4.0.3 исправили пару каких-то юникодных
багов.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44306</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-01-08 22:22:43 +0300</bug_when>
    <thetext>Для screen-4.0.3-alt1 проблема актуальна (система ведёт начало от M22,
/etc/screenrc никогда не трогался).

Её может замаскировать ~/.screenrc с отключением баннера:
startup_message off

Вообще мож отключить его по умолчанию?  А то анноит, честно говоря.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46209</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-03-06 01:10:03 +0300</bug_when>
    <thetext>Лёш, поправь по возможности.  А то с UTF-8 из коробки скрин у нас будет в ней
&quot;нерабочий&quot;.  На крайняк хоть screenrc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49136</commentid>
    <comment_count>9</comment_count>
    <who name="Nikolay A. Fetisov">naf</who>
    <bug_when>2007-04-19 11:29:24 +0400</bug_when>
    <thetext>screen 4.0.3-alt2 - без изменений.

Отключение баннера через директиву &quot;startup_message off&quot; в файле конфигурации 
снимает проблему разве что с зависанием: текст на русском ввести при этом не 
удастся, часть символов (например, &apos;ф&apos;) передаётся не правильно.

Добавление в ~/.screenrc директив &apos;defutf8 on&apos;, &apos;utf8 on on&apos; также ничего не 
даёт.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49175</commentid>
    <comment_count>10</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-04-19 22:25:53 +0400</bug_when>
    <thetext>Не знаю что делать.  У меня пока нет utf консоли, а то бы я занялся отладкой.
Впрочем, utf консоль, может быть, скоро будет.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49192</commentid>
    <comment_count>11</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2007-04-20 09:43:12 +0400</bug_when>
    <thetext>Алексей, можно запустить терминал в локали ru_RU.UTF-8.

тот же uxterm
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49269</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-04-21 10:35:39 +0400</bug_when>
    <thetext>(In reply to comment #10)
&gt; Не знаю что делать.  У меня пока нет utf консоли, а то бы я занялся отладкой.
&gt; Впрочем, utf консоль, может быть, скоро будет.
Тю. :)

--- ~/bin/uterm ---
#!/bin/sh
G_FILENAME_ENCODING=utf-8 LC_ALL=ru_RU.UTF-8 LC_COLLATE=uk_UA.UTF8
LC_CTYPE=uk_UA.UTF8 exec urxvt +sb -fn
&apos;-*-terminus-bold-*-*-*-20-*-*-*-*-*-iso10646-*&apos; -rv -cr yellow -tn xterm &amp;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49300</commentid>
    <comment_count>13</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-04-22 14:59:47 +0400</bug_when>
    <thetext>screen -U работает</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49305</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-04-22 15:23:20 +0400</bug_when>
    <thetext>Это известно, но не всем.  На RH-производных -U сейчас не требуется.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49829</commentid>
    <comment_count>15</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2007-05-04 05:02:12 +0400</bug_when>
    <thetext>*ping*</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51470</commentid>
    <comment_count>16</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-06-16 22:59:55 +0400</bug_when>
    <thetext>Не знаю, что делать.  Нет идей.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51604</commentid>
    <comment_count>17</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-06-19 09:21:44 +0400</bug_when>
    <thetext>Попробую собрать
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/screen-4.0.3-1.el5.src.rpm</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51610</commentid>
    <comment_count>18</comment_count>
      <attachid>2027</attachid>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-06-19 10:00:23 +0400</bug_when>
    <thetext>Created attachment 2027
screen.spec for 4.0.3-alt0.1 based on 4.0.3-1

Тэкс... чего было сделано: спек подчищен до приложенного состояния, сборка
поставлена в сизифовый контейнер после удаления родной и беглой проверки, что
не осталось ошмётков (а, кроме группы в /etc/group).

cd
# поскольку там фигурировали startup_message off и KOI8
mv .screenrc .screenrc-
mv .i18n .i18n-
export LC_ALL=ru_RU.UTF-8 LANG=ru_RU.UTF-8
screen

-- проблема не воспроизводится, поскольку startup message не вываливается
(причём так и есть в /etc/screenrc).

Думаю, достаточно просто добавить такое же 

# don&apos;t display the copyright page
startup_message off

в /etc/screenrc, как и предлагалось довольно давно.

Сборка доступна здесь:
http://paq.osdn.org.ua/~mike/RPMS/screen/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51611</commentid>
    <comment_count>19</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-06-19 10:06:20 +0400</bug_when>
    <thetext>(In reply to comment #9)
&gt; Отключение баннера через директиву &quot;startup_message off&quot; в файле конфигурации 
&gt; снимает проблему разве что с зависанием: текст на русском ввести при этом не 
&gt; удастся, часть символов (например, &apos;ф&apos;) передаётся не правильно.
Это осталось, причём явно не проблема терминала -- который дёргается так:

#!/bin/sh
G_FILENAME_ENCODING=utf-8 LANG=ru_RU.UTF-8 LC_ALL=ru_RU.UTF-8
LC_COLLATE=uk_UA.UTF8 LC_CTYPE=uk_UA.UTF8 exec urxvt +sb -fn
&apos;-*-terminus-bold-*-*-*-20-*-*-*-*-*-iso10646-*&apos; -rv -cr yellow -tn xterm &amp;

и сам по себе позволяет ввод e.g. &quot;фыва&quot; или &quot;йцукен&quot;.

&gt; Добавление в ~/.screenrc директив &apos;defutf8 on&apos;, &apos;utf8 on on&apos; также ничего не 
&gt; даёт.

screen -U из сборки в предыдущем комментарии при этом работает нормально.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>52201</commentid>
    <comment_count>20</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-06-29 17:17:25 +0400</bug_when>
    <thetext>&lt;morozov&gt; Коммит f64bee34fba522762a12e9afa54289de0824d5db
(screen-4.0.2-alt-cp866.patch) ломает работу screen&apos;а в UTF-8</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>52202</commentid>
    <comment_count>21</comment_count>
    <who name="Alexey Morozov">morozov</who>
    <bug_when>2007-06-29 17:19:14 +0400</bug_when>
    <thetext>Коммит f64bee34fba522762a12e9afa54289de0824d5db (screen-4.0.2-alt-cp866.patch) 
ломает работу screen&apos;а в UTF-8</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>52215</commentid>
    <comment_count>22</comment_count>
    <who name="Kachalov Anton">mouse</who>
    <bug_when>2007-06-29 20:25:06 +0400</bug_when>
    <thetext>(In reply to comment #21)
&gt; Коммит f64bee34fba522762a12e9afa54289de0824d5db (screen-4.0.2-alt-cp866.patch) 
&gt; ломает работу screen&apos;а в UTF-8

Вы сам патч-то видели?
+  { &quot;CP866&quot;,           0,              0x80|&apos;#&apos;,       0, 1, 0 },              
+  { &quot;IBM866&quot;,          0,              0x80|&apos;#&apos;,       0, 1, 0 },              
Это имеет какое-либо отношение к UTF8? Думаю, что &quot;раз не работает с этим, то
давайте оторвём&quot; явно не выход.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>52350</commentid>
    <comment_count>23</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-07-04 20:53:25 +0400</bug_when>
    <thetext>Отключать startup_message нежелательно из соображений GPL 2c.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>52352</commentid>
    <comment_count>24</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-07-04 20:59:10 +0400</bug_when>
    <thetext>Точняк, если откатить cp866.patch, то startup_message перестает зависать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>52360</commentid>
    <comment_count>25</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-07-05 01:06:44 +0400</bug_when>
    <thetext>Там есть --help, которого довольно многим; если это годится для RH, для нас
скорее тоже сгодится.

2 mouse: мне неудобно перед тобой, но предпочитаю факты отсутствию
предположений.  Докопаться до причины ломания двумя строчками чего-то, кроме
гвоздей в индексах или ещё какой неявной завязки на порядок -- не могу. (мож
попробовать эти две строчки в конец списка или по крайней мере строчкой ниже
сдвинуть?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>53087</commentid>
    <comment_count>26</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2007-07-19 15:26:15 +0400</bug_when>
    <thetext>+1 к startup_message off by default</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>53088</commentid>
    <comment_count>27</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-07-19 15:35:57 +0400</bug_when>
    <thetext>$ grep -C1 -m1 announcement /usr/share/license/GPL-2
    interactive use in the most ordinary way, to print or display an
    announcement including an appropriate copyright notice and a
    notice that there is no warranty (or else, saying that you provide
$

Это отключается в ~/.screenrc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>53089</commentid>
    <comment_count>28</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-07-19 15:40:47 +0400</bug_when>
    <thetext>ls или less при запуске, однако, не вываливают пол-экрана legalese с проблемами
в юникоде :)

В RH сочли осмысленным отрубить, да и у меня в таскаемом .screenrc это первая и
последняя строчка.

Не надо доводить до абсурда, дух же там в удобстве, да и буква без особого
фундаментализма.

Впрочем, это всё может быть здесь неактуально (FR про анноящий экран, а не bug
про UTF-8).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>53090</commentid>
    <comment_count>29</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-07-19 15:42:13 +0400</bug_when>
    <thetext>Я откатил cp866.patch (взял коммит из morozov/packages/screen.git).
Респект Морозову!

Я также исправил все warnings в режиме -DDEBUG -Werror.  Желающие прикрутить
назад cp866 благоволят собирать screen в режиме rpmbuild --enable debug.  Там
какой-то чумной код прохода по этим таблицам, в котором я, увы, с ходу не
разобрался.  (ЕСТЬ ЗАСАДА: теперь в кмулятивный патч не помещается бинарный файл
кодировки cp866; к сожалению mouse в свое время не открыл способ получения этого
файла.)

Закрываю баг как FIXED; может быть переоткрою баг с cp866, чтобы не забылось.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>53091</commentid>
    <comment_count>30</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-07-19 15:44:38 +0400</bug_when>
    <thetext>Спасибо!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>53092</commentid>
    <comment_count>31</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2007-07-19 15:45:04 +0400</bug_when>
    <thetext>(In reply to comment #27)
&gt; $ grep -C1 -m1 announcement /usr/share/license/GPL-2

Алексей, между удобством для пользователя и следованием букве закона я предлагаю
выбрать удобство, для нас, для пользователей. Иначе, это походит на фанатизм
Столлмана и то как это сделано в Debian (где после логина на консоль
вываливается подобное предупреждение на пять строк).

Почти всё отключают это приветствие, а кто не отключает, то, наверное, просто не
в курсе, что его можно отключить ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>53093</commentid>
    <comment_count>32</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2007-07-19 15:49:59 +0400</bug_when>
    <thetext>То что сочли в RH это не аргумент.  Авторы GNU screen сочли нужным по умолчанию
выводить startup_message во исполнение требования GPL (которое, впрочем, не
является слишком строгим).  Я не свожу к абсурду, просто думаю оставить как
есть.  Если авторы less надумают выводить announcement, это конечно будет более
актуальной проблемой.  В отличие от less, screen я запускаю один раз per uptime.
 При переподключении к сессии announcement не выводится.

Короче, можно открыть отдельный баг и там будем дальше спорить. :)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>2027</attachid>
            <date>2007-06-19 10:00:23 +0400</date>
            <delta_ts>2007-06-19 10:00:23 +0400</delta_ts>
            <desc>screen.spec for 4.0.3-alt0.1 based on 4.0.3-1</desc>
            <filename>screen.spec</filename>
            <type>text/plain</type>
            <size>16337</size>
            <attacher name="Michael Shigorin">mike</attacher>
            
              <data encoding="base64">U3VtbWFyeTogQSBzY3JlZW4gbWFuYWdlciB0aGF0IHN1cHBvcnRzIG11bHRpcGxlIGxvZ2lucyBv
biBvbmUgdGVybWluYWwKTmFtZTogc2NyZWVuClZlcnNpb246IDQuMC4zClJlbGVhc2U6IGFsdDAu
MQpMaWNlbnNlOiBHUEwyCkdyb3VwOiBBcHBsaWNhdGlvbnMvU3lzdGVtClVybDogaHR0cDovL3d3
dy5nbnUub3JnL3NvZnR3YXJlL3NjcmVlbgpSZXF1aXJlcyhwcmUpOiAvdXNyL3NiaW4vZ3JvdXBh
ZGQKUmVxdWlyZXMocHJldW4pOiAvc2Jpbi9pbnN0YWxsLWluZm8KUmVxdWlyZXMocG9zdCk6IC9z
YmluL2luc3RhbGwtaW5mbwoKIyBBdXRvbWF0aWNhbGx5IGFkZGVkIGJ5IGJ1aWxkcmVxIG9uIFR1
ZSBKdW4gMTkgMjAwNyAoLWJpKQpCdWlsZFJlcXVpcmVzOiBnbGliYy1kZXZlbC1zdGF0aWMgbGli
bmN1cnNlcy1kZXZlbCBsaWJwYW0tZGV2ZWwgdGVybXV0aWxzLWRldmVsCgpCdWlsZFJlcXVpcmVz
OiBuY3Vyc2VzLWRldmVsIHRleGluZm8gcGFtLWRldmVsIGxpYnRvb2wKCiMKIyBUaGUgb25lIGFu
ZCBvbmx5IHRydWUgc291cmNlCiMKU291cmNlMDogZnRwOi8vZnRwLnVuaS1lcmxhbmdlbi5kZS9w
dWIvdXRpbGl0aWVzL3NjcmVlbi9zY3JlZW4tJXZlcnNpb24udGFyLmd6CgojIEV4Y2VwdCBmb3Ig
dGhlIFBBTSBjb25maWd1cmF0aW9uLCB0aGF0IGlzLgpTb3VyY2UxOiBzY3JlZW4ucGFtCgojIFNt
YWxsIHR3ZWFrIGZvciBpYTY0CiMKUGF0Y2gxOiBzY3JlZW4tMy45LjEzLWlhNjQucGF0Y2gKCiMg
U29tZSB0d2Vha3Mgb2YgdGhlIGRlZmF1bHQgc2NyZWVucmMKIyByZWFsbHkgZW5kIHVzZXJzIHNo
b3VsZCB2aXNpdCAvZXRjL3NjcmVlbnJjIGFuZCB0d2VhawojIGl0IHRvIHN1aXQgdGhlaXIgcGVy
c29uYWwgcHJlZmVyYW5jZXMKIwpQYXRjaDI6IHNjcmVlbi00LjAuMi1zY3JlZW5yYy5wYXRjaApQ
YXRjaDM6IHNjcmVlbi00LjAuMS1ldGNzY3JlZW5yYy5wYXRjaAoKIyBEdWUgdG8gdGhlIHdheSB0
aGUgYnVpbGQgc3lzdGVtIGNyZWF0ZXMgcnBtcyBpbiBhIGJ1aWxkcm9vdAojIHdlIG5lZWQgdGhp
cyB0d2VhayBmb3IgdXRmOGVuY29kaW5ncwojCiMgVGhpcyBpcyBub3QgbmVlZGVkIGFueW1vcmUK
I1BhdGNoNDogc2NyZWVuLTMuOS4xMS11dGY4LWluc3RhbGwucGF0Y2gKCiMgV2UgbmVlZCB0byBh
bGxvdyBycG0gdG8gc3RyaXAgdGhlIGJpbmFyeSBhbmQgd2UgZG9uJ3QgaGF2ZSBhCiMgbGliZWxm
IGRlcGVuZGFuY3kKUGF0Y2g1OiBzY3JlZW4tMy45LjExLW5vLXN0cmlwcGluZy1vci1lbGYucGF0
Y2gKCiMgVGhlIG1haW50YWluZXJzIHJlYWxseSBkaWRuJ3QgbGlrZSB0aGlzIHBhdGNoLCBhbmQg
SSBjb3VsZG4ndAojIHJlcHJvZHVjZSB0aGUgImFjY2VzcyBkZW5pZWQiIHByb2JsZW0gb24gNC4w
LjEsIHNvIHRoaXMKIyBwYXRjaCBpcyBub3QgYXBwbGllZCBmb3Igbm93LiAgV2UnbGwgaW5jbHVk
ZSBpdCBpbiB0aGUgc3JwbQojIGluIGNhc2Ugc29tZW9uZSBlbHNlIHdhbnRzIGl0LgojClBhdGNo
Njogc2NyZWVuLTMuOS4xNS1ob21lLXNjcmVlbmRpci5wYXRjaAoKIyBGaXhlcyBwb3RlbnRpYWwg
YnVmZmVyIG92ZXJmbG93IHdoZW4gPiAyXjMxIHNlbWljb2xvbnMgYXJlIHBhc3NlZC4KIwpQYXRj
aDc6IHNjcmVlbi00LjAuMS1hcmdzLnBhdGNoClBhdGNoODogc2NyZWVuLTQuMC4yLWxvZ25hbWUu
cGF0Y2gKCiMgcmVhc3NpZ24gbG9ja3NjcmVlbiB0byBeYVggc28gaXRzIGhhcmRlciB0byBoaXQg
YnkgYWNjaWRlbnQKUGF0Y2g5OiBzY3JlZW4tNC4wLjItbG9jay1zaG9ydGN1dC5wYXRjaApQYXRj
aDEwOiBzY3JlZW4tNC4wLjItbGliNjQucGF0Y2gKUGF0Y2gxMTogc2NyZWVuLTQuMC4yLW1heHN0
ci5wYXRjaAoKJWRlc2NyaXB0aW9uClRoZSBzY3JlZW4gdXRpbGl0eSBhbGxvd3MgeW91IHRvIGhh
dmUgbXVsdGlwbGUgbG9naW5zIG9uIGp1c3Qgb25lCnRlcm1pbmFsLiBTY3JlZW4gaXMgdXNlZnVs
IGZvciB1c2VycyB3aG8gdGVsbmV0IGludG8gYSBtYWNoaW5lIG9yIGFyZQpjb25uZWN0ZWQgdmlh
IGEgZHVtYiB0ZXJtaW5hbCwgYnV0IHdhbnQgdG8gdXNlIG1vcmUgdGhhbiBqdXN0IG9uZQpsb2dp
bi4KCkluc3RhbGwgdGhlIHNjcmVlbiBwYWNrYWdlIGlmIHlvdSBuZWVkIGEgc2NyZWVuIG1hbmFn
ZXIgdGhhdCBjYW4Kc3VwcG9ydCBtdWx0aXBsZSBsb2dpbnMgb24gb25lIHRlcm1pbmFsLgoKJXBy
ZXAKJXNldHVwIC1xCiVwYXRjaDEgLXAxIC1iIC5pYTY0CiVwYXRjaDIgLXAxIC1iIC5zY3JlZW5y
YwojJXBhdGNoMyAtcDEgLWIgLmV0Y3NjcmVlbnJjCiMlcGF0Y2g0IC1wMSAtYiAudXRmOC1pbnN0
YWxsCiVwYXRjaDUgLXAxIC1iIC5uby1zdHJpcHBpbmctb3ItZWxmCiMlcGF0Y2g4IC1wMSAtYiAu
bG9nbmFtZQoKIyBVbmNvbW1lbnQgaWYgeW91IHdhbnQgc2NyZWVuIHRvIGZpcnN0IHRyeSB0byB1
c2UgJEhPTUUvLnNjcmVlbnMKIyBhbmQgc3Vic2VxdWVudGx5IHRyeSB0byB1c2UgL3RtcC9TLTx1
c2VyPgojCiMlcGF0Y2g2IC1wMSAtYiAuc2NyZWVuZGlyCgojCiMKJXBhdGNoNyAtcDAgLWIgLmFy
Z3MKJXBhdGNoOSAtcDEgLWIgLmxvY2stc2hvcnRjdXQKJXBhdGNoMTAgLXAxIC1iIC5saWI2NAol
cGF0Y2gxMSAtcDEgLWIgLm1heHN0cgoKJWJ1aWxkCmxpYnRvb2xpemUgLS1jb3B5IC0tZm9yY2UK
YXV0b2NvbmYKCiVjb25maWd1cmUgXAoJLS1lbmFibGUtcGFtIFwKCS0tZW5hYmxlLWNvbG9yczI1
NiBcCgktLWVuYWJsZS1yeHZ0X29zYyBcCgktLWVuYWJsZS1sb2NhbGUgXAoJLS1lbmFibGUtdGVs
bmV0IFwKCS0td2l0aC1zeXMtc2NyZWVucmM9Ii9ldGMvc2NyZWVucmMiIFwKCS0td2l0aC1zb2Nr
ZXQtZGlyPSIvdmFyL3J1bi9zY3JlZW4iCgojIFdlIHdvdWxkIGxpa2UgdG8gaGF2ZSBicmFpbGxl
IHN1cHBvcnQuCiMKc2VkIC1lICdzLy4qIy4qdW5kZWYuKkhBVkVfQlJBSUxMRS4qLyNkZWZpbmUg
SEFWRV9CUkFJTExFIDEvOycgXAoJCTwgY29uZmlnLmggPiBjb25maWcudG1wLmgKbXYgY29uZmln
LnRtcC5oIGNvbmZpZy5oCgojIFdlIHJlYWxseSBkb24ndCB3YW50IHRvIGJlIHVzaW5nIC91c3Iv
bG9jYWwKIyBiZWNhdXNlIHdlIHdpc2ggdG8gYmUgRlNCIGNvbXBsaWVudAojCiNzZWQgLWUgJ3Mv
XC91c3JcL2xvY2FsXC9ldGMvXC9ldGMvZzsnIDwgZXRjL2V0Y3NjcmVlbnJjID4gZXRjL2V0Y3Nj
cmVlbnJjLnRtcAojbXYgZXRjL2V0Y3NjcmVlbnJjLnRtcCBldGMvZXRjc2NyZWVucmMKCmZpbmQg
ZG9jIC10eXBlIGYgfCB3aGlsZSByZWFkIGxpbmU7IGRvCglzZWQgLWUgJ3MvXChcL3VzclwpXD9c
L2xvY2FsXC9ldGMvXC9ldGMvZzsnIDwgJGxpbmUgPiAkbGluZS50bXA7CgltdiAkbGluZS50bXAg
JGxpbmUKZG9uZQoKcm0gZG9jL3NjcmVlbi5pbmZvKgptYWtlIGNsZWFuCgpDRkxBR1M9IiRSUE1f
T1BUX0ZMQUdTIC1EX0dOVV9TT1VSQ0UiIG1ha2UgJEJVSUxEX01BS0VfRkxBR1MKbWFrZSAlez9f
c21wX21mbGFnc30KCiVpbnN0YWxsCm1rZGlyIC1wICRSUE1fQlVJTERfUk9PVCVfc3lzY29uZmRp
cgptYWtlIGluc3RhbGwgREVTVERJUj0kUlBNX0JVSUxEX1JPT1QKCiggY2QgJFJQTV9CVUlMRF9S
T09UCiAgcm0gLWYgLiVfYmluZGlyL3NjcmVlbi5vbGQgLiVfYmluZGlyL3NjcmVlbgogIG12IC4l
X2JpbmRpci9zY3JlZW4tJXZlcnNpb24gLiVfYmluZGlyL3NjcmVlbgopCgppbnN0YWxsIC1jIC1t
IDA2NDQgZXRjL2V0Y3NjcmVlbnJjICRSUE1fQlVJTERfUk9PVCVfc3lzY29uZmRpci9zY3JlZW5y
YwpjYXQgZXRjL3NjcmVlbnJjID4+ICRSUE1fQlVJTERfUk9PVCVfc3lzY29uZmRpci9zY3JlZW5y
YwoKIyBCZXR0ZXIgbm90IGZvcmdldCB0byBjb3B5IHRoZSBwYW0gZmlsZSBhcm91bmQKIwpta2Rp
ciAtcCAkUlBNX0JVSUxEX1JPT1QlX3N5c2NvbmZkaXIvcGFtLmQKaW5zdGFsbCAtbSAwNjQ0ICVT
T1VSQ0UxICRSUE1fQlVJTERfUk9PVCVfc3lzY29uZmRpci9wYW0uZC9zY3JlZW4KCiMgQ3JlYXRl
IHRoZSBzb2NrZXQgZGlyCm1rZGlyIC1wICRSUE1fQlVJTERfUk9PVCVfdmFyL3J1bi9zY3JlZW4K
CiMgUmVtb3ZlIGZpbGVzIGZyb20gdGhlIGJ1aWxkcm9vdCB3aGljaCB3ZSBkb24ndCB3YW50IHBh
Y2thZ2VkCiMKcm0gLWYgJFJQTV9CVUlMRF9ST09ULyVfaW5mb2Rpci9kaXIKCiVwcmUKL3Vzci9z
YmluL2dyb3VwYWRkIC1nIDg0IC1yIC1mIHNjcmVlbgoKJXBvc3QKL3NiaW4vaW5zdGFsbC1pbmZv
ICVfaW5mb2Rpci9zY3JlZW4uaW5mby5iejIgJV9pbmZvZGlyL2RpciAtLWVudHJ5PSIqIHNjcmVl
bjogKHNjcmVlbikuICAgICAgICAgICAgIFRlcm1pbmFsIG11bHRpcGxleGVyLiIKCiVwcmV1bgpp
ZiBbICQxID0gMCBdOyB0aGVuCiAgICAvc2Jpbi9pbnN0YWxsLWluZm8gLS1kZWxldGUgJV9pbmZv
ZGlyL3NjcmVlbi5pbmZvLmJ6MiAlX2luZm9kaXIvZGlyIC0tZW50cnk9Iiogc2NyZWVuOiAoc2Ny
ZWVuKS4gICAgICAgICAgICAgVGVybWluYWwgbXVsdGlwbGV4ZXIuIgpmaQoKJWZpbGVzCiVkb2Mg
TkVXUyBSRUFETUUgZG9jL0ZBUSBkb2MvUkVBRE1FLkRPVFNDUkVFTgolYXR0cigyNzU1LHJvb3Qs
c2NyZWVuKSAlX2JpbmRpci9zY3JlZW4KJV9tYW4xZGlyL3NjcmVlbi4qCiVfaW5mb2Rpci9zY3Jl
ZW4uaW5mbyoKJV9kYXRhZGlyL3NjcmVlbgolYXR0cig3NzUscm9vdCxzY3JlZW4pICVfdmFyL3J1
bi9zY3JlZW4KJWNvbmZpZyhub3JlcGxhY2UpICVfc3lzY29uZmRpci9zY3JlZW5yYwolY29uZmln
KG5vcmVwbGFjZSkgJV9zeXNjb25mZGlyL3BhbS5kL3NjcmVlbgoKIyBUT0RPOgojIC0gY29uc2lk
ZXIgZml4ZWQgZ3JvdXAgaW4gInJlYWwiIEFMVCBwYWNrYWdlCgolY2hhbmdlbG9nCiogVHVlIEp1
biAxOSAyMDA3IE1pY2hhZWwgU2hpZ29yaW4gPG1pa2VAYWx0bGludXgub3JnPiA0LjAuMy1hbHQw
LjEKLSBleHBlcmltZW50YWwgYnVpbGQgZm9yIEFMVCBMaW51eAogICsgInJlYXNzaWduIGxvY2tz
Y3JlZW4gdG8gXmFYIHNvIGl0cyBoYXJkZXIgdG8gaGl0IGJ5IGFjY2lkZW50IgogICAgcGF0Y2gg
d2Fzbid0IHJlbW92ZWQsIG1heSBiZSBvZiBzb21lIHN1cnByaXNlCi0gbWluaW1hbC9yZXF1aXJl
ZCBzcGVjIGNsZWFudXAKCiogTW9uIERlYyAwNCAyMDA2IE1hcmNlbGEgTWFzbGFub3ZhIDxtbWFz
bGFub0ByZWRoYXQuY29tPiAtIDQuMC4zLTEKLSBuZXcgdXBzdHJlYW0gdmVyc2lvbgotIFJlc29s
dmVzOiByaGJ6IzIxNjQyMwoKKiBXZWQgQXVnIDE2IDIwMDYgSmVzc2UgS2VhdGluZyA8amtlYXRp
bmdAcmVkaGF0LmNvbT4gLSA0LjAuMi0xNgotIERvbid0IHVzZSAlJW1ha2VpbnN0YWxsLCBpbnN0
ZWFkIG1ha2UgaW5zdGFsbC4KLSBDaGFuZ2UgRERFU1RESVIgdG8gREVTVERJUiB0byBkbyB0aGUg
cmlnaHQgdGhpbmcuCi0gQ29tbWVudCBvdXQgdXRmIHBhdGNoIGFzIGl0IGlzIG5vIGxvbmdlciBu
ZWNlc3NhcnkuCi0gQWRkIGRpc3QgdGFnCi0gQ2hhbmdlIFByZVJlcSB0byBjb3JyZWN0IFJlcXVp
cmVzKHByZSksIFJlcXVpcmVzKHBvc3QpLCBSZXF1aXJlcyhwcmV1bikKLSBEb24ndCB1c2UgUlBN
X1NPVVJDRV9ESVIsIHJlZmVyZW5jZSB0aGUgc291cmNlIGZpbGUgZGlyZWN0bHkKLSBEbyB0aGUg
Y29tcGlsaW5nIChtYWtlKSBpbiAlJWJ1aWxkLCBub3QgJSVpbnN0YWxsCi0gRG9uJ3QgcmVwbGFj
ZSAvZXRjL3NjcmVlbnJjIGlmIHRoZSB1c2VyIGhhcyBtb2RpZmllZCBpdAotIERpdHRvIC9ldGMv
cGFtLmQvc2NyZWVuCi0gQ2hhbmdlIHRoZSBidWlsZHJvb3QgdG8gZm9sbG93IGd1aWRlbGluZXMK
CiogV2VkIEp1bCAxMiAyMDA2IEplc3NlIEtlYXRpbmcgPGprZWF0aW5nQHJlZGhhdC5jb20+IC0g
NC4wLjItMTUuMQotIHJlYnVpbGQKCiogTW9uIEp1bCAxMCAyMDA2IFBldHIgUm9ja2FpIDxwcm9j
a2FpQHJlZGhhdC5jb20+IC0gNC4wLjItMTUKLSBidW1wIE1BWFNUUiAoc3RyaW5nIGJ1ZmZlciBz
aXplKSB0byA0ayAoZnJvbSAyNTYgYnl0ZXMpLCBmaXhlcwogIHN0YXR1cyBsaW5lIGlzc3VlcyB3
aXRoIHdpbmRvdyBsaXN0IGluIHN0YXR1cyBsaW5lIGFuZCB0b28gbWFueQogIHdpbmRvd3MgKGFu
ZCBwb3NzaWJseSBvdGhlciBpc3N1ZXMgd2l0aCBsb25nIHN0cmluZ3MpCgoqIFR1ZSBNYXkgMzAg
MjAwNiBQZXRyIFJvY2thaSA8cHJvY2thaUByZWRoYXQuY29tPiAtIDQuMC4yLTE0Ci0gcHV0IC91
c3Ivc2hhcmUvc2NyZWVuIGludG8gdGhlIHBhY2thZ2UgKHNvIHRoZSBwYWNrYWdlIG93bnMgdGhl
CiAgZGlyZWN0b3J5IGFzIHdlbGwsIG5vdCBvbmx5IHRoZSBmaWxlcyBiZWxvdyk7IGZpeGVzIEJS
IDE5Mjg1MgoKKiBGcmkgRmViIDI0IDIwMDYgUGV0ciBSb2NrYWkgPHByb2NrYWlAcmVkaGF0LmNv
bT4gLSA0LjAuMi0xMgotIGRldGVjdCBsaWJ1dGlsKHMpLmEgZXZlbiBpZiBpdCBpcyBvbmx5IHBy
ZXNlbnQgaW4gbGliNjQgKCMxODI0MDcpCgoqIEZyaSBGZWIgMTAgMjAwNiBKZXNzZSBLZWF0aW5n
IDxqa2VhdGluZ0ByZWRoYXQuY29tPiAtIDQuMC4yLTExLjIKLSBidW1wIGFnYWluIGZvciBkb3Vi
bGUtbG9uZyBidWcgb24gcHBjKDY0KQoKKiBUdWUgRmViIDA3IDIwMDYgSmVzc2UgS2VhdGluZyA8
amtlYXRpbmdAcmVkaGF0LmNvbT4gLSA0LjAuMi0xMS4xCi0gcmVidWlsdCBmb3IgbmV3IGdjYzQu
MSBzbmFwc2hvdCBhbmQgZ2xpYmMgY2hhbmdlcwoKKiBUdWUgSmFuIDE3IDIwMDYgUGV0ciBSb2Nr
YWkgPHByb2NrYWlAcmVkaGF0LmNvbT4gLSA0LjAuMi0xMQotIGNoYW5nZSB0aGUgZGVmYXVsdCBs
b2Nrc2NyZWVuIHNob3J0Y3V0IHRvIF5hWCB0byBtYWtlCiAgaXQgaGFyZGVyIHRvIGhpdCBieSBh
Y2NpZGVudCwgYXMgcGVyIEJSIDE1NzgyMQoKKiBGcmkgRGVjIDA5IDIwMDUgSmVzc2UgS2VhdGlu
ZyA8amtlYXRpbmdAcmVkaGF0LmNvbT4KLSByZWJ1aWx0CgoqIE1vbiBPY3QgMTAgMjAwNSBUb21h
cyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAtIDQuMC4yLTEwCi0gdXNlIGluY2x1ZGUgaW5zdGVh
ZCBvZiBwYW1fc3RhY2sgaW4gcGFtIGNvbmZpZwoKKiBGcmkgTWF5IDI3IDIwMDUgQmlsbCBOb3R0
aW5naGFtIDxub3R0aW5nQHJlZGhhdC5jb20+IC0gNC4wLjItOQotIGRvbid0IHVzZSB1dG1wIGdy
b3VwIGZvciBzb2NrZXQgZGlyOyB1c2UgYSBkZWRpY2F0ZWQgc2NyZWVuIGdpZAoKKiBUdWUgTWFy
IDI5IDIwMDUgUGV0ciBSb2NrYWkgPHByb2NrYWlAcmVkaGF0LmNvbT4gLSA0LjAuMi04Ci0gZml4
IEJSIDE1MDM5MiBieSBpbXBsZW1lbnRpbmcgdGhlIHNldGdpZC91dG1wIHNjaGVtZSBmb3Igc29j
a2V0IGRpcmVjdG9yeQoKKiBXZWQgTWFyIDAyIDIwMDUgUGV0ciBSb2NrYWkgPHByb2NrYWlAcmVk
aGF0LmNvbT4gLSA0LjAuMi03Ci0gcmVidWlsZAoKKiBUdWUgRmViIDE1IDIwMDUgUGV0ciBSb2Nr
YWkgPHByb2NrYWlAcmVkaGF0LmNvbT4gLSA0LjAuMi02Ci0gZml4IEJSIDEzNjIzNCBieSBjYXJy
eWluZyBvdXQgdGhlIHN1Z2dlc3RlZCBjaGFuZ2UgaW4gL2V0Yy9zY3JlZW5yYwotIGRyb3Agc2Ny
ZWVuLTQuMC4yLWxvZ25hbWUucGF0Y2ggKG1lcmdlZCBpbnRvIHNjcmVlbi00LjAuMi1zY3JlZW5y
Yy5wYXRjaCkKLSBncmFudCB3aXNoIDEzMDY3NCBieSBhZGRpbmcgYSAoY29tbWVudGVkIG91dCkg
Y2FwdGlvbiBzdGF0ZW1lbnQgdG8gZGVmYXVsdAogIHNjcmVlbnJjCgoqIEZyaSBTZXAgMTAgMjAw
NCBXYXJyZW4gVG9nYW1pIDx3dG9nYW1pQHJlZGhhdC5jb20+IDQuMC4yLTUKLSAjMTMyMzIxIGFu
ZCBzb21lIG1pbm9yIHNwZWMgY2xlYW51cHMKCiogRnJpIEF1ZyAgNiAyMDA0IERhbmllbCBSZWVk
IDxkanJAcmVkaGF0LmNvbT4gNC4wLjItNAotIHJlbW92ZSBleHRyYSBlbnRyaWVzIGluICJzb3Vy
Y2VzIiBmaWxlCgoqIFR1ZSBKdW4gMTUgMjAwNCBFbGxpb3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5j
b20+Ci0gcmVidWlsdAoKKiBXZWQgQXByIDI4IDIwMDQgRGFuaWVsIFJlZWQgPGRqckByZWRoYXQu
Y29tPiA0LjAuMi0yCi0gQWRkIHBhdGNoIC1sb2duYW1lIHRvIGNvcnJlY3QgIzEyMTg3NQoKKiBN
b24gQXByIDA1IDIwMDQgRGFuaWVsIFJlZWQgPGRqckByZWRoYXQuY29tPiA0LjAuMi0xCi0gVmVy
c2lvbiBidW1wICg0LjAuMikKCiogRnJpIEZlYiAxMyAyMDA0IEVsbGlvdCBMZWUgPHNvcHdpdGhA
cmVkaGF0LmNvbT4KLSByZWJ1aWx0CgoqIFR1ZSBKYW4gMjcgMjAwNCBMb24gSG9oYmVyZ2VyIDxs
aGhAcmVkaGF0LmNvbT4gNC4wLjEtMwotIFJlYnVpbGQKCiogTW9uIERlYyAwOCAyMDAzIExvbiBI
b2hiZXJnZXIgPGxoaEByZWRoYXQuY29tPiA0LjAuMS0yCi0gQnVpbGQgZm9yIEZlZG9yYQoKKiBN
b24gRGVjIDA4IDIwMDMgTG9uIEhvaGJlcmdlciA8bGhoQHJlZGhhdC5jb20+IDQuMC4xLTEKLSBJ
bXBvcnQgb2YgNC4wLjEgZnJvbSB1cHN0cmVhbS4KLSBSZW1vdmVkIHNjcmVlbi1ob21lZGlyIGhh
Y2sgaW50cm9kdWNlZCBpbiAzLjkuMTUtOC4gIChJCndhcyB1bmFibGUgdG8gcmVwcm9kdWNlIHRo
ZSBiZWhhdmlvciBkZXNjcmliZWQgaW4gIzk4MzIwLAphbmQgdGh1cywgdGhlIHBhdGNoIGlzbid0
IG5lY2Vzc2FyeS4pCi0gRml4IGZvciBidWZmZXIgb3ZlcmZsb3cgZnJvbSBUaW1vIFN0cmFpbmVu
IChwYXRjaCA3KS4KLSBGaXggZm9yICMxMTEwODQgLSB3ZSBub3cgcmVxdWlyZSB0ZXhpbmZvIHRv
IGJ1aWxkLgotIENvbW1lbnQgb3V0IGxpbmVzIGluIHNjcmVlbnJjIGNhdXNpbmcgc2NyZWVuIHRv
IGNvbXBsYWluCmF0IHN0YXJ0dXAuCgoqIFR1ZSBKdWwgMTAgMjAwMyBMb24gSG9oYmVyZ2VyIDxs
aGhAcmVkaGF0LmNvbT4gMy45LjE1LTExCi0gUmVidWlsdAoKKiBUdWUgSnVsIDEwIDIwMDMgTG9u
IEhvaGJlcmdlciA8bGhoQHJlZGhhdC5jb20+IDMuOS4xNS0xMAotIFB1dCB0aGUgYmluZGtleSBi
YWNrIGluIGZvciBub3cuCgoqIE1vbiBKdWwgMDEgMjAwMyBMb24gSG9oYmVyZ2VyIDxsaGhAcmVk
aGF0LmNvbT4gMy45LjE1LTkKLSBSZWJ1aWx0CgoqIE1vbiBKdWwgMDEgMjAwMyBMb24gSG9oYmVy
Z2VyIDxsaGhAcmVkaGF0LmNvbT4gMy45LjE1LTgKLSBDaGFuZ2Ugc2NyZWVuJ3MgYmVoYXZpb3Ig
dG8gZG8gdGhlIGZvbGxvd2luZzogQXR0ZW1wdCB0byB1c2UKfi8uc2NyZWVuIGFzIHRoZSBzY3Jl
ZW4gZGlyZWN0b3J5LiAgRmFpbGluZyB0aGF0IChpZSwgb24gZmlsZXMKc3lzdGVtcyB3aXRob3V0
IFVuaXggc29ja2V0cyBzdXBwb3J0KSwgdHJ5IHVzaW5nIC90bXAvc2NyZWVuLTxVU0VSPi4KVGhp
cyBwcmV2ZW50cyBhIHVzZXIgZnJvbSBjcmVhdGluZyAvdG1wL3NjcmVlbnMgKHdoaWNoIGluaGVy
aXRzCnRoZSBzdGlja3kgYml0IGZyb20gL3RtcCwgcHJldmVudGluZyBvdGhlciB1c2VycyBmcm9t
IHVzaW5nIHNjcmVlbiksCmFzIHdlbGwgYXMgKnRyaWVzKiB0byBiZSBtb3JlIHNlY3VyZS4KCiog
VHVlIEp1bCAwMSAyMDAzIExvbiBIb2hiZXJnZXIgPGxoaEByZWRoYXQuY29tPiAzLjkuMTUtNwot
IFJlYnVpbHQKCiogVHVlIEp1bCAwMSAyMDAzIExvbiBIb2hiZXJnZXIgPGxoaEByZWRoYXQuY29t
PiAzLjkuMTUtNgotIERpc2FibGUgc3lzdGVtLXdpZGUgcmVhZC93cml0ZSBkaXIgaW4gL3RtcDsg
dXNlIHVzZXIncyB+Ly5zY3JlZW4KZGlyZWN0b3J5IGZvciBzY3JlZW4gc2Vzc2lvbnMuICgjOTgz
MjApCgoqIE1vbiBKdW4gMTYgMjAwMyBMb24gSG9oYmVyZ2VyIDxsaGhAcmVkaGF0LmNvbT4gMy45
LjE1LTUKLSBSZWJ1aWx0CgoqIEZyaSBKdW4gMTMgMjAwMyBMb24gSG9oYmVyZ2VyIDxsaGhAcmVk
aGF0LmNvbT4gMy45LjE1LTQKLSBSZW1vdmVkIGJpbmRrZXkgZW50cnk7IHN0dHkgYHRwdXQga2Jz
YCBzZXRzIHRoaXMgY29ycmVjdGx5IGZvcgp0aGUgc2NyZWVuIHRlcm1pbmFsIHR5cGUuCgoqIFdl
ZCBKdW4gMDQgMjAwMyBFbGxpb3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5jb20+Ci0gcmVidWlsdAoK
KiBXZWQgQXByIDE2IDIwMDMgTG9uIEhvaGJlcmdlciA8bGhoQHJlZGhhdC5jb20+IDMuOS4xNS0y
Ci0gUmVidWlsdAoKKiBXZWQgQXByIDE2IDIwMDMgTG9uIEhvaGJlcmdlciA8bGhoQHJlZGhhdC5j
b20+IDMuOS4xNS0xCi0gSW1wb3J0IG9mIDMuOS4xNSBmcm9tIHVwc3RyZWFtLgoKKiBGcmkgRmVi
IDE0IDIwMDMgTG9uIEhvaGJlcmdlciA8bGhoQHJlZGhhdC5jb20+IDMuOS4xMy01Ci0gQ2xvc2Vz
IGEgcG90ZW50aWFsIHdpbmRvdyB0byByYWlzZSB0aGUgd2FybmluZyBub3RlZAppbiAjODQyMzIu
CgoqIEZyaSBGZWIgMTQgMjAwMyBMb24gSG9oYmVyZ2VyIDxsaGhAcmVkaGF0LmNvbT4gMy45LjEz
LTQKLSBGaXggZm9yICM4NDIzMgoKKiBXZWQgSmFuIDIyIDIwMDMgVGltIFBvd2VycyA8dGltcEBy
ZWRoYXQuY29tPgotIHJlYnVpbHQKCiogVGh1IERlYyAwNSAyMDAyIExvbiBIb2hiZXJnZXIgPGxo
aEByZWRoYXQuY29tPiAzLjkuMTMtMgotIEZpeGVkIHVwIHBhdGNoZXM7IGFnZ3JlZ2F0ZWQgc2Ny
ZWVucmMgKyBzdGF0dXMgcGF0Y2hlcyBpbnRvIG9uZQpmb3IgYnVpbGQgMi4KCiogVGh1IERlYyAw
NSAyMDAyIExvbiBIb2hiZXJnZXIgPGxoaEByZWRoYXQuY29tPiAzLjkuMTMtMQotIEltcG9ydCBv
ZiAzLjkuMTMgc291cmNlIHRyZWUuICBVVEYtOCBubyBsb25nZXIgZG9vbXMgdXMuCgoqIE1vbiBE
ZWMgMDIgMjAwMiBMb24gSG9oYmVyZ2VyIDxsaGhAcmVkaGF0LmNvbT4gMy45LjExLTE0Ci0gRml4
IGZvciAjNzg0MjMKCiogVHVlIE5vdiAxMiAyMDAyIExvbiBIb2hiZXJnZXIgPGxoaEByZWRoYXQu
Y29tPiAzLjkuMTEtMTMKLSBGaXhlZCBNYWtlZmlsZSwgYnVtcGVkIHRvIDMuOS4xMS0xMwoKKiBN
b24gTm92IDExIDIwMDIgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAzLjkuMTEt
MTIKLSBvYmV5IFJQTV9PUFRfRkxBR1MgYWx3YXlzCgoqIE1vbiBOb3YgMTEgMjAwMiBCaWxsIE5v
dHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0LmNvbT4KLSByZW1vdmUgaGFyZGNvZGVkIHBhdGhzIGZy
b20gcGFtIGNvbmZpZyBmaWxlCgoqIFdlZCBBdWcgMTQgMjAwMiBQaGlsaXAgQ29wZWxhbmQgPGJy
eWNlQHJlZGhhdC5jb20+IDMuOS4xMS0xMAotICM2NTM0NCAtIGRvb21lZCBieSB1dGY4CgoqIFR1
ZSBBdWcgMTIgMjAwMiBQaGlsaXAgQ29wZWxhbmQgPGJyeWNlQHJlZGhhdC5jb20+IDMuOS4xMS05
Ci0gIzYwNTk3IC0gd2hhdCAvc2hhbGwvIHdlIG1ha2UgdGhlIGRlZmF1bHRzIHRvZGF5PwoKKiBU
aHUgSnVsIDE3IDIwMDIgUGhpbGlwIENvcGVsYW5kIDxicnljZUByZWRoYXQuY29tPiAzLjkuMTEt
OAotIFByZXZlbnQgdGhlIG1ha2VmaWxlIGZyb20gc3RyaXBwaW5nIHRoZSBiaW5hcnkKLSBSZWFs
bHkgZ2V0IHJpZCBvZiB0aGUgbGliZWxmIGRlcGVuZGFuY3kKCiogVGh1IEp1biAyNyAyMDAyIFBo
aWxpcCBDb3BlbGFuZCA8YnJ5Y2VAcmVkaGF0LmNvbT4gMy45LjExLTcKLSBHZXQgcmlkIG9mIGxp
YmVsZiBkZXBlbmRhbmN5CgoqIEZyaSBKdW4gMjEgMjAwMiBUaW0gUG93ZXJzIDx0aW1wQHJlZGhh
dC5jb20+IDMuOS4xMS02Ci0gYXV0b21hdGVkIHJlYnVpbGQKCiogVHVlIE1heSAyOCAyMDAyIFBo
aWxpcCBDb3BlbGFuZCA8YnJ5Y2VAcmVkaGF0LmNvbT4gMy45LjExLTUKLSBNaXNzaW5nIGJpbmRr
ZXkgdG8gYWxsb3cgYmFja3NwYWNlIHRvIHdvcmsKLSBSZWJ1aWx0IGR1ZSB0byBycG0gYnVnCgoq
IFRodSBBcHIgMTggMjAwMiBCaWxsIE5vdHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0LmNvbT4KLSBm
aXggc3RhcnRpbmcgaW4gbm9uLWVuX1VTIGxvY2FsZXMgKCM2MTgzNSkKCiogTW9uIEFwciAxNSAy
MDAyIFBoaWxpcCBDb3BlbGFuZCA8YnJ5Y2VAcmVkaGF0LmNvbT4KLSBWYXJpb3VzIGZpeHVwcyBp
bmNsdWRpbmcgcmVtZW1iZXJpbmcgdG8gZW5hYmxlIHBhbSBzdXBwb3J0CgoqIFNhdCBGZWIgMTYg
MjAwMiBGbG9yaWFuIExhIFJvY2hlIDxGbG9yaWFuLkxhUm9jaGVAcmVkaGF0LmRlPgotIHVwZGF0
ZSB0byAzLjkuMTEKLSBwYXRjaDAvcGF0Y2g0IGlzIG5vdCBuZWNlc3NhcnkgYW55bW9yZQotIGRv
IG5vdCBjb21wcmVzcyBtYW4tcGFnZXMvaW5mby1maWxlcyBpbiBzcGVjIGZpbGUKLSB1c2UgY29u
ZmlndXJlIHRvIHNldCB0ZWxuZXQvc2NyZWVucmMgaW5zdGVhZCBvZiBzZWQKLSBhZGQgYSBoYWNr
IHRvIGNvcnJlY3RseSBpbnN0YWxsIHRoZSBuZXcgc2NyZWVuZW5jb2RpbmdzCi0gdHJ5IHRvIGJ1
aWxkIHVwIGEgYmV0dGVyIGdsb2JhbCAvZXRjL3NjcmVlbnJjIGluc3RlYWQgb2YKICAvZXRjL3Nr
ZWwvLnNjcmVlbnJjCgoqIEZyaSBBdWcgIDMgMjAwMSBDcnV0Y2hlciBEdW5uYXZhbnQgPGNydXRj
aGVyQHJlZGhhdC5jb20+IDMuOS45LTMKLSBmaXhlZCBzY3JlZW5yYyBwYXRoIHNlZCBjb21tYW5k
OyAjNTAwNDYKLSBhZGRlZCBuY3Vyc2VzLWRldmVsIGJ1aWxkIGRlcDsgIzQ5NjkyCi0gZml4IHR5
cG8gaW4gc3BlY2ZpbGUgdGhhdCBicm9rZSBzY3JlZW5yYywgIzQ5NTM1CgoqIFR1ZSBKdWwgMTAg
MjAwMSBUaW0gUG93ZXJzIDx0aW1wQHJlZGhhdC5jb20+Ci0gZ3ppcCBtYW5wYWdlCgoqIE1vbiBK
dW4gMjUgMjAwMSBDcnV0Y2hlciBEdW5uYXZhbnQgPGNydXRjaGVyQHJlZGhhdC5jb20+Ci0gaXR0
ZXJhdGUgdG8gMy45LjkKLSBmaXhlZCBGQVEKLSBhZGRlZCBlbGVjdHJvQG1yZHVjay5uZXQncyBQ
QU0gcGF0Y2gsIGNyYXp5IDopCgoqIFN1biBKdW4gMjQgMjAwMSBFbGxpb3QgTGVlIDxzb3B3aXRo
QHJlZGhhdC5jb20+Ci0gQnVtcCByZWxlYXNlICsgcmVidWlsZC4KCiogVHVlIEZlYiAxMyAyMDAx
IEZsb3JpYW4gTGEgUm9jaGUgPEZsb3JpYW4uTGFSb2NoZUByZWRoYXQuZGU+Ci0gZml4IGNvbmZp
Z3VyZS5pbiB0byB1c2UgY29ycmVjdCBjb2RlIHRvIGNoZWNrIGZvciBzZWxlY3QoKQoKKiBXZWQg
SmFuIDEwIDIwMDEgVGltIFdhdWdoIDx0d2F1Z2hAcmVkaGF0LmNvbT4KLSBSZWJ1aWxkLCB3aGlj
aCB3aWxsIGhvcGVmdWxseSBmaXggYnVnICMyMjUzNwoKKiBTdW4gT2N0IDAxIDIwMDAgRmxvcmlh
biBMYSBSb2NoZSA8Rmxvcmlhbi5MYVJvY2hlQHJlZGhhdC5kZT4KLSB1cGRhdGUgdG8gMy45LjgK
LSBjaGFuZ2UgdGhlIC5qYmogcGF0Y2ggYW5kIGFkZCBzb21lIG1vcmUgInVzZXIiIC0+ICJhdXNl
ciIgY2FzZXMKCiogVGh1IEF1ZyAxNSAyMDAwIENydXRjaGVyIER1bm5hdmFudCA8Y3J1dGNoZXJA
cmVkaGF0LmNvbT4KLSBQYXRjaGVkIHRoZSBkb2N1bWVudGF0aW9uIHRvIGNoYW5nZSB0aGUgJ0Mt
YSBDLVwnIHRvICdDLWEgXCcsCi0gd2hpY2ggaXMgd2hhdCBpcyB0aGUgcmVhbCBiZWhhdmlvdXIu
IHRoaXMgZml4ZXMgYnVnICMxNjEwMwoKKiBUaHUgQXVnICAzIDIwMDAgQ3J1dGNoZXIgRHVubmF2
YW50IDxjcnV0Y2hlckByZWRoYXQuY29tPgotIEZpeGVkIG15IGZpeCwgc28gdGhhdCB0aGUgaGFj
ayBnb2VzIGluIHRoZSAvZ2xvYmFsLyBmaWxlIDopCgoqIFRodSBBdWcgIDMgMjAwMCBDcnV0Y2hl
ciBEdW5uYXZhbnQgPGNydXRjaGVyQHJlZGhhdC5jb20+Ci0gU3R1Y2sgYW4gZW50cnkgaW50byB0
aGUgZGVmYXVsdCBzY3JlZW5yYyBmaWxlIHRoYXQgZm9yY2VzCi0gJ14/JyAoYmFja3NwYWNlKSB0
byBzZW5kICdeSCcuCi0gSXRzIGFuIHVnbHkgZml4IGZvciBhIHRlcm1jYXAgaW5oZXJpdGFuY2Ug
cHJvYmxlbSwKLSBidXQgaXQgd29ya3MsIGlmIGFueW9uZSBSRUFMTFkgbmVlZHMgJ14/JyB0aGV5
IGNhbiBjaGFuZ2UgaXQsCi0gYW5kIEkgdGhpbmsgd2UgYW5nZXIgbGVzcyBwZW9wbGUgd2l0aCB0
aGlzIHRoYW4gdGhlIHdheSBpdAotIGN1cnJlbnRseSBiZWhhdmVzLiAoUmVhZDogdmkgYW5kIGVt
YWNzIHdvcmsgbm93KQotIFBPU1QgTk9URSAoQXVnIDE1KTogZW1hY3MgaXMgTk9UIGhhcHB5IHdp
dGggXkgsIEJVVCBzY3JlZW4gdGhpbmtzCi0gdGhhdCB0aGlzIGlzIHdoYXQgYmFja3NwYWNlIGlz
IHN1cHBvc2VkIHRvIGRvLCBzbyB3ZSBkb24ndCBjaGFuZ2UgaXQuCgoqIFRodSBBdWcgIDMgMjAw
MCBDcnV0Y2hlciBEdW5uYXZhbnQgPGNydXRjaGVyQHJlZGhhdC5jb20+Ci0gRml4ZWQgc29tZSBj
b25mbGljdGluZyBkZXNjcmlwdGlvbnMgaW4gdGhlIGRvY3VtZW50YXRpb24KCiogVGh1IEF1ZyAg
MyAyMDAwIENydXRjaGVyIER1bm5hdmFudCA8Y3J1dGNoZXJAcmVkaGF0LmNvbT4KLSBnb3QgYSBw
YXRjaCBmcm9tIHJ6bUBpY20uZWR1LnBsIHRvIGZpeCBidWcgIzEwMzUzCi0gd2hpY2ggY2F1c2Vk
IHNjcmVlbiB0byBjcmFzaCB3aGVuIGNvcHlpbmcgdG8gYSBmaWxlIGJ1ZmZlcgoKKiBXZWQgSnVs
IDEyIDIwMDAgUHJvc3BlY3RvciA8YnVnemlsbGFAcmVkaGF0LmNvbT4KLSBhdXRvbWF0aWMgcmVi
dWlsZAoKKiBTYXQgSnVuIDEwIDIwMDAgQmlsbCBOb3R0aW5naGFtIDxub3R0aW5nQHJlZGhhdC5j
b20+Ci0gcmVidWlsZCwgRkhTIHR3ZWFrcwoKKiBTYXQgTWF5ICA2IDIwMDAgQmlsbCBOb3R0aW5n
aGFtIDxub3R0aW5nQHJlZGhhdC5jb20+Ci0gZml4IGJ1aWxkIGZvciBpYTY0CgoqIE1vbiBBcHIg
IDMgMjAwMCBCZXJuaGFyZCBSb3Nlbmty5G56ZXIgPGJlcm9AcmVkaGF0LmNvbT4KLSByZWJ1aWxk
IHdpdGggbmV3IG5jdXJzZXMKCiogVHVlIE1hciAgNyAyMDAwIEplZmYgSm9obnNvbiA8amJqQHJl
ZGhhdC5jb20+Ci0gcmVidWlsZCBmb3Igc3BhcmMgYmF1ZCByYXRlcyA+IDM4NDAwLgoKKiBUdWUg
RmViIDE1IDIwMDAgQmVybmhhcmQgUm9zZW5rcuRuemVyIDxiZXJvQHJlZGhhdC5jb20+Ci0gRml4
IE1ENSBwYXNzd29yZCBzdXBwb3J0IChCdWcgIzk0NjMpCgoqIFRodSBGZWIgIDMgMjAwMCBCaWxs
IE5vdHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0LmNvbT4KLSBoYW5kbGUgY29tcHJlc3NlZCBtYW4g
cGFnZXMKCiogRnJpIERlYyAxMCAxOTk5IEJpbGwgTm90dGluZ2hhbSA8bm90dGluZ0ByZWRoYXQu
Y29tPgotIHVwZGF0ZSB0byAzLjkuNQoKKiBXZWQgT2N0IDIwIDE5OTkgQmlsbCBOb3R0aW5naGFt
IDxub3R0aW5nQHJlZGhhdC5jb20+Ci0geW91IGtub3csIHdlIHdlcmVuJ3QganVzdCBwYXRjaGlu
ZyBpbiBVbml4OTggcHR5IHN1cHBvcnQgZm9yIGZ1bi4KCiogV2VkIEF1ZyAxOCAxOTk5IEJpbGwg
Tm90dGluZ2hhbSA8bm90dGluZ0ByZWRoYXQuY29tPgotIHB1dCBzY3JlZW5kaXIgaW4gfgoKKiBX
ZWQgQXVnIDE4IDE5OTkgSmVmZiBKb2huc29uIDxqYmpAcmVkaGF0LmNvbT4KLSB1cGRhdGUgdG8g
My45LjQuCgoqIFdlZCBKdW4gMTYgMTk5OSBCaWxsIE5vdHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0
LmNvbT4KLSBmb3JjZSB0dHkgcGVybWlzc2lvbnMvZ3JvdXAKCiogV2VkIEp1biA1IDE5OTkgRGFs
ZSBMb3ZlbGFjZSA8ZGFsZUByZWRoYXQuY29tPgotIHBlcm1pc3Npb25zIG9uIC9ldGMvc2tlbC8u
c2NyZWVucmMgdG8gNjQ0CgoqIE1vbiBBcHIgMjYgMTk5OSBCaWxsIE5vdHRpbmdoYW0gPG5vdHRp
bmdAcmVkaGF0LmNvbT4KLSB0YWtlIG91dCB3YXJuaW5nIG9mIGRpcmVjdG9yeSBwZXJtaXNzaW9u
cyBzbyByb290IGNhbiBzdGlsbCB1c2Ugc2NyZWVuCgoqIFdlZCBBcHIgMDcgMTk5OSBCaWxsIE5v
dHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0LmNvbT4KLSB0YWtlIG91dCB3YXJuaW5nIG9mIGRpcmVj
dG9yeSBvd25lcnNoaXAgc28gcm9vdCBjYW4gc3RpbGwgdXNlIHNjcmVlbgoKKiBXZWQgQXByIDA3
IDE5OTkgRXJpayBUcm9hbiA8ZXd0QHJlZGhhdC5jb20+Ci0gcGF0Y2hlZCBpbiB1dGVtcHRlciBz
dXBwb3J0LCB0dXJuZWQgb2ZmIHNldHVpZCBiaXQKCiogRnJpIE1hciAyNiAxOTk5IEVyaWsgVHJv
YW4gPGV3dEByZWRoYXQuY29tPgotIGZpeGVkIHVuaXg5OCBwdHkgc3VwcG9ydAoKKiBTdW4gTWFy
IDIxIDE5OTkgQ3Jpc3RpYW4gR2FmdG9uIDxnYWZ0b25AcmVkaGF0LmNvbT4KLSBhdXRvIHJlYnVp
bGQgaW4gdGhlIG5ldyBidWlsZCBlbnZpcm9ubWVudCAocmVsZWFzZSAzKQoKKiBUaHUgTWFyIDEx
IDE5OTkgQmlsbCBOb3R0aW5naGFtIDxub3R0aW5nQHJlZGhhdC5jb20+Ci0gYWRkIHBhdGNoIGZv
ciBVbml4OTggcHR5IHN1cHBvcnQKCiogTW9uIERlYyAyOCAxOTk4IEplZmYgSm9obnNvbiA8amJq
QHJlZGhhdC5jb20+Ci0gdXBkYXRlIHRvIDMuNy42LgoKKiBTdW4gQXVnIDE2IDE5OTggSmVmZiBK
b2huc29uIDxqYmpAcmVkaGF0LmNvbT4KLSBidWlsZCByb290CgoqIE1vbiBBcHIgMjcgMTk5OCBQ
cm9zcGVjdG9yIFN5c3RlbSA8YnVnc0ByZWRoYXQuY29tPgotIHRyYW5zbGF0aW9ucyBtb2RpZmll
ZCBmb3IgZGUsIGZyLCB0cgoKKiBXZWQgT2N0IDIxIDE5OTcgQ3Jpc3RpYW4gR2FmdG9uIDxnYWZ0
b25AcmVkaGF0LmNvbT4KLSB1cGdyYWRlZCB0byAzLjcuNAoKKiBXZWQgT2N0IDA4IDE5OTcgRXJp
ayBUcm9hbiA8ZXd0QHJlZGhhdC5jb20+Ci0gcmVtb3ZlZCBnbGliYyAxLjk5IHNwZWNpZmljIHBh
dGNoCgoqIFR1ZSBTZXAgMjMgMTk5NyBFcmlrIFRyb2FuIDxld3RAcmVkaGF0LmNvbT4KLSBhZGRl
ZCBpbnN0YWxsLWluZm8gc3VwcG9ydAoKKiBNb24gSnVsIDIxIDE5OTcgRXJpayBUcm9hbiA8ZXd0
QHJlZGhhdC5jb20+Ci0gYnVpbHQgYWdhaW5zdCBnbGliYwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>