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

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

    <bug>
          <bug_id>22066</bug_id>
          
          <creation_ts>2009-10-26 13:26:01 +0300</creation_ts>
          <short_desc>Boinc-manager не может установить сетевое соединение</short_desc>
          <delta_ts>2017-06-12 19:50:31 +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>boinc-manager</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>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anatoly Lyutin">vostok</reporter>
          <assigned_to name="Nobody&apos;s working on this, feel free to take it">nobody</assigned_to>
          <cc>fyodorilych</cc>
    
    <cc>manowar</cc>
    
    <cc>real.altlinux.org</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>102135</commentid>
    <comment_count>0</comment_count>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-10-26 13:26:01 +0300</bug_when>
    <thetext>При этом никакие настройки сети недоступны. KDE 3.5, DHCP поднят. На Windows всё прекрасно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103808</commentid>
    <comment_count>1</comment_count>
    <who name="manowar@altlinux.org">manowar</who>
    <bug_when>2009-12-02 21:24:54 +0300</bug_when>
    <thetext>Поясните, пожалуйста, что именно не работает. Я только что проверил работоспособность клиентского ПО на проектах Einstein@Home и Milkyway@Home: приложения загружаются, задания приходят и обрабатываются. Правда были ошибки в сценарии службы boinc-client, но они не должны были сказаться на работе клиента после его запуска. На всякий случай попробуйте новую сборку alt3.

  Кроме того, возможно, вы забыли указать пароль для подключения к клиенту?
Его можно указать через пункт меню &quot;Select host&quot;. Подробнее о пароле можно прочитать здесь: http://www.spy-hill.net/help/boinc/unix.html#passwd.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103809</commentid>
    <comment_count>2</comment_count>
    <who name="manowar@altlinux.org">manowar</who>
    <bug_when>2009-12-02 21:25:17 +0300</bug_when>
    <thetext>Поясните, пожалуйста, что именно не работает. Я только что проверил работоспособность клиентского ПО на проектах Einstein@Home и Milkyway@Home: приложения загружаются, задания приходят и обрабатываются. Правда были ошибки в сценарии службы boinc-client, но они не должны были сказаться на работе клиента после его запуска. На всякий случай попробуйте новую сборку alt3.

  Кроме того, возможно, вы забыли указать пароль для подключения к клиенту?
Его можно указать через пункт меню &quot;Select host&quot;. Подробнее о пароле можно прочитать здесь: http://www.spy-hill.net/help/boinc/unix.html#passwd.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103845</commentid>
    <comment_count>3</comment_count>
      <attachid>4099</attachid>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-12-04 11:27:58 +0300</bug_when>
    <thetext>Created attachment 4099
backtrace boinc_client</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103846</commentid>
    <comment_count>4</comment_count>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-12-04 11:28:24 +0300</bug_when>
    <thetext>В общем у меня всё плохо вот с такими симптомами:
[root@localhost ~]# rpm -qa | grep boinc
boinc-client-6.4.5-alt2
boinc-manager-6.4.5-alt2
boinc-6.4.5-alt2

Далее. Пароль настроил как сказано в документации по ссылке. Затем пытаюсь стартануть из-под пользователя boinc_client - запускается и через некоторое время пропадает, запускаю boinc_manager - пишет что не может установить соединение с localhost (все настройки в gui - неактивны), поэтому я не могу добавить какой-либо проект. Реакции на нажатие меню &quot;добавить проект&quot; - ноль.

Затем стартую всё хозяйство из-под рута. boinc_client падает со следующим бактрейсом (в аттаче). Запуск boinc_gui показывает следующее (ждал до того момента пока не появится сообщение типа &quot;не могу соединится с localhost):
[root@localhost ~]# boinc_gui
connect: Connection refused
execvp(/root/boinc, --redirectio, --launched_by_manager) failed with error 2!
connect: Operation now in progress
send: -1
send: Connection refused
connect: Connection refused
connect: Connection refused
execvp(/root/boinc, --redirectio, --launched_by_manager) failed with error 2!
connect: Connection refused

Ошибку переоткрываю, чтобы не потерялась в пучине worksforme :)))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103854</commentid>
    <comment_count>5</comment_count>
    <who name="manowar@altlinux.org">manowar</who>
    <bug_when>2009-12-04 22:38:51 +0300</bug_when>
    <thetext>Давайте всё-таки разберёмся в каком компоненте проблема.
Сам BOINC-клиент должен работать из под пользователя boinc. В сборке alt2 с этим были проблемы. Собрать alt3 пока не удаётся из за питона, засевшего в сборочнице, поэтому прикладываю сценарий службы сюда.

Если клиент запустится, то первое, что можно сделать, это проверить его работоспособность с помощью команды boinccmd:

$ boinccmd --passwd &lt;пароль&gt; --get_state

Пароль должен совпадать с содержимым файла /var/lib/boinc/gui_rpc_auth.cfg .

В случае ошибки будет выдано сообщение о ней с указанием кода ошибки в виде отрицательного числа. Если выполнение команды завершилось без ошибок, то можно попробовать запустить графический интерфейс:

$ boincmgr

Если интерфейс запустился в простом режиме (Simple View), то следует перейти в полный режим, нажав на кнопку &quot;Advanced view&quot;. Если большинство элементов интерфейса недоступны, то скорее всего не удалось установить связь с клиентом в автоматическом режиме. Попробуйте установить связь вручную: выберите пункт меню &quot;Advanced/Select computer...&quot; и в диалоговом окне укажите имя узла на котором работает клиент (localhost) и пароль для доступа к нему (содержимое файла /var/lib/boinc/gui_rpc_auth.cfg).

Если клиент работает и прослушивает порт, то при нормальных условиях, соединение должно быть установлено. Убедиться в том, что клиент прослушивает порт, можно с помощью команды netstat:

# netstat -tlp
[sudo] password for manowar:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
...
tcp        0      0 localhost.localdomain:31416 *:*                         LISTEN      1165/boinc_client   
...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103855</commentid>
    <comment_count>6</comment_count>
      <attachid>4100</attachid>
    <who name="manowar@altlinux.org">manowar</who>
    <bug_when>2009-12-04 22:40:19 +0300</bug_when>
    <thetext>Created attachment 4100
Исправленный сценарий службы boinc-client</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103946</commentid>
    <comment_count>7</comment_count>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-12-07 14:00:36 +0300</bug_when>
    <thetext>[root@localhost ~]# boinccmd --passwd **** --get_state
connect: Connection refused
can&apos;t connect to local host

Если сделать потом boincmgr-&gt;&quot;Advanced/Select computer...&quot;, то в консоли :
[root@localhost ~]# boincmgr
connect: Connection refused
execvp(/root/boinc, --redirectio, --launched_by_manager) failed with error 2!
connect: Operation now in progress
connect: Operation now in progress
connect: Connection refused
connect: Connection refused
execvp(/root/boinc, --redirectio, --launched_by_manager) failed with error 2!
connect: Connection refused

Сценарий не заработал вот так:
[root@localhost Загрузки]# ./boinc-client
./boinc-client: line 333: [: too many arguments
Usage: boinc {start|stop|restart|reload|condstop|condrestart|condreload|status}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103948</commentid>
    <comment_count>8</comment_count>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-12-07 14:01:28 +0300</bug_when>
    <thetext>Про сценарий - не прав, понял, что я сам должен решать что с клиентом делать :))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103949</commentid>
    <comment_count>9</comment_count>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-12-07 14:04:05 +0300</bug_when>
    <thetext>Ммм, что-то я совсем не понимаю :(( :

[root@localhost Загрузки]# ./boinc-client start
./boinc-client: line 333: [: too many arguments
The BOINC client requires initialization../boinc-client: line 397: echo_warning: command not found</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103959</commentid>
    <comment_count>10</comment_count>
      <attachid>4107</attachid>
    <who name="manowar@altlinux.org">manowar</who>
    <bug_when>2009-12-07 19:35:38 +0300</bug_when>
    <thetext>Created attachment 4107
Действительно исправленный сценарий службы boinc-client

Спасибо за отчёт. Оказалось, что пакет собирается неправильно и в нём был старый файл. Отправил новый пакет на сборку и прикладываю обновлённый сценарий службы boinc-client. Надёюсь на скорое разрешение вашей проблемы.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103967</commentid>
    <comment_count>11</comment_count>
    <who name="real@altlinux.org">real.altlinux.org</who>
    <bug_when>2009-12-08 06:32:15 +0300</bug_when>
    <thetext>&quot;отправил новый пакет на сборку&quot;

К сожалению, рано: он не будет пропущен в сизиф, даже если новый питон будет собран раньше. Причина:

http://git.altlinux.org/people/manowar/packages/boinc.git
не наследуется из
http://git.altlinux.org/people/real/packages/boinc.git
откуда будет произведена ближайшая по времени сборка пакета.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103974</commentid>
    <comment_count>12</comment_count>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-12-08 12:30:52 +0300</bug_when>
    <thetext>Хорошо, тогда я всё проверю когда пакет дойдёт до сизифа.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104226</commentid>
    <comment_count>13</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2009-12-13 18:16:03 +0300</bug_when>
    <thetext>boinc-6.4.5-alt3 -&gt; sisyphus:

* Mon Dec 07 2009 Paul Wolneykien &lt;manowar@altlinux&gt; 6.4.5-alt3

- Fix errors in the boinc-client init script (closes: 22066).
- Add README and COPYING files.
- Install the manual pages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104274</commentid>
    <comment_count>14</comment_count>
    <who name="Anatoly Lyutin">vostok</who>
    <bug_when>2009-12-14 13:46:31 +0300</bug_when>
    <thetext>Проверил, всё работает.
Большое спасибо.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>164078</commentid>
    <comment_count>15</comment_count>
    <who name="fyodorilych">fyodorilych</who>
    <bug_when>2017-06-12 19:50:31 +0300</bug_when>
    <thetext>Так напишите человеческим языком - какое решение проблемы, если оно есть, или что его нет. У меня такая же фигня..</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>4099</attachid>
            <date>2009-12-04 11:27:58 +0300</date>
            <delta_ts>2009-12-04 11:27:58 +0300</delta_ts>
            <desc>backtrace boinc_client</desc>
            <filename>boinc_fall.log</filename>
            <type>text/plain</type>
            <size>9287</size>
            <attacher name="Anatoly Lyutin">vostok</attacher>
            
              <data encoding="base64">W3Jvb3RAbG9jYWxob3N0IH5dIyBib2luY19jbGllbnQKMDQtRGVjLTIwMDkgMTE6MjA6MjAgWy0t
LV0gU3RhcnRpbmcgQk9JTkMgY2xpZW50IHZlcnNpb24gNi40LjUgZm9yIGk2ODYtcGMtbGludXgt
Z251CjA0LURlYy0yMDA5IDExOjIwOjIwIFstLS1dIGxvZyBmbGFnczogdGFzaywgZmlsZV94ZmVy
LCBzY2hlZF9vcHMKMDQtRGVjLTIwMDkgMTE6MjA6MjAgWy0tLV0gTGlicmFyaWVzOiBsaWJjdXJs
LzcuMTkuNy1DVlMgT3BlblNTTC8wLjkuOGsgemxpYi8xLjIuMyBjLWFyZXMvMS42LjAgbGliaWRu
LzEuMTUKMDQtRGVjLTIwMDkgMTE6MjA6MjAgWy0tLV0gRGF0YSBkaXJlY3Rvcnk6IC9yb290CjA0
LURlYy0yMDA5IDExOjIwOjIwIFstLS1dIFByb2Nlc3NvcjogMSBHZW51aW5lSW50ZWwgSW50ZWwo
UikgQ2VsZXJvbihSKSBDUFUgMi45M0dIeiBbRmFtaWx5IDE1IE1vZGVsIDQgU3RlcHBpbmcgOV0K
MDQtRGVjLTIwMDkgMTE6MjA6MjAgWy0tLV0gUHJvY2Vzc29yIGZlYXR1cmVzOiBmcHUgdm1lIGRl
IHBzZSB0c2MgbXNyIHBhZSBtY2UgY3g4IGFwaWMgc2VwIG10cnIgcGdlIG1jYSBjbW92IHBhdCBw
c2UzNiBjbGZsdXNoIGR0cyBhY3BpIG1teCBmeHNyIHNzZSBzc2UyIHNzIGh0IHRtIHBiZSBueCBs
bSBjb25zdGFudF90c2MgdXAgcGVicyBidHMgcG5pIGR0ZXM2NCBtb25pdG9yIGRzX2NwbCB0bTIg
Y2lkIGN4MTYgeHRwciBsYWhmX2xtCjA0LURlYy0yMDA5IDExOjIwOjIwIFstLS1dIE9TOiBMaW51
eDogMi42LjMwLXN0ZC1kZWYtYWx0MTQKMDQtRGVjLTIwMDkgMTE6MjA6MjAgWy0tLV0gTWVtb3J5
OiA5NzIuMDggTUIgcGh5c2ljYWwsIDEuOTEgR0IgdmlydHVhbAowNC1EZWMtMjAwOSAxMToyMDoy
MCBbLS0tXSBEaXNrOiA3Ljg3IEdCIHRvdGFsLCA1OTguMjAgTUIgZnJlZQowNC1EZWMtMjAwOSAx
MToyMDoyMCBbLS0tXSBMb2NhbCB0aW1lIGlzIFVUQyArMyBob3VycwowNC1EZWMtMjAwOSAxMToy
MDoyMCBbLS0tXSBOb3QgdXNpbmcgYSBwcm94eQowNC1EZWMtMjAwOSAxMToyMDoyMCBbLS0tXSBD
YW4ndCBsb2FkIGxpYnJhcnkgbGliY3VkYXJ0CjA0LURlYy0yMDA5IDExOjIwOjIwIFstLS1dIE5v
IGNvcHJvY2Vzc29ycwowNC1EZWMtMjAwOSAxMToyMDoyMCBbLS0tXSBObyBnZW5lcmFsIHByZWZl
cmVuY2VzIGZvdW5kIC0gdXNpbmcgQk9JTkMgZGVmYXVsdHMKMDQtRGVjLTIwMDkgMTE6MjA6MjAg
Wy0tLV0gUHJlZmVyZW5jZXMgbGltaXQgbWVtb3J5IHVzYWdlIHdoZW4gYWN0aXZlIHRvIDQ4Ni4w
NE1CCjA0LURlYy0yMDA5IDExOjIwOjIwIFstLS1dIFByZWZlcmVuY2VzIGxpbWl0IG1lbW9yeSB1
c2FnZSB3aGVuIGlkbGUgdG8gODc0Ljg3TUIKKioqIGJ1ZmZlciBvdmVyZmxvdyBkZXRlY3RlZCAq
Kio6IGJvaW5jX2NsaWVudCB0ZXJtaW5hdGVkCj09PT09PT0gQmFja3RyYWNlOiA9PT09PT09PT0K
L2xpYi9saWJjLnNvLjYoX19mb3J0aWZ5X2ZhaWwrMHg0MClbMHhiN2JkNTVmMF0KL2xpYi9saWJj
LnNvLjZbMHhiN2JkMzgxMF0KL2xpYi9saWJjLnNvLjZbMHhiN2JkMmYzOF0KL2xpYi9saWJjLnNv
LjYoX0lPX2RlZmF1bHRfeHNwdXRuKzB4YTYpWzB4YjdiNWY5ZjZdCi9saWIvbGliYy5zby42KF9J
T192ZnByaW50ZisweDNlNTcpWzB4YjdiMzc5NzddCi9saWIvbGliYy5zby42KF9fdnNwcmludGZf
Y2hrKzB4YTcpWzB4YjdiZDJmZTddCi9saWIvbGliYy5zby42KF9fc3ByaW50Zl9jaGsrMHgyZClb
MHhiN2JkMmYyZF0KYm9pbmNfY2xpZW50WzB4ODA5OWIyMl0KYm9pbmNfY2xpZW50WzB4ODA5OWI1
MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNf
Y2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4
ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0K
Ym9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xp
ZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5
OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9p
bmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50
WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1
MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNf
Y2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4ODA5OWI1MV0KYm9pbmNfY2xpZW50WzB4
ODA2ZjcwMV0KYm9pbmNfY2xpZW50WzB4ODA2ZmExM10KYm9pbmNfY2xpZW50WzB4ODA1YWI5OF0K
Ym9pbmNfY2xpZW50WzB4ODA4NWNmY10KYm9pbmNfY2xpZW50WzB4ODA4NWZiNV0KL2xpYi9saWJj
LnNvLjYoX19saWJjX3N0YXJ0X21haW4rMHhlNilbMHhiN2IwZWIyNl0KYm9pbmNfY2xpZW50WzB4
ODA0YmIwMV0KPT09PT09PSBNZW1vcnkgbWFwOiA9PT09PT09PQowODA0ODAwMC0wODBjYzAwMCBy
LXhwIDAwMDAwMDAwIDA4OjAyIDYyMDI0MSAgICAgL3Vzci9iaW4vYm9pbmNfY2xpZW50CjA4MGNj
MDAwLTA4MGNkMDAwIHItLXAgMDAwODMwMDAgMDg6MDIgNjIwMjQxICAgICAvdXNyL2Jpbi9ib2lu
Y19jbGllbnQKMDgwY2QwMDAtMDgwY2UwMDAgcnctcCAwMDA4NDAwMCAwODowMiA2MjAyNDEgICAg
IC91c3IvYmluL2JvaW5jX2NsaWVudAowODBjZTAwMC0wODFjNjAwMCBydy1wIDAwMDAwMDAwIDAw
OjAwIDAgICAgICAgICAgW2hlYXBdCmI3OWE0MDAwLWI3OWFmMDAwIHIteHAgMDAwMDAwMDAgMDg6
MDIgMjMwNTQ1ICAgICAvbGliL2xpYm5zc19maWxlcy0yLjEwLjEuc28KYjc5YWYwMDAtYjc5YjAw
MDAgci0tcCAwMDAwYTAwMCAwODowMiAyMzA1NDUgICAgIC9saWIvbGlibnNzX2ZpbGVzLTIuMTAu
MS5zbwpiNzliMDAwMC1iNzliMTAwMCBydy1wIDAwMDBiMDAwIDA4OjAyIDIzMDU0NSAgICAgL2xp
Yi9saWJuc3NfZmlsZXMtMi4xMC4xLnNvCmI3OWIxMDAwLWI3OWIzMDAwIHJ3LXAgMDAwMDAwMDAg
MDA6MDAgMApiNzliMzAwMC1iNzljNDAwMCByLXhwIDAwMDAwMDAwIDA4OjAyIDIzMDU0NyAgICAg
L2xpYi9saWJyZXNvbHYtMi4xMC4xLnNvCmI3OWM0MDAwLWI3OWM1MDAwIC0tLXAgMDAwMTEwMDAg
MDg6MDIgMjMwNTQ3ICAgICAvbGliL2xpYnJlc29sdi0yLjEwLjEuc28KYjc5YzUwMDAtYjc5YzYw
MDAgci0tcCAwMDAxMTAwMCAwODowMiAyMzA1NDcgICAgIC9saWIvbGlicmVzb2x2LTIuMTAuMS5z
bwpiNzljNjAwMC1iNzljNzAwMCBydy1wIDAwMDEyMDAwIDA4OjAyIDIzMDU0NyAgICAgL2xpYi9s
aWJyZXNvbHYtMi4xMC4xLnNvCmI3OWM3MDAwLWI3OWM5MDAwIHJ3LXAgMDAwMDAwMDAgMDA6MDAg
MApiNzljOTAwMC1iNzljYjAwMCByLXhwIDAwMDAwMDAwIDA4OjAyIDIyOTY0NSAgICAgL2xpYi9s
aWJrZXl1dGlscy0xLjIuc28KYjc5Y2IwMDAtYjc5Y2MwMDAgci0tcCAwMDAwMTAwMCAwODowMiAy
Mjk2NDUgICAgIC9saWIvbGlia2V5dXRpbHMtMS4yLnNvCmI3OWNjMDAwLWI3OWNkMDAwIHJ3LXAg
MDAwMDIwMDAgMDg6MDIgMjI5NjQ1ICAgICAvbGliL2xpYmtleXV0aWxzLTEuMi5zbwpiNzljZDAw
MC1iNzlkNDAwMCByLXhwIDAwMDAwMDAwIDA4OjAyIDIzMTUxNSAgICAgL2xpYi9saWJrcmI1c3Vw
cG9ydC5zby4wLjEKYjc5ZDQwMDAtYjc5ZDUwMDAgci0tcCAwMDAwNjAwMCAwODowMiAyMzE1MTUg
ICAgIC9saWIvbGlia3JiNXN1cHBvcnQuc28uMC4xCmI3OWQ1MDAwLWI3OWQ2MDAwIHJ3LXAgMDAw
MDcwMDAgMDg6MDIgMjMxNTE1ICAgICAvbGliL2xpYmtyYjVzdXBwb3J0LnNvLjAuMQpiNzlkNjAw
MC1iNzlkNzAwMCBydy1wIDAwMDAwMDAwIDAwOjAwIDAKYjc5ZDcwMDAtYjc5ZDkwMDAgci14cCAw
MDAwMDAwMCAwODowMiAyMzE1MTAgICAgIC9saWIvbGliY29tX2Vyci5zby4yLjEKYjc5ZDkwMDAt
Yjc5ZGEwMDAgci0tcCAwMDAwMTAwMCAwODowMiAyMzE1MTAgICAgIC9saWIvbGliY29tX2Vyci5z
by4yLjEKYjc5ZGEwMDAtYjc5ZGIwMDAgcnctcCAwMDAwMjAwMCAwODowMiAyMzE1MTAgICAgIC9s
aWIvbGliY29tX2Vyci5zby4yLjEKYjc5ZGIwMDAtYjc5ZjgwMDAgci14cCAwMDAwMDAwMCAwODow
MiAyMzA1OTIgICAgIC9saWIvbGliZ2NjX3Muc28uMQpiNzlmODAwMC1iNzlmOTAwMCByLS1wIDAw
MDFjMDAwIDA4OjAyIDIzMDU5MiAgICAgL2xpYi9saWJnY2Nfcy5zby4xCmI3OWY5MDAwLWI3OWZh
MDAwIHJ3LXAgMDAwMWQwMDAgMDg6MDIgMjMwNTkyICAgICAvbGliL2xpYmdjY19zLnNvLjEKYjc5
ZmEwMDAtYjdhMDEwMDAgci14cCAwMDAwMDAwMCAwODowMiAyMzA1NTIgICAgIC9saWIvbGlicnQt
Mi4xMC4xLnNvCmI3YTAxMDAwLWI3YTAyMDAwIHItLXAgMDAwMDYwMDAgMDg6MDIgMjMwNTUyICAg
ICAvbGliL2xpYnJ0LTIuMTAuMS5zbwpiN2EwMjAwMC1iN2EwMzAwMCBydy1wIDAwMDA3MDAwIDA4
OjAyIDIzMDU1MiAgICAgL2xpYi9saWJydC0yLjEwLjEuc28KYjdhMDMwMDAtYjdhMzMwMDAgci14
cCAwMDAwMDAwMCAwODowMiA2MTAzNzUgICAgIC91c3IvbGliL2xpYmlkbi5zby4xMS41LjQ0CmI3
YTMzMDAwLWI3YTM0MDAwIHItLXAgMDAwMmYwMDAgMDg6MDIgNjEwMzc1ICAgICAvdXNyL2xpYi9s
aWJpZG4uc28uMTEuNS40NApiN2EzNDAwMC1iN2EzNTAwMCBydy1wIDAwMDMwMDAwIDA4OjAyIDYx
MDM3NSAgICAgL3Vzci9saWIvbGliaWRuLnNvLjExLjUuNDQKYjdhMzUwMDAtYjdhNDEwMDAgci14
cCAwMDAwMDAwMCAwODowMiA5MjAzODcgICAgIC91c3IvbGliL2xpYmNhcmVzLnNvLjIuMC4wCmI3
YTQxMDAwLWI3YTQyMDAwIHItLXAgMDAwMGIwMDAgMDg6MDIgOTIwMzg3ICAgICAvdXNyL2xpYi9s
aWJjYXJlcy5zby4yLjAuMApiN2E0MjAwMC1iN2E0MzAwMCBydy1wIDAwMDBjMDAwIDA4OjAyIDky
MDM4NyAgICAgL3Vzci9saWIvbGliY2FyZXMuc28uMi4wLjAKYjdhNDMwMDAtYjdhNDQwMDAgcnct
cCAwMDAwMDAwMCAwMDowMCAwCmI3YTQ0MDAwLWI3YTY2MDAwIHIteHAgMDAwMDAwMDAgMDg6MDIg
MjI5NTE5ICAgICAvbGliL2xpYms1Y3J5cHRvLnNvLjMuMQpiN2E2NjAwMC1iN2E2NzAwMCByLS1w
IDAwMDIxMDAwIDA4OjAyIDIyOTUxOSAgICAgL2xpYi9saWJrNWNyeXB0by5zby4zLjEKYjdhNjcw
MDAtYjdhNjgwMDAgcnctcCAwMDAyMjAwMCAwODowMiAyMjk1MTkgICAgIC9saWIvbGliazVjcnlw
dG8uc28uMy4xCmI3YTY4MDAwLWI3YWY1MDAwIHIteHAgMDAwMDAwMDAgMDg6MDIgMjMxNTEzICAg
ICAvbGliL2xpYmtyYjUuc28uMy4zCmI3YWY1MDAwLWI3YWY3MDAwIHItLXAgMDAwOGMwMDAgMDg6
MDIgMjMxNTEzICAgICAvbGliL2xpYmtyYjUuc28uMy4zCmI3YWY3MDAwLWI3YWY4MDAwIHJ3LXAg
MDAwOGUwMDAgMDg6MDIgMjMxNTEzICAgICAvbGliL2xpYmtyYjUuc28uMy4zCmI3YWY4MDAwLWI3
YzQwMDAwIHIteHAgMDAwMDAwMDAgMDg6MDIgMjMwNTM3ICAgICAvbGliL2xpYmMtMi4xMC4xLnNv
CmI3YzQwMDAwLWI3YzQxMDAwIC0tLXAgMDAxNDgwMDAgMDg6MDIgMjMwNTM3ICAgICAvbGliL2xp
YmMtMi4xMC4xLnNvCmI3YzQxMDAwLWI3YzQzMDAwIHItLXAgMDAxNDgwMDAgMDg6MDIgMjMwNTM3
ICAgICAvbGliL2xpYmMtMi4xMC4xLnNvCmI3YzQzMDAwLWI3YzQ0MDAwIHJ3LXAgMDAxNGEwMDAg
MDg6MDIgMjMwNTM3ICAgICAvbGliL2xpYmMtMi4xMC4xLnNvCmI3YzQ0MDAwLWI3YzQ3MDAwIHJ3
LXAgMDAwMDAwMDAgMDA6MDAgMApiN2M0NzAwMC1iN2M2ZDAwMCByLXhwIDAwMDAwMDAwIDA4OjAy
IDIzMDU0MSAgICAgL2xpYi9saWJtLTIuMTAuMS5zbwpiN2M2ZDAwMC1iN2M2ZTAwMCByLS1wIDAw
MDI2MDAwIDA4OjAyIDIzMDU0MSAgICAgL2xpYi9saWJtLTIuMTAuMS5zbwpiN2M2ZTAwMC1iN2M2
ZjAwMCBydy1wIDAwMDI3MDAwIDA4OjAyIDIzMDU0MSAgICAgL2xpYi9saWJtLTIuMTAuMS5zbwpi
N2M2ZjAwMC1iN2M4MzAwMCByLXhwIDAwMDAwMDAwIDA4OjAyIDIyOTcyOCAgICAgL2xpYi9saWJw
dGhyZWFkLTIuMTAuMS5zbwpiN2M4MzAwMC1iN2M4NDAwMCByLS1wIDAwMDEzMDAwIDA4OjAyIDIy
OTcyOCAgICAgL2xpYi9saWJwdGhyZWFkLTIuMTAuMS5zbwpiN2M4NDAwMC1iN2M4NTAwMCBydy1w
IDAwMDE0MDAwIDA4OjAyIDIyOTcyOCAgICAgL2xpYi9saWJwdGhyZWFkLTIuMTAuMS5zbwpiN2M4
NTAwMC1iN2M4ODAwMCBydy1wIDAwMDAwMDAwIDAwOjAwIDAKYjdjODgwMDAtYjdkNzMwMDAgci14
cCAwMDAwMDAwMCAwODowMiA2MjI1NjEgICAgIC91c3IvbGliL2xpYnN0ZGMrKy5zby42LjAuMTMK
YjdkNzMwMDAtYjdkNzcwMDAgci0tcCAwMDBlYTAwMCAwODowMiA2MjI1NjEgICAgIC91c3IvbGli
L2xpYnN0ZGMrKy5zby42LjAuMTMKYjdkNzcwMDAtYjdkNzgwMDAgcnctcCAwMDBlZTAwMCAwODow
MiA2MjI1NjEgICAgIC91c3IvbGliL2xpYnN0ZGMrKy5zby42LjAuMTMKYjdkNzgwMDAtYjdkN2Yw
MDAgcnctcCAwMDAwMDAwMCAwMDowMCAwCmI3ZDdmMDAwLWI3ZGMxMDAwIHIteHAgMDAwMDAwMDAg
MDg6MDIgNjEwNDEzICAgICAvdXNyL2xpYi9saWJjdXJsLnNvLjQuMS4xCmI3ZGMxMDAwLWI3ZGMy
MDAwIHItLXAgMDAwNDEwMDAgMDg6MDIgNjEwNDEzICAgICAvdXNyL2xpYi9saWJjdXJsLnNvLjQu
MS4xCmI3ZGMyMDAwLWI3ZGMzMDAwIHJ3LXAgMDAwNDIwMDAgMDg6MDIgNjEwNDEzICAgICAvdXNy
L2xpYi9saWJjdXJsLnNvLjQuMS4xCmI3ZGMzMDAwLWI3ZGQ3MDAwIHIteHAgMDAwMDAwMDAgMDg6
MDIgMjI5NTMwICAgICAvbGliL2xpYnouc28uMS4yLjMKYjdkZDcwMDAtYjdkZDgwMDAgci0tcCAw
MDAxMzAwMCAwODowMiAyMjk1MzAgICAgIC9saWIvbGliei5zby4xLjIuMwpiN2RkODAwMC1iN2Rk
OTAwMCBydy1wIDAwMDE0MDAwIDA4OjAyIDIyOTUzMCAgICAgL2xpYi9saWJ6LnNvLjEuMi4zCmI3
ZGQ5MDAwLWI3ZGRjMDAwIHIteHAgMDAwMDAwMDAgMDg6MDIgMjMwNTQwICAgICAvbGliL2xpYmRs
LTIuMTAuMS5zbwpiN2RkYzAwMC1iN2RkZDAwMCByLS1wIDAwMDAyMDAwIDA4OjAyIDIzMDU0MCAg
ICAgL2xpYi9saWJkbC0yLjEwLjEuc28KYjdkZGQwMDAtYjdkZGUwMDAgcnctcCAwMDAwMzAwMCAw
ODowMiAyMzA1NDAgICAgIC9saWIvbGliZGwtMi4xMC4xLnNvCmI3ZGRlMDAwLWI3ZjAyMDAwIHIt
eHAgMDAwMDAwMDAgMDg6MDIgMjI5Njk3ICAgICAvbGliL2xpYmNyeXB0by5zby4wLjkuOGsKYjdm
MDIwMDAtYjdmMGEwMDAgci0tcCAwMDEyMzAwMCAwODowMiAyMjk2OTcgICAgIC9saWIvbGliY3J5
cHRvLnNvLjAuOS44awpiN2YwYTAwMC1iN2YxODAwMCBydy1wIDAwMTJiMDAwIDA4OjAyIDIyOTY5
NyAgICAgL2xpYi9saWJjcnlwdG8uc28uMC45LjhrCmI3ZjE4MDAwLWI3ZjFiMDAwIHJ3LXAgMDAw
MDAwMDAgMDA6MDAgMApiN2YxYjAwMC1iN2Y2MTAwMCByLXhwIDAwMDAwMDAwIDA4OjAyIDIyOTUz
NiAgICAgL2xpYi9saWJzc2wuc28uMC45LjhrCmI3ZjYxMDAwLWI3ZjYyMDAwIHItLXAgMDAwNDYw
MDAgMDg6MDIgMjI5NTM2ICAgICAvbGliL2xpYnNzbC5zby4wLjkuOGsKYjdmNjIwMDAtYjdmNjUw
MDAgcnctcCAwMDA0NzAwMCAwODowMiAyMjk1MzYgICAgIC9saWIvbGlic3NsLnNvLjAuOS44awpi
N2Y2NTAwMC1iN2Y2NjAwMCBydy1wIDAwMDAwMDAwIDAwOjAwIDAKYjdmOTEwMDAtYjdmOTIwMDAg
ci14cCAwMDAwMDAwMCAwMDowMCAwICAgICAgICAgIFt2ZHNvXQpiN2Y5MjAwMC1iN2ZhYzAwMCBy
LXhwIDAwMDAwMDAwIDA4OjAyIDIzMTQ5MiAgICAgL2xpYi9sZC0yLjEwLjEuc28KYjdmYWMwMDAt
YjdmYWQwMDAgci0tcCAwMDAxYTAwMCAwODowMiAyMzE0OTIgICAgIC9saWIvbGQtMi4xMC4xLnNv
CmI3ZmFkMDAwLWI3ZmFlMDAwIHJ3LXAgMDAwMWIwMDAgMDg6MDIgMjMxNDkyICAgICAvbGliL2xk
LTIuMTAuMS5zbwpiZjliNTAwMC1iZjlkMTAwMCBydy1wIDAwMDAwMDAwIDAwOjAwIDAgICAgICAg
ICAgW3N0YWNrXQpTSUdBQlJUOiBhYm9ydCBjYWxsZWQKU3RhY2sgdHJhY2UgKDQ0IGZyYW1lcyk6
CmJvaW5jX2NsaWVudFsweDgwOTg1NGVdClsweGI3ZjkxNDAwXQovbGliL2xpYmMuc28uNihnc2ln
bmFsKzB4NDcpWzB4YjdiMjExMzddCi9saWIvbGliYy5zby42KGFib3J0KzB4MTdhKVsweGI3YjIy
ODVhXQovbGliL2xpYmMuc28uNlsweGI3YjViNmI1XQovbGliL2xpYmMuc28uNihfX2ZvcnRpZnlf
ZmFpbCsweDQwKVsweGI3YmQ1NWYwXQovbGliL2xpYmMuc28uNlsweGI3YmQzODEwXQovbGliL2xp
YmMuc28uNlsweGI3YmQyZjM4XQovbGliL2xpYmMuc28uNihfSU9fZGVmYXVsdF94c3B1dG4rMHhh
NilbMHhiN2I1ZjlmNl0KL2xpYi9saWJjLnNvLjYoX0lPX3ZmcHJpbnRmKzB4M2U1NylbMHhiN2Iz
Nzk3N10KL2xpYi9saWJjLnNvLjYoX192c3ByaW50Zl9jaGsrMHhhNylbMHhiN2JkMmZlN10KL2xp
Yi9saWJjLnNvLjYoX19zcHJpbnRmX2NoaysweDJkKVsweGI3YmQyZjJkXQpib2luY19jbGllbnRb
MHg4MDk5YjIyXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUx
XQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19j
bGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4
MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpi
b2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGll
bnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5
YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2lu
Y19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRb
MHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUx
XQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDk5YjUxXQpib2luY19j
bGllbnRbMHg4MDk5YjUxXQpib2luY19jbGllbnRbMHg4MDZmNzAxXQpib2luY19jbGllbnRbMHg4
MDZmYTEzXQpib2luY19jbGllbnRbMHg4MDVhYjk4XQpib2luY19jbGllbnRbMHg4MDg1Y2ZjXQpi
b2luY19jbGllbnRbMHg4MDg1ZmI1XQovbGliL2xpYmMuc28uNihfX2xpYmNfc3RhcnRfbWFpbisw
eGU2KVsweGI3YjBlYjI2XQpib2luY19jbGllbnRbMHg4MDRiYjAxXQoKRXhpdGluZy4uLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>4100</attachid>
            <date>2009-12-04 22:40:19 +0300</date>
            <delta_ts>2009-12-07 19:35:38 +0300</delta_ts>
            <desc>Исправленный сценарий службы boinc-client</desc>
            <filename>boinc-client</filename>
            <type>text/x-shellscript</type>
            <size>15238</size>
            <attacher name="manowar@altlinux.org">manowar</attacher>
            
              <data encoding="base64">IyEvYmluL3NoIAojCiMgQk9JTkMgLSBzdGFydCBhbmQgc3RvcCB0aGUgQk9JTkMgY2xpZW50IGRh
ZW1vbiBvbiBVbml4CiMKIyAgVW5peCBzdGFydC9zdG9wIHNjcmlwdCB0byBydW4gdGhlIEJPSU5D
IGNsaWVudCBhcyBhIGRhZW1vbiBhdAojICBzeXN0ZW0gc3RhcnR1cCwgYXMgdGhlICdib2luYycg
dXNlciAobm90IHJvb3QhKS4KIwojICBUaGlzIHZlcnNpb24gc2hvdWxkIHdvcmsgb24gdW5peGVz
IHRoYXQgaGF2ZSBiYXNoLCB6c2gsIG9yIGtzaC4gIElmIAojICBzdGFydGVkIHdpdGggYW5vdGhl
ciBCb3VybmUgY29tcGF0aWJsZSBzaGVsbCwgaXQgd2lsbCBhdHRlbXB0IHRvIHJlc3RhcnQgCiMg
IGluIGJhc2gsIHpzaCwgb3Iga3NoLgojCiMgIE1ldGFkYXRhIGZvciBjaGtjb25maWcgYW5kIHRo
ZSBTVVNFIGVxdWl2YWxlbnQgSU5JVCBpbmZvIGFyZSBpbmNsdWRlZCBiZWxvdy4KIwojICBVc2Fn
ZTogIGJvaW5jIHsgc3RhcnQgfCBzdG9wIHwgc3RhdHVzIHwgcmVsb2FkIHwgcmVzdGFydCB9CiMg
IAojIyMKIyBjaGtjb25maWc6IDM0NSA5OCAwMgojIGRlc2NyaXB0aW9uOiBUaGlzIHNjcmlwdCBz
dGFydHMgdGhlIGxvY2FsIEJPSU5DIGNsaWVudCBhcyBhIGRhZW1vbgojICAgICAgICAgRm9yIG1v
cmUgaW5mb3JtYXRpb24gYWJvdXQgQk9JTkMgKHRoZSBCZXJrZWxleSBPcGVuIEluZnJhc3RydWN0
dXJlCiMgICAgICAgICBmb3IgTmV0d29yayBDb21wdXRpbmcpIHNlZSBodHRwOi8vYm9pbmMuYmVy
a2VsZXkuZWR1CiMgcHJvY2Vzc25hbWU6IGJvaW5jCiMgY29uZmlnOiAvZXRjL3N5c2NvbmZpZy9i
b2luYwojCiMjIyBCRUdJTiBJTklUIElORk8KIyBQcm92aWRlczogYm9pbmMKIyBSZXF1aXJlZC1T
dGFydDogJG5ldHdvcmsKIyBSZXF1aXJlZC1TdG9wOiAgJG5ldHdvcmsKIyBEZWZhdWx0LVN0YXJ0
OiAzIDQgNSAKIyBEZWZhdWx0LVN0b3A6IDAgMSAyIDYKIyBTaG9ydC1EZXNjcmlwdGlvbjogVGhp
cyBzY3JpcHQgbW9uaXRvcnMgdGhlIEJPSU5DIGNsaWVudC4KIyBEZXNjcmlwdGlvbjogVGhpcyBz
Y3JpcHQgc3RhcnRzIHRoZSBsb2NhbCBCT0lOQyBjbGllbnQgYXMgYSBkYWVtb24KIyAgICAgICAg
IEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IEJPSU5DICh0aGUgQmVya2VsZXkgT3BlbiBJbmZy
YXN0cnVjdHVyZQojICAgICAgICAgZm9yIE5ldHdvcmsgQ29tcHV0aW5nKSBzZWUgaHR0cDovL2Jv
aW5jLmJlcmtlbGV5LmVkdQojIyMgRU5EIElOSVQgSU5GTwojCiMgRXJpYyBNeWVycyA8bXllcnNA
dmFzc2FyLmVkdT4gIC0gMjcgSnVseSAyMDA0CiMgRGVwYXJ0bWVudCBvZiBQaHlzaWNzIGFuZCBB
c3Ryb25vbXksIFZhc3NhciBDb2xsZWdlLCBQb3VnaGtlZXBzaWUgTlkKIyBFcmljIE15ZXJzIDxt
eWVyc0BzcHktaGlsbC5uZXQ+IAojIFNweSBIaWxsIFJlc2VhcmNoLCBQb3VnaGtlZXBzaWUsIE5l
dyBZb3JrCiMgQCgjKSAkSWQ6IGJvaW5jLHYgMS4xMCAyMDA3LzEyLzI3IDIwOjA5OjA5IG15ZXJz
IEV4cCAkCiMKIyBNb2RpZmllZCBieSBFcmljIEtvcnBlbGEgPGtvcnBlbGFAc3NsLmJlcmtlbGV5
LmVkdT4gLSAxMSBBcHIgMjAwOAojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMgRGVmYXVsdHMsIHdoaWNoIGNh
biBiZSBvdmVycmlkZGVuIGJ5IHB1dHRpbmcgbmV3IE5BTUU9dmFsdWUgbGluZXMgCiMgIGluIC9l
dGMvc3lzY29uZmlnL2JvaW5jLWNsaWVudCwgL2V0Yy9kZWZhdWx0L2JvaW5jLWNsaWVudCwgCiMg
IC9ldGMvYm9pbmMtY2xpZW50LmNvbmYsIG9yIHRoZSBzYW1lIGZpbGVzIHVuZGVyICR7c3lzY29u
ZmRpcn0KCiMjIFRoZXNlIDQgaW5zdGFsbGF0aW9uIGRpcnMgc2V0IGJ5IGF1dG9jb25mLiAjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpwcmVmaXg9YGRpcm5hbWUgL3Vzci8uYApleGVjX3ByZWZp
eD1gZGlybmFtZSAvdXNyLy5gCmJpbmRpcj1gZGlybmFtZSAvdXNyL2Jpbi8uYApzeXNjb25mZGly
PWBkaXJuYW1lIC9ldGMvLmAKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgojIHNldCB0aGUgYmFzaWMgUEFUSApQ
QVRIPS9zYmluOi9iaW46L3Vzci9zYmluOi91c3IvYmluOi91c3IvdWNiL2JpbgpleHBvcnQgUEFU
SAoKIyBGaW5kIHRoZSBjb3JyZWN0IHBzIHRvIHVzZS4gIE9uIHNvbGFyaXMgL3Vzci91Y2IvcHMg
aXMgdGhlIG9uZSB0byB1c2UKIyBvbiBldmVyeXRoaW5nIGVsc2UsIHdlIGhvcGUgdGhlIGZpcnN0
IG9uZSBpbiB0aGUgcGF0aCBpcyB0aGUgcmlnaHQgb25lLgppZiBbIC14IC91c3IvdWNiL3BzIF0g
OyB0aGVuCiAgUFM9L3Vzci91Y2IvcHMKZWxzZQogIFBTPXBzCmZpCgojIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK
IwojIEZpZ3VyZSBvdXQgaWYgd2UgYXJlIHJ1bm5pbmcgdW5kZXIgYW4gYWNjZXB0YWJsZSBzaGVs
bCAKIyAoYmFzaCwga3NoLCB6c2gpIHdoaWNoIHN1cHBvcnRzIGZ1bmN0aW9ucy4KIwojIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMKU0hFTExTPSJiYXNoIGtzaCB6c2giCiMgY291bnQgaG93IG1hbnkgdGltZXMgd2Un
dmUgdHJpZWQgdG8gcmVzdGFydApUUklFUz0kMgppZiBbIC16ICIkVFJJRVMiIF0gOyB0aGVuCiAg
VFJJRVM9MApmaQojIGJhc2ggYW5kIHpzaCBhcmUgZWFzeSB0byB0ZXN0LgppZiBbIC16ICIkQkFT
SF9WRVJTSU9OIiAtYSAteiAiJFpTSF9WRVJTSU9OIiBdIDsgdGhlbgogICMgd2UgYXJlbid0IHJ1
bm5pbmcgdW5kZXIgYmFzaCBvciB6c2gsIGNoZWNrIGZvciBrc2gKICBpZiBbIC16ICJgZWNobyAk
e0VOVn0gfCBncmVwIGtzaGAiIF0gOyB0aGVuCiAgICAjIHN0aWxsIG1pZ2h0IGJlIGtzaC4gIE9u
ZSBsYXN0IHNob3QuCiAgICBpZiBbIC16ICJgJHtQU30gJCQgfCB0YWlsIC0xIHwgZ3JlcCBrc2hg
IiBdIDsgdGhlbgogICAgICAjIGFzIGZhciBhcyBJIGNhbiB0ZWxsIHdlIGFyZW4ndCBpbiBhbiBh
cHByb3ZlZCBzaGVsbAogICAgICBUUklFUz1gZXhwciAkVFJJRVMgKyAxYAogICAgICAjIGhhdmUg
d2UgdHJpZWQgdG9vIG1hbnkgdGltZXM/CiAgICAgIGlmIFsgJFRSSUVTIC1ndCA0IF0gOyB0aGVu
IAogICAgICAgIGVjaG8gIkVSUk9SOiBlbmRsZXNzIGxvb3AgZGlzY292ZXJlZCBpbiAkMCBbRVJS
T1JdIgogICAgICAgIGV4aXQgMQogICAgICBmaQogICAgICBmb3IgdHJ5IGluICRTSEVMTFMgOyBk
bwogICAgICAgIGV4PWB3aGljaCAkdHJ5YAogICAgICAgIGlmIFsgISAteiAiJHtleH0iIC1hIC14
ICIke2V4fSIgXSA7IHRoZW4KICAgICAgICAgIGlmICR7ZXh9ICQwICQxICRUUklFUyA7IHRoZW4K
ICAgICAgICAgICAgIyBpdCB3b3JrZWQsIHdlIGNhbiBleGl0CiAgICAgICAgICAgIGV4aXQgMAog
ICAgICAgICAgZWxzZQogICAgICAgICAgICAjIGl0IGZhaWxlZCBmb3Igc29tZSByZWFzb24gdGhh
dCBzaG91bGQgaGF2ZSBiZWVuIHByaW50ZWQKICAgICAgICAgICAgIyBieSB0aGUgc2NyaXB0CiAg
ICAgICAgICAgIGV4aXQgMQogICAgICAgICAgZmkKICAgICAgICBmaQogICAgICBkb25lCiAgICAg
ICMgaWYgd2UgZ290IGhlcmUsIHdlIHRyaWVkIGV2ZXJ5dGhpbmcuCiAgICAgIGVjaG8gIkVSUk9S
OiAkMCByZXF1aXJlcyBiYXNoLCB6c2gsIG9yIGtzaCB0byBydW4uCVtGQUxJRURdIgogICAgICBl
eGl0IDEKICAgIGZpCiAgICAjaWYgd2UgZ290IGhlcmUgb3IgYmVsb3csIHdlcmUgaW4gYW4gYXBw
cm92ZWQgc2hlbGwuCiAgZmkKZmkKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgoKIyBOYW1lIG9mIHVzZXIgdG8g
cnVuIGFzOgojCkJPSU5DVVNFUj1ib2luYwoKIyBXb3JraW5nIGRpcmVjdG9yeS4gIENvdWxkIGJl
IC9ob21lL2JvaW5jLCAvdmFyL2xpYi9ib2luYywgZXRjLi4KIyBUaGUgcmVhc29uIEkgcHJlZmVy
IC92YXIvbGliL2JvaW5jIGlzIHRoYXQgdGhpcyB3b3JrcyBiZXN0IGZvciBhIAojIGNsdXN0ZXIg
b2YgY29tcHV0ZXJzIHdoZXJlIC9ob21lL2FueXRoaW5nIG1pZ2h0IGJlIHNoYXJlZCBiZXR3ZWVu
IG1hY2hpbmVzCiMKQk9JTkNESVI9L3Zhci9saWIvYm9pbmMKCiMgTmFtZSBvZiB0aGUgY2xpZW50
IGV4ZWN1dGFibGUuICBUaGlzIGlzIHRoZSBmaWxlICJib2luYyIgaWYgeW91IAojIHVucGFja2Vk
IHRoZSBkb3dubG9hZCBmaWxlICBib2luY19NLm1tLnJyX2k2ODYtcGMtbGludXgtZ251LnNoLAoj
IGJ1dCBJIGxpa2UgdG8gcmVuYW1lIGl0IGFuZCBwdXQgaXQgaW4gYSBwdWJsaWMgcGxhY2UuCiMg
KEhpbnQ6IG1vdmUgYm9pbmNtZ3IgdG8gL3Vzci9sb2NhbC9iaW4gdG9vIHNvIGFueW9uZSBjYW4g
ZWFzaWx5IHVzZSBpdCkuCiMKQk9JTkNFWEVfTkFNRT1ib2luY19jbGllbnQKQk9JTkNFWEU9JHti
aW5kaXJ9LyR7Qk9JTkNFWEVfTkFNRX0KQk9JTkNDTURfTkFNRT1ib2luY2NtZApCT0lOQ0NNRD0k
e2JpbmRpcn0vJHtCT0lOQ0NNRF9OQU1FfQoKIyBMb2cgZmlsZXMgKHlvdSBzaG91bGQgcm90YXRl
IHRoZXNlIG9jY2FzaW9uYWxseSkKIwpMT0dGSUxFPS92YXIvbG9nLyR7Qk9JTkNFWEVfTkFNRX0u
bG9nCkVSUk9STE9HPS92YXIvbG9nLyR7Qk9JTkNFWEVfTkFNRX1fZXJyLmxvZwoKIyBQSUQgZmls
ZQpQSURGSUxFPS92YXIvcnVuLyR7Qk9JTkNFWEVfTkFNRX0ucGlkCgojIEJPSU5DIG9wdGlvbnM6
IGZvciB0aGUgY29tbWFuZCBsaW5lIHdoZW4gcnVubmluZyB0aGUgY2xpZW50LiAgCiMgQmUgYXdh
cmUgdGhhdCAtLWFsbG93X3JlbW90ZV9ndWlfcnBjIG9wZW5zIHVwIHlvdXIgbWFjaGluZSB0byB0
aGUgd29ybGQhCiMKIyBBZGQgdGhpcyBvcHRpb24gaWYgeW91IHdhbnQgdG8gYWxsb3cgYm9pbmMg
bWFuYWdlciBjb25uZWN0aW9ucyBmcm9tIHJlbW90ZQojIG1hY2hpbmVzCiNCT0lOQ09QVFM9Ii0t
YWxsb3dfcmVtb3RlX2d1aV9ycGMiICAgCiMgQWRkIHRoaXMgb3B0aW9uIGlmIHlvdSB3YW50IHRv
IHR1cm4gb2ZmIGFsbCBsb2dnaW5nCiNCT0lOQ09QVFM9Ii0tZGFlbW9uIgojIEFkZCB0aGlzIG9w
dGlvbiBpZiB5b3Ugd2FudCB0byByZWRpcmVjdCBsb2dnaW5nIHRvIHRoZSBmaWxlcyBzdGRlcnJk
YWUudHh0CiMgYW5kIHN0ZG91dGRhZS50eHQgaW4gQk9JTkNESVIgcmF0aGVyIHRoYW4gTE9HRklM
RSBhbmQgRVJST1JMT0cKI0JPSU5DT1BUUz0iLS1yZWRpcmVjdGlvIgojIEFkZCB0aGlzIG9wdGlv
biBpZiB5b3Ugd2FudCB0byBydW4gb25seSB3aGVuIG5vIGxvZ2lucyBmcm9tIGFueXdoZXJlIGFy
ZSAKIyBhY3RpdmUKI0JPSU5DT1BUUz0iLS1jaGVja19hbGxfbG9naW5zIgojIFRoZSBkZWZhdWx0
IGlzIG5vIG9wdGlvbnMuCkJPSU5DT1BUUz0KCiMgU3Vic3lzIGxvY2sgZmlsZSAuLi4KCiMgSWYg
dGhlcmUgaXMgdGhlIHN1YnN5cyBkaXJlY3RvcnksIHRoZW4gdXNlIGl0IC4uLgppZiBbIC1kIC92
YXIvbG9jay9zdWJzeXMvIF07IHRoZW4KICAgICAgICBMT0NLRklMRT0vdmFyL2xvY2svc3Vic3lz
LyR7Qk9JTkNFWEVfTkFNRX0KZWxpZiBbIC1kIC92YXIvbG9jayBdOyB0aGVuCiAgICAgICAgTE9D
S0ZJTEU9L3Zhci9sb2NrLyR7Qk9JTkNFWEVfTkFNRX0KZWxpZiBbIC1kIC92YXIvcnVuIF07IHRo
ZW4KICAgICAgICBMT0NLRklMRT0vdmFyL3J1bi8ke0JPSU5DRVhFX05BTUV9LmxvY2sKZmkKCiMg
c3Ugb24gTGludXggc2VlbXMgdG8gbmVlZCB0aGlzIHRvIGJlIHNldCB0byB3b3JrIHByb3Blcmx5
IGluIGEgc2NyaXB0CmV4cG9ydCBURVJNPWR1bWIKCgojIwojIEluaXQgc2NyaXB0IGZ1bmN0aW9u
IGxpYnJhcnkuICAgVGhpcyBzdHVmZiBpcyBSZWQgSGF0IHNwZWNpZmljLAojIGJ1dCBpZiB0aGUg
ZnVuY3Rpb25zIGFyZSBub3QgZm91bmQgd2UgY3JlYXRlIG91ciBvd24gc2ltcGxlIHJlcGxhY2Vt
ZW50cy4KIyAoVGhlIGlkZWEgZm9yIHJlcGxhY2luZyB0aGUgZnVuY3Rpb25zIGNvbWVzIGZyb20g
T3BlbkFGUy4gIFRoYW5rcyBndXlzISkKCmlmIFsgLWYgL2V0Yy9yYy5kL2luaXQuZC9mdW5jdGlv
bnMgXSA7IHRoZW4KICAgICAgLiAvZXRjL3JjLmQvaW5pdC5kL2Z1bmN0aW9ucwplbHNlCiAgICAg
IGlmIHByaW50ZiAiSGVsbG8iID4vZGV2L251bGwgMj4vZGV2L251bGwgOyB0aGVuCiAgICAgICAg
ICAgIyBwcmludGYgd29ya3MKICAgICAgICAgICBwcmludGNvbD0ncHJpbnRmIFwwMzNbNjBHJXMn
CiAgICAgIGVsaWYgZWNobyAtZW4gIkhlbGxvIiA+L2Rldi9udWxsIDI+L2Rldi9udWxsIDsgdGhl
bgogICAgICAgICAgICMgZWNobyAtZW4gd29ya3MKICAgICAgICAgICBwcmludGNvbD0nZWNobyAt
ZW4gXDAzM1s2MEcnCiAgICAgIGVsc2UKICAgICAgICAgICAjIG5vIHByaW50ZiBtYWtlIGRvIHdp
dGggZWNobyAtbgogICAgICAgICAgIHByaW50Y29sPSJlY2hvIC1uIC4uLi4uLi4uLi4iCiAgICAg
IGZpCiAgICAgIGZ1bmN0aW9uIGVjaG9fc3VjY2VzcyAoKSB7ICRwcmludGNvbCAiW09LXSIgOyB9
CiAgICAgIGZ1bmN0aW9uIGVjaG9fZmFpbHVyZSAoKSB7ICRwcmludGNvbCAiW0ZBSUxFRF0iIDsg
fQogICAgICBmdW5jdGlvbiBlY2hvX3dhcm5pbmcgKCkgeyAkcHJpbnRjb2wgIltXQVJOSU5HXSIg
OyB9CiAgICAgIGZ1bmN0aW9uIGtpbGxwcm9jKCkgewogICAgICAgICAgICAgUElEPWBsb2NhbF9w
aWRvZiAkMWAKICAgICAgICAgICAgIFsgJFBJRCBdICYmIGtpbGwgJFBJRCAKICAgICAgfQpmaQoK
IyBjaGVjayBpZiB3ZSBoYXZlIHBpZG9mLiAgSWYgbm90IHVzZSBwcyBhbmQgZ3JlcCBmb3IgdGhl
IHNhbWUgam9iLgppZiBbIC14IC9zYmluL3BpZG9mIF0gOyB0aGVuIAogIGZ1bmN0aW9uIGxvY2Fs
X3BpZG9mKCkgeyAKICAgIHBpZG9mIC1zIC14IC1vICQkIC1vICRQUElEIC1vICVQUElEICQxIAog
IH0gCmVsc2UKICBmdW5jdGlvbiBsb2NhbF9waWRvZigpIHsKICAgICR7UFN9IHhhdWd3dyB8IHNl
ZCAncy8kLyAvJyB8IGdyZXAgIlsgL10kMSAiIHwgZ3JlcCAtdiAkJCB8IGdyZXAgLXYgJFBQSUQg
fCBncmVwIC12ICVQUElEIHwgZ3JlcCAtdiBncmVwIHwgYXdrICd7cHJpbnQgJDJ9JwogIH0KZmkK
CiMKIyBDaGVjayBpZiB3ZSBoYXZlIHJ1bnVzZXIsIHNpbmNlIGl0IHdpbGwgbmV2ZXIgaGFuZyB3
YWl0aW5nIGZvciBhIHBhc3N3b3JkLiAgCiMgSWYgd2UgZG9uJ3QgaGF2ZSBpdCwgdXNlIHN1IGZv
ciB0aGUgc2FtZSBqb2IuCiMgCmlmIFsgISAteCAvc2Jpbi9ydW51c2VyIF0gOyB0aGVuCiAgUlVO
VVNFUj1zdQplbHNlIAogIFJVTlVTRVI9cnVudXNlcgpmaQoKIyBTb21lIGFkZGl0aW9uYWwgcGxh
Y2VzIHRvIGxvb2sgZm9yIGV4ZWN1dGFibGVzCiMgKFNob3VsZCBkbyB0aGlzIGFmdGVyIGluaXQu
ZC9mdW5jdGlvbnMgYW5kIHN5c2NvbmZpZy9ib2luYywgd2hpY2ggc2V0cyBQQVRIKQpleHBvcnQg
UEFUSD0ke1BBVEh9OiR7ZXhlY19wcmVmaXh9L3NiaW46JHtiaW5kaXJ9CgoKIyMgTG9vayBmb3Ig
YW55IGxvY2FsIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3Mgd2hpY2ggb3ZlcnJpZGUgYWxsIGFib3Zl
CiMjIE5vdGU6IC4vYm9pbmMtY2xpZW50LmNvbmYgYW5kIC4vYm9pbmMuY29uZiBhcmUgZm9yIHRl
c3RpbmcgcHVycG9zZXMKY29uZmlnX2ZpbGVzPSIKLi9ib2luYy1jbGllbnQuY29uZgouL2JvaW5j
LmNvbmYKL2V0Yy9zeXNjb25maWcvYm9pbmMtY2xpZW50Ci9ldGMvZGVmYXVsdC9ib2luYy1jbGll
bnQKL2V0Yy9ib2luYy1jbGllbnQuY29uZgoke3N5c2NvbmZkaXJ9L3N5c2NvbmZpZy9ib2luYy1j
bGllbnQKJHtzeXNjb25mZGlyfS9kZWZhdWx0L2JvaW5jLWNsaWVudAoke3N5c2NvbmZkaXJ9L2Jv
aW5jLWNsaWVudC5jb25mCi9ldGMvc3lzY29uZmlnL2JvaW5jCi9ldGMvZGVmYXVsdC9ib2luYwov
ZXRjL2JvaW5jLmNvbmYKJHtzeXNjb25mZGlyfS9zeXNjb25maWcvYm9pbmMKJHtzeXNjb25mZGly
fS9kZWZhdWx0L2JvaW5jCiR7c3lzY29uZmRpcn0vYm9pbmMuY29uZgpub25lCiIKCiMjIGZpbmQg
dGhlIGNvcnJlY3QgY29uZmlnIGZpbGUKZm9yIGNvbmZpZ19maWxlIGluICRjb25maWdfZmlsZXMg
OyBkbwogIGlmIFsgLWYgJHtjb25maWdfZmlsZX0gXSA7IHRoZW4gCiAgICBicmVhazsgCiAgZmkK
ZG9uZQoKaWYgWyAiJHtjb25maWdfZmlsZX0iICE9ICJub25lIiBdOyB0aGVuCiAgIyBjaGVjayB3
aGV0aGVyIHdlIGFyZSB1c2luZyBhIGRlcHJlY2F0ZWQgbmFtZQogIGlmIFsgIngkTk9XQVJOSU5H
IiAhPSAieHllcyIgLWEgLXogImBlY2hvICR7Y29uZmlnX2ZpbGV9IHwgZ3JlcCBib2luYy1jbGll
bnRgIiBdOyB0aGVuCiAgICBmbj1gYmFzZW5hbWUgJGNvbmZpZ19maWxlYAogICAgZG49YGRpcm5h
bWUgJGNvbmZpZ19maWxlYAogICAgbmV3bmFtZT1gZWNobyAkZm4gfCBzZWQgJ3MvYm9pbmMvYm9p
bmMtY2xpZW50LydgCiAgICBlY2hvIC1uICJUaGUgZmlsZW5hbWUgJyR7Y29uZmlnX2ZpbGV9JyBp
cyBkZXByZWNhdGVkLi4uIgogICAgZWNob193YXJuaW5nCiAgICBlY2hvCiAgICBlY2hvIC1uICJQ
bGVhc2UgcmVuYW1lIHlvdXIgY29uZmlnIGZpbGUgdG8gJyR7ZG59LyR7bmV3bmFtZX0nIgogICAg
ZWNob193YXJuaW5nCiAgICBlY2hvCiAgZmkKICAjIGV4ZWN1dGUgdGhlIGNvbmZpZyBmaWxlLgog
IC4gJHtjb25maWdfZmlsZX0KZmkKCgojIyBBZGQgJHtCT0lOQ0RJUn0gdG8gdGhlIHBhdGgsIGp1
c3QgaW4gY2FzZSB0aGUgZXhlY3V0YWJsZXMgYXJlIHN0b3JlZCB0aGVyZS4KZXhwb3J0IFBBVEg9
JHtQQVRIfToke0JPSU5DRElSfQoKIyMgQ3JlYXRlIHRoZSB3b3JraW5nIGRpcmVjdG9yeSBpZiBp
dCBkb2Vzbid0IGV4aXN0OgppZiBbICEgLWQgJEJPSU5DRElSIF07IHRoZW4KICBlY2hvIC1uICJD
cmVhdGluZyAkQk9JTkNESVIgIgogIGlmIG1rZGlyIC1wICRCT0lOQ0RJUiAyPi9kZXYvbnVsbCA7
IHRoZW4KICAgIGlmIFsgLW4gIiRCT0lOQ1VTRVIiIF0gOyB0aGVuCiAgICAgIGlmIGNob3duICRC
T0lOQ1VTRVIgJEJPSU5DRElSIDsgdGhlbgogICAgICAgIGVjaG9fc3VjY2VzcwogICAgICBlbHNl
CiAgICAgICAgZWNob19mYWlsdXJlCiAgICAgICAgZWNobwogICAgICAgIGV4aXQgNwogICAgICBm
aQogICAgZmkKICBlbHNlCiAgICBlY2hvX2ZhaWx1cmUKICAgIGVjaG8KICAgIGV4aXQgNwogIGZp
CmZpCgojIyBDaGVjayB3aGF0IHVzZXIgd2UgYXJlIHJ1bm5pbmcgYXM6CiMgd2UgY2FuJ3QgcmVs
eSBvbiB0aGUgZXhpc3RlbmNlIG9mICJ3aG9hbWkiIG9yICJsb2duYW1lIiwgc28gd2UnbGwgdXNl
IHBzLgpVU0VSTk9XPWAke1BTfSB1ICQkIHwgdGFpbCAtMSB8IGF3ayAne3ByaW50ICQxfSdgCmlm
IFsgLXogIiRCT0lOQ1VTRVIiIF0gOyB0aGVuCiAgQk9JTkNVU0VSPSIke1VTRVJOT1d9IgpmaQoK
IyMgQ2hlY2sgdGhhdCBCT0lOQ1VTRVIgYWN0dWFsbHkgZXhpc3RzCmlmIFsgLXogImBncmVwIF4k
e0JPSU5DVVNFUn06IC9ldGMvcGFzc3dkYCIgXSA7IHRoZW4KICBpZiBbIC16ICJgeXBjYXQgcGFz
c3dkIDI+L2Rldi9udWxsIHwgZ3JlcCBeJHtCT0lOQ1VTRVJ9OmAiIF0gOyB0aGVuIAogICAgaWYg
WyAteiAiYG5pZHVtcCBwYXNzd2QgLyAyPi9kZXYvbnVsbCB8IGdyZXAgXiR7Qk9JTkNVU0VSfTpg
IiBdIDsgdGhlbiAKICAgICAgIGVjaG8gLW4gRVJST1I6IHVzZXIgJHtCT0lOQ1VTRVJ9IGRvZXMg
bm90IGV4aXN0LgogICAgICAgZWNob19mYWlsdXJlCiAgICAgICBlY2hvCiAgICAgICBleGl0IDkK
ICAgIGZpCiAgZmkKZmkKCiMgaWYgd2UgYXJlIHJ1bm5pbmcgYXMgcm9vdCwgcHJpbnQgYSB3YXJu
aW5nLgppZiBbICJ4JE5PV0FSTklORyIgIT0gInh5ZXMiIC1hICAiJEJPSU5DVVNFUiIgPSAicm9v
dCIgXSA7IHRoZW4KICBlY2hvIC1uIFdBUk5JTkc6IGJvaW5jLWNsaWVudCB3aWxsIGJlIHJ1bm5p
bmcgYXMgcm9vdAogIGVjaG9fd2FybmluZwogIGVjaG8KZmkKCiMgY2hlY2sgd2hldGhlciB3ZSB3
aWxsIGJlIGFibGUgdG8gd3JpdGUgdG8gdGhlIEJPSU5DIGRpcmVjdG9yeQppZiBbICIke1VTRVJO
T1d9IiA9ICIke0JPSU5DVVNFUn0iIF0gOyB0aGVuCiAgaWYgWyAhIC1PICR7Qk9JTkNESVJ9IF0g
OyB0aGVuCiAgICBlY2hvIC1uIEVSUk9SOiAkQk9JTkNESVIgaXMgbm90IG93bmVkIGJ5ICRCT0lO
Q1VTRVIuCiAgICBlY2hvX2ZhaWx1cmUKICAgIGVjaG8KICAgIGV4aXQgOAogIGZpCmVsaWYgWyAi
JHtVU0VSTk9XfSIgPSAicm9vdCIgXSA7IHRoZW4KICBjbWQ9ImlmIHRlc3QgLU8gJHtCT0lOQ0RJ
Un0gOyB0aGVuIGVjaG8gc3VjY2VzcyA7IGZpIgogIGlmIFsgLXogYHN1ICRCT0lOQ1VTRVIgLWMg
IiRjbWQiYCBdOyB0aGVuCiAgICBlY2hvIC1uIEVSUk9SOiAkQk9JTkNESVIgaXMgbm90IG93bmVk
IGJ5ICRCT0lOQ1VTRVIuCiAgICBlY2hvX2ZhaWx1cmUKICAgIGVjaG8KICAgIGV4aXQgOAogIGZp
CmZpCgoKIyMgTG9jYXRlIHRoZSBleGVjdXRhYmxlLCBlaXRoZXIgYm9pbmNfY2xpZW50LCBib2lu
YywgCiMjIG9yIGJvaW5jX00ubW1fLi4uLiB3aXRoIGhpZ2hlc3QgdmVyc2lvbiBudW1iZXIKIyMg
V2Ugb25seSBkbyB0aGlzIGlmIEJPSU5DRVhFIHNldCBhYm92ZSBpc24ndCBmb3VuZCBvciBpcyBu
b3QgZXhlY3V0YWJsZS4KaWYgWyAhIC14ICRCT0lOQ0VYRSBdOyB0aGVuCiAgQk9JTkNFWEU9YCRX
SElDSCAkQk9JTkNFWEVfTkFNRSAyPi9kZXYvbnVsbGAKICBpZiBbICEgLXggIiRCT0lOQ0VYRSIg
XTsgdGhlbgogICAgQk9JTkNFWEU9YCRXSElDSCBib2luYyAyPi9kZXYvbnVsbGAKICBmaQpmaQoK
aWYgWyAhIC14ICIkQk9JTkNFWEUiIF07IHRoZW4KICBlY2hvIC1uICJDYW5ub3QgZmluZCBhbiBl
eGVjdXRhYmxlIGZvciB0aGUgQk9JTkMgY2xpZW50LiIKICBlY2hvX2ZhaWx1cmUKICBlY2hvIAog
IGV4aXQgMgpmaQoKIyMgYm9pbmNjbWQgd2lsbCBwcm9iYWJseSBiZSBpbiB0aGUgc2FtZSBwbGFj
ZSBhcyB0aGUgYm9pbmNfY2xpZW50CmlmIFsgISAteCAkQk9JTkNDTUQgXTsgdGhlbgogIEJPSU5D
Q01EPWAkV0hJQ0ggJEJPSU5DQ01EX05BTUUgMj4vZGV2L251bGxgCiAgaWYgWyAhIC14ICIkQk9J
TkNDTUQiIF07IHRoZW4KICAgIEJPSU5DQ01EPWBkaXJuYW1lICRCT0lOQ0VYRSAyPi9kZXYvbnVs
bGAvJHtCT0lOQ0NNRF9OQU1FfQogIGZpCmZpCgoKaWYgWyAieCROT1dBUk5JTkciICE9ICJ4eWVz
IiAtYSAhIC14ICRCT0lOQ0NNRCBdOyB0aGVuCiAgZWNobyAtbiAiQ2Fubm90IGZpbmQgdGhlIGJv
aW5jY21kIGV4ZWN1dGFibGUuICBSZWxvYWQgd2lsbCBmYWlsLiIKICBlY2hvX3dhcm5pbmcKICBl
Y2hvCmZpCgojIyBGdW5jdGlvbnM6ICQxIGlzIG9uZSBvZiAgc3RhcnR8c3RvcHxzdGF0dXN8cmVs
b2FkfHJlc3RhcnQKCmV4cG9ydCBOT1dBUk5JTkc9eWVzCgpjYXNlICIkMSIgaW4KICBzdGFydCkK
ICAgICAgICBjZCAkQk9JTkNESVIKICAgICAgICBQSUQ9YGxvY2FsX3BpZG9mICRCT0lOQ0VYRV9O
QU1FYAoKICAgICAgICBpZiBbIC1mIGxvY2tmaWxlIC1vIC1mICRMT0NLRklMRSBdIDsgdGhlbgog
ICAgICAgICAgaWYgWyAteiAiJFBJRCIgXSA7IHRoZW4KICAgICAgICAgICAgIyBhIGxvY2tmaWxl
IGV4aXN0cywgYnV0IGJvaW5jX2NsaWVudCBpc24ndCBydW5uaW5nCiAgICAgICAgICAgIC9iaW4v
cm0gLWYgbG9ja2ZpbGUgJExPQ0tGSUxFICRQSURGSUxFIDI+JjEgPiAvZGV2L251bGwKICAgICAg
ICAgIGVsc2UgCiAgICAgICAgICAgIGVjaG8gLW4gIkFub3RoZXIgaW5zdGFuY2Ugb2YgQk9JTkMg
aXMgcnVubmluZyAoUElEPSR7UElEfSkuIgogICAgICAgICAgICBlY2hvX2ZhaWx1cmUKICAgICAg
ICAgICAgZWNobyAKICAgICAgICAgICAgZXhpdCAxCiAgICAgICAgICBmaQogICAgICAgIGZpCgog
ICAgICAgIGlmIFsgISAtZCBwcm9qZWN0cyBdIDsgdGhlbgogICAgICAgICAgZWNobyAtbiAiVGhl
IEJPSU5DIGNsaWVudCByZXF1aXJlcyBpbml0aWFsaXphdGlvbi4iCiAgICAgICAgICBlY2hvX3dh
cm5pbmcKICAgICAgICAgIGVjaG8gCiAgICAgICAgZmkKCiAgICAgICAgdG91Y2ggJHtMT0dGSUxF
fSAke0VSUk9STE9HfQogICAgICAgIE5PQ09SRT0idWxpbWl0IC1jIDAgMj4mMSA+L2Rldi9udWxs
IgogICAgICAgIGVjaG8gLW4gIlN0YXJ0aW5nIEJPSU5DIGNsaWVudCBhcyBhIGRhZW1vbjogICIK
ICAgICAgICBpZiBbICIke0JPSU5DVVNFUn0iID0gIiR7VVNFUk5PV30iIF0gOyB0aGVuIAogICAg
ICAgICAgICMgSSBhbSBCT0lOQ1VTRVIuICBKdXN0IHN0YXJ0IGNsaWVudCBhcyBtZS4KICAgICAg
ICAgICAkTk9DT1JFCiAgICAgICAgICAgJEJPSU5DRVhFICRCT0lOQ09QVFMgPj4kTE9HRklMRSAy
Pj4kRVJST1JMT0cgJgogICAgICAgIGVsc2UKICAgICAgICAgICBjaG93biAke0JPSU5DVVNFUn0g
JHtMT0dGSUxFfSAke0VSUk9STE9HfQogICAgICAgICAgICR7UlVOVVNFUn0gLSAkQk9JTkNVU0VS
IC1jICIkTk9DT1JFIDsgJEJPSU5DRVhFICRCT0lOQ09QVFMgPj4kTE9HRklMRSAyPj4kRVJST1JM
T0ciIDI+L2Rldi9udWxsID4gL2Rldi9udWxsICYKICAgICAgICBmaQogICAgICAgIHNsZWVwIDMg
IAogICAgICAgIFBJRD1gbG9jYWxfcGlkb2YgJEJPSU5DRVhFX05BTUVgCiAgICAgICAgaWYgWyAk
UElEIF07IHRoZW4KICAgICAgICAgIGVjaG8gJFBJRCA+ICRQSURGSUxFCiAgICAgICAgICB0b3Vj
aCAkTE9DS0ZJTEUgJiYgZWNob19zdWNjZXNzIHx8ICggZWNob19mYWlsdXJlIDsgZWNobyApCiAg
ICAgICAgZmkKICAgICAgICBlY2hvCiAgICAgICAgOzsKICBzdG9wKQogICAgICAgIGNkICRCT0lO
Q0RJUgogICAgICAgIGlmIFsgISAtZiAkUElERklMRSAtYSAhIC1mIGxvY2tmaWxlIC1hICEgLWYg
JExPQ0tGSUxFIF0gOyB0aGVuCiAgICAgICAgICBlY2hvIC1uICJCT0lOQyBpcyBub3QgcnVubmlu
ZyAobm8gbG9ja2ZpbGVzIGZvdW5kKS4iCiAgICAgICAgICBlY2hvX3N1Y2Nlc3MKICAgICAgICBl
bHNlCiAgICAgICAgICBlY2hvIC1uICJTdG9wcGluZyBCT0lOQyBjbGllbnQgZGFlbW9uOiAgIiAg
ICAKICAgICAgICAgIGlmIFsgLWYgJFBJREZJTEUgXSA7IHRoZW4KICAgICAgICAgICAgUElEPWBj
YXQgJFBJREZJTEVgCiAgICAgICAgICAgIGlmIFsgLW4gImAke1BTfSAkUElEIHwgZ3JlcCAkUElE
YCIgXSA7IHRoZW4KICAgICAgICAgICAgICBraWxsIGBjYXQgJFBJREZJTEVgCiAgICAgICAgICAg
ICAgc2xlZXAgNQogICAgICAgICAgICBmaQogICAgICAgICAgICBpZiBbIC16ICJgJHtQU30gJFBJ
RCB8IGdyZXAgJFBJRGAiIF0gOyB0aGVuCiAgICAgICAgICAgICAgZWNob19zdWNjZXNzCiAgICAg
ICAgICAgIGVsc2UKICAgICAgICAgICAgICBlY2hvX2ZhaWx1cmUKICAgICAgICAgICAgICBlY2hv
CiAgICAgICAgICAgIGZpCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGtpbGxwcm9jICRCT0lO
Q0VYRV9OQU1FICAmJiBlY2hvX3N1Y2Nlc3MgIHx8IGVjaG9fZmFpbHVyZSAKICAgICAgICAgIGZp
CiAgICAgICAgICAjIGNsZWFuIHVwIGluIGFueSBjYXNlCiAgICAgICAgICBybSAtZiBsb2NrZmls
ZSAyPi9kZXYvbnVsbCA+L2Rldi9udWxsCiAgICAgICAgICBybSAtZiAkTE9DS0ZJTEUgMj4vZGV2
L251bGwKICAgICAgICAgIHJtIC1mICRQSURGSUxFIDI+L2Rldi9udWxsCiAgICAgICAgZmkKICAg
ICAgICBlY2hvCiAgICAgICAgOzsKICByZWxvYWQpCiAgICAgICAgaWYgWyAhIC1mIGxvY2tmaWxl
IC1hICEgLWYgJExPQ0tGSUxFIF0gOyB0aGVuCiAgICAgICAgICBlY2hvICAiQk9JTkMgaXMgbm90
IHJ1bm5pbmcgKG5vIGxvY2tmaWxlcyBmb3VuZCkgLS0gc3RhcnRpbmcgc2VydmljZS4iCiAgICAg
ICAgICAkMCBzdGFydAogICAgICAgIGVsc2UKICAgICAgICAgICRCT0lOQ0NNRCAtLXJlYWRfY2Nf
Y29uZmlnID4+JExPR0ZJTEUgMj4+JEVSUk9STE9HICYmIGVjaG9fc3VjY2VzcyB8fCAkMCByZXN0
YXJ0CiAgICAgICAgZmkKICAgICAgICA7OwogIHJlc3RhcnQpCiAgICAgICAgJDAgc3RvcAogICAg
ICAgICQwIHN0YXJ0CiAgICAgICAgOzsKCiAgc3RhdHVzKQogICAgICAgIFBJRD1gY2F0ICRQSURG
SUxFIDI+L2Rldi9udWxsYAogICAgICAgIGlmIFsgIiRQSUQiICE9ICIiIF07IHRoZW4KICAgICAg
ICAgICMgaXMgaXQgc3RpbGwgcnVubmluZz8KICAgICAgICAgIGlmIFsgLXogImAke1BTfSAkUElE
IHwgZ3JlcCAkUElEYCIgXTsgdGhlbgogICAgICAgICAgICAjIG5vdCBydW5uaW5nLiAgVHJ5IHRo
ZSBvdGhlciB0ZXN0cy4KICAgICAgICAgICAgUElEPSIiCiAgICAgICAgICBmaQogICAgICAgIGZp
CiAgICAgICAgaWYgWyAiJFBJRCIgPT0gIiIgXTsgdGhlbgogICAgICAgICAgUElEPWBsb2NhbF9w
aWRvZiAkQk9JTkNFWEVfTkFNRWAKICAgICAgICBmaQogICAgICAgIGlmIFsgIiRQSUQiID09ICIi
IF07IHRoZW4KICAgICAgICAgIFBJRD1gbG9jYWxfcGlkb2YgJEJPSU5DRVhFYAogICAgICAgIGZp
CiAgICAgICAgaWYgWyAiJFBJRCIgIT0gIiIgXTsgdGhlbgogICAgICAgICAgZWNobyAiQk9JTkMg
Y2xpZW50IGlzIHJ1bm5pbmcgKHBpZCAkUElEKS4iCiAgICAgICAgZWxzZQogICAgICAgICAgaWYg
WyAtZiAkQk9JTkNESVIvbG9ja2ZpbGUgLW8gLWYgJExPQ0tGSUxFIF07IHRoZW4gCiAgICAgICAg
ICAgICBlY2hvICJCT0lOQyBpcyBzdG9wcGVkIGJ1dCBsb2NrZmlsZShzKSBleGlzdC4iCiAgICAg
ICAgICAgICBleGl0IDIKICAgICAgICAgIGVsc2UgCiAgICAgICAgICAgICBlY2hvICJCT0lOQyBj
bGllbnQgaXMgc3RvcHBlZC4iCiAgICAgICAgICAgICBleGl0IDMKICAgICAgICAgIGZpCiAgICAg
ICAgZmkKICAgICAgICA7OwogICAgICAgIAogICMgQUxUTGludXggc3BlY2lmaWMgZnVuY3Rpb25z
LgogIGNvbmRzdG9wKQogICAgICAgIGlmIFsgLWUgIiRMT0NLRklMRSIgXTsgdGhlbgogICAgICAg
ICAgICAkMCBzdG9wCiAgICAgICAgZmkKICAgICAgICA7OwoKICBjb25kcmVzdGFydCkKICAgICAg
ICBpZiBbIC1lICIkTE9DS0ZJTEUiIF07IHRoZW4KICAgICAgICAgICAgJDAgcmVzdGFydAogICAg
ICAgIGZpCiAgICAgICAgOzsKCiAgY29uZHJlbG9hZCkKICAgICAgICBpZiBbIC1lICIkTE9DS0ZJ
TEUiIF07IHRoZW4KICAgICAgICAgICAgJDAgcmVsb2FkCiAgICAgICAgZmkKICAgICAgICA7OwoK
ICAqKQogICAgICAgIGVjaG8gIlVzYWdlOiBib2luYyB7c3RhcnR8c3RvcHxyZXN0YXJ0fHJlbG9h
ZHxjb25kc3RvcHxjb25kcmVzdGFydHxjb25kcmVsb2FkfHN0YXR1c30iCiAgICAgICAgZXhpdCAx
CmVzYWMKCmV4aXQKCiNFT0YjCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>4107</attachid>
            <date>2009-12-07 19:35:38 +0300</date>
            <delta_ts>2009-12-07 19:35:38 +0300</delta_ts>
            <desc>Действительно исправленный сценарий службы boinc-client</desc>
            <filename>boinc-client</filename>
            <type>text/x-shellscript</type>
            <size>15236</size>
            <attacher name="manowar@altlinux.org">manowar</attacher>
            
              <data encoding="base64">IyEvYmluL3NoIAojCiMgQk9JTkMgLSBzdGFydCBhbmQgc3RvcCB0aGUgQk9JTkMgY2xpZW50IGRh
ZW1vbiBvbiBVbml4CiMKIyAgVW5peCBzdGFydC9zdG9wIHNjcmlwdCB0byBydW4gdGhlIEJPSU5D
IGNsaWVudCBhcyBhIGRhZW1vbiBhdAojICBzeXN0ZW0gc3RhcnR1cCwgYXMgdGhlICdib2luYycg
dXNlciAobm90IHJvb3QhKS4KIwojICBUaGlzIHZlcnNpb24gc2hvdWxkIHdvcmsgb24gdW5peGVz
IHRoYXQgaGF2ZSBiYXNoLCB6c2gsIG9yIGtzaC4gIElmIAojICBzdGFydGVkIHdpdGggYW5vdGhl
ciBCb3VybmUgY29tcGF0aWJsZSBzaGVsbCwgaXQgd2lsbCBhdHRlbXB0IHRvIHJlc3RhcnQgCiMg
IGluIGJhc2gsIHpzaCwgb3Iga3NoLgojCiMgIE1ldGFkYXRhIGZvciBjaGtjb25maWcgYW5kIHRo
ZSBTVVNFIGVxdWl2YWxlbnQgSU5JVCBpbmZvIGFyZSBpbmNsdWRlZCBiZWxvdy4KIwojICBVc2Fn
ZTogIGJvaW5jIHsgc3RhcnQgfCBzdG9wIHwgc3RhdHVzIHwgcmVsb2FkIHwgcmVzdGFydCB9CiMg
IAojIyMKIyBjaGtjb25maWc6IDM0NSA5OCAwMgojIGRlc2NyaXB0aW9uOiBUaGlzIHNjcmlwdCBz
dGFydHMgdGhlIGxvY2FsIEJPSU5DIGNsaWVudCBhcyBhIGRhZW1vbgojICAgICAgICAgRm9yIG1v
cmUgaW5mb3JtYXRpb24gYWJvdXQgQk9JTkMgKHRoZSBCZXJrZWxleSBPcGVuIEluZnJhc3RydWN0
dXJlCiMgICAgICAgICBmb3IgTmV0d29yayBDb21wdXRpbmcpIHNlZSBodHRwOi8vYm9pbmMuYmVy
a2VsZXkuZWR1CiMgcHJvY2Vzc25hbWU6IGJvaW5jCiMgY29uZmlnOiAvZXRjL3N5c2NvbmZpZy9i
b2luYwojCiMjIyBCRUdJTiBJTklUIElORk8KIyBQcm92aWRlczogYm9pbmMKIyBSZXF1aXJlZC1T
dGFydDogJG5ldHdvcmsKIyBSZXF1aXJlZC1TdG9wOiAgJG5ldHdvcmsKIyBEZWZhdWx0LVN0YXJ0
OiAzIDQgNSAKIyBEZWZhdWx0LVN0b3A6IDAgMSAyIDYKIyBTaG9ydC1EZXNjcmlwdGlvbjogVGhp
cyBzY3JpcHQgbW9uaXRvcnMgdGhlIEJPSU5DIGNsaWVudC4KIyBEZXNjcmlwdGlvbjogVGhpcyBz
Y3JpcHQgc3RhcnRzIHRoZSBsb2NhbCBCT0lOQyBjbGllbnQgYXMgYSBkYWVtb24KIyAgICAgICAg
IEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IEJPSU5DICh0aGUgQmVya2VsZXkgT3BlbiBJbmZy
YXN0cnVjdHVyZQojICAgICAgICAgZm9yIE5ldHdvcmsgQ29tcHV0aW5nKSBzZWUgaHR0cDovL2Jv
aW5jLmJlcmtlbGV5LmVkdQojIyMgRU5EIElOSVQgSU5GTwojCiMgRXJpYyBNeWVycyA8bXllcnNA
dmFzc2FyLmVkdT4gIC0gMjcgSnVseSAyMDA0CiMgRGVwYXJ0bWVudCBvZiBQaHlzaWNzIGFuZCBB
c3Ryb25vbXksIFZhc3NhciBDb2xsZWdlLCBQb3VnaGtlZXBzaWUgTlkKIyBFcmljIE15ZXJzIDxt
eWVyc0BzcHktaGlsbC5uZXQ+IAojIFNweSBIaWxsIFJlc2VhcmNoLCBQb3VnaGtlZXBzaWUsIE5l
dyBZb3JrCiMgQCgjKSAkSWQ6IGJvaW5jLHYgMS4xMCAyMDA3LzEyLzI3IDIwOjA5OjA5IG15ZXJz
IEV4cCAkCiMKIyBNb2RpZmllZCBieSBFcmljIEtvcnBlbGEgPGtvcnBlbGFAc3NsLmJlcmtlbGV5
LmVkdT4gLSAxMSBBcHIgMjAwOAojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMgRGVmYXVsdHMsIHdoaWNoIGNh
biBiZSBvdmVycmlkZGVuIGJ5IHB1dHRpbmcgbmV3IE5BTUU9dmFsdWUgbGluZXMgCiMgIGluIC9l
dGMvc3lzY29uZmlnL2JvaW5jLWNsaWVudCwgL2V0Yy9kZWZhdWx0L2JvaW5jLWNsaWVudCwgCiMg
IC9ldGMvYm9pbmMtY2xpZW50LmNvbmYsIG9yIHRoZSBzYW1lIGZpbGVzIHVuZGVyICR7c3lzY29u
ZmRpcn0KCiMjIFRoZXNlIDQgaW5zdGFsbGF0aW9uIGRpcnMgc2V0IGJ5IGF1dG9jb25mLiAjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpwcmVmaXg9YGRpcm5hbWUgL3Vzci8uYApleGVjX3ByZWZp
eD1gZGlybmFtZSAvdXNyLy5gCmJpbmRpcj1gZGlybmFtZSAvdXNyL2Jpbi8uYApzeXNjb25mZGly
PWBkaXJuYW1lIC9ldGMvLmAKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgojIHNldCB0aGUgYmFzaWMgUEFUSApQ
QVRIPS9zYmluOi9iaW46L3Vzci9zYmluOi91c3IvYmluOi91c3IvdWNiL2JpbgpleHBvcnQgUEFU
SAoKIyBGaW5kIHRoZSBjb3JyZWN0IHBzIHRvIHVzZS4gIE9uIHNvbGFyaXMgL3Vzci91Y2IvcHMg
aXMgdGhlIG9uZSB0byB1c2UKIyBvbiBldmVyeXRoaW5nIGVsc2UsIHdlIGhvcGUgdGhlIGZpcnN0
IG9uZSBpbiB0aGUgcGF0aCBpcyB0aGUgcmlnaHQgb25lLgppZiBbIC14IC91c3IvdWNiL3BzIF0g
OyB0aGVuCiAgUFM9L3Vzci91Y2IvcHMKZWxzZQogIFBTPXBzCmZpCgojIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK
IwojIEZpZ3VyZSBvdXQgaWYgd2UgYXJlIHJ1bm5pbmcgdW5kZXIgYW4gYWNjZXB0YWJsZSBzaGVs
bCAKIyAoYmFzaCwga3NoLCB6c2gpIHdoaWNoIHN1cHBvcnRzIGZ1bmN0aW9ucy4KIwojIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMKU0hFTExTPSJiYXNoIGtzaCB6c2giCiMgY291bnQgaG93IG1hbnkgdGltZXMgd2Un
dmUgdHJpZWQgdG8gcmVzdGFydApUUklFUz0kMgppZiBbIC16ICIkVFJJRVMiIF0gOyB0aGVuCiAg
VFJJRVM9MApmaQojIGJhc2ggYW5kIHpzaCBhcmUgZWFzeSB0byB0ZXN0LgppZiBbIC16ICIkQkFT
SF9WRVJTSU9OIiAtYSAteiAiJFpTSF9WRVJTSU9OIiBdIDsgdGhlbgogICMgd2UgYXJlbid0IHJ1
bm5pbmcgdW5kZXIgYmFzaCBvciB6c2gsIGNoZWNrIGZvciBrc2gKICBpZiBbIC16ICJgZWNobyAk
e0VOVn0gfCBncmVwIGtzaGAiIF0gOyB0aGVuCiAgICAjIHN0aWxsIG1pZ2h0IGJlIGtzaC4gIE9u
ZSBsYXN0IHNob3QuCiAgICBpZiBbIC16ICJgJHtQU30gJCQgfCB0YWlsIC0xIHwgZ3JlcCBrc2hg
IiBdIDsgdGhlbgogICAgICAjIGFzIGZhciBhcyBJIGNhbiB0ZWxsIHdlIGFyZW4ndCBpbiBhbiBh
cHByb3ZlZCBzaGVsbAogICAgICBUUklFUz1gZXhwciAkVFJJRVMgKyAxYAogICAgICAjIGhhdmUg
d2UgdHJpZWQgdG9vIG1hbnkgdGltZXM/CiAgICAgIGlmIFsgJFRSSUVTIC1ndCA0IF0gOyB0aGVu
IAogICAgICAgIGVjaG8gIkVSUk9SOiBlbmRsZXNzIGxvb3AgZGlzY292ZXJlZCBpbiAkMCBbRVJS
T1JdIgogICAgICAgIGV4aXQgMQogICAgICBmaQogICAgICBmb3IgdHJ5IGluICRTSEVMTFMgOyBk
bwogICAgICAgIGV4PWB3aGljaCAkdHJ5YAogICAgICAgIGlmIFsgISAteiAiJHtleH0iIC1hIC14
ICIke2V4fSIgXSA7IHRoZW4KICAgICAgICAgIGlmICR7ZXh9ICQwICQxICRUUklFUyA7IHRoZW4K
ICAgICAgICAgICAgIyBpdCB3b3JrZWQsIHdlIGNhbiBleGl0CiAgICAgICAgICAgIGV4aXQgMAog
ICAgICAgICAgZWxzZQogICAgICAgICAgICAjIGl0IGZhaWxlZCBmb3Igc29tZSByZWFzb24gdGhh
dCBzaG91bGQgaGF2ZSBiZWVuIHByaW50ZWQKICAgICAgICAgICAgIyBieSB0aGUgc2NyaXB0CiAg
ICAgICAgICAgIGV4aXQgMQogICAgICAgICAgZmkKICAgICAgICBmaQogICAgICBkb25lCiAgICAg
ICMgaWYgd2UgZ290IGhlcmUsIHdlIHRyaWVkIGV2ZXJ5dGhpbmcuCiAgICAgIGVjaG8gIkVSUk9S
OiAkMCByZXF1aXJlcyBiYXNoLCB6c2gsIG9yIGtzaCB0byBydW4uCVtGQUxJRURdIgogICAgICBl
eGl0IDEKICAgIGZpCiAgICAjaWYgd2UgZ290IGhlcmUgb3IgYmVsb3csIHdlcmUgaW4gYW4gYXBw
cm92ZWQgc2hlbGwuCiAgZmkKZmkKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgoKIyBOYW1lIG9mIHVzZXIgdG8g
cnVuIGFzOgojCkJPSU5DVVNFUj1ib2luYwoKIyBXb3JraW5nIGRpcmVjdG9yeS4gIENvdWxkIGJl
IC9ob21lL2JvaW5jLCAvdmFyL2xpYi9ib2luYywgZXRjLi4KIyBUaGUgcmVhc29uIEkgcHJlZmVy
IC92YXIvbGliL2JvaW5jIGlzIHRoYXQgdGhpcyB3b3JrcyBiZXN0IGZvciBhIAojIGNsdXN0ZXIg
b2YgY29tcHV0ZXJzIHdoZXJlIC9ob21lL2FueXRoaW5nIG1pZ2h0IGJlIHNoYXJlZCBiZXR3ZWVu
IG1hY2hpbmVzCiMKQk9JTkNESVI9L3Zhci9saWIvYm9pbmMKCiMgTmFtZSBvZiB0aGUgY2xpZW50
IGV4ZWN1dGFibGUuICBUaGlzIGlzIHRoZSBmaWxlICJib2luYyIgaWYgeW91IAojIHVucGFja2Vk
IHRoZSBkb3dubG9hZCBmaWxlICBib2luY19NLm1tLnJyX2k2ODYtcGMtbGludXgtZ251LnNoLAoj
IGJ1dCBJIGxpa2UgdG8gcmVuYW1lIGl0IGFuZCBwdXQgaXQgaW4gYSBwdWJsaWMgcGxhY2UuCiMg
KEhpbnQ6IG1vdmUgYm9pbmNtZ3IgdG8gL3Vzci9sb2NhbC9iaW4gdG9vIHNvIGFueW9uZSBjYW4g
ZWFzaWx5IHVzZSBpdCkuCiMKQk9JTkNFWEVfTkFNRT1ib2luY19jbGllbnQKQk9JTkNFWEU9JHti
aW5kaXJ9LyR7Qk9JTkNFWEVfTkFNRX0KQk9JTkNDTURfTkFNRT1ib2luY2NtZApCT0lOQ0NNRD0k
e2JpbmRpcn0vJHtCT0lOQ0NNRF9OQU1FfQoKIyBMb2cgZmlsZXMgKHlvdSBzaG91bGQgcm90YXRl
IHRoZXNlIG9jY2FzaW9uYWxseSkKIwpMT0dGSUxFPS92YXIvbG9nLyR7Qk9JTkNFWEVfTkFNRX0u
bG9nCkVSUk9STE9HPS92YXIvbG9nLyR7Qk9JTkNFWEVfTkFNRX1fZXJyLmxvZwoKIyBQSUQgZmls
ZQpQSURGSUxFPS92YXIvcnVuLyR7Qk9JTkNFWEVfTkFNRX0ucGlkCgojIEJPSU5DIG9wdGlvbnM6
IGZvciB0aGUgY29tbWFuZCBsaW5lIHdoZW4gcnVubmluZyB0aGUgY2xpZW50LiAgCiMgQmUgYXdh
cmUgdGhhdCAtLWFsbG93X3JlbW90ZV9ndWlfcnBjIG9wZW5zIHVwIHlvdXIgbWFjaGluZSB0byB0
aGUgd29ybGQhCiMKIyBBZGQgdGhpcyBvcHRpb24gaWYgeW91IHdhbnQgdG8gYWxsb3cgYm9pbmMg
bWFuYWdlciBjb25uZWN0aW9ucyBmcm9tIHJlbW90ZQojIG1hY2hpbmVzCiNCT0lOQ09QVFM9Ii0t
YWxsb3dfcmVtb3RlX2d1aV9ycGMiICAgCiMgQWRkIHRoaXMgb3B0aW9uIGlmIHlvdSB3YW50IHRv
IHR1cm4gb2ZmIGFsbCBsb2dnaW5nCiNCT0lOQ09QVFM9Ii0tZGFlbW9uIgojIEFkZCB0aGlzIG9w
dGlvbiBpZiB5b3Ugd2FudCB0byByZWRpcmVjdCBsb2dnaW5nIHRvIHRoZSBmaWxlcyBzdGRlcnJk
YWUudHh0CiMgYW5kIHN0ZG91dGRhZS50eHQgaW4gQk9JTkNESVIgcmF0aGVyIHRoYW4gTE9HRklM
RSBhbmQgRVJST1JMT0cKI0JPSU5DT1BUUz0iLS1yZWRpcmVjdGlvIgojIEFkZCB0aGlzIG9wdGlv
biBpZiB5b3Ugd2FudCB0byBydW4gb25seSB3aGVuIG5vIGxvZ2lucyBmcm9tIGFueXdoZXJlIGFy
ZSAKIyBhY3RpdmUKI0JPSU5DT1BUUz0iLS1jaGVja19hbGxfbG9naW5zIgojIFRoZSBkZWZhdWx0
IGlzIG5vIG9wdGlvbnMuCkJPSU5DT1BUUz0KCiMgU3Vic3lzIGxvY2sgZmlsZSAuLi4KCiMgSWYg
dGhlcmUgaXMgdGhlIHN1YnN5cyBkaXJlY3RvcnksIHRoZW4gdXNlIGl0IC4uLgppZiBbIC1kIC92
YXIvbG9jay9zdWJzeXMvIF07IHRoZW4KICAgICAgICBMT0NLRklMRT0vdmFyL2xvY2svc3Vic3lz
LyR7Qk9JTkNFWEVfTkFNRX0KZWxpZiBbIC1kIC92YXIvbG9jayBdOyB0aGVuCiAgICAgICAgTE9D
S0ZJTEU9L3Zhci9sb2NrLyR7Qk9JTkNFWEVfTkFNRX0KZWxpZiBbIC1kIC92YXIvcnVuIF07IHRo
ZW4KICAgICAgICBMT0NLRklMRT0vdmFyL3J1bi8ke0JPSU5DRVhFX05BTUV9LmxvY2sKZmkKCiMg
c3Ugb24gTGludXggc2VlbXMgdG8gbmVlZCB0aGlzIHRvIGJlIHNldCB0byB3b3JrIHByb3Blcmx5
IGluIGEgc2NyaXB0CmV4cG9ydCBURVJNPWR1bWIKCgojIwojIEluaXQgc2NyaXB0IGZ1bmN0aW9u
IGxpYnJhcnkuICAgVGhpcyBzdHVmZiBpcyBSZWQgSGF0IHNwZWNpZmljLAojIGJ1dCBpZiB0aGUg
ZnVuY3Rpb25zIGFyZSBub3QgZm91bmQgd2UgY3JlYXRlIG91ciBvd24gc2ltcGxlIHJlcGxhY2Vt
ZW50cy4KIyAoVGhlIGlkZWEgZm9yIHJlcGxhY2luZyB0aGUgZnVuY3Rpb25zIGNvbWVzIGZyb20g
T3BlbkFGUy4gIFRoYW5rcyBndXlzISkKCmlmIFsgLWYgL2V0Yy9yYy5kL2luaXQuZC9mdW5jdGlv
bnMgXSA7IHRoZW4KICAgICAgLiAvZXRjL3JjLmQvaW5pdC5kL2Z1bmN0aW9ucwplbHNlCiAgICAg
IGlmIHByaW50ZiAiSGVsbG8iID4vZGV2L251bGwgMj4vZGV2L251bGwgOyB0aGVuCiAgICAgICAg
ICAgIyBwcmludGYgd29ya3MKICAgICAgICAgICBwcmludGNvbD0ncHJpbnRmIFwwMzNbNjBHJXMn
CiAgICAgIGVsaWYgZWNobyAtZW4gIkhlbGxvIiA+L2Rldi9udWxsIDI+L2Rldi9udWxsIDsgdGhl
bgogICAgICAgICAgICMgZWNobyAtZW4gd29ya3MKICAgICAgICAgICBwcmludGNvbD0nZWNobyAt
ZW4gXDAzM1s2MEcnCiAgICAgIGVsc2UKICAgICAgICAgICAjIG5vIHByaW50ZiBtYWtlIGRvIHdp
dGggZWNobyAtbgogICAgICAgICAgIHByaW50Y29sPSJlY2hvIC1uIC4uLi4uLi4uLi4iCiAgICAg
IGZpCiAgICAgIGZ1bmN0aW9uIGVjaG9fc3VjY2VzcyAoKSB7ICRwcmludGNvbCAiW09LXSIgOyB9
CiAgICAgIGZ1bmN0aW9uIGVjaG9fZmFpbHVyZSAoKSB7ICRwcmludGNvbCAiW0ZBSUxFRF0iIDsg
fQpmaQoKZnVuY3Rpb24gZWNob193YXJuaW5nICgpIHsKCXByaW50ZiAnXDAzM1s2MEclcycgIltX
QVJOSU5HXSIKfQpmdW5jdGlvbiBraWxscHJvYygpIHsKCVBJRD1gbG9jYWxfcGlkb2YgJDFgCglb
ICRQSUQgXSAmJiBraWxsICRQSUQgCn0KCiMgY2hlY2sgaWYgd2UgaGF2ZSBwaWRvZi4gIElmIG5v
dCB1c2UgcHMgYW5kIGdyZXAgZm9yIHRoZSBzYW1lIGpvYi4KaWYgWyAteCAvc2Jpbi9waWRvZiBd
IDsgdGhlbiAKICBmdW5jdGlvbiBsb2NhbF9waWRvZigpIHsgCiAgICBwaWRvZiAtcyAteCAtbyAk
JCAtbyAkUFBJRCAtbyAlUFBJRCAkMSAKICB9IAplbHNlCiAgZnVuY3Rpb24gbG9jYWxfcGlkb2Yo
KSB7CiAgICAke1BTfSB4YXVnd3cgfCBzZWQgJ3MvJC8gLycgfCBncmVwICJbIC9dJDEgIiB8IGdy
ZXAgLXYgJCQgfCBncmVwIC12ICRQUElEIHwgZ3JlcCAtdiAlUFBJRCB8IGdyZXAgLXYgZ3JlcCB8
IGF3ayAne3ByaW50ICQyfScKICB9CmZpCgojCiMgQ2hlY2sgaWYgd2UgaGF2ZSBydW51c2VyLCBz
aW5jZSBpdCB3aWxsIG5ldmVyIGhhbmcgd2FpdGluZyBmb3IgYSBwYXNzd29yZC4gIAojIElmIHdl
IGRvbid0IGhhdmUgaXQsIHVzZSBzdSBmb3IgdGhlIHNhbWUgam9iLgojIAppZiBbICEgLXggL3Ni
aW4vcnVudXNlciBdIDsgdGhlbgogIFJVTlVTRVI9c3UKZWxzZSAKICBSVU5VU0VSPXJ1bnVzZXIK
ZmkKCiMgU29tZSBhZGRpdGlvbmFsIHBsYWNlcyB0byBsb29rIGZvciBleGVjdXRhYmxlcwojIChT
aG91bGQgZG8gdGhpcyBhZnRlciBpbml0LmQvZnVuY3Rpb25zIGFuZCBzeXNjb25maWcvYm9pbmMs
IHdoaWNoIHNldHMgUEFUSCkKZXhwb3J0IFBBVEg9JHtQQVRIfToke2V4ZWNfcHJlZml4fS9zYmlu
OiR7YmluZGlyfQoKCiMjIExvb2sgZm9yIGFueSBsb2NhbCBjb25maWd1cmF0aW9uIHNldHRpbmdz
IHdoaWNoIG92ZXJyaWRlIGFsbCBhYm92ZQojIyBOb3RlOiAuL2JvaW5jLWNsaWVudC5jb25mIGFu
ZCAuL2JvaW5jLmNvbmYgYXJlIGZvciB0ZXN0aW5nIHB1cnBvc2VzCmNvbmZpZ19maWxlcz0iCi4v
Ym9pbmMtY2xpZW50LmNvbmYKLi9ib2luYy5jb25mCi9ldGMvc3lzY29uZmlnL2JvaW5jLWNsaWVu
dAovZXRjL2RlZmF1bHQvYm9pbmMtY2xpZW50Ci9ldGMvYm9pbmMtY2xpZW50LmNvbmYKJHtzeXNj
b25mZGlyfS9zeXNjb25maWcvYm9pbmMtY2xpZW50CiR7c3lzY29uZmRpcn0vZGVmYXVsdC9ib2lu
Yy1jbGllbnQKJHtzeXNjb25mZGlyfS9ib2luYy1jbGllbnQuY29uZgovZXRjL3N5c2NvbmZpZy9i
b2luYwovZXRjL2RlZmF1bHQvYm9pbmMKL2V0Yy9ib2luYy5jb25mCiR7c3lzY29uZmRpcn0vc3lz
Y29uZmlnL2JvaW5jCiR7c3lzY29uZmRpcn0vZGVmYXVsdC9ib2luYwoke3N5c2NvbmZkaXJ9L2Jv
aW5jLmNvbmYKbm9uZQoiCgojIyBmaW5kIHRoZSBjb3JyZWN0IGNvbmZpZyBmaWxlCmZvciBjb25m
aWdfZmlsZSBpbiAkY29uZmlnX2ZpbGVzIDsgZG8KICBpZiBbIC1mICR7Y29uZmlnX2ZpbGV9IF0g
OyB0aGVuIAogICAgYnJlYWs7IAogIGZpCmRvbmUKCmlmIFsgIiR7Y29uZmlnX2ZpbGV9IiAhPSAi
bm9uZSIgXTsgdGhlbgogICMgY2hlY2sgd2hldGhlciB3ZSBhcmUgdXNpbmcgYSBkZXByZWNhdGVk
IG5hbWUKICBpZiBbICJ4JE5PV0FSTklORyIgIT0gInh5ZXMiIC1hIC16ICJgZWNobyAke2NvbmZp
Z19maWxlfSB8IGdyZXAgYm9pbmMtY2xpZW50YCIgXTsgdGhlbgogICAgZm49YGJhc2VuYW1lICRj
b25maWdfZmlsZWAKICAgIGRuPWBkaXJuYW1lICRjb25maWdfZmlsZWAKICAgIG5ld25hbWU9YGVj
aG8gJGZuIHwgc2VkICdzL2JvaW5jL2JvaW5jLWNsaWVudC8nYAogICAgZWNobyAtbiAiVGhlIGZp
bGVuYW1lICcke2NvbmZpZ19maWxlfScgaXMgZGVwcmVjYXRlZC4uLiIKICAgIGVjaG9fd2Fybmlu
ZwogICAgZWNobwogICAgZWNobyAtbiAiUGxlYXNlIHJlbmFtZSB5b3VyIGNvbmZpZyBmaWxlIHRv
ICcke2RufS8ke25ld25hbWV9JyIKICAgIGVjaG9fd2FybmluZwogICAgZWNobwogIGZpCiAgIyBl
eGVjdXRlIHRoZSBjb25maWcgZmlsZS4KICAuICR7Y29uZmlnX2ZpbGV9CmZpCgoKIyMgQWRkICR7
Qk9JTkNESVJ9IHRvIHRoZSBwYXRoLCBqdXN0IGluIGNhc2UgdGhlIGV4ZWN1dGFibGVzIGFyZSBz
dG9yZWQgdGhlcmUuCmV4cG9ydCBQQVRIPSR7UEFUSH06JHtCT0lOQ0RJUn0KCiMjIENyZWF0ZSB0
aGUgd29ya2luZyBkaXJlY3RvcnkgaWYgaXQgZG9lc24ndCBleGlzdDoKaWYgWyAhIC1kICRCT0lO
Q0RJUiBdOyB0aGVuCiAgZWNobyAtbiAiQ3JlYXRpbmcgJEJPSU5DRElSICIKICBpZiBta2RpciAt
cCAkQk9JTkNESVIgMj4vZGV2L251bGwgOyB0aGVuCiAgICBpZiBbIC1uICIkQk9JTkNVU0VSIiBd
IDsgdGhlbgogICAgICBpZiBjaG93biAkQk9JTkNVU0VSICRCT0lOQ0RJUiA7IHRoZW4KICAgICAg
ICBlY2hvX3N1Y2Nlc3MKICAgICAgZWxzZQogICAgICAgIGVjaG9fZmFpbHVyZQogICAgICAgIGVj
aG8KICAgICAgICBleGl0IDcKICAgICAgZmkKICAgIGZpCiAgZWxzZQogICAgZWNob19mYWlsdXJl
CiAgICBlY2hvCiAgICBleGl0IDcKICBmaQpmaQoKIyMgQ2hlY2sgd2hhdCB1c2VyIHdlIGFyZSBy
dW5uaW5nIGFzOgojIHdlIGNhbid0IHJlbHkgb24gdGhlIGV4aXN0ZW5jZSBvZiAid2hvYW1pIiBv
ciAibG9nbmFtZSIsIHNvIHdlJ2xsIHVzZSBwcy4KVVNFUk5PVz1gJHtQU30gdSAkJCB8IHRhaWwg
LTEgfCBhd2sgJ3twcmludCAkMX0nYAppZiBbIC16ICIkQk9JTkNVU0VSIiBdIDsgdGhlbgogIEJP
SU5DVVNFUj0iJHtVU0VSTk9XfSIKZmkKCiMjIENoZWNrIHRoYXQgQk9JTkNVU0VSIGFjdHVhbGx5
IGV4aXN0cwppZiBbIC16ICJgZ3JlcCBeJHtCT0lOQ1VTRVJ9OiAvZXRjL3Bhc3N3ZGAiIF0gOyB0
aGVuCiAgaWYgWyAteiAiYHlwY2F0IHBhc3N3ZCAyPi9kZXYvbnVsbCB8IGdyZXAgXiR7Qk9JTkNV
U0VSfTpgIiBdIDsgdGhlbiAKICAgIGlmIFsgLXogImBuaWR1bXAgcGFzc3dkIC8gMj4vZGV2L251
bGwgfCBncmVwIF4ke0JPSU5DVVNFUn06YCIgXSA7IHRoZW4gCiAgICAgICBlY2hvIC1uIEVSUk9S
OiB1c2VyICR7Qk9JTkNVU0VSfSBkb2VzIG5vdCBleGlzdC4KICAgICAgIGVjaG9fZmFpbHVyZQog
ICAgICAgZWNobwogICAgICAgZXhpdCA5CiAgICBmaQogIGZpCmZpCgojIGlmIHdlIGFyZSBydW5u
aW5nIGFzIHJvb3QsIHByaW50IGEgd2FybmluZy4KaWYgWyAieCROT1dBUk5JTkciICE9ICJ4eWVz
IiAtYSAgIiRCT0lOQ1VTRVIiID0gInJvb3QiIF0gOyB0aGVuCiAgZWNobyAtbiBXQVJOSU5HOiBi
b2luYy1jbGllbnQgd2lsbCBiZSBydW5uaW5nIGFzIHJvb3QKICBlY2hvX3dhcm5pbmcKICBlY2hv
CmZpCgojIGNoZWNrIHdoZXRoZXIgd2Ugd2lsbCBiZSBhYmxlIHRvIHdyaXRlIHRvIHRoZSBCT0lO
QyBkaXJlY3RvcnkKaWYgWyAiJHtVU0VSTk9XfSIgPSAiJHtCT0lOQ1VTRVJ9IiBdIDsgdGhlbgog
IGlmIFsgISAtTyAke0JPSU5DRElSfSBdIDsgdGhlbgogICAgZWNobyAtbiBFUlJPUjogJEJPSU5D
RElSIGlzIG5vdCBvd25lZCBieSAkQk9JTkNVU0VSLgogICAgZWNob19mYWlsdXJlCiAgICBlY2hv
CiAgICBleGl0IDgKICBmaQplbGlmIFsgIiR7VVNFUk5PV30iID0gInJvb3QiIF0gOyB0aGVuCiAg
Y21kPSJpZiB0ZXN0IC1PICR7Qk9JTkNESVJ9IDsgdGhlbiBlY2hvIHN1Y2Nlc3MgOyBmaSIKICBp
ZiBbIC16ICJgc3UgLXMgL2Jpbi9zaCAtbCAkQk9JTkNVU0VSIC1jIFwiJGNtZFwiYCIgXTsgdGhl
bgogICAgZWNobyAtbiBFUlJPUjogJEJPSU5DRElSIGlzIG5vdCBvd25lZCBieSAkQk9JTkNVU0VS
LgogICAgZWNob19mYWlsdXJlCiAgICBlY2hvCiAgICBleGl0IDgKICBmaQpmaQoKCiMjIExvY2F0
ZSB0aGUgZXhlY3V0YWJsZSwgZWl0aGVyIGJvaW5jX2NsaWVudCwgYm9pbmMsIAojIyBvciBib2lu
Y19NLm1tXy4uLi4gd2l0aCBoaWdoZXN0IHZlcnNpb24gbnVtYmVyCiMjIFdlIG9ubHkgZG8gdGhp
cyBpZiBCT0lOQ0VYRSBzZXQgYWJvdmUgaXNuJ3QgZm91bmQgb3IgaXMgbm90IGV4ZWN1dGFibGUu
CmlmIFsgISAteCAkQk9JTkNFWEUgXTsgdGhlbgogIEJPSU5DRVhFPWAkV0hJQ0ggJEJPSU5DRVhF
X05BTUUgMj4vZGV2L251bGxgCiAgaWYgWyAhIC14ICIkQk9JTkNFWEUiIF07IHRoZW4KICAgIEJP
SU5DRVhFPWAkV0hJQ0ggYm9pbmMgMj4vZGV2L251bGxgCiAgZmkKZmkKCmlmIFsgISAteCAiJEJP
SU5DRVhFIiBdOyB0aGVuCiAgZWNobyAtbiAiQ2Fubm90IGZpbmQgYW4gZXhlY3V0YWJsZSBmb3Ig
dGhlIEJPSU5DIGNsaWVudC4iCiAgZWNob19mYWlsdXJlCiAgZWNobyAKICBleGl0IDIKZmkKCiMj
IGJvaW5jY21kIHdpbGwgcHJvYmFibHkgYmUgaW4gdGhlIHNhbWUgcGxhY2UgYXMgdGhlIGJvaW5j
X2NsaWVudAppZiBbICEgLXggJEJPSU5DQ01EIF07IHRoZW4KICBCT0lOQ0NNRD1gJFdISUNIICRC
T0lOQ0NNRF9OQU1FIDI+L2Rldi9udWxsYAogIGlmIFsgISAteCAiJEJPSU5DQ01EIiBdOyB0aGVu
CiAgICBCT0lOQ0NNRD1gZGlybmFtZSAkQk9JTkNFWEUgMj4vZGV2L251bGxgLyR7Qk9JTkNDTURf
TkFNRX0KICBmaQpmaQoKCmlmIFsgIngkTk9XQVJOSU5HIiAhPSAieHllcyIgLWEgISAteCAkQk9J
TkNDTUQgXTsgdGhlbgogIGVjaG8gLW4gIkNhbm5vdCBmaW5kIHRoZSBib2luY2NtZCBleGVjdXRh
YmxlLiAgUmVsb2FkIHdpbGwgZmFpbC4iCiAgZWNob193YXJuaW5nCiAgZWNobwpmaQoKIyMgRnVu
Y3Rpb25zOiAkMSBpcyBvbmUgb2YgIHN0YXJ0fHN0b3B8c3RhdHVzfHJlbG9hZHxyZXN0YXJ0Cgpl
eHBvcnQgTk9XQVJOSU5HPXllcwoKY2FzZSAiJDEiIGluCiAgc3RhcnQpCiAgICAgICAgY2QgJEJP
SU5DRElSCiAgICAgICAgUElEPWBsb2NhbF9waWRvZiAkQk9JTkNFWEVfTkFNRWAKCiAgICAgICAg
aWYgWyAtZiBsb2NrZmlsZSAtbyAtZiAkTE9DS0ZJTEUgXSA7IHRoZW4KICAgICAgICAgIGlmIFsg
LXogIiRQSUQiIF0gOyB0aGVuCiAgICAgICAgICAgICMgYSBsb2NrZmlsZSBleGlzdHMsIGJ1dCBi
b2luY19jbGllbnQgaXNuJ3QgcnVubmluZwogICAgICAgICAgICAvYmluL3JtIC1mIGxvY2tmaWxl
ICRMT0NLRklMRSAkUElERklMRSAyPiYxID4gL2Rldi9udWxsCiAgICAgICAgICBlbHNlIAogICAg
ICAgICAgICBlY2hvIC1uICJBbm90aGVyIGluc3RhbmNlIG9mIEJPSU5DIGlzIHJ1bm5pbmcgKFBJ
RD0ke1BJRH0pLiIKICAgICAgICAgICAgZWNob19mYWlsdXJlCiAgICAgICAgICAgIGVjaG8gCiAg
ICAgICAgICAgIGV4aXQgMQogICAgICAgICAgZmkKICAgICAgICBmaQoKICAgICAgICBpZiBbICEg
LWQgcHJvamVjdHMgXSA7IHRoZW4KICAgICAgICAgIGVjaG8gLW4gIlRoZSBCT0lOQyBjbGllbnQg
cmVxdWlyZXMgaW5pdGlhbGl6YXRpb24uIgogICAgICAgICAgZWNob193YXJuaW5nCiAgICAgICAg
ICBlY2hvIAogICAgICAgIGZpCgogICAgICAgIHRvdWNoICR7TE9HRklMRX0gJHtFUlJPUkxPR30K
ICAgICAgICBOT0NPUkU9InVsaW1pdCAtYyAwIDI+JjEgPi9kZXYvbnVsbCIKICAgICAgICBlY2hv
IC1uICJTdGFydGluZyBCT0lOQyBjbGllbnQgYXMgYSBkYWVtb246ICAiCiAgICAgICAgaWYgWyAi
JHtCT0lOQ1VTRVJ9IiA9ICIke1VTRVJOT1d9IiBdIDsgdGhlbiAKICAgICAgICAgICAjIEkgYW0g
Qk9JTkNVU0VSLiAgSnVzdCBzdGFydCBjbGllbnQgYXMgbWUuCiAgICAgICAgICAgJE5PQ09SRQog
ICAgICAgICAgICRCT0lOQ0VYRSAkQk9JTkNPUFRTID4+JExPR0ZJTEUgMj4+JEVSUk9STE9HICYK
ICAgICAgICBlbHNlCiAgICAgICAgICAgY2hvd24gJHtCT0lOQ1VTRVJ9ICR7TE9HRklMRX0gJHtF
UlJPUkxPR30KICAgICAgICAgICAke1JVTlVTRVJ9IC1zIC9iaW4vc2ggLWwgJEJPSU5DVVNFUiAt
YyAiJE5PQ09SRSA7ICRCT0lOQ0VYRSAkQk9JTkNPUFRTID4+JExPR0ZJTEUgMj4+JEVSUk9STE9H
IiAyPi9kZXYvbnVsbCA+IC9kZXYvbnVsbCAmCiAgICAgICAgZmkKICAgICAgICBzbGVlcCAzICAK
ICAgICAgICBQSUQ9YGxvY2FsX3BpZG9mICRCT0lOQ0VYRV9OQU1FYAogICAgICAgIGlmIFsgJFBJ
RCBdOyB0aGVuCiAgICAgICAgICBlY2hvICRQSUQgPiAkUElERklMRQogICAgICAgICAgdG91Y2gg
JExPQ0tGSUxFICYmIGVjaG9fc3VjY2VzcyB8fCAoIGVjaG9fZmFpbHVyZSA7IGVjaG8gKQogICAg
ICAgIGZpCiAgICAgICAgZWNobwogICAgICAgIDs7CiAgc3RvcCkKICAgICAgICBjZCAkQk9JTkNE
SVIKICAgICAgICBpZiBbICEgLWYgJFBJREZJTEUgLWEgISAtZiBsb2NrZmlsZSAtYSAhIC1mICRM
T0NLRklMRSBdIDsgdGhlbgogICAgICAgICAgZWNobyAtbiAiQk9JTkMgaXMgbm90IHJ1bm5pbmcg
KG5vIGxvY2tmaWxlcyBmb3VuZCkuIgogICAgICAgICAgZWNob19zdWNjZXNzCiAgICAgICAgZWxz
ZQogICAgICAgICAgZWNobyAtbiAiU3RvcHBpbmcgQk9JTkMgY2xpZW50IGRhZW1vbjogICIgICAg
CiAgICAgICAgICBpZiBbIC1mICRQSURGSUxFIF0gOyB0aGVuCiAgICAgICAgICAgIFBJRD1gY2F0
ICRQSURGSUxFYAogICAgICAgICAgICBpZiBbIC1uICJgJHtQU30gJFBJRCB8IGdyZXAgJFBJRGAi
IF0gOyB0aGVuCiAgICAgICAgICAgICAga2lsbCBgY2F0ICRQSURGSUxFYAogICAgICAgICAgICAg
IHNsZWVwIDUKICAgICAgICAgICAgZmkKICAgICAgICAgICAgaWYgWyAteiAiYCR7UFN9ICRQSUQg
fCBncmVwICRQSURgIiBdIDsgdGhlbgogICAgICAgICAgICAgIGVjaG9fc3VjY2VzcwogICAgICAg
ICAgICBlbHNlCiAgICAgICAgICAgICAgZWNob19mYWlsdXJlCiAgICAgICAgICAgICAgZWNobwog
ICAgICAgICAgICBmaQogICAgICAgICAgZWxzZQogICAgICAgICAgICBraWxscHJvYyAkQk9JTkNF
WEVfTkFNRSAgJiYgZWNob19zdWNjZXNzICB8fCBlY2hvX2ZhaWx1cmUgCiAgICAgICAgICBmaQog
ICAgICAgICAgIyBjbGVhbiB1cCBpbiBhbnkgY2FzZQogICAgICAgICAgcm0gLWYgbG9ja2ZpbGUg
Mj4vZGV2L251bGwgPi9kZXYvbnVsbAogICAgICAgICAgcm0gLWYgJExPQ0tGSUxFIDI+L2Rldi9u
dWxsCiAgICAgICAgICBybSAtZiAkUElERklMRSAyPi9kZXYvbnVsbAogICAgICAgIGZpCiAgICAg
ICAgZWNobwogICAgICAgIDs7CiAgcmVsb2FkKQogICAgICAgIGlmIFsgISAtZiBsb2NrZmlsZSAt
YSAhIC1mICRMT0NLRklMRSBdIDsgdGhlbgogICAgICAgICAgZWNobyAgIkJPSU5DIGlzIG5vdCBy
dW5uaW5nIChubyBsb2NrZmlsZXMgZm91bmQpIC0tIHN0YXJ0aW5nIHNlcnZpY2UuIgogICAgICAg
ICAgJDAgc3RhcnQKICAgICAgICBlbHNlCiAgICAgICAgICAkQk9JTkNDTUQgLS1yZWFkX2NjX2Nv
bmZpZyA+PiRMT0dGSUxFIDI+PiRFUlJPUkxPRyAmJiBlY2hvX3N1Y2Nlc3MgfHwgJDAgcmVzdGFy
dAogICAgICAgIGZpCiAgICAgICAgOzsKICByZXN0YXJ0KQogICAgICAgICQwIHN0b3AKICAgICAg
ICAkMCBzdGFydAogICAgICAgIDs7CgogIHN0YXR1cykKICAgICAgICBQSUQ9YGNhdCAkUElERklM
RSAyPi9kZXYvbnVsbGAKICAgICAgICBpZiBbICIkUElEIiAhPSAiIiBdOyB0aGVuCiAgICAgICAg
ICAjIGlzIGl0IHN0aWxsIHJ1bm5pbmc/CiAgICAgICAgICBpZiBbIC16ICJgJHtQU30gJFBJRCB8
IGdyZXAgJFBJRGAiIF07IHRoZW4KICAgICAgICAgICAgIyBub3QgcnVubmluZy4gIFRyeSB0aGUg
b3RoZXIgdGVzdHMuCiAgICAgICAgICAgIFBJRD0iIgogICAgICAgICAgZmkKICAgICAgICBmaQog
ICAgICAgIGlmIFsgIiRQSUQiID09ICIiIF07IHRoZW4KICAgICAgICAgIFBJRD1gbG9jYWxfcGlk
b2YgJEJPSU5DRVhFX05BTUVgCiAgICAgICAgZmkKICAgICAgICBpZiBbICIkUElEIiA9PSAiIiBd
OyB0aGVuCiAgICAgICAgICBQSUQ9YGxvY2FsX3BpZG9mICRCT0lOQ0VYRWAKICAgICAgICBmaQog
ICAgICAgIGlmIFsgIiRQSUQiICE9ICIiIF07IHRoZW4KICAgICAgICAgIGVjaG8gIkJPSU5DIGNs
aWVudCBpcyBydW5uaW5nIChwaWQgJFBJRCkuIgogICAgICAgIGVsc2UKICAgICAgICAgIGlmIFsg
LWYgJEJPSU5DRElSL2xvY2tmaWxlIC1vIC1mICRMT0NLRklMRSBdOyB0aGVuIAogICAgICAgICAg
ICAgZWNobyAiQk9JTkMgaXMgc3RvcHBlZCBidXQgbG9ja2ZpbGUocykgZXhpc3QuIgogICAgICAg
ICAgICAgZXhpdCAyCiAgICAgICAgICBlbHNlIAogICAgICAgICAgICAgZWNobyAiQk9JTkMgY2xp
ZW50IGlzIHN0b3BwZWQuIgogICAgICAgICAgICAgZXhpdCAzCiAgICAgICAgICBmaQogICAgICAg
IGZpCiAgICAgICAgOzsKICAgICAgICAKICAjIEFMVExpbnV4IHNwZWNpZmljIGZ1bmN0aW9ucy4K
ICBjb25kc3RvcCkKICAgICAgICBpZiBbIC1lICIkTE9DS0ZJTEUiIF07IHRoZW4KICAgICAgICAg
ICAgJDAgc3RvcAogICAgICAgIGZpCiAgICAgICAgOzsKCiAgY29uZHJlc3RhcnQpCiAgICAgICAg
aWYgWyAtZSAiJExPQ0tGSUxFIiBdOyB0aGVuCiAgICAgICAgICAgICQwIHJlc3RhcnQKICAgICAg
ICBmaQogICAgICAgIDs7CgogIGNvbmRyZWxvYWQpCiAgICAgICAgaWYgWyAtZSAiJExPQ0tGSUxF
IiBdOyB0aGVuCiAgICAgICAgICAgICQwIHJlbG9hZAogICAgICAgIGZpCiAgICAgICAgOzsKCiAg
KikKICAgICAgICBlY2hvICJVc2FnZTogYm9pbmMge3N0YXJ0fHN0b3B8cmVzdGFydHxyZWxvYWR8
Y29uZHN0b3B8Y29uZHJlc3RhcnR8Y29uZHJlbG9hZHxzdGF0dXN9IgogICAgICAgIGV4aXQgMQpl
c2FjCgpleGl0CgojRU9GIwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>