<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>39146</bug_id>
          
          <creation_ts>2010-05-14 19:16:53 -0700</creation_ts>
          <short_desc>[Qt] Pass all web notification layout tests</short_desc>
          <delta_ts>2010-05-31 18:59:35 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yael">yael</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>hausmann</cc>
    
    <cc>kenneth</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>226102</commentid>
    <comment_count>0</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-05-14 19:16:53 -0700</bug_when>
    <thetext>Continue the work that has Laszlo started on supporting web notifications in QtWebKit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226106</commentid>
    <comment_count>1</comment_count>
      <attachid>56133</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-14 19:34:17 -0700</bug_when>
    <thetext>Created attachment 56133
Patch.

This patch does not yet add support for downloading icons or for html based notifications.
There is no documentation for the new API, since I expect to have some discussion about that API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227813</commentid>
    <comment_count>2</comment_count>
      <attachid>56487</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-19 07:31:41 -0700</bug_when>
    <thetext>Created attachment 56487
Patch

This patch wraps the QSystemTrayIcon, so that we can pass layout tests even if QT_NO_SYSTEMTRAYICON is not defined.
Qt S60 porting team told me that they could provide a QSystemTrayIcon impleemntation for Symbian 10.1, so at this time, I don&apos;t think we need to hook up notifications with the platform plugin.

Loading the notifications&apos; icons and markup is still under work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227817</commentid>
    <comment_count>3</comment_count>
      <attachid>56487</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-19 07:34:57 -0700</bug_when>
    <thetext>Comment on attachment 56487
Patch

Removing review flag because I need to merge with Robert&apos;s work first:-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227841</commentid>
    <comment_count>4</comment_count>
      <attachid>56493</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-19 08:36:08 -0700</bug_when>
    <thetext>Created attachment 56493
Updated patch after merge.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227904</commentid>
    <comment_count>5</comment_count>
      <attachid>56493</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-05-19 11:24:07 -0700</bug_when>
    <thetext>Comment on attachment 56493
Updated patch after merge.


&gt; +    enum NotificationPermission {
&gt; +        PermissionAllowed,
&gt; +        PermissionNotAllowed,
&gt; +        PermissionDenied
&gt; +    };

Maybe leave out Permission (we normally leave our or prepend part of the enum name)

What is the difference between NotAllowed and Denied? That is not obvious.

Are you sure this will never turn into a flag in the future?

Where are these used? I don&apos;t seem them used in the API.

&gt; +
&gt;      explicit QWebPage(QObject *parent = 0);
&gt;      ~QWebPage();
&gt;  
&gt; @@ -258,6 +264,8 @@ public:
&gt;  
&gt;      QMenu *createStandardContextMenu();
&gt;  
&gt; +    void allowNotificationForOrigin(const QString&amp; origin);

Origin makes me think of QWebSecurityOrigin, our other API&apos;s uses ForUrl (useAgentForUrl etc)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227939</commentid>
    <comment_count>6</comment_count>
      <attachid>56493</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-05-19 12:10:01 -0700</bug_when>
    <thetext>Comment on attachment 56493
Updated patch after merge.

Overall the &quot;meat&quot; of the patch looks really good. 

&gt; Index: WebKit/qt/Api/qwebpage.h
&gt; ===================================================================
&gt; --- WebKit/qt/Api/qwebpage.h	(revision 59762)
&gt; +++ WebKit/qt/Api/qwebpage.h	(working copy)
&gt; @@ -192,6 +192,12 @@ public:
&gt;          WebModalDialog
&gt;      };
&gt;  
&gt; +    enum NotificationPermission {
&gt; +        PermissionAllowed,
&gt; +        PermissionNotAllowed,
&gt; +        PermissionDenied
&gt; +    };
&gt; +
&gt;      explicit QWebPage(QObject *parent = 0);
&gt;      ~QWebPage();
&gt;  
&gt; @@ -258,6 +264,8 @@ public:
&gt;  
&gt;      QMenu *createStandardContextMenu();
&gt;  
&gt; +    void allowNotificationForOrigin(const QString&amp; origin);
&gt; +
&gt;      enum Extension {
&gt;          ChooseMultipleFilesExtension,
&gt;          ErrorPageExtension
&gt; @@ -335,6 +343,8 @@ Q_SIGNALS:
&gt;  
&gt;      void saveFrameStateRequested(QWebFrame* frame, QWebHistoryItem* item);
&gt;      void restoreFrameStateRequested(QWebFrame* frame);
&gt; +    void checkPermission(const QUrl&amp;, QWebPage::NotificationPermission&amp;);
&gt; +    void requestPermission(const QString&amp;);
&gt;  

As the corresponding W3C specification is still in early draft (see also some comments from Kenneth above) we decided that it might be a bit early to create a public API for this. Let&apos;s put these interfaces to DumpRenderTreeSupportQt.h support for now until we have better confidence on the API. 

At the same time we should take some of the suggestions Kenneth had about the naming of the enum for example.

&gt; -NotificationPresenter::Permission NotificationPresenterClientQt::checkPermission(const KURL&amp;)
&gt; +NotificationPresenter::Permission NotificationPresenterClientQt::checkPermission(const KURL&amp; url)
&gt;  {
&gt; -    // FIXME Implement permission policy
&gt; +    QWebPage::NotificationPermission permission = QWebPage::PermissionAllowed;

Now that this patch introduces permission support we should make the default permission NotAllowed (or Denied?) instead of Allowed.

&gt; +    QString origin = url.string();
&gt; +    emit m_page-&gt;checkPermission(origin, permission);
&gt; +    switch (permission) {
&gt; +    case QWebPage::PermissionAllowed:
&gt; +        return NotificationPresenter::PermissionAllowed;
&gt; +    case QWebPage::PermissionNotAllowed:
&gt; +        return NotificationPresenter::PermissionNotAllowed;
&gt; +    case QWebPage::PermissionDenied:
&gt; +        return NotificationPresenter::PermissionDenied;
&gt; +    }

ASSERT_NOT_REACHED would be appreciated here and maybe return just &quot;permission&quot; - which would default to NotAllowed (or Denied?).

&gt;      return NotificationPresenter::PermissionAllowed;
&gt;  }
&gt;  

r- because I think it is a bit early to conclude a public API for this, otherwise it looks great.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228014</commentid>
    <comment_count>7</comment_count>
      <attachid>56523</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-19 15:21:38 -0700</bug_when>
    <thetext>Created attachment 56523
Patch

Moved the new API to DumpRenderTreeSupportQt class, so it is no longer considered public.
Added ASSERT_NOT_REACHED and turned notifications off by default.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228075</commentid>
    <comment_count>8</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-05-19 16:57:01 -0700</bug_when>
    <thetext>The Notification system should probably be hooked up in the platform plugin.

Also, neither KDE nor GNOME uses the systray for notifications and it will probably be considered an abuse to do so, so I am not so happy about that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228086</commentid>
    <comment_count>9</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-05-19 17:12:27 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; The Notification system should probably be hooked up in the platform plugin.
&gt; 
&gt; Also, neither KDE nor GNOME uses the systray for notifications and it will probably be considered an abuse to do so, so I am not so happy about that.

The wrapper class allows for multiple implementations, one of which is an interface to the plugin. I could add that code in a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228335</commentid>
    <comment_count>10</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-05-20 05:22:46 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; The Notification system should probably be hooked up in the platform plugin.

That is certainly the intent - see my previous comment on 

http://bugreports.qt.nokia.com/browse/QTWEBKIT-105?focusedCommentId=115615&amp;page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_115615.

&gt; Also, neither KDE nor GNOME uses the systray for notifications and it will probably be considered an abuse to do so, so I am not so happy about that.

Well, Is there something missing from the QSysTray API that would not allow to take full advantage e.g. of the GNOME notification systemm. On MAC for example Qt can be setup so that QSysTray is hooked up with Growl.

QSysTray is a decent default implementation for notifications for QtWebKit and the plugin interface is there to overwrite the default implementation if needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228791</commentid>
    <comment_count>11</comment_count>
      <attachid>56523</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-05-21 01:36:48 -0700</bug_when>
    <thetext>Comment on attachment 56523
Patch

WebKit/qt/Api/qwebpage.cpp:1689
 +      connect(mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), d-&gt;notificationPresenterClient-&gt;d, SLOT(clearNotificationsList()));
Why is clearNotificationsList() connected to this signal?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228869</commentid>
    <comment_count>12</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-05-21 05:30:33 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (From update of attachment 56523 [details])
&gt; WebKit/qt/Api/qwebpage.cpp:1689
&gt;  +      connect(mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), d-&gt;notificationPresenterClient-&gt;d, SLOT(clearNotificationsList()));
&gt; Why is clearNotificationsList() connected to this signal?
When navigating to a new page we have to delete all the notifications of the current page, or we will have a memory leak.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228884</commentid>
    <comment_count>13</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-05-21 06:41:21 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; (From update of attachment 56523 [details] [details])
&gt; &gt; WebKit/qt/Api/qwebpage.cpp:1689
&gt; &gt;  +      connect(mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), d-&gt;notificationPresenterClient-&gt;d, SLOT(clearNotificationsList()));
&gt; &gt; Why is clearNotificationsList() connected to this signal?
&gt; When navigating to a new page we have to delete all the notifications of the current page, or we will have a memory leak.

Hm, so shouldn&apos;t this be done through a callback from say FrameLoader::clear() to FrameLoaderClient and then propagated to the notifications? Or perhaps WebCore should call NotificationPresenter::clear() or so directly?

Where do the other ports clear the notifications when a new page is loaded?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228982</commentid>
    <comment_count>14</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-05-21 10:20:54 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; Hm, so shouldn&apos;t this be done through a callback from say FrameLoader::clear() to FrameLoaderClient and then propagated to the notifications? Or perhaps WebCore should call NotificationPresenter::clear() or so directly?

I thought it is the Qt way to use signals and slots instead of direct callbacks.

&gt; 
&gt; Where do the other ports clear the notifications when a new page is loaded?
Only other port is Chrome, and they do leak the notifications object :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>229102</commentid>
    <comment_count>15</comment_count>
      <attachid>56523</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-21 14:30:32 -0700</bug_when>
    <thetext>Comment on attachment 56523
Patch

Removing review flag for now. I&apos;ll replace the signal/slot with a direct call as Simon suggested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230554</commentid>
    <comment_count>16</comment_count>
      <attachid>57062</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-25 19:03:52 -0700</bug_when>
    <thetext>Created attachment 57062
Patch, remove the signal/slot and bring the patch up-to-date

This patch is very similar to the previous one, just removing the signal/slot suggested by Simon.
While I was waiting for dpranke to re-submit the notifications code that he rolled out (r60193), I also implemented an icon loader for the notification icon.
Should I combine the 2 patches?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230895</commentid>
    <comment_count>17</comment_count>
      <attachid>57062</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-05-26 14:26:18 -0700</bug_when>
    <thetext>Comment on attachment 57062
Patch, remove the signal/slot and bring the patch up-to-date

Looks good except the ChangeLog seems to be out of date. Yael, can you change that ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230932</commentid>
    <comment_count>18</comment_count>
      <attachid>57163</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-26 14:50:15 -0700</bug_when>
    <thetext>Created attachment 57163
Patch, updating changelog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231249</commentid>
    <comment_count>19</comment_count>
      <attachid>57228</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-27 05:49:52 -0700</bug_when>
    <thetext>Created attachment 57228
Update change log comment, 

Previous patch still talks about new signals that are no longer there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231260</commentid>
    <comment_count>20</comment_count>
      <attachid>57231</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-05-27 06:12:44 -0700</bug_when>
    <thetext>Created attachment 57231
Not sure why the patch failed to apply, try again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231644</commentid>
    <comment_count>21</comment_count>
      <attachid>57231</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-05-28 05:00:25 -0700</bug_when>
    <thetext>Comment on attachment 57231
Not sure why the patch failed to apply, try again.

Looks good to me, r+. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231653</commentid>
    <comment_count>22</comment_count>
      <attachid>57231</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-05-28 06:00:08 -0700</bug_when>
    <thetext>Comment on attachment 57231
Not sure why the patch failed to apply, try again.

Clearing flags on attachment: 57231

Committed r60348: &lt;http://trac.webkit.org/changeset/60348&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231654</commentid>
    <comment_count>23</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-05-28 06:00:18 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231656</commentid>
    <comment_count>24</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-28 06:07:10 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/60348 might have broken Qt Linux Release minimal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>232267</commentid>
    <comment_count>25</comment_count>
      <attachid>57231</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-05-30 23:06:50 -0700</bug_when>
    <thetext>Comment on attachment 57231
Not sure why the patch failed to apply, try again.


&gt; Index: WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp
&gt; ===================================================================
&gt; --- WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp	(revision 60296)
&gt; +++ WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp	(working copy)
&gt; @@ -51,6 +51,7 @@
&gt;  #include &quot;HTMLFormElement.h&quot;
&gt;  #include &quot;HTMLPlugInElement.h&quot;
&gt;  #include &quot;HTTPParsers.h&quot;
&gt; +#include &quot;NotificationPresenterClientQt.h&quot;
&gt;  #include &quot;NotImplemented.h&quot;
&gt;  #include &quot;QNetworkReplyHandler.h&quot;
&gt;  #include &quot;ResourceHandleInternal.h&quot;
&gt; @@ -638,8 +639,12 @@ void FrameLoaderClientQt::dispatchDidCle
&gt;      if (world != mainThreadNormalWorld())
&gt;          return;
&gt;  
&gt; -    if (m_webFrame)
&gt; +    if (m_webFrame) {
&gt;          emit m_webFrame-&gt;javaScriptWindowObjectCleared();
&gt; +#if ENABLE(NOTIFICATIONS)
&gt; +        m_webFrame-&gt;page()-&gt;d-&gt;notificationPresenterClient-&gt;clearNotificationsList();
&gt; +#endif
&gt; +    }

This part _continues_ to look wrong :-(

Clearing the window object has nothing to do with notifications, and this function is called _per frame_ where as the notifications are cleared per page. So if one sub-frame reloads it clears the notifications for the entire page.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>232584</commentid>
    <comment_count>26</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-05-31 18:59:35 -0700</bug_when>
    <thetext>(In reply to comment #25)
&gt; (From update of attachment 57231 [details])
&gt; 
&gt; This part _continues_ to look wrong :-(
&gt; 
&gt; Clearing the window object has nothing to do with notifications, and this function is called _per frame_ where as the notifications are cleared per page. So if one sub-frame reloads it clears the notifications for the entire page.

I have a new patch that changes the behavior drastically. Notifications will no longer be cleared with the window object, but with a timer. (QSystemTrayIcon does not emit a signal when it closes). Also, NotificationPresenter should be one per process, and not per page.

The problem is that it is 40K, and I do not know how to cut it into smaller chunks, without causing tests to fail.

What would be the best way for me to explain that patch? IRC? comments in code? please advice :-)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56133</attachid>
            <date>2010-05-14 19:34:17 -0700</date>
            <delta_ts>2010-05-19 07:31:41 -0700</delta_ts>
            <desc>Patch.</desc>
            <filename>39146.patch</filename>
            <type>text/plain</type>
            <size>19575</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNTk1MTEpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMzYgQEAKKzIwMTAtMDUtMTQgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFy
b25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbnMgbGF5b3V0IHRlc3RzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTE0NgorCisgICAg
ICAgIEFkZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBzaW11bHRhbmVvdXMgbm90aWZpY2F0aW9ucy4K
KyAgICAgICAgQWRkIHNpZ25hbHMgdG8gdGhlIGNsaWVudCBmb3Igc2VjdXJpdHkgY2hlY2tzLiBO
b3RpZmljYXRpb25zIGFyZSBlbmFibGVkCisgICAgICAgIGlmIHRoZSBjbGllbnQgZG9lcyBub3Qg
Y29ubmVjdCB0byB0aGUgc2lnbmFscy4gCisgICAgICAgIFN1cHBvcnQgcmVwbGFjZUlkIGFuZCBj
YW5jZWwuCisgICAgICAgIFNlbmQgY2xvc2UgYW5kIGRpc3BsYXkgZXZlbnRzIHdoZW4gbmVlZGVk
LiAgIAorCisgICAgICAgICogQXBpL3F3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlUHJp
dmF0ZTo6UVdlYlBhZ2VQcml2YXRlKToKKyAgICAgICAgKFFXZWJQYWdlOjphbGxvd05vdGlmaWNh
dGlvbkZvck9yaWdpbik6CisgICAgICAgIChRV2ViUGFnZTo6UVdlYlBhZ2UpOgorICAgICAgICAq
IEFwaS9xd2VicGFnZS5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblBy
ZXNlbnRlckNsaWVudFF0LmNwcDoKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0UHJpdmF0ZTo6amF2YVNjcmlwdFdpbmRvd09iamVjdENsZWFyZWQpOgorICAgICAgICAoTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0
KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzaG93KToKKyAgICAg
ICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjYW5jZWwpOgorICAgICAgICAoTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Om5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZCk6
CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6cmVxdWVzdFBlcm1pc3Np
b24pOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmNoZWNrUGVybWlz
c2lvbik6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6YWxsb3dOb3Rp
ZmljYXRpb25Gb3JPcmlnaW4pOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50
UXQ6OmphdmFTY3JpcHRXaW5kb3dPYmplY3RDbGVhcmVkKToKKyAgICAgICAgKE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0OjpzZW5kRXZlbnQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0Lmg6CisgICAgICAgIChOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdFByaXZhdGU6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJp
dmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6
fk5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KToKKwogMjAxMC0wNS0xNCAgS2VudCBIYW5z
ZW4gPGtlbnQuaGFuc2VuQG5va2lhLmNvbT4sIEpvY2VseW4gVHVyY290dGUgPGpvY2VseW4udHVy
Y290dGVAbm9raWEuY29tPiwgVG9yIEFybmUgVmVzdGLDuCA8dG9yLmFybmUudmVzdGJvQG5va2lh
LmNvbT4sIEhlbnJ5IEhhdmVyaW5lbiA8aGVucnkuaGF2ZXJpbmVuQG5va2lhLmNvbT4sIEplZHJ6
ZWogTm93YWNraSA8amVkcnplai5ub3dhY2tpQG5va2lhLmNvbT4sIEFuZHJlYXMgS2xpbmcgPGFu
ZHJlYXMua2xpbmdAbm9raWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNt
YW5uLgpJbmRleDogV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0L3F0L0FwaS9xd2VicGFnZS5jcHAJKHJldmlzaW9uIDU5MjM0KQorKysgV2ViS2l0L3F0L0Fw
aS9xd2VicGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5OSw3ICsyOTksNyBAQCBRV2ViUGFn
ZVByaXZhdGU6OlFXZWJQYWdlUHJpdmF0ZShRV2ViUGFnCiAgICAgUGFnZUdyb3VwOjpzZXRTaG91
bGRUcmFja1Zpc2l0ZWRMaW5rcyh0cnVlKTsKICAgICAKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9O
UykgICAgCi0gICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3IE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0KCk7CisgICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0g
bmV3IE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KHEpOwogI2VuZGlmCiB9CiAKQEAgLTE0
MjMsNiArMTQyMywxNCBAQCBRVmFyaWFudCBRV2ViUGFnZTo6aW5wdXRNZXRob2RRdWVyeShRdDo6
CiAgICAgfQogfQogCit2b2lkIFFXZWJQYWdlOjphbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihj
b25zdCBRU3RyaW5nJiBvcmlnaW4pCit7CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAg
ZC0+bm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50LT5hbGxvd05vdGlmaWNhdGlvbkZvck9yaWdp
bihvcmlnaW4pOworI2VuZGlmCisKK30KKwogLyohCiAgICAgXGludGVybmFsCiAqLwpAQCAtMTY3
Nyw2ICsxNjg1LDkgQEAgUVdlYlBhZ2U6OlFXZWJQYWdlKFFPYmplY3QgKnBhcmVudCkKICNpZm5k
ZWYgTkRFQlVHCiAgICAgY29ubmVjdChRQ29yZUFwcGxpY2F0aW9uOjppbnN0YW5jZSgpLCBTSUdO
QUwoYWJvdXRUb1F1aXQoKSksIHRoaXMsIFNMT1QoX3FfY2xlYW51cExlYWtNZXNzYWdlcygpKSk7
CiAjZW5kaWYKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyAgICBjb25uZWN0KG1haW5GcmFt
ZSgpLCBTSUdOQUwoamF2YVNjcmlwdFdpbmRvd09iamVjdENsZWFyZWQoKSksIGQtPm5vdGlmaWNh
dGlvblByZXNlbnRlckNsaWVudC0+ZCwgU0xPVChqYXZhU2NyaXB0V2luZG93T2JqZWN0Q2xlYXJl
ZCgpKSk7CisjZW5kaWYKIH0KIAogLyohCkluZGV4OiBXZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5oCShyZXZpc2lvbiA1OTIzNCkK
KysrIFdlYktpdC9xdC9BcGkvcXdlYnBhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMTkyLDYgKzE5
MiwxMiBAQCBwdWJsaWM6CiAgICAgICAgIFdlYk1vZGFsRGlhbG9nCiAgICAgfTsKIAorICAgIGVu
dW0gTm90aWZpY2F0aW9uUGVybWlzc2lvbiB7CisgICAgICAgIFBlcm1pc3Npb25BbGxvd2VkLAor
ICAgICAgICBQZXJtaXNzaW9uTm90QWxsb3dlZCwKKyAgICAgICAgUGVybWlzc2lvbkRlbmllZAor
ICAgIH07CisKICAgICBleHBsaWNpdCBRV2ViUGFnZShRT2JqZWN0ICpwYXJlbnQgPSAwKTsKICAg
ICB+UVdlYlBhZ2UoKTsKIApAQCAtMjU4LDYgKzI2NCw4IEBAIHB1YmxpYzoKIAogICAgIFFNZW51
ICpjcmVhdGVTdGFuZGFyZENvbnRleHRNZW51KCk7CiAKKyAgICB2b2lkIGFsbG93Tm90aWZpY2F0
aW9uRm9yT3JpZ2luKGNvbnN0IFFTdHJpbmcmIG9yaWdpbik7CisKICAgICBlbnVtIEV4dGVuc2lv
biB7CiAgICAgICAgIENob29zZU11bHRpcGxlRmlsZXNFeHRlbnNpb24sCiAgICAgICAgIEVycm9y
UGFnZUV4dGVuc2lvbgpAQCAtMzM1LDYgKzM0Myw4IEBAIFFfU0lHTkFMUzoKIAogICAgIHZvaWQg
c2F2ZUZyYW1lU3RhdGVSZXF1ZXN0ZWQoUVdlYkZyYW1lKiBmcmFtZSwgUVdlYkhpc3RvcnlJdGVt
KiBpdGVtKTsKICAgICB2b2lkIHJlc3RvcmVGcmFtZVN0YXRlUmVxdWVzdGVkKFFXZWJGcmFtZSog
ZnJhbWUpOworICAgIHZvaWQgY2hlY2tQZXJtaXNzaW9uKGNvbnN0IFFVcmwmLCBRV2ViUGFnZTo6
Tm90aWZpY2F0aW9uUGVybWlzc2lvbiYpOworICAgIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oY29u
c3QgUVN0cmluZyYpOwogCiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBRV2ViUGFnZSAqY3JlYXRl
V2luZG93KFdlYldpbmRvd1R5cGUgdHlwZSk7CkluZGV4OiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBv
cnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5jcHAJKHJl
dmlzaW9uIDU5MjM0KQorKysgV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblBy
ZXNlbnRlckNsaWVudFF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzMsMTIgKzMzLDEzIEBACiAj
aW5jbHVkZSAiTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuaCIKIAogI2luY2x1ZGUgIkRv
Y3VtZW50LmgiCisjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIktVUkwuaCIKLSNp
bmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAK
KyNpbmNsdWRlICJxd2ViZnJhbWUuaCIKICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCi0KKyNp
bmNsdWRlICJxd2VicGFnZS5oIgogI2luY2x1ZGUgPFF0R3VpPgogCiBzdGF0aWMgYm9vbCBkdW1w
Tm90aWZpY2F0aW9uID0gZmFsc2U7CkBAIC01MiwyNSArNTMsNTcgQEAgdm9pZCBRV0VCS0lUX0VY
UE9SVCBxdF9kdW1wX25vdGlmaWNhdGlvbgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAot
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0KCkKK3ZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlOjpqYXZhU2Ny
aXB0V2luZG93T2JqZWN0Q2xlYXJlZCgpCit7CisgICAgcS0+amF2YVNjcmlwdFdpbmRvd09iamVj
dENsZWFyZWQoKTsKK30KKworTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Ok5vdGlmaWNh
dGlvblByZXNlbnRlckNsaWVudFF0KFFXZWJQYWdlKiBwYWdlKSA6IG1fcGFnZShwYWdlKQogewor
ICAgIGQgPSBuZXcgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlOworICAgIGQt
PnEgPSB0aGlzOwogfQogCiBib29sIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzaG93
KE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogeworI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZ
SUNPTgorICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBRU3lzdGVtVHJheUljb24qPjo6SXRlcmF0
b3IgZW5kID0gbV9ub3RpZmljYXRpb25zLmVuZCgpOworICAgIFFIYXNoIDxOb3RpZmljYXRpb24q
LCBRU3lzdGVtVHJheUljb24qPjo6SXRlcmF0b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5iZWdp
bigpOworCisgICAgaWYgKCFub3RpZmljYXRpb24tPnJlcGxhY2VJZCgpLmlzRW1wdHkoKSkgewor
ICAgICAgICB3aGlsZSAoaXRlciAhPSBlbmQpIHsKKyAgICAgICAgICAgIE5vdGlmaWNhdGlvbiog
ZXhpc3RpbmdOb3RpZmljYXRpb24gPSBpdGVyLmtleSgpOworICAgICAgICAgICAgaWYgKGV4aXN0
aW5nTm90aWZpY2F0aW9uLT5yZXBsYWNlSWQoKSA9PSBub3RpZmljYXRpb24tPnJlcGxhY2VJZCgp
ICYmIGV4aXN0aW5nTm90aWZpY2F0aW9uLT51cmwoKS5wcm90b2NvbCgpID09IG5vdGlmaWNhdGlv
bi0+dXJsKCkucHJvdG9jb2woKSAmJiBleGlzdGluZ05vdGlmaWNhdGlvbi0+dXJsKCkuaG9zdCgp
ID09IG5vdGlmaWNhdGlvbi0+dXJsKCkuaG9zdCgpKQorICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgaXRlcisrOworICAgICAgICB9CisgICAgfSBlbHNlCisgICAgICAgIGl0ZXIg
PSBlbmQ7CisKICAgICBpZiAoZHVtcE5vdGlmaWNhdGlvbikgeworICAgICAgICBpZiAoaXRlciAh
PSBlbmQpIHsKKyAgICAgICAgICAgIE5vdGlmaWNhdGlvbiogb2xkTm90aWZpY2F0aW9uID0gaXRl
ci5rZXkoKTsKKyAgICAgICAgICAgIHByaW50ZigiUkVQTEFDSU5HIE5PVElGSUNBVElPTiAlc1xu
Iiwgb2xkTm90aWZpY2F0aW9uLT5pc0hUTUwoKSA/IFFTdHJpbmcob2xkTm90aWZpY2F0aW9uLT51
cmwoKS5zdHJpbmcoKSkudG9VdGY4KCkuY29uc3REYXRhKCkgOiBRU3RyaW5nKG9sZE5vdGlmaWNh
dGlvbi0+Y29udGVudHMoKS50aXRsZSgpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CisgICAgICAg
IH0KICAgICAgICAgaWYgKG5vdGlmaWNhdGlvbi0+aXNIVE1MKCkpCiAgICAgICAgICAgICBwcmlu
dGYoIkRFU0tUT1AgTk9USUZJQ0FUSU9OOiBjb250ZW50cyBhdCAlc1xuIiwgUVN0cmluZyhub3Rp
ZmljYXRpb24tPnVybCgpLnN0cmluZygpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAgICAgICAg
IGVsc2UgewotICAgICAgICAgICAgcHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElPTjogaWNvbiAl
cywgdGl0bGUgJXMsIHRleHQgJXNcbiIsIAorICAgICAgICAgICAgcHJpbnRmKCJERVNLVE9QIE5P
VElGSUNBVElPTjolcyBpY29uICVzLCB0aXRsZSAlcywgdGV4dCAlc1xuIiwKKyAgICAgICAgICAg
ICAgICBub3RpZmljYXRpb24tPmRpcigpID09ICJydGwiID8gIihSVEwpIiA6ICIiLAogICAgICAg
ICAgICAgICAgIFFTdHJpbmcobm90aWZpY2F0aW9uLT5jb250ZW50cygpLmljb24oKS5zdHJpbmco
KSkudG9VdGY4KCkuY29uc3REYXRhKCksIFFTdHJpbmcobm90aWZpY2F0aW9uLT5jb250ZW50cygp
LnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpLCAKICAgICAgICAgICAgICAgICBRU3RyaW5n
KG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS5ib2R5KCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsK
ICAgICAgICAgfQogICAgIH0KIAotI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgotICAgIG1f
dHJheS5zaG93KCk7Ci0gICAgbV90cmF5LnNob3dNZXNzYWdlKG5vdGlmaWNhdGlvbi0+Y29udGVu
dHMoKS50aXRsZSgpLCBub3RpZmljYXRpb24tPmNvbnRlbnRzKCkuYm9keSgpLCBRU3lzdGVtVHJh
eUljb246OkluZm9ybWF0aW9uKTsKKyAgICBpZiAoaXRlciAhPSBlbmQpIHsKKyAgICAgICAgc2Vu
ZEV2ZW50KGl0ZXIua2V5KCksIGV2ZW50TmFtZXMoKS5jbG9zZUV2ZW50KTsKKyAgICAgICAgZGVs
ZXRlIG1fbm90aWZpY2F0aW9ucy50YWtlKGl0ZXIua2V5KCkpOworICAgIH0KKyAgICBRU3lzdGVt
VHJheUljb24qIGljb24gPSBuZXcgUVN5c3RlbVRyYXlJY29uOworICAgIG1fbm90aWZpY2F0aW9u
cy5pbnNlcnQobm90aWZpY2F0aW9uLCBpY29uKTsKKyAgICBzZW5kRXZlbnQobm90aWZpY2F0aW9u
LCAiZGlzcGxheSIpOworICAgIGljb24tPnNob3coKTsKKyAgICBpY29uLT5zaG93TWVzc2FnZShu
b3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUoKSwgbm90aWZpY2F0aW9uLT5jb250ZW50cygp
LmJvZHkoKSk7CiAjZW5kaWYKICAgICByZXR1cm4gdHJ1ZTsKIH0KQEAgLTg0LDEyICsxMTcsMjEg
QEAgdm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2FuYwogICAgICAgICAgICAg
cHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElPTiBDTE9TRUQ6ICVzXG4iLCBRU3RyaW5nKG5vdGlm
aWNhdGlvbi0+Y29udGVudHMoKS50aXRsZSgpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAgICAg
fQogCi0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyNpZm5kZWYgUVRfTk9fU1lTVEVNVFJBWUlDT04K
KyAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgUVN5c3RlbVRyYXlJY29uKj46Okl0ZXJhdG9yIGl0
ZXIgPSBtX25vdGlmaWNhdGlvbnMuZmluZChub3RpZmljYXRpb24pOworICAgIGlmIChpdGVyICE9
IG1fbm90aWZpY2F0aW9ucy5lbmQoKSkKKyAgICAgICAgc2VuZEV2ZW50KGl0ZXIua2V5KCksIGV2
ZW50TmFtZXMoKS5jbG9zZUV2ZW50KTsKKyNlbmRpZgogfQogCiB2b2lkIE5vdGlmaWNhdGlvblBy
ZXNlbnRlckNsaWVudFF0Ojpub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQoTm90aWZpY2F0aW9u
KiBub3RpZmljYXRpb24pCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICAvLyBDYWxsZWQg
ZnJvbSB+Tm90aWZpY2F0aW9uKCksIFJlbW92ZSB0aGUgZW50cnkgZnJvbSB0aGUgbm90aWZpY2F0
aW9ucyBsaXN0IGFuZCBkZWxldGUgdGhlIGljb24uCisjaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJ
Q09OCisgICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIFFTeXN0ZW1UcmF5SWNvbio+OjpJdGVyYXRv
ciBpdGVyID0gbV9ub3RpZmljYXRpb25zLmZpbmQobm90aWZpY2F0aW9uKTsKKyAgICBpZiAoaXRl
ciAhPSBtX25vdGlmaWNhdGlvbnMuZW5kKCkpCisgICAgICAgIGRlbGV0ZSBtX25vdGlmaWNhdGlv
bnMudGFrZShub3RpZmljYXRpb24pOworI2VuZGlmCiB9CiAKIHZvaWQgTm90aWZpY2F0aW9uUHJl
c2VudGVyQ2xpZW50UXQ6OnJlcXVlc3RQZXJtaXNzaW9uKFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4s
IFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBjYWxsYmFjaykKQEAgLTk3LDEzICsxMzksNTkgQEAg
dm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6cmVxdQogICAgIGlmIChkdW1wTm90
aWZpY2F0aW9uKQogICAgICAgcHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElPTiBQRVJNSVNTSU9O
IFJFUVVFU1RFRDogJXNcbiIsIFFTdHJpbmcob3JpZ2luLT50b1N0cmluZygpKS50b1V0ZjgoKS5j
b25zdERhdGEoKSk7CiAKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIFFTdHJpbmcgb3JpZ2lu
U3RyaW5nID0gb3JpZ2luLT50b1N0cmluZygpOworICAgIFFIYXNoPFFTdHJpbmcsIFFMaXN0PFJl
ZlB0cjxWb2lkQ2FsbGJhY2s+ID4gPjo6aXRlcmF0b3IgaXRlciA9IG1fcGVuZGluZ1Blcm1pc3Np
b25SZXF1ZXN0cy5maW5kKG9yaWdpblN0cmluZyk7CisgICAgaWYgKGl0ZXIgIT0gbV9wZW5kaW5n
UGVybWlzc2lvblJlcXVlc3RzLmVuZCgpKQorICAgICAgICBpdGVyLnZhbHVlKCkuYXBwZW5kKGNh
bGxiYWNrKTsKKyAgICBlbHNlIHsKKyAgICAgICAgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4g
PiBjYWxsYmFja3M7CisgICAgICAgIFJlZlB0cjxWb2lkQ2FsbGJhY2s+IGNiID0gY2FsbGJhY2s7
CisgICAgICAgIGNhbGxiYWNrcy5hcHBlbmQoY2IpOworICAgICAgICBtX3BlbmRpbmdQZXJtaXNz
aW9uUmVxdWVzdHMuaW5zZXJ0KG9yaWdpblN0cmluZywgY2FsbGJhY2tzKTsKKyAgICAgICAgZW1p
dCBtX3BhZ2UtPnJlcXVlc3RQZXJtaXNzaW9uKG9yaWdpblN0cmluZyk7CisgICAgfQogfQogCi1O
b3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xp
ZW50UXQ6OmNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJikKK05vdGlmaWNhdGlvblByZXNlbnRl
cjo6UGVybWlzc2lvbiBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2hlY2tQZXJtaXNz
aW9uKGNvbnN0IEtVUkwmIHVybCkKIHsKLSAgICAvLyBGSVhNRSBJbXBsZW1lbnQgcGVybWlzc2lv
biBwb2xpY3kKKyAgICBRV2ViUGFnZTo6Tm90aWZpY2F0aW9uUGVybWlzc2lvbiBwZXJtaXNzaW9u
ID0gUVdlYlBhZ2U6OlBlcm1pc3Npb25BbGxvd2VkOworICAgIFFTdHJpbmcgb3JpZ2luID0gdXJs
LnN0cmluZygpOworICAgIGVtaXQgbV9wYWdlLT5jaGVja1Blcm1pc3Npb24ob3JpZ2luLCBwZXJt
aXNzaW9uKTsKKyAgICBzd2l0Y2ggKHBlcm1pc3Npb24pIHsKKyAgICBjYXNlIFFXZWJQYWdlOjpQ
ZXJtaXNzaW9uQWxsb3dlZDoKKyAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNlbnRlcjo6
UGVybWlzc2lvbkFsbG93ZWQ7CisgICAgY2FzZSBRV2ViUGFnZTo6UGVybWlzc2lvbk5vdEFsbG93
ZWQ6CisgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25Ob3RB
bGxvd2VkOworICAgIGNhc2UgUVdlYlBhZ2U6OlBlcm1pc3Npb25EZW5pZWQ6CisgICAgICAgIHJl
dHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25EZW5pZWQ7CisgICAgfQogICAg
IHJldHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25BbGxvd2VkOwogfQogCit2
b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjphbGxvd05vdGlmaWNhdGlvbkZvck9y
aWdpbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCit7CisgICAgUUhhc2g8UVN0cmluZywgUUxpc3Q8
UmVmUHRyPFZvaWRDYWxsYmFjaz4gPiA+OjppdGVyYXRvciBpdGVyID0gbV9wZW5kaW5nUGVybWlz
c2lvblJlcXVlc3RzLmZpbmQob3JpZ2luKTsKKyAgICBpZiAoaXRlciAhPSBtX3BlbmRpbmdQZXJt
aXNzaW9uUmVxdWVzdHMuZW5kKCkpIHsKKyAgICAgICAgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFj
az4gPiYgY2FsbGJhY2tzID0gaXRlci52YWx1ZSgpOworICAgICAgICBmb3IgKGludCBpID0gMDsg
aSA8IGNhbGxiYWNrcy5zaXplKCk7IGkrKykKKyAgICAgICAgICAgIGNhbGxiYWNrcy5hdChpKS0+
aGFuZGxlRXZlbnQoKTsKKyAgICAgICAgbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLnJlbW92
ZShvcmlnaW4pOworICAgIH0KK30KKwordm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dDo6amF2YVNjcmlwdFdpbmRvd09iamVjdENsZWFyZWQoKQoreworICAgIG1fcGVuZGluZ1Blcm1p
c3Npb25SZXF1ZXN0cy5jbGVhcigpOworICAgIHdoaWxlICghbV9ub3RpZmljYXRpb25zLmlzRW1w
dHkoKSkgeworICAgICAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgUVN5c3RlbVRyYXlJY29uKj46
Okl0ZXJhdG9yIGl0ZXIgPSBtX25vdGlmaWNhdGlvbnMuYmVnaW4oKTsKKyAgICAgICAgZGVsZXRl
IG1fbm90aWZpY2F0aW9ucy50YWtlKGl0ZXIua2V5KCkpOworICAgIH0KK30KKwordm9pZCBOb3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2VuZEV2ZW50KE5vdGlmaWNhdGlvbiogbm90aWZp
Y2F0aW9uLCBjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50TmFtZSkKK3sKKyAgICBSZWZQdHI8RXZl
bnQ+IGV2ZW50ID0gRXZlbnQ6OmNyZWF0ZShldmVudE5hbWUsIGZhbHNlLCB0cnVlKTsKKyAgICBu
b3RpZmljYXRpb24tPmRpc3BhdGNoRXZlbnQoZXZlbnQucmVsZWFzZSgpKTsKK30KKwogI2VuZGlm
IC8vIEVOQUJMRShOT1RJRklDQVRJT05TKQpJbmRleDogV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmgJKHJldmlzaW9u
IDU5MjM0KQorKysgV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRl
ckNsaWVudFF0LmgJKHdvcmtpbmcgY29weSkKQEAgLTMyLDkgKzMyLDI1IEBACiAjaW5jbHVkZSAi
Tm90aWZpY2F0aW9uLmgiCiAjaW5jbHVkZSAiTm90aWZpY2F0aW9uUHJlc2VudGVyLmgiCiAKKyNp
bmNsdWRlIDxRTXVsdGlIYXNoPgogI2luY2x1ZGUgPFFTeXN0ZW1UcmF5SWNvbj4KIAorCituYW1l
c3BhY2UgV2ViQ29yZSB7CitjbGFzcyBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDsKK30K
K2NsYXNzIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJpdmF0ZSA6IHB1YmxpYyBRT2Jq
ZWN0IHsKKyAgICBRX09CSkVDVAorcHVibGljOgorICAgIE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0UHJpdmF0ZSgpIHt9CisgICAgV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xp
ZW50UXQqIHE7CitwdWJsaWMgc2xvdHM6CisgICAgdm9pZCBqYXZhU2NyaXB0V2luZG93T2JqZWN0
Q2xlYXJlZCgpOworfTsKKworCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCitjbGFzcyBRV2Vi
UGFnZTsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgRG9jdW1lbnQ7CkBAIC00Miw3ICs1
OCw4IEBAIGNsYXNzIEtVUkw7CiAKIGNsYXNzIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0
IDogcHVibGljIE5vdGlmaWNhdGlvblByZXNlbnRlciB7CiBwdWJsaWM6Ci0gICAgTm90aWZpY2F0
aW9uUHJlc2VudGVyQ2xpZW50UXQoKTsKKyAgICBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dChRV2ViUGFnZSopOworICAgIH5Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCgpIHsgZGVs
ZXRlIGQ7IH0KIAogICAgIC8qIFdlYkNvcmU6Ok5vdGlmaWNhdGlvblByZXNlbnRlciBpbnRlcmZh
Y2UgKi8KICAgICB2aXJ0dWFsIGJvb2wgc2hvdyhOb3RpZmljYXRpb24qKTsKQEAgLTUxLDkgKzY4
LDE3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oU2VjdXJp
dHlPcmlnaW4qLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4pOwogICAgIHZpcnR1YWwgTm90aWZp
Y2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uIGNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJik7
CiAKLXByaXZhdGU6IAorICAgIHZvaWQgYWxsb3dOb3RpZmljYXRpb25Gb3JPcmlnaW4oY29uc3Qg
UVN0cmluZyYgb3JpZ2luKTsKKyAgICB2b2lkIGphdmFTY3JpcHRXaW5kb3dPYmplY3RDbGVhcmVk
KCk7CisgICAgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlKiBkOworCitwcml2
YXRlOgorICAgIHZvaWQgc2VuZEV2ZW50KE5vdGlmaWNhdGlvbiosIGNvbnN0IEF0b21pY1N0cmlu
ZyYgZXZlbnROYW1lKTsKKyAgICBmcmllbmQgY2xhc3MgUVdlYlBhZ2U7CisgICAgUVdlYlBhZ2Uq
IG1fcGFnZTsKKyAgICBRTXVsdGlIYXNoPFFTdHJpbmcsICBRTGlzdDxSZWZQdHI8Vm9pZENhbGxi
YWNrPiA+ID4gbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzOwogI2lmbmRlZiBRVF9OT19TWVNU
RU1UUkFZSUNPTgotICAgIFFTeXN0ZW1UcmF5SWNvbiBtX3RyYXk7CisgICAgUUhhc2ggPE5vdGlm
aWNhdGlvbiosIFFTeXN0ZW1UcmF5SWNvbio+IG1fbm90aWZpY2F0aW9uczsKICNlbmRpZgogfTsK
IH0KSW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29s
cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5NTExKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTAtMDUtMTQgIFlhZWwgQWhhcm9uICA8
eWFlbC5haGFyb25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVz
dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2
CisKKyAgICAgICAgTWltaWMgQ2hyb21pdW0ncyB0ZXN0X3NoZWxsIHNlY3VyaXR5IG1vZGVsIGlu
IFF0J3MgRFJULgorICAgICAgICBJdCBtYWtlcyBhIGxpc3Qgb2Ygb3JpZ2lucyB3aGljaCB3ZXJl
IGdyYW50ZWQgcGVybWlzc2lvbiB0byBkaXNwbGF5CisgICAgICAgIG5vdGlmaWNhdGlvbnMsIGFu
ZCBvbmx5IHRob3NlIG9yaWdpbnMgY2FuIGRpc3BsYXkgbm90aWZpY2F0aW9ucy4KKworICAgICAg
ICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RHVtcFJlbmRlclRyZWU6OkR1bXBSZW5kZXJUcmVlKToKKyAgICAgICAgKFdlYkNvcmU6
OkR1bXBSZW5kZXJUcmVlOjpjaGVja1Blcm1pc3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6RHVt
cFJlbmRlclRyZWU6OnJlcXVlc3RQZXJtaXNzaW9uKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJl
ZS9xdC9EdW1wUmVuZGVyVHJlZVF0Lmg6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5
b3V0VGVzdENvbnRyb2xsZXJRdC5jcHA6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6
cmVzZXQpOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OmdyYW50RGVza3RvcE5vdGlm
aWNhdGlvblBlcm1pc3Npb24pOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OmNoZWNr
RGVza3RvcE5vdGlmaWNhdGlvblBlcm1pc3Npb24pOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaDoKKwogMjAxMC0wNS0xNCAgS2VubmV0aCBSdXNz
ZWxsICA8a2JyQGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVy
VHJlZVF0LmNwcAkocmV2aXNpb24gNTkyMzQpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzk0LDYgKzM5NCwx
MCBAQCBEdW1wUmVuZGVyVHJlZTo6RHVtcFJlbmRlclRyZWUoKQogICAgICAgICAgICAgdGhpcywg
U0xPVChkdW1wRGF0YWJhc2VRdW90YShRV2ViRnJhbWUqLFFTdHJpbmcpKSk7CiAgICAgY29ubmVj
dChtX3BhZ2UsIFNJR05BTChzdGF0dXNCYXJNZXNzYWdlKGNvbnN0IFFTdHJpbmcmKSksCiAgICAg
ICAgICAgICB0aGlzLCBTTE9UKHN0YXR1c0Jhck1lc3NhZ2UoY29uc3QgUVN0cmluZyYpKSk7Cisg
ICAgY29ubmVjdChtX3BhZ2UsIFNJR05BTChjaGVja1Blcm1pc3Npb24oY29uc3QgUVVybCYsIFFX
ZWJQYWdlOjpOb3RpZmljYXRpb25QZXJtaXNzaW9uJikpLAorICAgICAgICAgICAgdGhpcywgU0xP
VChjaGVja1Blcm1pc3Npb24oY29uc3QgUVVybCYsIFFXZWJQYWdlOjpOb3RpZmljYXRpb25QZXJt
aXNzaW9uJikpKTsKKyAgICBjb25uZWN0KG1fcGFnZSwgU0lHTkFMKHJlcXVlc3RQZXJtaXNzaW9u
KGNvbnN0IFFTdHJpbmcmKSksCisgICAgICAgICAgICB0aGlzLCBTTE9UKHJlcXVlc3RQZXJtaXNz
aW9uKGNvbnN0IFFTdHJpbmcmKSkpOwogCiAgICAgUU9iamVjdDo6Y29ubmVjdCh0aGlzLCBTSUdO
QUwocXVpdCgpKSwgcUFwcCwgU0xPVChxdWl0KCkpLCBRdDo6UXVldWVkQ29ubmVjdGlvbik7CiAK
QEAgLTkwMiw2ICs5MDYsMTYgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6c3dpdGNoRm9jdXMoYm9v
bCBmbwogICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KG1fbWFpblZpZXcsICZldmVudCk7CiB9
CiAKK3ZvaWQgRHVtcFJlbmRlclRyZWU6OmNoZWNrUGVybWlzc2lvbihjb25zdCBRVXJsJiB1cmws
IFFXZWJQYWdlOjpOb3RpZmljYXRpb25QZXJtaXNzaW9uJiBwZXJtaXNzaW9uKQoreworICAgIHBl
cm1pc3Npb24gPSBtX2NvbnRyb2xsZXItPmNoZWNrRGVza3RvcE5vdGlmaWNhdGlvblBlcm1pc3Np
b24odXJsLnNjaGVtZSgpICsgIjovLyIgKyB1cmwuaG9zdCgpKSA/IFFXZWJQYWdlOjpQZXJtaXNz
aW9uQWxsb3dlZCA6IFFXZWJQYWdlOjpQZXJtaXNzaW9uRGVuaWVkOworfQorCit2b2lkIER1bXBS
ZW5kZXJUcmVlOjpyZXF1ZXN0UGVybWlzc2lvbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCit7Cisg
ICAgbV9wYWdlLT5hbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihvcmlnaW4pOworfQorCiAjaWYg
ZGVmaW5lZChRX1dTX1gxMSkKIHZvaWQgRHVtcFJlbmRlclRyZWU6OmluaXRpYWxpemVGb250cygp
CiB7CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRl
clRyZWVRdC5oCShyZXZpc2lvbiA1OTIzNCkKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0R1bXBSZW5kZXJUcmVlUXQuaAkod29ya2luZyBjb3B5KQpAQCAtMTExLDYgKzExMSw4IEBA
IHB1YmxpYyBRX1NMT1RTOgogICAgIHZvaWQgZHVtcERhdGFiYXNlUXVvdGEoUVdlYkZyYW1lKiBm
cmFtZSwgY29uc3QgUVN0cmluZyYgZGJOYW1lKTsKICAgICB2b2lkIHN0YXR1c0Jhck1lc3NhZ2Uo
Y29uc3QgUVN0cmluZyYgbWVzc2FnZSk7CiAgICAgdm9pZCB3aW5kb3dDbG9zZVJlcXVlc3RlZCgp
OworICAgIHZvaWQgY2hlY2tQZXJtaXNzaW9uKGNvbnN0IFFVcmwmLCBRV2ViUGFnZTo6Tm90aWZp
Y2F0aW9uUGVybWlzc2lvbiYpOworICAgIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oY29uc3QgUVN0
cmluZyYpOwogCiBRX1NJR05BTFM6CiAgICAgdm9pZCBxdWl0KCk7CkluZGV4OiBXZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0
LmNwcAkocmV2aXNpb24gNTkyMzQpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9M
YXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzMsNiArNzMsNyBA
QCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpyZXNldCgpCiAgICAgbV9oYW5kbGVFcnJvclBh
Z2VzID0gZmFsc2U7CiAgICAgbV93ZWJIaXN0b3J5ID0gMDsKICAgICBtX2dsb2JhbEZsYWcgPSBm
YWxzZTsKKyAgICBtX2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2lucy5jbGVhcigpOwog
ICAgIHF0X2R1bXBfZWRpdGluZ19jYWxsYmFja3MoZmFsc2UpOwogICAgIHF0X2R1bXBfZnJhbWVf
bG9hZGVyKGZhbHNlKTsKICAgICBxdF9kdW1wX3Jlc291cmNlX2xvYWRfY2FsbGJhY2tzKGZhbHNl
KTsKQEAgLTE4OSwxMyArMTkwLDEyIEBAIGludCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6d2luZG93
Q291bnQoKQogCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpncmFudERlc2t0b3BOb3RpZmlj
YXRpb25QZXJtaXNzaW9uKGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKIHsKLSAgICAvLyBGSVhNRTog
SW1wbGVtZW50IGZvciBub3RpZmljYXRpb24gc2VjdXJpdHkKKyAgICBtX2Rlc2t0b3BOb3RpZmlj
YXRpb25BbGxvd2VkT3JpZ2lucy5hcHBlbmQob3JpZ2luKTsKIH0KIAogYm9vbCBMYXlvdXRUZXN0
Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lvbihjb25zdCBRU3Ry
aW5nJiBvcmlnaW4pCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCBmb3Igbm90aWZpY2F0aW9u
IHNlY3VyaXR5Ci0gICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIG1fZGVza3RvcE5vdGlmaWNh
dGlvbkFsbG93ZWRPcmlnaW5zLmNvbnRhaW5zKG9yaWdpbik7CiB9CiAKIHZvaWQgTGF5b3V0VGVz
dENvbnRyb2xsZXI6OmRpc3BsYXkoKQpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
cXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaAkocmV2aXNpb24gNTkyMzQp
CisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIxMyw2ICsyMTMsNyBAQCBwcml2YXRlOgogICAgIFFXZWJG
cmFtZSogbV90b3BMb2FkaW5nRnJhbWU7CiAgICAgV2ViQ29yZTo6RHVtcFJlbmRlclRyZWUqIG1f
ZHJ0OwogICAgIFFXZWJIaXN0b3J5KiBtX3dlYkhpc3Rvcnk7CisgICAgUVN0cmluZ0xpc3QgbV9k
ZXNrdG9wTm90aWZpY2F0aW9uQWxsb3dlZE9yaWdpbnM7CiB9OwogCiAjZW5kaWYgLy8gTGF5b3V0
VGVzdENvbnRyb2xsZXJRdF9oCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1OTUxMSkKKysrIExheW91dFRl
c3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDEwLTA1LTE0
ICBZYWVsIEFoYXJvbiAgPHlhZWwuYWhhcm9uQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFBhc3MgYWxsIHdlYiBub3RpZmlj
YXRpb24gbGF5b3V0IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zOTE0NgorCisgICAgICAgIFJlbW92ZSBub3RpZmljYXRpb25zIGZyb20gc2tp
cCBsaXN0LgorCisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKwogMjAxMC0wNS0xNCAg
QWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBJbnNwaXJlZCBi
eSBTaW1vbiBGcmFzZXIsIHJ1YmJlci1zdGFtcGVkIGJ5IEdlb2ZmIEdhcmVuLgpJbmRleDogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA1OTIzNCkKKysrIExheW91dFRlc3RzL3BsYXRm
b3JtL3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTQ3MDksMTQgKzQ3MDksNiBAQCBsb2Fk
ZXIvZ28tYmFjay10by1kaWZmZXJlbnQtd2luZG93LXNpemUuCiAjIFRoaXMgcG9ydCBkb2Vzbid0
IHN1cHBvcnQgR2VvbG9jYXRpb24uCiBmYXN0L2RvbS9HZW9sb2NhdGlvbgogCi0jIFRoaXMgcG9y
dCBkb2Vzbid0IHN1cHBvcnQgTm90aWZpY2F0aW9uIHBlcm1pc3Npb25zCi1mYXN0L25vdGlmaWNh
dGlvbnMvbm90aWZpY2F0aW9ucy1jaGVjay1wZXJtaXNzaW9uLmh0bWwKLWZhc3Qvbm90aWZpY2F0
aW9ucy9ub3RpZmljYXRpb25zLWRpc3BsYXktY2xvc2UtZXZlbnRzLmh0bWwKLWZhc3Qvbm90aWZp
Y2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi5odG1sCi1mYXN0L25vdGlm
aWNhdGlvbnMvbm90aWZpY2F0aW9ucy13aXRob3V0LXBlcm1pc3Npb24uaHRtbAotZmFzdC9ub3Rp
ZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcnRsLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9ucy9ub3Rp
ZmljYXRpb25zLXJlcGxhY2UuaHRtbAotCiAjIE1pc3NpbmcgRFJUIGFiaWxpdHkgdG8gc2V0IGFj
Y2VwdCBjb29raWUgcG9saWN5CiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Nyb3NzLW9yaWdp
bi1jb29raWUtc3RvcmFnZS5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56487</attachid>
            <date>2010-05-19 07:31:41 -0700</date>
            <delta_ts>2010-05-19 08:36:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>39146.patch</filename>
            <type>text/plain</type>
            <size>20025</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNTk3NjIpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTAtMDUtMTkgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFy
b25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVzdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIG11bHRpcGxlIHNpbXVsdGFuZW91cyBub3RpZmljYXRpb25zLgor
ICAgICAgICBBZGQgc2lnbmFscyB0byB0aGUgY2xpZW50IGZvciBzZWN1cml0eSBjaGVja3MuIE5v
dGlmaWNhdGlvbnMgYXJlIGVuYWJsZWQKKyAgICAgICAgaWYgdGhlIGNsaWVudCBkb2VzIG5vdCBj
b25uZWN0IHRvIHRoZSBzaWduYWxzLiAKKyAgICAgICAgU3VwcG9ydCByZXBsYWNlSWQgYW5kIGNh
bmNlbC4KKyAgICAgICAgU2VuZCBjbG9zZSBhbmQgZGlzcGxheSBldmVudHMgd2hlbiBuZWVkZWQu
ICAgCisKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3BwOgorICAgICAgICAoUVdlYlBhZ2VQcml2
YXRlOjpRV2ViUGFnZVByaXZhdGUpOgorICAgICAgICAoUVdlYlBhZ2U6OmFsbG93Tm90aWZpY2F0
aW9uRm9yT3JpZ2luKToKKyAgICAgICAgKFFXZWJQYWdlOjpRV2ViUGFnZSk6CisgICAgICAgICog
QXBpL3F3ZWJwYWdlLmg6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJl
c2VudGVyQ2xpZW50UXQuY3BwOgorICAgICAgICAoUGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dy
YXBwZXI6OlBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKToKKyAgICAgICAgKFBsYXRm
b3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyOjp+UGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dy
YXBwZXIpOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlOjpj
bGVhck5vdGlmaWNhdGlvbnNMaXN0KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0OjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCk6CisgICAgICAgIChOb3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2hvdyk6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdDo6Y2FuY2VsKToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0Ojpub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQpOgorICAgICAgICAoTm90aWZpY2F0
aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnJlcXVlc3RQZXJtaXNzaW9uKToKKyAgICAgICAgKE5vdGlm
aWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjaGVja1Blcm1pc3Npb24pOgorICAgICAgICAoTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKToK
KyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjbGVhck5vdGlmaWNhdGlv
bnNMaXN0KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzZW5kRXZl
bnQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0Lmg6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdFByaXZhdGU6Ok5v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJpdmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpO
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6fk5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0KToKKwogMjAxMC0wNS0xOSAgRGVuaXMgRHp5dWJlbmtvIDxkZW5pcy5kenl1YmVua29Abm9r
aWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2Vu
LgpJbmRleDogV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
L3F0L0FwaS9xd2VicGFnZS5jcHAJKHJldmlzaW9uIDU5MjM0KQorKysgV2ViS2l0L3F0L0FwaS9x
d2VicGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5OSw3ICsyOTksNyBAQCBRV2ViUGFnZVBy
aXZhdGU6OlFXZWJQYWdlUHJpdmF0ZShRV2ViUGFnCiAgICAgUGFnZUdyb3VwOjpzZXRTaG91bGRU
cmFja1Zpc2l0ZWRMaW5rcyh0cnVlKTsKICAgICAKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykg
ICAgCi0gICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3IE5vdGlmaWNhdGlvblBy
ZXNlbnRlckNsaWVudFF0KCk7CisgICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3
IE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KHEpOwogI2VuZGlmCiB9CiAKQEAgLTE0MjMs
NiArMTQyMywxNCBAQCBRVmFyaWFudCBRV2ViUGFnZTo6aW5wdXRNZXRob2RRdWVyeShRdDo6CiAg
ICAgfQogfQogCit2b2lkIFFXZWJQYWdlOjphbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihjb25z
dCBRU3RyaW5nJiBvcmlnaW4pCit7CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAgZC0+
bm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50LT5hbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihv
cmlnaW4pOworI2VuZGlmCisKK30KKwogLyohCiAgICAgXGludGVybmFsCiAqLwpAQCAtMTY3Nyw2
ICsxNjg1LDkgQEAgUVdlYlBhZ2U6OlFXZWJQYWdlKFFPYmplY3QgKnBhcmVudCkKICNpZm5kZWYg
TkRFQlVHCiAgICAgY29ubmVjdChRQ29yZUFwcGxpY2F0aW9uOjppbnN0YW5jZSgpLCBTSUdOQUwo
YWJvdXRUb1F1aXQoKSksIHRoaXMsIFNMT1QoX3FfY2xlYW51cExlYWtNZXNzYWdlcygpKSk7CiAj
ZW5kaWYKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyAgICBjb25uZWN0KG1haW5GcmFtZSgp
LCBTSUdOQUwoamF2YVNjcmlwdFdpbmRvd09iamVjdENsZWFyZWQoKSksIGQtPm5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudC0+ZCwgU0xPVChjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCkpKTsKKyNl
bmRpZgogfQogCiAvKiEKSW5kZXg6IFdlYktpdC9xdC9BcGkvcXdlYnBhZ2UuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmgJKHJldmlzaW9uIDU5MjM0KQorKysgV2ViS2l0
L3F0L0FwaS9xd2VicGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTIsNiArMTkyLDEyIEBAIHB1
YmxpYzoKICAgICAgICAgV2ViTW9kYWxEaWFsb2cKICAgICB9OwogCisgICAgZW51bSBOb3RpZmlj
YXRpb25QZXJtaXNzaW9uIHsKKyAgICAgICAgUGVybWlzc2lvbkFsbG93ZWQsCisgICAgICAgIFBl
cm1pc3Npb25Ob3RBbGxvd2VkLAorICAgICAgICBQZXJtaXNzaW9uRGVuaWVkCisgICAgfTsKKwog
ICAgIGV4cGxpY2l0IFFXZWJQYWdlKFFPYmplY3QgKnBhcmVudCA9IDApOwogICAgIH5RV2ViUGFn
ZSgpOwogCkBAIC0yNTgsNiArMjY0LDggQEAgcHVibGljOgogCiAgICAgUU1lbnUgKmNyZWF0ZVN0
YW5kYXJkQ29udGV4dE1lbnUoKTsKIAorICAgIHZvaWQgYWxsb3dOb3RpZmljYXRpb25Gb3JPcmln
aW4oY29uc3QgUVN0cmluZyYgb3JpZ2luKTsKKwogICAgIGVudW0gRXh0ZW5zaW9uIHsKICAgICAg
ICAgQ2hvb3NlTXVsdGlwbGVGaWxlc0V4dGVuc2lvbiwKICAgICAgICAgRXJyb3JQYWdlRXh0ZW5z
aW9uCkBAIC0zMzUsNiArMzQzLDggQEAgUV9TSUdOQUxTOgogCiAgICAgdm9pZCBzYXZlRnJhbWVT
dGF0ZVJlcXVlc3RlZChRV2ViRnJhbWUqIGZyYW1lLCBRV2ViSGlzdG9yeUl0ZW0qIGl0ZW0pOwog
ICAgIHZvaWQgcmVzdG9yZUZyYW1lU3RhdGVSZXF1ZXN0ZWQoUVdlYkZyYW1lKiBmcmFtZSk7Cisg
ICAgdm9pZCBjaGVja1Blcm1pc3Npb24oY29uc3QgUVVybCYsIFFXZWJQYWdlOjpOb3RpZmljYXRp
b25QZXJtaXNzaW9uJik7CisgICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihjb25zdCBRU3RyaW5n
Jik7CiAKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIFFXZWJQYWdlICpjcmVhdGVXaW5kb3coV2Vi
V2luZG93VHlwZSB0eXBlKTsKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmNwcAkocmV2aXNpb24gNTky
MzQpCisrKyBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xp
ZW50UXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMywxMiArMzMsMTMgQEAKICNpbmNsdWRlICJO
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oIgogCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIK
KyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiS1VSTC5oIgotI2luY2x1ZGUgIk5v
dEltcGxlbWVudGVkLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKIAorI2luY2x1ZGUg
InF3ZWJmcmFtZS5oIgogI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIKLQorI2luY2x1ZGUgInF3
ZWJwYWdlLmgiCiAjaW5jbHVkZSA8UXRHdWk+CiAKIHN0YXRpYyBib29sIGR1bXBOb3RpZmljYXRp
b24gPSBmYWxzZTsKQEAgLTUyLDI1ICs1Myw3MyBAQCB2b2lkIFFXRUJLSVRfRVhQT1JUIHF0X2R1
bXBfbm90aWZpY2F0aW9uCiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCi1Ob3RpZmljYXRp
b25QcmVzZW50ZXJDbGllbnRRdDo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQoKQorUGxh
dGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXI6OlBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNX
cmFwcGVyKCkKIHsKKyNpZm5kZWYgUVRfTk9fU1lTVEVNVFJBWUlDT04KKyAgICBtX25vdGlmaWNh
dGlvbkljb24gPSAwOworI2VuZGlmCit9CisKK1BsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFw
cGVyOjp+UGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIoKQoreworI2lmbmRlZiBRVF9O
T19TWVNURU1UUkFZSUNPTgorICAgIGRlbGV0ZSBtX25vdGlmaWNhdGlvbkljb247CisjZW5kaWYK
K30KKwordm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdFByaXZhdGU6OmNsZWFyTm90
aWZpY2F0aW9uc0xpc3QoKQoreworICAgIHEtPmNsZWFyTm90aWZpY2F0aW9uc0xpc3QoKTsKK30K
KworTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0KFFXZWJQYWdlKiBwYWdlKSA6IG1fcGFnZShwYWdlKQoreworICAgIGQgPSBuZXcgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlOworICAgIGQtPnEgPSB0aGlzOwogfQog
CiBib29sIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzaG93KE5vdGlmaWNhdGlvbiog
bm90aWZpY2F0aW9uKQogeworICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBQbGF0Zm9ybU5vdGlm
aWNhdGlvbkljb25zV3JhcHBlcio+OjpJdGVyYXRvciBlbmQgPSBtX25vdGlmaWNhdGlvbnMuZW5k
KCk7CisgICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNX
cmFwcGVyKj46Okl0ZXJhdG9yIGl0ZXIgPSBtX25vdGlmaWNhdGlvbnMuYmVnaW4oKTsKKworICAg
IGlmICghbm90aWZpY2F0aW9uLT5yZXBsYWNlSWQoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgd2hp
bGUgKGl0ZXIgIT0gZW5kKSB7CisgICAgICAgICAgICBOb3RpZmljYXRpb24qIGV4aXN0aW5nTm90
aWZpY2F0aW9uID0gaXRlci5rZXkoKTsKKyAgICAgICAgICAgIGlmIChleGlzdGluZ05vdGlmaWNh
dGlvbi0+cmVwbGFjZUlkKCkgPT0gbm90aWZpY2F0aW9uLT5yZXBsYWNlSWQoKSAmJiBleGlzdGlu
Z05vdGlmaWNhdGlvbi0+dXJsKCkucHJvdG9jb2woKSA9PSBub3RpZmljYXRpb24tPnVybCgpLnBy
b3RvY29sKCkgJiYgZXhpc3RpbmdOb3RpZmljYXRpb24tPnVybCgpLmhvc3QoKSA9PSBub3RpZmlj
YXRpb24tPnVybCgpLmhvc3QoKSkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
IGl0ZXIrKzsKKyAgICAgICAgfQorICAgIH0gZWxzZQorICAgICAgICBpdGVyID0gZW5kOworCiAg
ICAgaWYgKGR1bXBOb3RpZmljYXRpb24pIHsKKyAgICAgICAgaWYgKGl0ZXIgIT0gZW5kKSB7Cisg
ICAgICAgICAgICBOb3RpZmljYXRpb24qIG9sZE5vdGlmaWNhdGlvbiA9IGl0ZXIua2V5KCk7Cisg
ICAgICAgICAgICBwcmludGYoIlJFUExBQ0lORyBOT1RJRklDQVRJT04gJXNcbiIsIG9sZE5vdGlm
aWNhdGlvbi0+aXNIVE1MKCkgPyBRU3RyaW5nKG9sZE5vdGlmaWNhdGlvbi0+dXJsKCkuc3RyaW5n
KCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpIDogUVN0cmluZyhvbGROb3RpZmljYXRpb24tPmNvbnRl
bnRzKCkudGl0bGUoKSkudG9VdGY4KCkuY29uc3REYXRhKCkpOworICAgICAgICB9CiAgICAgICAg
IGlmIChub3RpZmljYXRpb24tPmlzSFRNTCgpKQogICAgICAgICAgICAgcHJpbnRmKCJERVNLVE9Q
IE5PVElGSUNBVElPTjogY29udGVudHMgYXQgJXNcbiIsIFFTdHJpbmcobm90aWZpY2F0aW9uLT51
cmwoKS5zdHJpbmcoKSkudG9VdGY4KCkuY29uc3REYXRhKCkpOwogICAgICAgICBlbHNlIHsKLSAg
ICAgICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT046IGljb24gJXMsIHRpdGxlICVz
LCB0ZXh0ICVzXG4iLCAKKyAgICAgICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT046
JXMgaWNvbiAlcywgdGl0bGUgJXMsIHRleHQgJXNcbiIsCisgICAgICAgICAgICAgICAgbm90aWZp
Y2F0aW9uLT5kaXIoKSA9PSAicnRsIiA/ICIoUlRMKSIgOiAiIiwKICAgICAgICAgICAgICAgICBR
U3RyaW5nKG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS5pY29uKCkuc3RyaW5nKCkpLnRvVXRmOCgp
LmNvbnN0RGF0YSgpLCBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS50aXRsZSgpKS50
b1V0ZjgoKS5jb25zdERhdGEoKSwgCiAgICAgICAgICAgICAgICAgUVN0cmluZyhub3RpZmljYXRp
b24tPmNvbnRlbnRzKCkuYm9keSgpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAgICAgICAgIH0K
ICAgICB9CiAKKyAgICBpZiAoaXRlciAhPSBlbmQpIHsKKyAgICAgICAgc2VuZEV2ZW50KGl0ZXIu
a2V5KCksIGV2ZW50TmFtZXMoKS5jbG9zZUV2ZW50KTsKKyAgICAgICAgZGVsZXRlIG1fbm90aWZp
Y2F0aW9ucy50YWtlKGl0ZXIua2V5KCkpOworICAgIH0KKyAgICBQbGF0Zm9ybU5vdGlmaWNhdGlv
bkljb25zV3JhcHBlciogd3JhcHBlciA9IG5ldyBQbGF0Zm9ybU5vdGlmaWNhdGlvbkljb25zV3Jh
cHBlcigpOworICAgIG1fbm90aWZpY2F0aW9ucy5pbnNlcnQobm90aWZpY2F0aW9uLCB3cmFwcGVy
KTsKKyAgICBzZW5kRXZlbnQobm90aWZpY2F0aW9uLCAiZGlzcGxheSIpOworCiAjaWZuZGVmIFFU
X05PX1NZU1RFTVRSQVlJQ09OCi0gICAgbV90cmF5LnNob3coKTsKLSAgICBtX3RyYXkuc2hvd01l
c3NhZ2Uobm90aWZpY2F0aW9uLT5jb250ZW50cygpLnRpdGxlKCksIG5vdGlmaWNhdGlvbi0+Y29u
dGVudHMoKS5ib2R5KCksIFFTeXN0ZW1UcmF5SWNvbjo6SW5mb3JtYXRpb24pOworICAgIHdyYXBw
ZXItPm1fbm90aWZpY2F0aW9uSWNvbiA9IG5ldyBRU3lzdGVtVHJheUljb247CisgICAgd3JhcHBl
ci0+bV9ub3RpZmljYXRpb25JY29uLT5zaG93KCk7CisgICAgd3JhcHBlci0+bV9ub3RpZmljYXRp
b25JY29uLT5zaG93TWVzc2FnZShub3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUoKSwgbm90
aWZpY2F0aW9uLT5jb250ZW50cygpLmJvZHkoKSk7CiAjZW5kaWYKICAgICByZXR1cm4gdHJ1ZTsK
IH0KQEAgLTg0LDEyICsxMzMsMTcgQEAgdm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dDo6Y2FuYwogICAgICAgICAgICAgcHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElPTiBDTE9TRUQ6
ICVzXG4iLCBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS50aXRsZSgpKS50b1V0Zjgo
KS5jb25zdERhdGEoKSk7CiAgICAgfQogCi0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBRSGFz
aCA8Tm90aWZpY2F0aW9uKiwgUGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIqPjo6SXRl
cmF0b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5maW5kKG5vdGlmaWNhdGlvbik7CisgICAgaWYg
KGl0ZXIgIT0gbV9ub3RpZmljYXRpb25zLmVuZCgpKQorICAgICAgICBzZW5kRXZlbnQoaXRlci5r
ZXkoKSwgZXZlbnROYW1lcygpLmNsb3NlRXZlbnQpOwogfQogCiB2b2lkIE5vdGlmaWNhdGlvblBy
ZXNlbnRlckNsaWVudFF0Ojpub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQoTm90aWZpY2F0aW9u
KiBub3RpZmljYXRpb24pCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICAvLyBDYWxsZWQg
ZnJvbSB+Tm90aWZpY2F0aW9uKCksIFJlbW92ZSB0aGUgZW50cnkgZnJvbSB0aGUgbm90aWZpY2F0
aW9ucyBsaXN0IGFuZCBkZWxldGUgdGhlIGljb24uCisgICAgUUhhc2ggPE5vdGlmaWNhdGlvbios
IFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKj46Okl0ZXJhdG9yIGl0ZXIgPSBtX25v
dGlmaWNhdGlvbnMuZmluZChub3RpZmljYXRpb24pOworICAgIGlmIChpdGVyICE9IG1fbm90aWZp
Y2F0aW9ucy5lbmQoKSkKKyAgICAgICAgZGVsZXRlIG1fbm90aWZpY2F0aW9ucy50YWtlKG5vdGlm
aWNhdGlvbik7CiB9CiAKIHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnJlcXVl
c3RQZXJtaXNzaW9uKFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4sIFBhc3NSZWZQdHI8Vm9pZENhbGxi
YWNrPiBjYWxsYmFjaykKQEAgLTk3LDEzICsxNTEsNTkgQEAgdm9pZCBOb3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdDo6cmVxdQogICAgIGlmIChkdW1wTm90aWZpY2F0aW9uKQogICAgICAgcHJp
bnRmKCJERVNLVE9QIE5PVElGSUNBVElPTiBQRVJNSVNTSU9OIFJFUVVFU1RFRDogJXNcbiIsIFFT
dHJpbmcob3JpZ2luLT50b1N0cmluZygpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAKLSAgICBu
b3RJbXBsZW1lbnRlZCgpOworICAgIFFTdHJpbmcgb3JpZ2luU3RyaW5nID0gb3JpZ2luLT50b1N0
cmluZygpOworICAgIFFIYXNoPFFTdHJpbmcsIFFMaXN0PFJlZlB0cjxWb2lkQ2FsbGJhY2s+ID4g
Pjo6aXRlcmF0b3IgaXRlciA9IG1fcGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5maW5kKG9yaWdp
blN0cmluZyk7CisgICAgaWYgKGl0ZXIgIT0gbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLmVu
ZCgpKQorICAgICAgICBpdGVyLnZhbHVlKCkuYXBwZW5kKGNhbGxiYWNrKTsKKyAgICBlbHNlIHsK
KyAgICAgICAgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4gPiBjYWxsYmFja3M7CisgICAgICAg
IFJlZlB0cjxWb2lkQ2FsbGJhY2s+IGNiID0gY2FsbGJhY2s7CisgICAgICAgIGNhbGxiYWNrcy5h
cHBlbmQoY2IpOworICAgICAgICBtX3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMuaW5zZXJ0KG9y
aWdpblN0cmluZywgY2FsbGJhY2tzKTsKKyAgICAgICAgZW1pdCBtX3BhZ2UtPnJlcXVlc3RQZXJt
aXNzaW9uKG9yaWdpblN0cmluZyk7CisgICAgfQogfQogCi1Ob3RpZmljYXRpb25QcmVzZW50ZXI6
OlBlcm1pc3Npb24gTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmNoZWNrUGVybWlzc2lv
bihjb25zdCBLVVJMJikKK05vdGlmaWNhdGlvblByZXNlbnRlcjo6UGVybWlzc2lvbiBOb3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwmIHVybCkK
IHsKLSAgICAvLyBGSVhNRSBJbXBsZW1lbnQgcGVybWlzc2lvbiBwb2xpY3kKKyAgICBRV2ViUGFn
ZTo6Tm90aWZpY2F0aW9uUGVybWlzc2lvbiBwZXJtaXNzaW9uID0gUVdlYlBhZ2U6OlBlcm1pc3Np
b25BbGxvd2VkOworICAgIFFTdHJpbmcgb3JpZ2luID0gdXJsLnN0cmluZygpOworICAgIGVtaXQg
bV9wYWdlLT5jaGVja1Blcm1pc3Npb24ob3JpZ2luLCBwZXJtaXNzaW9uKTsKKyAgICBzd2l0Y2gg
KHBlcm1pc3Npb24pIHsKKyAgICBjYXNlIFFXZWJQYWdlOjpQZXJtaXNzaW9uQWxsb3dlZDoKKyAg
ICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNlbnRlcjo6UGVybWlzc2lvbkFsbG93ZWQ7Cisg
ICAgY2FzZSBRV2ViUGFnZTo6UGVybWlzc2lvbk5vdEFsbG93ZWQ6CisgICAgICAgIHJldHVybiBO
b3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25Ob3RBbGxvd2VkOworICAgIGNhc2UgUVdl
YlBhZ2U6OlBlcm1pc3Npb25EZW5pZWQ6CisgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25QcmVz
ZW50ZXI6OlBlcm1pc3Npb25EZW5pZWQ7CisgICAgfQogICAgIHJldHVybiBOb3RpZmljYXRpb25Q
cmVzZW50ZXI6OlBlcm1pc3Npb25BbGxvd2VkOwogfQogCit2b2lkIE5vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudFF0OjphbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihjb25zdCBRU3RyaW5nJiBv
cmlnaW4pCit7CisgICAgUUhhc2g8UVN0cmluZywgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4g
PiA+OjppdGVyYXRvciBpdGVyID0gbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLmZpbmQob3Jp
Z2luKTsKKyAgICBpZiAoaXRlciAhPSBtX3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMuZW5kKCkp
IHsKKyAgICAgICAgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4gPiYgY2FsbGJhY2tzID0gaXRl
ci52YWx1ZSgpOworICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IGNhbGxiYWNrcy5zaXplKCk7
IGkrKykKKyAgICAgICAgICAgIGNhbGxiYWNrcy5hdChpKS0+aGFuZGxlRXZlbnQoKTsKKyAgICAg
ICAgbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLnJlbW92ZShvcmlnaW4pOworICAgIH0KK30K
Kwordm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2xlYXJOb3RpZmljYXRpb25z
TGlzdCgpCit7CisgICAgbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLmNsZWFyKCk7CisgICAg
d2hpbGUgKCFtX25vdGlmaWNhdGlvbnMuaXNFbXB0eSgpKSB7CisgICAgICAgIFFIYXNoIDxOb3Rp
ZmljYXRpb24qLCBQbGF0Zm9ybU5vdGlmaWNhdGlvbkljb25zV3JhcHBlcio+OjpJdGVyYXRvciBp
dGVyID0gbV9ub3RpZmljYXRpb25zLmJlZ2luKCk7CisgICAgICAgIGRlbGV0ZSBtX25vdGlmaWNh
dGlvbnMudGFrZShpdGVyLmtleSgpKTsKKyAgICB9Cit9CisKK3ZvaWQgTm90aWZpY2F0aW9uUHJl
c2VudGVyQ2xpZW50UXQ6OnNlbmRFdmVudChOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbiwgY29u
c3QgQXRvbWljU3RyaW5nJiBldmVudE5hbWUpCit7CisgICAgUmVmUHRyPEV2ZW50PiBldmVudCA9
IEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lLCBmYWxzZSwgdHJ1ZSk7CisgICAgbm90aWZpY2F0aW9u
LT5kaXNwYXRjaEV2ZW50KGV2ZW50LnJlbGVhc2UoKSk7Cit9CisKICNlbmRpZiAvLyBFTkFCTEUo
Tk9USUZJQ0FUSU9OUykKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRp
b25QcmVzZW50ZXJDbGllbnRRdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oCShyZXZpc2lvbiA1OTIzNCkKKysr
IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0zMiwxNyArMzIsNDIgQEAKICNpbmNsdWRlICJOb3RpZmljYXRp
b24uaCIKICNpbmNsdWRlICJOb3RpZmljYXRpb25QcmVzZW50ZXIuaCIKIAorI2luY2x1ZGUgPFFN
dWx0aUhhc2g+CiAjaW5jbHVkZSA8UVN5c3RlbVRyYXlJY29uPgogCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKK2NsYXNzIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OworfQorY2xhc3MgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlIDogcHVibGljIFFPYmplY3QgeworICAg
IFFfT0JKRUNUCitwdWJsaWM6CisgICAgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2
YXRlKCkge30KKyAgICBXZWJDb3JlOjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCogcTsK
K3B1YmxpYyBzbG90czoKKyAgICB2b2lkIGNsZWFyTm90aWZpY2F0aW9uc0xpc3QoKTsKK307CisK
KwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorY2xhc3MgUVdlYlBhZ2U7CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIGNsYXNzIERvY3VtZW50OwogY2xhc3MgS1VSTDsKIAorc3RydWN0IFBsYXRm
b3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyIHsKKyAgICBQbGF0Zm9ybU5vdGlmaWNhdGlvbklj
b25zV3JhcHBlcigpOworICAgIH5QbGF0Zm9ybU5vdGlmaWNhdGlvbkljb25zV3JhcHBlcigpOwor
I2lmbmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgorICAgIFFTeXN0ZW1UcmF5SWNvbiogbV9ub3Rp
ZmljYXRpb25JY29uOworI2VuZGlmCit9OworCiBjbGFzcyBOb3RpZmljYXRpb25QcmVzZW50ZXJD
bGllbnRRdCA6IHB1YmxpYyBOb3RpZmljYXRpb25QcmVzZW50ZXIgewogcHVibGljOgotICAgIE5v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KCk7CisgICAgTm90aWZpY2F0aW9uUHJlc2VudGVy
Q2xpZW50UXQoUVdlYlBhZ2UqKTsKKyAgICB+Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQo
KSB7IGRlbGV0ZSBkOyB9CiAKICAgICAvKiBXZWJDb3JlOjpOb3RpZmljYXRpb25QcmVzZW50ZXIg
aW50ZXJmYWNlICovCiAgICAgdmlydHVhbCBib29sIHNob3coTm90aWZpY2F0aW9uKik7CkBAIC01
MSwxMCArNzYsMTYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0UGVybWlzc2lv
bihTZWN1cml0eU9yaWdpbiosIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPik7CiAgICAgdmlydHVh
bCBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gY2hlY2tQZXJtaXNzaW9uKGNvbnN0
IEtVUkwmKTsKIAotcHJpdmF0ZTogCi0jaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJQ09OCi0gICAg
UVN5c3RlbVRyYXlJY29uIG1fdHJheTsKLSNlbmRpZgorICAgIHZvaWQgYWxsb3dOb3RpZmljYXRp
b25Gb3JPcmlnaW4oY29uc3QgUVN0cmluZyYgb3JpZ2luKTsKKyAgICB2b2lkIGNsZWFyTm90aWZp
Y2F0aW9uc0xpc3QoKTsKKyAgICBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdFByaXZhdGUq
IGQ7CisKK3ByaXZhdGU6CisgICAgdm9pZCBzZW5kRXZlbnQoTm90aWZpY2F0aW9uKiwgY29uc3Qg
QXRvbWljU3RyaW5nJiBldmVudE5hbWUpOworICAgIGZyaWVuZCBjbGFzcyBRV2ViUGFnZTsKKyAg
ICBRV2ViUGFnZSogbV9wYWdlOworICAgIFFNdWx0aUhhc2g8UVN0cmluZywgIFFMaXN0PFJlZlB0
cjxWb2lkQ2FsbGJhY2s+ID4gPiBtX3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHM7CisgICAgUUhh
c2ggPE5vdGlmaWNhdGlvbiosIFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKj4gbV9u
b3RpZmljYXRpb25zOwogfTsKIH0KIApJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNTk3NjIpCisrKyBXZWJL
aXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNSBAQAorMjAxMC0w
NS0xOSAgWWFlbCBBaGFyb24gIDx5YWVsLmFoYXJvbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBQYXNzIGFsbCB3ZWIgbm90
aWZpY2F0aW9uIGxheW91dCB0ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzkxNDYKKworICAgICAgICBNaW1pYyBDaHJvbWl1bSdzIHRlc3Rfc2hl
bGwgc2VjdXJpdHkgbW9kZWwgaW4gUXQncyBEUlQuCisgICAgICAgIEl0IG1ha2VzIGEgbGlzdCBv
ZiBvcmlnaW5zIHdoaWNoIHdlcmUgZ3JhbnRlZCBwZXJtaXNzaW9uIHRvIGRpc3BsYXkKKyAgICAg
ICAgbm90aWZpY2F0aW9ucywgYW5kIG9ubHkgdGhvc2Ugb3JpZ2lucyBjYW4gZGlzcGxheSBub3Rp
ZmljYXRpb25zLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6RHVtcFJlbmRlclRyZWUp
OgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6OmNoZWNrUGVybWlzc2lvbik6Cisg
ICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6cmVxdWVzdFBlcm1pc3Npb24pOgorICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaDoKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcDoKKyAgICAgICAgKExh
eW91dFRlc3RDb250cm9sbGVyOjpyZXNldCk6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxl
cjo6Z3JhbnREZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lvbik6CisgICAgICAgIChMYXlvdXRU
ZXN0Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lvbik6CisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oOgorCiAyMDEw
LTA1LTE4ICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBEaW1pdHJpIEdsYXprb3YuCkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAkocmV2aXNpb24gNTkyMzQpCisrKyBX
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMzk0LDYgKzM5NCwxMCBAQCBEdW1wUmVuZGVyVHJlZTo6RHVtcFJlbmRlclRy
ZWUoKQogICAgICAgICAgICAgdGhpcywgU0xPVChkdW1wRGF0YWJhc2VRdW90YShRV2ViRnJhbWUq
LFFTdHJpbmcpKSk7CiAgICAgY29ubmVjdChtX3BhZ2UsIFNJR05BTChzdGF0dXNCYXJNZXNzYWdl
KGNvbnN0IFFTdHJpbmcmKSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHN0YXR1c0Jhck1lc3Nh
Z2UoY29uc3QgUVN0cmluZyYpKSk7CisgICAgY29ubmVjdChtX3BhZ2UsIFNJR05BTChjaGVja1Bl
cm1pc3Npb24oY29uc3QgUVVybCYsIFFXZWJQYWdlOjpOb3RpZmljYXRpb25QZXJtaXNzaW9uJikp
LAorICAgICAgICAgICAgdGhpcywgU0xPVChjaGVja1Blcm1pc3Npb24oY29uc3QgUVVybCYsIFFX
ZWJQYWdlOjpOb3RpZmljYXRpb25QZXJtaXNzaW9uJikpKTsKKyAgICBjb25uZWN0KG1fcGFnZSwg
U0lHTkFMKHJlcXVlc3RQZXJtaXNzaW9uKGNvbnN0IFFTdHJpbmcmKSksCisgICAgICAgICAgICB0
aGlzLCBTTE9UKHJlcXVlc3RQZXJtaXNzaW9uKGNvbnN0IFFTdHJpbmcmKSkpOwogCiAgICAgUU9i
amVjdDo6Y29ubmVjdCh0aGlzLCBTSUdOQUwocXVpdCgpKSwgcUFwcCwgU0xPVChxdWl0KCkpLCBR
dDo6UXVldWVkQ29ubmVjdGlvbik7CiAKQEAgLTkwMiw2ICs5MDYsMTYgQEAgdm9pZCBEdW1wUmVu
ZGVyVHJlZTo6c3dpdGNoRm9jdXMoYm9vbCBmbwogICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50
KG1fbWFpblZpZXcsICZldmVudCk7CiB9CiAKK3ZvaWQgRHVtcFJlbmRlclRyZWU6OmNoZWNrUGVy
bWlzc2lvbihjb25zdCBRVXJsJiB1cmwsIFFXZWJQYWdlOjpOb3RpZmljYXRpb25QZXJtaXNzaW9u
JiBwZXJtaXNzaW9uKQoreworICAgIHBlcm1pc3Npb24gPSBtX2NvbnRyb2xsZXItPmNoZWNrRGVz
a3RvcE5vdGlmaWNhdGlvblBlcm1pc3Npb24odXJsLnNjaGVtZSgpICsgIjovLyIgKyB1cmwuaG9z
dCgpKSA/IFFXZWJQYWdlOjpQZXJtaXNzaW9uQWxsb3dlZCA6IFFXZWJQYWdlOjpQZXJtaXNzaW9u
RGVuaWVkOworfQorCit2b2lkIER1bXBSZW5kZXJUcmVlOjpyZXF1ZXN0UGVybWlzc2lvbihjb25z
dCBRU3RyaW5nJiBvcmlnaW4pCit7CisgICAgbV9wYWdlLT5hbGxvd05vdGlmaWNhdGlvbkZvck9y
aWdpbihvcmlnaW4pOworfQorCiAjaWYgZGVmaW5lZChRX1dTX1gxMSkKIHZvaWQgRHVtcFJlbmRl
clRyZWU6OmluaXRpYWxpemVGb250cygpCiB7CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oCShyZXZpc2lvbiA1OTIzNCkKKysrIFdl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaAkod29ya2luZyBj
b3B5KQpAQCAtMTExLDYgKzExMSw4IEBAIHB1YmxpYyBRX1NMT1RTOgogICAgIHZvaWQgZHVtcERh
dGFiYXNlUXVvdGEoUVdlYkZyYW1lKiBmcmFtZSwgY29uc3QgUVN0cmluZyYgZGJOYW1lKTsKICAg
ICB2b2lkIHN0YXR1c0Jhck1lc3NhZ2UoY29uc3QgUVN0cmluZyYgbWVzc2FnZSk7CiAgICAgdm9p
ZCB3aW5kb3dDbG9zZVJlcXVlc3RlZCgpOworICAgIHZvaWQgY2hlY2tQZXJtaXNzaW9uKGNvbnN0
IFFVcmwmLCBRV2ViUGFnZTo6Tm90aWZpY2F0aW9uUGVybWlzc2lvbiYpOworICAgIHZvaWQgcmVx
dWVzdFBlcm1pc3Npb24oY29uc3QgUVN0cmluZyYpOwogCiBRX1NJR05BTFM6CiAgICAgdm9pZCBx
dWl0KCk7CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29u
dHJvbGxlclF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9x
dC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAkocmV2aXNpb24gNTkyMzQpCisrKyBXZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNzMsNiArNzMsNyBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpyZXNl
dCgpCiAgICAgbV9oYW5kbGVFcnJvclBhZ2VzID0gZmFsc2U7CiAgICAgbV93ZWJIaXN0b3J5ID0g
MDsKICAgICBtX2dsb2JhbEZsYWcgPSBmYWxzZTsKKyAgICBtX2Rlc2t0b3BOb3RpZmljYXRpb25B
bGxvd2VkT3JpZ2lucy5jbGVhcigpOwogICAgIHF0X2R1bXBfZWRpdGluZ19jYWxsYmFja3MoZmFs
c2UpOwogICAgIHF0X2R1bXBfZnJhbWVfbG9hZGVyKGZhbHNlKTsKICAgICBxdF9kdW1wX3Jlc291
cmNlX2xvYWRfY2FsbGJhY2tzKGZhbHNlKTsKQEAgLTE4OSwxMyArMTkwLDEyIEBAIGludCBMYXlv
dXRUZXN0Q29udHJvbGxlcjo6d2luZG93Q291bnQoKQogCiB2b2lkIExheW91dFRlc3RDb250cm9s
bGVyOjpncmFudERlc2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKGNvbnN0IFFTdHJpbmcmIG9y
aWdpbikKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IGZvciBub3RpZmljYXRpb24gc2VjdXJp
dHkKKyAgICBtX2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2lucy5hcHBlbmQob3JpZ2lu
KTsKIH0KIAogYm9vbCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0
aW9uUGVybWlzc2lvbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCiB7Ci0gICAgLy8gRklYTUU6IElt
cGxlbWVudCBmb3Igbm90aWZpY2F0aW9uIHNlY3VyaXR5Ci0gICAgcmV0dXJuIHRydWU7CisgICAg
cmV0dXJuIG1fZGVza3RvcE5vdGlmaWNhdGlvbkFsbG93ZWRPcmlnaW5zLmNvbnRhaW5zKG9yaWdp
bik7CiB9CiAKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmRpc3BsYXkoKQpJbmRleDogV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9s
bGVyUXQuaAkocmV2aXNpb24gNTkyMzQpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9x
dC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIxMyw2ICsyMTMs
NyBAQCBwcml2YXRlOgogICAgIFFXZWJGcmFtZSogbV90b3BMb2FkaW5nRnJhbWU7CiAgICAgV2Vi
Q29yZTo6RHVtcFJlbmRlclRyZWUqIG1fZHJ0OwogICAgIFFXZWJIaXN0b3J5KiBtX3dlYkhpc3Rv
cnk7CisgICAgUVN0cmluZ0xpc3QgbV9kZXNrdG9wTm90aWZpY2F0aW9uQWxsb3dlZE9yaWdpbnM7
CiB9OwogCiAjZW5kaWYgLy8gTGF5b3V0VGVzdENvbnRyb2xsZXJRdF9oCkluZGV4OiBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZp
c2lvbiA1OTc2MikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDEyIEBACisyMDEwLTA1LTE5ICBZYWVsIEFoYXJvbiAgPHlhZWwuYWhhcm9uQG5va2lh
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBb
UXRdIFBhc3MgYWxsIHdlYiBub3RpZmljYXRpb24gbGF5b3V0IHRlc3RzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTE0NgorCisgICAgICAgICogcGxh
dGZvcm0vcXQvU2tpcHBlZDoKKwogMjAxMC0wNS0xOSAgWmhlbnlhbyBNbyAgPHptb0Bnb29nbGUu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogTGF5b3V0VGVz
dHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA1OTc2MikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3F0
L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTQ2OTgsMTQgKzQ2OTgsNiBAQCBsb2FkZXIvZ28t
YmFjay10by1kaWZmZXJlbnQtd2luZG93LXNpemUuCiAjIFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBv
cnQgR2VvbG9jYXRpb24uCiBmYXN0L2RvbS9HZW9sb2NhdGlvbgogCi0jIFRoaXMgcG9ydCBkb2Vz
bid0IHN1cHBvcnQgTm90aWZpY2F0aW9uIHBlcm1pc3Npb25zCi1mYXN0L25vdGlmaWNhdGlvbnMv
bm90aWZpY2F0aW9ucy1jaGVjay1wZXJtaXNzaW9uLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9ucy9u
b3RpZmljYXRpb25zLWRpc3BsYXktY2xvc2UtZXZlbnRzLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9u
cy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi5odG1sCi1mYXN0L25vdGlmaWNhdGlv
bnMvbm90aWZpY2F0aW9ucy13aXRob3V0LXBlcm1pc3Npb24uaHRtbAotZmFzdC9ub3RpZmljYXRp
b25zL25vdGlmaWNhdGlvbnMtcnRsLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRp
b25zLXJlcGxhY2UuaHRtbAotCiAjIE1pc3NpbmcgRFJUIGFiaWxpdHkgdG8gc2V0IGFjY2VwdCBj
b29raWUgcG9saWN5CiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Nyb3NzLW9yaWdpbi1jb29r
aWUtc3RvcmFnZS5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56493</attachid>
            <date>2010-05-19 08:36:08 -0700</date>
            <delta_ts>2010-05-19 15:21:38 -0700</delta_ts>
            <desc>Updated patch after merge.</desc>
            <filename>39146.patch</filename>
            <type>text/plain</type>
            <size>20370</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNTk3NjIpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTAtMDUtMTkgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFy
b25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVzdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIG11bHRpcGxlIHNpbXVsdGFuZW91cyBub3RpZmljYXRpb25zLgor
ICAgICAgICBBZGQgc2lnbmFscyB0byB0aGUgY2xpZW50IGZvciBzZWN1cml0eSBjaGVja3MuIE5v
dGlmaWNhdGlvbnMgYXJlIGVuYWJsZWQKKyAgICAgICAgaWYgdGhlIGNsaWVudCBkb2VzIG5vdCBj
b25uZWN0IHRvIHRoZSBzaWduYWxzLiAKKyAgICAgICAgU3VwcG9ydCByZXBsYWNlSWQgYW5kIGNh
bmNlbC4KKyAgICAgICAgU2VuZCBjbG9zZSBhbmQgZGlzcGxheSBldmVudHMgd2hlbiBuZWVkZWQu
ICAgCisKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3BwOgorICAgICAgICAoUVdlYlBhZ2VQcml2
YXRlOjpRV2ViUGFnZVByaXZhdGUpOgorICAgICAgICAoUVdlYlBhZ2U6OmFsbG93Tm90aWZpY2F0
aW9uRm9yT3JpZ2luKToKKyAgICAgICAgKFFXZWJQYWdlOjpRV2ViUGFnZSk6CisgICAgICAgICog
QXBpL3F3ZWJwYWdlLmg6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJl
c2VudGVyQ2xpZW50UXQuY3BwOgorICAgICAgICAoUGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dy
YXBwZXI6OlBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKToKKyAgICAgICAgKFBsYXRm
b3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyOjp+UGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dy
YXBwZXIpOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlOjpj
bGVhck5vdGlmaWNhdGlvbnNMaXN0KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0OjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCk6CisgICAgICAgIChOb3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2hvdyk6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdDo6Y2FuY2VsKToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0Ojpub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQpOgorICAgICAgICAoTm90aWZpY2F0
aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnJlcXVlc3RQZXJtaXNzaW9uKToKKyAgICAgICAgKE5vdGlm
aWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjaGVja1Blcm1pc3Npb24pOgorICAgICAgICAoTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKToK
KyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjbGVhck5vdGlmaWNhdGlv
bnNMaXN0KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzZW5kRXZl
bnQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0Lmg6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdFByaXZhdGU6Ok5v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJpdmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpO
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6fk5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0KToKKwogMjAxMC0wNS0xOSAgRGVuaXMgRHp5dWJlbmtvIDxkZW5pcy5kenl1YmVua29Abm9r
aWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2Vu
LgpJbmRleDogV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
L3F0L0FwaS9xd2VicGFnZS5jcHAJKHJldmlzaW9uIDU5NzYyKQorKysgV2ViS2l0L3F0L0FwaS9x
d2VicGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5OSw3ICsyOTksNyBAQCBRV2ViUGFnZVBy
aXZhdGU6OlFXZWJQYWdlUHJpdmF0ZShRV2ViUGFnCiAgICAgUGFnZUdyb3VwOjpzZXRTaG91bGRU
cmFja1Zpc2l0ZWRMaW5rcyh0cnVlKTsKICAgICAKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykg
ICAgCi0gICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3IE5vdGlmaWNhdGlvblBy
ZXNlbnRlckNsaWVudFF0KCk7CisgICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3
IE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KHEpOwogI2VuZGlmCiB9CiAKQEAgLTE0MjMs
NiArMTQyMywxNCBAQCBRVmFyaWFudCBRV2ViUGFnZTo6aW5wdXRNZXRob2RRdWVyeShRdDo6CiAg
ICAgfQogfQogCit2b2lkIFFXZWJQYWdlOjphbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihjb25z
dCBRU3RyaW5nJiBvcmlnaW4pCit7CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAgZC0+
bm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50LT5hbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihv
cmlnaW4pOworI2VuZGlmCisKK30KKwogLyohCiAgICAgXGludGVybmFsCiAqLwpAQCAtMTY4NSw2
ICsxNjkzLDkgQEAgUVdlYlBhZ2U6OlFXZWJQYWdlKFFPYmplY3QgKnBhcmVudCkKICNpZm5kZWYg
TkRFQlVHCiAgICAgY29ubmVjdChRQ29yZUFwcGxpY2F0aW9uOjppbnN0YW5jZSgpLCBTSUdOQUwo
YWJvdXRUb1F1aXQoKSksIHRoaXMsIFNMT1QoX3FfY2xlYW51cExlYWtNZXNzYWdlcygpKSk7CiAj
ZW5kaWYKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyAgICBjb25uZWN0KG1haW5GcmFtZSgp
LCBTSUdOQUwoamF2YVNjcmlwdFdpbmRvd09iamVjdENsZWFyZWQoKSksIGQtPm5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudC0+ZCwgU0xPVChjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCkpKTsKKyNl
bmRpZgogfQogCiAvKiEKSW5kZXg6IFdlYktpdC9xdC9BcGkvcXdlYnBhZ2UuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmgJKHJldmlzaW9uIDU5NzYyKQorKysgV2ViS2l0
L3F0L0FwaS9xd2VicGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTIsNiArMTkyLDEyIEBAIHB1
YmxpYzoKICAgICAgICAgV2ViTW9kYWxEaWFsb2cKICAgICB9OwogCisgICAgZW51bSBOb3RpZmlj
YXRpb25QZXJtaXNzaW9uIHsKKyAgICAgICAgUGVybWlzc2lvbkFsbG93ZWQsCisgICAgICAgIFBl
cm1pc3Npb25Ob3RBbGxvd2VkLAorICAgICAgICBQZXJtaXNzaW9uRGVuaWVkCisgICAgfTsKKwog
ICAgIGV4cGxpY2l0IFFXZWJQYWdlKFFPYmplY3QgKnBhcmVudCA9IDApOwogICAgIH5RV2ViUGFn
ZSgpOwogCkBAIC0yNTgsNiArMjY0LDggQEAgcHVibGljOgogCiAgICAgUU1lbnUgKmNyZWF0ZVN0
YW5kYXJkQ29udGV4dE1lbnUoKTsKIAorICAgIHZvaWQgYWxsb3dOb3RpZmljYXRpb25Gb3JPcmln
aW4oY29uc3QgUVN0cmluZyYgb3JpZ2luKTsKKwogICAgIGVudW0gRXh0ZW5zaW9uIHsKICAgICAg
ICAgQ2hvb3NlTXVsdGlwbGVGaWxlc0V4dGVuc2lvbiwKICAgICAgICAgRXJyb3JQYWdlRXh0ZW5z
aW9uCkBAIC0zMzUsNiArMzQzLDggQEAgUV9TSUdOQUxTOgogCiAgICAgdm9pZCBzYXZlRnJhbWVT
dGF0ZVJlcXVlc3RlZChRV2ViRnJhbWUqIGZyYW1lLCBRV2ViSGlzdG9yeUl0ZW0qIGl0ZW0pOwog
ICAgIHZvaWQgcmVzdG9yZUZyYW1lU3RhdGVSZXF1ZXN0ZWQoUVdlYkZyYW1lKiBmcmFtZSk7Cisg
ICAgdm9pZCBjaGVja1Blcm1pc3Npb24oY29uc3QgUVVybCYsIFFXZWJQYWdlOjpOb3RpZmljYXRp
b25QZXJtaXNzaW9uJik7CisgICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihjb25zdCBRU3RyaW5n
Jik7CiAKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIFFXZWJQYWdlICpjcmVhdGVXaW5kb3coV2Vi
V2luZG93VHlwZSB0eXBlKTsKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmNwcAkocmV2aXNpb24gNTk3
NjIpCisrKyBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xp
ZW50UXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMywxMiArMzMsMTMgQEAKICNpbmNsdWRlICJO
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oIgogCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIK
KyNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiS1VSTC5oIgotI2luY2x1ZGUgIk5v
dEltcGxlbWVudGVkLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKIAorI2luY2x1ZGUg
InF3ZWJmcmFtZS5oIgogI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIKLQorI2luY2x1ZGUgInF3
ZWJwYWdlLmgiCiAjaW5jbHVkZSA8UXRHdWk+CiAKIApAQCAtNDgsMjUgKzQ5LDczIEBAIHVzaW5n
IG5hbWVzcGFjZSBXZWJDb3JlOwogCiBib29sIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0
OjpkdW1wTm90aWZpY2F0aW9uID0gZmFsc2U7CiAKLU5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0OjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCgpCitQbGF0Zm9ybU5vdGlmaWNhdGlv
bkljb25zV3JhcHBlcjo6UGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIoKQogeworI2lm
bmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgorICAgIG1fbm90aWZpY2F0aW9uSWNvbiA9IDA7Cisj
ZW5kaWYKK30KKworUGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXI6On5QbGF0Zm9ybU5v
dGlmaWNhdGlvbkljb25zV3JhcHBlcigpCit7CisjaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJQ09O
CisgICAgZGVsZXRlIG1fbm90aWZpY2F0aW9uSWNvbjsKKyNlbmRpZgorfQorCit2b2lkIE5vdGlm
aWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJpdmF0ZTo6Y2xlYXJOb3RpZmljYXRpb25zTGlzdCgp
Cit7CisgICAgcS0+Y2xlYXJOb3RpZmljYXRpb25zTGlzdCgpOworfQorCitOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQoUVdlYlBhZ2Uq
IHBhZ2UpIDogbV9wYWdlKHBhZ2UpCit7CisgICAgZCA9IG5ldyBOb3RpZmljYXRpb25QcmVzZW50
ZXJDbGllbnRRdFByaXZhdGU7CisgICAgZC0+cSA9IHRoaXM7CiB9CiAKIGJvb2wgTm90aWZpY2F0
aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnNob3coTm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24pCiB7
CisgICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFw
cGVyKj46Okl0ZXJhdG9yIGVuZCA9IG1fbm90aWZpY2F0aW9ucy5lbmQoKTsKKyAgICBRSGFzaCA8
Tm90aWZpY2F0aW9uKiwgUGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIqPjo6SXRlcmF0
b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5iZWdpbigpOworCisgICAgaWYgKCFub3RpZmljYXRp
b24tPnJlcGxhY2VJZCgpLmlzRW1wdHkoKSkgeworICAgICAgICB3aGlsZSAoaXRlciAhPSBlbmQp
IHsKKyAgICAgICAgICAgIE5vdGlmaWNhdGlvbiogZXhpc3RpbmdOb3RpZmljYXRpb24gPSBpdGVy
LmtleSgpOworICAgICAgICAgICAgaWYgKGV4aXN0aW5nTm90aWZpY2F0aW9uLT5yZXBsYWNlSWQo
KSA9PSBub3RpZmljYXRpb24tPnJlcGxhY2VJZCgpICYmIGV4aXN0aW5nTm90aWZpY2F0aW9uLT51
cmwoKS5wcm90b2NvbCgpID09IG5vdGlmaWNhdGlvbi0+dXJsKCkucHJvdG9jb2woKSAmJiBleGlz
dGluZ05vdGlmaWNhdGlvbi0+dXJsKCkuaG9zdCgpID09IG5vdGlmaWNhdGlvbi0+dXJsKCkuaG9z
dCgpKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgaXRlcisrOworICAgICAg
ICB9CisgICAgfSBlbHNlCisgICAgICAgIGl0ZXIgPSBlbmQ7CisKICAgICBpZiAoZHVtcE5vdGlm
aWNhdGlvbikgeworICAgICAgICBpZiAoaXRlciAhPSBlbmQpIHsKKyAgICAgICAgICAgIE5vdGlm
aWNhdGlvbiogb2xkTm90aWZpY2F0aW9uID0gaXRlci5rZXkoKTsKKyAgICAgICAgICAgIHByaW50
ZigiUkVQTEFDSU5HIE5PVElGSUNBVElPTiAlc1xuIiwgb2xkTm90aWZpY2F0aW9uLT5pc0hUTUwo
KSA/IFFTdHJpbmcob2xkTm90aWZpY2F0aW9uLT51cmwoKS5zdHJpbmcoKSkudG9VdGY4KCkuY29u
c3REYXRhKCkgOiBRU3RyaW5nKG9sZE5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS50aXRsZSgpKS50
b1V0ZjgoKS5jb25zdERhdGEoKSk7CisgICAgICAgIH0KICAgICAgICAgaWYgKG5vdGlmaWNhdGlv
bi0+aXNIVE1MKCkpCiAgICAgICAgICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FUSU9OOiBj
b250ZW50cyBhdCAlc1xuIiwgUVN0cmluZyhub3RpZmljYXRpb24tPnVybCgpLnN0cmluZygpKS50
b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgcHJpbnRm
KCJERVNLVE9QIE5PVElGSUNBVElPTjogaWNvbiAlcywgdGl0bGUgJXMsIHRleHQgJXNcbiIsIAor
ICAgICAgICAgICAgcHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElPTjolcyBpY29uICVzLCB0aXRs
ZSAlcywgdGV4dCAlc1xuIiwKKyAgICAgICAgICAgICAgICBub3RpZmljYXRpb24tPmRpcigpID09
ICJydGwiID8gIihSVEwpIiA6ICIiLAogICAgICAgICAgICAgICAgIFFTdHJpbmcobm90aWZpY2F0
aW9uLT5jb250ZW50cygpLmljb24oKS5zdHJpbmcoKSkudG9VdGY4KCkuY29uc3REYXRhKCksIFFT
dHJpbmcobm90aWZpY2F0aW9uLT5jb250ZW50cygpLnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0RGF0
YSgpLCAKICAgICAgICAgICAgICAgICBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS5i
b2R5KCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKICAgICAgICAgfQogICAgIH0KIAorICAgIGlm
IChpdGVyICE9IGVuZCkgeworICAgICAgICBzZW5kRXZlbnQoaXRlci5rZXkoKSwgZXZlbnROYW1l
cygpLmNsb3NlRXZlbnQpOworICAgICAgICBkZWxldGUgbV9ub3RpZmljYXRpb25zLnRha2UoaXRl
ci5rZXkoKSk7CisgICAgfQorICAgIFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKiB3
cmFwcGVyID0gbmV3IFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKCk7CisgICAgbV9u
b3RpZmljYXRpb25zLmluc2VydChub3RpZmljYXRpb24sIHdyYXBwZXIpOworICAgIHNlbmRFdmVu
dChub3RpZmljYXRpb24sICJkaXNwbGF5Iik7CisKICNpZm5kZWYgUVRfTk9fU1lTVEVNVFJBWUlD
T04KLSAgICBtX3RyYXkuc2hvdygpOwotICAgIG1fdHJheS5zaG93TWVzc2FnZShub3RpZmljYXRp
b24tPmNvbnRlbnRzKCkudGl0bGUoKSwgbm90aWZpY2F0aW9uLT5jb250ZW50cygpLmJvZHkoKSwg
UVN5c3RlbVRyYXlJY29uOjpJbmZvcm1hdGlvbik7CisgICAgd3JhcHBlci0+bV9ub3RpZmljYXRp
b25JY29uID0gbmV3IFFTeXN0ZW1UcmF5SWNvbjsKKyAgICB3cmFwcGVyLT5tX25vdGlmaWNhdGlv
bkljb24tPnNob3coKTsKKyAgICB3cmFwcGVyLT5tX25vdGlmaWNhdGlvbkljb24tPnNob3dNZXNz
YWdlKG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS50aXRsZSgpLCBub3RpZmljYXRpb24tPmNvbnRl
bnRzKCkuYm9keSgpKTsKICNlbmRpZgogICAgIHJldHVybiB0cnVlOwogfQpAQCAtODAsMTIgKzEy
OSwxNyBAQCB2b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjYW5jCiAgICAgICAg
ICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FUSU9OIENMT1NFRDogJXNcbiIsIFFTdHJpbmco
bm90aWZpY2F0aW9uLT5jb250ZW50cygpLnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsK
ICAgICB9CiAKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIFFIYXNoIDxOb3RpZmljYXRpb24q
LCBQbGF0Zm9ybU5vdGlmaWNhdGlvbkljb25zV3JhcHBlcio+OjpJdGVyYXRvciBpdGVyID0gbV9u
b3RpZmljYXRpb25zLmZpbmQobm90aWZpY2F0aW9uKTsKKyAgICBpZiAoaXRlciAhPSBtX25vdGlm
aWNhdGlvbnMuZW5kKCkpCisgICAgICAgIHNlbmRFdmVudChpdGVyLmtleSgpLCBldmVudE5hbWVz
KCkuY2xvc2VFdmVudCk7CiB9CiAKIHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6
Om5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZChOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikK
IHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIC8vIENhbGxlZCBmcm9tIH5Ob3RpZmljYXRp
b24oKSwgUmVtb3ZlIHRoZSBlbnRyeSBmcm9tIHRoZSBub3RpZmljYXRpb25zIGxpc3QgYW5kIGRl
bGV0ZSB0aGUgaWNvbi4KKyAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgUGxhdGZvcm1Ob3RpZmlj
YXRpb25JY29uc1dyYXBwZXIqPjo6SXRlcmF0b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5maW5k
KG5vdGlmaWNhdGlvbik7CisgICAgaWYgKGl0ZXIgIT0gbV9ub3RpZmljYXRpb25zLmVuZCgpKQor
ICAgICAgICBkZWxldGUgbV9ub3RpZmljYXRpb25zLnRha2Uobm90aWZpY2F0aW9uKTsKIH0KIAog
dm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6cmVxdWVzdFBlcm1pc3Npb24oU2Vj
dXJpdHlPcmlnaW4qIG9yaWdpbiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IGNhbGxiYWNrKQpA
QCAtOTMsMTMgKzE0Nyw1OSBAQCB2b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0Ojpy
ZXF1CiAgICAgaWYgKGR1bXBOb3RpZmljYXRpb24pCiAgICAgICBwcmludGYoIkRFU0tUT1AgTk9U
SUZJQ0FUSU9OIFBFUk1JU1NJT04gUkVRVUVTVEVEOiAlc1xuIiwgUVN0cmluZyhvcmlnaW4tPnRv
U3RyaW5nKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKIAotICAgIG5vdEltcGxlbWVudGVkKCk7
CisgICAgUVN0cmluZyBvcmlnaW5TdHJpbmcgPSBvcmlnaW4tPnRvU3RyaW5nKCk7CisgICAgUUhh
c2g8UVN0cmluZywgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4gPiA+OjppdGVyYXRvciBpdGVy
ID0gbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLmZpbmQob3JpZ2luU3RyaW5nKTsKKyAgICBp
ZiAoaXRlciAhPSBtX3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMuZW5kKCkpCisgICAgICAgIGl0
ZXIudmFsdWUoKS5hcHBlbmQoY2FsbGJhY2spOworICAgIGVsc2UgeworICAgICAgICBRTGlzdDxS
ZWZQdHI8Vm9pZENhbGxiYWNrPiA+IGNhbGxiYWNrczsKKyAgICAgICAgUmVmUHRyPFZvaWRDYWxs
YmFjaz4gY2IgPSBjYWxsYmFjazsKKyAgICAgICAgY2FsbGJhY2tzLmFwcGVuZChjYik7CisgICAg
ICAgIG1fcGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5pbnNlcnQob3JpZ2luU3RyaW5nLCBjYWxs
YmFja3MpOworICAgICAgICBlbWl0IG1fcGFnZS0+cmVxdWVzdFBlcm1pc3Npb24ob3JpZ2luU3Ry
aW5nKTsKKyAgICB9CiB9CiAKLU5vdGlmaWNhdGlvblByZXNlbnRlcjo6UGVybWlzc2lvbiBOb3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwmKQor
Tm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uIE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0OjpjaGVja1Blcm1pc3Npb24oY29uc3QgS1VSTCYgdXJsKQogewotICAgIC8vIEZJWE1F
IEltcGxlbWVudCBwZXJtaXNzaW9uIHBvbGljeQorICAgIFFXZWJQYWdlOjpOb3RpZmljYXRpb25Q
ZXJtaXNzaW9uIHBlcm1pc3Npb24gPSBRV2ViUGFnZTo6UGVybWlzc2lvbkFsbG93ZWQ7CisgICAg
UVN0cmluZyBvcmlnaW4gPSB1cmwuc3RyaW5nKCk7CisgICAgZW1pdCBtX3BhZ2UtPmNoZWNrUGVy
bWlzc2lvbihvcmlnaW4sIHBlcm1pc3Npb24pOworICAgIHN3aXRjaCAocGVybWlzc2lvbikgewor
ICAgIGNhc2UgUVdlYlBhZ2U6OlBlcm1pc3Npb25BbGxvd2VkOgorICAgICAgICByZXR1cm4gTm90
aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uQWxsb3dlZDsKKyAgICBjYXNlIFFXZWJQYWdl
OjpQZXJtaXNzaW9uTm90QWxsb3dlZDoKKyAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNl
bnRlcjo6UGVybWlzc2lvbk5vdEFsbG93ZWQ7CisgICAgY2FzZSBRV2ViUGFnZTo6UGVybWlzc2lv
bkRlbmllZDoKKyAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNlbnRlcjo6UGVybWlzc2lv
bkRlbmllZDsKKyAgICB9CiAgICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNlbnRlcjo6UGVybWlz
c2lvbkFsbG93ZWQ7CiB9CiAKK3ZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmFs
bG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKK3sKKyAgICBR
SGFzaDxRU3RyaW5nLCBRTGlzdDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+ID46Oml0ZXJhdG9yIGl0
ZXIgPSBtX3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMuZmluZChvcmlnaW4pOworICAgIGlmIChp
dGVyICE9IG1fcGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5lbmQoKSkgeworICAgICAgICBRTGlz
dDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+JiBjYWxsYmFja3MgPSBpdGVyLnZhbHVlKCk7CisgICAg
ICAgIGZvciAoaW50IGkgPSAwOyBpIDwgY2FsbGJhY2tzLnNpemUoKTsgaSsrKQorICAgICAgICAg
ICAgY2FsbGJhY2tzLmF0KGkpLT5oYW5kbGVFdmVudCgpOworICAgICAgICBtX3BlbmRpbmdQZXJt
aXNzaW9uUmVxdWVzdHMucmVtb3ZlKG9yaWdpbik7CisgICAgfQorfQorCit2b2lkIE5vdGlmaWNh
dGlvblByZXNlbnRlckNsaWVudFF0OjpjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCkKK3sKKyAgICBt
X3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMuY2xlYXIoKTsKKyAgICB3aGlsZSAoIW1fbm90aWZp
Y2F0aW9ucy5pc0VtcHR5KCkpIHsKKyAgICAgICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIFBsYXRm
b3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKj46Okl0ZXJhdG9yIGl0ZXIgPSBtX25vdGlmaWNh
dGlvbnMuYmVnaW4oKTsKKyAgICAgICAgZGVsZXRlIG1fbm90aWZpY2F0aW9ucy50YWtlKGl0ZXIu
a2V5KCkpOworICAgIH0KK30KKwordm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6
c2VuZEV2ZW50KE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uLCBjb25zdCBBdG9taWNTdHJpbmcm
IGV2ZW50TmFtZSkKK3sKKyAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50ID0gRXZlbnQ6OmNyZWF0ZShl
dmVudE5hbWUsIGZhbHNlLCB0cnVlKTsKKyAgICBub3RpZmljYXRpb24tPmRpc3BhdGNoRXZlbnQo
ZXZlbnQucmVsZWFzZSgpKTsKK30KKwogI2VuZGlmIC8vIEVOQUJMRShOT1RJRklDQVRJT05TKQpJ
bmRleDogV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0LmgJKHJldmlzaW9uIDU5NzYyKQorKysgV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmgJKHdvcmtpbmcgY29weSkK
QEAgLTMyLDE3ICszMiw0MiBAQAogI2luY2x1ZGUgIk5vdGlmaWNhdGlvbi5oIgogI2luY2x1ZGUg
Ik5vdGlmaWNhdGlvblByZXNlbnRlci5oIgogCisjaW5jbHVkZSA8UU11bHRpSGFzaD4KICNpbmNs
dWRlIDxRU3lzdGVtVHJheUljb24+CiAKKworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ7Cit9CitjbGFzcyBOb3RpZmljYXRpb25QcmVzZW50
ZXJDbGllbnRRdFByaXZhdGUgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKK3B1Ymxp
YzoKKyAgICBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdFByaXZhdGUoKSB7fQorICAgIFdl
YkNvcmU6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KiBxOworcHVibGljIHNsb3RzOgor
ICAgIHZvaWQgY2xlYXJOb3RpZmljYXRpb25zTGlzdCgpOworfTsKKworCiAjaWYgRU5BQkxFKE5P
VElGSUNBVElPTlMpCitjbGFzcyBRV2ViUGFnZTsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xh
c3MgRG9jdW1lbnQ7CiBjbGFzcyBLVVJMOwogCitzdHJ1Y3QgUGxhdGZvcm1Ob3RpZmljYXRpb25J
Y29uc1dyYXBwZXIgeworICAgIFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKCk7Cisg
ICAgflBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKCk7CisjaWZuZGVmIFFUX05PX1NZ
U1RFTVRSQVlJQ09OCisgICAgUVN5c3RlbVRyYXlJY29uKiBtX25vdGlmaWNhdGlvbkljb247Cisj
ZW5kaWYKK307CisKIGNsYXNzIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0IDogcHVibGlj
IE5vdGlmaWNhdGlvblByZXNlbnRlciB7CiBwdWJsaWM6Ci0gICAgTm90aWZpY2F0aW9uUHJlc2Vu
dGVyQ2xpZW50UXQoKTsKKyAgICBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdChRV2ViUGFn
ZSopOworICAgIH5Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCgpIHsgZGVsZXRlIGQ7IH0K
IAogICAgIC8qIFdlYkNvcmU6Ok5vdGlmaWNhdGlvblByZXNlbnRlciBpbnRlcmZhY2UgKi8KICAg
ICB2aXJ0dWFsIGJvb2wgc2hvdyhOb3RpZmljYXRpb24qKTsKQEAgLTUxLDEyICs3NiwxOCBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uKFNlY3VyaXR5T3JpZ2lu
KiwgUGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+KTsKICAgICB2aXJ0dWFsIE5vdGlmaWNhdGlvblBy
ZXNlbnRlcjo6UGVybWlzc2lvbiBjaGVja1Blcm1pc3Npb24oY29uc3QgS1VSTCYpOwogCisgICAg
dm9pZCBhbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pOwor
ICAgIHZvaWQgY2xlYXJOb3RpZmljYXRpb25zTGlzdCgpOworICAgIE5vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudFF0UHJpdmF0ZSogZDsKKwogICAgIHN0YXRpYyBib29sIGR1bXBOb3RpZmljYXRp
b247CiAKLXByaXZhdGU6IAotI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgotICAgIFFTeXN0
ZW1UcmF5SWNvbiBtX3RyYXk7Ci0jZW5kaWYKK3ByaXZhdGU6CisgICAgdm9pZCBzZW5kRXZlbnQo
Tm90aWZpY2F0aW9uKiwgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudE5hbWUpOworICAgIGZyaWVu
ZCBjbGFzcyBRV2ViUGFnZTsKKyAgICBRV2ViUGFnZSogbV9wYWdlOworICAgIFFNdWx0aUhhc2g8
UVN0cmluZywgIFFMaXN0PFJlZlB0cjxWb2lkQ2FsbGJhY2s+ID4gPiBtX3BlbmRpbmdQZXJtaXNz
aW9uUmVxdWVzdHM7CisgICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIFBsYXRmb3JtTm90aWZpY2F0
aW9uSWNvbnNXcmFwcGVyKj4gbV9ub3RpZmljYXRpb25zOwogfTsKIH0KIApJbmRleDogV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2
aXNpb24gNTk3NjIpCisrKyBXZWJLaXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwyNSBAQAorMjAxMC0wNS0xOSAgWWFlbCBBaGFyb24gIDx5YWVsLmFoYXJvbkBub2tp
YS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
W1F0XSBQYXNzIGFsbCB3ZWIgbm90aWZpY2F0aW9uIGxheW91dCB0ZXN0cworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkxNDYKKworICAgICAgICBNaW1p
YyBDaHJvbWl1bSdzIHRlc3Rfc2hlbGwgc2VjdXJpdHkgbW9kZWwgaW4gUXQncyBEUlQuCisgICAg
ICAgIEl0IG1ha2VzIGEgbGlzdCBvZiBvcmlnaW5zIHdoaWNoIHdlcmUgZ3JhbnRlZCBwZXJtaXNz
aW9uIHRvIGRpc3BsYXkKKyAgICAgICAgbm90aWZpY2F0aW9ucywgYW5kIG9ubHkgdGhvc2Ugb3Jp
Z2lucyBjYW4gZGlzcGxheSBub3RpZmljYXRpb25zLgorCisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVy
VHJlZTo6RHVtcFJlbmRlclRyZWUpOgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6
OmNoZWNrUGVybWlzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6cmVx
dWVzdFBlcm1pc3Npb24pOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJU
cmVlUXQuaDoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxl
clF0LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpyZXNldCk6CisgICAgICAg
IChMYXlvdXRUZXN0Q29udHJvbGxlcjo6Z3JhbnREZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lv
bik6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0
aW9uUGVybWlzc2lvbik6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENv
bnRyb2xsZXJRdC5oOgorCiAyMDEwLTA1LTE4ICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEdsYXprb3YuCkluZGV4OiBXZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAko
cmV2aXNpb24gNTk3NjIpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVu
ZGVyVHJlZVF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzg5LDYgKzM4OSwxMCBAQCBEdW1wUmVu
ZGVyVHJlZTo6RHVtcFJlbmRlclRyZWUoKQogICAgICAgICAgICAgdGhpcywgU0xPVChkdW1wRGF0
YWJhc2VRdW90YShRV2ViRnJhbWUqLFFTdHJpbmcpKSk7CiAgICAgY29ubmVjdChtX3BhZ2UsIFNJ
R05BTChzdGF0dXNCYXJNZXNzYWdlKGNvbnN0IFFTdHJpbmcmKSksCiAgICAgICAgICAgICB0aGlz
LCBTTE9UKHN0YXR1c0Jhck1lc3NhZ2UoY29uc3QgUVN0cmluZyYpKSk7CisgICAgY29ubmVjdCht
X3BhZ2UsIFNJR05BTChjaGVja1Blcm1pc3Npb24oY29uc3QgUVVybCYsIFFXZWJQYWdlOjpOb3Rp
ZmljYXRpb25QZXJtaXNzaW9uJikpLAorICAgICAgICAgICAgdGhpcywgU0xPVChjaGVja1Blcm1p
c3Npb24oY29uc3QgUVVybCYsIFFXZWJQYWdlOjpOb3RpZmljYXRpb25QZXJtaXNzaW9uJikpKTsK
KyAgICBjb25uZWN0KG1fcGFnZSwgU0lHTkFMKHJlcXVlc3RQZXJtaXNzaW9uKGNvbnN0IFFTdHJp
bmcmKSksCisgICAgICAgICAgICB0aGlzLCBTTE9UKHJlcXVlc3RQZXJtaXNzaW9uKGNvbnN0IFFT
dHJpbmcmKSkpOwogCiAgICAgUU9iamVjdDo6Y29ubmVjdCh0aGlzLCBTSUdOQUwocXVpdCgpKSwg
cUFwcCwgU0xPVChxdWl0KCkpLCBRdDo6UXVldWVkQ29ubmVjdGlvbik7CiAKQEAgLTg5OCw2ICs5
MDIsMTYgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6c3dpdGNoRm9jdXMoYm9vbCBmbwogICAgIFFB
cHBsaWNhdGlvbjo6c2VuZEV2ZW50KG1fbWFpblZpZXcsICZldmVudCk7CiB9CiAKK3ZvaWQgRHVt
cFJlbmRlclRyZWU6OmNoZWNrUGVybWlzc2lvbihjb25zdCBRVXJsJiB1cmwsIFFXZWJQYWdlOjpO
b3RpZmljYXRpb25QZXJtaXNzaW9uJiBwZXJtaXNzaW9uKQoreworICAgIHBlcm1pc3Npb24gPSBt
X2NvbnRyb2xsZXItPmNoZWNrRGVza3RvcE5vdGlmaWNhdGlvblBlcm1pc3Npb24odXJsLnNjaGVt
ZSgpICsgIjovLyIgKyB1cmwuaG9zdCgpKSA/IFFXZWJQYWdlOjpQZXJtaXNzaW9uQWxsb3dlZCA6
IFFXZWJQYWdlOjpQZXJtaXNzaW9uRGVuaWVkOworfQorCit2b2lkIER1bXBSZW5kZXJUcmVlOjpy
ZXF1ZXN0UGVybWlzc2lvbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCit7CisgICAgbV9wYWdlLT5h
bGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihvcmlnaW4pOworfQorCiAjaWYgZGVmaW5lZChRX1dT
X1gxMSkKIHZvaWQgRHVtcFJlbmRlclRyZWU6OmluaXRpYWxpemVGb250cygpCiB7CkluZGV4OiBX
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oCShy
ZXZpc2lvbiA1OTc2MikKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5k
ZXJUcmVlUXQuaAkod29ya2luZyBjb3B5KQpAQCAtMTEzLDYgKzExMyw4IEBAIHB1YmxpYyBRX1NM
T1RTOgogICAgIHZvaWQgZHVtcERhdGFiYXNlUXVvdGEoUVdlYkZyYW1lKiBmcmFtZSwgY29uc3Qg
UVN0cmluZyYgZGJOYW1lKTsKICAgICB2b2lkIHN0YXR1c0Jhck1lc3NhZ2UoY29uc3QgUVN0cmlu
ZyYgbWVzc2FnZSk7CiAgICAgdm9pZCB3aW5kb3dDbG9zZVJlcXVlc3RlZCgpOworICAgIHZvaWQg
Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IFFVcmwmLCBRV2ViUGFnZTo6Tm90aWZpY2F0aW9uUGVybWlz
c2lvbiYpOworICAgIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oY29uc3QgUVN0cmluZyYpOwogCiBR
X1NJR05BTFM6CiAgICAgdm9pZCBxdWl0KCk7CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAkocmV2aXNp
b24gNTk3NjIpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29u
dHJvbGxlclF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjQsNiArNjQsOCBAQCB2b2lkIExheW91
dFRlc3RDb250cm9sbGVyOjpyZXNldCgpCiAgICAgbV9oYW5kbGVFcnJvclBhZ2VzID0gZmFsc2U7
CiAgICAgbV93ZWJIaXN0b3J5ID0gMDsKICAgICBtX2dsb2JhbEZsYWcgPSBmYWxzZTsKKyAgICBt
X2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2lucy5jbGVhcigpOworCiAgICAgRHVtcFJl
bmRlclRyZWVTdXBwb3J0UXQ6OmR1bXBFZGl0aW5nQ2FsbGJhY2tzKGZhbHNlKTsKICAgICBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRRdDo6ZHVtcEZyYW1lTG9hZGVyKGZhbHNlKTsKICAgICBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdDo6ZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcyhmYWxzZSk7CkBAIC03
MSw2ICs3Myw3IEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnJlc2V0KCkKICAgICBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0V2lsbFNlbmRSZXF1ZXN0UmV0dXJuc051bGwoZmFsc2Up
OwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRXaWxsU2VuZFJlcXVlc3RDbGVhckhl
YWRlcnMoUVN0cmluZ0xpc3QoKSk7CiAgICAgc2V0SWNvbkRhdGFiYXNlRW5hYmxlZChmYWxzZSk7
CisKICAgICBlbWl0IGhpZGVQYWdlKCk7CiB9CiAKQEAgLTE4MSwxMyArMTg0LDEyIEBAIGludCBM
YXlvdXRUZXN0Q29udHJvbGxlcjo6d2luZG93Q291bnQoKQogCiB2b2lkIExheW91dFRlc3RDb250
cm9sbGVyOjpncmFudERlc2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKGNvbnN0IFFTdHJpbmcm
IG9yaWdpbikKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IGZvciBub3RpZmljYXRpb24gc2Vj
dXJpdHkKKyAgICBtX2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2lucy5hcHBlbmQob3Jp
Z2luKTsKIH0KIAogYm9vbCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZp
Y2F0aW9uUGVybWlzc2lvbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCiB7Ci0gICAgLy8gRklYTUU6
IEltcGxlbWVudCBmb3Igbm90aWZpY2F0aW9uIHNlY3VyaXR5Ci0gICAgcmV0dXJuIHRydWU7Cisg
ICAgcmV0dXJuIG1fZGVza3RvcE5vdGlmaWNhdGlvbkFsbG93ZWRPcmlnaW5zLmNvbnRhaW5zKG9y
aWdpbik7CiB9CiAKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmRpc3BsYXkoKQpJbmRleDog
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250
cm9sbGVyUXQuaAkocmV2aXNpb24gNTk3NjIpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIxNiw2ICsy
MTYsNyBAQCBwcml2YXRlOgogICAgIFFXZWJGcmFtZSogbV90b3BMb2FkaW5nRnJhbWU7CiAgICAg
V2ViQ29yZTo6RHVtcFJlbmRlclRyZWUqIG1fZHJ0OwogICAgIFFXZWJIaXN0b3J5KiBtX3dlYkhp
c3Rvcnk7CisgICAgUVN0cmluZ0xpc3QgbV9kZXNrdG9wTm90aWZpY2F0aW9uQWxsb3dlZE9yaWdp
bnM7CiB9OwogCiAjZW5kaWYgLy8gTGF5b3V0VGVzdENvbnRyb2xsZXJRdF9oCkluZGV4OiBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShy
ZXZpc2lvbiA1OTc2MikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDEwLTA1LTE5ICBZYWVsIEFoYXJvbiAgPHlhZWwuYWhhcm9uQG5v
a2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBbUXRdIFBhc3MgYWxsIHdlYiBub3RpZmljYXRpb24gbGF5b3V0IHRlc3RzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTE0NgorCisgICAgICAgICog
cGxhdGZvcm0vcXQvU2tpcHBlZDoKKwogMjAxMC0wNS0xOSAgWmhlbnlhbyBNbyAgPHptb0Bnb29n
bGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA1OTc2MikKKysrIExheW91dFRlc3RzL3BsYXRmb3Jt
L3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTQ2OTgsMTQgKzQ2OTgsNiBAQCBsb2FkZXIv
Z28tYmFjay10by1kaWZmZXJlbnQtd2luZG93LXNpemUuCiAjIFRoaXMgcG9ydCBkb2Vzbid0IHN1
cHBvcnQgR2VvbG9jYXRpb24uCiBmYXN0L2RvbS9HZW9sb2NhdGlvbgogCi0jIFRoaXMgcG9ydCBk
b2Vzbid0IHN1cHBvcnQgTm90aWZpY2F0aW9uIHBlcm1pc3Npb25zCi1mYXN0L25vdGlmaWNhdGlv
bnMvbm90aWZpY2F0aW9ucy1jaGVjay1wZXJtaXNzaW9uLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9u
cy9ub3RpZmljYXRpb25zLWRpc3BsYXktY2xvc2UtZXZlbnRzLmh0bWwKLWZhc3Qvbm90aWZpY2F0
aW9ucy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi5odG1sCi1mYXN0L25vdGlmaWNh
dGlvbnMvbm90aWZpY2F0aW9ucy13aXRob3V0LXBlcm1pc3Npb24uaHRtbAotZmFzdC9ub3RpZmlj
YXRpb25zL25vdGlmaWNhdGlvbnMtcnRsLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmlj
YXRpb25zLXJlcGxhY2UuaHRtbAotCiAjIE1pc3NpbmcgRFJUIGFiaWxpdHkgdG8gc2V0IGFjY2Vw
dCBjb29raWUgcG9saWN5CiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Nyb3NzLW9yaWdpbi1j
b29raWUtc3RvcmFnZS5odG1sCiAK
</data>
<flag name="review"
          id="40918"
          type_id="1"
          status="-"
          setter="laszlo.gombos"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56523</attachid>
            <date>2010-05-19 15:21:38 -0700</date>
            <delta_ts>2010-05-25 19:03:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>39146.patch</filename>
            <type>text/plain</type>
            <size>23138</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNTk3ODYpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsNDMgQEAKKzIwMTAtMDUtMTkgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFy
b25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVzdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIG11bHRpcGxlIHNpbXVsdGFuZW91cyBub3RpZmljYXRpb25zLgor
ICAgICAgICBBZGQgc2lnbmFscyB0byB0aGUgY2xpZW50IGZvciBzZWN1cml0eSBjaGVja3MuIE5v
dGlmaWNhdGlvbnMgYXJlIGVuYWJsZWQKKyAgICAgICAgaWYgdGhlIGNsaWVudCBkb2VzIG5vdCBj
b25uZWN0IHRvIHRoZSBzaWduYWxzLiAKKyAgICAgICAgU3VwcG9ydCByZXBsYWNlSWQgYW5kIGNh
bmNlbC4KKyAgICAgICAgU2VuZCBjbG9zZSBhbmQgZGlzcGxheSBldmVudHMgd2hlbiBuZWVkZWQu
ICAgCisKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3BwOgorICAgICAgICAoUVdlYlBhZ2VQcml2
YXRlOjpRV2ViUGFnZVByaXZhdGUpOgorICAgICAgICAoUVdlYlBhZ2U6OlFXZWJQYWdlKToKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHA6CisgICAg
ICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Tm90aWZpY2F0aW9uc1JlY2VpdmVyKToK
KyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjphbGxvd05vdGlmaWNhdGlvbkZvck9y
aWdpbik6CisgICAgICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Q2hlY2tQZXJtaXNz
aW9uRnVuY3Rpb24pOgorICAgICAgICAoRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNldFJlcXVl
c3RQZXJtaXNzaW9uRnVuY3Rpb24pOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlU3VwcG9ydFF0Lmg6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9u
UHJlc2VudGVyQ2xpZW50UXQuY3BwOgorICAgICAgICAoUGxhdGZvcm1Ob3RpZmljYXRpb25JY29u
c1dyYXBwZXI6OlBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKToKKyAgICAgICAgKFBs
YXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyOjp+UGxhdGZvcm1Ob3RpZmljYXRpb25JY29u
c1dyYXBwZXIpOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRl
OjpjbGVhck5vdGlmaWNhdGlvbnNMaXN0KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRl
ckNsaWVudFF0OjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCk6CisgICAgICAgIChOb3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2hvdyk6CisgICAgICAgIChOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6Y2FuY2VsKToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRl
ckNsaWVudFF0Ojpub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQpOgorICAgICAgICAoTm90aWZp
Y2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnJlcXVlc3RQZXJtaXNzaW9uKToKKyAgICAgICAgKE5v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjaGVja1Blcm1pc3Npb24pOgorICAgICAgICAo
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2lu
KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpjbGVhck5vdGlmaWNh
dGlvbnNMaXN0KToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzZW5k
RXZlbnQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0Lmg6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdFByaXZhdGU6
Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJpdmF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6fk5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0
OjpzZXRSZWNlaXZlcik6CisKIDIwMTAtMDUtMTkgIEFudHRpIEtvaXZpc3RvICA8a29pdmlzdG9A
aWtpLmZpPgogCiAgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0
aWFuc2VuLgpJbmRleDogV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAJKHJldmlzaW9uIDU5NzYyKQorKysgV2ViS2l0L3F0
L0FwaS9xd2VicGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5OSw3ICsyOTksNyBAQCBRV2Vi
UGFnZVByaXZhdGU6OlFXZWJQYWdlUHJpdmF0ZShRV2ViUGFnCiAgICAgUGFnZUdyb3VwOjpzZXRT
aG91bGRUcmFja1Zpc2l0ZWRMaW5rcyh0cnVlKTsKICAgICAKICNpZiBFTkFCTEUoTk9USUZJQ0FU
SU9OUykgICAgCi0gICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3IE5vdGlmaWNh
dGlvblByZXNlbnRlckNsaWVudFF0KCk7CisgICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50
ID0gbmV3IE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KHEpOwogI2VuZGlmCiB9CiAKQEAg
LTE2ODUsNiArMTY4NSw5IEBAIFFXZWJQYWdlOjpRV2ViUGFnZShRT2JqZWN0ICpwYXJlbnQpCiAj
aWZuZGVmIE5ERUJVRwogICAgIGNvbm5lY3QoUUNvcmVBcHBsaWNhdGlvbjo6aW5zdGFuY2UoKSwg
U0lHTkFMKGFib3V0VG9RdWl0KCkpLCB0aGlzLCBTTE9UKF9xX2NsZWFudXBMZWFrTWVzc2FnZXMo
KSkpOwogI2VuZGlmCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAgY29ubmVjdChtYWlu
RnJhbWUoKSwgU0lHTkFMKGphdmFTY3JpcHRXaW5kb3dPYmplY3RDbGVhcmVkKCkpLCBkLT5ub3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPmQsIFNMT1QoY2xlYXJOb3RpZmljYXRpb25zTGlzdCgp
KSk7CisjZW5kaWYKIH0KIAogLyohCkluZGV4OiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVt
cFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAJKHJldmlzaW9uIDU5NzYyKQorKysg
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNjAsNiArNjAsOSBAQAogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsK
IAorQ2hlY2tQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKiBjaGVja1Blcm1pc3Npb25GdW5jdGlvbiA9
IDA7CitSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uVHlwZSogcmVxdWVzdFBlcm1pc3Npb25GdW5j
dGlvbiA9IDA7CisKIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpEdW1wUmVuZGVyVHJlZVN1cHBv
cnRRdCgpCiB7CiB9CkBAIC01MTIsNiArNTE1LDI5IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBw
b3J0UXQ6OmR1bXBOb3RpZmkKICAgICBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6ZHVt
cE5vdGlmaWNhdGlvbiA9IGI7CiAjZW5kaWYKIH0KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBv
cnRRdDo6c2V0Tm90aWZpY2F0aW9uc1JlY2VpdmVyKFFXZWJQYWdlKiBwYWdlLCBRT2JqZWN0KiBy
ZWNlaXZlcikKK3sKKyAgICBwYWdlLT5kLT5ub3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPnNl
dFJlY2VpdmVyKHJlY2VpdmVyKTsKK30KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6
YWxsb3dOb3RpZmljYXRpb25Gb3JPcmlnaW4oUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcm
IG9yaWdpbikKK3sKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyAgICBwYWdlLT5kLT5ub3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKG9yaWdp
bik7CisjZW5kaWYKK30KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Q2hlY2tQ
ZXJtaXNzaW9uRnVuY3Rpb24oQ2hlY2tQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKiBmKQoreworICAg
IGNoZWNrUGVybWlzc2lvbkZ1bmN0aW9uID0gZjsKK30KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1
cHBvcnRRdDo6c2V0UmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvbihSZXF1ZXN0UGVybWlzc2lvbkZ1
bmN0aW9uVHlwZSogZikKK3sKKyAgICByZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uID0gZjsKK30K
KwogLy8gUHJvdmlkZSBhIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2l0aCBwcmV2aW91c2x5IGV4
cG9ydGVkIHByaXZhdGUgc3ltYm9scyBhcyBvZiBRdFdlYktpdCA0LjYgcmVsZWFzZQogCiB2b2lk
IFFXRUJLSVRfRVhQT1JUIHF0X3Jlc3VtZUFjdGl2ZURPTU9iamVjdHMoUVdlYkZyYW1lKiBmcmFt
ZSkKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRR
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJl
ZVN1cHBvcnRRdC5oCShyZXZpc2lvbiA1OTc2MikKKysrIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw2ICszMCwx
OCBAQCBjbGFzcyBRV2ViRWxlbWVudDsKIGNsYXNzIFFXZWJGcmFtZTsKIGNsYXNzIFFXZWJQYWdl
OwogCitlbnVtIE5vdGlmaWNhdGlvblBlcm1pc3Npb24geworICAgIE5vdGlmaWNhdGlvbkFsbG93
ZWQsCisgICAgTm90aWZpY2F0aW9uTm90QWxsb3dlZCwKKyAgICBOb3RpZmljYXRpb25EZW5pZWQK
K307CisKK3R5cGVkZWYgdm9pZCAoQ2hlY2tQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKSAoUU9iamVj
dCogcmVjZWl2ZXIsIGNvbnN0IFFVcmwmLCBOb3RpZmljYXRpb25QZXJtaXNzaW9uJik7Cit0eXBl
ZGVmIHZvaWQgKFJlcXVlc3RQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKSAoUU9iamVjdCogcmVjZWl2
ZXIsIFFXZWJQYWdlKiBwYWdlLCBjb25zdCBRU3RyaW5nJik7CisKK2V4dGVybiBDaGVja1Blcm1p
c3Npb25GdW5jdGlvblR5cGUqIGNoZWNrUGVybWlzc2lvbkZ1bmN0aW9uOworZXh0ZXJuIFJlcXVl
c3RQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKiByZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uOworCiBj
bGFzcyBRV0VCS0lUX0VYUE9SVCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdCB7CiAKIHB1YmxpYzoK
QEAgLTk4LDcgKzExMCwxMiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgZHVtcFNldEFjY2Vw
dHNFZGl0aW5nKGJvb2wgYik7CiAKICAgICBzdGF0aWMgdm9pZCBkdW1wTm90aWZpY2F0aW9uKGJv
b2wgYik7Ci0KKyAgICAvLyBUaGVzZSBmdW5jdGlvbnMgc2hvdWxkIGV2ZW50dWFsbHkgdHVybiBp
bnRvIHB1YmxpYyBBUEkKKyAgICAvLyBhbmQgdGhlICJyZWNlaXZlciIgY29uY2VwdCB3b3VsZCBn
byBhd2F5CisgICAgc3RhdGljIHZvaWQgc2V0Tm90aWZpY2F0aW9uc1JlY2VpdmVyKFFXZWJQYWdl
KiBwYWdlLCBRT2JqZWN0KiByZWNlaXZlcik7CisgICAgc3RhdGljIHZvaWQgYWxsb3dOb3RpZmlj
YXRpb25Gb3JPcmlnaW4oUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcmIG9yaWdpbik7Cisg
ICAgc3RhdGljIHZvaWQgc2V0Q2hlY2tQZXJtaXNzaW9uRnVuY3Rpb24oQ2hlY2tQZXJtaXNzaW9u
RnVuY3Rpb25UeXBlKik7CisgICAgc3RhdGljIHZvaWQgc2V0UmVxdWVzdFBlcm1pc3Npb25GdW5j
dGlvbihSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uVHlwZSopOwogfTsKIAogI2VuZGlmCkluZGV4
OiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdC5jcHAJKHJldmlzaW9uIDU5NzYyKQorKysgV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMzIsMTMgKzMyLDE1IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuaCIKIAorI2luY2x1ZGUgIkR1bXBSZW5kZXJUcmVl
U3VwcG9ydFF0LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKKyNpbmNsdWRlICJFdmVudE5hbWVz
LmgiCiAjaW5jbHVkZSAiS1VSTC5oIgotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5j
bHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKIAorI2luY2x1ZGUgInF3ZWJmcmFtZS5oIgogI2luY2x1
ZGUgInF3ZWJraXRnbG9iYWwuaCIKLQorI2luY2x1ZGUgInF3ZWJwYWdlLmgiCiAjaW5jbHVkZSA8
UXRHdWk+CiAKIApAQCAtNDgsMjUgKzUwLDczIEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwog
CiBib29sIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpkdW1wTm90aWZpY2F0aW9uID0g
ZmFsc2U7CiAKLU5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpOb3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdCgpCitQbGF0Zm9ybU5vdGlmaWNhdGlvbkljb25zV3JhcHBlcjo6UGxhdGZv
cm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIoKQogeworI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZ
SUNPTgorICAgIG1fbm90aWZpY2F0aW9uSWNvbiA9IDA7CisjZW5kaWYKK30KKworUGxhdGZvcm1O
b3RpZmljYXRpb25JY29uc1dyYXBwZXI6On5QbGF0Zm9ybU5vdGlmaWNhdGlvbkljb25zV3JhcHBl
cigpCit7CisjaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJQ09OCisgICAgZGVsZXRlIG1fbm90aWZp
Y2F0aW9uSWNvbjsKKyNlbmRpZgorfQorCit2b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0UHJpdmF0ZTo6Y2xlYXJOb3RpZmljYXRpb25zTGlzdCgpCit7CisgICAgcS0+Y2xlYXJOb3Rp
ZmljYXRpb25zTGlzdCgpOworfQorCitOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Tm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQoUVdlYlBhZ2UqIHBhZ2UpIDogbV9wYWdlKHBhZ2Up
Cit7CisgICAgZCA9IG5ldyBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdFByaXZhdGU7Cisg
ICAgZC0+cSA9IHRoaXM7CiB9CiAKIGJvb2wgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6
OnNob3coTm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24pCiB7CisgICAgUUhhc2ggPE5vdGlmaWNh
dGlvbiosIFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKj46Okl0ZXJhdG9yIGVuZCA9
IG1fbm90aWZpY2F0aW9ucy5lbmQoKTsKKyAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgUGxhdGZv
cm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIqPjo6SXRlcmF0b3IgaXRlciA9IG1fbm90aWZpY2F0
aW9ucy5iZWdpbigpOworCisgICAgaWYgKCFub3RpZmljYXRpb24tPnJlcGxhY2VJZCgpLmlzRW1w
dHkoKSkgeworICAgICAgICB3aGlsZSAoaXRlciAhPSBlbmQpIHsKKyAgICAgICAgICAgIE5vdGlm
aWNhdGlvbiogZXhpc3RpbmdOb3RpZmljYXRpb24gPSBpdGVyLmtleSgpOworICAgICAgICAgICAg
aWYgKGV4aXN0aW5nTm90aWZpY2F0aW9uLT5yZXBsYWNlSWQoKSA9PSBub3RpZmljYXRpb24tPnJl
cGxhY2VJZCgpICYmIGV4aXN0aW5nTm90aWZpY2F0aW9uLT51cmwoKS5wcm90b2NvbCgpID09IG5v
dGlmaWNhdGlvbi0+dXJsKCkucHJvdG9jb2woKSAmJiBleGlzdGluZ05vdGlmaWNhdGlvbi0+dXJs
KCkuaG9zdCgpID09IG5vdGlmaWNhdGlvbi0+dXJsKCkuaG9zdCgpKQorICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgaXRlcisrOworICAgICAgICB9CisgICAgfSBlbHNlCisgICAg
ICAgIGl0ZXIgPSBlbmQ7CisKICAgICBpZiAoZHVtcE5vdGlmaWNhdGlvbikgeworICAgICAgICBp
ZiAoaXRlciAhPSBlbmQpIHsKKyAgICAgICAgICAgIE5vdGlmaWNhdGlvbiogb2xkTm90aWZpY2F0
aW9uID0gaXRlci5rZXkoKTsKKyAgICAgICAgICAgIHByaW50ZigiUkVQTEFDSU5HIE5PVElGSUNB
VElPTiAlc1xuIiwgb2xkTm90aWZpY2F0aW9uLT5pc0hUTUwoKSA/IFFTdHJpbmcob2xkTm90aWZp
Y2F0aW9uLT51cmwoKS5zdHJpbmcoKSkudG9VdGY4KCkuY29uc3REYXRhKCkgOiBRU3RyaW5nKG9s
ZE5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS50aXRsZSgpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7
CisgICAgICAgIH0KICAgICAgICAgaWYgKG5vdGlmaWNhdGlvbi0+aXNIVE1MKCkpCiAgICAgICAg
ICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FUSU9OOiBjb250ZW50cyBhdCAlc1xuIiwgUVN0
cmluZyhub3RpZmljYXRpb24tPnVybCgpLnN0cmluZygpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7
CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgcHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElP
TjogaWNvbiAlcywgdGl0bGUgJXMsIHRleHQgJXNcbiIsIAorICAgICAgICAgICAgcHJpbnRmKCJE
RVNLVE9QIE5PVElGSUNBVElPTjolcyBpY29uICVzLCB0aXRsZSAlcywgdGV4dCAlc1xuIiwKKyAg
ICAgICAgICAgICAgICBub3RpZmljYXRpb24tPmRpcigpID09ICJydGwiID8gIihSVEwpIiA6ICIi
LAogICAgICAgICAgICAgICAgIFFTdHJpbmcobm90aWZpY2F0aW9uLT5jb250ZW50cygpLmljb24o
KS5zdHJpbmcoKSkudG9VdGY4KCkuY29uc3REYXRhKCksIFFTdHJpbmcobm90aWZpY2F0aW9uLT5j
b250ZW50cygpLnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpLCAKICAgICAgICAgICAgICAg
ICBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS5ib2R5KCkpLnRvVXRmOCgpLmNvbnN0
RGF0YSgpKTsKICAgICAgICAgfQogICAgIH0KIAorICAgIGlmIChpdGVyICE9IGVuZCkgeworICAg
ICAgICBzZW5kRXZlbnQoaXRlci5rZXkoKSwgZXZlbnROYW1lcygpLmNsb3NlRXZlbnQpOworICAg
ICAgICBkZWxldGUgbV9ub3RpZmljYXRpb25zLnRha2UoaXRlci5rZXkoKSk7CisgICAgfQorICAg
IFBsYXRmb3JtTm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKiB3cmFwcGVyID0gbmV3IFBsYXRmb3Jt
Tm90aWZpY2F0aW9uSWNvbnNXcmFwcGVyKCk7CisgICAgbV9ub3RpZmljYXRpb25zLmluc2VydChu
b3RpZmljYXRpb24sIHdyYXBwZXIpOworICAgIHNlbmRFdmVudChub3RpZmljYXRpb24sICJkaXNw
bGF5Iik7CisKICNpZm5kZWYgUVRfTk9fU1lTVEVNVFJBWUlDT04KLSAgICBtX3RyYXkuc2hvdygp
OwotICAgIG1fdHJheS5zaG93TWVzc2FnZShub3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUo
KSwgbm90aWZpY2F0aW9uLT5jb250ZW50cygpLmJvZHkoKSwgUVN5c3RlbVRyYXlJY29uOjpJbmZv
cm1hdGlvbik7CisgICAgd3JhcHBlci0+bV9ub3RpZmljYXRpb25JY29uID0gbmV3IFFTeXN0ZW1U
cmF5SWNvbjsKKyAgICB3cmFwcGVyLT5tX25vdGlmaWNhdGlvbkljb24tPnNob3coKTsKKyAgICB3
cmFwcGVyLT5tX25vdGlmaWNhdGlvbkljb24tPnNob3dNZXNzYWdlKG5vdGlmaWNhdGlvbi0+Y29u
dGVudHMoKS50aXRsZSgpLCBub3RpZmljYXRpb24tPmNvbnRlbnRzKCkuYm9keSgpKTsKICNlbmRp
ZgogICAgIHJldHVybiB0cnVlOwogfQpAQCAtODAsMTIgKzEzMCwxNyBAQCB2b2lkIE5vdGlmaWNh
dGlvblByZXNlbnRlckNsaWVudFF0OjpjYW5jCiAgICAgICAgICAgICBwcmludGYoIkRFU0tUT1Ag
Tk9USUZJQ0FUSU9OIENMT1NFRDogJXNcbiIsIFFTdHJpbmcobm90aWZpY2F0aW9uLT5jb250ZW50
cygpLnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKICAgICB9CiAKLSAgICBub3RJbXBs
ZW1lbnRlZCgpOworICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBQbGF0Zm9ybU5vdGlmaWNhdGlv
bkljb25zV3JhcHBlcio+OjpJdGVyYXRvciBpdGVyID0gbV9ub3RpZmljYXRpb25zLmZpbmQobm90
aWZpY2F0aW9uKTsKKyAgICBpZiAoaXRlciAhPSBtX25vdGlmaWNhdGlvbnMuZW5kKCkpCisgICAg
ICAgIHNlbmRFdmVudChpdGVyLmtleSgpLCBldmVudE5hbWVzKCkuY2xvc2VFdmVudCk7CiB9CiAK
IHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Om5vdGlmaWNhdGlvbk9iamVjdERl
c3Ryb3llZChOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKIHsKLSAgICBub3RJbXBsZW1lbnRl
ZCgpOworICAgIC8vIENhbGxlZCBmcm9tIH5Ob3RpZmljYXRpb24oKSwgUmVtb3ZlIHRoZSBlbnRy
eSBmcm9tIHRoZSBub3RpZmljYXRpb25zIGxpc3QgYW5kIGRlbGV0ZSB0aGUgaWNvbi4KKyAgICBR
SGFzaCA8Tm90aWZpY2F0aW9uKiwgUGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIqPjo6
SXRlcmF0b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5maW5kKG5vdGlmaWNhdGlvbik7CisgICAg
aWYgKGl0ZXIgIT0gbV9ub3RpZmljYXRpb25zLmVuZCgpKQorICAgICAgICBkZWxldGUgbV9ub3Rp
ZmljYXRpb25zLnRha2Uobm90aWZpY2F0aW9uKTsKIH0KIAogdm9pZCBOb3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdDo6cmVxdWVzdFBlcm1pc3Npb24oU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IGNhbGxiYWNrKQpAQCAtOTMsMTMgKzE0OCw2MiBAQCB2
b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpyZXF1CiAgICAgaWYgKGR1bXBOb3Rp
ZmljYXRpb24pCiAgICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FUSU9OIFBFUk1JU1NJT04g
UkVRVUVTVEVEOiAlc1xuIiwgUVN0cmluZyhvcmlnaW4tPnRvU3RyaW5nKCkpLnRvVXRmOCgpLmNv
bnN0RGF0YSgpKTsKIAotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgUVN0cmluZyBvcmlnaW5T
dHJpbmcgPSBvcmlnaW4tPnRvU3RyaW5nKCk7CisgICAgUUhhc2g8UVN0cmluZywgUUxpc3Q8UmVm
UHRyPFZvaWRDYWxsYmFjaz4gPiA+OjppdGVyYXRvciBpdGVyID0gbV9wZW5kaW5nUGVybWlzc2lv
blJlcXVlc3RzLmZpbmQob3JpZ2luU3RyaW5nKTsKKyAgICBpZiAoaXRlciAhPSBtX3BlbmRpbmdQ
ZXJtaXNzaW9uUmVxdWVzdHMuZW5kKCkpCisgICAgICAgIGl0ZXIudmFsdWUoKS5hcHBlbmQoY2Fs
bGJhY2spOworICAgIGVsc2UgeworICAgICAgICBRTGlzdDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+
IGNhbGxiYWNrczsKKyAgICAgICAgUmVmUHRyPFZvaWRDYWxsYmFjaz4gY2IgPSBjYWxsYmFjazsK
KyAgICAgICAgY2FsbGJhY2tzLmFwcGVuZChjYik7CisgICAgICAgIG1fcGVuZGluZ1Blcm1pc3Np
b25SZXF1ZXN0cy5pbnNlcnQob3JpZ2luU3RyaW5nLCBjYWxsYmFja3MpOworICAgICAgICBpZiAo
cmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvbikKKyAgICAgICAgICAgIHJlcXVlc3RQZXJtaXNzaW9u
RnVuY3Rpb24obV9yZWNlaXZlciwgbV9wYWdlLCBvcmlnaW5TdHJpbmcpOworICAgIH0KK30KKwor
Tm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uIE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0OjpjaGVja1Blcm1pc3Npb24oY29uc3QgS1VSTCYgdXJsKQoreworICAgIE5vdGlmaWNh
dGlvblBlcm1pc3Npb24gcGVybWlzc2lvbiA9IE5vdGlmaWNhdGlvbk5vdEFsbG93ZWQ7CisgICAg
UVN0cmluZyBvcmlnaW4gPSB1cmwuc3RyaW5nKCk7CisgICAgaWYgKGNoZWNrUGVybWlzc2lvbkZ1
bmN0aW9uKQorICAgICAgICBjaGVja1Blcm1pc3Npb25GdW5jdGlvbihtX3JlY2VpdmVyLCBvcmln
aW4sIHBlcm1pc3Npb24pOworICAgIHN3aXRjaCAocGVybWlzc2lvbikgeworICAgIGNhc2UgTm90
aWZpY2F0aW9uQWxsb3dlZDoKKyAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNlbnRlcjo6
UGVybWlzc2lvbkFsbG93ZWQ7CisgICAgY2FzZSBOb3RpZmljYXRpb25Ob3RBbGxvd2VkOgorICAg
ICAgICByZXR1cm4gTm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uTm90QWxsb3dlZDsK
KyAgICBjYXNlIE5vdGlmaWNhdGlvbkRlbmllZDoKKyAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlv
blByZXNlbnRlcjo6UGVybWlzc2lvbkRlbmllZDsKKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNlbnRlcjo6UGVybWlzc2lvbk5vdEFs
bG93ZWQ7Cit9CisKK3ZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmFsbG93Tm90
aWZpY2F0aW9uRm9yT3JpZ2luKGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKK3sKKyAgICBRSGFzaDxR
U3RyaW5nLCBRTGlzdDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+ID46Oml0ZXJhdG9yIGl0ZXIgPSBt
X3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMuZmluZChvcmlnaW4pOworICAgIGlmIChpdGVyICE9
IG1fcGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5lbmQoKSkgeworICAgICAgICBRTGlzdDxSZWZQ
dHI8Vm9pZENhbGxiYWNrPiA+JiBjYWxsYmFja3MgPSBpdGVyLnZhbHVlKCk7CisgICAgICAgIGZv
ciAoaW50IGkgPSAwOyBpIDwgY2FsbGJhY2tzLnNpemUoKTsgaSsrKQorICAgICAgICAgICAgY2Fs
bGJhY2tzLmF0KGkpLT5oYW5kbGVFdmVudCgpOworICAgICAgICBtX3BlbmRpbmdQZXJtaXNzaW9u
UmVxdWVzdHMucmVtb3ZlKG9yaWdpbik7CisgICAgfQorfQorCit2b2lkIE5vdGlmaWNhdGlvblBy
ZXNlbnRlckNsaWVudFF0OjpjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCkKK3sKKyAgICBtX3BlbmRp
bmdQZXJtaXNzaW9uUmVxdWVzdHMuY2xlYXIoKTsKKyAgICB3aGlsZSAoIW1fbm90aWZpY2F0aW9u
cy5pc0VtcHR5KCkpIHsKKyAgICAgICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIFBsYXRmb3JtTm90
aWZpY2F0aW9uSWNvbnNXcmFwcGVyKj46Okl0ZXJhdG9yIGl0ZXIgPSBtX25vdGlmaWNhdGlvbnMu
YmVnaW4oKTsKKyAgICAgICAgZGVsZXRlIG1fbm90aWZpY2F0aW9ucy50YWtlKGl0ZXIua2V5KCkp
OworICAgIH0KIH0KIAotTm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uIE5vdGlmaWNh
dGlvblByZXNlbnRlckNsaWVudFF0OjpjaGVja1Blcm1pc3Npb24oY29uc3QgS1VSTCYpCit2b2lk
IE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzZW5kRXZlbnQoTm90aWZpY2F0aW9uKiBu
b3RpZmljYXRpb24sIGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnROYW1lKQogewotICAgIC8vIEZJ
WE1FIEltcGxlbWVudCBwZXJtaXNzaW9uIHBvbGljeQotICAgIHJldHVybiBOb3RpZmljYXRpb25Q
cmVzZW50ZXI6OlBlcm1pc3Npb25BbGxvd2VkOworICAgIFJlZlB0cjxFdmVudD4gZXZlbnQgPSBF
dmVudDo6Y3JlYXRlKGV2ZW50TmFtZSwgZmFsc2UsIHRydWUpOworICAgIG5vdGlmaWNhdGlvbi0+
ZGlzcGF0Y2hFdmVudChldmVudC5yZWxlYXNlKCkpOwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKE5P
VElGSUNBVElPTlMpCkluZGV4OiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9u
UHJlc2VudGVyQ2xpZW50UXQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvV2ViQ29yZVN1cHBv
cnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuaAkocmV2aXNpb24gNTk3NjIpCisrKyBX
ZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuaAko
d29ya2luZyBjb3B5KQpAQCAtMzIsMTcgKzMyLDQyIEBACiAjaW5jbHVkZSAiTm90aWZpY2F0aW9u
LmgiCiAjaW5jbHVkZSAiTm90aWZpY2F0aW9uUHJlc2VudGVyLmgiCiAKKyNpbmNsdWRlIDxRTXVs
dGlIYXNoPgogI2luY2x1ZGUgPFFTeXN0ZW1UcmF5SWNvbj4KIAorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CitjbGFzcyBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDsKK30KK2NsYXNzIE5vdGlm
aWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJpdmF0ZSA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBR
X09CSkVDVAorcHVibGljOgorICAgIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0UHJpdmF0
ZSgpIHt9CisgICAgV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQqIHE7Citw
dWJsaWMgc2xvdHM6CisgICAgdm9pZCBjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCk7Cit9OworCisK
ICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKK2NsYXNzIFFXZWJQYWdlOwogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiBjbGFzcyBEb2N1bWVudDsKIGNsYXNzIEtVUkw7CiAKK3N0cnVjdCBQbGF0Zm9y
bU5vdGlmaWNhdGlvbkljb25zV3JhcHBlciB7CisgICAgUGxhdGZvcm1Ob3RpZmljYXRpb25JY29u
c1dyYXBwZXIoKTsKKyAgICB+UGxhdGZvcm1Ob3RpZmljYXRpb25JY29uc1dyYXBwZXIoKTsKKyNp
Zm5kZWYgUVRfTk9fU1lTVEVNVFJBWUlDT04KKyAgICBRU3lzdGVtVHJheUljb24qIG1fbm90aWZp
Y2F0aW9uSWNvbjsKKyNlbmRpZgorfTsKKwogY2xhc3MgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xp
ZW50UXQgOiBwdWJsaWMgTm90aWZpY2F0aW9uUHJlc2VudGVyIHsKIHB1YmxpYzoKLSAgICBOb3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCgpOworICAgIE5vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0KFFXZWJQYWdlKik7CisgICAgfk5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KCkg
eyBkZWxldGUgZDsgfQogCiAgICAgLyogV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyIGlu
dGVyZmFjZSAqLwogICAgIHZpcnR1YWwgYm9vbCBzaG93KE5vdGlmaWNhdGlvbiopOwpAQCAtNTEs
MTIgKzc2LDIwIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24o
U2VjdXJpdHlPcmlnaW4qLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4pOwogICAgIHZpcnR1YWwg
Tm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uIGNoZWNrUGVybWlzc2lvbihjb25zdCBL
VVJMJik7CiAKKyAgICB2b2lkIGFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKGNvbnN0IFFTdHJp
bmcmIG9yaWdpbik7CisgICAgdm9pZCBjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCk7CisgICAgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXRQcml2YXRlKiBkOworCiAgICAgc3RhdGljIGJvb2wg
ZHVtcE5vdGlmaWNhdGlvbjsKIAotcHJpdmF0ZTogCi0jaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJ
Q09OCi0gICAgUVN5c3RlbVRyYXlJY29uIG1fdHJheTsKLSNlbmRpZgorICAgIHZvaWQgc2V0UmVj
ZWl2ZXIoUU9iamVjdCogcmVjZWl2ZXIpIHsgbV9yZWNlaXZlciA9IHJlY2VpdmVyOyB9CisKK3By
aXZhdGU6CisgICAgdm9pZCBzZW5kRXZlbnQoTm90aWZpY2F0aW9uKiwgY29uc3QgQXRvbWljU3Ry
aW5nJiBldmVudE5hbWUpOworICAgIFFXZWJQYWdlKiBtX3BhZ2U7CisgICAgUU11bHRpSGFzaDxR
U3RyaW5nLCAgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4gPiA+IG1fcGVuZGluZ1Blcm1pc3Np
b25SZXF1ZXN0czsKKyAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgUGxhdGZvcm1Ob3RpZmljYXRp
b25JY29uc1dyYXBwZXIqPiBtX25vdGlmaWNhdGlvbnM7CisgICAgUU9iamVjdCogbV9yZWNlaXZl
cjsKIH07CiB9CiAKSW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJLaXRUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU5Nzg2KQorKysgV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTAtMDUtMTkgIFlhZWwg
QWhhcm9uICA8eWFlbC5haGFyb25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBs
YXlvdXQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM5MTQ2CisKKyAgICAgICAgTWltaWMgQ2hyb21pdW0ncyB0ZXN0X3NoZWxsIHNlY3VyaXR5
IG1vZGVsIGluIFF0J3MgRFJULgorICAgICAgICBJdCBtYWtlcyBhIGxpc3Qgb2Ygb3JpZ2lucyB3
aGljaCB3ZXJlIGdyYW50ZWQgcGVybWlzc2lvbiB0byBkaXNwbGF5CisgICAgICAgIG5vdGlmaWNh
dGlvbnMsIGFuZCBvbmx5IHRob3NlIG9yaWdpbnMgY2FuIGRpc3BsYXkgbm90aWZpY2F0aW9ucy4K
KworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Y2hlY2tQZXJtaXNzaW9uQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29y
ZTo6cmVxdWVzdFBlcm1pc3Npb25DYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpXZWJQYWdl
OjpXZWJQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpjaGVja1Blcm1p
c3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6OnJlcXVlc3RQZXJtaXNz
aW9uKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0Lmg6Cisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHA6Cisg
ICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6cmVzZXQpOgorICAgICAgICAoTGF5b3V0VGVz
dENvbnRyb2xsZXI6OmdyYW50RGVza3RvcE5vdGlmaWNhdGlvblBlcm1pc3Npb24pOgorICAgICAg
ICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OmNoZWNrRGVza3RvcE5vdGlmaWNhdGlvblBlcm1pc3Np
b24pOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQu
aDoKKwogMjAxMC0wNS0xOSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJU
cmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCShyZXZpc2lvbiA1OTc2MikKKysr
IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMzAsNiArMTMwLDE1IEBAIHB1YmxpYzoKIH07CiAjZW5kaWYKIAordm9p
ZCBjaGVja1Blcm1pc3Npb25DYWxsYmFjayhRT2JqZWN0KiByZWNlaXZlciwgY29uc3QgUVVybCYg
dXJsLCBOb3RpZmljYXRpb25QZXJtaXNzaW9uJiBwZXJtaXNzaW9uKQoreworICAgIHFvYmplY3Rf
Y2FzdDxEdW1wUmVuZGVyVHJlZSo+KHJlY2VpdmVyKS0+Y2hlY2tQZXJtaXNzaW9uKHVybCwgcGVy
bWlzc2lvbik7Cit9CisKK3ZvaWQgcmVxdWVzdFBlcm1pc3Npb25DYWxsYmFjayhRT2JqZWN0KiBy
ZWNlaXZlciwgUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKK3sKKyAgICBx
b2JqZWN0X2Nhc3Q8RHVtcFJlbmRlclRyZWUqPihyZWNlaXZlciktPnJlcXVlc3RQZXJtaXNzaW9u
KHBhZ2UsIG9yaWdpbik7Cit9CiAKIFdlYlBhZ2U6OldlYlBhZ2UoUU9iamVjdCogcGFyZW50LCBE
dW1wUmVuZGVyVHJlZSogZHJ0KQogICAgIDogUVdlYlBhZ2UocGFyZW50KQpAQCAtMTU4LDYgKzE2
NywxMSBAQCBXZWJQYWdlOjpXZWJQYWdlKFFPYmplY3QqIHBhcmVudCwgRHVtcFJlCiAKICAgICBz
ZXROZXR3b3JrQWNjZXNzTWFuYWdlcihtX2RydC0+bmV0d29ya0FjY2Vzc01hbmFnZXIoKSk7CiAg
ICAgc2V0UGx1Z2luRmFjdG9yeShuZXcgVGVzdFBsdWdpbih0aGlzKSk7CisKKyAgICBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdDo6c2V0Tm90aWZpY2F0aW9uc1JlY2VpdmVyKHRoaXMsIG1fZHJ0KTsK
KyAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Q2hlY2tQZXJtaXNzaW9uRnVuY3Rpb24o
Y2hlY2tQZXJtaXNzaW9uQ2FsbGJhY2spOworICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojpz
ZXRSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uKHJlcXVlc3RQZXJtaXNzaW9uQ2FsbGJhY2spOwor
CiB9CiAKIFdlYlBhZ2U6On5XZWJQYWdlKCkKQEAgLTg5OCw2ICs5MTIsMTYgQEAgdm9pZCBEdW1w
UmVuZGVyVHJlZTo6c3dpdGNoRm9jdXMoYm9vbCBmbwogICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2
ZW50KG1fbWFpblZpZXcsICZldmVudCk7CiB9CiAKK3ZvaWQgRHVtcFJlbmRlclRyZWU6OmNoZWNr
UGVybWlzc2lvbihjb25zdCBRVXJsJiB1cmwsIE5vdGlmaWNhdGlvblBlcm1pc3Npb24mIHBlcm1p
c3Npb24pCit7CisgICAgcGVybWlzc2lvbiA9IG1fY29udHJvbGxlci0+Y2hlY2tEZXNrdG9wTm90
aWZpY2F0aW9uUGVybWlzc2lvbih1cmwuc2NoZW1lKCkgKyAiOi8vIiArIHVybC5ob3N0KCkpID8g
Tm90aWZpY2F0aW9uQWxsb3dlZCA6IE5vdGlmaWNhdGlvbkRlbmllZDsKK30KKwordm9pZCBEdW1w
UmVuZGVyVHJlZTo6cmVxdWVzdFBlcm1pc3Npb24oUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJp
bmcmIG9yaWdpbikKK3sKKyAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6YWxsb3dOb3RpZmlj
YXRpb25Gb3JPcmlnaW4ocGFnZSwgb3JpZ2luKTsKK30KKwogI2lmIGRlZmluZWQoUV9XU19YMTEp
CiB2b2lkIER1bXBSZW5kZXJUcmVlOjppbml0aWFsaXplRm9udHMoKQogewpJbmRleDogV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaAkocmV2aXNp
b24gNTk3NjIpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJl
ZVF0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDcgQEAKICNpbmNsdWRlIDxRU3NsRXJy
b3I+CiAjZW5kaWYKIAorI2luY2x1ZGUgIi4uLy4uLy4uL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oIgogI2luY2x1ZGUgPHF3ZWJmcmFtZS5oPgogI2lu
Y2x1ZGUgPHF3ZWJpbnNwZWN0b3IuaD4KICNpbmNsdWRlIDxxd2VicGFnZS5oPgpAQCAtMTEzLDYg
KzExNCw4IEBAIHB1YmxpYyBRX1NMT1RTOgogICAgIHZvaWQgZHVtcERhdGFiYXNlUXVvdGEoUVdl
YkZyYW1lKiBmcmFtZSwgY29uc3QgUVN0cmluZyYgZGJOYW1lKTsKICAgICB2b2lkIHN0YXR1c0Jh
ck1lc3NhZ2UoY29uc3QgUVN0cmluZyYgbWVzc2FnZSk7CiAgICAgdm9pZCB3aW5kb3dDbG9zZVJl
cXVlc3RlZCgpOworICAgIHZvaWQgY2hlY2tQZXJtaXNzaW9uKGNvbnN0IFFVcmwmLCBOb3RpZmlj
YXRpb25QZXJtaXNzaW9uJik7CisgICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihRV2ViUGFnZSog
cGFnZSwgY29uc3QgUVN0cmluZyYpOwogCiBRX1NJR05BTFM6CiAgICAgdm9pZCBxdWl0KCk7Cklu
ZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRU
ZXN0Q29udHJvbGxlclF0LmNwcAkocmV2aXNpb24gNTk3NjIpCisrKyBXZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjQsNiArNjQsOCBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpyZXNldCgpCiAgICAg
bV9oYW5kbGVFcnJvclBhZ2VzID0gZmFsc2U7CiAgICAgbV93ZWJIaXN0b3J5ID0gMDsKICAgICBt
X2dsb2JhbEZsYWcgPSBmYWxzZTsKKyAgICBtX2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3Jp
Z2lucy5jbGVhcigpOworCiAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OmR1bXBFZGl0aW5n
Q2FsbGJhY2tzKGZhbHNlKTsKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6ZHVtcEZyYW1l
TG9hZGVyKGZhbHNlKTsKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6ZHVtcFJlc291cmNl
TG9hZENhbGxiYWNrcyhmYWxzZSk7CkBAIC03MSw2ICs3Myw3IEBAIHZvaWQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OnJlc2V0KCkKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0V2lsbFNl
bmRSZXF1ZXN0UmV0dXJuc051bGwoZmFsc2UpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0
OjpzZXRXaWxsU2VuZFJlcXVlc3RDbGVhckhlYWRlcnMoUVN0cmluZ0xpc3QoKSk7CiAgICAgc2V0
SWNvbkRhdGFiYXNlRW5hYmxlZChmYWxzZSk7CisKICAgICBlbWl0IGhpZGVQYWdlKCk7CiB9CiAK
QEAgLTE4MSwxMyArMTg0LDEyIEBAIGludCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6d2luZG93Q291
bnQoKQogCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpncmFudERlc2t0b3BOb3RpZmljYXRp
b25QZXJtaXNzaW9uKGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKIHsKLSAgICAvLyBGSVhNRTogSW1w
bGVtZW50IGZvciBub3RpZmljYXRpb24gc2VjdXJpdHkKKyAgICBtX2Rlc2t0b3BOb3RpZmljYXRp
b25BbGxvd2VkT3JpZ2lucy5hcHBlbmQob3JpZ2luKTsKIH0KIAogYm9vbCBMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lvbihjb25zdCBRU3RyaW5n
JiBvcmlnaW4pCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCBmb3Igbm90aWZpY2F0aW9uIHNl
Y3VyaXR5Ci0gICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIG1fZGVza3RvcE5vdGlmaWNhdGlv
bkFsbG93ZWRPcmlnaW5zLmNvbnRhaW5zKG9yaWdpbik7CiB9CiAKIHZvaWQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OmRpc3BsYXkoKQpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQv
TGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBS
ZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaAkocmV2aXNpb24gNTk3NjIpCisr
KyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIxNiw2ICsyMTYsNyBAQCBwcml2YXRlOgogICAgIFFXZWJGcmFt
ZSogbV90b3BMb2FkaW5nRnJhbWU7CiAgICAgV2ViQ29yZTo6RHVtcFJlbmRlclRyZWUqIG1fZHJ0
OwogICAgIFFXZWJIaXN0b3J5KiBtX3dlYkhpc3Rvcnk7CisgICAgUVN0cmluZ0xpc3QgbV9kZXNr
dG9wTm90aWZpY2F0aW9uQWxsb3dlZE9yaWdpbnM7CiB9OwogCiAjZW5kaWYgLy8gTGF5b3V0VGVz
dENvbnRyb2xsZXJRdF9oCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1OTc4NikKKysrIExheW91dFRlc3Rz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDEwLTA1LTE5ICBZ
YWVsIEFoYXJvbiAgPHlhZWwuYWhhcm9uQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFBhc3MgYWxsIHdlYiBub3RpZmljYXRp
b24gbGF5b3V0IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zOTE0NgorCisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKwogMjAxMC0w
NS0xOSAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IERhdmUgSHlhdHQuCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVk
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQJKHJldmlzaW9u
IDU5NzYyKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAkod29ya2luZyBjb3B5
KQpAQCAtNDY5OCwxNCArNDY5OCw2IEBAIGxvYWRlci9nby1iYWNrLXRvLWRpZmZlcmVudC13aW5k
b3ctc2l6ZS4KICMgVGhpcyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBHZW9sb2NhdGlvbi4KIGZhc3Qv
ZG9tL0dlb2xvY2F0aW9uCiAKLSMgVGhpcyBwb3J0IGRvZXNuJ3Qgc3VwcG9ydCBOb3RpZmljYXRp
b24gcGVybWlzc2lvbnMKLWZhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWNoZWNrLXBl
cm1pc3Npb24uaHRtbAotZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtZGlzcGxheS1j
bG9zZS1ldmVudHMuaHRtbAotZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcmVxdWVz
dC1wZXJtaXNzaW9uLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXdpdGhv
dXQtcGVybWlzc2lvbi5odG1sCi1mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1ydGwu
aHRtbAotZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcmVwbGFjZS5odG1sCi0KICMg
TWlzc2luZyBEUlQgYWJpbGl0eSB0byBzZXQgYWNjZXB0IGNvb2tpZSBwb2xpY3kKIGh0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvY3Jvc3Mtb3JpZ2luLWNvb2tpZS1zdG9yYWdlLmh0bWwKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57062</attachid>
            <date>2010-05-25 19:03:52 -0700</date>
            <delta_ts>2010-05-26 14:50:15 -0700</delta_ts>
            <desc>Patch, remove the signal/slot and bring the patch up-to-date</desc>
            <filename>39146.patch</filename>
            <type>text/plain</type>
            <size>23118</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNjAyMDQpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTAtMDUtMjUgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFy
b25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVzdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIG11bHRpcGxlIHNpbXVsdGFuZW91cyBub3RpZmljYXRpb25zLgor
ICAgICAgICBBZGQgc2lnbmFscyB0byB0aGUgY2xpZW50IGZvciBzZWN1cml0eSBjaGVja3MuIE5v
dGlmaWNhdGlvbnMgYXJlIGVuYWJsZWQKKyAgICAgICAgaWYgdGhlIGNsaWVudCBkb2VzIG5vdCBj
b25uZWN0IHRvIHRoZSBzaWduYWxzLiAKKyAgICAgICAgU3VwcG9ydCByZXBsYWNlSWQgYW5kIGNh
bmNlbC4KKyAgICAgICAgU2VuZCBjbG9zZSBhbmQgZGlzcGxheSBldmVudHMgd2hlbiBuZWVkZWQu
ICAgCisKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3BwOgorICAgICAgICAoUVdlYlBhZ2VQcml2
YXRlOjpRV2ViUGFnZVByaXZhdGUpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlU3VwcG9ydFF0LmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojpz
ZXROb3RpZmljYXRpb25zUmVjZWl2ZXIpOgorICAgICAgICAoRHVtcFJlbmRlclRyZWVTdXBwb3J0
UXQ6OmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKToKKyAgICAgICAgKER1bXBSZW5kZXJUcmVl
U3VwcG9ydFF0OjpzZXRDaGVja1Blcm1pc3Npb25GdW5jdGlvbik6CisgICAgICAgIChEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdDo6c2V0UmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvbik6CisgICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaDoKKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyQ2xpZW50UXQ6OmRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxk
KToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dC5jcHA6CisgICAgICAgIChOb3RpZmljYXRpb25JY29uV3JhcHBlcjo6Tm90aWZpY2F0aW9uSWNv
bldyYXBwZXIpOgorICAgICAgICAoTm90aWZpY2F0aW9uSWNvbldyYXBwZXI6On5Ob3RpZmljYXRp
b25JY29uV3JhcHBlcik6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQpOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJl
c2VudGVyQ2xpZW50UXQ6OnNob3cpOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xp
ZW50UXQ6OmNhbmNlbCk6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6
bm90aWZpY2F0aW9uT2JqZWN0RGVzdHJveWVkKToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudFF0OjpyZXF1ZXN0UGVybWlzc2lvbik6CisgICAgICAgIChOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6Y2hlY2tQZXJtaXNzaW9uKToKKyAgICAgICAgKE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0OjphbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbik6CisgICAgICAg
IChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2xlYXJOb3RpZmljYXRpb25zTGlzdCk6
CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2VuZEV2ZW50KToKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6On5Ob3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdCk6CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6c2V0UmVjZWl2ZXIpOgorCiAyMDEwLTA1LTI1ICBBbnRvbmlvIEdv
bWVzICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2phbiBW
YWZhaS4KSW5kZXg6IFdlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCShyZXZpc2lvbiA2MDE5OCkKKysrIFdlYktpdC9xdC9B
cGkvcXdlYnBhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTksNyArMjk5LDcgQEAgUVdlYlBh
Z2VQcml2YXRlOjpRV2ViUGFnZVByaXZhdGUoUVdlYlBhZwogICAgIFBhZ2VHcm91cDo6c2V0U2hv
dWxkVHJhY2tWaXNpdGVkTGlua3ModHJ1ZSk7CiAgICAgCiAjaWYgRU5BQkxFKE5PVElGSUNBVElP
TlMpICAgIAotICAgIG5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudCA9IG5ldyBOb3RpZmljYXRp
b25QcmVzZW50ZXJDbGllbnRRdCgpOworICAgIG5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudCA9
IG5ldyBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdChxKTsKICNlbmRpZgogfQogCkluZGV4
OiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBv
cnRRdC5jcHAJKHJldmlzaW9uIDYwMTk4KQorKysgV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjAsNiArNjAsOSBA
QAogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAorQ2hlY2tQZXJtaXNzaW9uRnVuY3Rpb25U
eXBlKiBjaGVja1Blcm1pc3Npb25GdW5jdGlvbiA9IDA7CitSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0
aW9uVHlwZSogcmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvbiA9IDA7CisKIER1bXBSZW5kZXJUcmVl
U3VwcG9ydFF0OjpEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdCgpCiB7CiB9CkBAIC01MzMsNiArNTM2
LDI5IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OmR1bXBOb3RpZmkKICAgICBOb3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6ZHVtcE5vdGlmaWNhdGlvbiA9IGI7CiAjZW5kaWYK
IH0KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Tm90aWZpY2F0aW9uc1JlY2Vp
dmVyKFFXZWJQYWdlKiBwYWdlLCBRT2JqZWN0KiByZWNlaXZlcikKK3sKKyAgICBwYWdlLT5kLT5u
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPnNldFJlY2VpdmVyKHJlY2VpdmVyKTsKK30KKwor
dm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6YWxsb3dOb3RpZmljYXRpb25Gb3JPcmlnaW4o
UVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKK3sKKyNpZiBFTkFCTEUoTk9U
SUZJQ0FUSU9OUykKKyAgICBwYWdlLT5kLT5ub3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPmFs
bG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKG9yaWdpbik7CisjZW5kaWYKK30KKwordm9pZCBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Q2hlY2tQZXJtaXNzaW9uRnVuY3Rpb24oQ2hlY2tQZXJt
aXNzaW9uRnVuY3Rpb25UeXBlKiBmKQoreworICAgIGNoZWNrUGVybWlzc2lvbkZ1bmN0aW9uID0g
ZjsKK30KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0UmVxdWVzdFBlcm1pc3Np
b25GdW5jdGlvbihSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uVHlwZSogZikKK3sKKyAgICByZXF1
ZXN0UGVybWlzc2lvbkZ1bmN0aW9uID0gZjsKK30KKwogLy8gUHJvdmlkZSBhIGJhY2t3YXJkIGNv
bXBhdGliaWxpdHkgd2l0aCBwcmV2aW91c2x5IGV4cG9ydGVkIHByaXZhdGUgc3ltYm9scyBhcyBv
ZiBRdFdlYktpdCA0LjYgcmVsZWFzZQogCiB2b2lkIFFXRUJLSVRfRVhQT1JUIHF0X3Jlc3VtZUFj
dGl2ZURPTU9iamVjdHMoUVdlYkZyYW1lKiBmcmFtZSkKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oCShyZXZpc2lvbiA2MDE5
OCkKKysrIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0zMCw2ICszMCwxOCBAQCBjbGFzcyBRV2ViRWxlbWVudDsKIGNs
YXNzIFFXZWJGcmFtZTsKIGNsYXNzIFFXZWJQYWdlOwogCitlbnVtIE5vdGlmaWNhdGlvblBlcm1p
c3Npb24geworICAgIE5vdGlmaWNhdGlvbkFsbG93ZWQsCisgICAgTm90aWZpY2F0aW9uTm90QWxs
b3dlZCwKKyAgICBOb3RpZmljYXRpb25EZW5pZWQKK307CisKK3R5cGVkZWYgdm9pZCAoQ2hlY2tQ
ZXJtaXNzaW9uRnVuY3Rpb25UeXBlKSAoUU9iamVjdCogcmVjZWl2ZXIsIGNvbnN0IFFVcmwmLCBO
b3RpZmljYXRpb25QZXJtaXNzaW9uJik7Cit0eXBlZGVmIHZvaWQgKFJlcXVlc3RQZXJtaXNzaW9u
RnVuY3Rpb25UeXBlKSAoUU9iamVjdCogcmVjZWl2ZXIsIFFXZWJQYWdlKiBwYWdlLCBjb25zdCBR
U3RyaW5nJik7CisKK2V4dGVybiBDaGVja1Blcm1pc3Npb25GdW5jdGlvblR5cGUqIGNoZWNrUGVy
bWlzc2lvbkZ1bmN0aW9uOworZXh0ZXJuIFJlcXVlc3RQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKiBy
ZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uOworCiBjbGFzcyBRV0VCS0lUX0VYUE9SVCBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdCB7CiAKIHB1YmxpYzoKQEAgLTEwMCw3ICsxMTIsMTIgQEAgcHVibGlj
OgogICAgIHN0YXRpYyB2b2lkIGR1bXBTZXRBY2NlcHRzRWRpdGluZyhib29sIGIpOwogCiAgICAg
c3RhdGljIHZvaWQgZHVtcE5vdGlmaWNhdGlvbihib29sIGIpOwotCisgICAgLy8gVGhlc2UgZnVu
Y3Rpb25zIHNob3VsZCBldmVudHVhbGx5IHR1cm4gaW50byBwdWJsaWMgQVBJCisgICAgLy8gYW5k
IHRoZSAicmVjZWl2ZXIiIGNvbmNlcHQgd291bGQgZ28gYXdheQorICAgIHN0YXRpYyB2b2lkIHNl
dE5vdGlmaWNhdGlvbnNSZWNlaXZlcihRV2ViUGFnZSogcGFnZSwgUU9iamVjdCogcmVjZWl2ZXIp
OworICAgIHN0YXRpYyB2b2lkIGFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKFFXZWJQYWdlKiBw
YWdlLCBjb25zdCBRU3RyaW5nJiBvcmlnaW4pOworICAgIHN0YXRpYyB2b2lkIHNldENoZWNrUGVy
bWlzc2lvbkZ1bmN0aW9uKENoZWNrUGVybWlzc2lvbkZ1bmN0aW9uVHlwZSopOworICAgIHN0YXRp
YyB2b2lkIHNldFJlcXVlc3RQZXJtaXNzaW9uRnVuY3Rpb24oUmVxdWVzdFBlcm1pc3Npb25GdW5j
dGlvblR5cGUqKTsKIH07CiAKICNlbmRpZgpJbmRleDogV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcAkocmV2aXNpb24gNjAxOTgpCisrKyBXZWJL
aXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTUxLDYgKzUxLDcgQEAKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNs
dWRlICJIVE1MUGx1Z0luRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUVFBQYXJzZXJzLmgiCisjaW5j
bHVkZSAiTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuaCIKICNpbmNsdWRlICJOb3RJbXBs
ZW1lbnRlZC5oIgogI2luY2x1ZGUgIlFOZXR3b3JrUmVwbHlIYW5kbGVyLmgiCiAjaW5jbHVkZSAi
UmVzb3VyY2VIYW5kbGVJbnRlcm5hbC5oIgpAQCAtNjM4LDggKzYzOSwxMiBAQCB2b2lkIEZyYW1l
TG9hZGVyQ2xpZW50UXQ6OmRpc3BhdGNoRGlkQ2xlCiAgICAgaWYgKHdvcmxkICE9IG1haW5UaHJl
YWROb3JtYWxXb3JsZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAobV93ZWJGcmFtZSkK
KyAgICBpZiAobV93ZWJGcmFtZSkgewogICAgICAgICBlbWl0IG1fd2ViRnJhbWUtPmphdmFTY3Jp
cHRXaW5kb3dPYmplY3RDbGVhcmVkKCk7CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAg
ICAgIG1fd2ViRnJhbWUtPnBhZ2UoKS0+ZC0+bm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50LT5j
bGVhck5vdGlmaWNhdGlvbnNMaXN0KCk7CisjZW5kaWYKKyAgICB9CiB9CiAKIHZvaWQgRnJhbWVM
b2FkZXJDbGllbnRRdDo6ZG9jdW1lbnRFbGVtZW50QXZhaWxhYmxlKCkKSW5kZXg6IFdlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0LmNwcAkocmV2aXNpb24gNjAxOTgpCisrKyBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQv
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiwx
MyArMzIsMTUgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdC5oIgogCisjaW5jbHVkZSAiRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQu
aCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNs
dWRlICJLVVJMLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJTZWN1
cml0eU9yaWdpbi5oIgogCisjaW5jbHVkZSAicXdlYmZyYW1lLmgiCiAjaW5jbHVkZSAicXdlYmtp
dGdsb2JhbC5oIgotCisjaW5jbHVkZSAicXdlYnBhZ2UuaCIKICNpbmNsdWRlIDxRdEd1aT4KIAog
CkBAIC00OCwyNSArNTAsNjYgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIGJvb2wgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmR1bXBOb3RpZmljYXRpb24gPSBmYWxzZTsKIAot
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0KCkKK05vdGlmaWNhdGlvbkljb25XcmFwcGVyOjpOb3RpZmljYXRpb25JY29uV3JhcHBlcigp
Cit7CisjaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJQ09OCisgICAgbV9ub3RpZmljYXRpb25JY29u
ID0gMDsKKyNlbmRpZgorfQorCitOb3RpZmljYXRpb25JY29uV3JhcHBlcjo6fk5vdGlmaWNhdGlv
bkljb25XcmFwcGVyKCkKK3sKKyNpZm5kZWYgUVRfTk9fU1lTVEVNVFJBWUlDT04KKyAgICBkZWxl
dGUgbV9ub3RpZmljYXRpb25JY29uOworI2VuZGlmCit9CisKK05vdGlmaWNhdGlvblByZXNlbnRl
ckNsaWVudFF0OjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdChRV2ViUGFnZSogcGFnZSkg
OiBtX3BhZ2UocGFnZSkKIHsKIH0KIAogYm9vbCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dDo6c2hvdyhOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKIHsKKyAgICBRSGFzaCA8Tm90aWZp
Y2F0aW9uKiwgTm90aWZpY2F0aW9uSWNvbldyYXBwZXIqPjo6SXRlcmF0b3IgZW5kID0gbV9ub3Rp
ZmljYXRpb25zLmVuZCgpOworICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmljYXRpb25J
Y29uV3JhcHBlcio+OjpJdGVyYXRvciBpdGVyID0gbV9ub3RpZmljYXRpb25zLmJlZ2luKCk7CisK
KyAgICBpZiAoIW5vdGlmaWNhdGlvbi0+cmVwbGFjZUlkKCkuaXNFbXB0eSgpKSB7CisgICAgICAg
IHdoaWxlIChpdGVyICE9IGVuZCkgeworICAgICAgICAgICAgTm90aWZpY2F0aW9uKiBleGlzdGlu
Z05vdGlmaWNhdGlvbiA9IGl0ZXIua2V5KCk7CisgICAgICAgICAgICBpZiAoZXhpc3RpbmdOb3Rp
ZmljYXRpb24tPnJlcGxhY2VJZCgpID09IG5vdGlmaWNhdGlvbi0+cmVwbGFjZUlkKCkgJiYgZXhp
c3RpbmdOb3RpZmljYXRpb24tPnVybCgpLnByb3RvY29sKCkgPT0gbm90aWZpY2F0aW9uLT51cmwo
KS5wcm90b2NvbCgpICYmIGV4aXN0aW5nTm90aWZpY2F0aW9uLT51cmwoKS5ob3N0KCkgPT0gbm90
aWZpY2F0aW9uLT51cmwoKS5ob3N0KCkpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
ICAgICBpdGVyKys7CisgICAgICAgIH0KKyAgICB9IGVsc2UKKyAgICAgICAgaXRlciA9IGVuZDsK
KwogICAgIGlmIChkdW1wTm90aWZpY2F0aW9uKSB7CisgICAgICAgIGlmIChpdGVyICE9IGVuZCkg
eworICAgICAgICAgICAgTm90aWZpY2F0aW9uKiBvbGROb3RpZmljYXRpb24gPSBpdGVyLmtleSgp
OworICAgICAgICAgICAgcHJpbnRmKCJSRVBMQUNJTkcgTk9USUZJQ0FUSU9OICVzXG4iLCBvbGRO
b3RpZmljYXRpb24tPmlzSFRNTCgpID8gUVN0cmluZyhvbGROb3RpZmljYXRpb24tPnVybCgpLnN0
cmluZygpKS50b1V0ZjgoKS5jb25zdERhdGEoKSA6IFFTdHJpbmcob2xkTm90aWZpY2F0aW9uLT5j
b250ZW50cygpLnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKKyAgICAgICAgfQogICAg
ICAgICBpZiAobm90aWZpY2F0aW9uLT5pc0hUTUwoKSkKICAgICAgICAgICAgIHByaW50ZigiREVT
S1RPUCBOT1RJRklDQVRJT046IGNvbnRlbnRzIGF0ICVzXG4iLCBRU3RyaW5nKG5vdGlmaWNhdGlv
bi0+dXJsKCkuc3RyaW5nKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKICAgICAgICAgZWxzZSB7
Ci0gICAgICAgICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FUSU9OOiBpY29uICVzLCB0aXRs
ZSAlcywgdGV4dCAlc1xuIiwgCisgICAgICAgICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FU
SU9OOiVzIGljb24gJXMsIHRpdGxlICVzLCB0ZXh0ICVzXG4iLAorICAgICAgICAgICAgICAgIG5v
dGlmaWNhdGlvbi0+ZGlyKCkgPT0gInJ0bCIgPyAiKFJUTCkiIDogIiIsCiAgICAgICAgICAgICAg
ICAgUVN0cmluZyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkuaWNvbigpLnN0cmluZygpKS50b1V0
ZjgoKS5jb25zdERhdGEoKSwgUVN0cmluZyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUo
KSkudG9VdGY4KCkuY29uc3REYXRhKCksIAogICAgICAgICAgICAgICAgIFFTdHJpbmcobm90aWZp
Y2F0aW9uLT5jb250ZW50cygpLmJvZHkoKSkudG9VdGY4KCkuY29uc3REYXRhKCkpOwogICAgICAg
ICB9CiAgICAgfQogCisgICAgaWYgKGl0ZXIgIT0gZW5kKSB7CisgICAgICAgIHNlbmRFdmVudChp
dGVyLmtleSgpLCBldmVudE5hbWVzKCkuY2xvc2VFdmVudCk7CisgICAgICAgIGRlbGV0ZSBtX25v
dGlmaWNhdGlvbnMudGFrZShpdGVyLmtleSgpKTsKKyAgICB9CisgICAgTm90aWZpY2F0aW9uSWNv
bldyYXBwZXIqIHdyYXBwZXIgPSBuZXcgTm90aWZpY2F0aW9uSWNvbldyYXBwZXIoKTsKKyAgICBt
X25vdGlmaWNhdGlvbnMuaW5zZXJ0KG5vdGlmaWNhdGlvbiwgd3JhcHBlcik7CisgICAgc2VuZEV2
ZW50KG5vdGlmaWNhdGlvbiwgImRpc3BsYXkiKTsKKwogI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZ
SUNPTgotICAgIG1fdHJheS5zaG93KCk7Ci0gICAgbV90cmF5LnNob3dNZXNzYWdlKG5vdGlmaWNh
dGlvbi0+Y29udGVudHMoKS50aXRsZSgpLCBub3RpZmljYXRpb24tPmNvbnRlbnRzKCkuYm9keSgp
LCBRU3lzdGVtVHJheUljb246OkluZm9ybWF0aW9uKTsKKyAgICB3cmFwcGVyLT5tX25vdGlmaWNh
dGlvbkljb24gPSBuZXcgUVN5c3RlbVRyYXlJY29uOworICAgIHdyYXBwZXItPm1fbm90aWZpY2F0
aW9uSWNvbi0+c2hvdygpOworICAgIHdyYXBwZXItPm1fbm90aWZpY2F0aW9uSWNvbi0+c2hvd01l
c3NhZ2Uobm90aWZpY2F0aW9uLT5jb250ZW50cygpLnRpdGxlKCksIG5vdGlmaWNhdGlvbi0+Y29u
dGVudHMoKS5ib2R5KCkpOwogI2VuZGlmCiAgICAgcmV0dXJuIHRydWU7CiB9CkBAIC04MCwxMiAr
MTIzLDE3IEBAIHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmNhbmMKICAgICAg
ICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT04gQ0xPU0VEOiAlc1xuIiwgUVN0cmlu
Zyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUoKSkudG9VdGY4KCkuY29uc3REYXRhKCkp
OwogICAgIH0KIAotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgUUhhc2ggPE5vdGlmaWNhdGlv
biosIE5vdGlmaWNhdGlvbkljb25XcmFwcGVyKj46Okl0ZXJhdG9yIGl0ZXIgPSBtX25vdGlmaWNh
dGlvbnMuZmluZChub3RpZmljYXRpb24pOworICAgIGlmIChpdGVyICE9IG1fbm90aWZpY2F0aW9u
cy5lbmQoKSkKKyAgICAgICAgc2VuZEV2ZW50KGl0ZXIua2V5KCksIGV2ZW50TmFtZXMoKS5jbG9z
ZUV2ZW50KTsKIH0KIAogdm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6bm90aWZp
Y2F0aW9uT2JqZWN0RGVzdHJveWVkKE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogewotICAg
IG5vdEltcGxlbWVudGVkKCk7CisgICAgLy8gQ2FsbGVkIGZyb20gfk5vdGlmaWNhdGlvbigpLCBS
ZW1vdmUgdGhlIGVudHJ5IGZyb20gdGhlIG5vdGlmaWNhdGlvbnMgbGlzdCBhbmQgZGVsZXRlIHRo
ZSBpY29uLgorICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmljYXRpb25JY29uV3JhcHBl
cio+OjpJdGVyYXRvciBpdGVyID0gbV9ub3RpZmljYXRpb25zLmZpbmQobm90aWZpY2F0aW9uKTsK
KyAgICBpZiAoaXRlciAhPSBtX25vdGlmaWNhdGlvbnMuZW5kKCkpCisgICAgICAgIGRlbGV0ZSBt
X25vdGlmaWNhdGlvbnMudGFrZShub3RpZmljYXRpb24pOwogfQogCiB2b2lkIE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0OjpyZXF1ZXN0UGVybWlzc2lvbihTZWN1cml0eU9yaWdpbiogb3Jp
Z2luLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gY2FsbGJhY2spCkBAIC05MywxMyArMTQxLDYy
IEBAIHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnJlcXUKICAgICBpZiAoZHVt
cE5vdGlmaWNhdGlvbikKICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT04gUEVSTUlT
U0lPTiBSRVFVRVNURUQ6ICVzXG4iLCBRU3RyaW5nKG9yaWdpbi0+dG9TdHJpbmcoKSkudG9VdGY4
KCkuY29uc3REYXRhKCkpOwogCi0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBRU3RyaW5nIG9y
aWdpblN0cmluZyA9IG9yaWdpbi0+dG9TdHJpbmcoKTsKKyAgICBRSGFzaDxRU3RyaW5nLCBRTGlz
dDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+ID46Oml0ZXJhdG9yIGl0ZXIgPSBtX3BlbmRpbmdQZXJt
aXNzaW9uUmVxdWVzdHMuZmluZChvcmlnaW5TdHJpbmcpOworICAgIGlmIChpdGVyICE9IG1fcGVu
ZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5lbmQoKSkKKyAgICAgICAgaXRlci52YWx1ZSgpLmFwcGVu
ZChjYWxsYmFjayk7CisgICAgZWxzZSB7CisgICAgICAgIFFMaXN0PFJlZlB0cjxWb2lkQ2FsbGJh
Y2s+ID4gY2FsbGJhY2tzOworICAgICAgICBSZWZQdHI8Vm9pZENhbGxiYWNrPiBjYiA9IGNhbGxi
YWNrOworICAgICAgICBjYWxsYmFja3MuYXBwZW5kKGNiKTsKKyAgICAgICAgbV9wZW5kaW5nUGVy
bWlzc2lvblJlcXVlc3RzLmluc2VydChvcmlnaW5TdHJpbmcsIGNhbGxiYWNrcyk7CisgICAgICAg
IGlmIChyZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uKQorICAgICAgICAgICAgcmVxdWVzdFBlcm1p
c3Npb25GdW5jdGlvbihtX3JlY2VpdmVyLCBtX3BhZ2UsIG9yaWdpblN0cmluZyk7CisgICAgfQor
fQorCitOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0aW9uUHJlc2Vu
dGVyQ2xpZW50UXQ6OmNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJiB1cmwpCit7CisgICAgTm90
aWZpY2F0aW9uUGVybWlzc2lvbiBwZXJtaXNzaW9uID0gTm90aWZpY2F0aW9uTm90QWxsb3dlZDsK
KyAgICBRU3RyaW5nIG9yaWdpbiA9IHVybC5zdHJpbmcoKTsKKyAgICBpZiAoY2hlY2tQZXJtaXNz
aW9uRnVuY3Rpb24pCisgICAgICAgIGNoZWNrUGVybWlzc2lvbkZ1bmN0aW9uKG1fcmVjZWl2ZXIs
IG9yaWdpbiwgcGVybWlzc2lvbik7CisgICAgc3dpdGNoIChwZXJtaXNzaW9uKSB7CisgICAgY2Fz
ZSBOb3RpZmljYXRpb25BbGxvd2VkOgorICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uUHJlc2Vu
dGVyOjpQZXJtaXNzaW9uQWxsb3dlZDsKKyAgICBjYXNlIE5vdGlmaWNhdGlvbk5vdEFsbG93ZWQ6
CisgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25Ob3RBbGxv
d2VkOworICAgIGNhc2UgTm90aWZpY2F0aW9uRGVuaWVkOgorICAgICAgICByZXR1cm4gTm90aWZp
Y2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uRGVuaWVkOworICAgIH0KKyAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICByZXR1cm4gTm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9u
Tm90QWxsb3dlZDsKK30KKwordm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6YWxs
b3dOb3RpZmljYXRpb25Gb3JPcmlnaW4oY29uc3QgUVN0cmluZyYgb3JpZ2luKQoreworICAgIFFI
YXNoPFFTdHJpbmcsIFFMaXN0PFJlZlB0cjxWb2lkQ2FsbGJhY2s+ID4gPjo6aXRlcmF0b3IgaXRl
ciA9IG1fcGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5maW5kKG9yaWdpbik7CisgICAgaWYgKGl0
ZXIgIT0gbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLmVuZCgpKSB7CisgICAgICAgIFFMaXN0
PFJlZlB0cjxWb2lkQ2FsbGJhY2s+ID4mIGNhbGxiYWNrcyA9IGl0ZXIudmFsdWUoKTsKKyAgICAg
ICAgZm9yIChpbnQgaSA9IDA7IGkgPCBjYWxsYmFja3Muc2l6ZSgpOyBpKyspCisgICAgICAgICAg
ICBjYWxsYmFja3MuYXQoaSktPmhhbmRsZUV2ZW50KCk7CisgICAgICAgIG1fcGVuZGluZ1Blcm1p
c3Npb25SZXF1ZXN0cy5yZW1vdmUob3JpZ2luKTsKKyAgICB9Cit9CisKK3ZvaWQgTm90aWZpY2F0
aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmNsZWFyTm90aWZpY2F0aW9uc0xpc3QoKQoreworICAgIG1f
cGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5jbGVhcigpOworICAgIHdoaWxlICghbV9ub3RpZmlj
YXRpb25zLmlzRW1wdHkoKSkgeworICAgICAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgTm90aWZp
Y2F0aW9uSWNvbldyYXBwZXIqPjo6SXRlcmF0b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5iZWdp
bigpOworICAgICAgICBkZWxldGUgbV9ub3RpZmljYXRpb25zLnRha2UoaXRlci5rZXkoKSk7Cisg
ICAgfQogfQogCi1Ob3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0aW9u
UHJlc2VudGVyQ2xpZW50UXQ6OmNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJikKK3ZvaWQgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnNlbmRFdmVudChOb3RpZmljYXRpb24qIG5vdGlm
aWNhdGlvbiwgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudE5hbWUpCiB7Ci0gICAgLy8gRklYTUUg
SW1wbGVtZW50IHBlcm1pc3Npb24gcG9saWN5Ci0gICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNl
bnRlcjo6UGVybWlzc2lvbkFsbG93ZWQ7CisgICAgUmVmUHRyPEV2ZW50PiBldmVudCA9IEV2ZW50
OjpjcmVhdGUoZXZlbnROYW1lLCBmYWxzZSwgdHJ1ZSk7CisgICAgbm90aWZpY2F0aW9uLT5kaXNw
YXRjaEV2ZW50KGV2ZW50LnJlbGVhc2UoKSk7CiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9O
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oCShyZXZpc2lvbiA2MDE5OCkKKysrIFdlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yOSwyMCArMjksMzUgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2lm
bmRlZiBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdF9oCisjZGVmaW5lIE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0X2gKKwogI2luY2x1ZGUgIk5vdGlmaWNhdGlvbi5oIgogI2luY2x1
ZGUgIk5vdGlmaWNhdGlvblByZXNlbnRlci5oIgogCisjaW5jbHVkZSA8UU11bHRpSGFzaD4KICNp
bmNsdWRlIDxRU3lzdGVtVHJheUljb24+CiAKKwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQor
Y2xhc3MgUVdlYlBhZ2U7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIERvY3VtZW50Owog
Y2xhc3MgS1VSTDsKIAorc3RydWN0IE5vdGlmaWNhdGlvbkljb25XcmFwcGVyIHsKKyAgICBOb3Rp
ZmljYXRpb25JY29uV3JhcHBlcigpOworICAgIH5Ob3RpZmljYXRpb25JY29uV3JhcHBlcigpOwor
I2lmbmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgorICAgIFFTeXN0ZW1UcmF5SWNvbiogbV9ub3Rp
ZmljYXRpb25JY29uOworI2VuZGlmCit9OworCiBjbGFzcyBOb3RpZmljYXRpb25QcmVzZW50ZXJD
bGllbnRRdCA6IHB1YmxpYyBOb3RpZmljYXRpb25QcmVzZW50ZXIgewogcHVibGljOgotICAgIE5v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KCk7CisgICAgTm90aWZpY2F0aW9uUHJlc2VudGVy
Q2xpZW50UXQoUVdlYlBhZ2UqKTsKKyAgICB+Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQo
KSB7fQogCiAgICAgLyogV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyIGludGVyZmFjZSAq
LwogICAgIHZpcnR1YWwgYm9vbCBzaG93KE5vdGlmaWNhdGlvbiopOwpAQCAtNTEsMTMgKzY2LDIy
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oU2VjdXJpdHlP
cmlnaW4qLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4pOwogICAgIHZpcnR1YWwgTm90aWZpY2F0
aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uIGNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJik7CiAK
KyAgICB2b2lkIGFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKGNvbnN0IFFTdHJpbmcmIG9yaWdp
bik7CisgICAgdm9pZCBjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCk7CisKICAgICBzdGF0aWMgYm9v
bCBkdW1wTm90aWZpY2F0aW9uOwogCi1wcml2YXRlOiAKLSNpZm5kZWYgUVRfTk9fU1lTVEVNVFJB
WUlDT04KLSAgICBRU3lzdGVtVHJheUljb24gbV90cmF5OwotI2VuZGlmCisgICAgdm9pZCBzZXRS
ZWNlaXZlcihRT2JqZWN0KiByZWNlaXZlcikgeyBtX3JlY2VpdmVyID0gcmVjZWl2ZXI7IH0KKwor
cHJpdmF0ZToKKyAgICB2b2lkIHNlbmRFdmVudChOb3RpZmljYXRpb24qLCBjb25zdCBBdG9taWNT
dHJpbmcmIGV2ZW50TmFtZSk7CisgICAgUVdlYlBhZ2UqIG1fcGFnZTsKKyAgICBRTXVsdGlIYXNo
PFFTdHJpbmcsICBRTGlzdDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+ID4gbV9wZW5kaW5nUGVybWlz
c2lvblJlcXVlc3RzOworICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmljYXRpb25JY29u
V3JhcHBlcio+IG1fbm90aWZpY2F0aW9uczsKKyAgICBRT2JqZWN0KiBtX3JlY2VpdmVyOwogfTsK
IH0KIAogI2VuZGlmCisjZW5kaWYKKwpJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNjAyMDQpCisrKyBXZWJL
aXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0w
NS0yNSAgWWFlbCBBaGFyb24gIDx5YWVsLmFoYXJvbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBQYXNzIGFsbCB3ZWIgbm90
aWZpY2F0aW9uIGxheW91dCB0ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzkxNDYKKworICAgICAgICBNaW1pYyBDaHJvbWl1bSdzIHRlc3Rfc2hl
bGwgc2VjdXJpdHkgbW9kZWwgaW4gUXQncyBEUlQuCisgICAgICAgIEl0IG1ha2VzIGEgbGlzdCBv
ZiBvcmlnaW5zIHdoaWNoIHdlcmUgZ3JhbnRlZCBwZXJtaXNzaW9uIHRvIGRpc3BsYXkKKyAgICAg
ICAgbm90aWZpY2F0aW9ucywgYW5kIG9ubHkgdGhvc2Ugb3JpZ2lucyBjYW4gZGlzcGxheSBub3Rp
ZmljYXRpb25zLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjaGVja1Blcm1pc3Npb25DYWxsYmFjayk6CisgICAg
ICAgIChXZWJDb3JlOjpyZXF1ZXN0UGVybWlzc2lvbkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNv
cmU6OldlYlBhZ2U6OldlYlBhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6
OmNoZWNrUGVybWlzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6cmVx
dWVzdFBlcm1pc3Npb24pOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJU
cmVlUXQuaDoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxl
clF0LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpyZXNldCk6CisgICAgICAg
IChMYXlvdXRUZXN0Q29udHJvbGxlcjo6Z3JhbnREZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lv
bik6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0
aW9uUGVybWlzc2lvbik6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENv
bnRyb2xsZXJRdC5oOgorCiAyMDEwLTA1LTI0ICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERpbWl0cmkgR2xhemtvdi4KSW5kZXg6IFdl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3Bw
CShyZXZpc2lvbiA2MDE5OCkKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBS
ZW5kZXJUcmVlUXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzAsNiArMTMwLDE1IEBAIHB1Ymxp
YzoKIH07CiAjZW5kaWYKIAordm9pZCBjaGVja1Blcm1pc3Npb25DYWxsYmFjayhRT2JqZWN0KiBy
ZWNlaXZlciwgY29uc3QgUVVybCYgdXJsLCBOb3RpZmljYXRpb25QZXJtaXNzaW9uJiBwZXJtaXNz
aW9uKQoreworICAgIHFvYmplY3RfY2FzdDxEdW1wUmVuZGVyVHJlZSo+KHJlY2VpdmVyKS0+Y2hl
Y2tQZXJtaXNzaW9uKHVybCwgcGVybWlzc2lvbik7Cit9CisKK3ZvaWQgcmVxdWVzdFBlcm1pc3Np
b25DYWxsYmFjayhRT2JqZWN0KiByZWNlaXZlciwgUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJp
bmcmIG9yaWdpbikKK3sKKyAgICBxb2JqZWN0X2Nhc3Q8RHVtcFJlbmRlclRyZWUqPihyZWNlaXZl
ciktPnJlcXVlc3RQZXJtaXNzaW9uKHBhZ2UsIG9yaWdpbik7Cit9CiAKIFdlYlBhZ2U6OldlYlBh
Z2UoUU9iamVjdCogcGFyZW50LCBEdW1wUmVuZGVyVHJlZSogZHJ0KQogICAgIDogUVdlYlBhZ2Uo
cGFyZW50KQpAQCAtMTU4LDYgKzE2NywxMSBAQCBXZWJQYWdlOjpXZWJQYWdlKFFPYmplY3QqIHBh
cmVudCwgRHVtcFJlCiAKICAgICBzZXROZXR3b3JrQWNjZXNzTWFuYWdlcihtX2RydC0+bmV0d29y
a0FjY2Vzc01hbmFnZXIoKSk7CiAgICAgc2V0UGx1Z2luRmFjdG9yeShuZXcgVGVzdFBsdWdpbih0
aGlzKSk7CisKKyAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Tm90aWZpY2F0aW9uc1Jl
Y2VpdmVyKHRoaXMsIG1fZHJ0KTsKKyAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Q2hl
Y2tQZXJtaXNzaW9uRnVuY3Rpb24oY2hlY2tQZXJtaXNzaW9uQ2FsbGJhY2spOworICAgIER1bXBS
ZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uKHJlcXVlc3RQ
ZXJtaXNzaW9uQ2FsbGJhY2spOworCiB9CiAKIFdlYlBhZ2U6On5XZWJQYWdlKCkKQEAgLTkwMSw2
ICs5MTUsMTYgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6c3dpdGNoRm9jdXMoYm9vbCBmbwogICAg
IFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KG1fbWFpblZpZXcsICZldmVudCk7CiB9CiAKK3ZvaWQg
RHVtcFJlbmRlclRyZWU6OmNoZWNrUGVybWlzc2lvbihjb25zdCBRVXJsJiB1cmwsIE5vdGlmaWNh
dGlvblBlcm1pc3Npb24mIHBlcm1pc3Npb24pCit7CisgICAgcGVybWlzc2lvbiA9IG1fY29udHJv
bGxlci0+Y2hlY2tEZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lvbih1cmwuc2NoZW1lKCkgKyAi
Oi8vIiArIHVybC5ob3N0KCkpID8gTm90aWZpY2F0aW9uQWxsb3dlZCA6IE5vdGlmaWNhdGlvbkRl
bmllZDsKK30KKwordm9pZCBEdW1wUmVuZGVyVHJlZTo6cmVxdWVzdFBlcm1pc3Npb24oUVdlYlBh
Z2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKK3sKKyAgICBEdW1wUmVuZGVyVHJlZVN1
cHBvcnRRdDo6YWxsb3dOb3RpZmljYXRpb25Gb3JPcmlnaW4ocGFnZSwgb3JpZ2luKTsKK30KKwog
I2lmIGRlZmluZWQoUV9XU19YMTEpCiB2b2lkIER1bXBSZW5kZXJUcmVlOjppbml0aWFsaXplRm9u
dHMoKQogewpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRy
ZWVRdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBS
ZW5kZXJUcmVlUXQuaAkocmV2aXNpb24gNjAxOTgpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDcg
QEAKICNpbmNsdWRlIDxRU3NsRXJyb3I+CiAjZW5kaWYKIAorI2luY2x1ZGUgIi4uLy4uLy4uL1dl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oIgogI2luY2x1
ZGUgPHF3ZWJmcmFtZS5oPgogI2luY2x1ZGUgPHF3ZWJpbnNwZWN0b3IuaD4KICNpbmNsdWRlIDxx
d2VicGFnZS5oPgpAQCAtMTEzLDYgKzExNCw4IEBAIHB1YmxpYyBRX1NMT1RTOgogICAgIHZvaWQg
ZHVtcERhdGFiYXNlUXVvdGEoUVdlYkZyYW1lKiBmcmFtZSwgY29uc3QgUVN0cmluZyYgZGJOYW1l
KTsKICAgICB2b2lkIHN0YXR1c0Jhck1lc3NhZ2UoY29uc3QgUVN0cmluZyYgbWVzc2FnZSk7CiAg
ICAgdm9pZCB3aW5kb3dDbG9zZVJlcXVlc3RlZCgpOworICAgIHZvaWQgY2hlY2tQZXJtaXNzaW9u
KGNvbnN0IFFVcmwmLCBOb3RpZmljYXRpb25QZXJtaXNzaW9uJik7CisgICAgdm9pZCByZXF1ZXN0
UGVybWlzc2lvbihRV2ViUGFnZSogcGFnZSwgY29uc3QgUVN0cmluZyYpOwogCiBRX1NJR05BTFM6
CiAgICAgdm9pZCBxdWl0KCk7CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9M
YXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcAkocmV2aXNpb24gNjAxOTgp
CisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjQsNiArNjQsOCBAQCB2b2lkIExheW91dFRlc3RDb250
cm9sbGVyOjpyZXNldCgpCiAgICAgbV9oYW5kbGVFcnJvclBhZ2VzID0gZmFsc2U7CiAgICAgbV93
ZWJIaXN0b3J5ID0gMDsKICAgICBtX2dsb2JhbEZsYWcgPSBmYWxzZTsKKyAgICBtX2Rlc2t0b3BO
b3RpZmljYXRpb25BbGxvd2VkT3JpZ2lucy5jbGVhcigpOworCiAgICAgRHVtcFJlbmRlclRyZWVT
dXBwb3J0UXQ6OmR1bXBFZGl0aW5nQ2FsbGJhY2tzKGZhbHNlKTsKICAgICBEdW1wUmVuZGVyVHJl
ZVN1cHBvcnRRdDo6ZHVtcEZyYW1lTG9hZGVyKGZhbHNlKTsKICAgICBEdW1wUmVuZGVyVHJlZVN1
cHBvcnRRdDo6ZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcyhmYWxzZSk7CkBAIC03MSw2ICs3Myw3
IEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnJlc2V0KCkKICAgICBEdW1wUmVuZGVyVHJl
ZVN1cHBvcnRRdDo6c2V0V2lsbFNlbmRSZXF1ZXN0UmV0dXJuc051bGwoZmFsc2UpOwogICAgIER1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRXaWxsU2VuZFJlcXVlc3RDbGVhckhlYWRlcnMoUVN0
cmluZ0xpc3QoKSk7CiAgICAgc2V0SWNvbkRhdGFiYXNlRW5hYmxlZChmYWxzZSk7CisKICAgICBl
bWl0IGhpZGVQYWdlKCk7CiB9CiAKQEAgLTE4MSwxMyArMTg0LDEyIEBAIGludCBMYXlvdXRUZXN0
Q29udHJvbGxlcjo6d2luZG93Q291bnQoKQogCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpn
cmFudERlc2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKGNvbnN0IFFTdHJpbmcmIG9yaWdpbikK
IHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IGZvciBub3RpZmljYXRpb24gc2VjdXJpdHkKKyAg
ICBtX2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2lucy5hcHBlbmQob3JpZ2luKTsKIH0K
IAogYm9vbCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0aW9uUGVy
bWlzc2lvbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVu
dCBmb3Igbm90aWZpY2F0aW9uIHNlY3VyaXR5Ci0gICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJu
IG1fZGVza3RvcE5vdGlmaWNhdGlvbkFsbG93ZWRPcmlnaW5zLmNvbnRhaW5zKG9yaWdpbik7CiB9
CiAKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmRpc3BsYXkoKQpJbmRleDogV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQu
aAkocmV2aXNpb24gNjAxOTgpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlv
dXRUZXN0Q29udHJvbGxlclF0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIxOCw2ICsyMTgsNyBAQCBw
cml2YXRlOgogICAgIFFXZWJGcmFtZSogbV90b3BMb2FkaW5nRnJhbWU7CiAgICAgV2ViQ29yZTo6
RHVtcFJlbmRlclRyZWUqIG1fZHJ0OwogICAgIFFXZWJIaXN0b3J5KiBtX3dlYkhpc3Rvcnk7Cisg
ICAgUVN0cmluZ0xpc3QgbV9kZXNrdG9wTm90aWZpY2F0aW9uQWxsb3dlZE9yaWdpbnM7CiB9Owog
CiAjZW5kaWYgLy8gTGF5b3V0VGVzdENvbnRyb2xsZXJRdF9oCkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA2
MDIwNCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDEyIEBACisyMDEwLTA1LTI1ICBZYWVsIEFoYXJvbiAgPHlhZWwuYWhhcm9uQG5va2lhLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFBh
c3MgYWxsIHdlYiBub3RpZmljYXRpb24gbGF5b3V0IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTE0NgorCisgICAgICAgICogcGxhdGZvcm0v
cXQvU2tpcHBlZDoKKwogMjAxMC0wNS0yNSAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgcGl4ZWwgZXhwZWN0YXRpb25zIGNoYW5nZQpJ
bmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA2MDE5OCkKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTQ2OTUsMTQgKzQ2OTUs
NiBAQCBsb2FkZXIvZ28tYmFjay10by1kaWZmZXJlbnQtd2luZG93LXNpemUuCiAjIFRoaXMgcG9y
dCBkb2Vzbid0IHN1cHBvcnQgR2VvbG9jYXRpb24uCiBmYXN0L2RvbS9HZW9sb2NhdGlvbgogCi0j
IFRoaXMgcG9ydCBkb2Vzbid0IHN1cHBvcnQgTm90aWZpY2F0aW9uIHBlcm1pc3Npb25zCi1mYXN0
L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy1jaGVjay1wZXJtaXNzaW9uLmh0bWwKLWZhc3Qv
bm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLWRpc3BsYXktY2xvc2UtZXZlbnRzLmh0bWwKLWZh
c3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi5odG1sCi1m
YXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy13aXRob3V0LXBlcm1pc3Npb24uaHRtbAot
ZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtcnRsLmh0bWwKLWZhc3Qvbm90aWZpY2F0
aW9ucy9ub3RpZmljYXRpb25zLXJlcGxhY2UuaHRtbAotCiAjIE1pc3NpbmcgRFJUIGFiaWxpdHkg
dG8gc2V0IGFjY2VwdCBjb29raWUgcG9saWN5CiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Ny
b3NzLW9yaWdpbi1jb29raWUtc3RvcmFnZS5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57163</attachid>
            <date>2010-05-26 14:50:15 -0700</date>
            <delta_ts>2010-05-27 05:49:52 -0700</delta_ts>
            <desc>Patch, updating changelog.</desc>
            <filename>39146.patch</filename>
            <type>text/plain</type>
            <size>23163</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNjAyNTEpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTAtMDUtMjYgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFy
b25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVzdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIG11bHRpcGxlIHNpbXVsdGFuZW91cyBub3RpZmljYXRpb25zLgor
ICAgICAgICBBZGQgc2lnbmFscyB0byB0aGUgY2xpZW50IGZvciBzZWN1cml0eSBjaGVja3MuIE5v
dGlmaWNhdGlvbnMgYXJlIGVuYWJsZWQKKyAgICAgICAgaWYgdGhlIGNsaWVudCBkb2VzIG5vdCBj
b25uZWN0IHRvIHRoZSBzaWduYWxzLiAKKyAgICAgICAgU3VwcG9ydCByZXBsYWNlSWQgYW5kIGNh
bmNlbC4KKyAgICAgICAgU2VuZCBjbG9zZSBhbmQgZGlzcGxheSBldmVudHMgd2hlbiBuZWVkZWQu
ICAgCisKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3BwOgorICAgICAgICAoUVdlYlBhZ2VQcml2
YXRlOjpRV2ViUGFnZVByaXZhdGUpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlU3VwcG9ydFF0LmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojpz
ZXROb3RpZmljYXRpb25zUmVjZWl2ZXIpOgorICAgICAgICAoRHVtcFJlbmRlclRyZWVTdXBwb3J0
UXQ6OmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKToKKyAgICAgICAgKER1bXBSZW5kZXJUcmVl
U3VwcG9ydFF0OjpzZXRDaGVja1Blcm1pc3Npb25GdW5jdGlvbik6CisgICAgICAgIChEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdDo6c2V0UmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvbik6CisgICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaDoKKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyQ2xpZW50UXQ6OmRpc3BhdGNoRGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxk
KToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dC5jcHA6CisgICAgICAgIChOb3RpZmljYXRpb25JY29uV3JhcHBlcjo6Tm90aWZpY2F0aW9uSWNv
bldyYXBwZXIpOgorICAgICAgICAoTm90aWZpY2F0aW9uSWNvbldyYXBwZXI6On5Ob3RpZmljYXRp
b25JY29uV3JhcHBlcik6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQpOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJl
c2VudGVyQ2xpZW50UXQ6OnNob3cpOgorICAgICAgICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xp
ZW50UXQ6OmNhbmNlbCk6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6
bm90aWZpY2F0aW9uT2JqZWN0RGVzdHJveWVkKToKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudFF0OjpyZXF1ZXN0UGVybWlzc2lvbik6CisgICAgICAgIChOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6Y2hlY2tQZXJtaXNzaW9uKToKKyAgICAgICAgKE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0OjphbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbik6CisgICAgICAg
IChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2xlYXJOb3RpZmljYXRpb25zTGlzdCk6
CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2VuZEV2ZW50KToKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6On5Ob3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdCk6CisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6c2V0UmVjZWl2ZXIpOgorCiAyMDEwLTA1LTI1ICBBbnRvbmlvIEdv
bWVzICA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2phbiBW
YWZhaS4KSW5kZXg6IFdlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCShyZXZpc2lvbiA2MDI1MSkKKysrIFdlYktpdC9xdC9B
cGkvcXdlYnBhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTksNyArMjk5LDcgQEAgUVdlYlBh
Z2VQcml2YXRlOjpRV2ViUGFnZVByaXZhdGUoUVdlYlBhZwogICAgIFBhZ2VHcm91cDo6c2V0U2hv
dWxkVHJhY2tWaXNpdGVkTGlua3ModHJ1ZSk7CiAgICAgCiAjaWYgRU5BQkxFKE5PVElGSUNBVElP
TlMpICAgIAotICAgIG5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudCA9IG5ldyBOb3RpZmljYXRp
b25QcmVzZW50ZXJDbGllbnRRdCgpOworICAgIG5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudCA9
IG5ldyBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdChxKTsKICNlbmRpZgogfQogCkluZGV4
OiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBv
cnRRdC5jcHAJKHJldmlzaW9uIDYwMjUxKQorKysgV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjAsNiArNjAsOSBA
QAogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAorQ2hlY2tQZXJtaXNzaW9uRnVuY3Rpb25U
eXBlKiBjaGVja1Blcm1pc3Npb25GdW5jdGlvbiA9IDA7CitSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0
aW9uVHlwZSogcmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvbiA9IDA7CisKIER1bXBSZW5kZXJUcmVl
U3VwcG9ydFF0OjpEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdCgpCiB7CiB9CkBAIC01MzMsNiArNTM2
LDI5IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OmR1bXBOb3RpZmkKICAgICBOb3Rp
ZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6ZHVtcE5vdGlmaWNhdGlvbiA9IGI7CiAjZW5kaWYK
IH0KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Tm90aWZpY2F0aW9uc1JlY2Vp
dmVyKFFXZWJQYWdlKiBwYWdlLCBRT2JqZWN0KiByZWNlaXZlcikKK3sKKyAgICBwYWdlLT5kLT5u
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPnNldFJlY2VpdmVyKHJlY2VpdmVyKTsKK30KKwor
dm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6YWxsb3dOb3RpZmljYXRpb25Gb3JPcmlnaW4o
UVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcmIG9yaWdpbikKK3sKKyNpZiBFTkFCTEUoTk9U
SUZJQ0FUSU9OUykKKyAgICBwYWdlLT5kLT5ub3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPmFs
bG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKG9yaWdpbik7CisjZW5kaWYKK30KKwordm9pZCBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0Q2hlY2tQZXJtaXNzaW9uRnVuY3Rpb24oQ2hlY2tQZXJt
aXNzaW9uRnVuY3Rpb25UeXBlKiBmKQoreworICAgIGNoZWNrUGVybWlzc2lvbkZ1bmN0aW9uID0g
ZjsKK30KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0UmVxdWVzdFBlcm1pc3Np
b25GdW5jdGlvbihSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uVHlwZSogZikKK3sKKyAgICByZXF1
ZXN0UGVybWlzc2lvbkZ1bmN0aW9uID0gZjsKK30KKwogLy8gUHJvdmlkZSBhIGJhY2t3YXJkIGNv
bXBhdGliaWxpdHkgd2l0aCBwcmV2aW91c2x5IGV4cG9ydGVkIHByaXZhdGUgc3ltYm9scyBhcyBv
ZiBRdFdlYktpdCA0LjYgcmVsZWFzZQogCiB2b2lkIFFXRUJLSVRfRVhQT1JUIHF0X3Jlc3VtZUFj
dGl2ZURPTU9iamVjdHMoUVdlYkZyYW1lKiBmcmFtZSkKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oCShyZXZpc2lvbiA2MDI1
MSkKKysrIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0zMCw2ICszMCwxOCBAQCBjbGFzcyBRV2ViRWxlbWVudDsKIGNs
YXNzIFFXZWJGcmFtZTsKIGNsYXNzIFFXZWJQYWdlOwogCitlbnVtIE5vdGlmaWNhdGlvblBlcm1p
c3Npb24geworICAgIE5vdGlmaWNhdGlvbkFsbG93ZWQsCisgICAgTm90aWZpY2F0aW9uTm90QWxs
b3dlZCwKKyAgICBOb3RpZmljYXRpb25EZW5pZWQKK307CisKK3R5cGVkZWYgdm9pZCAoQ2hlY2tQ
ZXJtaXNzaW9uRnVuY3Rpb25UeXBlKSAoUU9iamVjdCogcmVjZWl2ZXIsIGNvbnN0IFFVcmwmLCBO
b3RpZmljYXRpb25QZXJtaXNzaW9uJik7Cit0eXBlZGVmIHZvaWQgKFJlcXVlc3RQZXJtaXNzaW9u
RnVuY3Rpb25UeXBlKSAoUU9iamVjdCogcmVjZWl2ZXIsIFFXZWJQYWdlKiBwYWdlLCBjb25zdCBR
U3RyaW5nJik7CisKK2V4dGVybiBDaGVja1Blcm1pc3Npb25GdW5jdGlvblR5cGUqIGNoZWNrUGVy
bWlzc2lvbkZ1bmN0aW9uOworZXh0ZXJuIFJlcXVlc3RQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKiBy
ZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uOworCiBjbGFzcyBRV0VCS0lUX0VYUE9SVCBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdCB7CiAKIHB1YmxpYzoKQEAgLTEwMCw3ICsxMTIsMTIgQEAgcHVibGlj
OgogICAgIHN0YXRpYyB2b2lkIGR1bXBTZXRBY2NlcHRzRWRpdGluZyhib29sIGIpOwogCiAgICAg
c3RhdGljIHZvaWQgZHVtcE5vdGlmaWNhdGlvbihib29sIGIpOwotCisgICAgLy8gVGhlc2UgZnVu
Y3Rpb25zIHNob3VsZCBldmVudHVhbGx5IHR1cm4gaW50byBwdWJsaWMgQVBJCisgICAgLy8gYW5k
IHRoZSAicmVjZWl2ZXIiIGNvbmNlcHQgd291bGQgZ28gYXdheQorICAgIHN0YXRpYyB2b2lkIHNl
dE5vdGlmaWNhdGlvbnNSZWNlaXZlcihRV2ViUGFnZSogcGFnZSwgUU9iamVjdCogcmVjZWl2ZXIp
OworICAgIHN0YXRpYyB2b2lkIGFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKFFXZWJQYWdlKiBw
YWdlLCBjb25zdCBRU3RyaW5nJiBvcmlnaW4pOworICAgIHN0YXRpYyB2b2lkIHNldENoZWNrUGVy
bWlzc2lvbkZ1bmN0aW9uKENoZWNrUGVybWlzc2lvbkZ1bmN0aW9uVHlwZSopOworICAgIHN0YXRp
YyB2b2lkIHNldFJlcXVlc3RQZXJtaXNzaW9uRnVuY3Rpb24oUmVxdWVzdFBlcm1pc3Npb25GdW5j
dGlvblR5cGUqKTsKIH07CiAKICNlbmRpZgpJbmRleDogV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0ZyYW1lTG9hZGVyQ2xpZW50UXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcAkocmV2aXNpb24gNjAyNTEpCisrKyBXZWJL
aXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRRdC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTUxLDYgKzUxLDcgQEAKICNpbmNsdWRlICJIVE1MRm9ybUVsZW1lbnQuaCIKICNpbmNs
dWRlICJIVE1MUGx1Z0luRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUVFBQYXJzZXJzLmgiCisjaW5j
bHVkZSAiTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuaCIKICNpbmNsdWRlICJOb3RJbXBs
ZW1lbnRlZC5oIgogI2luY2x1ZGUgIlFOZXR3b3JrUmVwbHlIYW5kbGVyLmgiCiAjaW5jbHVkZSAi
UmVzb3VyY2VIYW5kbGVJbnRlcm5hbC5oIgpAQCAtNjM4LDggKzYzOSwxMiBAQCB2b2lkIEZyYW1l
TG9hZGVyQ2xpZW50UXQ6OmRpc3BhdGNoRGlkQ2xlCiAgICAgaWYgKHdvcmxkICE9IG1haW5UaHJl
YWROb3JtYWxXb3JsZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAobV93ZWJGcmFtZSkK
KyAgICBpZiAobV93ZWJGcmFtZSkgewogICAgICAgICBlbWl0IG1fd2ViRnJhbWUtPmphdmFTY3Jp
cHRXaW5kb3dPYmplY3RDbGVhcmVkKCk7CisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAg
ICAgIG1fd2ViRnJhbWUtPnBhZ2UoKS0+ZC0+bm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50LT5j
bGVhck5vdGlmaWNhdGlvbnNMaXN0KCk7CisjZW5kaWYKKyAgICB9CiB9CiAKIHZvaWQgRnJhbWVM
b2FkZXJDbGllbnRRdDo6ZG9jdW1lbnRFbGVtZW50QXZhaWxhYmxlKCkKSW5kZXg6IFdlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNs
aWVudFF0LmNwcAkocmV2aXNpb24gNjAyNTEpCisrKyBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQv
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiwx
MyArMzIsMTUgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdC5oIgogCisjaW5jbHVkZSAiRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQu
aCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNs
dWRlICJLVVJMLmgiCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJTZWN1
cml0eU9yaWdpbi5oIgogCisjaW5jbHVkZSAicXdlYmZyYW1lLmgiCiAjaW5jbHVkZSAicXdlYmtp
dGdsb2JhbC5oIgotCisjaW5jbHVkZSAicXdlYnBhZ2UuaCIKICNpbmNsdWRlIDxRdEd1aT4KIAog
CkBAIC00OCwyNSArNTAsNjYgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIGJvb2wgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmR1bXBOb3RpZmljYXRpb24gPSBmYWxzZTsKIAot
Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Ok5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0KCkKK05vdGlmaWNhdGlvbkljb25XcmFwcGVyOjpOb3RpZmljYXRpb25JY29uV3JhcHBlcigp
Cit7CisjaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJQ09OCisgICAgbV9ub3RpZmljYXRpb25JY29u
ID0gMDsKKyNlbmRpZgorfQorCitOb3RpZmljYXRpb25JY29uV3JhcHBlcjo6fk5vdGlmaWNhdGlv
bkljb25XcmFwcGVyKCkKK3sKKyNpZm5kZWYgUVRfTk9fU1lTVEVNVFJBWUlDT04KKyAgICBkZWxl
dGUgbV9ub3RpZmljYXRpb25JY29uOworI2VuZGlmCit9CisKK05vdGlmaWNhdGlvblByZXNlbnRl
ckNsaWVudFF0OjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdChRV2ViUGFnZSogcGFnZSkg
OiBtX3BhZ2UocGFnZSkKIHsKIH0KIAogYm9vbCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dDo6c2hvdyhOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKIHsKKyAgICBRSGFzaCA8Tm90aWZp
Y2F0aW9uKiwgTm90aWZpY2F0aW9uSWNvbldyYXBwZXIqPjo6SXRlcmF0b3IgZW5kID0gbV9ub3Rp
ZmljYXRpb25zLmVuZCgpOworICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmljYXRpb25J
Y29uV3JhcHBlcio+OjpJdGVyYXRvciBpdGVyID0gbV9ub3RpZmljYXRpb25zLmJlZ2luKCk7CisK
KyAgICBpZiAoIW5vdGlmaWNhdGlvbi0+cmVwbGFjZUlkKCkuaXNFbXB0eSgpKSB7CisgICAgICAg
IHdoaWxlIChpdGVyICE9IGVuZCkgeworICAgICAgICAgICAgTm90aWZpY2F0aW9uKiBleGlzdGlu
Z05vdGlmaWNhdGlvbiA9IGl0ZXIua2V5KCk7CisgICAgICAgICAgICBpZiAoZXhpc3RpbmdOb3Rp
ZmljYXRpb24tPnJlcGxhY2VJZCgpID09IG5vdGlmaWNhdGlvbi0+cmVwbGFjZUlkKCkgJiYgZXhp
c3RpbmdOb3RpZmljYXRpb24tPnVybCgpLnByb3RvY29sKCkgPT0gbm90aWZpY2F0aW9uLT51cmwo
KS5wcm90b2NvbCgpICYmIGV4aXN0aW5nTm90aWZpY2F0aW9uLT51cmwoKS5ob3N0KCkgPT0gbm90
aWZpY2F0aW9uLT51cmwoKS5ob3N0KCkpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
ICAgICBpdGVyKys7CisgICAgICAgIH0KKyAgICB9IGVsc2UKKyAgICAgICAgaXRlciA9IGVuZDsK
KwogICAgIGlmIChkdW1wTm90aWZpY2F0aW9uKSB7CisgICAgICAgIGlmIChpdGVyICE9IGVuZCkg
eworICAgICAgICAgICAgTm90aWZpY2F0aW9uKiBvbGROb3RpZmljYXRpb24gPSBpdGVyLmtleSgp
OworICAgICAgICAgICAgcHJpbnRmKCJSRVBMQUNJTkcgTk9USUZJQ0FUSU9OICVzXG4iLCBvbGRO
b3RpZmljYXRpb24tPmlzSFRNTCgpID8gUVN0cmluZyhvbGROb3RpZmljYXRpb24tPnVybCgpLnN0
cmluZygpKS50b1V0ZjgoKS5jb25zdERhdGEoKSA6IFFTdHJpbmcob2xkTm90aWZpY2F0aW9uLT5j
b250ZW50cygpLnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKKyAgICAgICAgfQogICAg
ICAgICBpZiAobm90aWZpY2F0aW9uLT5pc0hUTUwoKSkKICAgICAgICAgICAgIHByaW50ZigiREVT
S1RPUCBOT1RJRklDQVRJT046IGNvbnRlbnRzIGF0ICVzXG4iLCBRU3RyaW5nKG5vdGlmaWNhdGlv
bi0+dXJsKCkuc3RyaW5nKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKICAgICAgICAgZWxzZSB7
Ci0gICAgICAgICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FUSU9OOiBpY29uICVzLCB0aXRs
ZSAlcywgdGV4dCAlc1xuIiwgCisgICAgICAgICAgICBwcmludGYoIkRFU0tUT1AgTk9USUZJQ0FU
SU9OOiVzIGljb24gJXMsIHRpdGxlICVzLCB0ZXh0ICVzXG4iLAorICAgICAgICAgICAgICAgIG5v
dGlmaWNhdGlvbi0+ZGlyKCkgPT0gInJ0bCIgPyAiKFJUTCkiIDogIiIsCiAgICAgICAgICAgICAg
ICAgUVN0cmluZyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkuaWNvbigpLnN0cmluZygpKS50b1V0
ZjgoKS5jb25zdERhdGEoKSwgUVN0cmluZyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUo
KSkudG9VdGY4KCkuY29uc3REYXRhKCksIAogICAgICAgICAgICAgICAgIFFTdHJpbmcobm90aWZp
Y2F0aW9uLT5jb250ZW50cygpLmJvZHkoKSkudG9VdGY4KCkuY29uc3REYXRhKCkpOwogICAgICAg
ICB9CiAgICAgfQogCisgICAgaWYgKGl0ZXIgIT0gZW5kKSB7CisgICAgICAgIHNlbmRFdmVudChp
dGVyLmtleSgpLCBldmVudE5hbWVzKCkuY2xvc2VFdmVudCk7CisgICAgICAgIGRlbGV0ZSBtX25v
dGlmaWNhdGlvbnMudGFrZShpdGVyLmtleSgpKTsKKyAgICB9CisgICAgTm90aWZpY2F0aW9uSWNv
bldyYXBwZXIqIHdyYXBwZXIgPSBuZXcgTm90aWZpY2F0aW9uSWNvbldyYXBwZXIoKTsKKyAgICBt
X25vdGlmaWNhdGlvbnMuaW5zZXJ0KG5vdGlmaWNhdGlvbiwgd3JhcHBlcik7CisgICAgc2VuZEV2
ZW50KG5vdGlmaWNhdGlvbiwgImRpc3BsYXkiKTsKKwogI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZ
SUNPTgotICAgIG1fdHJheS5zaG93KCk7Ci0gICAgbV90cmF5LnNob3dNZXNzYWdlKG5vdGlmaWNh
dGlvbi0+Y29udGVudHMoKS50aXRsZSgpLCBub3RpZmljYXRpb24tPmNvbnRlbnRzKCkuYm9keSgp
LCBRU3lzdGVtVHJheUljb246OkluZm9ybWF0aW9uKTsKKyAgICB3cmFwcGVyLT5tX25vdGlmaWNh
dGlvbkljb24gPSBuZXcgUVN5c3RlbVRyYXlJY29uOworICAgIHdyYXBwZXItPm1fbm90aWZpY2F0
aW9uSWNvbi0+c2hvdygpOworICAgIHdyYXBwZXItPm1fbm90aWZpY2F0aW9uSWNvbi0+c2hvd01l
c3NhZ2Uobm90aWZpY2F0aW9uLT5jb250ZW50cygpLnRpdGxlKCksIG5vdGlmaWNhdGlvbi0+Y29u
dGVudHMoKS5ib2R5KCkpOwogI2VuZGlmCiAgICAgcmV0dXJuIHRydWU7CiB9CkBAIC04MCwxMiAr
MTIzLDE3IEBAIHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmNhbmMKICAgICAg
ICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT04gQ0xPU0VEOiAlc1xuIiwgUVN0cmlu
Zyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUoKSkudG9VdGY4KCkuY29uc3REYXRhKCkp
OwogICAgIH0KIAotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgUUhhc2ggPE5vdGlmaWNhdGlv
biosIE5vdGlmaWNhdGlvbkljb25XcmFwcGVyKj46Okl0ZXJhdG9yIGl0ZXIgPSBtX25vdGlmaWNh
dGlvbnMuZmluZChub3RpZmljYXRpb24pOworICAgIGlmIChpdGVyICE9IG1fbm90aWZpY2F0aW9u
cy5lbmQoKSkKKyAgICAgICAgc2VuZEV2ZW50KGl0ZXIua2V5KCksIGV2ZW50TmFtZXMoKS5jbG9z
ZUV2ZW50KTsKIH0KIAogdm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6bm90aWZp
Y2F0aW9uT2JqZWN0RGVzdHJveWVkKE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogewotICAg
IG5vdEltcGxlbWVudGVkKCk7CisgICAgLy8gQ2FsbGVkIGZyb20gfk5vdGlmaWNhdGlvbigpLCBS
ZW1vdmUgdGhlIGVudHJ5IGZyb20gdGhlIG5vdGlmaWNhdGlvbnMgbGlzdCBhbmQgZGVsZXRlIHRo
ZSBpY29uLgorICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmljYXRpb25JY29uV3JhcHBl
cio+OjpJdGVyYXRvciBpdGVyID0gbV9ub3RpZmljYXRpb25zLmZpbmQobm90aWZpY2F0aW9uKTsK
KyAgICBpZiAoaXRlciAhPSBtX25vdGlmaWNhdGlvbnMuZW5kKCkpCisgICAgICAgIGRlbGV0ZSBt
X25vdGlmaWNhdGlvbnMudGFrZShub3RpZmljYXRpb24pOwogfQogCiB2b2lkIE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0OjpyZXF1ZXN0UGVybWlzc2lvbihTZWN1cml0eU9yaWdpbiogb3Jp
Z2luLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gY2FsbGJhY2spCkBAIC05MywxMyArMTQxLDYy
IEBAIHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnJlcXUKICAgICBpZiAoZHVt
cE5vdGlmaWNhdGlvbikKICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT04gUEVSTUlT
U0lPTiBSRVFVRVNURUQ6ICVzXG4iLCBRU3RyaW5nKG9yaWdpbi0+dG9TdHJpbmcoKSkudG9VdGY4
KCkuY29uc3REYXRhKCkpOwogCi0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBRU3RyaW5nIG9y
aWdpblN0cmluZyA9IG9yaWdpbi0+dG9TdHJpbmcoKTsKKyAgICBRSGFzaDxRU3RyaW5nLCBRTGlz
dDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+ID46Oml0ZXJhdG9yIGl0ZXIgPSBtX3BlbmRpbmdQZXJt
aXNzaW9uUmVxdWVzdHMuZmluZChvcmlnaW5TdHJpbmcpOworICAgIGlmIChpdGVyICE9IG1fcGVu
ZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5lbmQoKSkKKyAgICAgICAgaXRlci52YWx1ZSgpLmFwcGVu
ZChjYWxsYmFjayk7CisgICAgZWxzZSB7CisgICAgICAgIFFMaXN0PFJlZlB0cjxWb2lkQ2FsbGJh
Y2s+ID4gY2FsbGJhY2tzOworICAgICAgICBSZWZQdHI8Vm9pZENhbGxiYWNrPiBjYiA9IGNhbGxi
YWNrOworICAgICAgICBjYWxsYmFja3MuYXBwZW5kKGNiKTsKKyAgICAgICAgbV9wZW5kaW5nUGVy
bWlzc2lvblJlcXVlc3RzLmluc2VydChvcmlnaW5TdHJpbmcsIGNhbGxiYWNrcyk7CisgICAgICAg
IGlmIChyZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uKQorICAgICAgICAgICAgcmVxdWVzdFBlcm1p
c3Npb25GdW5jdGlvbihtX3JlY2VpdmVyLCBtX3BhZ2UsIG9yaWdpblN0cmluZyk7CisgICAgfQor
fQorCitOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0aW9uUHJlc2Vu
dGVyQ2xpZW50UXQ6OmNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJiB1cmwpCit7CisgICAgTm90
aWZpY2F0aW9uUGVybWlzc2lvbiBwZXJtaXNzaW9uID0gTm90aWZpY2F0aW9uTm90QWxsb3dlZDsK
KyAgICBRU3RyaW5nIG9yaWdpbiA9IHVybC5zdHJpbmcoKTsKKyAgICBpZiAoY2hlY2tQZXJtaXNz
aW9uRnVuY3Rpb24pCisgICAgICAgIGNoZWNrUGVybWlzc2lvbkZ1bmN0aW9uKG1fcmVjZWl2ZXIs
IG9yaWdpbiwgcGVybWlzc2lvbik7CisgICAgc3dpdGNoIChwZXJtaXNzaW9uKSB7CisgICAgY2Fz
ZSBOb3RpZmljYXRpb25BbGxvd2VkOgorICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uUHJlc2Vu
dGVyOjpQZXJtaXNzaW9uQWxsb3dlZDsKKyAgICBjYXNlIE5vdGlmaWNhdGlvbk5vdEFsbG93ZWQ6
CisgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25Ob3RBbGxv
d2VkOworICAgIGNhc2UgTm90aWZpY2F0aW9uRGVuaWVkOgorICAgICAgICByZXR1cm4gTm90aWZp
Y2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uRGVuaWVkOworICAgIH0KKyAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICByZXR1cm4gTm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9u
Tm90QWxsb3dlZDsKK30KKwordm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6YWxs
b3dOb3RpZmljYXRpb25Gb3JPcmlnaW4oY29uc3QgUVN0cmluZyYgb3JpZ2luKQoreworICAgIFFI
YXNoPFFTdHJpbmcsIFFMaXN0PFJlZlB0cjxWb2lkQ2FsbGJhY2s+ID4gPjo6aXRlcmF0b3IgaXRl
ciA9IG1fcGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5maW5kKG9yaWdpbik7CisgICAgaWYgKGl0
ZXIgIT0gbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLmVuZCgpKSB7CisgICAgICAgIFFMaXN0
PFJlZlB0cjxWb2lkQ2FsbGJhY2s+ID4mIGNhbGxiYWNrcyA9IGl0ZXIudmFsdWUoKTsKKyAgICAg
ICAgZm9yIChpbnQgaSA9IDA7IGkgPCBjYWxsYmFja3Muc2l6ZSgpOyBpKyspCisgICAgICAgICAg
ICBjYWxsYmFja3MuYXQoaSktPmhhbmRsZUV2ZW50KCk7CisgICAgICAgIG1fcGVuZGluZ1Blcm1p
c3Npb25SZXF1ZXN0cy5yZW1vdmUob3JpZ2luKTsKKyAgICB9Cit9CisKK3ZvaWQgTm90aWZpY2F0
aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmNsZWFyTm90aWZpY2F0aW9uc0xpc3QoKQoreworICAgIG1f
cGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5jbGVhcigpOworICAgIHdoaWxlICghbV9ub3RpZmlj
YXRpb25zLmlzRW1wdHkoKSkgeworICAgICAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgTm90aWZp
Y2F0aW9uSWNvbldyYXBwZXIqPjo6SXRlcmF0b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5iZWdp
bigpOworICAgICAgICBkZWxldGUgbV9ub3RpZmljYXRpb25zLnRha2UoaXRlci5rZXkoKSk7Cisg
ICAgfQogfQogCi1Ob3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0aW9u
UHJlc2VudGVyQ2xpZW50UXQ6OmNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJikKK3ZvaWQgTm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnNlbmRFdmVudChOb3RpZmljYXRpb24qIG5vdGlm
aWNhdGlvbiwgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudE5hbWUpCiB7Ci0gICAgLy8gRklYTUUg
SW1wbGVtZW50IHBlcm1pc3Npb24gcG9saWN5Ci0gICAgcmV0dXJuIE5vdGlmaWNhdGlvblByZXNl
bnRlcjo6UGVybWlzc2lvbkFsbG93ZWQ7CisgICAgUmVmUHRyPEV2ZW50PiBldmVudCA9IEV2ZW50
OjpjcmVhdGUoZXZlbnROYW1lLCBmYWxzZSwgdHJ1ZSk7CisgICAgbm90aWZpY2F0aW9uLT5kaXNw
YXRjaEV2ZW50KGV2ZW50LnJlbGVhc2UoKSk7CiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoTk9USUZJ
Q0FUSU9OUykKSW5kZXg6IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9O
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oCShyZXZpc2lvbiA2MDI1MSkKKysrIFdlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yOSwyMCArMjksMzUgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2lm
bmRlZiBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdF9oCisjZGVmaW5lIE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0X2gKKwogI2luY2x1ZGUgIk5vdGlmaWNhdGlvbi5oIgogI2luY2x1
ZGUgIk5vdGlmaWNhdGlvblByZXNlbnRlci5oIgogCisjaW5jbHVkZSA8UU11bHRpSGFzaD4KICNp
bmNsdWRlIDxRU3lzdGVtVHJheUljb24+CiAKKwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQor
Y2xhc3MgUVdlYlBhZ2U7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIERvY3VtZW50Owog
Y2xhc3MgS1VSTDsKIAorc3RydWN0IE5vdGlmaWNhdGlvbkljb25XcmFwcGVyIHsKKyAgICBOb3Rp
ZmljYXRpb25JY29uV3JhcHBlcigpOworICAgIH5Ob3RpZmljYXRpb25JY29uV3JhcHBlcigpOwor
I2lmbmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgorICAgIFFTeXN0ZW1UcmF5SWNvbiogbV9ub3Rp
ZmljYXRpb25JY29uOworI2VuZGlmCit9OworCiBjbGFzcyBOb3RpZmljYXRpb25QcmVzZW50ZXJD
bGllbnRRdCA6IHB1YmxpYyBOb3RpZmljYXRpb25QcmVzZW50ZXIgewogcHVibGljOgotICAgIE5v
dGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0KCk7CisgICAgTm90aWZpY2F0aW9uUHJlc2VudGVy
Q2xpZW50UXQoUVdlYlBhZ2UqKTsKKyAgICB+Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQo
KSB7fQogCiAgICAgLyogV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVyIGludGVyZmFjZSAq
LwogICAgIHZpcnR1YWwgYm9vbCBzaG93KE5vdGlmaWNhdGlvbiopOwpAQCAtNTEsMTMgKzY2LDIy
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oU2VjdXJpdHlP
cmlnaW4qLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4pOwogICAgIHZpcnR1YWwgTm90aWZpY2F0
aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9uIGNoZWNrUGVybWlzc2lvbihjb25zdCBLVVJMJik7CiAK
KyAgICB2b2lkIGFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKGNvbnN0IFFTdHJpbmcmIG9yaWdp
bik7CisgICAgdm9pZCBjbGVhck5vdGlmaWNhdGlvbnNMaXN0KCk7CisKICAgICBzdGF0aWMgYm9v
bCBkdW1wTm90aWZpY2F0aW9uOwogCi1wcml2YXRlOiAKLSNpZm5kZWYgUVRfTk9fU1lTVEVNVFJB
WUlDT04KLSAgICBRU3lzdGVtVHJheUljb24gbV90cmF5OwotI2VuZGlmCisgICAgdm9pZCBzZXRS
ZWNlaXZlcihRT2JqZWN0KiByZWNlaXZlcikgeyBtX3JlY2VpdmVyID0gcmVjZWl2ZXI7IH0KKwor
cHJpdmF0ZToKKyAgICB2b2lkIHNlbmRFdmVudChOb3RpZmljYXRpb24qLCBjb25zdCBBdG9taWNT
dHJpbmcmIGV2ZW50TmFtZSk7CisgICAgUVdlYlBhZ2UqIG1fcGFnZTsKKyAgICBRTXVsdGlIYXNo
PFFTdHJpbmcsICBRTGlzdDxSZWZQdHI8Vm9pZENhbGxiYWNrPiA+ID4gbV9wZW5kaW5nUGVybWlz
c2lvblJlcXVlc3RzOworICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmljYXRpb25JY29u
V3JhcHBlcio+IG1fbm90aWZpY2F0aW9uczsKKyAgICBRT2JqZWN0KiBtX3JlY2VpdmVyOwogfTsK
IH0KIAogI2VuZGlmCisjZW5kaWYKKwpJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNjAyNTEpCisrKyBXZWJL
aXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0w
NS0yNiAgWWFlbCBBaGFyb24gIDx5YWVsLmFoYXJvbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBQYXNzIGFsbCB3ZWIgbm90
aWZpY2F0aW9uIGxheW91dCB0ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzkxNDYKKworICAgICAgICBNaW1pYyBDaHJvbWl1bSdzIHRlc3Rfc2hl
bGwgc2VjdXJpdHkgbW9kZWwgaW4gUXQncyBEUlQuCisgICAgICAgIEl0IG1ha2VzIGEgbGlzdCBv
ZiBvcmlnaW5zIHdoaWNoIHdlcmUgZ3JhbnRlZCBwZXJtaXNzaW9uIHRvIGRpc3BsYXkKKyAgICAg
ICAgbm90aWZpY2F0aW9ucywgYW5kIG9ubHkgdGhvc2Ugb3JpZ2lucyBjYW4gZGlzcGxheSBub3Rp
ZmljYXRpb25zLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjaGVja1Blcm1pc3Npb25DYWxsYmFjayk6CisgICAg
ICAgIChXZWJDb3JlOjpyZXF1ZXN0UGVybWlzc2lvbkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNv
cmU6OldlYlBhZ2U6OldlYlBhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6
OmNoZWNrUGVybWlzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6cmVx
dWVzdFBlcm1pc3Npb24pOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJU
cmVlUXQuaDoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxl
clF0LmNwcDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpyZXNldCk6CisgICAgICAg
IChMYXlvdXRUZXN0Q29udHJvbGxlcjo6Z3JhbnREZXNrdG9wTm90aWZpY2F0aW9uUGVybWlzc2lv
bik6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6Y2hlY2tEZXNrdG9wTm90aWZpY2F0
aW9uUGVybWlzc2lvbik6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENv
bnRyb2xsZXJRdC5oOgorCiAyMDEwLTA1LTI0ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VudCBUYW11cmEuCkluZGV4OiBXZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAkocmV2aXNp
b24gNjAyNTEpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJl
ZVF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTMwLDYgKzEzMCwxNSBAQCBwdWJsaWM6CiB9Owog
I2VuZGlmCiAKK3ZvaWQgY2hlY2tQZXJtaXNzaW9uQ2FsbGJhY2soUU9iamVjdCogcmVjZWl2ZXIs
IGNvbnN0IFFVcmwmIHVybCwgTm90aWZpY2F0aW9uUGVybWlzc2lvbiYgcGVybWlzc2lvbikKK3sK
KyAgICBxb2JqZWN0X2Nhc3Q8RHVtcFJlbmRlclRyZWUqPihyZWNlaXZlciktPmNoZWNrUGVybWlz
c2lvbih1cmwsIHBlcm1pc3Npb24pOworfQorCit2b2lkIHJlcXVlc3RQZXJtaXNzaW9uQ2FsbGJh
Y2soUU9iamVjdCogcmVjZWl2ZXIsIFFXZWJQYWdlKiBwYWdlLCBjb25zdCBRU3RyaW5nJiBvcmln
aW4pCit7CisgICAgcW9iamVjdF9jYXN0PER1bXBSZW5kZXJUcmVlKj4ocmVjZWl2ZXIpLT5yZXF1
ZXN0UGVybWlzc2lvbihwYWdlLCBvcmlnaW4pOworfQogCiBXZWJQYWdlOjpXZWJQYWdlKFFPYmpl
Y3QqIHBhcmVudCwgRHVtcFJlbmRlclRyZWUqIGRydCkKICAgICA6IFFXZWJQYWdlKHBhcmVudCkK
QEAgLTE1OCw2ICsxNjcsMTEgQEAgV2ViUGFnZTo6V2ViUGFnZShRT2JqZWN0KiBwYXJlbnQsIER1
bXBSZQogCiAgICAgc2V0TmV0d29ya0FjY2Vzc01hbmFnZXIobV9kcnQtPm5ldHdvcmtBY2Nlc3NN
YW5hZ2VyKCkpOwogICAgIHNldFBsdWdpbkZhY3RvcnkobmV3IFRlc3RQbHVnaW4odGhpcykpOwor
CisgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNldE5vdGlmaWNhdGlvbnNSZWNlaXZlcih0
aGlzLCBtX2RydCk7CisgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNldENoZWNrUGVybWlz
c2lvbkZ1bmN0aW9uKGNoZWNrUGVybWlzc2lvbkNhbGxiYWNrKTsKKyAgICBEdW1wUmVuZGVyVHJl
ZVN1cHBvcnRRdDo6c2V0UmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvbihyZXF1ZXN0UGVybWlzc2lv
bkNhbGxiYWNrKTsKKwogfQogCiBXZWJQYWdlOjp+V2ViUGFnZSgpCkBAIC05MDEsNiArOTE1LDE2
IEBAIHZvaWQgRHVtcFJlbmRlclRyZWU6OnN3aXRjaEZvY3VzKGJvb2wgZm8KICAgICBRQXBwbGlj
YXRpb246OnNlbmRFdmVudChtX21haW5WaWV3LCAmZXZlbnQpOwogfQogCit2b2lkIER1bXBSZW5k
ZXJUcmVlOjpjaGVja1Blcm1pc3Npb24oY29uc3QgUVVybCYgdXJsLCBOb3RpZmljYXRpb25QZXJt
aXNzaW9uJiBwZXJtaXNzaW9uKQoreworICAgIHBlcm1pc3Npb24gPSBtX2NvbnRyb2xsZXItPmNo
ZWNrRGVza3RvcE5vdGlmaWNhdGlvblBlcm1pc3Npb24odXJsLnNjaGVtZSgpICsgIjovLyIgKyB1
cmwuaG9zdCgpKSA/IE5vdGlmaWNhdGlvbkFsbG93ZWQgOiBOb3RpZmljYXRpb25EZW5pZWQ7Cit9
CisKK3ZvaWQgRHVtcFJlbmRlclRyZWU6OnJlcXVlc3RQZXJtaXNzaW9uKFFXZWJQYWdlKiBwYWdl
LCBjb25zdCBRU3RyaW5nJiBvcmlnaW4pCit7CisgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6
OmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKHBhZ2UsIG9yaWdpbik7Cit9CisKICNpZiBkZWZp
bmVkKFFfV1NfWDExKQogdm9pZCBEdW1wUmVuZGVyVHJlZTo6aW5pdGlhbGl6ZUZvbnRzKCkKIHsK
SW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJl
ZVF0LmgJKHJldmlzaW9uIDYwMjUxKQorKysgV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQv
RHVtcFJlbmRlclRyZWVRdC5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw3IEBACiAjaW5j
bHVkZSA8UVNzbEVycm9yPgogI2VuZGlmCiAKKyNpbmNsdWRlICIuLi8uLi8uLi9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaCIKICNpbmNsdWRlIDxxd2Vi
ZnJhbWUuaD4KICNpbmNsdWRlIDxxd2ViaW5zcGVjdG9yLmg+CiAjaW5jbHVkZSA8cXdlYnBhZ2Uu
aD4KQEAgLTExMyw2ICsxMTQsOCBAQCBwdWJsaWMgUV9TTE9UUzoKICAgICB2b2lkIGR1bXBEYXRh
YmFzZVF1b3RhKFFXZWJGcmFtZSogZnJhbWUsIGNvbnN0IFFTdHJpbmcmIGRiTmFtZSk7CiAgICAg
dm9pZCBzdGF0dXNCYXJNZXNzYWdlKGNvbnN0IFFTdHJpbmcmIG1lc3NhZ2UpOwogICAgIHZvaWQg
d2luZG93Q2xvc2VSZXF1ZXN0ZWQoKTsKKyAgICB2b2lkIGNoZWNrUGVybWlzc2lvbihjb25zdCBR
VXJsJiwgTm90aWZpY2F0aW9uUGVybWlzc2lvbiYpOworICAgIHZvaWQgcmVxdWVzdFBlcm1pc3Np
b24oUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcmKTsKIAogUV9TSUdOQUxTOgogICAgIHZv
aWQgcXVpdCgpOwpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVz
dENvbnRyb2xsZXJRdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAJKHJldmlzaW9uIDYwMjUxKQorKysgV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTY0LDYgKzY0LDggQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6
cmVzZXQoKQogICAgIG1faGFuZGxlRXJyb3JQYWdlcyA9IGZhbHNlOwogICAgIG1fd2ViSGlzdG9y
eSA9IDA7CiAgICAgbV9nbG9iYWxGbGFnID0gZmFsc2U7CisgICAgbV9kZXNrdG9wTm90aWZpY2F0
aW9uQWxsb3dlZE9yaWdpbnMuY2xlYXIoKTsKKwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0
OjpkdW1wRWRpdGluZ0NhbGxiYWNrcyhmYWxzZSk7CiAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0
UXQ6OmR1bXBGcmFtZUxvYWRlcihmYWxzZSk7CiAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6
OmR1bXBSZXNvdXJjZUxvYWRDYWxsYmFja3MoZmFsc2UpOwpAQCAtNzEsNiArNzMsNyBAQCB2b2lk
IExheW91dFRlc3RDb250cm9sbGVyOjpyZXNldCgpCiAgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0
UXQ6OnNldFdpbGxTZW5kUmVxdWVzdFJldHVybnNOdWxsKGZhbHNlKTsKICAgICBEdW1wUmVuZGVy
VHJlZVN1cHBvcnRRdDo6c2V0V2lsbFNlbmRSZXF1ZXN0Q2xlYXJIZWFkZXJzKFFTdHJpbmdMaXN0
KCkpOwogICAgIHNldEljb25EYXRhYmFzZUVuYWJsZWQoZmFsc2UpOworCiAgICAgZW1pdCBoaWRl
UGFnZSgpOwogfQogCkBAIC0xODEsMTMgKzE4NCwxMiBAQCBpbnQgTGF5b3V0VGVzdENvbnRyb2xs
ZXI6OndpbmRvd0NvdW50KCkKIAogdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6Z3JhbnREZXNr
dG9wTm90aWZpY2F0aW9uUGVybWlzc2lvbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCiB7Ci0gICAg
Ly8gRklYTUU6IEltcGxlbWVudCBmb3Igbm90aWZpY2F0aW9uIHNlY3VyaXR5CisgICAgbV9kZXNr
dG9wTm90aWZpY2F0aW9uQWxsb3dlZE9yaWdpbnMuYXBwZW5kKG9yaWdpbik7CiB9CiAKIGJvb2wg
TGF5b3V0VGVzdENvbnRyb2xsZXI6OmNoZWNrRGVza3RvcE5vdGlmaWNhdGlvblBlcm1pc3Npb24o
Y29uc3QgUVN0cmluZyYgb3JpZ2luKQogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgZm9yIG5v
dGlmaWNhdGlvbiBzZWN1cml0eQotICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBtX2Rlc2t0
b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2lucy5jb250YWlucyhvcmlnaW4pOwogfQogCiB2b2lk
IExheW91dFRlc3RDb250cm9sbGVyOjpkaXNwbGF5KCkKSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBS
ZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgJKHJldmlz
aW9uIDYwMjUxKQorKysgV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENv
bnRyb2xsZXJRdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTgsNiArMjE4LDcgQEAgcHJpdmF0ZToK
ICAgICBRV2ViRnJhbWUqIG1fdG9wTG9hZGluZ0ZyYW1lOwogICAgIFdlYkNvcmU6OkR1bXBSZW5k
ZXJUcmVlKiBtX2RydDsKICAgICBRV2ViSGlzdG9yeSogbV93ZWJIaXN0b3J5OworICAgIFFTdHJp
bmdMaXN0IG1fZGVza3RvcE5vdGlmaWNhdGlvbkFsbG93ZWRPcmlnaW5zOwogfTsKIAogI2VuZGlm
IC8vIExheW91dFRlc3RDb250cm9sbGVyUXRfaApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNjAyNTEpCisr
KyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAor
MjAxMC0wNS0yNiAgWWFlbCBBaGFyb24gIDx5YWVsLmFoYXJvbkBub2tpYS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBQYXNzIGFsbCB3
ZWIgbm90aWZpY2F0aW9uIGxheW91dCB0ZXN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkxNDYKKworICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBw
ZWQ6CisKIDIwMTAtMDUtMjYgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAK
ICAgICAgICAgTWFrZSB0aGUgdGVzdCBwYXNzIG9uIGNocm9taXVtIGJ5IHdlYWtlbmluZyBleHBl
Y3RhdGlvbnMuIEl0J3MgcHJvYmFibHkgYSBjaHJvbWl1bSBidWcsIGJ1dApJbmRleDogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA2MDI1MSkKKysrIExheW91dFRlc3RzL3BsYXRmb3Jt
L3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTQ2OTUsMTQgKzQ2OTUsNiBAQCBsb2FkZXIv
Z28tYmFjay10by1kaWZmZXJlbnQtd2luZG93LXNpemUuCiAjIFRoaXMgcG9ydCBkb2Vzbid0IHN1
cHBvcnQgR2VvbG9jYXRpb24uCiBmYXN0L2RvbS9HZW9sb2NhdGlvbgogCi0jIFRoaXMgcG9ydCBk
b2Vzbid0IHN1cHBvcnQgTm90aWZpY2F0aW9uIHBlcm1pc3Npb25zCi1mYXN0L25vdGlmaWNhdGlv
bnMvbm90aWZpY2F0aW9ucy1jaGVjay1wZXJtaXNzaW9uLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9u
cy9ub3RpZmljYXRpb25zLWRpc3BsYXktY2xvc2UtZXZlbnRzLmh0bWwKLWZhc3Qvbm90aWZpY2F0
aW9ucy9ub3RpZmljYXRpb25zLXJlcXVlc3QtcGVybWlzc2lvbi5odG1sCi1mYXN0L25vdGlmaWNh
dGlvbnMvbm90aWZpY2F0aW9ucy13aXRob3V0LXBlcm1pc3Npb24uaHRtbAotZmFzdC9ub3RpZmlj
YXRpb25zL25vdGlmaWNhdGlvbnMtcnRsLmh0bWwKLWZhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmlj
YXRpb25zLXJlcGxhY2UuaHRtbAotCiAjIE1pc3NpbmcgRFJUIGFiaWxpdHkgdG8gc2V0IGFjY2Vw
dCBjb29raWUgcG9saWN5CiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Nyb3NzLW9yaWdpbi1j
b29raWUtc3RvcmFnZS5odG1sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57228</attachid>
            <date>2010-05-27 05:49:52 -0700</date>
            <delta_ts>2010-05-27 06:12:44 -0700</delta_ts>
            <desc>Update change log comment, </desc>
            <filename>ChangeLog</filename>
            <type>text/plain</type>
            <size>209530</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">MjAxMC0wNS0yNiAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgW0dUS10gQWRkIHN1cHBvcnQgZm9yIERP
TSBldmVudHMgaW4gdGhlIEdPYmplY3QgRE9NIGJpbmRpbmdzCiAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODQ0CgogICAgICAgIEFkZCBuZXcgdGVzdCB0
byB0aGUgYnVpbGQuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDEwLTA1LTIyICBMZWFu
ZHJvIFBlcmVpcmEgIDxsZWFuZHJvQHByb2Z1c2lvbi5tb2JpPgoKICAgICAgICBSZXZpZXdlZCBi
eSBFcmljIFNlaWRlbC4KCiAgICAgICAgW0VGTF0gQnVpbGQgZml4IChhbHdheXMgY29tcGlsZSBs
aWJyYXJpZXMgd2l0aCAtZlBJQyB3aGVuIGNvbXBpbGVyCiAgICAgICAgaXMgZ2NjOyBhbHdheXMg
ZGVmaW5lIFdURl9VU0VfUFRIUkVBRFMpLgogICAgICAgIGh0dHA6Ly93ZWJraXQub3JnL2IvMzky
MzUKCiAgICAgICAgKiBjbWFrZS9PcHRpb25zQ29tbW9uLmNtYWtlOgogICAgICAgICogY21ha2Uv
T3B0aW9uc0VmbC5jbWFrZToKICAgICAgICAqIGNtYWtlL1dlYktpdEhlbHBlcnMuY21ha2U6Cgoy
MDEwLTA1LTE5ICBEYW4gV2luc2hpcCAgPGRhbndAZ25vbWUub3JnPgoKICAgICAgICBSZXZpZXdl
ZCBieSBYYW4gTG9wZXouCgogICAgICAgIFtHVEtdIEluc3RhbGwgaW50cm9zcGVjdGlvbiBmaWxl
cyBpbiBvdXIgcHJlZml4LCBub3QKICAgICAgICBnb2JqZWN0LWludHJvc3BlY3Rpb24ncyBwcmVm
aXgKCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIw
MTAtMDUtMTUgIExlYW5kcm8gUGVyZWlyYSAgPGxlYW5kcm9AcHJvZnVzaW9uLm1vYmk+CgogICAg
ICAgIFJldmlld2VkIGJ5IEFkYW0gVHJlYXQuCgogICAgICAgIFtFRkxdIEFkZCBidWlsZCBzeXN0
ZW0gZm9yIHRoZSBFRkwgcG9ydC4KICAgICAgICBodHRwOi8vd2Via2l0Lm9yZy9iLzM3OTQ1Cgog
ICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZGVkLgogICAgICAgICogY21ha2UvRmluZENGTGl0
ZS5jbWFrZTogQWRkZWQuCiAgICAgICAgKiBjbWFrZS9GaW5kQ2Fpcm8uY21ha2U6IEFkZGVkLgog
ICAgICAgICogY21ha2UvRmluZEVGTC5jbWFrZTogQWRkZWQuCiAgICAgICAgKiBjbWFrZS9GaW5k
RnJlZXR5cGUuY21ha2U6IEFkZGVkLgogICAgICAgICogY21ha2UvRmluZEdESy1QaXhCdWYuY21h
a2U6IEFkZGVkLgogICAgICAgICogY21ha2UvRmluZEdESy5jbWFrZTogQWRkZWQuCiAgICAgICAg
KiBjbWFrZS9GaW5kR0lPLmNtYWtlOiBBZGRlZC4KICAgICAgICAqIGNtYWtlL0ZpbmRHbGliLmNt
YWtlOiBBZGRlZC4KICAgICAgICAqIGNtYWtlL0ZpbmRJQ1UuY21ha2U6IEFkZGVkLgogICAgICAg
ICogY21ha2UvRmluZExpYlNvdXAyLmNtYWtlOiBBZGRlZC4KICAgICAgICAqIGNtYWtlL0ZpbmRM
aWJYbHN0LmNtYWtlOiBBZGRlZC4KICAgICAgICAqIGNtYWtlL0ZpbmRQYW5nby5jbWFrZTogQWRk
ZWQuCiAgICAgICAgKiBjbWFrZS9GaW5kU3FsaXRlLmNtYWtlOiBBZGRlZC4KICAgICAgICAqIGNt
YWtlL0xpYkZpbmRNYWNyb3MuY21ha2U6IEFkZGVkLgogICAgICAgICogY21ha2UvT3B0aW9uc0Nv
bW1vbi5jbWFrZTogQWRkZWQuCiAgICAgICAgKiBjbWFrZS9PcHRpb25zRWZsLmNtYWtlOiBBZGRl
ZC4KICAgICAgICAqIGNtYWtlL1dlYktpdEVmbC5jbWFrZTogQWRkZWQuCiAgICAgICAgKiBjbWFr
ZS9XZWJLaXRGUy5jbWFrZTogQWRkZWQuCiAgICAgICAgKiBjbWFrZS9XZWJLaXRGZWF0dXJlcy5j
bWFrZTogQWRkZWQuCiAgICAgICAgKiBjbWFrZS9XZWJLaXRHZW5lcmF0b3JzLmNtYWtlOiBBZGRl
ZC4KICAgICAgICAqIGNtYWtlL1dlYktpdEhlbHBlcnMuY21ha2U6IEFkZGVkLgogICAgICAgICog
Y21ha2UvV2ViS2l0TWFjcm9zLmNtYWtlOiBBZGRlZC4KICAgICAgICAqIGNtYWtlY29uZmlnLmgu
Y21ha2U6IEFkZGVkLgoKMjAxMC0wNS0xNCAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFu
bkBub2tpYS5jb20+CgogICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEFudHRpIEtvaXZpc3RvLgoK
ICAgICAgICBbUXRdIFJlbmFtZSBRdExhdW5jaGVyIHRvIFF0VGVzdEJyb3dzZXIKICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzc2NjUKCiAgICAgICAgKiBX
ZWJLaXQucHJvOgoKMjAxMC0wNS0xMiAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KCiAg
ICAgICAgW1F0XSBMaW5rIGVycm9yIGluIGRlYnVnIG1vZGUgd2l0aG91dCBkZWJ1Z19hbmRfcmVs
ZWFzZSBjb25maWcKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzkwMDYKCiAgICAgICAgKiBXZWJLaXQucHJpOiBVbm5lY2Vzc2FyeSBidWlsZF9wYXNzIGd1
YXJkIHJlbW92ZWQuCgoyMDEwLTA1LTEyICBMYXN6bG8gR29tYm9zICA8bGFzemxvLjEuZ29tYm9z
QG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5z
ZW4uCgogICAgICAgIFtRdF0gRGV0ZWN0IGRlYnVnIG1vZGUgY29uc2lzdGVudGx5CiAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODYzCgogICAgICAgICog
V2ViS2l0LnByaToKCjIwMTAtMDUtMDggIExhc3psbyBHb21ib3MgIDxsYXN6bG8uMS5nb21ib3NA
bm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNl
bi4KCiAgICAgICAgW1F0XSBCdWlsZCB0aGUgSW1hZ2VEaWZmIHRvb2wgZm9yIGFsbCBwbGF0Zm9y
bXMgaW5jbHVkaW5nIFdpbmRvd3MgYW5kIFN5bWJpYW4KICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzg3MDYKCiAgICAgICAgKiBXZWJLaXQucHJvOgoKMjAx
MC0wNS0wNyAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CgogICAg
ICAgIEFkZCBhIGZldyBtb3JlIGZpbGVzIHdpdGggV2luZG93cyBsaW5lZmVlZHMgdG8gdGhlIC5n
aXRhdHRyaWJ1dGVzIGZpbGUuCgogICAgICAgICogLmdpdGF0dHJpYnV0ZXM6CgoyMDEwLTA1LTA1
ICBBbGVqYW5kcm8gRy4gQ2FzdHJvICA8YWxleEBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdl
ZCBieSBYYW4gTG9wZXouCgogICAgICAgIEZpeGVkIHRoZSBnb2JqZWN0IGludHJvc3BlY3Rpb24g
Y29tcGlsYXRpb24gd2l0aCB0aGUgbmV3IERPTQogICAgICAgIGJpbmRpbmdzLCB3ZSBuZWVkZWQg
dG8gYWRkIERPTSBvYmplY3RzLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAxMC0wNS0w
NCAgTGFzemxvIEdvbWJvcyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+CgogICAgICAgIFVu
cmV2aWV3ZWQsIGJ1aWxkIGZpeCBmb3IgU3ltYmlhbi4KCiAgICAgICAgW1N5bWJpYW5dIFN5bWJp
YW4gYnVpbGRzIGRvZXMgbm90IHN1cHBvcnQgc2hhZG93IGJ1aWxkcwoKICAgICAgICBSZXZpc2lv
biByNTQ3MTUgYnJva2UgdGhlIFN5bWJpYW4gYnVpbGQuIEZvciBTeW1iaWFuCiAgICAgICAgdGhl
IGluY2x1ZGUgZGlyZWN0b3J5IGlzIGdlbmVyYXRlZCBpbiB0aGUgcm9vdCBvZiB0aGUgc291cmNl
IHRyZWUuCiAgICAgICAgVGhpcyBwYXRjaCBzZXRzIHRoZSBJTkNMVURFUEFUSCBhY2NvcmRpbmds
eSBmb3IgU3ltYmlhbi4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAxMC0wNS0wMyAgQWRhbSBC
YXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEds
YXprb3YuCgogICAgICAgIEFkZCBzb21lIG1vcmUgQ2hyb21pdW0tc3BlY2lmaWMgZmlsZXMgdG8g
Z2l0aWdub3JlCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM4NDY5CgogICAgICAgIFRoZXNlIGZpbGVzIGFyZSBnZW5lcmF0ZWQgYXMgcGFydCBvZiB0aGUg
dXBkYXRlLXdlYmtpdCAtLWNocm9taXVtCiAgICAgICAgc2NyaXB0LgoKICAgICAgICAqIC5naXRp
Z25vcmU6CgoyMDEwLTA1LTAyICBHZW9mZiBMZXZhbmQgIDxnZW9mZi5sZXZhbmRAYW0uc29ueS5j
b20+CgogICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgoKICAgICAgICBbR1RLXSBGaXgg
b3V0IG9mIHNvdXJjZSBidWlsZCBmYWlsdXJlCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM4MDUxCgogICAgICAgIEFkZCBhIHByZXByb2Nlc3NvciBpbmNs
dWRlIHBhdGggZm9yIGdlbmVyYXRlZCBHVEsgaGVhZGVyIGZpbGVzLgogICAgICAgIEZpeGVzIGJ1
aWxkIGVycm9ycyBsaWtlIHRoZXNlIHdoZW4gYnVpbGRpbmcgR1RLIG91dCBvZiBzb3VyY2U6Cgog
ICAgICAgICAgd2Via2l0Lmg6IGVycm9yOiB3ZWJraXQvd2Via2l0dmVyc2lvbi5oOiBObyBzdWNo
IGZpbGUgb3IgZGlyZWN0b3J5CgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDEwLTA1LTAy
ICBLYXJ0aWtheWEgR3VwdGEgIDxrYWd1cHRhQHJpbS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5
IEdlb3JnZSBTdGFpa29zLgoKICAgICAgICBXaGVuIHJ1bm5pbmcgdGhlIElETCBmaWxlIHRocm91
Z2ggdGhlIHByZXByb2Nlc3Nvciwgd2FpdCBmb3IgdGhlIHByZXByb2Nlc3NvciBzdWJjb21tYW5k
IHRvIGZ1bGx5IHRlcm1pbmF0ZSBiZWZvcmUgY29udGludWluZy4gV2l0aG91dCB0aGlzLCBpZiBt
dWx0aXBsZSBJREwgZmlsZXMgYXJlIHBhcnNlZCBpbiBhIHRpZ2h0IGxvb3AsIHRoZSBjb2RlIGRp
ZXMgYWZ0ZXIgNjQgSURMIGZpbGVzIGJlY2F1c2UgaXQgZXhoYXVzdHMgdGhlIGF2YWlsYWJsZSBz
eXN0ZW0gcmVzb3VyY2VzLgoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9Mzc4ODgKCiAgICAgICAgTm8gbmV3IHRlc3RzLiBOb25lIG5lZWRlZC4KCiAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL0lETFBhcnNlci5wbToKCjIwMTAtMDQtMjkgIFhhbiBMb3Bl
eiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9u
aGEuCgogICAgICAgIFtHVEtdIEdPYmplY3QgRE9NIGJpbmRpbmdzCiAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzNTkwCgogICAgICAgIEFkZCBXZWJLaXRE
T01Eb2N1bWVudCB0ZXN0cyB0byB0aGUgYnVpbGQuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06
CgoyMDEwLTA0LTI4ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmll
d2VkIGJ5IE1hcmsgUm93ZS4KCiAgICAgICAgQWRkIFdlYktpdDIgdG8gdGhlIGxpc3RzIG9mIG1v
ZHVsZXMgdG8gYnVpbGQuCgogICAgICAgICogTWFrZWZpbGU6CgoyMDEwLTA0LTIxICBYYW4gTG9w
ZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4K
CiAgICAgICAgW0dUS10gR09iamVjdCBET00gYmluZGluZ3MKICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzM1OTAKCiAgICAgICAgQWRkIGJ1aWxkIGJpdHMg
Zm9yIHRoZSBHT2JqZWN0IERPTSBiaW5kaW5ncy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToK
CjIwMTAtMDQtMjAgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBCdWls
ZCBmaXg/CgogICAgICAgICogYXV0b3Rvb2xzL3dlYmtpdC5tNDoKCjIwMTAtMDQtMTkgIERpZWdv
IEVzY2FsYW50ZSBVcnJlbG8gIDxkZXNjYWxhbnRlQGlnYWxpYS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IFhhbiBMb3Blei4KCiAgICAgICAgW0d0a10gRXZhbHVhdGUgYW5kIGNyZWF0ZSB0ZXN0
cyBmb3IgYWxsIHRoZSBBdGtSb2xlJ3MgaW1wbGVtZW50ZWQgYnkKICAgICAgICBXZWJLaXRHdGsK
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzQ0NDkKCiAg
ICAgICAgQWRkIGFuZCBlbmFibGUgdGhlIGJ1aWxkIG9mIHRlc3RhdGtyb2xlcyB0byB0ZXN0IEFU
SyBub24gZm9ybSByb2xlcy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMTAtMDQtMTgg
IE1pY2hhZWwgRm9ybmV5ICA8bWljaGFlbEBtZm9ybmV5Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQg
YnkgTGFzemxvIEdvbWJvcy4KCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTM3NzYyCgogICAgICAgIEZpeGVzIHRoZSBzYW5kYm94IG9wdGlvbiBpbiBjb25m
aWd1cmUuCgogICAgICAgICogY29uZmlndXJlLmFjOiBGaXggY3V0IGFuZCBwYXN0ZSBlcnJvciBp
biB0aGUgc2FuZGJveCBvcHRpb24gY2F1c2luZwogICAgICAgIC0te2VuYWJsZSxkaXNhYmxlfS1z
YW5kYm94IHRvIGJlIGluZWZmZWN0aXZlLCBhbmQgaXQgdG8gYmUgY29udHJvbGxlZAogICAgICAg
IGJ5IHRoZSBydWJ5IGZsYWcuCgoyMDEwLTA0LTA5ICBTaW1vbiBIYXVzbWFubiAgPHNpbW9uLmhh
dXNtYW5uQG5va2lhLmNvbT4KCiAgICAgICAgVW5yZXZpZXdlZCBjcmFzaCBmaXguCgogICAgICAg
IFJldmVydCBwYXJ0IG9mIDU3MzIwIHRoYXQgd291bGQgcmVtb3ZlIE5ERUJVRyBpbiByZWxlYXNl
IGJ1aWxkcyBmb3IKICAgICAgICBEUlQsIGV0Yy4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAx
MC0wNC0wOSAgSm9jZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4udHVyY290dGVAbm9raWEuY29tPgoK
ICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KCiAgICAgICAgW1F0XSBGaXggY3Jh
c2hlcyB3aXRoIHBhY2thZ2UgYnVpbGRzIGluIHJlbGVhc2UKCiAgICAgICAgKiBXZWJLaXQucHJp
OiBEb24ndCByYW5kb21seSBhZGQgTkRFQlVHIHRvIHRoZSBkZWZpbmVzLgoKMjAxMC0wNC0wNyAg
TGFzemxvIEdvbWJvcyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgoKICAgICAgICBbUXRdIEZpeCB0cnVu
ayAobm9uLXN0YW5kYWxvbmUpIGJ1aWxkcyBmb3IgU3ltYmlhbgogICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzEzNgoKICAgICAgICBUZXN0IGZvciBzb3Vy
Y2UgZmlsZXMgYmVmb3JlIGJ1aWxkaW5nIGluc3RlYWQgb2YgcmVseWluZyBvbgogICAgICAgIHN0
YW5kYWxvbmVfcGFja2FnZSBjb25maWcuCgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMTAtMDQt
MDEgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgoKICAgICAgICBSZXZpZXdl
ZCBieSBEbWl0cnkgVGl0b3YuCgogICAgICAgIEFkZCBGaWxlVGhyZWFkIGZvciBhc3luYyBmaWxl
IG9wZXJhdGlvbiBzdXBwb3J0IGluIEZpbGVSZWFkZXIgYW5kIEZpbGVXcml0ZXIKICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY4OTYKCiAgICAgICAgQWRk
IEVBTkJFTF9GSUxFX1JFQURFUiBhbmQgRU5BQkxFX0ZJTEVfV1JJVEVSIGZsYWdzLgoKICAgICAg
ICAqIGNvbmZpZ3VyZS5hYzoKCjIwMTAtMDQtMDEgIE9qYW4gVmFmYWkgIDxvamFuQGNocm9taXVt
Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KCiAgICAgICAgYXV0b2luc3Rh
bGxlZCBzaG91bGQgYmUgZ2l0IGlnbm9yZWQKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MzY5NzAKCiAgICAgICAgKiAuZ2l0aWdub3JlOgoKMjAxMC0wNC0w
MSAgTGFzemxvIEdvbWJvcyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+CgogICAgICAgIFJl
dmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgoKICAgICAgICBbUXRdQWRkIC1X
ZXh0cmEgd2FybmluZyBsZXZlbCB0byB0aGUgUXRXZWJLaXQgYnVpbGQKICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY5NzEKCiAgICAgICAgKiBXZWJLaXQu
cHJpOgoKMjAxMC0wNC0wMSAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3Jvbmhh
QGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyLgoK
ICAgICAgICBbR1RLXSB3ZWJraXRfZ2V0X2RlZmF1bHRfc2Vzc2lvbigpIHNob3VsZCBtYWtlIHN1
cmUgd2Via2l0X2luaXQoKSBpcyBjYWxsZWQKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MzY3NTQKCiAgICAgICAgTmV3IEFQSSB0ZXN0LgoKICAgICAgICAq
IEdOVW1ha2VmaWxlLmFtOgoKMjAxMC0wMy0yNiAgSm9jZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4u
dHVyY290dGVAbm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4K
CiAgICAgICAgW1F0XSBCdWlsZCBKYXZhU2NyaXB0Q29yZSBhcyBhIHN0YXRpYyBsaWJyYXJ5Lgog
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjU5MAoKICAg
ICAgICBUaGlzIHBhdGNoIHRha2VzIHdoYXQgd2FzIGxlZnQgb2YgdGhlIHVudXNlZCBKYXZhU2Ny
aXB0Q29yZS5wcm8KICAgICAgICBhbmQgbW92ZWQgdGhlIGNvbXBpbGF0aW9uIGxvZ2ljIGZyb20g
SmF2YVNjcmlwdENvcmUucHJpIHRvCiAgICAgICAgSmF2YVNjcmlwdENvcmUucHJvLgoKICAgICAg
ICAqIFdlYktpdC5wcm86CgoyMDEwLTAzLTE2ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNv
bT4KCiAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBV
cGRhdGUgbGlicmFyeSB2ZXJzaW9uIGZvciAxLjEuOTAgcmVsZWFzZS4KCiAgICAgICAgKiBjb25m
aWd1cmUuYWM6CgoyMDEwLTAzLTE2ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAg
ICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBCdW1wIHZlcnNpb24g
Zm9yIDEuMS45MCByZWxlYXNlLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMTAtMDMtMTYg
IFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBHdXN0
YXZvIE5vcm9uaGEuCgogICAgICAgIEFkZCBzdXBwb3J0IGZvciBGYXN0IE1vYmlsZSBTY3JvbGxp
bmcgaW4gdGhlIGJ1aWxkIHN5c3RlbS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDEwLTAz
LTE2ICBTaW1vbiBIYXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQG5va2lhLmNvbT4KCiAgICAgICAg
QWRkIFdlYktpdFRvb2xzL1Rlc3RSZXN1bHRTZXJ2ZXIvaW5kZXgueWFtbCB0byBnaXRhdHRyaWJ1
dGVzIHRvIGlnbm9yZSBmb3IgY3JsZiBjb252ZXJzaW9uLgoKICAgICAgICAqIC5naXRhdHRyaWJ1
dGVzOgoKMjAxMC0wMy0xMiAgU2NvdHQgQnllciAgPHNjb3R0YnllckBjaHJvbWl1bS5vcmc+Cgog
ICAgICAgIFJldmlld2VkIGJ5IERhdmlkIExldmluLgoKICAgICAgICBQb3B1cCBmb250IHNpemUg
bmVlZHMgdG8gYmUgZXhwb3NlZCB0byBjbGllbnRzLgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTk5MAoKICAgICAgICBBZGQgZnVuY3Rpb24gdG8gZXhw
b3NlIHRoZSBwb3B1cCBtZW51IGZvbnQgc2l6ZSwgYWRkIGEgZmllbGQgdG8KICAgICAgICBXZWJQ
b3B1cE1lbnVJbmZvIHRoYXQgcmVjZWl2ZXMgdGhhdCBpbmZvcm1hdGlvbiB0byBjb252ZXkgdGhh
dCB0bwogICAgICAgIHRoZSB3ZWIgdmlldyBjbGllbnQncyBjcmVhdGVQb3B1cE1lbnUoKSBjYWxs
LgoKICAgICAgICAqIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51Q2hyb21pdW0u
Y3BwOgogICAgICAgICogV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1
bS5oOgogICAgICAgICogV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQb3B1cE1lbnVJbmZvLmg6
CiAgICAgICAgKiBXZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9tZUNsaWVudEltcGwuY3BwOgoKMjAx
MC0wMy0xMSAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CgogICAgICAgIFRlYWNoIGdp
dCBhYm91dCBPYmpDIGZpbGVzCgogICAgICAgIEZpeGVzIDxodHRwOi8vd2Via2l0Lm9yZy9iLzM2
MDE1Pi4KCiAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhhdGNoZXIuCgogICAgICAgICogLmdpdGF0
dHJpYnV0ZXM6IFNldCB0aGUgZGlmZiBhdHRyaWJ1dGUgZm9yIC5tIGFuZCAubW0gZmlsZXMsIGFu
ZCAuaAogICAgICAgIGZpbGVzIGluIE1hYy1zcGVjaWZpYyBkaXJlY3Rvcmllcy4gVGhpcyBjYW4g
YmUgdXNlZCB0byBnZW5lcmF0ZQogICAgICAgIG1vcmUtcmVhZGFibGUgZGlmZnMgb2YgT2JqQyBm
aWxlcy4KCjIwMTAtMDMtMDkgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGd1c3Rhdm8ubm9yb25o
YUBjb2xsYWJvcmEuY28udWs+CgogICAgICAgIFVucmV2aWV3ZWQuIFZlcnNpb25pbmcgZm9yIDEu
MS4yMy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDEwLTAzLTA5ICBHdXN0YXZvIE5vcm9u
aGEgU2lsdmEgIDxndXN0YXZvLm5vcm9uaGFAY29sbGFib3JhLmNvLnVrPgoKICAgICAgICBVbnJl
dmlld2VkIGRpc3RjaGVjayBmaXguCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDEwLTAz
LTA4ICBKaWFuIExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
RG1pdHJ5IFRpdG92LgoKICAgICAgICBCbG9iLnNsaWNlIHN1cHBvcnQuCiAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyOTkzCgogICAgICAgIEFkZCBFTkFC
TEVfQkxPQl9TTElDRSBmZWF0dXJlIGRlZmluZS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6Cgoy
MDEwLTAzLTA0ICBGcmlkcmljaCBTdHJiYSAgPGZyaWRyaWNoLnN0cmJhQGJsdWV3aW4uY2g+Cgog
ICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1NzI2CiAgICAgICAgUmVtb3ZlIG9ycGhhbmVk
ICNpZmRlZiBXVEZfVVNFX0dMSUJfSUNVX1VOSUNPREVfSFlCUklECgogICAgICAgIFJlbW92aW5n
IG9ycGhhbmVkICNpZiBVU0UuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDEwLTAzLTA0
ICBKb2NlbHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CgogICAgICAg
IFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCgogICAgICAgIFtRdF0gTWFrZSB0aGUgT1VU
UFVUX0RJUiB2YXJpYWJsZSBpbiBxbWFrZSBwcm9qZWN0cyBpbmRlcGVuZGVudCBvZiBidWlsZC13
ZWJraXQncyBsb2dpYy4KCiAgICAgICAgVGhpcyBhbHNvIGFsbG93cyBzaGFkb3cgYnVpbGRzIHJl
bHlpbmcgb25seSBvbiBxbWFrZSB0byB3b3JrIHByb3Blcmx5LgoKICAgICAgICAqIFdlYktpdC5w
cmk6CgoyMDEwLTAzLTAzICBGcmlkcmljaCBTdHJiYSAgPGZyaWRyaWNoLnN0cmJhQGJsdWV3aW4u
Y2g+CgogICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3Blei4KCiAgICAgICAgTWlzY2VsbGFuZW91
cyBsaXR0bGUgZml4ZXMgZm9yIHRoZSB3aW5kb3dzIGJ1aWxkIG9mIHdlYmtpdC1ndGsKICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU2NDAKCiAgICAgICAg
KiBHTlVtYWtlZmlsZS5hbTogT24gV2luZG93cyB3aXRoIEdDQywgcHJlc2VuY2Ugb2YKICAgICAg
ICBfX2RlY2xzcGVjKGRsbGV4cG9ydCkgb24gc29tZSBzeW1ib2xzIGRpc2FibGVzIHRoZSBhdXRv
ZXhwb3J0L2F1dG9pbXBvcnQKICAgICAgICBmZWF0dXJlIGZvciBhbGwgb3RoZXJzLiBVc2luZyBy
ZWdleCBoZXJlIGFzc3VyZXMgdGhhdCBhbGwgc3ltYm9scyB0aGF0IAogICAgICAgIG5lZWQgdG8g
YmUgZXhwb3J0ZWQgaW4gdGhlIGRsbCBhcmUgYWN0dWFsbHkgZXhwb3J0ZWQuCgoyMDEwLTAzLTAy
ICBBcm5vIFJlbmV2aWVyICA8YXJub0ByZW5ldmllci5uZXQ+CgogICAgICAgIFJldmlld2VkIGJ5
IEd1c3Rhdm8gTm9yb25oYSBTaWx2YS4KCiAgICAgICAgW0d0a10gaW1wbGVtZW50cyBDaHJvbWVD
bGllbnQ6OnJlcXVlc3RHZW9sb2NhdGlvblBlcm1pc3Npb25Gb3JGcmFtZQogICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTIxMAoKICAgICAgICAqIEdOVW1h
a2VmaWxlLmFtOgoKMjAxMC0wMy0wMiAgRG1pdHJ5IFRpdG92ICA8ZGltaWNoQGNocm9taXVtLm9y
Zz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KCiAgICAgICAgSWdu
b3JlIGNvbXBpbGVkIEphdmEgdGVzdCBjYXNlcyBpbiAuZ2l0aWdub3JlLgogICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTU1OQoKICAgICAgICAqIC5naXRp
Z25vcmU6CgoyMDEwLTAyLTI2ICBBcm5vIFJlbmV2aWVyICA8YXJub0ByZW5ldmllci5uZXQ+Cgog
ICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYSBTaWx2YS4KCiAgICAgICAgW0d0a10g
aWdub3JlIFdlYktpdC9ndGsvZG9jcy9HTlVtYWtlZmlsZS5pbiBpbiAuZ2l0aWdub3JlCiAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1NDI0CgogICAgICAg
ICogLmdpdGlnbm9yZToKCjIwMTAtMDItMjQgIFNhbSBLZXJuZXIgIDxza2VybmVyQGNocm9taXVt
Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgoKICAgICAgICBFeHBvc2Ug
V2ViRnJhbWU6OnNldENhbkhhdmVTY3JvbGxiYXJzKCkuICBUaGlzIGFsbG93cyBhIHZpZXcKICAg
ICAgICB3aGljaCBpcyBiZWluZyByZXNpemVkIHRvIG5vdCBuZWVkIHNjcm9sbCBiYXJzIHRvIGVu
c3VyZSB0aGF0CiAgICAgICAgdGhleSBhcmUgbm90IGRyYXduLgoKICAgICAgICBFeGlzdGluZyBm
dW5jdGlvbiBzZXRBbGxvd3NTY3JvbGxpbmcoKSB3YXMgcmVuYW1lZAogICAgICAgIHNldENhbkhh
dmVTY3JvbGxiYXJzKCksIHRvIGJlIGNvbnNpc3RhbnQgd2l0aCBjaGFuZ2UgMzcxNTk6CiAgICAg
ICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMzcxNTkKCiAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MjU3CgogICAgICAgICogV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZS5oOgogICAgICAgICogV2ViS2l0L2Nocm9taXVtL3Ny
Yy9DaHJvbWVDbGllbnRJbXBsLmNwcDoKICAgICAgICAqIFdlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
RnJhbWVJbXBsLmNwcDoKICAgICAgICAqIFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBs
Lmg6CgoyMDEwLTAyLTE5ICBKZXN1cyBTYW5jaGV6LVBhbGVuY2lhICA8amVzdXMucGFsZW5jaWFA
b3BlbmJvc3NhLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3Rp
YW5zZW4uCgogICAgICAgIFtRdF0gUmVtb3ZlIFFHVkxhdW5jaGVyCgogICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTI5MgoKICAgICAgICAqIFdlYktpdC5w
cm86CgoyMDEwLTAyLTI0ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBFbmFibGUgU2hhcmVkV29ya2Vy
cyBieSBkZWZhdWx0LCBzaW5jZSB0aGF0J3MgYmVlbiB0aGUgZGVmYXVsdCBmb3IKICAgICAgICBh
IGxvbmcgdGltZSBpbiBvdXIgYnVpbGQtd2Via2l0IGNvbmZpZ3VyYXRpb24uCgogICAgICAgICog
Y29uZmlndXJlLmFjOgoKMjAxMC0wMi0yMyAgSmFtZXMgQ2hvaSAgPGpjaG9pNDJAcGhhLmpodS5l
ZHU+CgogICAgICAgIEFkZCBTb2xhcmlzIGRlZmluaXRpb25zCiAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MjE0CgogICAgICAgICogV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKICAgICAgICAqIFdlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
RnJhbWVJbXBsLmNwcAoKMjAxMC0wMi0yMyAgQXJubyBSZW5ldmllciAgPGFybm9AcmVuZXZpZXIu
bmV0PgoKICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEgU2lsdmEuCgogICAgICAg
IFtHdGtdOiB0ZXN0d2VidmlldyBkb2VzIG5vdCB3b3JrIHdoZW4gY2FsbGVkIHdpdGggYWJzb2x1
dGUgcGF0aAogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
NDk0MAoKICAgICAgICBXaGVuIHRlc3R3ZWJ2aWV3IGlzIGNhbGxlZCBhcyBhYnNvbHV0ZSBwYXRo
LCBjaGRpciB0byBleGVjdXRhYmxlCiAgICAgICAgZGlyZWN0b3J5IGJlZm9yZSBzZWFyY2hpbmcg
cmVzb3VyY2UgZmlsZXMuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDEwLTAyLTIzICBM
ZWFuZHJvIFBlcmVpcmEgIDxsZWFuZHJvQHByb2Z1c2lvbi5tb2JpPgoKICAgICAgICBSZXZpZXdl
ZCBieSBHdXN0YXZvIE5vcm9uaGEgU2lsdmEuCgogICAgICAgIENoYW5nZXMgcmVmZXJlbmNlcyBv
ZiBHT3duUHRyIHRvIHJlZmxlY3QgdGhlaXIgbmV3IHBsYWNlLgogICAgICAgIGh0dHA6Ly93ZWJr
aXQub3JnL2IvMzUwODQKCiAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5n
eXBpOgogICAgICAgICogSmF2YVNjcmlwdENvcmUvd3RmL1RocmVhZGluZy5oOgogICAgICAgICog
SmF2YVNjcmlwdENvcmUvd3RmL3VuaWNvZGUvZ2xpYi9Vbmljb2RlR0xpYi5oOgoKMjAxMC0wMi0y
MyAgTGVhbmRybyBQZXJlaXJhICA8bGVhbmRyb0Bwcm9mdXNpb24ubW9iaT4KCiAgICAgICAgUmV2
aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgoKICAgICAgICBGaXhlcyByZWZlcmVuY2Vz
IHRvIEdPd25QdHIgYW5kIEdSZWZQdHIgc28gdGhlIEdUSysgcG9ydCBidWlsZHMKICAgICAgICBh
Z2Fpbi4KICAgICAgICBodHRwOi8vd2Via2l0Lm9yZy9iLzM1MDg0CgogICAgICAgICogR05VbWFr
ZWZpbGUuYW06CgoyMDEwLTAyLTIzICBEaWVnbyBFc2NhbGFudGUgVXJyZWxvICA8ZGVzY2FsYW50
ZUBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KCiAgICAgICAg
W2d0a10gbWlzc2luZyBsaWJzb3VwLTIuNCBwYWNrYWdlIGluIGdpciBnZW5lcmF0aW9uCiAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MTk5CgogICAgICAg
IEluY2x1ZGUgbGlic291cC0yLjQgcGFja2FnZSBpbiBnb2JqZWN0IGludHJvc3BlY3Rpb24gLmdp
ciBnZW5lcmF0aW9uLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAxMC0wMi0yMiAgSHVh
aHVpIFd1ICA8aHd1QGdvb2dsZS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVs
LgoKICAgICAgICBBZGQgY29kZSB0aGF0IGVuYWJsZXMgU3F1aXJyZWxGaXNoIEV4dHJlbWUgKGEu
ay5hIEpTQ1gsIEpTQyBKSVQpCiAgICAgICAgaW4gQW5kcm9pZC4gSXQncyBkaXNhYmxlZCBieSBk
ZWZhdWx0LCBidXQgaXMgZW5hYmxlZCB3aGVuIHRoZSAKICAgICAgICBlbnZlcm9ubWVudCB2YXJp
YWJsZSBFTkFCTEVfSlNDX0pJVCBpcyBzZXQgdG8gdHJ1ZS4KICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzQ4NTUKCiAgICAgICAgKiBBbmRyb2lkLm1rOgoK
MjAxMC0wMi0yMiAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgQnVtcCBsaWJyYXJ5IHZlcnNpb25pbmcg
Zm9yIDEuMS4yMiByZWxlYXNlLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMTAtMDItMjIg
IExhc3psbyBHb21ib3MgIDxsYXN6bG8uMS5nb21ib3NAbm9raWEuY29tPgoKICAgICAgICBSZXZp
ZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KCiAgICAgICAgW1F0XSBBZGQgc3Vw
cG9ydCBmb3IgbGF5b3V0IHRlc3RzIG9uIFN5bWJpYW4KICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzE1ODkKCiAgICAgICAgKiBXZWJLaXQucHJvOgoKMjAx
MC0wMi0yMCAgTm9hbSBSb3NlbnRoYWwgIDxub2FtLnJvc2VudGhhbEBub2tpYS5jb20+CgogICAg
ICAgIFJldmlld2VkIGJ5IExhc3psbyBHb21ib3MuCgogICAgICAgIFtRdF0gRU5BQkxFXzNEX1JF
TkRFUklORyBzaG91bGQgYmUgb3B0aW9uYWwKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MzUxMDAKCiAgICAgICAgKiBXZWJLaXQucHJpOiBFTkFCTEVfM0Rf
UkVOREVSSU5HIG1vdmVkIHRvIGEgcHJvcGVyIGZlYXR1cmUgdGVzdAoKMjAxMC0wMi0xOSAgTWFj
aWVqIFN0YWNob3dpYWsgIDxtanNAYXBwbGUuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBEYXZp
ZCBMZXZpbi4KCiAgICAgICAgQWRkIGFuIEVOQUJMRSBmbGFnIGZvciBzYW5kYm94ZWQgaWZyYW1l
cyB0byBtYWtlIGl0IHBvc3NpYmxlIHRvIGRpc2FibGUgaXQgaW4gcmVsZWFzZXMKICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUxNDcKCiAgICAgICAgKiBj
b25maWd1cmUuYWM6CgoyMDEwLTAyLTE4ICBUb3IgQXJuZSBWZXN0YsO4ICA8dG9yLmFybmUudmVz
dGJvQG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAg
IEFkZCAuZ2l0YXR0cmlidXRlcyBmaWxlIGZvciBjdXN0b20gQ2hhbmdlTG9nIG1lcmdlLWRyaXZl
cgoKICAgICAgICAqIC5naXRhdHRyaWJ1dGVzOiBBZGRlZC4KCjIwMTAtMDItMTcgIE5vYW0gUm9z
ZW50aGFsICA8bm9hbS5yb3NlbnRoYWxAbm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBB
cml5YSBIaWRheWF0LgoKICAgICAgICBbUXRdIEdyYXBoaWNzTGF5ZXI6IHN1cHBvcnQgcGVyc3Bl
Y3RpdmUgYW5kIDNEIHRyYW5zZm9ybXMKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzQ5NjAKCiAgICAgICAgKiBXZWJLaXQucHJpOiBhZGRlZCBhcHByb3By
aWF0ZSBkZWZpbmU6IEVOQUJMRURfM0RfUkVOREVSSU5HCgoyMDEwLTAyLTE1ICBQaGlsaXBwZSBO
b3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2
byBOb3JvbmhhIFNpbHZhLgoKICAgICAgICBbR1N0cmVhbWVyXSBTaG91bGQgaGFuZGxlIEJVRkZF
UklORyBtZXNzYWdlcwogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0zMDAwNAoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzogQnVtcCBnc3RyZWFtZXIgLWNvcmUv
LXBsdWdpbnMtYmFzZSByZXF1aXJlbWVudHMgdG8KICAgICAgICAwLjEwLjI1IHdoaWNoIGlzIHRo
ZSBtaW5pbXVtIHJlcXVpcmVkIHZlcnNpb24gZm9yIG9uLWRpc2sgYnVmZmVyaW5nLgoKMjAxMC0w
Mi0xNiAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5
IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgQnVtcCB2ZXJzaW9uIHRvIDEuMS4yMiBzbyB3ZSBj
YW4gZGVwZW5kIG9uIGl0IGluIGFwcGxpY2F0aW9ucy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6
CgoyMDEwLTAyLTEyICBTaW1vbiBIYXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQG5va2lhLmNvbT4K
CiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyLgoKICAgICAgICBSZW1vdmVkIFdN
TElucHV0RWxlbWVudC4qIGZyb20gLmdpdGF0dHJpYnV0ZXMgYXMgdGhlIGZpbGUgaXMKICAgICAg
ICBub3cgQ1JMRiBjbGVhbi4KCiAgICAgICAgKiAuZ2l0YXR0cmlidXRlczoKCjIwMTAtMDItMTAg
IEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQG5va2lhLmNvbT4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLDuC4KCiAgICAgICAgW1F0XSBNYWtlIHF0bGF1bmNo
ZXIgYW5kIHFndmxhdW5jaGVyIHVzZSB0aGUgZ2VuZXJhdGVkIGhlYWRlcnMKICAgICAgICBwYXRo
IHRvIG1ha2Ugc3VyZSB0aGV5IGFyZSBjb3JyZWN0bHkgZ2VuZXJhdGVkLgoKICAgICAgICAqIFdl
YktpdC5wcmk6CgoyMDEwLTAyLTEwICBKb2NlbHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0
ZUBub2tpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCgogICAg
ICAgIFtRdF0gTWFudWFsbHkgYWRkIHN1cHBvcnQgZm9yIHRoZSBpbnN0YWxsIHRhcmdldCBvbiBT
eW1iaWFuLgoKICAgICAgICBUaGlzIGlzIHJlcXVpcmVkIHRvIGNvcHkgdGhlIGhlYWRlcnMgb3Zl
ciB0aGUgb25lcyBpbiBRdC4KCiAgICAgICAgKiBXZWJLaXQucHJvOgoKMjAxMC0wMi0xMSAgRnJp
ZHJpY2ggU3RyYmEgIDxmcmlkcmljaC5zdHJiYUBibHVld2luLmNoPgoKICAgICAgICBSZXZpZXdl
ZCBieSBHdXN0YXZvIE5vcm9uaGEgU2lsdmEuCgogICAgICAgIERldGVjdCBwcm9wZXJseSBkaWZm
ZXJlbnQgdmVyc2lvbnMgb2YgbGlicG5nIG91dCB0aGVyZS4KCiAgICAgICAgKiBjb25maWd1cmUu
YWM6CgoyMDEwLTAyLTExICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAg
VHJ5IHRvIGZpeCBHVEsrIGJ1aWxkLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMTAtMDIt
MTEgIEFudG9uaW8gR29tZXMgIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBBZGp1c3QgZ3N0cmVhbWVyLXBsdWdpbnMtYmFzZSBt
aW5pbXVtIHZlcnNpb24gY2hlY2sgKGZyb20gMC4xMCB0byAwLjEwLjIzKS4KCiAgICAgICAgKiBj
b25maWd1cmUuYWM6CgoyMDEwLTAyLTA4ICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5j
b20+CgogICAgICAgIFJldmlld2VkIGJ5IENhbWVyb24gWndhcmljaC4KCiAgICAgICAgUmVzdG9y
ZSBFTkFCTEVfUlVCWSBmbGFnIHNvIHZlbmRvcnMgY2FuIHNoaXAgd2l0aCBSdWJ5IGRpc2FibGVk
IGlmIHRoZXkgY2hvb3NlLgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zNDY5OAoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMTAtMDItMDggIEd1c3Rh
dm8gTm9yb25oYSBTaWx2YSAgPGd1c3Rhdm8ubm9yb25oYUBjb2xsYWJvcmEuY28udWs+CgogICAg
ICAgIFJldmlld2VkIGJ5IFhhbiBMb3Blei4KCiAgICAgICAgQnVtcCB2ZXJzaW9uIHRvIDEuMS4y
MSwgYW5kIGFkanVzdCBsaWJyYXJ5IHZlcnNpb25pbmcgYWNjb3JkaW5nbHkuCgogICAgICAgICog
Y29uZmlndXJlLmFjOgoKMjAxMC0wMi0wNSAgU2ViYXN0aWFuIERyw7ZnZSAgPHNlYmFzdGlhbi5k
cm9lZ2VAY29sbGFib3JhLmNvLnVrPgoKICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9u
aGEuCgogICAgICAgIEFkZCBnc3RyZWFtZXItYXBwLTAuMTAgdG8gY29uZmlndXJlLmFjCiAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM0MzE3CgogICAgICAg
ICogY29uZmlndXJlLmFjOgoKMjAxMC0wMi0wNSAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVz
bWFubkBub2tpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCgog
ICAgICAgIEFkZCAuZ2l0YXR0cmlidXRlcyBmaWxlIHRvIHRlbGwgZ2l0IGFib3V0IGZpbGVzIHdp
dGggV2luZG93cyBsaW5lZmVlZHMKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MzQ2NDUKCiAgICAgICAgT24gV2luZG93cyBnaXQgZGVmYXVsdHMgdG8gInRy
dWUiIGZvciBjb3JlLmF1dG9jcmxmLCBtZWFuaW5nIGFsbCB0ZXh0CiAgICAgICAgZmlsZXMgaW4g
dGhlIHdvcmtpbmcgZGlyZWN0b3J5IGFyZSBjb252ZXJ0ZWQgZnJvbSBDUkxGIHRvIExGIG9uIGNo
ZWNraW4KICAgICAgICB0aW1lLiBTb21lIGZpbGVzIHByZXNlbnQgaW4gdGhlIHJlcG9zaXRvcnkg
aGF2ZSBiZWVuIGNoZWNrZWQgaW4gd2l0aAogICAgICAgIENSTEYgbGluZWZlZWRzIGFuZCBnaXQg
c2hvdWxkIG5vdCB0cnkgdG8gY29udmVydCB0aGVtLiBUaGUgYWRkZWQKICAgICAgICAuZ2l0YXR0
cmlidXRlcyBmaWxlIHRlbGxzIGdpdCB0byBub3QgZG8gYW55IENSTEYgY29udmVyc2lvbi4KCiAg
ICAgICAgKiAuZ2l0YXR0cmlidXRlczogQWRkZWQuCgoyMDEwLTAyLTA1ICBUb3IgQXJuZSBWZXN0
YsO4ICA8dG9yLmFybmUudmVzdGJvQG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgU2lt
b24gSGF1c21hbm4uCgogICAgICAgIFtRdF0gR2VuZXJhdGUgY29udmVuaWVuY2UgaGVhZGVycyAo
UVdlYlZpZXcsIGV0YykgdXNpbmcgcW1ha2UKCiAgICAgICAgSW4gUXQgdGhpcyBpcyBkb25lIHVz
aW5nIHN5bmNxdCwgYnV0IHdlIHVzZSBhIHByby1maWxlIGluc3RlYWQKICAgICAgICB0aGF0IGdl
bmVyYXRlcyBtYWtlZmlsZS1ydWxlcyBmb3IgZWFjaCBvZiB0aGUgZXh0cmEgaGVhZGVycy4KCiAg
ICAgICAgVGhlc2UgZXh0cmEgaGVhZGVycyBhcmUgaW5zdGFsbGVkIGFsb25nc2lkZSB0aGUgbm9y
bWFsIGhlYWRlcnMuCgogICAgICAgICogRGVyaXZlZFNvdXJjZXMucHJvOiBJbmNsdWRlIEFQSS1E
ZXJpdmVkU291cmNlcwoKMjAxMC0wMi0wNCAgVG9yIEFybmUgVmVzdGLDuCAgPHRvci5hcm5lLnZl
c3Rib0Bub2tpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IExhcnMgS25vbGwuCgogICAgICAg
IFtRdF0gTWFrZSAnbWFrZSAtZiBNYWtlZmlsZS5EZXJpdmVkU291cmNlcyBxbWFrZScgd29yawoK
ICAgICAgICBQcmV2aW91c2x5IHRoaXMgdGFyZ2V0IGVuZGVkIHVwIGdlbmVyYXRpbmcgYSBmaWxl
IG5hbWVkCiAgICAgICAgTWFrZWZpbGUuRGVyaXZlZFNvdXJjZXMuRGVyaXZlZFNvdXJjZXMsIGFu
ZCBzbyBvbi4KCiAgICAgICAgKiBEZXJpdmVkU291cmNlcy5wcm86CgoyMDEwLTAyLTA0ICBDaHJp
c3RpYW4gRHl3YW4gIDxjaHJpc3RpYW5AdHdvdGFzdHMuZGU+CgogICAgICAgIFJldmlld2VkIGJ5
IFhhbiBMb3Blei4KCiAgICAgICAgUmVxdWlyZSBlaXRoZXIgbGlic291cCAyLjI4LjIgb3IgMi4y
OS45MC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDEwLTAyLTA0ICBYYW4gTG9wZXogIDx4
bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoK
ICAgICAgICBCdW1wIG1pbmltdW0gbGlic291cCByZXF1aXJlbWVudCB0byAyLjI5LjkwCgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAxMC0wMi0wMiAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8
Z25zQGdub21lLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBC
dW1wIHZlcnNpb24sIGFuZCBhZGp1c3QgbGlicmFyeSB2ZXJzaW9uaW5nIGZvciAxLjEuMjAuCgog
ICAgICAgICogY29uZmlndXJlLmFjOgoKMjAxMC0wMS0yOSAgSmVyZW15IE9ybG93ICA8am9ybG93
QGNocm9taXVtLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgoKICAg
ICAgICBBIGZpcnN0IHN0ZXAgdG93YXJkcyB0aGUgSW5kZXhlZCBEYXRhYmFzZSBBUEkKICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzQzNDIKCiAgICAgICAg
QWRkIEluZGV4ZWQgRGF0YWJhc2UgQVBJCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAxMC0w
MS0yNyAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CgogICAgICAg
IFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgoKICAgICAgICBbUXRdIERv
bid0IGJ1aWxkIHRoZSB0ZXN0cyBpbiBwYWNrYWdlcywgb25seSB0aGUgbGF1bmNoZXIocykKCiAg
ICAgICAgKiBXZWJLaXQucHJvOgoKMjAxMC0wMS0yNyAgSm9jZWx5biBUdXJjb3R0ZSAgPGpvY2Vs
eW4udHVyY290dGVAbm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0
YsO4LgoKICAgICAgICBbUXRdIEFkZCB0aGUgImQiIHN1ZmZpeCB0byBRdFdlYktpdCdzIGRsbCBv
biBXaW5kb3dzLgoKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDEwLTAxLTI3ICBKb2NlbHluIFR1
cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CgogICAgICAgIFVucmV2aWV3ZWQg
YnVpbGQgZml4CgogICAgICAgIFtRdF0gQnVpbGQgZml4IGZvciB3aW5kb3dzIHdoZW4gUVRESVIg
Y29udGFpbnMgcmVsZWFzZSBsaWJyYXJpZXMuCgogICAgICAgICogV2ViS2l0LnByaTogVXNlIHRo
ZSA8bmFtZT4ubGliIHN5bnRheCBmb3IgbGlua2luZyBpbnN0ZWFkIG9mIHFtYWtlJ3MgLWw8bmFt
ZT4gZW11bGF0aW9uCgoyMDEwLTAxLTI2ICBKZWRyemVqIE5vd2Fja2kgIDxqZWRyemVqLm5vd2Fj
a2lAbm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KCiAgICAg
ICAgRmlyc3Qgc3RlcHMgb2YgdGhlIFF0U2NyaXB0IEFQSS4KICAgICAgICAKICAgICAgICBUd28g
bmV3IGNsYXNzZXMgd2VyZSBjcmVhdGVkOyBRU2NyaXB0RW5naW5lIGFuZCBRU2NyaXB0VmFsdWUu
CiAgICAgICAgVGhlIGZpcnN0IHNob3VsZCBlbmNhcHN1bGF0ZSBhIGphdmFzY3JpcHQgY29udGV4
dCBhbmQgdGhlIHNlY29uZCBhIHNjcmlwdAogICAgICAgIHZhbHVlLgogICAgICAgIAogICAgICAg
IFRoaXMgQVBJIGlzIHN0aWxsIGluIGRldmVsb3BtZW50LCBzbyBpdCBpc24ndCBjb21waWxlZCBi
eSBkZWZhdWx0LgogICAgICAgIFRvIHRyaWdnZXIgY29tcGlsYXRpb24sIHBhc3MgLS1xbWFrZWFy
Zz0iQ09ORklHKz1idWlsZC1xdHNjcmlwdCIgdG8KICAgICAgICBidWlsZC13ZWJraXQuCgogICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjU2NQoKICAgICAg
ICAqIFdlYktpdC5wcm86CgoyMDEwLTAxLTI1ICBTaW1vbiBIYXVzbWFubiAgPHNpbW9uLmhhdXNt
YW5uQG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTGFzemxvIEdvbWJvcy4KCiAgICAg
ICAgW1F0XSBGaXggdGhlIGJ1aWxkIG9uIE1hZW1vNS4KCiAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM0MDUxCgogICAgICAgICogV2ViS2l0LnByaTogRGlz
YWJsZSB0aGUgdXNlIG9mIHVpdG9vbHMsIGp1c3QgbGlrZSBpdCdzIGRvbmUgZm9yIFN5bWJpYW4u
CgoyMDEwLTAxLTIxICBObydhbSBSb3NlbnRoYWwgIDxub2FtLnJvc2VudGhhbEBub2tpYS5jb20+
CgogICAgICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgoKICAgICAgICBbUXRdIEltcGxl
bWVudCBHcmFwaGljc0xheWVyIGZvciBhY2NlbGVyYXRlZCBsYXllciBjb21wb3NpdGluZwogICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMzUxNAoKICAgICAg
ICAqIFdlYktpdC5wcmk6IEFkZGRlZCBjb21waWxlIGZsYWdzIHRvIGVuYWJsZSBhY2NlbGVyYXRl
ZCBjb21wb3NpdGluZwogICAgICAgIG9uIHZlcnNpb25zIGhpZ2hlciB0aGFuIDQuNQoKMjAxMC0w
MS0yMCAgVG9yIEFybmUgVmVzdGLDuCAgPHRvci5hcm5lLnZlc3Rib0Bub2tpYS5jb20+CgogICAg
ICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNtYW5uLgoKICAgICAgICBbUXRdIE1ha2UgRHVtcFJl
bmRlclRyZWUgYnVpbGQgb24gV2luZG93cwoKICAgICAgICAqIFdlYktpdC5wcm86CgoyMDEwLTAx
LTIwICBKb2NlbHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CgogICAg
ICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNtYW5uLgoKICAgICAgICBbUXRdIEZpeCB0aGUgcmVj
dXJzaXZlIGdlbmVyYXRlZF9maWxlcyB0YXJnZXQgdG8gd29yayB3aXRoIHFtYWtlIC1yIC1vCgog
ICAgICAgICogRGVyaXZlZFNvdXJjZXMucHJvOgoKMjAxMC0wMS0yMCAgU2ltb24gSGF1c21hbm4g
IDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5l
IFZlc3Riw7guCgogICAgICAgIFtRdF0gTWFrZSBpdCBwb3NzaWJsZSAob24gKm5peCBhdCBsZWFz
dCkgdG8gcmVjdXJzaXZlbHkgY2FsbCAibWFrZSBnZW5lcmF0ZWRfZmlsZXMiCgogICAgICAgICog
RGVyaXZlZFNvdXJjZXMucHJvOgoKMjAxMC0wMS0xOSAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8
Z25zQGdub21lLm9yZz4KCiAgICAgICAgVW5yZXZpZXdlZC4gU2hhcmVkIGxpYnJhcnkgdmVyc2lv
bmluZyB1cGRhdGUgZm9yIDEuMS4xOS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDEwLTAx
LTE1ICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxnbnNAZ25vbWUub3JnPgoKICAgICAgICBSdWJi
ZXItc3RhbXBlZCBieSBYYW4gTG9wZXouCgogICAgICAgIEJ1bXAgdmVyc2lvbiB0byAxLjEuMTku
CgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAxMC0wMS0xNCAgQ3NhYmEgT3N6dHJvZ29uw6Fj
ICA8b3NzeUB3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KCiAg
ICAgICAgW1F0XSBEZWZlY3RpdmUgZGVwZW5kZW5jaWVzIGNhdXNlZCBidWlsZCBmYWlsaW5nIG9u
IFF0QnVpbGRCb3QuCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTMzNjkzCgogICAgICAgICogV2ViS2l0LnByaTogQ09ORklHICs9IGRlcGVuZF9pbmNsdWRl
cGF0aCBhZGRlZC4KCjIwMTAtMDEtMTQgIFN0ZXZlIEJsb2NrICA8c3RldmVibG9ja0Bnb29nbGUu
Y29tPgoKICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KCiAgICAgICAgTW92ZXMgZ2Vu
ZXJhbCBpbmNsdWRlcyBiZWZvcmUgYmluZGluZ3MgaW5jbHVkZXMgaW4gQW5kcm9pZCBidWlsZCBz
eXN0ZW0uCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMz
NjIzCgogICAgICAgIFRoaXMgYXZvaWRzIHByb2JsZW1zIHdpdGggY29sbGlzaW9ucyBiZXR3ZWVu
IFdlYkNvcmUvcGxhdGZvcm0vdGV4dC9TdHJpbmdCdWlsZGVyLmgKICAgICAgICBhbmQgdGhlIG5l
dyBKYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0J1aWxkZXIuaC4gVGhpcyBjaGFuZ2UgcHV0
cwogICAgICAgIEphdmFTY3JpcHRDb3JlL3J1bnRpbWUgYW5kIG90aGVyIGJpbmRpbmdzIGluY2x1
ZGVzIGFmdGVyIHRoZSBXZWJDb3JlIGFuZCBvdGhlcgogICAgICAgIGdlbmVyYWwgaW5jbHVkZXMs
IHNvIHRoYXQgdGhlIFdlYkNvcmUgU3RyaW5nQnVpbGRlci5oIGlzIHBpY2tlZCB1cCB3aGVuIGJ1
aWxkaW5nCiAgICAgICAgV2ViQ29yZS4KCiAgICAgICAgKiBBbmRyb2lkLm1rOiBNb2RpZmllZC4K
CjIwMTAtMDEtMTMgIEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQG5va2lhLmNv
bT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCgogICAgICAgIFtRdF0gU3Bs
aXQgdGhlIGJ1aWxkIHByb2Nlc3MgaW4gdHdvIGRpZmZlcmVudCAucHJvIGZpbGVzLgogICAgICAg
IFRoaXMgYWxsb3dzIHFtYWtlIHRvIGJlIHJ1biBvbmNlIGFsbCBzb3VyY2UgZmlsZXMgYXJlIGF2
YWlsYWJsZS4KCiAgICAgICAgKiBEZXJpdmVkU291cmNlcy5wcm86IEFkZGVkLgogICAgICAgICog
V2ViS2l0LnByaToKCjIwMTAtMDEtMDcgIERhbmllbCBCYXRlcyAgPGRiYXRlc0ByaW0uY29tPgoK
ICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KCiAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyOTg3CgogICAgICAgIEFkZGVkIEVOQUJMRV9YSFRN
TE1QIGZsYWcuIERpc2FibGVkIGJ5IGRlZmF1bHQuCgogICAgICAgICogY29uZmlndXJlLmFjOgoK
MjAxMC0wMS0wNSAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z25zQGdub21lLm9yZz4KCiAgICAg
ICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBCYXNlZCBvbiBpZGVhIGFuZCBvcmln
aW5hbCBwYXRjaCBieSBFdmFuIE1hcnRpbi4KCiAgICAgICAgUmVtb3ZlIGxpYldlYkNvcmUgaW50
ZXJtZWRpYXRlIGxpYnJhcnksIHRvIGltcHJvdmUgbGluayB0aW1lLgoKICAgICAgICBbR1RLXSBC
dWlsZCB0aW1lIG11c3QgYmUgcmVkdWNlZAogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0zMjkyMQoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAxMC0w
MS0wNSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIEJ1bXAgZm9yIDEu
MS4xOCByZWxlYXNlLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMTAtMDEtMDQgIEd1c3Rh
dm8gTm9yb25oYSBTaWx2YSAgPGduc0Bnbm9tZS5vcmc+CgogICAgICAgIEZpeCBKU0NvcmUtMS4w
LmdpciBwYXRoIHRvIGZpeCBtYWtlIGRpc3RjaGVjay4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5h
bToKCjIwMTAtMDEtMDQgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9raWEuY29t
PgoKICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4LgoKICAgICAgICBbUXRdIEZp
eCBzdGFuZGFsb25lIHBhY2thZ2UgYnVpbGRzLgoKICAgICAgICAqIFdlYktpdC5wcmk6IEFkZCBs
b2dpYyBmb3IgZGV0ZWN0aW5nIHN0YW5kYWxvbmUgYnVpbGRzLiBTZXQgT1VUUFVUX0RJUiB0byB0
aGUgdG9wLWxldmVsIGRpciBpbiB0aGF0IGNhc2UuCiAgICAgICAgKiBXZWJLaXQucHJvOiBEb24n
dCBidWlsZCBKU0MgYW5kIERSVCBmb3IgcGFja2FnZSBidWlsZHMuCgoyMDEwLTAxLTA0ICBFcmlj
IFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0
aC4KCiAgICAgICAgYnVnemlsbGEtdG9vbCBzaG91bGQgbm90IHJlcXVpcmUgdXNlcnMgdG8gaW5z
dGFsbCBtZWNoYW5pemUKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzI2MzUKCiAgICAgICAgKiAuZ2l0aWdub3JlOiBJZ25vcmUgYXV0b2luc3RhbGwuY2Fj
aGUuZCBkaXJlY3RvcnkgY3JlYXRlZCBieSBhdXRvaW5zdGFsbC5weQoKMjAwOS0xMi0yOCAgRXN0
w6p2w6NvIFNhbXVlbCBQcm9jw7NwaW8gIDx0ZXZhdW1AZ21haWwuY29tPgoKICAgICAgICBSZXZp
ZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEgU2lsdmEuCgogICAgICAgIEJ1ZyAzMjk0MDogW0dUS10g
Q2hhbmdpbmcgdGhlIGRvd25sb2FkIHRocm90dGxlIGNvbmRpdGlvbnMuCiAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyNzE2CgogICAgICAgIFRoZSBXZWJL
aXREb3dubG9hZCBwcm9ncmVzcyBub3RpZmljYXRpb24gd2FzIHRha2luZyBsb25nIHRvCiAgICAg
ICAgdXBkYXRlLiBUaGlzIGZpeCBtYWtlcyBub3RpZmljYXRpb24gaGFwcGVucyBlYWNoIDAuNyBz
ZWNzCiAgICAgICAgb3Igd2hlbiB0aGUgcHJvZ3Jlc3MgdXBzIGluIDElLgoKICAgICAgICAqIFdl
YktpdC9ndGsvd2Via2l0L3dlYmtpdGRvd25sb2FkLmNwcDoKCjIwMDktMTItMjIgIFNpbW9uIEhh
dXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9raWEuY29tPgoKICAgICAgICBSdWJiZXItc3RhbXBl
ZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIEFkanVzdGVkIHBhdGggdG8gUXRMYXVuY2hl
ci4KCiAgICAgICAgKiBXZWJLaXQucHJvOgoKMjAwOS0xMi0xOSAgRXZhbiBNYXJ0aW4gIDxldmFu
QGNocm9taXVtLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZh
LgoKICAgICAgICBBZGQgYSBjb3VwbGUgb2YgV2ViS2l0R3RrIGZpbGVzIHRvIC5naXRpZ25vcmUu
CgogICAgICAgICogLmdpdGlnbm9yZToKCjIwMDktMTItMTggIEJlbmphbWluIE90dGUgIDxvdHRl
QGdub21lLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBbR1RL
XSBSZW1vdmVEYXNoYm9hcmQgc3VwcG9ydC4gSXQncyB1c2VsZXNzLgoKICAgICAgICAqIGNvbmZp
Z3VyZS5hYzoKCjIwMDktMTItMTggIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9r
aWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4LgoKICAgICAgICBb
UXRdIENsZWFuIHVwIHRoZSBxbWFrZSBidWlsZCBzeXN0ZW0gdG8gZGlzdGluZ3Vpc2ggYmV0d2Vl
biB0cnVuayBidWlsZHMgYW5kIHBhY2thZ2UgYnVpbGRzCgogICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjcxNgoKICAgICAgICAqIFdlYktpdC5wcmk6IFVz
ZSBzdGFuZGFsb25lX3BhY2thZ2UgaW5zdGVhZCBvZiBRVERJUl9idWlsZAoKMjAwOS0xMi0xNyAg
R3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4K
CiAgICAgICAgVW5yZXZpZXdlZC4gQnVpbGQgZml4ZXMgZm9yIG1ha2UgZGlzdGNoZWNrLgoKICAg
ICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0xMi0xNiAgRGFuIFdpbnNoaXAgIDxkYW53QGdu
b21lLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgoKICAg
ICAgICBbR3RrXSBDb250ZW50LUVuY29kaW5nIHN1cHBvcnQKCiAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMjc3MgoKICAgICAgICAqIGNvbmZpZ3VyZS5h
YzogcmVxdWlyZSBsaWJzb3VwIDIuMjguMiBmb3IgU291cENvbnRlbnREZWNvZGVyCgoyMDA5LTEy
LTEzICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
R2F2aW4gQmFycmFjbG91Z2guCgogICAgICAgIHN0cmluZy1iYXNlNjQgdGVzdCBkb2VzIG5vdCBj
b21wdXRlIGEgdmFsaWQgYmFzZTY0IHN0cmluZwogICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2ODA2CgogICAgICAgICogdGVzdHMvc3RyaW5nLWJhc2U2NC5q
czogY2hhbmdlIHN0cltpXSB0byBzdHIuY2hhckNvZGVBdChpKQoKMjAwOS0xMi0xMCAgR3VzdGF2
byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAg
ICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBbR1RLXSBTaG91bGQgcHJvdmlkZSBh
biBBUEkgdG8gY29udHJvbCB0aGUgSWNvbkRhdGFiYXNlCiAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyMzM0CgogICAgICAgIEFkZCB0ZXN0IHRvIG1ha2Ug
c3VyZSBmYXZpY29uIHJlcG9ydGluZyB3b3Jrcy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToK
CjIwMDktMTItMDkgIFN0ZXZlIEJsb2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgoKICAgICAg
ICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgoKICAgICAgICBBZGRzIEFuZHJvaWQgTWFrZWZpbGVz
IGZvciBidWlsZGluZyB3aXRoIFY4LgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zMjI3OAoKICAgICAgICAqIEFuZHJvaWQubWs6IE1vZGlmaWVkLiBJbmNs
dWRlcyBNYWtlZmlsZXMgZm9yIFY4LgoKMjAwOS0xMi0wOCAgU3RldmUgQmxvY2sgIDxzdGV2ZWJs
b2NrQGdvb2dsZS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCgogICAgICAg
IFtBbmRyb2lkXSBBZGRzIE1ha2VmaWxlcyBmb3IgQW5kcm9pZCBwb3J0LgogICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTMyNQoKICAgICAgICAqIEFuZHJv
aWQubWs6IEFkZGVkLgoKMjAwOS0xMi0wOCAgQ2hyaXN0aWFuIER5d2FuICA8Y2hyaXN0aWFuQHR3
b3RvYXN0cy5kZT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICAqIGNv
bmZpZ3VyZS5hYzogUmVxdWlyZSBvbmx5IGxpYlNvdXAgMi4yNy45MSBidXQgY2hlY2sgZm9yIDIu
MjkuMwogICAgICAgIGFuZCBkZWZpbmUgSEFWRV9MSUJTT1VQXzJfMjlfMyBpbiB0aGF0IGNhc2Uu
CgoyMDA5LTEyLTA4ICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxndXN0YXZvLm5vcm9uaGFAY29s
bGFib3JhLmNvLnVrPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBYYW4gTG9wZXouCgogICAg
ICAgIExhdGUgcG9zdC1yZWxlYXNlIHZlcnNpb24gYnVtcC4KCiAgICAgICAgKiBjb25maWd1cmUu
YWM6CgoyMDA5LTEyLTA4ICBEb21pbmlrIFLDtnR0c2NoZXMgIDxkb21pbmlrLnJvZXR0c2NoZXNA
YWNjZXNzLWNvbXBhbnkuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEg
U2lsdmEuCgogICAgICAgIFtHdGtdIENyZWF0ZSBhIFRleHRCcmVha0l0ZXJhdG9yIGltcGxlbWVu
dGF0aW9uIGJhc2VkIG9uIEdMaWIgKHdpdGhvdXQgSUNVKQogICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTQ2OQoKICAgICAgICBSZW1vdmluZyBoeWJyaWQg
Y29uZmlndXJhdGlvbiBmb3IgLS13aXRoLXVuaWNvZGUtYmFja2VuZD1nbGliCiAgICAgICAgSUNV
IG5vdCByZXF1aXJlZCBhbnltb3JlLgoKICAgICAgICAqIGF1dG90b29scy93ZWJraXQubTQ6Cgoy
MDA5LTEyLTA4ICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkByaW0uY29tPgoKICAg
ICAgICBSdWJiZXItc3RhbXBlZCBieSBNYWNpZWogU3RhY2hvd2lhay4KCiAgICAgICAgVHVybiBv
biAoU1ZHKSBGaWx0ZXJzIGZvciBHdGsuCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTMyMjI0CgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0xMi0w
NyAgRG1pdHJ5IFRpdG92ICA8ZGltaWNoQGNocm9taXVtLm9yZz4KCiAgICAgICAgUnViYmVyLXN0
YW1wZWQgYnkgRGFyaW4gQWRsZXIuCgogICAgICAgIFJlbW92ZSBFTkFCTEVfU0hBUkVEX1NDUklQ
VCBmbGFncwogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
MjI0NQogICAgICAgIFRoaXMgcGF0Y2ggd2FzIG9idGFpbmVkIGJ5ICJnaXQgcmV2ZXJ0IiBjb21t
YW5kIGFuZCB0aGVuIHVuLXJldmVydGluZyBvZiBDaGFuZ2VMb2cgZmlsZXMuCgogICAgICAgICog
Y29uZmlndXJlLmFjOgoKMjAwOS0xMi0wNiAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z25zQGdu
b21lLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBCdWlsZCB0
aGUgbmV3IEFQSSB0ZXN0LgoKICAgICAgICBbR1RLXSBSRUdSRVNTSU9OOiB3ZWJraXQgdGhpbmtz
IGl0IGNhbiByZW5kZXIgUERGcwogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zMjE4MwoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0xMi0wNSAg
VmluY2VudCBVbnR6IDx2dW50ekBnbm9tZS5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEd1c3Rh
dm8gTm9yb25oYS4KCiAgICAgICAgRml4ZXMgcmFjZSBmb3IgYnVpbGRzIHdpdGggaW50cm9zcGVj
dGlvbiBlbmFibGVkLCBhbmQgcGFyYWxsZWwKICAgICAgICBtYWtlLgoKICAgICAgICAqIEdOVW1h
a2VmaWxlLmFtOgoKMjAwOS0xMi0wNCAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+Cgog
ICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgW0dUS11FbmFibGUg
RE5TIHByZWZldGNoaW5nCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzODQ2CgogICAgICAgIEJ1bXAgbGlic291cCByZXF1aXJlZCB2ZXJzaW9uIHRvIDIu
MjkuMyBmb3IgRE5TIHByZWZldGNoaW5nLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDkt
MTEtMzAgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGd1c3Rhdm8ubm9yb25oYUBjb2xsYWJvcmEu
Y28udWs+CgogICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IFhhbiBMb3Blei4KCiAgICAgICAgTWFr
ZSBzdXJlIHdlIGRpc3RyaWJ1dGUgYW5kIGluc3RhbGwgR09iamVjdCBJbnRyb3NwZWN0aW9uIGZp
bGVzLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0xMS0zMCAgR3VzdGF2byBOb3Jv
bmhhIFNpbHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgQnVp
bGQgZml4LiBNYWtlIHN1cmUgSlNDb3JlLTEuMC5naXIgaXMgYWRkZWQgdG8gdGhlIGRpc3RyaWJ1
dGVkCiAgICAgICAgdGFyYmFsbC4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDktMTEt
MzAgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBH
dXN0YXZvIE5vcm9uaGEuCgogICAgICAgIEJ1bXAgdmVyc2lvbnMgZm9yIDEuMS4xNyByZWxlYXNl
LgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMTEtMzAgIEphbi1BcnZlIFPDpnRoZXIg
IDxqYW4tYXJ2ZS5zYWV0aGVyQG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24g
SGF1c21hbm4uCgogICAgICAgIFtRdF0gRml4IGNvbXBpbGF0aW9uIHdpdGggd2luMzItaWNjCgog
ICAgICAgIEluY2x1ZGUgb3Mtd2luMzIgZm9yIHN0ZGludC5oIHNpbmNlIE1TIGRvZXMgbm90IHNo
aXAgdGhhdCBpbiB0aGVpciBQU0RLLgoKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDA5LTExLTI2
ICBMYXN6bG8gR29tYm9zICA8bGFzemxvLjEuZ29tYm9zQG5va2lhLmNvbT4KCiAgICAgICAgUmV2
aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCgogICAgICAgIE1vdmUgR093blB0ciogZnJvbSB3dGYgdG8g
d3RmL2d0awogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
MTc5MwoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOiBBZGQgSmF2YVNjcmlwdENvcmUvd3RmL2d0
ayB0byAKICAgICAgICAgIHRoZSBpbmNsdWRlIHBhdGguCgoyMDA5LTExLTI0ICBEbWl0cnkgVGl0
b3YgIDxkaW1pY2hAY2hyb21pdW0ub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRl
bC4KCiAgICAgICAgQWRkIEVOQUJMRV9TSEFSRURfU0NSSVBUIGZlYXR1cmUgZGVmaW5lIGFuZCBm
bGFnIGZvciBidWlsZC13ZWJraXQKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MzE0NDQKCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTExLTI0ICBK
YXNvbiBTbWl0aCAgPGRhcmsucGFuZGFAZ21haWwuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBB
bGV4ZXkgUHJvc2t1cnlha292LgoKICAgICAgICBSZWdFeHAjZXhlYydzIHJldHVybmVkIEFycmF5
LWxpa2Ugb2JqZWN0IGJlaGF2ZXMgZGlmZmVyZW50bHkgZnJvbQogICAgICAgIHJlZ3VsYXIgQXJy
YXlzCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMxNjg5
CgogICAgICAgICogTGF5b3V0VGVzdHMvZmFzdC9qcy9yZWdleHAtaW4tYW5kLWZvcmVhY2gtaGFu
ZGxpbmcuaHRtbDogQWRkZWQuCiAgICAgICAgKiBMYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10
ZXN0cy9yZWdleHAtaW4tYW5kLWZvcmVhY2gtaGFuZGxpbmcuanM6IEFkZGVkLgogICAgICAgICog
TGF5b3V0VGVzdHMvZmFzdC9qcy9yZWdleHAtaW4tYW5kLWZvcmVhY2gtaGFuZGxpbmctZXhwZWN0
ZWQudHh0OiBBZGRlZC4KCjIwMDktMTEtMjQgIEplbnMgQWxma2UgIDxzbmVqQGNocm9taXVtLm9y
Zz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgTGV2aW4uCgogICAgICAgIElnbm9yZSBDaHJv
bWl1bSdzIFhjb2RlIHByb2plY3RzIHRoYXQgYXJlIGF1dG8tZ2VuZXJhdGVkIGZyb20gLmd5cCBm
aWxlcy4KICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzE4
NDcKICAgICAgICAKICAgICAgICAqIC5naXRpZ25vcmU6ICBBZGQgdGhyZWUgLnhjb2RlcHJvaiBm
aWxlcy4KCjIwMDktMTEtMDkgIFByaWl0IExhZXMgIDxwbGFlc0BwbGFlcy5vcmc+CgogICAgICAg
IFJldmlld2VkIGJ5IE9saXZlciBIdW50LgoKICAgICAgICBbR3RrXSBCdWlsZCBmcm9tIHRhcmJh
bGwgZmFpbHMgd2l0aCAtLWVuYWJsZS1pbnRyb3NwZWN0aW9uCiAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMxMjYxCgogICAgICAgIFdlIG5lZWQgdG8gZW5h
YmxlIGdvYmplY3QtaW50cm9zcGVjdGlvbiBkdXJpbmcgZGlzdGNoZWNrIG90aGVyd2lzZQogICAg
ICAgIHNvbWUgb2YgdGhlIHJlcXVpcmVkIGZpbGVzIGFyZSBtaXNzaW5nIGluIHRhcmJhbGwuCgog
ICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA5LTExLTA1ICBQcmlpdCBMYWVzICA8cGxhZXNA
cGxhZXMub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBKYW4gQWxvbnpvLgoKICAgICAgICBbR3Rr
XSBCdWlsZCBmYWlsdXJlIHdpdGggLS1lbmFibGUtaW50cm9zcGVjdGlvbgogICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTEwMgoKICAgICAgICBBZGQgc2Vh
cmNoIGFuZCBpbmNsdWRlIHBhdGhzIGZvciBKU0NvcmUtMS4wLmdpciByZXF1aXJlZCBieQogICAg
ICAgIGdvYmplY3QtaW50cm9zcGVjdGlvbiB0b29scy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5h
bToKCjIwMDktMTEtMDQgIEJlbmphbWluIE90dGUgIDxvdHRlQGdub21lLm9yZz4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBVcGRhdGUgQ2Fpcm8gcmVxdWly
ZW1lbnQgdG8gMS42LgogICAgICAgIAogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTI2NgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMTEtMDIg
IEVzdMOqdsOjbyBTYW11ZWwgUHJvY8OzcGlvICA8dGV2YXVtQGdtYWlsLmNvbT4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBbQnVpbGRdIG1ha2UgaW5zdGFs
bCBpZ25vcmVzIC0tcHJlZml4IG9wdGlvbiBmb3IgZ29iamVjdC1pbnRyb3NwZWN0aW9uLgogICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTAyNQoKICAgICAg
ICBNYWtlIHRoZSBidWlsZCBzeXN0ZW0gdXNlIHRoZSAtLXByZWZpeCBwYXRoIGFsc28gd2hlbiBp
bnN0YWxsaW5nCiAgICAgICAgZ29iamVjdC1pbnRyb3NwZWN0aW9uIGZpbGVzLgoKICAgICAgICAq
IGNvbmZpZ3VyZS5hYzogdXNlIC0tcHJlZml4IHBhdGggaW4gR0lURElSIGFuZCBHSVJUWVBFTElC
RElSCgoyMDA5LTExLTAyICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAg
QnVtcCB2ZXJzaW9uIGJlZm9yZSByZWxlYXNlIChvciBwb3N0LXJlbGVhc2UsIGRlcGVuZGluZyBv
biB5b3VyCiAgICAgICAgcG9pbnQgb2Ygdmlldykgc28gdGhhdCB3ZSBjYW4gbWFrZSBhcHBsaWNh
dGlvbnMgZGVwZW5kaW5nIG9uCiAgICAgICAgdW5yZWxlYXNlZCBBUElzIGluIFdlYktpdCBzdm4g
ZmFpbCBhdCBjb25maWd1cmUgdGltZSB3aGVuIHRoZQogICAgICAgIHJlcXVpcmVtZW50cyBhcmUg
bm90IG1ldC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTExLTAxICBMYXN6bG8gR29t
Ym9zICA8bGFzemxvLjEuZ29tYm9zQG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRXJp
YyBTZWlkZWwuCgogICAgICAgIFR1cm4gb24gd2FybmluZ3MgZm9yIFF0V2ViS2l0IGZvciBnY2MK
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzA5NTgKCiAg
ICAgICAgKiBXZWJLaXQucHJpOiBUdXJuIG9uIHdhcm5pbmdzIGZvciB0aGUgR0NDIGNvbXBpbGVy
CgoyMDA5LTEwLTMwICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CgogICAgICAgIFJl
dmlld2VkIGJ5IE1hcmsgUm93ZS4KCiAgICAgICAgVGVhY2ggZ2l0IHRvIGlnbm9yZSBzb21lIGZp
bGVzCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwOTUx
CgogICAgICAgIElnbm9yZSBXZWJLaXRCdWlsZCBiZWNhdXNlIHdlIG5ldmVyIHdhbnQgdG8gdmVy
c2lvbiB0aGF0IGRpcmVjdG9yeS4KICAgICAgICBBbHNvLCBpZ25vcmUgdGhlIHhjb2RlIHByb2pl
Y3QgZmlsZXMgc28gZ2l0IGNsZWFuIGRvZXNuJ3QgYmxvdyBhd2F5CiAgICAgICAgeW91ciBwcm9q
ZWN0IHNldHRpbmdzLiAgRmluYWxseSwgaWdub3JlIHRoZSBjb21waWxlZCBweXRob24gZmlsZXMg
aW4KICAgICAgICBXZWJLaXRUb29scy9TY3JpcHQgbW9kdWxlcyBiZWNhdXNlIHRoZXkgY2x1dHRl
ciB1cCBnaXQgc3RhdHVzLgoKICAgICAgICAqIC5naXRpZ25vcmU6IEFkZGVkLgoKMjAwOS0xMC0z
MCAgUm9sYW5kIFN0ZWluZXIgIDxyb2xhbmRzdGVpbmVyQGNocm9taXVtLm9yZz4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAgIFJlbW92ZSBFTkFCTEVfUlVCWSBndWFy
ZHMgYXMgZGlzY3Vzc2VkIHdpdGggRGF2ZSBIeWF0dCBhbmQgTWFjaWVqIFN0YWNob3dpYWsuCgog
ICAgICAgIEJ1ZyAyODQyMCAtICBJbXBsZW1lbnQgSFRNTDUgPHJ1Ynk+IHJlbmRlcmluZwogICAg
ICAgIChodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjg0MjApCgogICAg
ICAgIE5vIG5ldyB0ZXN0cyAobm8gZnVuY3Rpb25hbCBjaGFuZ2UpLgoKICAgICAgICAqIGNvbmZp
Z3VyZS5hYzoKCjIwMDktMTAtMjYgIEhvbGdlciBIYW5zIFBldGVyIEZyZXl0aGVyICA8emVja2VA
c2VsZmlzaC5vcmc+CgogICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IERhcmluIEFkbGVyLgoKICAg
ICAgICBFeHBvcnQgZmFzdE1hbGxvYywgZmFzdENhbGxvYywgZmFzdFJlYWxsb2MgYW5kIGZhc3RG
cmVlCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNzY5
CgogICAgICAgIEV4cG9ydCB0aGUgRmFzdE1hbGxvYyBmdW5jdGlvbnMgb3V0c2lkZSBvZiB0aGUg
bGlid2Via2l0IGxpYnJhcnkKICAgICAgICB0byBiZSBhYmxlIHRvIGluc3RydW1lbnQgbWVtb3J5
IGFsbG9jYXRpb25zLiBUaGVzZSBhcmUgQysrIHN5bWJvbHMKICAgICAgICBidXQgZG8gbm90IHJl
cXVpcmUgdGhlIEMrKyBydW50aW1lIHRvIGJlIHVzZWZ1bCBhbmQgc2hvdWxkIGJlIG9mCiAgICAg
ICAgbm8gaGFybSB0byBwbGFpbiBDIGNvZGUuCgogICAgICAgICogYXV0b3Rvb2xzL3N5bWJvbHMu
ZmlsdGVyOgoKMjAwOS0xMC0yNiAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3Jv
bmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSmFuIEFsb256by4KCiAg
ICAgICAgQWx0ZXJuYXRpdmUgc29sdXRpb24gdG8gcmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIHI0
ODY3Mi4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDktMTAtMjYgIFhhbiBMb3BleiAg
PHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEu
CgogICAgICAgIFVwZGF0ZSBmb3IgMS4xLjE2IHJlbGVhc2UuCgogICAgICAgICogY29uZmlndXJl
LmFjOgoKMjAwOS0xMC0yNCAgTGFzemxvIEdvbWJvcyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5j
b20+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAgW1F0XSBb
U3ltYmlhbl0gU2V0IHRoZSBjYXBhYmlsaXR5IGFuZCBtZW1vcnkgcmVxdWlyZWQgdG8gcnVuIFF0
V2ViS2l0IGZvciBTeW1iaWFuCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTMwNDc2CgogICAgICAgIFNldCB0aGUgc3RhY2sgc2l6ZSB0byA4MCBLYiBhbmQg
aGVhcCBzaXplIHRvIHRoZSAxMjhrQiAtIDMyTUIgcmFuZ2UKICAgICAgICB0byBhbGwgZXhlY3V0
YWJsZXMgbGlua2luZyBhZ2FpbnN0IFdlYktpdCBsaWJyYXJ5LgoKICAgICAgICAqIFdlYktpdC5w
cmk6CgoyMDA5LTEwLTE4ICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3Jn
PgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIFtHVEtdIEFk
ZCBNYXRoTUwgdG8gdGhlIGJ1aWxkIHN5c3RlbQogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0zMDQ4NwoKICAgICAgICBBZGQgLS1lbmFibGUtbWF0aG1sIHRv
IGNvbmZpZ3VyZS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTEwLTE1ICBKYW4gTWlj
aGFlbCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBY
YW4gTG9wZXouCgogICAgICAgIFtHVEtdIG1hcnNoYWwgc3RhbXAgZmlsZXMgYXJlIG5vdCBjbGVh
bmVkIGFmdGVyIGEgZGlzdGNsZWFuCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTMwMTU2CgogICAgICAgIEFkZCB0aGUgc3RhbXAgZmlsZXMgZGlyZWN0bHkg
dG8gY2xlYW5maWxlcy4gQWxzbyByZWFycmFuZ2UgdGhlCiAgICAgICAgdmFyaWFibGUgZGVjbGFy
YXRpb25zIHNvIHdlIGRvbid0IG1pc3MgYW55IGZpbGVzIHRoYXQgbmVlZCB0byBiZQogICAgICAg
IGNsZWFuZWQgdXAgZHVyaW5nIHRoZSBjbGVhbiB0YXJnZXRzLgoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOgoKMjAwOS0xMC0xNSAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3Jv
bmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgVW5yZXZpZXdlZC4gSGVscCB0ZXh0IGZpeCAt
IFdlYiBTb2NrZXRzIGRlZmF1bHQgaXMgbm8sIG5vdCB5ZXMuCgogICAgICAgICogY29uZmlndXJl
LmFjOgoKMjAwOS0xMC0xMiAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9y
Zz4KCiAgICAgICAgUnViYmVyc3RhbXBlZCBieSBFcmljIFNlaWRlbC4KCiAgICAgICAgW0d0a10g
Rml4IGljdSBDRkxBRyBmb3IgRGFyd2luCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI5NTE3CgogICAgICAgIERvbid0IGVzY2FwZSB0aGUgc3JjZGlyIHZh
cmlhYmxlLiBBbHNvIHVzZSAkaG9zdCBpbnN0ZWFkIG9mIHRoZQogICAgICAgIG9zX2ZvbyB2YXJp
YWJsZXMuCgogICAgICAgICogYXV0b3Rvb2xzL3dlYmtpdC5tNDoKCjIwMDktMTAtMTIgIEphbiBN
aWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5
IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgW0d0a10gVXNlIHRoZSBTUUxpdGUzIGhlYWRlcnMg
ZnJvbSBXZWJLaXRMaWJyYXJpZXMgaWYgc3FsaXRlMyBpcyB1bmRldGVjdGVkCiAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NTE4CgogICAgICAgICogY29u
ZmlndXJlLmFjOgoKMjAwOS0xMC0wNSAgWm9sdGFuIEhvcnZhdGggIDx6b2x0YW5Ad2Via2l0Lm9y
Zz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCgogICAgICAgIFtRdF0gRGlz
YWJsZSBUQ21hbGxvYyBmb3IgV2luZG93cyBwb3J0IGF0IHRoZSBwcmVzZW50LCBiZWNhdXNlIE1p
bkdXCiAgICAgICAgaGFzbid0IGdvdCBidWlsdC1pbiBwdGhyZWFkIGxpYnJhcnkuCgogICAgICAg
ICogV2ViS2l0LnByaToKCjIwMDktMTAtMDIgIFByYXNhbnRoIFVsbGF0dGlsICA8cHJhc2FudGgu
dWxsYXR0aWxAbm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4K
CiAgICAgICAgRGlzYWJsZSBhIGZldyBtb3JlIGhhcm1sZXNzIE1TVkMgd2FybmluZ3MuCgogICAg
ICAgICogV2ViS2l0LnByaToKCjIwMDktMTAtMDEgIExhc3psbyBHb21ib3MgIDxsYXN6bG8uMS5n
b21ib3NAbm9raWEuY29tPgoKICAgICAgICBVbnJldmlld2VkLCBidWlsZCBmaXguCgogICAgICAg
IFtRdF0gU3ltYmlhbiBidWlsZCBicmVhayBhZnRlciByNDg5NzYuCiAgICAgICAgdW5peCBpcyBz
ZXQgZm9yIFN5bWJpYW4gaW4gdGhlIFF0IGJ1aWxkIHN5c3RlbS4KCiAgICAgICAgKiBXZWJLaXQu
cHJpOgoKMjAwOS0xMC0wMSAgWm9sdGFuIEhvcnZhdGggIDx6b2x0YW5Ad2Via2l0Lm9yZz4KCiAg
ICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCgogICAgICAgIFtRdF0gRW5hYmxlIFRD
bWFsbG9jIGZvciB0aGUgTGludXgsIE1hYyBhbmQgV2luZG93cyBRdC1wb3J0CiAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3MDI5CgogICAgICAgIFJlbW92
ZSBVU0VfU1lTVEVNX01BTExPQyBmb3IgTGludXgsIE1hYyBhbmQgV2luZG93cyBRdC1wb3J0IGZy
b20gV2ViS2l0LnByaSwKICAgICAgICBzbyB0aGVzZSBRdC1wb3J0cyB3aWxsIHVzZSBUQ21hbGxv
YyBhcyBvdGhlciBwb3J0cy4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwOS0xMC0wMSAgTWFy
dGluIFJvYmluc29uICA8bWFydGluLmphbWVzLnJvYmluc29uQGdtYWlsLmNvbT4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBbR1RLXSBHdGtJTUNvbnRleHQgZmlsdGVy
aW5nIGludGVyZmVyZXMgd2l0aCBET00ga2V5IGV2ZW50cwogICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODczMwoKICAgICAgICBBZGQgbmV3IGtleSBldmVu
dCB0ZXN0IGVuc3VyaW5nIHRoYXQgSU1FIGtleXByZXNzZXMgYXJlIGhhbmRsZWQuCgogICAgICAg
ICogR05VbWFrZWZpbGUuYW06CgoyMDA5LTEwLTAxICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1h
bmRAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBb
R1RLXSBkYXRhOiB1cmkgc3VwcG9ydCBpbiBtZWRpYSBwbGF5ZXIKICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk4NDIKCiAgICAgICAgQ2hlY2sgcHJlc2Vu
Y2Ugb2YgZ3N0cmVhbWVyLXBidXRpbHMtMC4xMC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6Cgoy
MDA5LTA5LTI2ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CgogICAgICAgIEdU
SyBCVUlMRCBGSVg6IGFkZCBFTkFCTEVfT1JJRU5UQVRJT05fRVZFTlRTIHN1cHBvcnQgdG8gY29u
ZmlndXJlLmFjCgogICAgICAgICogY29uZmlndXJlLmFjOiBBZGRlZCBzdXBwb3J0IGZvciBFTkFC
TEVfT1JJRU5UQVRJT05fRVZFTlRTLgoKMjAwOS0wOS0yMyAgWGFuIExvcGV6ICA8eGxvcGV6QGln
YWxpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAg
RG8gbm90IGFkZCB1bm5lZWRlZCBpbmNsdWRlIHBhdGhzIGZvciBnaXIgZmlsZXMsIGFuZCBhZGQg
dGhlCiAgICAgICAgaW5jbHVkZSBwYXRocyBmb3IgaGVhZGVycyBtYW51YWxseSBpbnN0ZWFkIG9m
IHJlbHlpbmcgb24gb3VyIG93bgogICAgICAgIHBjIGZpbGUgYW5kIGluc3RhbGxlZCBoZWFkZXJz
LCBzaW5jZSB0aGF0IGFkZHMgYSBjaXJjdWxhcgogICAgICAgIGRlcGVuZGVuY3kuCgogICAgICAg
ICogR05VbWFrZWZpbGUuYW06CgoyMDA5LTA5LTIzICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFs
b256b0B3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBYYW4gTG9wZXouCgogICAgICAg
IE1pbm9yIHJlb3JnYW5pemF0aW9uIHRvIHRoZSBwYXRjaCBsYW5kZWQgaW4KICAgICAgICBodHRw
Oi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC80ODY3MC4gQWxzbyBtb3ZlIEpTQ29yZS0xLjAu
Z2lyCiAgICAgICAgaW4gdGhlIGd0ayBkaXJlY3RvcnkgYXMgdGhhdCdzIG9ubHkgdXNlZnVsIHRv
IHRoZSBHdGsgcG9ydCBhdCB0aGUKICAgICAgICBtb21lbnQuCgogICAgICAgICogR05VbWFrZWZp
bGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTA5LTIzICBYYW4gTG9wZXogIDx4
bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoK
ICAgICAgICBbR1RLXSBXZSBzaG91bGQgZ2VuZXJhdGUgb3VyIG93biBnaXIgZmlsZSBmb3IgaW50
cm9zcGVjdGlvbgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yOTYwMwoKICAgICAgICBHZW5lcmF0ZSBnaXIgYW5kIHR5cGVsaWIgZmlsZXMgZm9yIFdlYktp
dCBhbmQgSlNDb3JlLiBUaGUgSlNDb3JlCiAgICAgICAgZ2lyIGZpbGUgaXMgaGFuZHdyaXR0ZW4g
KHNpbmNlIGl0J3Mgb25seSB1c2VmdWwsIGZvciBub3csIGFzIGEKICAgICAgICBkZXBlbmRlbmN5
IG9mIHRoZSBXZWJLaXQgZ2lyIGZpbGUpLCB0aGUgV2ViS2l0IG9uZSBpcwogICAgICAgIGF1dG9n
ZW5lcmF0ZWQgZnJvbSB0aGUgaGVhZGVycy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKICAg
ICAgICAqIEpTQ29yZS0xLjAuZ2lyOiBBZGRlZC4KICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIw
MDktMDktMjIgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgoKICAgICAg
ICBSZXZpZXdlZCBieSBYYW4gTG9wZXouCgogICAgICAgIGxpbmsgZXJyb3JzIGR1ZSB0byB3cm9u
ZyBVTklDT0RFX0xJQlMgb24gVWJ1bnR1IEphdW50eQogICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTYzOAoKICAgICAgICBDYWxsIGljdS1jY29uZmlnIHdp
dGggbGRmbGFncy1saWJzb25seSB0byBwcmV2ZW50IGhhdmluZyBhIC1MCiAgICAgICAgc3RhdGVt
ZW50IHRoYXQgY291bGQgb3ZlcnJpZGUgbGlicyBpbnN0YWxsZWQgaW4gYW5vdGhlciBwcmVmaXgu
CgogICAgICAgICogYXV0b3Rvb2xzL3dlYmtpdC5tNDoKCjIwMDktMDktMjEgIFhhbiBMb3BleiAg
PHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEu
CgogICAgICAgIEJ1bXAgdmVyc2lvbiBmb3IgMS4xLjE1IHJlbGVhc2UuCgogICAgICAgICogY29u
ZmlndXJlLmFjOgoKMjAwOS0wOS0xOCAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+Cgog
ICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYSBhbmQgSmFuIEFsb256by4KCiAgICAg
ICAgW0dUS10gY29udGV4dCBtZW51IG92ZXJyaWRpbmcgQVBJIGlzIHZlcnkgbGltaXRlZAogICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzU0NgoKICAgICAg
ICBBZGQgbmV3IHRlc3RzIHRvIHRoZSBidWlsZC4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToK
CjIwMDktMDktMTggIFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZp
ZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEgYW5kIEphbiBBbG9uem8uCgogICAgICAgIFtHVEtdIGNv
bnRleHQgbWVudSBvdmVycmlkaW5nIEFQSSBpcyB2ZXJ5IGxpbWl0ZWQKICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc1NDYKCiAgICAgICAgQWRkIFdlYktp
dEhpdFRlc3RSZXN1bHQgdG8gdGhlIGJ1aWxkLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoK
MjAwOS0wOS0xMCAgTGFzemxvIEdvbWJvcyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+Cgog
ICAgICAgIFJldmlld2VkIGJ5IEFyaXlhIEhpZGF5YXQuCgogICAgICAgIERpc2FibGUgc29tZSBB
Uk0gY29tcGlsZXIgd2FybmluZ3MKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjkwODMKCiAgICAgICAgVGhlIGZvbGxvd2luZyBBUk0gY29tcGlsZXIgd2Fy
bmluZ3MgYXJlIGRpc2FibGVkCgogICAgICAgIC0gIzY4LUQ6IGludGVnZXIgY29udmVyc2lvbiBy
ZXN1bHRlZCBpbiBhIGNoYW5nZSBvZiBzaWduCiAgICAgICAgLSAjMTExLUQ6IHN0YXRlbWVudCBp
cyB1bnJlYWNoYWJsZQogICAgICAgIC0gIzE3Ny1EOiB2YXJpYWJsZSBYWFggd2FzIGRlY2xhcmVk
IGJ1dCBuZXZlciByZWZlcmVuY2VkCiAgICAgICAgLSAjMzY4LUQ6IGNsYXNzIFhYWCBkZWZpbmVz
IG5vIGNvbnN0cnVjdG9yIHRvIGluaXRpYWxpemUgdGhlIGZvbGxvd2luZzogWVlZCiAgICAgICAg
LSAjODMwLUQ6IGZ1bmN0aW9uIFhYWCAiWFhYOjpvcGVyYXRvciBuZXciIGhhcyBubyBjb3JyZXNw
b25kaW5nIG9wZXJhdG9yIGRlbGV0ZQogICAgICAgIC0gIzEyOTMtRDogYXNzaWdubWVudCBpbiBj
b25kaXRpb24KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwOS0wOS0wOSAgS2VubmV0aCBSb2hk
ZSBDaHJpc3RpYW5zZW4gIDxrZW5uZXRoQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5
IFNpbW9uIEhhdXNtYW5uLgoKICAgICAgICBbUXRdIEFkZCB0aGUgYWx0ZXJuYXRpdmUgUXRMYXVu
Y2hlciAoYmFzZWQgb24gUUdyYXBoaWNzVmlldykgdG8gdGhlIGJ1aWxkLgoKICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjg4NjIKCiAgICAgICAgKiBXZWJL
aXQucHJvOgoKMjAwOS0wOS0wNyAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAg
ICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgQnVtcCB2ZXJz
aW9ucyBpbiBwcmVwYXJhdGlvbiBmb3IgMS4xLjE0IHJlbGVhc2UuCgogICAgICAgICogY29uZmln
dXJlLmFjOgoKMjAwOS0wOS0wNyAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3Jv
bmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjY4NTQKICAgICAg
ICBbR1RLXSBOZWVkcyBBUEkgdG8gYWxsb3cgbW9yZSBjb250cm9sIG92ZXIgb3V0Z29pbmcgcmVx
dWVzdHMKCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogbmV3IGZpbGVzIGFkZGVkIHRvIHRoZSBi
dWlsZCBmb3IgbmV3IGNsYXNzCiAgICAgICAgV2ViS2l0TmV0d29ya1Jlc3BvbnNlCgoyMDA5LTA5
LTA2ICBNYXJ0aW4gUm9iaW5zb24gIDxtYXJ0aW4uamFtZXMucm9iaW5zb25AZ21haWwuY29tPgoK
ICAgICAgICBSZXZpZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEsIEphbiBBbG9uem8gYW5kIFhhbiBM
b3Blei4KCiAgICAgICAgW0d0a10gRXhwb3NlIGEgZGF0YWJhc2UgQVBJCiAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3ODk5CgogICAgICAgIEV4cG9zZSBh
biBIVE1MNSBkYXRhYmFzZSBBUEkgZm9yIEdUSysuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06
CgoyMDA5LTA5LTA0ICBBbGJlcnQgQmFjaGFuZCAgPGFsYmVydGJAZ29vZ2xlLmNvbT4KCiAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAgIE1vZGlmeSB0aGUgY29uZGl0aW9u
IHJlZ2FyZGluZyB0aGUga2V5IG1vZGlmaWVyIGZvciBvcGVuaW5nIGNvbWJvCiAgICAgICAgYm94
ZXMgdW5kZXIgR1RLIGZyb20ganVzdCBQTEFURk9STShHVEspIHRvIGFsc28gbG9vayBmb3IKICAg
ICAgICAoUExBVEZPUk0oQ0hST01JVU0pICYmIFBMQVRGT1JNKExJTlVYKSkuCgogICAgICAgICog
V2ViQ29yZS9kb20vU2VsZWN0RWxlbWVudC5jcHA6CiAgICAgICAgKiBXZWJDb3JlL21hbnVhbC10
ZXN0cy9zZWxlY3QtcG9wdXAtb24tc3BhY2ViYXIuaHRtbDoKCjIwMDktMDktMDIgIEphbiBNaWNo
YWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IFhh
biBMb3BleiBhbmQgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBbR3RrXSBJbXBsZW1lbnQgYSBX
ZWJEYXRhU291cmNlIGZvciB0aGUgZ3RrIHBvcnQKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQ3NTgKCiAgICAgICAgQWRkIFdlYktpdFdlYkRhdGFTb3Vy
Y2UgdW5pdCB0ZXN0IHRvIHRoZSBidWlsZCBzY3JpcHQKCiAgICAgICAgKiBHTlVtYWtlZmlsZS5h
bToKCjIwMDktMDktMDIgIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+
CgogICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3BleiBhbmQgR3VzdGF2byBOb3JvbmhhLgoKICAg
ICAgICBbR3RrXSBJbXBsZW1lbnQgYSBXZWJEYXRhU291cmNlIGZvciB0aGUgZ3RrIHBvcnQKICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQ3NTgKCiAgICAg
ICAgQWRkIFdlYktpdFdlYkRhdGFTb3VyY2UgYW5kIERvY3VtZW50TG9hZGVyR3RrIHRvIHRoZSBi
dWlsZCBzY3JpcHQuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA5LTA5LTAxICBKYW4g
TWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBi
eSBYYW4gTG9wZXogYW5kIEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgW0d0a10gSW1wbGVtZW50
IGEgV2ViRGF0YVNvdXJjZSBmb3IgdGhlIGd0ayBwb3J0CiAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI0NzU4CgogICAgICAgIEFkZCBXZWJLaXRXZWJSZXNv
dXJjZSB0byB0aGUgYnVpbGQgc2NyaXB0LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAw
OS0wOC0yOCAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAg
ICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCgogICAgICAgIEd0ayBCdWlsZCBicm9rZW4gZm9y
IE9TWCBRdWFydHoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9Mjg3MjcKCiAgICAgICAgRGVmaW5lIFhQX1VOSVggZm9yIG5vbi1XaW4gT1MgYnVpbGRzLgoK
ICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wOC0yOCAgR3VzdGF2byBOb3JvbmhhIFNp
bHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQg
YnkgSG9sZ2VyIEZyZXl0aGVyLgoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjU4ODkKICAgICAgICBbR1RLXSBzY3JvbGxiYXIgcG9saWN5IGZvciBtYWlu
IGZyYW1lIGlzIG5vdCBpbXBsZW1lbnRhYmxlCgogICAgICAgIEFkZGluZyBmaWxlcyBmb3IgdGhl
IG5ldyB0ZXN0IGZvciB3aW5kb3ctcmVsYXRlZCBpc3N1ZXMgKHN0YXJ0aW5nCiAgICAgICAgd2l0
aCBzY3JvbGxiYXIgcG9saWN5KS4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDktMDgt
MjcgIFByaWl0IExhZXMgIDxwbGFlc0BwbGFlcy5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IFhh
biBMb3Blei4KCiAgICAgICAgW0dUS10gT3V0LW9mLXNyY2RpciBidWlsZCBwcm9ibGVtCiAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4NzQxCgogICAgICAg
ICogR05VbWFrZWZpbGUuYW0sIGF1dG90b29scy93ZWJraXQubTQ6CiAgICAgICAgRml4IHByb2Js
ZW0gd2l0aCBvdXQtb2Ytc3JjZGlyIGJ1aWxkcy4gQWxzbyBidW1wIHJlcXVpcmVkIGdsaWIgdmVy
c2lvbi4KCjIwMDktMDgtMjQgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGd1c3Rhdm8ubm9yb25o
YUBjb2xsYWJvcmEuY28udWs+CgogICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3Blei4KCiAgICAg
ICAgQnVtcCBwYWNrYWdlIGFuZCBzbyB2ZXJzaW9ucyBmb3IgMS4xLjEzIHJlbGVhc2UuCgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wOC0yMiBKYXZpZXIgSmFyZMOzbiA8amF2aWVyamMx
OTgyQGdtYWlsLmNvbT4KCiAgICAgICAgW0dUS10gTm90IHVzZSBkZXByZWNhdGVkIHN5bWJvbHMg
aW4gV2ViS2l0V2ViVmlldyBleGFtcGxlIGNvZGUuCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTI4NjUxCgogICAgICAgICogV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vidmlldy5jcHAKCjIwMDktMDgtMTggIFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEu
Y29tPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAg
IFJlcXVpcmUgYXQgbGVhc3QgbGlic291cCAyLjI3LjkxIGZvciB0aGUgbmV3IHBhc3N3b3JkCiAg
ICAgICAgbWFuYWdlci9hdXRoZW50aWNhdGlvbiBBUElzLgoKICAgICAgICAqIGNvbmZpZ3VyZS5h
YzoKCjIwMDktMDgtMTggIERyZXcgV2lsc29uICA8YXR3aWxzb25AZ29vZ2xlLmNvbT4KCiAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChCdWlsZCBCcmVhaykuCgogICAgICAgIFNwZWN1bGF0aXZl
IGZpeCBmb3IgR1RLIER1bXBSZW5kZXJUcmVlLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoK
MjAwOS0wOC0xOCAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CgogICAgICAgIFJl
dmlld2VkIGJ5IEVyaWMgU2VpZGVsLgoKICAgICAgICBBZGQgLS1lbmFibGUtZGF0YWxpc3Qgb3B0
aW9uLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMDgtMTQgIEFkYW0gQmVyZ2t2aXN0
ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24uY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTYW0g
V2VpbmlnLgoKICAgICAgICBbR1RLXSBBZGRlZCBFdmVudFNvdXJjZSB0byB0aGUgYnVpbGQgKGRl
ZmF1bHQgb24pLgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNDk5NyAKCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTA4LTE0ICBKYW4gTWljaGFl
bCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3JnPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBi
eSBHdXN0YXZvIE5vcm9uaGEuCgogICAgICAgIEluaXRpYWxpemUgQ0ZMQUdTIGFuZCBDWFhGTEFH
UyBiZWZvcmUgdGhlIG1haW4gYm9keSBvZiB0aGUKICAgICAgICBXRUJLSVRfSU5JVCBtYWNybyBz
byBDIGZpbGVzIGRvbid0IGdldCBidWlsdCB3aXRoICItZyAtTzIiLgoKICAgICAgICAqIGF1dG90
b29scy93ZWJraXQubTQ6CgoyMDA5LTA4LTEyICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNv
bT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSmFuIEFsb256by4KCiAgICAgICAgW0dUS10gUmVtb3Zl
IGtleXJpbmcgb3B0aW9uYWwgZmVhdHVyZXMKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjgxNzMKCiAgICAgICAgUmVtb3ZlIGtleXJpbmcgc3VwcG9ydCwg
d2Ugbm93IGRvIGF1dGhlbnRpY2F0aW9uIHN0b3JhZ2UgdGhyb3VnaAogICAgICAgIGxpYnNvdXAu
IFdlIGRlcGVuZCBvbiBsaWJzb3VwIG1hc3RlciBub3csIHdpbGwgYnVtcCB0aGUgZGVwZW5kZW5j
eQogICAgICAgIHdoZW4gdGhlcmUncyBhIG5ldyByZWxlYXNlLgoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wOC0xMSAgRHJldyBXaWxzb24g
IDxhdHdpbHNvbkBnb29nbGUuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKEJ1aWxk
IGJyZWFrKS4KCiAgICAgICAgU3BlY3VsYXRpdmUgZml4IGZvciBHVEsgYnVpbGQgYnJlYWsuCgog
ICAgICAgICogV2ViS2l0LnBybzoKCjIwMDktMDgtMTEgIFRvciBBcm5lIFZlc3Riw7ggIDx0b3Iu
YXJuZS52ZXN0Ym9Abm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFu
bi4KCiAgICAgICAgQnVpbGQgdGhlIFRlc3ROZXRzY2FwZVBsdWdpbiBvbiBRdC9NYWMKCiAgICAg
ICAgKiBXZWJLaXQucHJvOgoKMjAwOS0wOC0xMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5j
b20+CgogICAgICAgIFJldmlld2VkIGJ5IEphbiBBbG9uem8uCgogICAgICAgIFByZWZpeCBsZW5n
dGh5IGNvbW1hbmRzIHdpdGggQU1fVl9HRU4gc28gdGhhdCB0aGV5IHByb2R1Y2UgYW4KICAgICAg
ICBvdXRwdXQgbGlrZSAnR0VOIDxmaWxlbmFtZT4nIHdoZW4gaW4gc2lsZW50IG1vZGUuCgogICAg
ICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA5LTA4LTA1ICBKYW4gTWljaGFlbCBBbG9uem8gIDxq
bWFsb256b0B3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBYYW4gTG9wZXouCgogICAg
ICAgIFtHdGtdIG1hY3JvcyBpbiB3ZWJraXQubTQgc2hvdWxkIGJlIGRlZmluZWQgb25jZSBvbmx5
CiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3OTI5Cgog
ICAgICAgIFRoZSBtYWNyb3MgaW4gd2Via2l0Lm00IGFyZSBub3QgbWVhbnQgdG8gYmUgY2FsbGVk
IG11bHRpcGxlIHRpbWVzCiAgICAgICAgc28gd2UnbGwgbWFrZSB0aGVtIEFDX0RFRlVOX09OQ0Uu
IEFsc28gbWFrZSBBQ19IRUFERVJfU1REQyBhbmQgQUNfUFJPR19DWFgKICAgICAgICBBQ19SRVFV
SVJFIHRvIHJlbW92ZSB0aGUgYXV0b21ha2Ugd2FybmluZ3Mgd2hlbiBkb2luZyBhdXRvZ2VuLnNo
LgoKICAgICAgICBMYXN0bHksIG1ha2Ugc3VyZSBDWFhGTEFHUyBhbmQgQ0ZMQUdTIGFyZSBkZWZp
bmVkIGJlZm9yZQogICAgICAgIEFDX1BST0dfQ1hYIGdldHMgZXhwYW5kZWQgc28gaXQgZG9lc24n
dCBhZGQgIi1nIC1PMiIgb24gUmVsZWFzZSBidWlsZHMuCgogICAgICAgICogYXV0b3Rvb2xzL3dl
YmtpdC5tNDoKCjIwMDktMDgtMDUgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAg
ICAgICBSZXZlcnQgcjQ2NzE0LCBpdCB3YXMgbWFraW5nIHVzIGJ1aWxkIGRlYnVnIGltYWdlcyBi
eSBkZWZhdWx0LgoKICAgICAgICAqIGF1dG90b29scy93ZWJraXQubTQ6CgoyMDA5LTA4LTAzICBM
YXN6bG8gR29tYm9zICA8bGFzemxvLjEuZ29tYm9zQG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAgIFtRdF0gQ29uc29saWRhdGUgY29tbW9uIGdjYyBm
bGFncyB0byBXZWJLaXQucHJpCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTI3OTM0CgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDktMDgtMDMgIEphbiBN
aWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+CgogICAgICAgIFJ1YmJlci1zdGFt
cGVkIGJ5IEVyaWMgU2VpZGVsLgoKICAgICAgICBbR3RrXSBtYWNyb3MgaW4gd2Via2l0Lm00IHNo
b3VsZCBiZSBkZWZpbmVkIG9uY2Ugb25seQogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yNzkyOQoKICAgICAgICBUaGUgbWFjcm9zIGluIHdlYmtpdC5tNCBh
cmUgbm90IG1lYW50IHRvIGJlIGNhbGxlZCBtdWx0aXBsZSB0aW1lcwogICAgICAgIHNvIHdlJ2xs
IG1ha2UgdGhlbSBBQ19ERUZVTl9PTkNFLiBBbHNvIG1ha2UgQUNfSEVBREVSX1NUREMgYW5kIEFD
X1BST0dfQ1hYCiAgICAgICAgQUNfUkVRVUlSRSB0byByZW1vdmUgdGhlIGF1dG9tYWtlIHdhcm5p
bmdzIHdoZW4gZG9pbmcgYXV0b2dlbi5zaC4KCiAgICAgICAgKiBhdXRvdG9vbHMvd2Via2l0Lm00
OgoKMjAwOS0wNy0yOSAgQXJpeWEgSGlkYXlhdCAgPGFyaXlhLmhpZGF5YXRAbm9raWEuY29tPgoK
ICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KCiAgICAgICAgQWRkaW5nIEltYWdl
RGlmZiBwcm9qZWN0IGZpbGUuCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yNzgxMwoKICAgICAgICAqIFdlYktpdC5wcm86IEFkZGVkIEltYWdlRGlmZi5w
cm8uCgoyMDA5LTA3LTI5ICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3Jn
PgoKICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbCBhbmQgWGFuIExvcGV6LgoKICAgICAg
ICBbR3RrXSBFbmFibGUgaHR0cC90ZXN0cy9hcHBjYWNoZSB0ZXN0cwogICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzY3NAoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOiBBZGQgd2Via2l0L3dlYmtpdGFwcGxpY2F0aW9uY2FjaGUuY3BwCgoyMDA5LTA3LTI4
ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR3Vz
dGF2byBOb3JvbmhhLgoKICAgICAgICBVc2UgYXV0b21ha2UgMS4xMSBTSUxFTlRfUlVMRVMgd2hl
biBwcmVzZW50LCBmb3IgY2xlYW5lciBidWlsZAogICAgICAgIG91dHB1dC4gWW91IGNhbiBkaXNh
YmxlIGl0IGJ5IHBhc3NpbmcgLS1kaXNhYmxlLXNpbGVudC1ydWxlcyB0bwogICAgICAgIGNvbmZp
Z3VyZSBvciBWPTEgdG8gbWFrZS4KCiAgICAgICAgKiBhdXRvdG9vbHMvZG9sdC5tNDoKICAgICAg
ICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMDctMjggIExhc3psbyBHb21ib3MgIDxsYXN6bG8uMS5n
b21ib3NAbm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KCiAg
ICAgICAgW1F0XSBEaXNhYmxlIHNvbWUgY29tcGlsZXIgd2FybmluZ3MgZm9yIHRoZSB3aW4gYnVp
bGQKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc3MDkK
CiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwOS0wNy0yOCAgWGFuIExvcGV6ICA8eGxvcGV6QGln
YWxpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAg
KiBjb25maWd1cmUuYWM6IGJ1bXAgdmVyc2lvbiBmb3IgMS4xLjEyIHJlbGVhc2UuCgoyMDA5LTA3
LTI0ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
R3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBSZW1vdmUgdW5uZWVkZWQgY29tbWFzIGZyb20gUEtH
X0NIRUNLX01PRFVMRVMuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNy0yNCAgSmFu
IE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQg
YnkgWGFuIExvcGV6LgoKICAgICAgICBCdW1wIHBhbmdvIHZlcnNpb24gcmVxdWlyZW1lbnQgdG8g
MS4xMiB3aGljaCBpcyB0aGUgdmVyc2lvbiB0aGF0CiAgICAgICAgY2FtZSB3aXRoIEd0ayAyLjEw
LgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMDctMjEgIFJvbGFuZCBTdGVpbmVyICA8
cm9sYW5kc3RlaW5lckBnb29nbGUuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZp
bi4KCiAgICAgICAgQWRkIEVOQUJMRV9SVUJZIHRvIGxpc3Qgb2YgYnVpbGQgb3B0aW9ucwogICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzMyNAoKICAgICAg
ICAqIGNvbmZpZ3VyZS5hYzogQWRkZWQgZmxhZyBFTkFCTEVfUlVCWS4KCjIwMDktMDctMjAgIExh
c3psbyBHb21ib3MgIDxsYXN6bG8uMS5nb21ib3NAbm9raWEuY29tPgoKICAgICAgICBSZXZpZXdl
ZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIFtRdF0gQWRkIGFuIG9wdGlvbiBmb3IgUXRM
YXVuY2hlciB0byBidWlsZCB3aXRob3V0IFF0VWlUb29scyBkZXBlbmRlbmN5CiAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3NDM4CgogICAgICAgIEJhc2Vk
IG9uIE5vcmJlcnQgTGVzZXIncyB3b3JrLgoKICAgICAgICAqIFdlYktpdC5wcmk6IFN5bWJpYW4g
ZG9lcyBub3QgaGF2ZSBVaVRvb2xzCgoyMDA5LTA3LTE2ICBGdW1pdG9zaGkgVWthaSAgPHVrYWlA
Y2hyb21pdW0ub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KCiAgICAgICAg
QWRkIC0td2ViLXNvY2tldHMgZmxhZyBhbmQgRU5BQkxFX1dFQl9TT0NLRVRTIGRlZmluZS4KICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjcyMDYKCiAgICAg
ICAgQWRkIC0tZW5hYmxlLXdlYi1zb2NrZXRzIGluIGNvbmZpZ3VyZS5hYwoKICAgICAgICAqIGNv
bmZpZ3VyZS5hYzoKCjIwMDktMDctMTYgIExhc3psbyBHb21ib3MgIDxsYXN6bG8uMS5nb21ib3NA
bm9raWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KCiAgICAgICAg
W1F0XSBFbmFibGUgR05VIGNvbXBpbGVyIGV4dGVuc2lvbnMgdG8gdGhlIEFSTSBjb21waWxlciAK
ICAgICAgICBmb3IgYWxsIFF0IHBvcnRzIHVzaW5nIFJWQ1QKICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjczNDgKCiAgICAgICAgKiBXZWJLaXQucHJpOgoK
MjAwOS0wNy0xNSAgVG9yIEFybmUgVmVzdGLDuCAgPHRvci5hcm5lLnZlc3Rib0Bub2tpYS5jb20+
CgogICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IFNpbW9uIEhhdXNtYW5uLgoKICAgICAgICBGaXgg
dGhlIFF0L01hYyBidWlsZCBieSBkaXNhYmxpbmcgVGVzdE5ldHNjYXBlUGx1Z2luCgogICAgICAg
IFdlIHNob3VsZCBmaXggYW5kIGVuYWJsZSB0aGlzIG9uY2Ugd2UgcnVuIERSVCBmb3IgUXQvTWFj
CgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMDktMDctMTMgIEd1c3Rhdm8gTm9yb25oYSBTaWx2
YSAgPGd1c3Rhdm8ubm9yb25oYUBjb2xsYWJvcmEuY28udWs+CgogICAgICAgIFVucmV2aWV3ZWQg
YnVpbGQgZml4LiBSZXF1aXJlIHRoZSBjb3JyZWN0IGxpYnNvdXAgdmVyc2lvbiBub3cgdGhhdAog
ICAgICAgIGl0J3MgcmVsZWFzZWQuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNy0x
MyAgTGFzemxvIEdvbWJvcyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+CgogICAgICAgIFJl
dmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCgogICAgICAgIFtRdF0gQnVpbGQgZml4IGZvciBR
dFdlYktpdCBvbiBXaW4KICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjcyMDUKCiAgICAgICAgKiBXZWJLaXQucHJpOiBJbmNsdWRlIHRoZSBtYWpvciB2ZXJz
aW9uIG51bWJlciBpbiB0aGUgUXRXZWJLaXQKICAgICAgICBsaWJyYXJ5IGZpbGUgZm9yIFdpbi4K
CjIwMDktMDctMTMgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9raWEuY29tPgoK
ICAgICAgICBSZXZpZXdlZCBieSBBcml5YSBIaWRheWF0LgoKICAgICAgICBBZGQgdGhlIHRlc3Qg
bmV0c2NhcGUgcGx1Z2luIGZvciB0aGUgUXQgRFJUIHRvIHRoZSBidWlsZC4KCiAgICAgICAgKiBX
ZWJLaXQucHJvOgoKMjAwOS0wNy0xMyAgRHJldyBXaWxzb24gIDxhdHdpbHNvbkBnb29nbGUuY29t
PgoKICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KCiAgICAgICAgQWRkIEVOQUJMRShT
SEFSRURfV09SS0VSUykgZmxhZyBhbmQgZGVmaW5lIFNoYXJlZFdvcmtlciBBUElzCiAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2OTMyCgogICAgICAgIEFk
ZGVkIEVOQUJMRShTSEFSRURfV09SS0VSUykgZmxhZy4KCiAgICAgICAqIGNvbmZpZ3VyZS5hYzoK
CjIwMDktMDctMTIgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZp
ZXdlZCBieSBHdXN0YXZvIE5vcm9uaGEuCgogICAgICAgIEJ1bXAgdmVyc2lvbiBpbiBwcmVwYXJh
dGlvbiBmb3IgMS4xLjExIHJlbGVhc2UuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0w
Ny0wNyAgTm9yYmVydCBMZXNlciAgPG5vcmJlcnQubGVzZXJAbm9raWEuY29tPgoKICAgICAgICBS
ZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KCiAgICAgICAgRXhjbHVkZSBEdW1wUmVuZGVyVHJl
ZS5wcm8gZnJvbSBzeW1iaWFuIGJ1aWxkCgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMDktMDct
MDkgIERyZXcgV2lsc29uICA8YXR3aWxzb25AZ29vZ2xlLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQg
YnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI2OTAzCgogICAgICAgIFR1cm5lZCBvbiBDSEFOTkVMX01FU1NBR0lO
RyBieSBkZWZhdWx0IGJlY2F1c2UgdGhlIE1lc3NhZ2VDaGFubmVsIEFQSQogICAgICAgIGNhbiBu
b3cgYmUgaW1wbGVtZW50ZWQgZm9yIFdlYiBXb3JrZXJzIGFuZCBpcyByZWFzb25hYmx5IHN0YWJs
ZS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6IGVuYWJsZSBDSEFOTkVMX01FU1NBR0lORy4KCjIw
MDktMDctMDMgIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+CgogICAg
ICAgIFJldmlld2VkIGJ5IFhhbiBMb3BleiBhbmQgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBT
ZXQgdXNlci1hZ2VudCBmcm9tIGFwcGxpY2F0aW9uCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE3Mzc1CgogICAgICAgIERlZmluZSBVQSB2ZXJzaW9uIG1h
Y3JvcyB0byBiZSB1c2VkIGJ5IHRoZSBVQSBzdHJpbmcuCiAgICAgICAgQWRkIG5ldyBXZWJTZXR0
aW5ncyB1bml0IHRlc3QgZm9yIHRoZSBVc2VyLUFnZW50IHN0cmluZyBBUEkuCgogICAgICAgICog
R05VbWFrZWZpbGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTA2LTIwICBHdXN0
YXZvIE5vcm9uaGEgU2lsdmEgIDxnbnNAZ25vbWUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBK
YW4gQWxvbnpvLgoKICAgICAgICBBZGRpbmcgZmlsZXMgZm9yIHRoZSBuZXcgdGVzdCBjYXNlIGZv
ciBsb2FkaW5nIHN0YXR1c2VzLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wNi0x
NSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEd1
c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgVmVyc2lvbiBidW1wIGluIHByZXBhcmF0aW9uIGZvciAx
LjEuMTAgcmVsZWFzZS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTA2LTEyICBUb3Ig
QXJuZSBWZXN0YsO4ICA8dG9yLmFybmUudmVzdGJvQG5va2lhLmNvbT4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBSZWZhY3RvciBoYW5kbGluZyBvZiBvcHRpb25zIGlu
IHRoZSBidWlsZC13ZWJraXQgc2NyaXB0CiAgICAgICAgCiAgICAgICAgT3B0aW9ucyBhcmUgbm93
IGRlZmluZWQgaW4gb25lIHBsYWNlLCBhbmQgdGhlbiByZXVzZWQgd2hlbiBjcmVhdGluZwogICAg
ICAgIHRoZSB1c2FnZSBoZWxwIHRleHQsIHRoZSBhcmd1bWVudHMgdG8gR2V0T3B0aW9ucygpLCBh
bmQgd2hlbiBwYXNzaW5nCiAgICAgICAgdGhlIG9wdGlvbnMgb24gdG8gdGhlIHVuZGVybHlpbmcg
cG9ydC1kZXBlbmRlbnQgYnVpbGQgc3lzdGVtcy4KICAgICAgICAKICAgICAgICBUaGlzIGFsbG93
cyB0aGUgUXQgcG9ydCB0byByZWFkIHRoZSBkZWZhdWx0cyBmb3IgdGhlIG9wdGlvbnMgZnJvbSB0
aGUKICAgICAgICBwcm8gZmlsZSAoZHluYW1pY2FsbHkpLCBhbmQgdG8gcGFzcyB0aGUgb3B0aW9u
cyBvbiB0byBxbWFrZSBhdCBidWlsZC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTA2
LTExICBMYXN6bG8gR29tYm9zICA8bGFzemxvLjEuZ29tYm9zQG5va2lhLmNvbT4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyLgoKICAgICAgICBbUXRdIEZpeCByZWxlYXNlIGJ1
aWxkIGRldGVjdGlvbgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yNjI2NwoKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDA5LTA2LTEwICBHdXN0YXZvIE5v
cm9uaGEgU2lsdmEgIDxnbnNAZ25vbWUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBYYW4gTG9w
ZXouCgogICAgICAgIEFkZCB1bml0IHRlc3RzIGZvciBvdXIgV2ViS2l0TmV0d29ya1JlcXVlc3Qg
b2JqZWN0LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wNi0xMCAgWGFuIExvcGV6
ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25o
YS4KCiAgICAgICAgVmVyc2lvbiBidW1wIGluIHByZXBhcmF0aW9uIGZvciAxLjEuOSByZWxlYXNl
LgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMDYtMTAgIFhhbiBMb3BleiAgPHhsb3Bl
ekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBKYW4gQWxvbnpvLgoKICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjU0MTUKICAgICAgICBbR1RL
XVtBVEtdIFBsZWFzZSBpbXBsZW1lbnQgc3VwcG9ydCBmb3IgZ2V0X3RleHRfYXRfb2Zmc2V0Cgog
ICAgICAgIEFkZCBuZXcgZGVwZW5kZW5jeSBvbiB0aGUgR2FpbCB1dGlscyBsaWJyYXJ5LCBuZWVk
ZWQgZm9yIG91ciBhMTF5CiAgICAgICAgaW1wbGVtZW50YXRpb24uCgogICAgICAgICogR05VbWFr
ZWZpbGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTA1LTI5ICBHdXN0YXZvIE5v
cm9uaGEgU2lsdmEgIDxnbnNAZ25vbWUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBKYW4gQWxv
bnpvLgoKICAgICAgICBBZGQgYSB0ZXN0LWNhc2UgZm9yIG91ciBIVFRQIGJhY2tlbmQsIGN1cnJl
bnRseSBjaGVja2luZyB0aGUKICAgICAgICByZWYtY291bnRpbmcgb2YgdGhlIFNvdXBNZXNzYWdl
LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wNS0yOCAgRGlyayBTY2h1bHplICA8
a3JpdEB3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBOaWtvbGFzIFppbW1lcm1hbm4u
CgogICAgICAgIEVuYWJsZSB0aGUgbmV3IGJ1aWxkIGZsYWcgLS1maWx0ZXJzIGZvciBHdGsuIE1v
cmUgZGV0YWlscyBpbiBXZWJDb3JlL0NoYW5nZUxvZy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6
CgoyMDA5LTA1LTE5ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgUmV2
aWV3ZWQgYnkgSmFuIEFsb256byBhbmQgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjU0MTUKICAgICAgICBbR1RLXVtBVEtd
IFBsZWFzZSBpbXBsZW1lbnQgc3VwcG9ydCBmb3IgZ2V0X3RleHRfYXRfb2Zmc2V0CgogICAgICAg
IEFkZCBuZXcgdGVzdCBmaWxlIGZvciBBVEsuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06Cgoy
MDA5LTA1LTI4ICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxndXN0YXZvLm5vcm9uaGFAY29sbGFi
b3JhLmNvLnVrPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBYYW4gTG9wZXouCgogICAgICAg
IEZpeCB3ZWJraXRndGtfY2xlYW5maWxlcyB0byBjbGVhbiBndGstZG9jLXJlbGF0ZWQgZmlsZXMg
aW4gdGhlCiAgICAgICAgY29ycmVjdCBkaXJlY3RvcnksIHNvIHRoYXQgd2UgcGFzcyBtYWtlIGRp
c3RjaGVjay4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDktMDUtMjggIFhhbiBMb3Bl
eiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBCdW1wIHZlcnNpb24gbnVtYmVycyBpbiBw
cmVwYXJhdGlvbiBmb3IgMS4xLjggcmVsZWFzZS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6Cgoy
MDA5LTA1LTIzICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3JnPgoKICAg
ICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeC4gQWRkIGdzdHJlYW1lci12aWRlby0wLjEwIGxpYnMg
dG8KICAgICAgICBHU1RSRUFNRVJfTElCUyB0byByZXNvbHZlIGFuIHVuZGVmaW5lZCByZWZlcmVu
Y2UgdG8gZ3N0X3ZpZGVvX2dldF9zaXplCiAgICAgICAgLSBzeW1ib2wgdXNlZCBpbiBNZWRpYVBs
YXllclByaXZhdGVHc3RyZWFtZXIuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNS0y
MyAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2
aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBbR3RrXSBWYXJpb3VzIGF1dG90b29scyBidWls
ZCByZWZhY3RvcmluZyBhbmQgZml4ZXMKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjUyODYKCiAgICAgICAgUmVmYWN0b3IgbGlicmFyeSBMSUJTLiBNb3Zl
IHRoaXJkLXBhcnR5IGxpYnMgaW4gbGlid2Via2l0IGluc3RlYWQKICAgICAgICBvZiBsaWJXZWJD
b3JlLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wNS0yMiAgQW50b25pbyBHb21l
cyAgPGFudG9uaW8uZ29tZXNAb3BlbmJvc3NhLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR3Vz
dGF2byBOb3JvbmhhLgoKICAgICAgICBNYWtlIEd0ayBidWlsZCBub3QgYmFpbCBvdXQgaWYgZ3Rr
LWRvYy10b29scyBpcyBub3QgaW5zdGFsbGVkLgoKICAgICAgICBXYXJuaW5nIG1lc3NhZ2Ugc2hv
d24gaW5zdGVhZC4KCiAgICAgICAgKiBhdXRvZ2VuLnNoOgoKMjAwOS0wNS0yMiAgR3VzdGF2byBO
b3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBBZGQgYmlnIHdhcm5pbmdzIGFib3V0IHRo
ZSBnbGliIHVuaWNvZGUgYmFja2VuZCBiZWluZyBzbG93IGFuZAogICAgICAgIGluY29tcGxldGUs
IHNpbmNlIGl0IGlzIGEgd29yayBpbiBwcm9ncmVzcy4KCiAgICAgICAgKiBhdXRvdG9vbHMvd2Vi
a2l0Lm00OgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNS0yMiAgRG9taW5payBSw7Z0
dHNjaGVzICA8ZG9taW5pay5yb2V0dHNjaGVzQGFjY2Vzcy1jb21wYW55LmNvbT4KCiAgICAgICAg
UmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU5MTQKICAgICAgICBbR1RLXSBJbXBsZW1lbnQgVW5pY29k
ZSBmdW5jdGlvbmFsaXR5IHVzaW5nIEdMaWIKCiAgICAgICAgSW5pdGlhbCB2ZXJzaW9uIG9mIHRo
aXMgcGF0Y2ggYnkgSsO8cmcgQmlsbGV0ZXIuCgogICAgICAgIEFkZGluZyBvcHRpb25zIGZvciAt
LXdpdGgtdW5pY29kZS1iYWNrZW5kPWljdXxnbGliCiAgICAgICAgYW5kIGNoZWNraW5nIGZvciBw
YW5nbyB2ZXJzaW9uID49IDEuMjEuMCBpZiBHTGliIGJhY2tlbmQKICAgICAgICBpcyBzZWxlY3Rl
ZC4gVGVtcG9yYXJpbHksIHVudGlsIHJlbWFpbmluZyBwYXJ0cyBvZgogICAgICAgIHRoaXMgcGF0
Y2ggYXJlIGNvbW1pdHRlZCwgaW50cm9kdWNlIFdURl9VU0VfR0xJQl9JQ1VfVU5JQ09ERV9IWUJS
SUQKICAgICAgICBtYWNybyB0byBhbGxvdyBmb3IgYSBtaXhlZCBjb21waWxhdGlvbiB3aXRoIFdU
RiBVbmljb2RlCiAgICAgICAgYmFja2VuZCBiYXNlZCBvbiBHTGliIHdoaWxlIHRleHQgY29kZWNz
IGFuZCBUZXh0QnJlYWtJdGVyYXRvcgogICAgICAgIHJlbWFpbiBJQ1UgZGVwZW5kZW50LgoKICAg
ICAgICAqIEdOVW1ha2VmaWxlLmFtOgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNS0x
OCAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51
az4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR2F2aW4gQmFycmFjbG91Z2guCgogICAgICAgIEVuYWJs
ZSBZQVJSLCBhbmQgZGlzYWJsZSBXUkVDIGZvciBHVEsrLgoKICAgICAgICAqIGNvbmZpZ3VyZS5h
YzoKCjIwMDktMDUtMTggIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+
CgogICAgICAgICBSZXZpZXdlZCBieSBYYW4gTG9wZXouCgogICAgICAgICBbR3RrXSBWYXJpb3Vz
IGF1dG90b29scyBidWlsZCByZWZhY3RvcmluZyBhbmQgZml4ZXMKICAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1Mjg2CgogICAgICAgICBBZGQgc3VwcG9y
dCBmb3IgcnVubmluZyB1bml0IHRlc3RzLiBBbHNvIHJ1biB0aGUgdGVzdHMgd2hlbmV2ZXIKICAg
ICAgICAgdGhlICdjaGVjaycgdGFyZ2V0IHJ1bnMuCgogICAgICAgICAqIEdOVW1ha2VmaWxlLmFt
OgoKMjAwOS0wNS0xOCAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4K
CiAgICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3Blei4KCiAgICAgICAgIFtHdGtdIFZhcmlvdXMg
YXV0b3Rvb2xzIGJ1aWxkIHJlZmFjdG9yaW5nIGFuZCBmaXhlcwogICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjUyODYKCiAgICAgICAgIFN0eWxlIGZpeGVz
CgogICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wNS0xOCAgSmFuIE1pY2hhZWwgQWxv
bnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3Bl
ei4KCiAgICAgICAgIFtHdGtdIFZhcmlvdXMgYXV0b3Rvb2xzIGJ1aWxkIHJlZmFjdG9yaW5nIGFu
ZCBmaXhlcwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjUyODYKCiAgICAgICAgIEFkZCAtbm8taW5zdGFsbCBhbmQgLW5vLWZhc3QtaW5zdGFsbCB0byBw
cm9ncmFtcyBhbmQgdGVzdHMgdGhhdCB3ZQogICAgICAgICBkb24ndCBpbnN0YWxsLiBBbHNvIHJl
bW92ZSAtTzIgc2luY2UgdGhpcyBpcyBhbHJlYWR5IGhhbmRsZWQgYXQKICAgICAgICAgY29uZmln
dXJlIHRpbWUuCgogICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wNS0xNyAgSmFuIE1p
Y2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
WGFuIExvcGV6LgoKICAgICAgICBbR3RrXSBWYXJpb3VzIGF1dG90b29scyBidWlsZCByZWZhY3Rv
cmluZyBhbmQgZml4ZXMKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjUyODYKCiAgICAgICAgUmVmYWN0b3IgbGlicmFyeSBjZmxhZ3MKCiAgICAgICAgKiBH
TlVtYWtlZmlsZS5hbToKCjIwMDktMDUtMTUgIEZyaWRyaWNoIFN0cmJhICA8ZnJpZHJpY2guc3Ry
YmFAYmx1ZXdpbi5jaD4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSmFuIEFsb256by4KCiAgICAgICAg
VXNlIEFDX0NBTk9OSUNBTF9IT1NUIGluc3RlYWQgb2YgQUNfQ0FOT05JQ0FMX1NZU1RFTSwgc2lu
Y2UKICAgICAgICB0aGUgSklUIGNvbXBpbGVyIGlzIG5vdCBhIGNyb3NzLWNvbXBpbGVyCgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNS0xMyAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxp
YS5jb20+CgogICAgICAgIFVucmV2aWV3ZWQ6IGJ1bXAgdmVyc2lvbnMgaW4gcHJlcGFyYXRpb24g
Zm9yIDEuMS43IHJlbGVhc2UuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNS0xMyAg
WGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5
IEd1c3Rhdm8gTm9yb25oYS4KCiAgICAgICAgUmV2ZXJ0IGNvbW1pdCByNDM1NjMsIHNpbmNlIGl0
IGJyZWFrcyBXZWJLaXRHVEsrIHdoZW4gY29tcGlsZWQKICAgICAgICB3aXRoIGdjYyA0LjQuCgog
ICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA5LTA1LTEyICBKYW4gTWljaGFlbCBBbG9uem8g
IDxqbWFsb256b0B3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRo
ZXIuCgogICAgICAgIFtHdGtdIFZhcmlvdXMgYXV0b3Rvb2xzIGJ1aWxkIHJlZmFjdG9yaW5nIGFu
ZCBmaXhlcwogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
NTI4NgoKICAgICAgICBSZWZhY3RvciB1c2Ugb2YgQ0ZMQUdTLCBDWFhGTEFHUywgTElCQUREIGFu
ZCBMREZMQUdTLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wNS0wOSAgSmFuIE1p
Y2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
R3VzdGF2byBOb3JvbmhhLgoKICAgICAgICBXZWJLaXQtcjQzMTYzIHdvbid0IGJ1aWxkIGZvciBn
dGstZGlyZWN0ZmIKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjU1MzgKCiAgICAgICAgTW92ZSB0aGUgRU5DSEFOVCBjaGVjayBvdXQgb2YgdGhlIHdpdGhf
dGFyZ2V0IGNvbmRpdGlvbmFsIHNpbmNlIGl0CiAgICAgICAgYXBwbGllcyB0byBhbGwgdGFyZ2V0
cwoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMDUtMDkgIE1pa2UgSG9tbWV5ICA8Z2xh
bmRpdW1AZGViaWFuLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmZyZXkgR2FyZW4uIExh
bmRlZCBieSBKYW4gQWxvbnpvLgoKICAgICAgICBFbmFibGUgSklUIG9uIHg4Ni02NCBndGsrCiAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI0NzI0CgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNS0wOCAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8
Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWGFu
IExvcGV6LgoKICAgICAgICBTaGlwIHRoZSBndGstZG9jLm1ha2UgZmlsZSwgc28gYXMgdG8gbm90
IGRlcGVuZCBvbiBndGtkb2MtdG9vbHMuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CiAgICAg
ICAgKiBhdXRvZ2VuLnNoOgoKMjAwOS0wNS0wNiAgVG9yIEFybmUgVmVzdGLDuCAgPHRvci5hcm5l
LnZlc3Rib0Bub2tpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNtYW5uLgoK
ICAgICAgICBCdWlsZCBRdFdlYktpdCBhcyBhIGZyYW1ld29yayBvbiBNYWMKCiAgICAgICAgVGhp
cyBpbXBsaWVzIGJvdGggZGVidWcgYW5kIHJlbGVhc2UgYnVpbGQgYnkgZGVmYXVsdCwgdW5sZXNz
CiAgICAgICAgb25lIG9mIHRoZSAtLWRlYnVnIG9yIC0tcmVsZWFzZSBjb25maWcgb3B0aW9ucyBh
cmUgcGFzc2VkIHRvCiAgICAgICAgdGhlIGJ1aWxkLXdlYmtpdCBzY3JpcHQuCgogICAgICAgIEZy
YW1ld29ya3MgY2FuIGJlIGRpc2FibGVkIGJ5IHBhc3NpbmcgQ09ORklHKz13ZWJraXRfbm9fZnJh
bWV3b3JrCiAgICAgICAgdG8gdGhlIGJ1aWxkLXdlYmtpdCBzY3JpcHQuCgogICAgICAgIFRvIGJl
IGFibGUgdG8gYnVpbGQgYm90aCBkZWJ1ZyBhbmQgcmVsZWFzZSB0YXJnZXRzIGluIHBhcmFsbGVs
CiAgICAgICAgd2UgaGF2ZSB0byB1c2Ugc2VwYXJhdGUgb3V0cHV0IGRpcmVjdG9yaWVzIGZvciB0
aGUgZ2VuZXJhdGVkCiAgICAgICAgc291cmNlcywgd2hpY2ggaXMgbm90IG9wdGltYWwsIGJ1dCBy
ZXF1aXJlZCB0byBhdm9pZCByYWNlIGNvbmRpdGlvbnMuCgogICAgICAgIEFuIG9wdGltaXphdGlv
biB3b3VsZCBiZSB0byBvbmx5IHJlcXVpcmUgdGhpcyBzcGl0LXVwIG9uIE1hYy4KCiAgICAgICAg
KiBXZWJLaXQucHJpOgoKMjAwOS0wNC0zMCAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9A
d2Via2l0Lm9yZz4KCiAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBHVEsgYnVpbGQgZml4CgogICAg
ICAgICogY29uZmlndXJlLmFjOiB0eXBvIGZpeCAtIGphdmFzY3JpcHRfZGVidWdnZXIgc2hvdWxk
IGJlIGVuYWJsZV9qYXZhc2NyaXB0X2RlYnVnZ2VyCgoyMDA5LTA0LTMwICBEaW1pdHJpIEdsYXpr
b3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+CgogICAgICAgIFVucmV2aWV3ZWQsIGJ1aWxkIGZp
eC4KCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NDcw
CiAgICAgICAgRXh0ZW5kIHRoZSBjb3ZlciBvZiBFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUiB0
byBwcm9maWxlci4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6IEFkZCBhdXRvY29uZmlnIG9wdGlv
bnMsIG1pc3NlZCBpbiB0aGUgZmlyc3QgY29tbWl0LgoKMjAwOS0wNC0yOCAgWGFuIExvcGV6ICA8
eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFVucmV2aWV3ZWQ6IGJ1bXAgdmVyc2lvbnMgaW4g
cHJlcGFyYXRpb24gZm9yIDEuMS42IHJlbGVhc2UuCgogICAgICAgICogY29uZmlndXJlLmFjOgoK
MjAwOS0wNC0yNSAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAg
ICAgICAgUmV2aWV3ZWQgYnkgWGFuIExvcGV6LgoKICAgICAgICBbR1RLXSBFcnJvciByZXBvcnRp
bmcKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgzNDQK
CiAgICAgICAgQWRkIHdlYmtpdGVycm9yIHRvIHRoZSBidWlsZC4KCiAgICAgICAgKiBHTlVtYWtl
ZmlsZS5hbToKCjIwMDktMDQtMjUgIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtp
dC5vcmc+CgogICAgICAgICBSZXZpZXdlZCBieSBYYW4gTG9wZXouCgogICAgICAgICBbR1RLXSBF
cnJvciByZXBvcnRpbmcKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE4MzQ0CgogICAgICAgICBBZGQgdGhlIGRlZmF1bHQgZXJyb3IgcGFnZSBmb3IgaW5z
dGFsbGF0aW9uLgoKICAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDktMDQtMjQgIERpZWdv
IEVzY2FsYW50ZSBVcnJlbG8gIDxkaWVnb2VAZ25vbWUub3JnPgoKICAgICAgICBSZXZpZXdlZCBi
eSBHdXN0YXZvIE5vcm9uaGEuCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTYxNgogICAgICAgIFtHVEtdIEFkZCBzcGVsbCBjaGVja2luZwoKICAgICAg
ICBBZGQgZW5jaGFudCBzdXBwb3J0IGZvciBzcGVsbC1jaGVja2luZy1sYW5ndWFnZXMgcHJvcGVy
dHkgdG8gd29yawogICAgICAgIHByb3Blcmx5LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgog
ICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNC0yNCAgU2ltb24gSGF1c21hbm4gIDxzaW1v
bi5oYXVzbWFubkBub2tpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEFyaXlhIEhpZGF5YXQu
CgogICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIGdlbmVyYXRpbmcgQVBJIGRvY3MgaW4gdGhlIFF0
IGJ1aWxkIHVzaW5nICJtYWtlIGRvY3MiCgogICAgICAgICogV2ViS2l0LnBybzogSW5jbHVkZSBk
b2NzLnByaSBmb3IgIm1ha2UgZG9jcyIgdGFyZ2V0LgoKMjAwOS0wNC0xNCAgWGFuIExvcGV6ICA8
eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFVucmV2aWV3ZWQgdmVyc2lvbiBidW1wIGluIHBy
ZXBhcmF0aW9uIGZvciAxLjEuNSByZWxlYXNlLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIw
MDktMDQtMDYgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGd1c3Rhdm8ubm9yb25oYUBjb2xsYWJv
cmEuY28udWs+CgogICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IFNhbSBXZWluaWcuCgogICAgICAg
IEFkZGVkIHJ1bGVzIHRvIG1haW50YWluIHRoZSBsb2NhbGl6YXRpb24gc3VwcG9ydC4gV2UgY2Fu
bm90IHNpbXBseQogICAgICAgIHVzZSB3aGF0ZXZlciBnZXR0ZXh0aXplIGdpdmVzIHVzIGJlY2F1
c2Ugb3VyIGJ1aWxkIHN5c3RlbSBpcwogICAgICAgIG5vbi1yZWN1cnNpdmUuCgogICAgICAgICog
R05VbWFrZWZpbGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTA0LTA1ICBNaWtl
IEhvbW1leSAgPGdsYW5kaXVtQGRlYmlhbi5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdl
ciBGcmV5dGhlci4KCiAgICAgICAgRmlsdGVyIG91dCBhbGwgQysrIHN5bWJvbHMKICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQ5NjAKCiAgICAgICAgQ29u
c2lkZXJpbmcgdGhlIHB1YmxpYyBBUEkgaXMgYWxsIEMsIHdlIGNhbiBqdXN0IGZpbHRlciBvdXQg
YWxsCiAgICAgICAgQysrIG1hbmdsZWQgc3ltYm9scywgd2hpY2ggd2lsbCBhdm9pZCBleHBvcnRp
bmcgc3ltYm9scyBpbiBzb21lCiAgICAgICAgY29ybmVyIGNhc2VzIHN1Y2ggYXMgZ2NjIGJ1Z3Mg
b24gc3BlY2lmaWMgYXJjaGl0ZWN0dXJlcywgZXRjLgoKICAgICAgICAqIGF1dG90b29scy9zeW1i
b2xzLmZpbHRlcjoKCjIwMDktMDQtMDMgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGd1c3Rhdm8u
bm9yb25oYUBjb2xsYWJvcmEuY28udWs+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5
dGhlci4KCiAgICAgICAgUmVxdWlyZSBHVEsrID49IDIuMTA7IDIuOCBpcyBhbHJlYWR5IHZlcnkg
b2xkLCBhbmQgc29tZSB2ZXJ5CiAgICAgICAgdXNlZnVsIEFQSXMgYXJlIG9ubHkgYXZhaWxhYmxl
IHNpbmNlIDIuMTAuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wNC0wMSAgQ2hyaXN0
aWFuIER5d2FuICA8Y2hyaXN0aWFuQHR3b3RvYXN0cy5kZT4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
SG9sZ2VyIEZyZXl0aGVyLgoKICAgICAgICBVbml0IHRlc3QgV2ViS2l0RG93bmxvYWQKICAgICAg
ICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDg0NAoKICAgICAgICAq
IEdOVW1ha2VmaWxlLmFtOiBBZGQgYSB1bml0IHRlc3QgZm9yIGRvd25sb2FkaW5nLgoKMjAwOS0w
NC0wMSAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5j
by51az4KCiAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXguIEZpeCBtYWtlIGRpc3RjaGVjaywg
YWZ0ZXIgdGhlIGd0ay1kb2MKICAgICAgICBpbnRlZ3JhdGlvbi4KCiAgICAgICAgKiBHTlVtYWtl
ZmlsZS5hbToKCjIwMDktMDMtMzAgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSA8Z3VzdGF2by5ub3Jv
bmhhQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVy
LgoKICAgICAgICBJbnRlZ3JhdGUgZ3RrLWRvYyBpbnRvIHRoZSBHdGsrIGJ1aWxkc3lzdGVtLgoK
ICAgICAgICAqIGF1dG9nZW4uc2g6CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTAzLTMw
ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgVW5yZXZpZXdlZDogYnVt
cCB2ZXJzaW9uIHRvIDEuMS40IGZvciByZWxlYXNlLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoK
CjIwMDktMDMtMjEgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBSZXZp
ZXdlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIFJlcXVpcmUgZ25vbWUta2V5cmluZyAy
LjI2LjAsIHNpbmNlIHdlIHdlcmUgZGVwZW5kaW5nIG9uIGFuCiAgICAgICAgdW5yZWxlYXNlZCB0
cnVuayByZXZpc2lvbiBiZXR3ZWVuIDIuMjUuOTEgYW5kIDIuMjYuMC4KCiAgICAgICAgKiBjb25m
aWd1cmUuYWM6CgoyMDA5LTAzLTIwICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0BnbWFp
bC5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAgW0dU
S10gTWlzYyBwYXRjaGVzIGZvciBXZWJLaXRXZWJIaXN0b3J5SXRlbQogICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDQ5MwoKICAgICAgICBBZGRlZCBidWls
ZCBzdXBwb3J0IGZvciBidWlsZCB0aGUgV2ViS2l0V2ViSGlzdG9yeUl0ZW0gdW5pdCB0ZXN0LgoK
ICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wMy0yMCAgSmFuIE1pY2hhZWwgQWxvbnpv
ICA8am1hbG9uem9AZ21haWwuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRo
ZXIuCgogICAgICAgIFNlcGFyYXRlIGd0ayB1bml0IHRlc3RzCiAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI0MDM5CgogICAgICAgIEJ1aWxkIHRoZSB1bml0
IHRlc3RzIGFjY29yZGluZ2x5LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wMy0x
NyAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z25zQGdub21lLm9yZz4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgTWFyayBSb3dlLgoKICAgICAgICBFbmFibGUgSFRNTDUgbWVkaWEgZWxlbWVudHMgc3Vw
cG9ydCBieSBkZWZhdWx0IGluIHRoZSBHVEsrIHBvcnQuCgogICAgICAgICogY29uZmlndXJlLmFj
OgoKMjAwOS0wMy0xNyAgTWlrZSBIb21tZXkgPGdsYW5kaXVtQGRlYmlhbi5vcmc+CgogICAgICAg
IFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAgRG8gbm90IGV4cG9ydCBjdGkq
IHN5bWJvbHMuCiAgICAgICAgU2VlIGh0dHA6Ly9idWdzLmRlYmlhbi5vcmcvY2dpLWJpbi9idWdy
ZXBvcnQuY2dpP2J1Zz01MTk5MjQuCgogICAgICAgICogYXV0b3Rvb2xzL3N5bWJvbHMuZmlsdGVy
OgoKMjAwOS0wMy0xNSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIEJ1
bXAgdmVyc2lvbiB0byAxLjEuMyBmb3IgcmVsZWFzZSBhbmQgZml4IHNvdmVyc2lvbgogICAgICAg
IGNhbGN1bGF0aW9uIChvb3BzKS4gVGhhbmtzIHRvIEZyZWRlcmlrIEhpbXBlIGZvciBwb2ludGlu
ZyB0aGlzCiAgICAgICAgb3V0LgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMDMtMTUg
IFhhbiBMb3BleiAgPHhsb3BlekBpZ2FsaWEuY29tPgoKICAgICAgICBCdW1wIHZlcnNpb24gYW5k
IGxpYnRvb2wgdmVyc2lvbiBmb3IgcmVsZWFzZS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6Cgoy
MDA5LTAzLTE0ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KCiAgICAgICAgTm8gcmV2
aWV3LCBidWlsZCBmaXguCgogICAgICAgIFNwbGl0IGNsZWFuIHJ1bGVzIHRvIG1ha2UgZGlzdGNo
ZWNrIHBhc3MuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA5LTAzLTEzICBNYXJrIFJv
d2UgIDxtcm93ZUBhcHBsZS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4u
CgogICAgICAgIFJlbW92ZSByYXJlbHkgdXNlZCBNYWtlZmlsZSB0YXJnZXRzIGZyb20gdGhlIE1h
a2VmaWxlLgoKICAgICAgICBUaGVyZSBhcmUgbWFueSBzaXR1YXRpb25zIGluIHdoaWNoIHRoZSB0
YXJnZXRzIGRvbid0IHdvcmsgYXMgZXhwZWN0ZWQsCiAgICAgICAgYW5kIHRoZWlyIHByaW1hcnkg
dXNlIGlzIGFkZHJlc3NlZCBieSBoYXZpbmcgdGhlIGJ1aWxkIHN5c3RlbSBkZWZhdWx0CiAgICAg
ICAgdG8gYnVpbGRpbmcgdGhlIGFwcHJvcHJpYXRlIGFyY2hpdGVjdHVyZS4KCiAgICAgICAgKiBN
YWtlZmlsZS5zaGFyZWQ6CgoyMDA5LTAzLTExICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256
b0B3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAg
ICAgIFtHdGtdIEZpeCBtYWtlIGNsZWFuIHRhcmdldHMKICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQ0NTAKCiAgICAgICAgRml4ICdtYWtlJyBjbGVhbiB0
YXJnZXRzLiBXZSBzaG91bGRuJ3QgYmUgcmVtb3ZpbmcgRGVyaXZlZFNvdXJjZXMKICAgICAgICBp
ZiBpdCdzIG9ubHkgY2xlYW4uIE9ubHkgcmVtb3ZlIGl0IGlmIGl0J3MgZGlzdGNsZWFuIG9yCiAg
ICAgICAgbWFpbnRhaW5lci1jbGVhbi4gQWxzbyByZW1vdmUgYnVpbGQtcmVsYXRlZCBhdXhpbGxh
cnkgZmlsZXMgb24KICAgICAgICBkaXN0L21haW50YWluZXIgY2xlYW4uCgogICAgICAgICogR05V
bWFrZWZpbGUuYW06CgoyMDA5LTAzLTExICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B3
ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRoZXIKCiAgICAgICAg
W0dUS11EdW1wUmVuZGVyVHJlZSBkb2Vzbid0IGNvbXBpbGUgZm9yIG5vbi1YMTEgR1RLIHBvcnRz
IGFueW1vcmUKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI2MAoKICAgICAgICBwYW5nb2Z0MiBpcyBhbHNvIHVzZWQgaW4gZGlyZWN0ZmIgYnVpbGRzIHNv
IHVzZSBpdCBmb3IgYWxsIHRhcmdldHMKCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTAz
LTAyICBYYW4gTG9wZXogIDx4YW5AZ25vbWUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBNYXJr
IFJvd2UuCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
NDI4NwogICAgICAgIFtHVEtdIE1vdmUgYXV0aCBkaWFsb2cgZmVhdHVyZSB0byBXZWJLaXQvCgog
ICAgICAgIEFkZCBXZWJLaXRTb3VwQXV0aERpYWxvZyBmaWxlcyB0byBidWlsZC4KCiAgICAgICAg
KiBHTlVtYWtlZmlsZS5hbToKCjIwMDktMDMtMDMgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGdu
c0Bnbm9tZS5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCgog
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjgyNgogICAg
ICAgIFtHdGtdIEltcGxlbWVudCBXZWJLaXREb3dubG9hZAoKICAgICAgICBBZGRpbmcgbmV3IGZp
bGVzIHJlbGF0ZWQgdG8gV2ViS2l0RG93bmxvYWQgdG8gdGhlIEdUSysgcG9ydC4KCiAgICAgICAg
KiBHTlVtYWtlZmlsZS5hbToKCjIwMDktMDMtMDIgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGdu
c0Bnbm9tZS5vcmc+CgogICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4OyBhZGRpbmcgbWlzc2lu
ZyBmaWxlcyB0byBFWFRSQV9ESVNULCBzbyB0aGF0CiAgICAgICAgdGhleSBzaG93IHVwIGluIHRo
ZSB0YXJiYWxsLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wMy0wMSAgQ2hyaXN0
aWFuIER5d2FuICA8Y2hyaXN0aWFuQHR3b3RvYXN0cy5kZT4KCiAgICAgICAgKiBjb25maWd1cmUu
YWM6IEJ1bXAgR1RLIHBvcnQgdmVyc2lvbiB0byAxLjEuMS4KCjIwMDktMDItMjcgIEd1c3Rhdm8g
Tm9yb25oYSBTaWx2YSAgPGduc0Bnbm9tZS5vcmc+CgogICAgICAgIFVucmV2aWV3ZWQgYnVpbGQg
Zml4LiBBZGRpbmcgdGhlIFdlYktpdC9ndGsvd2Via2l0bWFyc2hhbC5saXN0CiAgICAgICAgZmls
ZSB0byBFWFRSQV9ESVNUIHRvIGZpeCBtYWtlIGRpc3QuCgogICAgICAgICogR05VbWFrZWZpbGUu
YW06CgoyMDA5LTAyLTI2ICBYYW4gTG9wZXogIDx4YW5AZ25vbWUub3JnPgoKICAgICAgICBSZXZp
ZXdlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjk0NwogICAgICAgIFtHVEtdIE1pc3NpbmcgSFRUUCBBdXRoIGNo
YWxsZW5nZQoKICAgICAgICBBZGQgSFRUUCBhdXRoZW50aWNhdGlvbiBkaWFsb2cgd2l0aCBvcHRp
b25hbCBHTk9NRSBLZXlyaW5nCiAgICAgICAgc3RvcmFnZS4KCiAgICAgICAgKiBHTlVtYWtlZmls
ZS5hbToKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDktMDItMjYgIFhhbiBMb3BleiAgPHhh
bkBnbm9tZS5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTQ3CiAgICAgICAg
W0dUS10gTWlzc2luZyBIVFRQIEF1dGggY2hhbGxlbmdlCgogICAgICAgIFRha2UgbWFyc2hhbGxl
cnMgdG8gYmUgYnVpbHQgZnJvbSBhIG1hbnVhbGx5IG1haW50YWluZWQgbGlzdAogICAgICAgIGlu
c3RlYWQgb2YgZ3JlcHBpbmcgdGhlIHNvdXJjZXMuCgogICAgICAgIEl0J3MgbXVjaCBmYXN0ZXIs
IGVzcGVjaWFsbHkgc28gbm93IHRoYXQgd2Ugd2FudCB0byBhZGQKICAgICAgICBtYXJzaGFsbGVy
cyBmcm9tIFdlYkNvcmUgdG9vLiBBIHN5c3RlbSB0byBvbmx5IHRha2UgaW50byBhY2NvdW50CiAg
ICAgICAgdGhlIG1vZGlmaWVkIGZpbGVzIHdoZW4gZ2VuZXJhdGluZyB0aGUgbWFyc2hhbGxlcnMg
ZnJvbSBzb3VyY2VzCiAgICAgICAgY291bGQgYmUgaGFja2VkLCBidXQgSSB0aGluayBpdCdzIG92
ZXJraWxsIGNvbnNpZGVyaW5nIGhvdyByYXJlbHkKICAgICAgICBhIG5ldyBtYXJzaGFsbGVyIGlz
IGFkZGVkLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOS0wMi0yNCAgSmFuIE1pY2hh
ZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxl
eGV5IFByb3NrdXJ5YWtvdi4KCiAgICAgICAgW0d0a10gYWRkIG9wdGlvbnMgZm9yIDNEIHRyYW5z
Zm9ybXMgYW5kIEhUTUw1IGNoYW5uZWwgbWVzc2FnaW5nIHRvIHRoZSBidWlsZAogICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDA3MgoKICAgICAgICBBZGQg
b3B0aW9ucyBmb3IgdG9nZ2xpbmcgM0QgdHJhbnNmb3JtcyBhbmQgSFRNTDUgY2hhbm5lbCBtZXNz
YWdpbmcKICAgICAgICBzdXBwb3J0IG9uIG9yIG9mZi4KCiAgICAgICAgQWxzbyBmaXggdGhlIHdl
Yi13b3JrZXJzIG9wdGlvbi4gSXQgc2hvdWxkIGJlIHdlYi13b3JrZXJzIGFuZCBub3Qgd29ya2Vy
cy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA5LTAyLTIzICBYYW4gTG9wZXogIDx4YW5A
Z25vbWUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgoKICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI2MjQKICAgICAg
ICBbU09VUF1bR1RLXSBOZWVkIEFQSSB0byBnZXQgU291cFNlc3Npb24gZnJvbSBXZWJLaXQuCgog
ICAgICAgIFJlbW92ZSBDVVJMIHN1cHBvcnQsIHRoZSBvbmx5IHN1cHBvcnRlZCBIVFRQIGJhY2tl
bmQgaXMgU09VUCBub3cuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CiAgICAgICAgKiBjb25m
aWd1cmUuYWM6CgoyMDA5LTAyLTE5ICBDaHJpc3RpYW4gRHl3YW4gIDxjaHJpc3RpYW5AdHdvdG9h
c3RzLmRlPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAg
ICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODExCiAgICAgICAg
VW5kZXJsaW5raW5nIGluIFByb2dyYW1zX1VuaXRUZXN0cyAoR1RLKyBidWlsZCkKCiAgICAgICAg
KiBHTlVtYWtlZmlsZS5hbTogQWRkIEdMSUJfTElCUyB0byB1bml0IHRlc3QgbGlicmFyeSBmbGFn
cy4KCjIwMDktMDItMTggIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGduc0Bnbm9tZS5vcmc+Cgog
ICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAgRml4IHN5bWJvbHMu
ZmlsdGVyIGxvY2F0aW9uLCBhbmQgYWRkIG90aGVyIG1pc3NpbmcgZmlsZXMgdG8gdGhlCiAgICAg
ICAgYXV0b3Rvb2xzIGJ1aWxkLCBzbyB0aGF0IG1ha2UgZGlzdCB3b3Jrcy4KCiAgICAgICAgKiBH
TlVtYWtlZmlsZS5hbToKCjIwMDktMDItMTcgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGduc0Bn
bm9tZS5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCgogICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzkzOQogICAgICAg
IFJlbGVhc2UgYnVpbGQgYmVpbmcgYnVpbHQgd2l0aCBkZWJ1Z2dpbmcgc3ltYm9scwoKICAgICAg
ICAqIGNvbmZpZ3VyZS5hYzogUmV2ZXJ0IGNoYW5nZSBkb25lIGluIHJldmlzaW9uIDQwNzkwLCBz
aW5jZSB3ZQogICAgICAgIGFscmVhZHkgaGF2ZSBhIEFDX1BST0dfQ1hYIG1hY3JvIGNhbGwgYXMg
cGFydCBvZiBXRUJLSVRfSU5JVAoKMjAwOS0wMi0xMiAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8
Z25zQGdub21lLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAg
ICogY29uZmlndXJlLmFjOiBNYWtlIHNvdXAgdGhlIGRlZmF1bHQgSFRUUCBiYWNrZW5kIGZvciB0
aGUgR3RrIHBvcnQuCgoyMDA5LTAyLTA5ICBDYWx2aW4gV2FsdG9uICA8Y2FsdmluLndhbHRvbkBn
bWFpbC5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODIzCgogICAgICAgIFtH
dGtdIEZpeCBidWlsZCB3aXRoIHJlY2VudCBhdXRvdG9vbHMKCiAgICAgICAgQ3VycmVudCB2ZXJz
aW9ucyBvZiBhdXRvbWFrZS9saWJ0b29sIGRvbid0IGFzc3VtZSB5b3Ugd2FudCBDKysgZW5hYmxl
ZAogICAgICAgIGJ5IGRlZmF1bHQgYW55IG1vcmUsIHNvIGV4cGxpY2l0bHkgY2hlY2sgZm9yIGEg
QysrIGNvbXBpbGVyLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzogQWRkIEFDX1BST0dfQ1hYIG1h
Y3JvCgoyMDA5LTAyLTAyICBDaHJpc3RpYW4gRHl3YW4gIDxjaHJpc3RpYW5AdHdvdG9hc3RzLmRl
PgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIERv
bid0IHJlcXVpcmUgR2VvbG9jYXRpb24gYnkgZGVmYXVsdC4KCiAgICAgICAgKiBjb25maWd1cmUu
YWM6CgoyMDA5LTAxLTMwICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3Jn
PgoKICAgICAgICBSZXZpZXdlZCBieSBOaWtvbGFzIFppbW1lcm1hbm4uCgogICAgICAgIFtHdGtd
IFJlZmFjdG9yIGF1dG9jb25mL2NvbmZpZ3VyZS5hYyBpbiBwcmVwYXJhdGlvbiBmb3IganNjIGFu
ZCB3ZWJraXQgYnVpbGQgc3BsaXRzCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyMTM2CgogICAgICAgICogR05VbWFrZWZpbGUuYW06CiAgICAgICAgKiBh
Y2luY2x1ZGUubTQ6IFJlbW92ZWQuCiAgICAgICAgKiBhdXRvZ2VuLnNoOgogICAgICAgICogYXV0
b3Rvb2xzL2FjaW5jbHVkZS5tNDogQWRkZWQuCiAgICAgICAgKiBhdXRvdG9vbHMvZG9sdC5tNDog
QWRkZWQuCiAgICAgICAgKiBhdXRvdG9vbHMvc3ltYm9scy5maWx0ZXI6IFJlbmFtZWQgZnJvbSBz
eW1ib2xzLmZpbHRlci4KICAgICAgICAqIGF1dG90b29scy93ZWJraXQubTQ6IEFkZGVkLgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wMS0zMCAgSG9sZ2VyIEhhbnMgUGV0ZXIgRnJleXRo
ZXIgIDx6ZWNrZUBzZWxmaXNoLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTmlrb2xhcyBaaW1t
ZXJtYW5uLgoKICAgICAgICBbR1RLXSBJbXBsZW1lbnQgR2VvbG9jYXRpb25TZXJ2aWNlIHVzaW5n
IHRoZSBHZW9jbHVlIGxpYnJhcnkKCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyMDIyCgogICAgICAgIFVudGVzdGVkIGltcGxlbWVudGF0aW9uIG9mIHRo
ZSBHZW9sb2NhdGlvblNlcnZpY2UgdXNpbmcgdGhlIGdlb2NsdWUKICAgICAgICBsaWJyYXJ5LiBW
ZWxvY2l0eSBoYW5kbGluZyBpcyBjb21wbGV0ZWx5IG1pc3NpbmcgYW5kIHRoZSBhY2N1cmFjeQog
ICAgICAgIGhhbmRsaW5nIG1pZ2h0IGJlIHdyb25nLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFt
OgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOS0wMS0xMSAgWGFuIExvcGV6ICA8eGFuQGdu
b21lLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyLgoKICAgICAgICBC
dW1wIHZlcnNpb24gdG8gMS4xLjAgc2luY2Ugd2UgYXJlIGJyZWFraW5nIEFCSSBhbmQgYWRkaW5n
IG5ldwogICAgICAgIG1ham9yIGZlYXR1cmVzLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIw
MDgtMTItMTkgIE1hcmNvIEJhcmlzaW9uZSAgPG1hcmNvLmJhcmlzaW9uZUBjb2xsYWJvcmEuY28u
dWs+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAgaHR0cDov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY1NjIKICAgICAgICBbZ3RrXSBJbXBs
ZW1lbnQgV2ViUG9saWN5RGVsZWdhdGUgbWV0aG9kcwoKICAgICAgICBPcmlnaW5hbCB3b3JrIGJ5
IFBpZXJyZS1MdWMgQmVhdWRvaW4uIEZpbmFsIHRvdWNoZXMgYnkgR3VzdGF2bwogICAgICAgIE5v
cm9uaGEuCgogICAgICAgIFRoaXMgaW1wbGVtZW50cyB0aGUgZGVsZWdhdGVzIG1ldGhvZHMgb2Yg
V2ViUG9saWN5RGVsZWdhdGUuCiAgICAgICAgU2luY2UgR3RrKy9DIGRvZXNuJ3QgaGF2ZSBkZWxl
Z2F0ZSBtZXRob2RzLCB0aGV5IGFyZSByZXBsYWNlZCB3aXRoCiAgICAgICAgc2lnbmFscy4KCiAg
ICAgICAgQSBuZXcgb2JqZWN0IFdlYktpdFdlYlBvbGljeURlY2lzaW9uIGFsbG93cyB0aGUgYnJv
d3NlciB0byBkZWxheSBpdHMKICAgICAgICByZXNwb25zZSBpbiBjZXJ0YWluIGNhc2VzLiBXZWJL
aXRXZWJOYXZpZ2F0aW9uQWN0aW9uIGNvbnRhaW5zIHRoZQogICAgICAgIGluZm9ybWF0aW9uIGFi
b3V0IHdoYXQgY2F1c2VkIGEgbmF2aWdhdGlvbiByZXF1ZXN0LgoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOiBBZGQgbmV3IGZpbGVzCgoyMDA4LTEyLTE5ICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEg
IDxnbnNAZ25vbWUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRoZXIuCgog
ICAgICAgIFVzZSB1c3RhciB0YXIgZm9ybWF0IGZvciBXZWJLaXQvR1RLKydzIG1ha2UgZGlzdCB0
YXJnZXQsIHNvIHRoYXQKICAgICAgICBzdG9yaW5nIGZpbGVzIHdob3NlIGZpbGVuYW1lcyBhcmUg
PiA5OSBpcyBwb3NzaWJsZS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTEyLTE5ICBI
b2xnZXIgSGFucyBQZXRlciBGcmV5dGhlciAgPHplY2tlQHNlbGZpc2gub3JnPgoKICAgICAgICBb
R1RLXSBCdWlsZCBmaXggYnkgZGVmaW5pbmcgV1RGX1VTRV9KSVRfU1RVQl9BUkdVTUVOVF9WQV9M
SVNUCgogICAgICAgIEZpeCB0aGUgaml0IGNvbXBpbGF0aW9uIG9uIGkqNjg2IG9uIExpbnV4IGJ5
IHVzaW5nIHRoZSB2YV9saXN0CiAgICAgICAgdG8gcGFzcyBhcmd1bWVudHMgdG8gdGhlIENUSS4g
VGhpcyBpcyBkb25lIG9uIHRoZSBNQUMgYXMgd2VsbAogICAgICAgIGFuZCBzdW5zcGlkZXIgYW5k
IGphdmFzY3JpcHRjb3JlIHNlZW0gdG8gd29yayB3aXRoIHRoYXQuCgogICAgICAgICogY29uZmln
dXJlLmFjOgoKMjAwOC0xMi0xOCAgUGFtZWxhIEdyZWVuZSAgPHBhbUBjaHJvbWl1bS5vcmc+Cgog
ICAgICAgIFN1Ym1pdHRlZCB3aXRob3V0IHJldmlldy4KICAgICAgICBSaWdodCwgcmVtb3ZlIHRo
ZSB3aG9sZSBtaXNwbGFjZWQgZGlyZWN0b3J5LCBub3QganVzdCB0aGUgdGVzdHMuCgogICAgICAg
ICogZmFzdDogUmVtb3ZlZC4KICAgICAgICAqIGZhc3QvZG9tOiBSZW1vdmVkLgoKMjAwOC0xMi0x
OCAgUGFtZWxhIEdyZWVuZSAgPHBhbUBjaHJvbWl1bS5vcmc+CgogICAgICAgIFN1Ym1pdHRlZCB3
aXRob3V0IHJldmlldy4KICAgICAgICBNb3ZpbmcgbGF5b3V0IHRlc3QgaW50byBMYXlvdXRUZXN0
cyB3aGVyZSBpdCBiZWxvbmdzLgoKICAgICAgICAqIGZhc3QvZG9tL3NldHRlci10eXBlLWVuZm9y
Y2VtZW50LWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KICAgICAgICAqIGZhc3QvZG9tL3NldHRlci10
eXBlLWVuZm9yY2VtZW50Lmh0bWw6IFJlbW92ZWQuCgoyMDA4LTEyLTE1ICBEYW5pZWwgTWFja3Mg
IDxkbWFja3NAbmV0c3BhY2Uub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4K
CiAgICAgICAgRGVmYXVsdCB0byB1c2UgZXh0ZXJuYWwgbGliaWN1LWNvbmZpZyBpZiBhdmFpbCBv
biBhbGwgcGxhdGZvcm1zLgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjcxMwoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMTItMTIgIEhvbGdl
ciBIYW5zIFBldGVyIEZyZXl0aGVyICA8emVja2VAc2VsZmlzaC5vcmc+CgogICAgICAgIEJhY2sg
b3V0IHIzOTIyMiBhcyB0aGlzIGlzIGJyZWFraW5nIHRoZSBidWlsZCBvbiBHZW50b28gKGFjbG9j
YWwtMS4xMCkKCiAgICAgICAgVGhlIG00IGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCBhbmQgd2Ug
bm93IGhhdmUgYSBjb21waWxlIGlzc3VlIG9uCiAgICAgICAgR2VudG9vIHN5c3RlbXMuCgogICAg
ICAgICogR05VbWFrZWZpbGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTEyLTEx
ICBEYW5pZWwgTWFja3MgIDxkbWFja3NAbmV0c3BhY2Uub3JnPgoKICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzE0CgogICAgICAgIFB1dCBsaWJ0b29sIG1hY3JvIGZpbGVzIGluIHN1YmRpciB0
aGF0IGl0IHdhbnRzLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgogICAgICAgICogY29uZmln
dXJlLmFjOgoKMjAwOC0xMi0wNyAgSG9sZ2VyIEhhbnMgUGV0ZXIgRnJleXRoZXIgIDx6ZWNrZUBz
ZWxmaXNoLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAgIFtH
dGsrXSBVc2UgZ2xpYidzIHVuaXQgdGVzdCBmYWNpbGl0aWVzIHRvIHRlc3QgdGhlIFdlYktpdC9H
dGsrIEFQSQoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI0OTEKCiAgICAgICAgQWRkIHRoZSBza2VsZXRvbiB0byBXZWJLaXQvZ3RrL3Rlc3RzIGFuZCBp
bnRlZ3JhdGUgdGhhdCBpbnRvIHRoZQogICAgICAgIGJ1aWxkc3lzdGVtLiBUZXN0aW5nIHN1cHBv
cnQgd2FzIGFkZGVkIGluIGdsaWIgMi4xNi4gRm9yIHZlcnNpb25zCiAgICAgICAgdXNpbmcgZ2xp
YiA8IDIuMTYgd2UgY29tcGlsZSBhbiBlbXB0eSBhcHBsaWNhdGlvbi4KCiAgICAgICAgKiBHTlVt
YWtlZmlsZS5hbToKCjIwMDgtMTItMDcgIEhvbGdlciBIYW5zIFBldGVyIEZyZXl0aGVyICA8emVj
a2VAc2VsZmlzaC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IENhbWVyb24gWndhcmljaC4KCiAg
ICAgICAgW0dUS10gRGVmaW5lIEVOQUJMRV9KSVRfT1BUSU1JWkVfQ0FMTCwgRU5BQkxFX0pJVF9P
UFRJTUlaRV9QUk9QRVJUWV9BQ0NFU1MsIEVOQUJMRV9KSVRfT1BUSU1JWkVfQVJJVEhNRVRJQwoK
ICAgICAgICBXaGVuIGJ1aWxkaW5nIHRoZSBqaXQgb24gaSo4NiBhbHNvIGVuYWJsZSB0aGUgYWJv
dmUgb3B0aW1pemF0aW9ucy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTEyLTAzICBT
aW1vbiBIYXVzbWFubiAgPGhhdXNtYW5uQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5
IFRvciBBcm5lIFZlc3Riw7guCgogICAgICAgIEZpeCB0aGUgYnVpbGQgb2YgV2ViS2l0IGluc2lk
ZSBRdCBieSBtYWtpbmcgc3VyZSB0aGF0IHFtYWtlIGdlbmVyYXRvcnMKICAgICAgICB0aGF0IGRv
IG5vdCBwcm9kdWNlIGdlbmVyYXRlZCBzb3VyY2VzIChpLmUuIGNwcCBmaWxlcykgYXJlIG5vdAog
ICAgICAgIGluY2x1ZGVkIGluIFNPVVJDRVMuCgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDgt
MTItMDIgIFNpbW9uIEhhdXNtYW5uICA8aGF1c21hbm5Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2
aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLDuC4KCiAgICAgICAgUmVtb3ZlZCBKYXZhU2NyaXB0Q29y
ZSBmcm9tIFNVQkRJUlMgYXMgaXQncyBub3QgYnVpbHQgc2VwYXJhdGVseQogICAgICAgIGFueW1v
cmUuCgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMDgtMTEtMjggIEd1c3Rhdm8gTm9yb25oYSBT
aWx2YSAgPGduc0Bnbm9tZS5vcmc+CgogICAgICAgIFJldmlld2VkIGFuZCBzbGlnaHRseSBtb2Rp
ZmllZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTEzMAoKICAgICAgICBBZGRlZCB0aGUgbmV3IFdlYktpdEd0ayBm
aWxlcyB0byBiZSBidWlsdDoKICAgICAgICBXZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ3aW5k
b3dmZWF0dXJlcy57Y3BwLGh9CgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA4LTExLTI2
ICBLYWxsZSBWYWhsbWFuICA8a2FsbGUudmFobG1hbkBtb3ZpYWwuY29tPgoKICAgICAgICBSZXZp
ZXdlZCBieSBEYXJpbiBBZGxlci4gTGFuZGVkIGJ5IEphbiBBbG9uem8uCgogICAgICAgIEJpc29u
IHZlcnNpb25zIHVuZGVyIDIuMiBwcm9kdWNlIGNyYXNoaW5nIENTU0dyYW1tYXIgY29kZSBmb3Ig
QVJNCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDU2
CgogICAgICAgIENoZWNrIGZvciBiaXNvbiB2ZXJzaW9uIDIuMiBvciBncmVhdGVyIG9uIEFSTS4g
RWFybGllciB2ZXJzaW9ucyBwcm9kdWNlCiAgICAgICAgY29kZSB0aGF0IGNyYXNoZXMgb24gQVJN
IGRldmljZXMuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0xMS0yNSAgSG9sZ2VyIEhh
bnMgUGV0ZXIgRnJleXRoZXIgIDx6ZWNrZUBzZWxmaXNoLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQg
YnkgRGF2aWQgS2lsemVyLgoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjIwMjIKCiAgICAgICAgQWRkIEdlb2xvY2F0aW9uIHN1cHBvcnQgdG8gdGhlIGNv
bmZpZ3VyZS5hYwoKICAgICAgICBBZGQgYW4gb3B0aW9uIHRvIGJ1aWxkIFdlYktpdC9HdGsrIHdp
dGggR2VvbG9jYXRpb24uIFRoZQogICAgICAgIGltcGxlbWVudGF0aW9uIHdpbGwgYmUgdXNpbmcg
R3lwc3kuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0xMS0yNCAgSG9sZ2VyIEhhbnMg
UGV0ZXIgRnJleXRoZXIgIDx6ZWNrZUBzZWxmaXNoLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
TWFyayBSb3dlLgoKICAgICAgICBbR3RrK10gQWRkIGNvbmZpZ3VyZSBvcHRpb24gdG8gZW5hYmxl
IFdlYiBXb3JrZXJzIGFuZCBlbmFibGUgaXQgYnkgZGVmYXVsdAoKICAgICAgICBBZGQgLS1lbmFi
bGUtd29ya2VycyB0byB0aGUgYnVpbGRzeXN0ZW0gKHVzZWQgYnkgYnVpbGQtd2Via2l0KSBhZGQK
ICAgICAgICB0aGUgdG8gYmUgYnVpbGQgZmlsZXMgdG8gdGhlIEdOVW1ha2VmaWxlLmFtIGFuZCBj
aGFuZ2UgYnVpbGQtd2Via2l0CiAgICAgICAgdG8gZW5hYmxlIFdlYiBXb3JrZXJzIGJ5IGRlZmF1
bHQuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wOS0wOSAgSm9lcmcgQm9ybmVtYW5u
ICA8am9lcmcuYm9ybmVtYW5uQHRyb2xsdGVjaC5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IFNp
bW9uIEhhdXNtYW5uLgoKICAgICAgICBTdGVwcyB0b3dhcmRzIG1ha2luZyB0aGUgUXQgcG9ydCBv
ZiBXZWJLaXQgY29tcGlsZSBvbiBXaW5kb3dzIENFCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc0NgoKICAgICAgICAqIFdlYktpdC5wcm86IGRvbid0
IGJ1aWxkIER1bXBSZW5kZXJUcmVlIG9uIGFsbCBXaW4zMiBwbGF0Zm9ybXMKCjIwMDgtMTEtMTcg
IE5pa29sYXMgWmltbWVybWFubiAgPG5pa29sYXMuemltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+
CgogICAgICAgIFJldmlld2VkIGJ5IEdlb3JnZSBTdGFpa29zLgoKICAgICAgICBBZGQgV01MIGJ1
aWxkIHN1cHBvcnQgZm9yIEd0ayBhcyB3ZWxsLgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIw
MDgtMTEtMTYgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KCiAgICAgICAgTm90
IHJldmlld2VkLgoKICAgICAgICBUcnkgdG8gZml4IGd0ayBidWlsZC4KCiAgICAgICAgKiBjb25m
aWd1cmUuYWM6CgoyMDA4LTExLTEwICBUb3IgQXJuZSBWZXN0YsO4ICA8dGF2ZXN0Ym9AdHJvbGx0
ZWNoLmNvbT4KCiAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgU2ltb24gSGF1c21hbm4uCgogICAg
ICAgIERpc3Rpbmd1aXNoIGJldHdlZW4gYnVpbGRpbmcgZnJvbSB0cnVuayBhbmQgYXMgcGFydCBv
ZiBRdAoKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDA4LTExLTEwICBNb3J0ZW4gU8O4cnZpZyAg
PG1zb3J2aWdAdHJvbGx0ZWNoLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21h
bm4uCgogICAgICAgIE1ha2UgdGVzdHMvYXV0by9xd2ViZnJhbWUgY29tcGlsZSBvbiBRdC9NYWMu
CgogICAgICAgICogV2ViS2l0LnByaTogRml4IGxpbmthZ2UgYWdhaW5zdCBRdFdlYktpdCB3aGVu
IGNvbXBpbGVkIGFzIGZyYW1ld29yay4KCjIwMDgtMTEtMDYgIENhbWVyb24gWndhcmljaCAgPHp3
YXJpY2hAYXBwbGUuY29tPgoKICAgICAgICBOb3QgcmV2aWV3ZWQuCgogICAgICAgIFNwZWN1bGF0
aXZlbHkgZml4IHRoZSBHVEsgYnVpbGQuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA4
LTExLTA2ICBBbHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNvbT4KCiAgICAgICAgR1RLIGJ1aWxkIGZp
eCBmb3IgcjM4MTU1LiBjcmVhdGVfaGFzaF90YWJsZSB3YXMgbW92ZWQgb3V0IG9mIGtqcy8KCiAg
ICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDgtMTEtMDYgIENhbWVyb24gWndhcmljaCAgPHp3
YXJpY2hAYXBwbGUuY29tPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBTYW0gV2VpbmlnLgoK
ICAgICAgICBDb3JyZWN0IHRoZSByZWZlcmVuY2UgdG8ganNjLnBybyBpbiBXZWJLaXQucHJvIHRv
IG1hdGNoIGl0cyBuZXcKICAgICAgICBsb2NhdGlvbiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2Yg
SmF2YVNjcmlwdENvcmUuCgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMDgtMTEtMDMgIEFscCBU
b2tlciAgPGFscEBudWFudGkuY29tPgoKICAgICAgICBhdXRvdG9vbHMgZGlzdGNsZWFuY2hlY2sg
Zml4LiBBZGQgZG9sdC1nZW5lcmF0ZWQgZmlsZXMgYW5kCiAgICAgICAgd2Via2l0ZW51bXR5cGVz
LmggdG8gdGhlIGxpc3Qgb2YgZmlsZXMgdGhhdCBuZWVkIHRvIGJlIGNsZWFuZWQuCiAgICAgICAg
VW5yZXZpZXdlZC4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDgtMTEtMDMgIEFscCBU
b2tlciAgPGFscEBudWFudGkuY29tPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBIb2xnZXIg
RnJleXRoZXIuCgogICAgICAgIERvIG5vdCBlbmFibGUgUlRUSSBvciBleGNlcHRpb25zIGluIGRl
YnVnIGJ1aWxkcywgbWF0Y2hpbmcgcmVsZWFzZQogICAgICAgIGJ1aWxkcy4gVGhleSBkb24ndCBo
ZWxwIG11Y2ggd2l0aCBkZWJ1Z2dpbmcgYW5kIHNpZ25pZmljYW50bHkgc2xvdwogICAgICAgIGRv
d24gYW5kIGluY3JlYXNlIHRoZSBzaXplIG9mIHRoZSBkZWJ1ZyBidWlsZC4KCiAgICAgICAgKiBH
TlVtYWtlZmlsZS5hbToKCjIwMDgtMTEtMDMgIEFscCBUb2tlciAgPGFscEBudWFudGkuY29tPgoK
ICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBIb2xnZXIgRnJleXRoZXIuCgogICAgICAgIEFkZCBt
aW5ndzMyIGNhc2UgdG8gZG9sdCBmb3IgZmFzdGVyIEdUSysgV2luZG93cyBidWlsZHMuCgogICAg
ICAgICogYWNpbmNsdWRlLm00OgoKMjAwOC0xMS0wMiAgWGFuIExvcGV6ICA8eGFuQGdub21lLm9y
Zz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyCgogICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjAwOQogICAgICAgIEhUTUw1IFZpZGVv
IHdpdGggR1N0cmVhbWVyIHB1bGxzIGdub21lLXZmcyB3aXRob3V0IHVzaW5nIGl0LgoKICAgICAg
ICAqIGNvbmZpZ3VyZS5hYzoKICAgICAgICBSZW1vdmUgZ25vbWUtdmZzIGZyb20gY29uZmlndXJl
LmFjLCBpdCdzIHVudXNlZC4KCjIwMDgtMTAtMzAgIEFscCBUb2tlciAgPGFscEBudWFudGkuY29t
PgoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkzOTUK
ICAgICAgICBkb2x0bGlidG9vbCBidWcgd2l0aCBiYXNoIDMuMAoKICAgICAgICBhdXRvdG9vbHMg
ZG9sdCBidWlsZCBmaXggZm9yIGJhc2ggdmVyc2lvbiAzLjAgYW5kIG9sZGVyLiBSZW1vdmUKICAg
ICAgICBjb25jYXRlbmF0aW9uIHN5bnRheCBmcm9tIGRvbHRsaWJ0b29sIHRvIHN1cHBvcnQgdGhl
IG9sZGVyIHZlcnNpb25zCiAgICAgICAgd2hpY2ggZG9uJ3QgaGF2ZSAnKz0nLgoKICAgICAgICAq
IGFjaW5jbHVkZS5tNDoKCjIwMDgtMTAtMzAgIEFscCBUb2tlciAgPGFscEBudWFudGkuY29tPgoK
ICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBPbGl2ZXIgSHVudC4KCiAgICAgICAgYXV0b3Rvb2xz
IGJ1aWxkIHN5c3RlbSBjaGFuZ2UgdG8gZW5hYmxlIEpJVCBmZWF0dXJlcyBieSBkZWZhdWx0LiBD
YW4KICAgICAgICBiZSBkaXNhYmxlZCB3aXRoIC0tZGlzYWJsZS1qaXQgKGFuZCBpcyBkaXNhYmxl
ZCBhdXRvbWF0aWNhbGx5IG9uCiAgICAgICAgdW5zdXBwb3J0ZWQgcGxhdGZvcm1zKS4KCiAgICAg
ICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTEwLTMwICBBbHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNv
bT4KCiAgICAgICAgQnVtcCBXZWJLaXQgR1RLKyB2ZXJzaW9uIHRvIDEuMC4zLgoKICAgICAgICAq
IGNvbmZpZ3VyZS5hYzoKCjIwMDgtMTAtMjkgIEd1c3Rhdm8gTm9yb25oYSBTaWx2YSAgPGduc0Bn
bm9tZS5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAg
QWRkZWQgYWxsIHRoZSBmaWxlcyB0aGF0IG5lZWQgdG8gYmUgaW5zdGFsbGVkIGZvciB0aGUgSW5z
cGVjdG9yIHRvCiAgICAgICAgd29yay4KCjIwMDgtMTAtMjkgIE1pa2UgSG9tbWV5ICA8Z2xhbmRp
dW1AZGViaWFuLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyLgoKICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4ODQKICAgICAg
ICBUZXN0IHByZXNlbmNlIGFuZCBsaW5rIGFnYWluc3QgbGlicG5nLgoKICAgICAgICAqIEdOVW1h
a2VmaWxlLmFtOgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0xMC0yOSAgSmFuIE1pY2hh
ZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9s
Z2VyIEZyZXl0aGVyLgoKICAgICAgICBBZGQgLS1lbmFibGUtb3B0aW1pemF0aW9ucyB0byBlbmFi
bGUgb3B0aW1pemVkIGJ1aWxkcy4gVGhlIGRlZmF1bHQKICAgICAgICBpcyB0byBlbmFibGUgaXQg
Zm9yIHJlbGVhc2UgYnVpbGRzLCBhbmQgZGlzYWJsZWQgZm9yIGRlYnVnIGJ1aWxkcy4KICAgICAg
ICBUaGlzIG9wdGlvbiB3aWxsIGFsbG93IGJ1aWxkZXJzIHRvIGhhdmUgYSBkZWJ1ZyBhcyB3ZWxs
IGFzCiAgICAgICAgb3B0aW1pemVkIGJ1aWxkcy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToK
ICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMTAtMjggIE1pa2UgSG9tbWV5ICA8Z2xhbmRp
dW1AZGViaWFuLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoKICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4ODUKICAgICAgICBbR1RL
XSBsaWJ3ZWJraXQgZG9lc24ndCBsaW5rIGFnYWluc3QgbGlicGFuZ29mdDIKCiAgICAgICAgQWRk
IHBrZy1jb25maWcgY2hlY2sgZm9yIHBhbmdvZnQyIHdoaWNoIHByb3ZpZGVzCiAgICAgICAgcGFu
Z29fZmNfZm9udF9kZXNjcmlwdGlvbl9mcm9tX3BhdHRlcm4oKSB1c2VkIGluIHRoZSBGcmVlVHlw
ZSBmb250CiAgICAgICAgYmFja2VuZC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTEw
LTI4ICBBbHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNvbT4KCiAgICAgICAgSW5jbHVkZSBjb3B5cmln
aHQgbGljZW5zZSBmaWxlcyBpbiB0aGUgYXV0b3Rvb2xzIGRpc3QgdGFyZ2V0LgoKICAgICAgICBD
aGFuZ2Ugc3VnZ2VzdGVkIGJ5IE1pa2UgSG9tbWV5LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFt
OgoKMjAwOC0xMC0yNSAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4K
CiAgICAgICAgR3RrIGJ1aWxkIGZpeDogYWRkICctJyB0byBXbCB3aGljaCB3YXMgbWlzc2VkIGlu
IHIzNjg0NQoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOC0xMC0yMiAgQWxwIFRva2Vy
ICA8YWxwQG51YW50aS5jb20+CgogICAgICAgIEZpeCBidWlsZCBmb3IgQ2Fpcm8gMS4yLgoKICAg
ICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMTAtMjAgIEFscCBUb2tlciAgPGFscEBudWFudGku
Y29tPgoKICAgICAgICBQYXJ0aWFsIEdUSysvV2luMzIgYnVpbGQgZml4LiBMb3dlcmNhc2UgbGli
cmFyeSBuYW1lIHRvIGVuYWJsZSBsaW5raW5nCiAgICAgICAgd2hlbiBjcm9zcy1jb21waWxpbmcg
V2luZG93cyBiaW5hcmllcyBmcm9tIExpbnV4OiAtbFdzMl8zMiAtPiAtbHdzMl8zMgoKICAgICAg
ICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMTAtMTMgIEFscCBUb2tlciAgPGFscEBudWFudGkuY29t
PgoKICAgICAgICBHVEsrIGJ1aWxkIGZpeDogRW5zdXJlIGNvcnJlY3QgYnVpbGRzIHdoZW4gZGVi
dWdnaW5nIGlzCiAgICAgICAgZW5hYmxlZC9kaXNhYmxlZCBieSBkZWZpbmluZyBOREVCVUcgaW4g
YXV0b3Rvb2xzY29uZmlnLmggYXMgbmVlZGVkLgogICAgICAgIEl0J3Mgc3RpbGwgcGFzc2VkIGFz
IGEgY29tcGlsZXIgZmxhZyBzaW5jZSBzb21lIHNvdXJjZXMgKERSVCkgZG9uJ3QKICAgICAgICB1
c2UgY29uZmlnLmggeWV0LgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMTAtMDkgIEFs
cCBUb2tlciAgPGFscEBudWFudGkuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBNYXJrIFJvd2Uu
CgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc2MAog
ICAgICAgIEltcGxlbWVudCBzdXBwb3J0IGZvciB4ODYgTGludXggaW4gQ1RJCgogICAgICAgIFBy
ZXBhcmUgdG8gZW5hYmxlIENUSS9XUkVDIG9uIHN1cHBvcnRlZCBhcmNoaXRlY3R1cmVzLiBXaWxs
IGJlCiAgICAgICAgc3dpdGNoZWQgb24gd2hlbiB0aGUgY3Jhc2hlciBpbnRyb2R1Y2VkIGluIHIz
NzM4NiBpcyByZXNvbHZlZC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTEwLTA3ICBB
bHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNvbT4KCiAgICAgICAgR1RLKyBidWlsZCBmaXggZm9yIG9s
ZGVyIGF1dG9tYWtlIHZlcnNpb25zICgxLjcpLiBEaXNjdXNzZWQgaW4gYnVnCiAgICAgICAgIzIx
MzkyLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOC0xMC0wNyAgQWxwIFRva2VyICA8
YWxwQG51YW50aS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KCiAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMzkyCiAgICAgICAgW0dU
S10gQXV0by1nZW5lcmF0ZSBKUyBET00gYmluZGluZyBzb3VyY2VzIGxpc3QKCiAgICAgICAgUmVt
b3ZlIHRoZSBodWdlIGxpc3RzIG9mIGdlbmVyYXRlZCBET00gYmluZGluZyBzb3VyY2VzIGFuZCBo
ZWFkZXJzIGluCiAgICAgICAgdGhlIGJ1aWxkIHN5c3RlbS4gVGhlc2UgYXJlIGRpZmZpY3VsdCB0
byBtYWludGFpbiBhbmQgY2FuIGJlIGRlcml2ZWQKICAgICAgICBhdXRvbWF0aWNhbGx5LgoKICAg
ICAgICBUaGUgbmV3IHN0cmF0ZWd5IGlzIHRvIHJlLXVzZSB0aGUgZXhpc3RpbmcgbGlzdHMgb2Yg
SURMIHNvdXJjZXMgKHdoaWNoCiAgICAgICAgYXJlIG5lZWRlZCBmb3IgZGlzdCBzdXBwb3J0IGFu
eXdheSkuIFRoaXMgd2lsbCBhbHNvIGVhc2UgdGhlIGFkZGl0aW9uCiAgICAgICAgb2YgbmV3IGxh
bmd1YWdlIGJpbmRpbmdzLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOC0wOS0yNyAg
SmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyLgoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjAyODcKICAgICAgICBbR3RrXSBkaXNhYmxlIHBsdWdpbnMgZm9yIGd0
ay9kaXJlY3RmYiB0YXJnZXQKCiAgICAgICAgSW50cm9kdWNlIFdURl9QTEFURk9STV9YMTEgZm9y
IFgxMSBidWlsZHMuCiAgICAgICAgQWxzbyB1c2UgdGFyZ2V0LXNwZWNpZmljIHBhY2thZ2VzIHdo
ZW4gYnVpbGRpbmcgdGhlIHBvcnQKCiAgICAgICAgKiBjb25maWd1cmUuYWM6IERvIG5vdCBjaGVj
ayBmb3IgY2Fpcm8tZnQgZm9yIGRpcmVjdGZiIGJ1aWxkcy4KCjIwMDgtMDktMjcgIE1hcmNvIEJh
cmlzaW9uZSAgPG1hcmNvLmJhcmlzaW9uZUBjb2xsYWJvcmEuY28udWs+CgogICAgICAgIFJldmll
d2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjExNzQKICAgICAgICBbR1RLXVtBVVRPVE9PTFNdIEVuYWJsZSBsYXJn
ZSBmaWxlIHN1cHBvcnQgYXQgY29uZmlndXJlIHRpbWUKCiAgICAgICAgKiBjb25maWd1cmUuYWM6
IEVuYWJsZSBsYXJnZSBmaWxlIHN1cHBvcnQgd2l0aCBBQ19TWVNfTEFSR0VGSUxFLgoKMjAwOC0w
OS0yMyAgUmljaGFyZCBIdWx0ICA8cmljaGFyZEBpbWVuZGlvLmNvbT4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgQWxwIFRva2VyLiBMYW5kZWQgYnkgSmFuIEFsb256by4KCiAgICAgICAgaHR0cDovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA1ODIKICAgICAgICBbR3RrXSBMaW5rIGVy
cm9yIG9uIE1hYyBPUyBYCgogICAgICAgICogR05VbWFrZWZpbGUuYW06IE9ubHkgdXNlIHRoZSAt
dmVyc2lvbi1zY3JpcHQgZmxhZyBmb3IgdGhlIGdudQogICAgICAgIGxpbmtlci4KICAgICAgICAq
IGNvbmZpZ3VyZS5hYzogQ2hlY2sgZm9yIEdOVSBPU2VzLgoKMjAwOC0wOS0xOSAgQWxwIFRva2Vy
ICA8YWxwQG51YW50aS5jb20+CgogICAgICAgIEJ1aWxkIGZpeCBmb3IgdGhlICdnb2xkJyBsaW5r
ZXIgYW5kIHJlY2VudCBiaW51dGlscy4gTmV3IGJlaGF2aW91cgogICAgICAgIHJlcXVpcmVzIHRo
YXQgd2UgbGluayB0byB1c2VkIGxpYnJhcmllcyBleHBsaWNpdGx5LgoKICAgICAgICAqIEdOVW1h
a2VmaWxlLmFtOgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wOS0wNCAgTWFyY28gQmFy
aXNpb25lICA8bWFyY28uYmFyaXNpb25lQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwMzgwCiAgICAgICAgW0dUS11bQVVUT1RPT0xTXSBJbmNsdWRlIGF1dG90b29s
c2NvbmZpZy5oIGZyb20gY29uZmlnLmgKCiAgICAgICAgKiBjb25maWd1cmUuYWM6IFJlbmFtZSB0
aGUgY29uZmlndXJhdGlvbiBoZWFkZXIgZnJvbSBhY29uZmlnLmggdG8gYXV0b3Rvb2xzY29uZmln
LmguCgoyMDA4LTA4LTI4ICBBbHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNvbT4KCiAgICAgICAgR1RL
KyBkaXN0L2J1aWxkIGZpeC4gTGlzdCBuZXdseSBhZGRlZCBoZWFkZXIgZmlsZXMuCgogICAgICAg
ICogR05VbWFrZWZpbGUuYW06CgoyMDA4LTA4LTI3ICBNaWtlIEhvbW1leSA8Z2xhbmRpdW1AZGVi
aWFuLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyLgoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOgogICAgICAgICogc3ltYm9scy5maWx0ZXI6IEFkZGVkLgoKMjAwOC0wOC0xMCAgSmFu
IE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQg
KGFuZCB1cGRhdGVkKSBieSBBbHAgVG9rZXIuCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNjYyMAogICAgICAgIFtHVEtdIEF1dG90b29scyBtYWtlIGRp
c3QgYW5kIG1ha2UgY2hlY2sgc3VwcG9ydAoKICAgICAgICBHZXQgbWFrZSBkaXN0IHdvcmtpbmcu
CgogICAgICAgIE5vdGUgdGhhdCBub3QgYWxsIHBvc3NpYmxlIGNvbmZpZ3VyYXRpb25zIGhhdmUg
YmVlbiB0ZXN0ZWQgeWV0LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOC0wOC0wOSAg
TWFyY28gQmFyaXNpb25lICA8bWFyY28uYmFyaXNpb25lQGNvbGxhYm9yYS5jby51az4KCiAgICAg
ICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoKICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTA0NQogICAgICAgIFtndGtdIC4vY29uZmlndXJlIGRvZXNuJ3Qg
Y2hlY2sgZm9yIHggdG9vbGtpdCBhdmFpbGFiaWxpdHkKCiAgICAgICAgU29tZSBvbGQgdmVyc2lv
bnMgb2YgWHQgZG8gbm90IHByb3ZpZGUgeHQucGMsIGluIHRoaXMgY2FzZSB1c2UKICAgICAgICBB
Q19DSEVDS19MSUIgdG8gY2hlY2sgaWYgdGhlIGxpYnJhcnkgaXMgaW5zdGFsbGVkIGFuZCB0aGVu
IGZhbGwgYmFjawogICAgICAgIHRvIHVzaW5nIGp1c3QgLWxYdC4KCiAgICAgICAgKiBjb25maWd1
cmUuYWM6CgoyMDA4LTA4LTA5ICBBbHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNvbT4KCiAgICAgICAg
R1RLKyBidWlsZCBmaXhlcy4KCiAgICAgICAgQmFjayBvdXQgcjIwMzM4IGxpYnhzbHQgY2hlY2sg
KGNvbmRpdGlvbmFsIGNoZWNrIGFscmVhZHkgZXhpc3RzIGFuZAogICAgICAgIHRoaXMgYnJva2Ug
dGhlIGJ1aWxkKS4KCiAgICAgICAgTWFrZSB0aGUgZmxleCB2ZXJzaW9uIGNoZWNrIGEgd2Fybmlu
ZyByYXRoZXIgdGhhbiBmYXRhbCB0byBmaXggdGhlCiAgICAgICAgYnVpbGQgYm90LgoKICAgICAg
ICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMDgtMDggIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxv
bnpvQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KCiAgICAgICAg
aHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAzMzgKICAgICAgICBbR3Rr
XSBBdXRvdG9vbHMgc2hvdWxkIGNoZWNrIGZvciBsaWJ4c2x0CgogICAgICAgIEF1dG90b29scyBj
aGVjayBmb3IgbGlieHNsdAoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMDgtMDcgIEth
bGxlIFZhaGxtYW4gIDx6dWhAaWtpLmZpPgoKICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBLaWx6
ZXIuCgogICAgICAgIENoZWNrIGZvciBjb3JyZWN0IGZsZXggdmVyc2lvbiB0byBhdm9pZCBmYXVs
dHkgYnVpbGRzCgogICAgICAgIEEgY29ycmVjdCBXZWJraXQgYnVpbGQgcmVxdWlyZXMgZmxleCAy
LjUuMzMgYnV0IGF1dG90b29scyBidWlsZCBkb2Vzbid0IGNoZWNrIGZvciBpdAogICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI1MwoKICAgICAgICBhY2lu
Y2x1ZGUubTQ6IEltcG9ydCBBWF9DT01QQVJFX1ZFUlNJT04gbWFjcm8KICAgICAgICBjb25maWd1
cmUuYWM6IENoZWNrIGZvciBmbGV4IHZlcnNpb24KCiAgICAgICAgKiBhY2luY2x1ZGUubTQ6CiAg
ICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTA4LTA3ICBTaW1vbiBIYXVzbWFubiAgPGhhdXNt
YW5uQHdlYmtpdC5vcmc+CgogICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IExhcnMuCgogICAgICAg
IEFkZGVkIEFQSSB0ZXN0cyBmb3IgUVdlYlBhZ2UvUVdlYkZyYW1lIGJhc2VkIG9uIFFUZXN0TGli
LgoKICAgICAgICAqIFdlYktpdC5wcm86IEFkZCBXZWJLaXQvcXQvdGVzdHMgdG8gdGhlIGJ1aWxk
LgoKMjAwOC0wOC0wNiAgTWFyY28gQmFyaXNpb25lICA8bWFyY28uYmFyaXNpb25lQGNvbGxhYm9y
YS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCgogICAgICAgIGh0dHA6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjc2CiAgICAgICAgW0dUS10gTWFr
ZWZpbGUgcnVsZXMgZm9yIHRoZSBlbnVtIEdUeXBlcyBmaWxlcyBkZXBlbmQgb24gTWFrZWZpbGUK
ICAgICAgICBpbnN0ZWFkIG9mIEdOVW1ha2VmaWxlCgogICAgICAgIFRoZSBwYXRjaCBjb21taXR0
ZWQgaW4gcmV2aXNpb24gMzQ2NDkgYWRkZWQgdGhlIGNvZGUgbmVlZGVkIHRvCiAgICAgICAgZ2Vu
ZXJhdGUgR1R5cGVzIGZvciBlbnVtcyBidXQgdGhlIG1ha2VmaWxlIHJ1bGVzIGZvcgogICAgICAg
IHN0YW1wLXdlYmtpdGVudW10eXBlcy5oIGFuZCB3ZWJraXRlbnVtdHlwZXMuY3BwIHdlcmUgZGVw
ZW5kaW5nIG9uCiAgICAgICAgTWFrZWZpbGUgKHVzZWQgYnkgb3RoZXIgcG9ydHMpIGluc3RlYWQg
b2YgR05VbWFrZWZpbGUuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06IERlcGVuZCBvbiBHTlVt
YWtlZmlsZSBpbnN0ZWFkIG9mIE1ha2VmaWxlLgoKMjAwOC0wOC0wNSAgTWFyY28gQmFyaXNpb25l
ICA8bWFyY28uYmFyaXNpb25lQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
QWxwIFRva2VyLgoKICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTA0NQogICAgICAgIFtndGtdIC4vY29uZmlndXJlIGRvZXNuJ3QgY2hlY2sgZm9yIHggdG9v
bGtpdCBhdmFpbGFiaWxpdHkKCiAgICAgICAgQ2hlY2sgZm9yIHRoZSAucGMgZmlsZSBmb3IgWHQg
aW5zdGVhZCBvZiBoYXJkIGNvZGluZyAtbFh0IGluIHRoZQogICAgICAgIEdOVW1ha2VmaWxlLmFt
LgoKICAgICAgICBUaGFua3MgdG8gRG9taW5payBSw7Z0dHNjaGVzIGZvciB0aGUgaW5pdGlhbCBw
YXRjaC4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoK
CjIwMDgtMDctMzAgIE1hcmNvIEJhcmlzaW9uZSAgPG1hcmNvLmJhcmlzaW9uZUBjb2xsYWJvcmEu
Y28udWs+CgogICAgICAgIFJldmlld2VkIGJ5IEhvbGdlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3NDIKICAgICAgICBbR1RLXSBBdXRvIGdlbmVy
YXRlIHdlYmtpdG1hcnNoYWwubGlzdAoKICAgICAgICBBdXRvIGdlbmVyYXRlIHdlYmtpdG1hcnNo
YWwubGlzdCBmcm9tIHNvdXJjZSBmaWxlcyB0byByZWR1Y2UgdGhlCiAgICAgICAgbnVtYmVyIG9m
IGNvbmZsaWN0cyB3aGVuIG1lcmdpbmcgZ2l0IGJyYW5jaGVzIG9yIHdoZW4gYXBwbHlpbmcKICAg
ICAgICBwYXRjaGVzLgogICAgICAgIEFsc28gcmVuYW1lIHdlYmtpdC1tYXJzaGFsLiogdG8gd2Vi
a2l0bWFyc2hhbC4qIGZvciBjb25zaXN0ZW5jeS4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToK
CjIwMDgtMDctMjUgIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+Cgog
ICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KCiAgICAgICAgQ29weSB0aGUgd2F5IEd0ayBk
ZXRlY3RzIGpwZWdsaWIuIEhpbnRlZCBieSBXb3V0ZXIgQm9sc3RlcmxlZS4KCiAgICAgICAgW0d0
a10gSW1wcm92ZSBkZXRlY3Rpb24ganBlZ2xpYgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzg2NQoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wNy0yNSAgU2ltb24gSGF1c21hbm4gIDxoYXVzbWFu
bkB3ZWJraXQub3JnPgoKICAgICAgICBEaXNjdXNzZWQgd2l0aCBhbmQgcnViYmVyLXN0YW1wZWQg
YnkgTGFycy4KCiAgICAgICAgRml4IHRoZSBidWlsZCBzeXN0ZW0gZm9yIHRoZSBRdCBwb3J0LgoK
ICAgICAgICBSZWNlbnQgSmF2YVNjcmlwdENvcmUgY2hhbmdlcyByZXF1aXJlIHRoZSBhZGRpdGlv
biBvZiBKYXZhU2NyaXB0Q29yZS9BUEkgdG8gdGhlCiAgICAgICAgaW5jbHVkZSBzZWFyY2ggcGF0
aC4gV2l0aCBhIGJ1aWxkIHByb2Nlc3MgdGhhdCBjb21iaW5lcyBKYXZhU2NyaXB0Q29yZSBhbmQK
ICAgICAgICBXZWJDb3JlIGluIG9uZSBidWlsZCBwcm9jZXNzL01ha2VmaWxlIHRoZSBleGlzdGFu
Y2Ugb2YKICAgICAgICBKYXZhU2NyaXB0Q29yZS9BUEkvTm9kZS5oIGFuZCBXZWJDb3JlL2RvbS9O
b2RlLmggY2F1c2VzIGluY2x1ZGUgY29uZmxpY3RzLgoKICAgICAgICBUaGlzIGNvbW1pdCBzb2x2
ZXMgdGhpcyBieSBpbnRyb2R1Y2luZyBhIHNlcGFyYXRlIGJ1aWxkIG9mIEphdmFTY3JpcHRDb3Jl
IGludG8KICAgICAgICBhIHN0YXRpYyBsaWJyYXJ5LgoKICAgICAgICBBcyBhIHJlc3VsdCBvZiB0
aGUgc3BsaXQtdXAgYSByYWNlLWNvbmRpdGlvbiBkdWUgdG8gYnJva2VuIGRlcGVuZGVuY2llcyBv
ZgogICAgICAgIHJlZ3VsYXIgc291cmNlIGZpbGVzIHRvIGhlYWRlciBmaWxlcyBvZiBnZW5lcmF0
ZWQgc291cmNlcyBzaG93ZWQgdXAgdmVyeQogICAgICAgIGZyZXF1ZW50bHkgd2hlbiBkb2luZyBw
YXJhbGxlbCBidWlsZHMgKHdoaWNoIHRoZSBidWlsZGJvdCBkb2VzKS4gVGhpcyBjb21taXQgYXQK
ICAgICAgICB0aGUgc2FtZSB0aW1lIHRyaWVzIHRvIGFkZHJlc3MgdGhlIGRlcGVuZGVuY3kgcHJv
YmxlbSBieSBtYWtpbmcgdGhlCiAgICAgICAgYWRkRXh0cmFDb21waWxlcigpIGZ1bmN0aW9uIGFs
c28gZ2VuZXJhdGUgYSBwc2V1ZG8gZXh0cmEgY29tcGlsZXIgdGhhdAogICAgICAgIHJlcHJlc2Vu
dHMgdGhlIGhlYWRlciBmaWxlIG91dHB1dCwgc28gdGhhdCBxbWFrZSBpcyBhd2FyZSBvZiB0aGUg
Y3JlYXRpb24gb2YKICAgICAgICB0aGUgaGVhZGVyIGZpbGUgZm9yIGRlcGVuZGVuY3kgY2FsY3Vs
YXRpb24uCgogICAgICAgIEF0IHRoZSBzYW1lIHRpbWUgSSByZW1vdmVkIGEgbG90IG9mIGNydWZ0
IGZyb20gdGhlIHBybyBmaWxlcyB0byBlYXNlIG1haW50ZW5hbmNlLgoKICAgICAgICAqIFdlYktp
dC5wcmk6CiAgICAgICAgKiBXZWJLaXQucHJvOgoKMjAwOC0wNi0xOCAgTWFyY28gQmFyaXNpb25l
ICA8bWFyY28uYmFyaXNpb25lQGNvbGxhYm9yYS5jby51az4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
QWxwIFRva2VyLgoKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTkxNzEKICAgICAgICBbR1RLXSBHVHlwZXMgZm9yIGVudW1lcmF0aW9ucwoKICAgICAgICBH
ZW5lcmF0ZSBHVHlwZXMgZm9yIHB1YmxpYyBlbnVtZXJhdGlvbnMgc28gdGhleSBjYW4gYmUgdXNl
ZCBhcwogICAgICAgIHByb3BlcnRpZXMuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06IEdlbmVy
YXRlIHdlYmtpdC1lbnVtLXR5cGVzLmNwcCBhbmQKICAgICAgICB3ZWJraXQtZW51bS10eXBlcy5o
LgoKMjAwOC0wNi0xNiAgU2ltb24gSGF1c21hbm4gIDxoYXVzbWFubkB3ZWJraXQub3JnPgoKICAg
ICAgICBGaXggdGhlIFF0IGJ1aWxkLiB0ZXN0a2pzLnBybyBpcyBub3cgY2FsbGVkIGpzYy5wcm8u
CgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMDgtMDYtMTUgIEFscCBUb2tlciAgPGFscEBudWFu
dGkuY29tPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBNYWNpZWouCgogICAgICAgIEluc3Rh
bGwgJ2pzYycgYXBwbGljYXRpb24gYnkgZGVmYXVsdC4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5h
bToKCjIwMDgtMDYtMDggIEFscCBUb2tlciAgPGFscEBudWFudGkuY29tPgoKICAgICAgICBhdXRv
dG9vbHMvR1RLKyBidWlsZCBzeXN0ZW0gY2xlYW51cC4gRG9uJ3QgaW5jbHVkZSBXZWJLaXQgQVBJ
IGluIHRoZQogICAgICAgIFdlYkNvcmUgYnVpbGQgYXMgaXQncyBubyBsb25nZXIgbmVlZGVkIHNp
bmNlIHIzNDQyNi4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDgtMDYtMDggIEFscCBU
b2tlciAgPGFscEBudWFudGkuY29tPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBNYXJrIFJv
d2UuCgogICAgICAgIEJyaW5nIGJhY2sgLWZzdHJpY3QtYWxpYXNpbmcgZm9yIEphdmFTY3JpcHRD
b3JlIHdoaWNoIHdhcyByZW1vdmVkIGluCiAgICAgICAgcjMxODIxLCBzaW5jZSBhbGlhc2luZyBp
c3N1ZXMgaGF2ZSBub3cgYmVlbiBmaXhlZC4KCiAgICAgICAgVXNlIC1PMywgbm90IC1PMiBmb3Ig
dGhlIEphdmFTY3JpcHRDb3JlIGJ1aWxkLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wNi0wNSAgQ2hyaXN0aWFuIER5d2FuICA8Y2hyaXN0
aWFuQHR3b3RvYXN0cy5kZT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoKICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQxNDEKICAgICAgICBQ
bGVhc2UgYWRkIGEgdmVyc2lvbiB0byB0aGUgR3RrIHBvcnQKCiAgICAgICAgKiBHTlVtYWtlZmls
ZS5hbToKCjIwMDgtMDYtMDIgIEFscCBUb2tlciAgPGFscEBudWFudGkuY29tPgoKICAgICAgICBH
VEsrL2F1dG90b29scyBXaW5kb3dzIGJ1aWxkIHN5c3RlbSBmaXhlcy4KCiAgICAgICAgKiBHTlVt
YWtlZmlsZS5hbToKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMDYtMDIgIEphbiBNaWNo
YWVsIEFsb256byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEFs
cCBUb2tlci4KCiAgICAgICAgQnVpbGQgV2ViQ29yZSBHVEsrIHNvdXJjZXMgYXMgcGFydCBvZiBX
ZWJDb3JlLCBub3QgV2ViS2l0LgogICAgICAgIFNwbGl0IGNvbW1vbiBhbmQgR1RLKy1zcGVjaWZp
YyBzb3VyY2VzIGludG8gc2VwYXJhdGUgZmlsZSBsaXN0cy4KCiAgICAgICAgKiBHTlVtYWtlZmls
ZS5hbToKCjIwMDgtMDYtMDEgIEpvc2ggVHJpcGxldHQgIDxqb3NoQGZyZWVkZXNrdG9wLm9yZz4K
CiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoKICAgICAgICBodHRwOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjg5MQogICAgICAgIFtHVEtdIGF1dG90b29scyBidWls
ZCBpcyBzbG93CgogICAgICAgIEFkZCBkb2x0IHJldmlzaW9uIDVlOWVlZjEwIHRvIHRoZSBhdXRv
dG9vbHMgYnVpbGQgc3lzdGVtLiBTcGVlZHMgdXAKICAgICAgICB0aGUgYnVpbGQsIG9mdGVuIGJ5
IGEgZmFjdG9yIG9mIHR3byBvciBtb3JlIG9uIHN1cHBvcnRlZCBwbGF0Zm9ybXMsCiAgICAgICAg
b3RoZXJ3aXNlIGZhbGxzIGJhY2sgdG8gbGlidG9vbC4KCiAgICAgICAgU2VlIGh0dHA6Ly9kb2x0
LmZyZWVkZXNrdG9wLm9yZyBmb3IgZGV0YWlscy4KCiAgICAgICAgKiBhY2luY2x1ZGUubTQ6IEFk
ZGVkLgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wNS0yNSAgSmFuIE1pY2hhZWwgQWxv
bnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2Vy
LgoKICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE0Mgog
ICAgICAgIFtHdGtdIFJlbW92ZSBidWlsZCBvcHRpb25zIC0tc3ZnLWV4cGVyaW1lbnRhbCBhbmQg
LS1jcm9zcy1kb2N1bWVudC1tZXNzYWdpbmcKCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4
LTA1LTI0ICBBbHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNvbT4KCiAgICAgICAgR1RLKy9XaW4zMiBi
dWlsZCBmaXhlcy4gTGluayBhZ2FpbnN0IFdpbmRvd3MgSUNVIHdpdGhvdXQgdXNpbmcKICAgICAg
ICBpY3UtY29uZmlnIHNpbmNlIGl0J3Mgbm90IGF2YWlsYWJsZSBvbiB0aGF0IHBsYXRmb3JtLgoK
ICAgICAgICBMaW5rIGFnYWluc3QgV3MyXzMyIHdoZW4gdGhlIGN1cmwgaHR0cCBiYWNrZW5kIGlz
IGNob3NlbiBzaW5jZSB3ZQogICAgICAgIHVzZSBzZWxlY3QoKSBkaXJlY3RseS4KCiAgICAgICAg
KiBjb25maWd1cmUuYWM6CgoyMDA4LTA1LTIzICBBbHAgVG9rZXIgIDxhbHBAbnVhbnRpLmNvbT4K
CiAgICAgICAgR1RLKyBmaXhlcyBmb3IgYnVpbGRpbmcgd2l0aG91dCBkYXRhYmFzZSBzdXBwb3J0
LgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMDUtMjAgIEphbiBNaWNoYWVsIEFsb256
byAgPGptYWxvbnpvQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEFscCBUb2tlci4K
CiAgICAgICAgRml4IGZvciBwcmV2aW91cyBhdXRvdG9vbHMgY2hhbmdlLgoKICAgICAgICAqIGNv
bmZpZ3VyZS5hYzoKCjIwMDgtMDUtMjAgIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHdl
YmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IEFscC4KCiAgICAgICAgaHR0cDovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0ODMKICAgICAgICBbR3RrXSBBdXRvdG9vbHMg
c2hvdWxkIG1hdGNoIGJ1aWxkLXdlYmtpdCBkZWZhdWx0IGZsYWdzCgogICAgICAgICogY29uZmln
dXJlLmFjOgoKMjAwOC0wNS0xOSAgQWxwIFRva2VyICA8YWxwQG51YW50aS5jb20+CgogICAgICAg
IEdUSysgYnVpbGQgZml4IGZvciBNYWMvV2luLiBEb24ndCBjaGVjayBmb3IgRnJlZVR5cGUvRm9u
dENvbmZpZyB3aGVuCiAgICAgICAgdGhlIFBhbmdvIGZvbnQgYmFja2VuZCBpcyBzZWxlY3RlZC4K
CiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgt
MDUtMTYgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdlYmtpdC5vcmc+CgogICAgICAg
IFJldmlld2VkIGJ5IEVyaWMuCgogICAgICAgIFByZXBhcmF0b3J5IHdvcmsgZm9yIGJ1ZyA5MTkx
OiBKUypFbGVtZW50V3JhcHBlckZhY3Rvcnkgc2hvdWxkIGJlIGF1dG9nZW5lcmF0ZWQKCiAgICAg
ICAgKiBjb25maWd1cmUuYWM6IEFkZCBIVE1MX0ZMQUdTIGFuZCBzZXQgaXQgd2hlbiB2aWRlbyBp
cyBlbmFibGVkLgoKMjAwOC0wNS0xNSAgQXJpeWEgSGlkYXlhdCAgPGFyaXlhLmhpZGF5YXRAdHJv
bGx0ZWNoLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24uCgogICAgICAgIFNpbmNlIFdl
YktpdEd0ayBpcyBmdWxseSB1c2luZyBhdXRvdG9vbHMgbm93LCBjbGVhbi11cCB0aGUgLnByby8u
cHJpIGZpbGVzCiAgICAgICAgZnJvbSBndGstcG9ydC4KCiAgICAgICAgKiBXZWJLaXQucHJpOgog
ICAgICAgICogV2ViS2l0LnBybzoKCjIwMDgtMDUtMDkgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVy
c2NhQGFwcGxlLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTWFyay4KCiAgICAgICAgQWRkIHg4
Nl82NCBydWxlLgoKICAgICAgICAqIE1ha2VmaWxlOgoKMjAwOC0wNS0wOSAgU2ltb24gSGF1c21h
bm4gIDxoYXVzbWFubkB3ZWJraXQub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIuCgog
ICAgICAgIFJlbW92ZWQgZXhwbGljaXQgbGlua2FnZSBhZ2FpbnN0IGxpYnhtbCBhbmQgbGlieHNs
dCBvbiBRdC9NYWMgYnVpbGRzLgoKICAgICAgICBUaGlzIGRlcGVuZGVuY3kgaXMgY29tcGxldGVs
eSB1bm5lY2Vzc2FyeSBoZXJlIGFuZCBjcmVhdGVzIG9ubHkgcHJvYmxlbXMgYnkKICAgICAgICBw
cm9wYWdhdGluZyB0aHJvdWdoIFdlYkNvcmUucHJvIG92ZXIgbGliUXRXZWJLaXQucHJsIHJpZ2h0
IG5vdyBjdXN0b21lcgogICAgICAgIGFwcGxpY2F0aW9ucy4KCgogICAgICAgICogV2ViS2l0LnBy
aToKCjIwMDgtMDUtMDIgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KCiAg
ICAgICAgUmV2aWV3ZWQgYnkgTWFyay4KCiAgICAgICAgQWRkIGFuICJ4ODZfNjQiIG1ha2UgcnVs
ZS4KCiAgICAgICAgKiBNYWtlZmlsZS5zaGFyZWQ6CgoyMDA4LTA1LTAyICBKYW4gTWljaGFlbCBB
bG9uem8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEVy
aWMuCgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODgx
MQogICAgICAgIEVuYWJsZSBkYXNoYm9hcmQgYW5kIG9mZmxpbmUgd2ViIGFwcHMgaW4gYXV0b3Rv
b2xzCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wNS0wMSAgTWFyYyBPcmRpbmFzIGkg
TGxvcGlzICA8bWFyYy5vcmRpbmFzaWxsb3Bpc0Bjb2xsYWJvcmEuY28udWs+CgogICAgICAgIFJl
dmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE0NzUwCiAgICAgICAgQWRkZWQgc3VwcG9ydCBmb3IgTlBBUEkgcGx1Z2lu
cyBvbiBHdGsgYW5kIFF0LXgxMSBwb3J0cy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogQWRk
ZWQgWHQgbGlicmFyeS4KCjIwMDgtMDQtMjkgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxl
LmNvbT4KCiAgICAgICAgQlVJTEQgRklYIGZvciBFTkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCgog
ICAgICAgICogY29uZmlndXJlLmFjOiBBZGRlZCBjb25kaXRpb25hbCBmb3IgRU5BQkxFX0RBU0hC
T0FSRF9TVVBQT1JULgoKMjAwOC0wNC0yMiAgQWxwIFRva2VyICA8YWxwQG51YW50aS5jb20+Cgog
ICAgICAgIEdUSysgZGVidWcgYnVpbGQgZml4IGZvciBjaGFuZ2VzIGluIHIzMjI1Ny4KCiAgICAg
ICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDgtMDQtMTggIEphbiBNaWNoYWVsIEFsb256byAgPGpt
YWxvbnpvQHVucGx1Z2dhYmxlLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoK
ICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjYyMAogICAg
ICAgIFtHVEtdIEF1dG90b29scyBtYWtlIGRpc3QgYW5kIG1ha2UgY2hlY2sgc3VwcG9ydAoKICAg
ICAgICBDbGVhbnVwcy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDgtMDQtMTEgIE1h
cmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KCiAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgQW50
dGkgS29pdmlzdG8uCgogICAgICAgICogR05VbWFrZWZpbGUuYW06IERpc2FibGUgYSB3YXJuaW5n
IHRoYXQgR0NDIDQuMyB0cmlnZ2VycyBhbGwgb3ZlciB0aGUgc2hvdy4KCjIwMDgtMDQtMTcgIEFs
cCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgoKICAgICAgICBHVEsrIGJ1aWxkIGZpeC4gQmFjayBv
dXQgdGhlIGxpYmpwZWcgY2hlY2sgcGFydCBvZiByMzIwMDggZnJvbSBidWcKICAgICAgICAjMTc4
NjUgKHJlb3BlbmVkKS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTA0LTE3ICBKYW4g
TWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc4NjUKICAgICAgICBbR3RrXSBJbXByb3ZlIGRldGVjdGlvbiBvZiBqcGVnbGli
IGFuZCBnbGliIHRvb2xzCgogICAgICAgIEltcHJvdmUgZGV0ZWN0aW5nIGpwZWdsaWIgYW5kIGds
aWIgdG9vbHMKCiAgICAgICAgKiBjb25maWd1cmUuYWM6IFRocm93IGFuIGVycm9yIGlmIHRoZSBk
ZXBlbmRlbmNpZXMgYWJvdmUgYXJlCiAgICAgICAgY3VycmVudGx5IG5vdCBpbnN0YWxsZWQKCjIw
MDgtMDQtMTQgIFhhbiBMb3BleiAgPHhhbkBnbm9tZS5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5
IEFscCBUb2tlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTc5MTcKICAgICAgICBCdWcgMTc5MTc6IENvb2tpZSBzdXBwb3J0IGZvciBIVFRQIHNvdXAg
YmFja2VuZAoKICAgICAgICBCdW1wZWQgdGhlIGxpYnNvdXAgcmVxdWlyZWQgdmVyc2lvbiB0byAy
LjIzIGZvciBjb29raWUgc3VwcG9ydC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTA0
LTExICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CgogICAgICAgIFJ1YmJlci1zdGFtcGVk
IGJ5IEFuZGVycyBDYXJsc3Nvbi4KCiAgICAgICAgRml4IGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODQzMAogICAgICAgIEJ1ZyAxODQzMDogU0lHU0VHViBvbiBhbWQ2
NCB3aGVuIGJ1aWx0IHdpdGggZ2NjIDQuMwoKICAgICAgICBHQ0MgNC4zIGdlbmVyYXRlcyBiYWQg
Y29kZSBpbiBzb21lIGluc3RhbmNlcyB3aGVuIHdvcmtpbmcgd2l0aCBvdXIgSGFzaFRhYmxlcwog
ICAgICAgIGFzIHNvbWUgb2YgdGhlIEhhc2hUYWJsZSBjb2RlIHZpb2xhdGVzIHRoZSBzdHJpY3Qg
YWxpYXNpbmcgcmVxdWlyZW1lbnRzLiAgU2luY2UKICAgICAgICBHQ0MgNC4yIHRoaXMgY29kZSBo
YXMgZ2VuZXJhdGVkIHdhcm5pbmdzIHdoZW4gLWZzdHJpY3QtYWxpYXNpbmcgaXMgZW5hYmxlZC4g
VW50aWwKICAgICAgICB0aGUgY29kZSBjYW4gYmUgZml4ZWQgdG8gYmUgc2FmZSB3aXRoIHN0cmlj
dCBhbGlhc2luZyBlbmFibGVkLCB3ZSB3aWxsIGRpc2FibGUKICAgICAgICBzdHJpY3QgYWxpYXNp
bmcuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA4LTAzLTEyICBNaWNoYWVsIEVtbWVs
ICA8bWlrZS5lbW1lbEBnbWFpbC5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEFscCBUb2tlci4K
CiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgzOTcKICAg
ICAgICBGaXggbGVhdmluZyBzcGFjZXMgYmVmb3JlIHBhcmVucyBpbiBmdW5jdGlvbnMKCiAgICAg
ICAgKiBXZWJLaXRUb29scy9TY3JpcHRzL3drc3R5bGU6CgoyMDA4LTA0LTA3ICBKYW4gTWljaGFl
bCBBbG9uem8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+CgogICAgICAgIEJ1aWxkIGZpeCwg
cnViYmVyLXN0YW1wZWQgYW5kIGxhbmRlZCBieSBhcC4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6
IEFkZCBhdXRvY29uZiBmbGFnIGZvciBIVE1MNSBjbGllbnQtc2lkZSBzZXNzaW9uIGFuZCBwZXJz
aXN0ZW50IHN0b3JhZ2Ugc3VwcG9ydC4KCjIwMDgtMDMtMjEgIFJvZG5leSBEYXdlcyAgPGRvYmV5
QHdheW9mdGhlbW9ua2V5LmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyLgoKICAgICAg
ICBSZW1vdmUgdGhlIEpTQ29yZSBpbmNsdWRlIHBhdGggb3B0aW9ucyBmcm9tIGdsb2JhbF9jcHBm
bGFncy4KICAgICAgICBQbGFjZSBKU0NvcmUgaW5jbHVkZSBwYXRoIG9wdGlvbnMgaW4gamF2YXNj
cmlwdGNvcmVfY3BwZmxhZ3MuCiAgICAgICAgQWRkIGphdmFzY3JpcHRjb3JlX2NwcGZsYWdzIHRv
IGxpYldlYkNvcmVfbGFfQ1BQRkxBR1MuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA4
LTAzLTIwICBKYXNwZXIgQnJ5YW50LUdyZWVuZSAgPGphc3BlckB1bml4LmdlZWsubno+CgogICAg
ICAgIFJldmlld2VkIGJ5IEFuZGVycy4KCiAgICAgICAgUmVzb2x2ZXMgaHR0cDovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwOTIKICAgICAgICAiW0dUS10gTWlkZGxlLW1vdXNl
IGNsaWNrIHNob3VsZCBhbGxvdyBvcGVuaW5nIGEgVVJMIGluIGEgbmV3IHRhYiIKCiAgICAgICAg
QWRkZWQgV2ViS2l0TmF2aWdhdGlvbkFjdGlvbiBvYmplY3QgdG8gR1RLIEFQSQoKICAgICAgICAq
IEdOVW1ha2VmaWxlLmFtOgoKMjAwOC0wMy0xMiAgWGFuIExvcGV6ICA8eGFuQGdub21lLm9yZz4K
CiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoKICAgICAgICBodHRwOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTIyOQoKICAgICAgICBBZGQgb3B0aW9uYWwgZm9udCBi
YWNrZW5kIHN1cHBvcnQgd2l0aCBmcmVldHlwZSBhbmQgcGFuZ28KICAgICAgICBiYWNrZW5kcy4g
RGVmYXVsdCBpcyBmcmVldHlwZSBmb3Igbm93LgoKICAgICAgICBPcmlnaW5hbCBwYXRjaCBieSBT
dmVuIEhlcnpiZXJnIDxzdmVuQGltZW5kaW8uY29tPgoKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoK
CjIwMDgtMDMtMTEgIFhhbiBMb3BleiAgPHhhbkBnbm9tZS5vcmc+CgogICAgICAgIFJldmlld2Vk
IGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTY0NzYKCiAgICAgICAgQWRkIHN1cHBvcnQgZm9yIG11bHRpcGxlIGh0dHAgYmFja2Vu
ZHMsIGFuZCBhZGQgc291cCBiYWNrZW5kIChvZmYgYnkgZGVmYXVsdCkuCgogICAgICAgICogR05V
bWFrZWZpbGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTAzLTA3ICBTaW1vbiBI
YXVzbWFubiAgPGhhdXNtYW5uQHdlYmtpdC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IERhcmlu
IEFkbGVyLgoKICAgICAgICBEb25lIHdpdGggTGFycy4KCiAgICAgICAgQWRkZWQgcGx1Z2lucyBz
dWJkaXJlY3RvcnkgdG8gdGhlIGluY2x1ZGUgcGF0aC4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoK
MjAwOC0wMy0wOSAgQWxwIFRva2VyICA8YWxwQGF0b2tlci5jb20+CgogICAgICAgIEdUSysgYnVp
bGQgZml4IGZvciByMzA5MTMuCgogICAgICAgIFVzZSBVTklDT0RFX0NGTEFHUyBmb3IgQysrIHNv
dXJjZXMgYXMgd2VsbCBhcyBDIHNvdXJjZXMuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06Cgoy
MDA4LTAzLTA5ICBKw7ZyZyBCaWxsZXRlciAgPGpAYml0cm9uLmNoPgoKICAgICAgICBSZXZpZXdl
ZCBieSBBbHAgVG9rZXIuCgogICAgICAgIENvbmRpdGlvbmFsaXNlIElDVSBmb3IgVW5pY29kZSBp
biB0aGUgR1RLKyBwb3J0LgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgogICAgICAgICogY29u
ZmlndXJlLmFjOgoKMjAwOC0wMy0wMyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGdtYWlsLmNv
bT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoKICAgICAgICBodHRwOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzY0NAogICAgICAgIEJ1aWxkIEdUSyBvbiBNYWMg
T1MgWCB1c2luZyBuYXRpdmUgSUNVIGxpYnJhcnkKCiAgICAgICAgVXNlIEFwcGxlIG5hdGl2ZSBJ
Q1UgbGlicmFyaWVzIHdoZW4gYnVpbGRpbmcgR1RLCiAgICAgICAgd2Via2l0IG9uIE1hYyBPUy4K
CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTAzLTAyICBCcmVudCBGdWxnaGFtICA8YmZ1
bGdoYW1AZ21haWwuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBBbHAgVG9rZXIuCgogICAgICAg
IEFkZCBJQ1VfQ1BQRkxBR1MgZWFybGllciBpbiBpbmNsdWRlIHBhdGggZm9yIFdlYkNvcmUKICAg
ICAgICBzbyB0aGF0IHdlIGZpbmQgJChpY3VfY3BwZmxhZ3MpL3VuaWNvZGUvdXRmOC5oLCByYXRo
ZXIgdGhhbgogICAgICAgIHRoZSB3dGYvdW5pY29kZS9VVEY4Lmggb24gY2FzZS1pbnNlbnNpdGl2
ZSBmaWxlIHN5c3RlbXMuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA4LTAzLTAyICBB
bHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dl
LgoKICAgICAgICBTcGxpdCB0aGUgV2ViS2l0IEdUSysgYnVpbGQgb3V0IG9mIHRoZSBXZWJDb3Jl
IGJ1aWxkIGFuZCBjaGFuZ2UgdGhlCiAgICAgICAgc2hhcmVkIG9iamVjdCBuYW1lIHRvIG1hdGNo
IHRoZSBwYWNrYWdlIG5hbWUuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA4LTAyLTI4
ICBBbHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgRml4IGEgY29uZmlndXJlIHNj
cmlwdCB0eXBvIHNwb3R0ZWQgYnkgS2FsbGUgVmFobG1hbi4KCiAgICAgICAgKiBjb25maWd1cmUu
YWM6CgoyMDA4LTAyLTI2ICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4KCiAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCgogICAgICAgIEFkZCAiNjQiIGFuZCAiNjR1
IiBtYWtlIHJ1bGVzIHRvIGFsbG93IGVhc3kgYnVpbGRpbmcgb2YgNjQtYml0IHZlcnNpb25zLgoK
ICAgICAgICBtYWtlIDY0OiB3aWxsIGJ1aWxkIEludGVsLW9ubHkgNjQtYml0LgogICAgICAgIG1h
a2UgNjR1OiB3aWxsIGJ1aWxkIDQtd2F5IHVuaXZlcnNhbCBmb3IgUFBDIGFuZCBJbnRlbC4KCiAg
ICAgICAgKiBNYWtlZmlsZToKICAgICAgICAqIE1ha2VmaWxlLnNoYXJlZDoKCjIwMDgtMDItMjMg
IEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpvQHVucGx1Z2dhYmxlLmNvbT4KCiAgICAgICAg
UnViYmVyIHN0YW1wZWQgYnkgRGFyaW4gQWRsZXIuCgogICAgICAgIEFkZCBzZXBhcmF0b3IgJ1wn
IGFmdGVyIGxpYkphdmFTY3JpcHRDb3JlX2xhX0xJQkFERCBhbmQgY2xlYW51cAogICAgICAgIHdo
aXRlc3BhY2VzIGludHJvZHVjZWQgaW4gdGhlIHByZXZpb3VzIGNvbW1pdC4KCiAgICAgICAgKiBH
TlVtYWtlZmlsZS5hbToKCjIwMDgtMDItMjMgIEphbiBNaWNoYWVsIEFsb256byAgPGptYWxvbnpv
QHVucGx1Z2dhYmxlLmNvbT4KCiAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgRGFyaW4gQWRsZXIu
CgogICAgICAgICogR05VbWFrZWZpbGUuYW06IEFkZCBib3RoIEdMT0JBTERFUFMgYW5kIFdFQktJ
VERFUFMgaW5zdGVhZCBvZiBERVBFTkRFTkNJRVMuCiAgICAgICAgKiBjb25maWd1cmUuYWM6IEJy
ZWFrIGRlcGVuZGVudCBtb2R1bGVzIGludG8gR0xPQkFMREVQUyBhbmQgV0VCS0lUREVQUy4KCjIw
MDgtMDItMjEgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgoKICAgICAgICBGaXggYSBjb25m
aWd1cmUgc2NyaXB0IHR5cG8uCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wMi0yMSAg
QWxwIFRva2VyICA8YWxwQGF0b2tlci5jb20+CgogICAgICAgIEdUSysvYXV0b3Rvb2xzIFNWRyBl
eHBlcmltZW50YWwgYnVpbGQgZml4CgogICAgICAgIERvbid0IGVuYWJsZSBTVkcgZmlsdGVycyBp
biAtLWVuYWJsZS1zdmctZXhwZXJpbWVudGFsLgoKICAgICAgICBUaGlzIGZlYXR1cmUgaXNuJ3Qg
c3VwcG9ydGVkIGF0IGFsbCB5ZXQuIERldmVsb3BlcnMgY2FuIGVuYWJsZSBpdAogICAgICAgIGV4
cGxpY2l0bHkgYnkgcGFzc2luZyAtLWVuYWJsZS1zdmctZmlsdGVycyBpZiBuZWVkZWQuCgogICAg
ICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wMi0yMSAgTWlrZSBBdXR5ICA8bWlrZS5hdXR5QGdt
YWlsLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoKICAgICAgICBodHRwOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzQ0NQogICAgICAgIFtHVEtdIFdlYktp
dCBkb2Vzbid0IGNvbXBpbGUgd2l0aCBMREZMQUdTPSItV2wsLS1hcy1uZWVkZWQiCgogICAgICAg
IFRoZSBHTlVtYWtlZmlsZS5hbSBmaWxlcyBtYWtlIHVzZSBvZiB0aGUgTERGTEFHUyB2YXJpYWJs
ZSB0byBpbmNsdWRlIGxpYnJhcnkKICAgICAgICBhZGRpdGlvbnMgc3VjaCBhcyAtbGpwZWcgZXRj
LiAgVW5mb3J0dW5hdGVseSwgaWYgdGhlc2UgaW5jbHVzaW9ucyBhcmVuJ3QgbWFkZQogICAgICAg
IGluIExJQkFERC9MREFERCB2YXJpYWJsZXMsIHRoZW4gdGhleSBhcmUgbWlzLW9yZGVyZWQgZHVy
aW5nIHRoZSBsaW5raW5nLgoKICAgICAgICBUaGUgYXMtbmVlZGVkIGZsYWcgZGlzY2FyZHMgbGli
cmFyaWVzIHdob3NlIGZ1bmN0aW9ucyBoYXZlIG5vdCBiZWVuIG5lZWRlZCBieQogICAgICAgIGVh
cmxpZXIgbGlicmFyaWVzLCB3aGljaCB0aGVyZWZvcmUgbWFrZXMgdGhlIG9yZGVyaW5nIGltcG9y
dGFudC4KCiAgICAgICAgVGhpcyBtb3ZlcyBhbGwgLWwgbGlicmFyeSBpbmNsdXNpb24gc3RhdGVt
ZW50cyBmcm9tIExERkxBR1MgdmFyaWFibGVzIHRvCiAgICAgICAgTElCQUREL0xEQUREIHZhcmlh
Ymxlcy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDgtMDItMTUgIEFscCBUb2tlciAg
PGFscEBhdG9rZXIuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIuCgogICAgICAgIEdU
SysgY29uZmlndXJlIHNjcmlwdCBjbGVhbnVwcwoKICAgICAgICBDYXRlZ29yaXplIHRoZSBjb25m
aWd1cmF0aW9uIHN1bW1hcnkgcHJpbnRvdXQuCiAgICAgICAgQnVtcCBHVEsrIHJlcXVpcmVtZW50
IHRvIDIuOC4KICAgICAgICBSZW5hbWUgJ3dlYmtpdF90YXJnZXQnIHRvIGp1c3QgJ3RhcmdldCcu
CiAgICAgICAgRG9uJ3QgY2hlY2sgZm9yIHB0aHJlYWQgb24gV2luMzIuCgogICAgICAgICogY29u
ZmlndXJlLmFjOgoKMjAwOC0wMi0xNCAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+Cgog
ICAgICAgIFR1cm4gb24gY3Jvc3MtZG9jdW1lbnQgbWVzc2FnaW5nIHN1cHBvcnQgYnkgZGVmYXVs
dAoKICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KCiAgICAgICAgKiBjb25maWd1cmUu
YWM6CgoyMDA4LTAyLTE0ICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KCiAgICAgICAg
Q29uZGl0aW9uYWxpemUgY3Jvc3MtZG9jdW1lbnQgbWVzc2FnaW5nIHN1cHBvcnQKCiAgICAgICAg
VGhlIGNyb3NzLWRvY3VtZW50IG1lc3NhZ2luZyBwYXJ0cyBvZiBIVE1MIDUgYXJlIGluIGZsdXgg
YW5kIHdlIHdhbnQKICAgICAgICBwb3J0cyB0byBiZSBhYmxlIHRvIHR1cm4gb2ZmIHRoZSBzdXBw
b3J0IGFzIG5lZWRlZC4KCiAgICAgICAgTm90ZSB0aGF0IHRoZSBzdXBwb3J0IGlzIHR1cm5lZCBv
ZmYgYnkgZGVmYXVsdCByaWdodCBub3cuIEEgc3Vic2VxdWVudAogICAgICAgIGNvbW1pdCB3aWxs
IHR1cm4gaXQgb24gYnkgZGVmYXVsdC4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wMi0xMiAgUm9kbmV5IERhd2VzICA8ZG9i
ZXlAd2F5b2Z0aGVtb25rZXkuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBBbHAgVG9rZXIuCgog
ICAgICAgIEFkZCBhIC0td2l0aC1oaWxkb24gYXJndW1lbnQgdG8gY29uZmlndXJlLmFjIGZvciBh
ZGRpbmcgTUFFTU9fQ0hBTkdFUwogICAgICAgIHRvIHRoZSBDUFBGTEFHUyBmb3IgV2ViQ29yZSBh
bmQgV2ViS2l0CiAgICAgICAgQWRkIGEgcGtnY29uZmlnIGNoZWNrIGZvciBoaWxkb24tMSB3aGVu
IC0td2l0aC1oaWxkb24gc3BlY2lmaWVkCiAgICAgICAgT3V0cHV0IHRoZSB1c2Ugb2YgSGlsZG9u
IHN1cHBvcnQgaW4gdGhlIHN1bW1hcnkKICAgICAgICBBZGQgSElMRE9OX0NQUEZMQUdTIHRvIHdl
YmtpdGd0a19jcHBmbGFncwogICAgICAgIEFkZCBISUxET05fQ0ZMQUdTIHRvIGxpYldlYktpdEd0
a19sYV9DRkxBR1MKICAgICAgICBBZGQgSElMRE9OX0xJQlMgdG8gbGliV2ViS2l0R3RrX2xhX0xE
RkxBR1MKCiAgICAgICAgKiBjb25maWd1cmUuYWM6CiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToK
CjIwMDgtMDItMDggIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgoKICAgICAgICBSdWJiZXIt
c3RhbXBlZCBieSBNYWNpZWouCgogICAgICAgIEJ1bXAgYXV0b2NvbmYgQ0FJUk9fUkVRVUlSRURf
VkVSU0lPTiB1cCB0byAxLjQuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wMi0wNiAg
VGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CgogICAgICAgIFJ1YmJlci1zdGFt
cGVkIGJ5IE1hcmsgUm93ZS4KCiAgICAgICAgRHVtcCBvZiBidWdzLndlYmtpdC5vcmcncyBCdWd6
aWxsYSBpbnN0YW5jZS4KCiAgICAgICAgKiBCdWdzU2l0ZTogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS8uaHRhY2Nlc3M6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGE6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEucG06IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvQnVnemlsbGEvLmN2c2lnbm9yZTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxs
YS8uaHRhY2Nlc3M6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvQXR0YWNobWVu
dC5wbTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9BdXRoOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0F1dGgucG06IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvQnVnemlsbGEvQXV0aC9Mb2dpbjogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxs
YS9BdXRoL0xvZ2luL1dXVzogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9BdXRo
L0xvZ2luL1dXVy5wbTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9BdXRoL0xv
Z2luL1dXVy9DR0k6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvQXV0aC9Mb2dp
bi9XV1cvQ0dJLnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0F1dGgvTG9n
aW4vV1dXL0NHSS9Db29raWUucG06IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEv
QXV0aC9Mb2dpbi9XV1cvRW52LnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxh
L0F1dGgvUkVBRE1FOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0F1dGgvVmVy
aWZ5OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0F1dGgvVmVyaWZ5L0RCLnBt
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0F1dGgvVmVyaWZ5L0xEQVAucG06
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvQnVnLnBtOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0J1Z01haWwucG06IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvQnVnemlsbGEvQ0dJLnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0No
YXJ0LnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0NvbmZpZy5wbTogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9Db25zdGFudHMucG06IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvQnVnemlsbGEvREI6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVn
emlsbGEvREIucG06IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvREIvTXlzcWwu
cG06IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvREIvUGcucG06IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvREIvU2NoZW1hOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL0J1Z3ppbGxhL0RCL1NjaGVtYS5wbTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9C
dWd6aWxsYS9EQi9TY2hlbWEvTXlzcWwucG06IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVn
emlsbGEvREIvU2NoZW1hL1BnLnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxh
L0Vycm9yLnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL0ZsYWcucG06IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvRmxhZ1R5cGUucG06IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvQnVnemlsbGEvR3JvdXAucG06IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvQnVnemlsbGEvU2VhcmNoLnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxh
L1Nlcmllcy5wbTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9UZW1wbGF0ZTog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9UZW1wbGF0ZS5wbTogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9UZW1wbGF0ZS9QbHVnaW46IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvQnVnemlsbGEvVGVtcGxhdGUvUGx1Z2luL0J1Z3ppbGxhLnBtOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL1RlbXBsYXRlL1BsdWdpbi9Ib29rLnBtOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL1RlbXBsYXRlL1BsdWdpbi9Vc2VyLnBtOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL1Rva2VuLnBtOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL0J1Z3ppbGxhL1VzZXI6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVn
emlsbGEvVXNlci5wbTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9CdWd6aWxsYS9Vc2VyL1Nl
dHRpbmcucG06IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvQnVnemlsbGEvVXRpbC5wbTogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9DR0kucGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
UHJldHR5UGF0Y2g6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvUHJldHR5UGF0Y2gvUHJldHR5
UGF0Y2gucmI6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvUHJldHR5UGF0Y2gvcHJldHRpZnku
cmI6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvUVVJQ0tTVEFSVDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9SRUFETUU6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvVVBHUkFESU5HOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL1VQR1JBRElORy1wcmUtMi44OiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2FudC5qcGc6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvYXR0YWNobWVu
dC1hcm9iZW4uY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2F0dGFjaG1lbnQuY2dpOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2J1Z2xpc3QuY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2J1Z3ppbGxhLmR0ZDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jaGFydC5jZ2k6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvY2hlY2tzZXR1cC5wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9jb2xjaGFuZ2UuY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2NvbGxl
Y3RzdGF0cy5wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb25maWcuY2dpOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2NvbnRyaWI6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvY29u
dHJpYi9CdWd6aWxsYUVtYWlsLnBtOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2NvbnRyaWIv
UkVBRE1FOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2NvbnRyaWIvUkVBRE1FLk1haWxpZjog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250cmliL2J1Z19lbWFpbC5wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9jb250cmliL2J1Z21haWxfaGVscC5odG1sOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2NvbnRyaWIvYnVnemlsbGEtc3VibWl0OiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2NvbnRyaWIvYnVnemlsbGEtc3VibWl0L1JFQURNRTogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS9jb250cmliL2J1Z3ppbGxhLXN1Ym1pdC9idWdkYXRhLnR4dDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9jb250cmliL2J1Z3ppbGxhLXN1Ym1pdC9idWd6aWxsYS1zdWJtaXQ6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvY29udHJpYi9idWd6aWxsYS1zdWJtaXQvYnVnemlsbGEt
c3VibWl0LnhtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250cmliL2J1Z3ppbGxhLnBy
b2NtYWlscmM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvY29udHJpYi9idWd6aWxsYV9lbWFp
bF9hcHBlbmQucGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvY29udHJpYi9idWd6aWxsYV9s
ZGFwc3luYy5yYjogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250cmliL2J6ZGJjb3B5LnBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2NvbnRyaWIvY21kbGluZTogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9jb250cmliL2NtZGxpbmUvYnVnY291bnQ6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvY29udHJpYi9jbWRsaW5lL2J1Z2lkczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9jb250cmliL2NtZGxpbmUvYnVnbGlzdDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250
cmliL2NtZGxpbmUvYnVnczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250cmliL2NtZGxp
bmUvYnVnc2xpbms6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvY29udHJpYi9jbWRsaW5lL21h
a2VxdWVyeTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250cmliL2NtZGxpbmUvcXVlcnku
Y29uZjogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250cmliL2N2cy11cGRhdGUucGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvY29udHJpYi9nbmF0czJiei5wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9jb250cmliL2duYXRzcGFyc2U6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvY29udHJpYi9nbmF0c3BhcnNlL1JFQURNRTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9j
b250cmliL2duYXRzcGFyc2UvZ25hdHNwYXJzZS5weTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9jb250cmliL2duYXRzcGFyc2UvbWFnaWMucHk6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
Y29udHJpYi9nbmF0c3BhcnNlL3NwZWNpYWx1dS5weTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9jb250cmliL2piMmJ6LnB5OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2NvbnRyaWIvbXlz
cWxkLXdhdGNoZXIucGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvY29udHJpYi9zZW5kYnVn
bWFpbC5wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9jb250cmliL3NlbmR1bnNlbnRidWdt
YWlsLnBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2NvbnRyaWIvc3luY0xEQVAucGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvY29udHJpYi95cF9ub21haWwuc2g6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvY3JlYXRlYWNjb3VudC5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvZGF0YTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhLy5odGFjY2VzczogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL2F0dGFjaG1lbnRzOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvYXR0YWNobWVudHMvLmh0YWNjZXNzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RhdGEvZHVwbGljYXRlczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL21haWw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS9taW1lZHVtcC10bXA6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS9taW5pbmc6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS9ub21haWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS9wYXJhbXM6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEv
dGVtcGxhdGUvdGVtcGxhdGUvZW46IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1w
bGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b206IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90
ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L2F1dGg6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNj
b3VudC9hdXRoL2xkYXAtZXJyb3IuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvYXV0aC9sb2dpbi1zbWFs
bC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1w
bGF0ZS9lbi9jdXN0b20vYWNjb3VudC9hdXRoL2xvZ2luLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L2Nh
bmNlbC10b2tlbi50eHQudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBs
YXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L2NyZWF0ZS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3Vu
dC9jcmVhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBs
YXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L2VtYWlsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvZW1haWwvY2hh
bmdlLW5ldy50eHQudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRl
L3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L2VtYWlsL2NoYW5nZS1vbGQudHh0LnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20v
YWNjb3VudC9lbWFpbC9jb25maXJtLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L2V4aXN0cy5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYWNjb3VudC9wYXNzd29yZDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3Rl
bXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L3Bhc3N3b3JkL2ZvcmdvdHRlbi1wYXNz
d29yZC50eHQudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L3Bhc3N3b3JkL3NldC1mb3Jnb3R0ZW4tcGFzc3dvcmQu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2FjY291bnQvcHJlZnM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9wcmVmcy9hY2NvdW50Lmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hY2NvdW50L3ByZWZzL2VtYWlsLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L3ByZWZzL2Zv
b3Rlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9wcmVmcy9wZXJtaXNzaW9ucy5odG1sLnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20v
YWNjb3VudC9wcmVmcy9wcmVmcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
ZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9wcmVmcy9zYXZlZC1zZWFy
Y2hlcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9wcmVmcy9zZXR0aW5ncy5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRt
aW46IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYWRtaW4vY2xhc3NpZmljYXRpb25zOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2NsYXNzaWZpY2F0aW9ucy9hZGQu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2FkbWluL2NsYXNzaWZpY2F0aW9ucy9kZWwuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWlu
L2NsYXNzaWZpY2F0aW9ucy9kZWxldGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2NsYXNzaWZpY2F0aW9u
cy9lZGl0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRl
L3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvbmV3Lmh0bWwudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3Rv
bS9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvcmVjbGFzc2lmeS5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY2xh
c3NpZmljYXRpb25zL3NlbGVjdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
ZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY2xhc3NpZmljYXRpb25zL3Vw
ZGF0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY29tcG9uZW50czogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jb21wb25lbnRzL2Nv
bmZpcm0tZGVsZXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3Rl
bXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jb21wb25lbnRzL2NyZWF0ZS5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYWRtaW4vY29tcG9uZW50cy9jcmVhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jb21wb25l
bnRzL2RlbGV0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVt
cGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2NvbXBvbmVudHMvZWRpdC5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0
b20vYWRtaW4vY29tcG9uZW50cy9mb290ZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2NvbXBvbmVudHMv
bGlzdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY29tcG9uZW50cy9zZWxlY3QtcHJvZHVjdC5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYWRtaW4vY29tcG9uZW50cy91cGRhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9maWVsZHZh
bHVlczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi9maWVsZHZhbHVlcy9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRt
aW4vZmllbGR2YWx1ZXMvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9maWVsZHZhbHVlcy9jcmVh
dGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9maWVsZHZhbHVlcy9kZWxldGVkLmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9h
ZG1pbi9maWVsZHZhbHVlcy9lZGl0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9maWVsZHZhbHVlcy9mb290
ZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2FkbWluL2ZpZWxkdmFsdWVzL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWlu
L2ZpZWxkdmFsdWVzL3NlbGVjdC1maWVsZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZmllbGR2YWx1ZXMv
dXBkYXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0
ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZmxhZy10eXBlOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2ZsYWctdHlwZS9j
b25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90
ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZmxhZy10eXBlL2VkaXQuaHRtbC50bXBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2FkbWluL2ZsYWctdHlwZS9saXN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9ncm91cHM6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRt
aW4vZ3JvdXBzL2NoYW5nZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZ3JvdXBzL2NyZWF0ZS5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYWRtaW4vZ3JvdXBzL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2dyb3Vwcy9kZWxl
dGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2FkbWluL2dyb3Vwcy9kZWxldGVkLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9n
cm91cHMvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1w
bGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZ3JvdXBzL2xpc3QuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2Fk
bWluL2dyb3Vwcy9yZW1vdmUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2tleXdvcmRzOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2tl
eXdvcmRzL2NvbmZpcm0tZGVsZXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9rZXl3b3Jkcy9jcmVhdGUu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2FkbWluL2tleXdvcmRzL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2tl
eXdvcmRzL2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVt
cGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2tleXdvcmRzL2xpc3QuaHRtbC50bXBsOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L2FkbWluL2tleXdvcmRzL3JlYnVpbGQtY2FjaGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL21pbGVzdG9u
ZXM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYWRtaW4vbWlsZXN0b25lcy9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4v
bWlsZXN0b25lcy9jcmVhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL21pbGVzdG9uZXMvY3JlYXRlZC5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vYWRtaW4vbWlsZXN0b25lcy9kZWxldGVkLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9t
aWxlc3RvbmVzL2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEv
dGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL21pbGVzdG9uZXMvZm9vdGVyLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi9taWxlc3RvbmVzL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL21pbGVzdG9u
ZXMvc2VsZWN0LXByb2R1Y3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL21pbGVzdG9uZXMvdXBkYXRlZC5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vYWRtaW4vcHJvZHVjdHM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vcHJvZHVjdHMvY29uZmlybS1kZWxl
dGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2FkbWluL3Byb2R1Y3RzL2RlbGV0ZWQuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWlu
L3Byb2R1Y3RzL2Zvb3Rlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vcHJvZHVjdHMvZ3JvdXBjb250cm9s
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2FkbWluL3Byb2R1Y3RzL2dyb3VwY29udHJvbC9jb25maXJtLWVkaXQuaHRtbC50bXBsOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L2FkbWluL3Byb2R1Y3RzL2dyb3VwY29udHJvbC9lZGl0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9wcm9k
dWN0cy9saXN0LWNsYXNzaWZpY2F0aW9ucy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vcHJvZHVjdHMvbGlz
dC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1w
bGF0ZS9lbi9jdXN0b20vYWRtaW4vc2V0dGluZ3M6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
ZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vc2V0dGluZ3MvZWRpdC5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9l
bi9jdXN0b20vYWRtaW4vc2V0dGluZ3MvdXBkYXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vdGFibGUu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2FkbWluL3VzZXJzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEv
dGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3VzZXJzL2NvbmZpcm0tZGVsZXRlLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hZG1pbi91c2Vycy9jcmVhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3VzZXJzL2Vk
aXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2FkbWluL3VzZXJzL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3VzZXJz
L2xpc3RzZWxlY3R2YXJzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRh
L3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi91c2Vycy9zZWFyY2guaHRtbC50bXBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2FkbWluL3VzZXJzL3VzZXJkYXRhLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi92ZXJzaW9uczogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9h
ZG1pbi92ZXJzaW9ucy9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vdmVyc2lvbnMv
Y3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRl
L3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi92ZXJzaW9ucy9jcmVhdGVkLmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9h
ZG1pbi92ZXJzaW9ucy9kZWxldGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi92ZXJzaW9ucy9lZGl0Lmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hZG1pbi92ZXJzaW9ucy9mb290ZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3ZlcnNp
b25zL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxh
dGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3ZlcnNpb25zL3NlbGVjdC1wcm9kdWN0Lmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi92ZXJzaW9ucy91cGRhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRhY2htZW50OiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L2F0dGFjaG1lbnQvY2hvb3NlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9k
YXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRhY2htZW50L2NvbnRlbnQtdHlwZXMu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2F0dGFjaG1lbnQvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRhY2htZW50L2Ny
ZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUv
dGVtcGxhdGUvZW4vY3VzdG9tL2F0dGFjaG1lbnQvZGlmZi1maWxlLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRh
Y2htZW50L2RpZmYtZm9vdGVyLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9k
YXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRhY2htZW50L2RpZmYtaGVhZGVyLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hdHRhY2htZW50L2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2F0dGFjaG1lbnQvbGlzdC5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vYXR0YWNobWVudC9zaG93LW11bHRpcGxlLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRhY2ht
ZW50L3VwZGF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVt
cGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1ZzogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9k
YXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvYWN0aXZpdHk6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL2FjdGl2
aXR5L3Nob3cuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxh
dGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9hY3Rpdml0eS90YWJsZS5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVn
L2Nob29zZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0
ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL2NvbW1lbnRzLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvY3JlYXRl
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2J1Zy9jcmVhdGUvY29tbWVudC1ndWlkZWQudHh0LnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL2NyZWF0ZS9jb21t
ZW50LnR4dC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2J1Zy9jcmVhdGUvY3JlYXRlLWd1aWRlZC5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVn
L2NyZWF0ZS9jcmVhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEv
dGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9jcmVhdGUvY3JlYXRlZC5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0
b20vYnVnL2NyZWF0ZS9tYWtlLXRlbXBsYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvY3JlYXRlL3VzZXIt
bWVzc2FnZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0
ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL2RlcGVuZGVuY3ktZ3JhcGguaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1
Zy9kZXBlbmRlbmN5LXRyZWUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9lZGl0Lmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcv
a25vYi5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL25hdmlnYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvcHJvY2Vzczog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3Rv
bS9idWcvcHJvY2Vzcy9idWdtYWlsLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvcHJvY2Vzcy9jb25maXJtLWR1
cGxpY2F0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0
ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL3Byb2Nlc3MvaGVhZGVyLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcv
cHJvY2Vzcy9taWRhaXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEv
dGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9wcm9jZXNzL25leHQuaHRtbC50bXBsOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L2J1Zy9wcm9jZXNzL3Jlc3VsdHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9wcm9jZXNzL3ZlcmlmeS1uZXct
cHJvZHVjdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0
ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL3Nob3ctbXVsdGlwbGUuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9z
aG93Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9idWcvc2hvdy54bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvc3VtbWFyaXplLXRpbWUu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2J1Zy90aW1lLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvdm90ZXM6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL3ZvdGVz
L2RlbGV0ZS1hbGwuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVt
cGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy92b3Rlcy9saXN0LWZvci1idWcuaHRtbC50bXBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2J1Zy92b3Rlcy9saXN0LWZvci11c2VyLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9jb25maWcuanMudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3Rv
bS9jb25maWcucmRmLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0
ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZmxhZzogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRh
L3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9mbGFnL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2Jh
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1
c3RvbS9nbG9iYWwvYmFubmVyLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9k
YXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvY2hvb3NlLWNsYXNzaWZpY2F0
aW9uLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvY2hvb3NlLXByb2R1Y3QuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2Jh
bC9jb2RlLWVycm9yLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3Rl
bXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvY29uZmlybS11c2VyLW1hdGNoLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9nbG9iYWwvZmllbGQtZGVzY3Mubm9uZS50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2JhbC9mb290ZXIuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUv
ZW4vY3VzdG9tL2dsb2JhbC9oZWFkZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2JhbC9oZWxwLWhlYWRlci5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vZ2xvYmFsL2hlbHAuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2JhbC9oaWRkZW4tZmllbGRz
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBs
YXRlL2VuL2N1c3RvbS9nbG9iYWwvaW5pdGlhbGl6ZS5ub25lLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xvYmFsL21lc3Nh
Z2UuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2dsb2JhbC9tZXNzYWdlcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xvYmFsL3NlbGVj
dC1tZW51Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRl
L3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvc2V0dGluZy1kZXNjcy5ub25lLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xv
YmFsL3NpdGUtbmF2aWdhdGlvbi5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
ZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xvYmFsL3VzZWZ1bC1saW5rcy5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9l
bi9jdXN0b20vZ2xvYmFsL3VzZXItZXJyb3IuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2JhbC91c2Vyc2VsZWN0
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBs
YXRlL2VuL2N1c3RvbS9nbG9iYWwvdmFyaWFibGVzLm5vbmUudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9pbmRleC5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vbGlzdDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBs
YXRlL2VuL2N1c3RvbS9saXN0L2NoYW5nZS1jb2x1bW5zLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9saXN0L2VkaXQt
bXVsdGlwbGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxh
dGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3QvbGlzdC1zaW1wbGUuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3Qv
bGlzdC5jc3YudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9saXN0L2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3QvbGlzdC5pY3MudG1w
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1
c3RvbS9saXN0L2xpc3QuanMudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3Rl
bXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9saXN0L2xpc3QucmRmLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vbGlzdC9saXN0
LnJzcy50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2xpc3QvcXVpcHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3Qvc2VydmVyLXB1c2guaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUv
ZW4vY3VzdG9tL2xpc3QvdGFibGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3BhZ2VzOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3BhZ2VzL2J1Zy13cml0
aW5nLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9wYWdlcy9maWVsZHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3BhZ2VzL2xpbmtlZC5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vcGFnZXMvbGlua2lmeS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcGFnZXMvdm90aW5nLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9yZXBvcnRzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUv
dGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvY2hhcnQuY3N2LnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9jaGFy
dC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1w
bGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9jaGFydC5wbmcudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXBvcnRzL2NvbXBvbmVu
dHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvY3JlYXRlLWNoYXJ0Lmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXBvcnRz
L2R1cGxpY2F0ZXMtc2ltcGxlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9k
YXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXBvcnRzL2R1cGxpY2F0ZXMtdGFibGUu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL3JlcG9ydHMvZHVwbGljYXRlcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9kdXBs
aWNhdGVzLnJkZi50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUv
dGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvZWRpdC1zZXJpZXMuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9y
dHMva2V5d29yZHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVt
cGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvbWVudS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0
cy9yZXBvcnQtYmFyLnBuZy50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVt
cGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvcmVwb3J0LWxpbmUucG5nLnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20v
cmVwb3J0cy9yZXBvcnQtcGllLnBuZy50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvcmVwb3J0LXNpbXBsZS5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9l
bi9jdXN0b20vcmVwb3J0cy9yZXBvcnQtdGFibGUuY3N2LnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9yZXBvcnQt
dGFibGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUv
dGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvcmVwb3J0LmNzdi50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvcmVw
b3J0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9yZXBvcnRzL3Nlcmllcy1jb21tb24uaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9y
dHMvc2VyaWVzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBs
YXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXF1ZXN0OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcXVlc3QvZW1haWwudHh0LnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0
b20vcmVxdWVzdC9xdWV1ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vc2VhcmNoOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC9ib29sZWFuLWNo
YXJ0cy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vc2VhcmNoL2Zvcm0uaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC9rbm9iLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9zZWFyY2gvc2VhcmNoLWFkdmFuY2VkLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9zZWFyY2gvc2Vh
cmNoLWNyZWF0ZS1zZXJpZXMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC9zZWFyY2gtaGVscC5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vc2VhcmNoL3NlYXJjaC1yZXBvcnQtZ3JhcGguaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC9zZWFy
Y2gtcmVwb3J0LXNlbGVjdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vc2VhcmNoL3NlYXJjaC1yZXBvcnQtdGFibGUu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL3NlYXJjaC9zZWFyY2gtc3BlY2lmaWMuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC90
YWJzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9zaWRlYmFyLnh1bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3doaW5lOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3doaW5lL21haWwu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL3doaW5lL21haWwudHh0LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vd2hpbmUvbXVsdGlwYXJ0LW1pbWUu
dHh0LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vd2hpbmUvc2NoZWR1bGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvdGVtcGxhdGUvdGVtcGxhdGUvZW4vZGVmYXVsdDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYXR0YWNobWVudDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kYXRhL3RlbXBsYXRlL3RlbXBsYXRlL2VuL2RlZmF1
bHQvYXR0YWNobWVudC9lZGl0LWFyb2Jlbi5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2xpc3Q6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS90ZW1wbGF0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2xpc3QvbGlz
dC5hdG9tLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGU6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuMTNQOUw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuMWxIMUU6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuM0FuSGQ6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuM0ptanQ6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvZGF0YS92ZXJzaW9uY2FjaGUuM0p6SUw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0
YS92ZXJzaW9uY2FjaGUuNzdiNHk6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJz
aW9uY2FjaGUuN1Z6eVU6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2Fj
aGUuRVFkQW06IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuRW91
QUc6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuTEo1bjE6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuTGIwZlc6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuUHlBZDg6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuU0Z5c2U6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuU2tUVGc6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
ZGF0YS92ZXJzaW9uY2FjaGUuVlZPN0U6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92
ZXJzaW9uY2FjaGUuWGJ4Z1U6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9u
Y2FjaGUuWWV6cXI6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUu
ZHR6SXY6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuanpwZWg6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUucGJuNlU6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUucXlpeFM6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUuc0JNZGI6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZGF0YS92ZXJzaW9uY2FjaGUueE5pMzQ6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvZGF0YS93ZWJkb3Q6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZGF0YS93ZWJkb3QvLmh0
YWNjZXNzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90LzBaTEgzUXBGZDgu
ZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90LzNzNmU3ZUMyRHkuZG90
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90LzZNVzBxNTRjeVkuZG90OiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90L0EyUmxoUGRPMlEuZG90OiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90L0R1Qlg0STQ5NDYuZG90OiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90L0d1ZFRndnJLQlguZG90OiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90L0kxbUNiTHRBelEuZG90OiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90L0p0S2d2V0dWYjQuZG90OiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RhdGEvd2ViZG90L1JGazRiakF3WWMuZG90OiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RhdGEvd2ViZG90L1lRMXBXRlZmcXQuZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RhdGEvd2ViZG90L1ljRlVlcFNoWkkuZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L2RhdGEvd2ViZG90L2E5aTAwS2dUUWsuZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rh
dGEvd2ViZG90L2M0MTJHWWFIY2guZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEv
d2ViZG90L2hqWW5ZcjN0VjEuZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2Vi
ZG90L3BxM1F3N3d5bkkuZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RhdGEvd2ViZG90
L3RMN0dqQTdicUguZG90OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RlZnBhcmFtcy5wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kZXNjcmliZWNvbXBvbmVudHMuY2dpOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2Rlc2NyaWJla2V5d29yZHMuY2dpOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2Rlc2NyaWJla2V5d29yZHMuY2dpLmJhazogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kb2NzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvLmN2c2lnbm9yZTogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL1JFQURNRS5kb2NzOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2RvY3MvaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwv
QnVnemlsbGEtR3VpZGUuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwv
YWJvdXQuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvYWRtaW5pc3Ry
YXRpb24uaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvYnVnX3BhZ2Uu
aHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvYnVncmVwb3J0cy5odG1s
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9jbWRsaW5lLWJ1Z21haWwuaHRt
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvY21kbGluZS5odG1sOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9jb21wb25lbnRzLmh0bWw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2NvbmZpZ3VyYXRpb24uaHRtbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvY29udmVudGlvbnMuaHRtbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvY29weXJpZ2h0Lmh0bWw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZG9jcy9odG1sL2NyZWRpdHMuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kb2NzL2h0bWwvY3VzdC1jaGFuZ2UtcGVybWlzc2lvbnMuaHRtbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kb2NzL2h0bWwvY3VzdC1ob29rcy5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RvY3MvaHRtbC9jdXN0LXRlbXBsYXRlcy5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RvY3MvaHRtbC9jdXN0b21pemF0aW9uLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZG9jcy9odG1sL2RiZG9jLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9j
cy9odG1sL2RibW9kaWZ5Lmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1s
L2Rpc2NsYWltZXIuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvZXh0
cmFjb25maWcuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvZmFxLmh0
bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2ZsYWdzLW92ZXJ2aWV3Lmh0
bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2ZsYWdzLmh0bWw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2dlbmVyYWwtYWR2aWNlLmh0bWw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2dmZGwtMC5odG1sOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9nZmRsLTEuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kb2NzL2h0bWwvZ2ZkbC0xMC5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rv
Y3MvaHRtbC9nZmRsLTIuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwv
Z2ZkbC0zLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2dmZGwtNC5o
dG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9nZmRsLTUuaHRtbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvZ2ZkbC02Lmh0bWw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2dmZGwtNy5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RvY3MvaHRtbC9nZmRsLTguaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9k
b2NzL2h0bWwvZ2ZkbC05Lmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1s
L2dmZGwtaG93dG8uaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvZ2Zk
bC5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9nbG9zc2FyeS5odG1s
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9ncm91cHMuaHRtbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvaGludHNhbmR0aXBzLmh0bWw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2luZGV4Lmh0bWw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZG9jcy9odG1sL2luc3RhbGwtcGVybG1vZHVsZXMtbWFudWFsLmh0bWw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2luc3RhbGxhdGlvbi5odG1sOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9pbnN0YWxsaW5nLWJ1Z3ppbGxhLmh0bWw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2ludGVncmF0aW9uLmh0bWw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL2xpZmVjeWNsZS5odG1sOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9saXN0Lmh0bWw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZG9jcy9odG1sL21pbGVzdG9uZXMuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kb2NzL2h0bWwvbW9kdWxlcy1tYW51YWwtZG93bmxvYWQuaHRtbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kb2NzL2h0bWwvbW9kdWxlcy1tYW51YWwtaW5zdHJ1Y3Rpb25zLmh0bWw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL21vZHVsZXMtbWFudWFsLW9wdGlvbmFs
Lmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL215YWNjb3VudC5odG1s
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9uZXd2ZXJzaW9ucy5odG1sOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9ub25yb290Lmh0bWw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL29zLXNwZWNpZmljLmh0bWw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3BhcmFtZXRlcnMuaHRtbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kb2NzL2h0bWwvcGFyYW5vaWQtc2VjdXJpdHkuaHRtbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvcGF0Y2hlcy5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RvY3MvaHRtbC9wYXRjaHZpZXdlci5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RvY3MvaHRtbC9wcm9kdWN0cy5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rv
Y3MvaHRtbC9xdWVyeS5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9x
dWlwcy5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC9yZXBvcnRpbmcu
aHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvc2VjdXJpdHktYnVnemls
bGEuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvc2VjdXJpdHktbXlz
cWwuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvc2VjdXJpdHktb3Mu
aHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvc2VjdXJpdHktd2Vic2Vy
dmVyLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3NlY3VyaXR5Lmh0
bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3RyYmwtYnVuZGxlYnVnemls
bGEuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvdHJibC1kYmRzcG9u
Z2UuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvdHJibC1pbmRleC5o
dG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC90cmJsLXBhc3N3ZC1lbmNy
eXB0aW9uLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3RyYmwtcGVy
bG1vZHVsZS5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC90cmJsLXJl
bG9naW4tZXZlcnlvbmUuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwv
dHJibC10ZXN0c2VydmVyLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1s
L3Ryb3VibGUtZmlsZXRlbXAuaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0
bWwvdHJvdWJsZXNob290aW5nLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9o
dG1sL3VwZ3JhZGluZy5odG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC91
c2VyYWRtaW4uaHRtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2h0bWwvdXNlcnBy
ZWZlcmVuY2VzLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3VzaW5n
LWludHJvLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3VzaW5nLmh0
bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3ZlcnNpb25zLmh0bWw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9odG1sL3ZvdGluZy5odG1sOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL2RvY3MvaHRtbC93aGluaW5nLmh0bWw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZG9jcy9odG1sL3gzMTkwLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
ZG9jcy9pbWFnZXM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9pbWFnZXMvYnpMaWZl
Y3ljbGUucG5nOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaW1hZ2VzL2J6TGlmZWN5
Y2xlLnhtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2ltYWdlcy9jYWxsb3V0czog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2ltYWdlcy9jYWxsb3V0cy8xLmdpZjogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2ltYWdlcy9jYWxsb3V0cy8yLmdpZjogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL2ltYWdlcy9jYWxsb3V0cy8zLmdpZjogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9kb2NzL2ltYWdlcy9jYXV0aW9uLmdpZjogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9kb2NzL2ltYWdlcy9ub3RlLmdpZjogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS9kb2NzL2ltYWdlcy90aXAuZ2lmOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvaW1h
Z2VzL3dhcm5pbmcuZ2lmOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MvbWFrZWRvY3Mu
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy9wZGY6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZG9jcy9wZGYvQnVnemlsbGEtR3VpZGUucGRmOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RvY3MvcmVsX25vdGVzLnR4dDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2Nz
L3R4dDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL3R4dC9CdWd6aWxsYS1HdWlkZS50
eHQ6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy94bWw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvZG9jcy94bWwvQnVnemlsbGEtR3VpZGUueG1sOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2RvY3MveG1sL2Fib3V0LnhtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2Nz
L3htbC9hZG1pbmlzdHJhdGlvbi54bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy94
bWwvY29udmVudGlvbnMueG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MveG1sL2N1
c3RvbWl6YXRpb24ueG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MveG1sL2Ric2No
ZW1hLm15c3FsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MveG1sL2ZhcS54bWw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvZG9jcy94bWwvZmlsZXRlbXAucGF0Y2g6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvZG9jcy94bWwvZ2ZkbC54bWw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvZG9jcy94bWwvZ2xvc3NhcnkueG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2Rv
Y3MveG1sL2luZGV4LnhtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL3htbC9pbnN0
YWxsYXRpb24ueG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MveG1sL2ludGVncmF0
aW9uLnhtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2NzL3htbC9pbnRyb2R1Y3Rpb24u
eG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MveG1sL21vZHVsZXMueG1sOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL2RvY3MveG1sL3BhdGNoZXMueG1sOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RvY3MveG1sL3JlcXVpcmVkc29mdHdhcmUueG1sOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL2RvY3MveG1sL3NlY3VyaXR5LnhtbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9kb2NzL3htbC90cm91Ymxlc2hvb3RpbmcueG1sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL2RvY3MveG1sL3VzaW5nLnhtbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9kb2VkaXRw
YXJhbXMuY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2R1cGxpY2F0ZXMuY2dpOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL2R1cGxpY2F0ZXMueHVsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2VkaXRjbGFzc2lmaWNhdGlvbnMuY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L2VkaXRjb21wb25lbnRzLmNnaTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9lZGl0ZmxhZ3R5
cGVzLmNnaTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9lZGl0Z3JvdXBzLmNnaTogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9lZGl0a2V5d29yZHMuY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2VkaXRtaWxlc3RvbmVzLmNnaTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9lZGl0
cGFyYW1zLmNnaTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9lZGl0cHJvZHVjdHMuY2dpOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2VkaXRzZXR0aW5ncy5jZ2k6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvZWRpdHVzZXJzLmNnaTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9lZGl0
dmFsdWVzLmNnaTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9lZGl0dmVyc2lvbnMuY2dpOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2VkaXR3aGluZXMuY2dpOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL2VudGVyX2J1Zy5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZmF2aWNv
bi5pY286IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvZ2xvYmFscy5wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9ncmFwaHM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvaW1hZ2VzOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2ltYWdlcy9wYWRsb2NrLnBuZzogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9pbXBvcnR4bWwucGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvaW5k
ZXguY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL2pzOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL2pzL2R1cGxpY2F0ZXMuanM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvanMvcHJv
ZHVjdGZvcm0uanM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvbG9jYWxjb25maWcuanM6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvbG9uZ19saXN0LmNnaTogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS9tb3ZlLnBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3BhZ2UuY2dpOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Bvc3RfYnVnLmNnaTogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS9wcm9jZXNzX2J1Zy5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvcHJvZHVjdG1l
bnUuanM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvcXVlcnkuY2dpOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3F1aWNrc2VhcmNoLmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
cXVpY2tzZWFyY2guanM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvcXVpY2tzZWFyY2hoYWNr
Lmh0bWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvcXVpcHMuY2dpOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3JlbG9naW4uY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3JlcG9y
dC5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvcmVwb3J0cy5jZ2k6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvcmVxdWVzdC5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvcm9i
b3RzLnR4dDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9ydW50ZXN0cy5wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9zYW5pdHljaGVjay5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvc2hvd19hY3Rpdml0eS5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvc2hvd19idWcu
Y2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Nob3dhdHRhY2htZW50LmNnaTogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9zaG93ZGVwZW5kZW5jeWdyYXBoLmNnaTogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS9zaG93ZGVwZW5kZW5jeXRyZWUuY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3NpZGViYXIuY2dpOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zLy5jdnNpZ25vcmU6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvc2tpbnMvY3VzdG9tOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL2N1
c3RvbS9hZG1pbi5jc3M6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvc2tpbnMvY3VzdG9tL2J1
Z2xpc3QuY3NzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL2N1c3RvbS9kdXBsaWNh
dGVzLmNzczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9jdXN0b20vZWRpdHVzZXJz
LmNzczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9jdXN0b20vZ2xvYmFsLmNzczog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9jdXN0b20vaW5kZXguY3NzOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL2N1c3RvbS9vcGVuZGFyd2luLmdpZjogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS9za2lucy9jdXN0b20vcGFuZWwuY3NzOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3NraW5zL2N1c3RvbS9zaG93X211bHRpcGxlLmNzczogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS9za2lucy9jdXN0b20vc3VtbWFyaXplLXRpbWUuY3NzOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3NraW5zL2N1c3RvbS92b3RpbmcuY3NzOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3NraW5zL3N0YW5kYXJkOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL3N0
YW5kYXJkL2FkbWluLmNzczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9zdGFuZGFy
ZC9idWdsaXN0LmNzczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9zdGFuZGFyZC9k
dXBsaWNhdGVzLmNzczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9zdGFuZGFyZC9l
ZGl0dXNlcnMuY3NzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL3N0YW5kYXJkL2ds
b2JhbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9zdGFuZGFyZC9nbG9iYWwuY3Nz
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL3N0YW5kYXJkL2dsb2JhbC9ib2R5LWJh
Y2suZ2lmOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL3N0YW5kYXJkL2dsb2JhbC9o
ZWFkZXIucG5nOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL3N0YW5kYXJkL2luZGV4
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL3N0YW5kYXJkL2luZGV4LmNzczogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9zdGFuZGFyZC9pbmRleC9mcm9udC5qcGc6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvc2tpbnMvc3RhbmRhcmQvaW5kZXgvZnJvbnQucG5nOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3NraW5zL3N0YW5kYXJkL3BhbmVsLmNzczogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9zdGFuZGFyZC9zaG93X211bHRpcGxlLmNzczogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9za2lucy9zdGFuZGFyZC9zdW1tYXJpemUtdGltZS5jc3M6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvc2tpbnMvc3RhbmRhcmQvdm90aW5nLmNzczogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS9zdW1tYXJpemVfdGltZS5jZ2k6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90LzAwMWNvbXBpbGUudDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90LzAwMmdvb2RwZXJsLnQ6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdC8wMDNzYWZlc3lzLnQ6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdC8w
MDR0ZW1wbGF0ZS50OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3QvMDA1bm9fdGFicy50OiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3QvMDA2c3BlbGxjaGVjay50OiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3QvMDA3dXRpbC50OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3QvMDA4
ZmlsdGVyLnQ6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdC8wMDlidWd3b3Jkcy50OiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3QvMDExcG9kLnQ6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdC9TdXBwb3J0OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3QvU3VwcG9ydC9GaWxlcy5w
bTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90L1N1cHBvcnQvU3lzdGVtZXhlYy5wbTogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90L1N1cHBvcnQvVGVtcGxhdGVzLnBtOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3QvdGVzdGNoYXJ0LmdpZjogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS90L3Rlc3RjaGFydC5wbmc6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdC90ZXN0Z2QucG5n
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlLy5jdnNpZ25vcmU6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVt
cGxhdGUvLmh0YWNjZXNzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuLy5jdnNpZ25vcmU6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L2F1dGg6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvYXV0aC9sZGFwLWVycm9yLmh0bWwudG1w
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9h
dXRoL2xvZ2luLXNtYWxsLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1w
bGF0ZS9lbi9jdXN0b20vYWNjb3VudC9hdXRoL2xvZ2luLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9jYW5jZWwtdG9rZW4udHh0
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291
bnQvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9jdXN0b20vYWNjb3VudC9jcmVhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9lbWFpbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3VudC9lbWFpbC9jaGFuZ2UtbmV3LnR4dC50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50
L2VtYWlsL2NoYW5nZS1vbGQudHh0LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2FjY291bnQvZW1haWwvY29uZmlybS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvZXhpc3RzLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWNjb3Vu
dC9wYXNzd29yZDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20v
YWNjb3VudC9wYXNzd29yZC9mb3Jnb3R0ZW4tcGFzc3dvcmQudHh0LnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvcGFzc3dvcmQvc2V0LWZv
cmdvdHRlbi1wYXNzd29yZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2FjY291bnQvcHJlZnM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
dGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvcHJlZnMvYWNjb3VudC5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvcHJlZnMvZW1h
aWwuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3Rv
bS9hY2NvdW50L3ByZWZzL2Zvb3Rlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvcHJlZnMvcGVybWlzc2lvbnMuaHRtbC50bXBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hY2NvdW50L3By
ZWZzL3ByZWZzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9jdXN0b20vYWNjb3VudC9wcmVmcy9zYXZlZC1zZWFyY2hlcy5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FjY291bnQvcHJlZnMvc2V0dGlu
Z3MuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3Rv
bS9hZG1pbjogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRt
aW4vY2xhc3NpZmljYXRpb25zOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvYWRkLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY2xhc3NpZmljYXRpb25zL2Rl
bC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L2FkbWluL2NsYXNzaWZpY2F0aW9ucy9kZWxldGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvZWRpdC5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2Fk
bWluL2NsYXNzaWZpY2F0aW9ucy9uZXcuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvcmVjbGFzc2lmeS5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2Fk
bWluL2NsYXNzaWZpY2F0aW9ucy9zZWxlY3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvdXBkYXRlLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRt
aW4vY29tcG9uZW50czogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0
b20vYWRtaW4vY29tcG9uZW50cy9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2NvbXBvbmVudHMvY3JlYXRl
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20v
YWRtaW4vY29tcG9uZW50cy9jcmVhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY29tcG9uZW50cy9kZWxldGVkLmh0bWwudG1w
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY29t
cG9uZW50cy9lZGl0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vYWRtaW4vY29tcG9uZW50cy9mb290ZXIuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9jb21wb25lbnRzL2xpc3Qu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9h
ZG1pbi9jb21wb25lbnRzL3NlbGVjdC1wcm9kdWN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vY29tcG9uZW50cy91cGRhdGVkLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRt
aW4vZmllbGR2YWx1ZXM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2FkbWluL2ZpZWxkdmFsdWVzL2NvbmZpcm0tZGVsZXRlLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZmllbGR2YWx1ZXMvY3Jl
YXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0
b20vYWRtaW4vZmllbGR2YWx1ZXMvY3JlYXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2ZpZWxkdmFsdWVzL2RlbGV0ZWQuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1p
bi9maWVsZHZhbHVlcy9lZGl0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZmllbGR2YWx1ZXMvZm9vdGVyLmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZmllbGR2YWx1
ZXMvbGlzdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
Y3VzdG9tL2FkbWluL2ZpZWxkdmFsdWVzL3NlbGVjdC1maWVsZC5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2ZpZWxkdmFsdWVzL3Vw
ZGF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1
c3RvbS9hZG1pbi9mbGFnLXR5cGU6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUv
ZW4vY3VzdG9tL2FkbWluL2ZsYWctdHlwZS9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2ZsYWctdHlwZS9l
ZGl0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0
b20vYWRtaW4vZmxhZy10eXBlL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9ncm91cHM6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2dyb3Vwcy9jaGFuZ2UuaHRtbC50bXBsOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9ncm91cHMv
Y3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYWRtaW4vZ3JvdXBzL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9ncm91cHMvZGVsZXRlLmh0bWwudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZ3JvdXBz
L2RlbGV0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi9ncm91cHMvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2dyb3Vwcy9saXN0Lmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vZ3JvdXBzL3Jl
bW92ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2FkbWluL2tleXdvcmRzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi9rZXl3b3Jkcy9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL2tleXdvcmRzL2NyZWF0
ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L2FkbWluL2tleXdvcmRzL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9rZXl3b3Jkcy9lZGl0Lmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4va2V5d29yZHMv
bGlzdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2FkbWluL2tleXdvcmRzL3JlYnVpbGQtY2FjaGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9taWxlc3RvbmVzOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9taWxlc3RvbmVzL2Nv
bmZpcm0tZGVsZXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vYWRtaW4vbWlsZXN0b25lcy9jcmVhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9taWxlc3RvbmVzL2NyZWF0
ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3Rv
bS9hZG1pbi9taWxlc3RvbmVzL2RlbGV0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9taWxlc3RvbmVzL2VkaXQuaHRtbC50bXBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9taWxl
c3RvbmVzL2Zvb3Rlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2FkbWluL21pbGVzdG9uZXMvbGlzdC5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL21pbGVzdG9uZXMvc2VsZWN0
LXByb2R1Y3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi9taWxlc3RvbmVzL3VwZGF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9wcm9kdWN0czogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vcHJvZHVjdHMvY29uZmly
bS1kZWxldGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9hZG1pbi9wcm9kdWN0cy9kZWxldGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vcHJvZHVjdHMvZm9vdGVyLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4v
cHJvZHVjdHMvZ3JvdXBjb250cm9sOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hZG1pbi9wcm9kdWN0cy9ncm91cGNvbnRyb2wvY29uZmlybS1lZGl0Lmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4v
cHJvZHVjdHMvZ3JvdXBjb250cm9sL2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9wcm9kdWN0cy9saXN0LWNsYXNzaWZpY2F0
aW9ucy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2FkbWluL3Byb2R1Y3RzL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi9zZXR0aW5nczogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vc2V0dGluZ3MvZWRpdC5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3NldHRp
bmdzL3VwZGF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hZG1pbi90YWJsZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3VzZXJzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi91c2Vycy9jb25maXJtLWRlbGV0ZS5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3Vz
ZXJzL2NyZWF0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUv
ZW4vY3VzdG9tL2FkbWluL3VzZXJzL2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi91c2Vycy9saXN0Lmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vdXNlcnMvbGlz
dHNlbGVjdHZhcnMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hZG1pbi91c2Vycy9zZWFyY2guaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi91c2Vycy91c2VyZGF0YS5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3Zl
cnNpb25zOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1p
bi92ZXJzaW9ucy9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3ZlcnNpb25zL2NyZWF0ZS5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWluL3ZlcnNp
b25zL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hZG1pbi92ZXJzaW9ucy9kZWxldGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYWRtaW4vdmVyc2lvbnMvZWRpdC5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2FkbWlu
L3ZlcnNpb25zL2Zvb3Rlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2FkbWluL3ZlcnNpb25zL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hZG1pbi92ZXJzaW9ucy9zZWxlY3Qt
cHJvZHVjdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
Y3VzdG9tL2FkbWluL3ZlcnNpb25zL3VwZGF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRhY2htZW50OiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9hdHRhY2htZW50L2Nob29zZS5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2F0dGFjaG1lbnQv
Y29udGVudC10eXBlcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2F0dGFjaG1lbnQvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYXR0YWNobWVudC9jcmVhdGVkLmh0bWwudG1w
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYXR0YWNobWVu
dC9kaWZmLWZpbGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9hdHRhY2htZW50L2RpZmYtZm9vdGVyLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYXR0YWNobWVudC9kaWZmLWhlYWRlci5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2F0
dGFjaG1lbnQvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2F0dGFjaG1lbnQvbGlzdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2F0dGFjaG1lbnQvc2hvdy1tdWx0aXBsZS5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2F0dGFj
aG1lbnQvdXBkYXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2J1ZzogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vYnVnL2FjdGl2aXR5OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9idWcvYWN0aXZpdHkvc2hvdy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9hY3Rpdml0eS90YWJsZS5odG1sLnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9jaG9vc2UuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcv
Y29tbWVudHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9idWcvY3JlYXRlOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2N1c3RvbS9idWcvY3JlYXRlL2NvbW1lbnQtZ3VpZGVkLnR4dC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvY3JlYXRlL2NvbW1lbnQudHh0LnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9jcmVh
dGUvY3JlYXRlLWd1aWRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2J1Zy9jcmVhdGUvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL2NyZWF0ZS9jcmVhdGVkLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL2Ny
ZWF0ZS9tYWtlLXRlbXBsYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL2NyZWF0ZS91c2VyLW1lc3NhZ2UuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvZGVwZW5kZW5jeS1n
cmFwaC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2J1Zy9kZXBlbmRlbmN5LXRyZWUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9rbm9iLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL25hdmlnYXRlLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL3By
b2Nlc3M6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9w
cm9jZXNzL2J1Z21haWwuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBs
YXRlL2VuL2N1c3RvbS9idWcvcHJvY2Vzcy9jb25maXJtLWR1cGxpY2F0ZS5odG1sLnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9wcm9jZXNzL2hl
YWRlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2J1Zy9wcm9jZXNzL21pZGFpci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy9wcm9jZXNzL25leHQuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvcHJvY2Vzcy9yZXN1bHRz
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20v
YnVnL3Byb2Nlc3MvdmVyaWZ5LW5ldy1wcm9kdWN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL3Nob3ctbXVsdGlwbGUuaHRtbC50bXBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvc2hvdy5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1
Zy9zaG93LnhtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1
c3RvbS9idWcvc3VtbWFyaXplLXRpbWUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvdGltZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2J1Zy92b3RlczogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vYnVnL3ZvdGVzL2RlbGV0ZS1hbGwuaHRtbC50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9idWcvdm90
ZXMvbGlzdC1mb3ItYnVnLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1w
bGF0ZS9lbi9jdXN0b20vYnVnL3ZvdGVzL2xpc3QtZm9yLXVzZXIuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9jb25maWcuanMudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vY29uZmlnLnJkZi50bXBs
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9maWx0ZXJleGNl
cHRpb25zLnBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9m
bGFnOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9mbGFnL2xp
c3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3Rv
bS9nbG9iYWw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2ds
b2JhbC9iYW5uZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9nbG9iYWwvY2hvb3NlLWNsYXNzaWZpY2F0aW9uLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xvYmFsL2Nob29zZS1wcm9k
dWN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0
b20vZ2xvYmFsL2NvZGUtZXJyb3IuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvY29uZmlybS11c2VyLW1hdGNoLmh0bWwudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xvYmFsL2ZpZWxk
LWRlc2NzLm5vbmUudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vZ2xvYmFsL2Zvb3Rlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
dGVtcGxhdGUvZW4vY3VzdG9tL2dsb2JhbC9oZWFkZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvaGVscC1oZWFkZXIuaHRtbC50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwv
aGVscC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL2dsb2JhbC9oaWRkZW4tZmllbGRzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xvYmFsL2luaXRpYWxpemUubm9uZS50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvbWVzc2FnZS5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2ds
b2JhbC9tZXNzYWdlcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vY3VzdG9tL2dsb2JhbC9zZWxlY3QtbWVudS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2JhbC9zZXR0aW5nLWRlc2NzLm5vbmUu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vZ2xvYmFs
L3NpdGUtbmF2aWdhdGlvbi5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVt
cGxhdGUvZW4vY3VzdG9tL2dsb2JhbC91c2VmdWwtbGlua3MuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9nbG9iYWwvdXNlci1lcnJvci5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2dsb2Jh
bC91c2Vyc2VsZWN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vZ2xvYmFsL3ZhcmlhYmxlcy5ub25lLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2luZGV4Lmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vbGlzdDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vbGlzdC9jaGFuZ2UtY29sdW1ucy5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3QvZWRpdC1t
dWx0aXBsZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
Y3VzdG9tL2xpc3QvbGlzdC1zaW1wbGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9saXN0L2xpc3QuY3N2LnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3QvbGlzdC5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3QvbGlzdC5pY3MudG1w
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vbGlzdC9saXN0
LmpzLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xp
c3QvbGlzdC5yZGYudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vbGlzdC9saXN0LnJzcy50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBs
YXRlL2VuL2N1c3RvbS9saXN0L3F1aXBzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vbGlzdC9zZXJ2ZXItcHVzaC5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL2xpc3QvdGFibGUuaHRtbC50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9wYWdlczog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcGFnZXMvYnVnLXdy
aXRpbmcuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1
c3RvbS9wYWdlcy9maWVsZHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9wYWdlcy9saW5rZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9wYWdlcy9saW5raWZ5Lmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcGFnZXMvdm90aW5nLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVw
b3J0czogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0
cy9jaGFydC5jc3YudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9j
dXN0b20vcmVwb3J0cy9jaGFydC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
dGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvY2hhcnQucG5nLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvY29tcG9uZW50cy5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMv
Y3JlYXRlLWNoYXJ0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0
ZS9lbi9jdXN0b20vcmVwb3J0cy9kdXBsaWNhdGVzLXNpbXBsZS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvZHVwbGljYXRlcy10
YWJsZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3Vz
dG9tL3JlcG9ydHMvZHVwbGljYXRlcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvZHVwbGljYXRlcy5yZGYudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9lZGl0LXNlcmll
cy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L3JlcG9ydHMva2V5d29yZHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rl
bXBsYXRlL2VuL2N1c3RvbS9yZXBvcnRzL21lbnUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXBvcnRzL3JlcG9ydC1iYXIucG5nLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvcmVw
b3J0LWxpbmUucG5nLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
Y3VzdG9tL3JlcG9ydHMvcmVwb3J0LXBpZS5wbmcudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9yZXBvcnQtc2ltcGxlLmh0bWwudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9yZXBv
cnQtdGFibGUuY3N2LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
Y3VzdG9tL3JlcG9ydHMvcmVwb3J0LXRhYmxlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9yZXBvcnQuY3N2LnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3JlcG9ydHMvcmVwb3J0Lmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vcmVw
b3J0cy9zZXJpZXMtY29tbW9uLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9jdXN0b20vcmVwb3J0cy9zZXJpZXMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXF1ZXN0OiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXF1ZXN0L2VtYWlsLnR4dC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9yZXF1ZXN0L3F1ZXVlLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vc2Vh
cmNoOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9zZWFyY2gv
Ym9vbGVhbi1jaGFydHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBs
YXRlL2VuL2N1c3RvbS9zZWFyY2gvZm9ybS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC9rbm9iLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vc2VhcmNoL3NlYXJjaC1hZHZhbmNl
ZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9t
L3NlYXJjaC9zZWFyY2gtY3JlYXRlLXNlcmllcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC9zZWFyY2gtaGVscC5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3NlYXJjaC9zZWFy
Y2gtcmVwb3J0LWdyYXBoLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1w
bGF0ZS9lbi9jdXN0b20vc2VhcmNoL3NlYXJjaC1yZXBvcnQtc2VsZWN0Lmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vc2VhcmNoL3NlYXJjaC1y
ZXBvcnQtdGFibGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2N1c3RvbS9zZWFyY2gvc2VhcmNoLXNwZWNpZmljLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vc2VhcmNoL3RhYnMuaHRtbC50bXBsOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS9zaWRlYmFyLnh1bC50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS93aGluZTog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9jdXN0b20vd2hpbmUvbWFpbC5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vY3VzdG9tL3do
aW5lL21haWwudHh0LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
Y3VzdG9tL3doaW5lL211bHRpcGFydC1taW1lLnR4dC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2N1c3RvbS93aGluZS9zY2hlZHVsZS5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FjY291bnQ6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hY2NvdW50L2F1dGg6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hY2NvdW50L2F1dGgvbGRhcC1lcnJvci5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9h
Y2NvdW50L2F1dGgvbG9naW4tc21hbGwuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWNjb3VudC9hdXRoL2xvZ2luLmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FjY291bnQvY2FuY2Vs
LXRva2VuLnR4dC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2Rl
ZmF1bHQvYWNjb3VudC9jcmVhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L3RlbXBsYXRlL2VuL2RlZmF1bHQvYWNjb3VudC9jcmVhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FjY291bnQvZW1haWw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hY2NvdW50L2VtYWlsL2No
YW5nZS1uZXcudHh0LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9hY2NvdW50L2VtYWlsL2NoYW5nZS1vbGQudHh0LnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hY2NvdW50L2VtYWlsL2NvbmZpcm0uaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWNj
b3VudC9leGlzdHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvYWNjb3VudC9wYXNzd29yZDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2FjY291bnQvcGFzc3dvcmQvZm9yZ290dGVuLXBhc3N3b3JkLnR4
dC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWNj
b3VudC9wYXNzd29yZC9zZXQtZm9yZ290dGVuLXBhc3N3b3JkLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FjY291bnQvcHJlZnM6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hY2NvdW50L3ByZWZzL2Fj
Y291bnQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2Rl
ZmF1bHQvYWNjb3VudC9wcmVmcy9lbWFpbC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hY2NvdW50L3ByZWZzL2Zvb3Rlci5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hY2NvdW50L3By
ZWZzL3Blcm1pc3Npb25zLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1w
bGF0ZS9lbi9kZWZhdWx0L2FjY291bnQvcHJlZnMvcHJlZnMuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWNjb3VudC9wcmVmcy9zYXZlZC1z
ZWFyY2hlcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9hY2NvdW50L3ByZWZzL3NldHRpbmdzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY2xhc3NpZmljYXRpb25zOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY2xhc3NpZmljYXRp
b25zL2FkZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvZGVsLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL2NsYXNzaWZpY2F0aW9ucy9k
ZWxldGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2Rl
ZmF1bHQvYWRtaW4vY2xhc3NpZmljYXRpb25zL2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY2xhc3NpZmljYXRpb25zL25l
dy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVs
dC9hZG1pbi9jbGFzc2lmaWNhdGlvbnMvcmVjbGFzc2lmeS5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9jbGFzc2lmaWNhdGlvbnMv
c2VsZWN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L2FkbWluL2NsYXNzaWZpY2F0aW9ucy91cGRhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY29tcG9uZW50czogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL2NvbXBvbmVu
dHMvY29uZmlybS1kZWxldGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rl
bXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY29tcG9uZW50cy9jcmVhdGUuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY29tcG9uZW50
cy9jcmVhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9kZWZhdWx0L2FkbWluL2NvbXBvbmVudHMvZGVsZXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9jb21wb25lbnRzL2VkaXQu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQv
YWRtaW4vY29tcG9uZW50cy9mb290ZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY29tcG9uZW50cy9saXN0Lmh0bWwudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL2NvbXBv
bmVudHMvc2VsZWN0LXByb2R1Y3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRl
L3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vY29tcG9uZW50cy91cGRhdGVkLmh0bWwudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL2ZpZWxk
dmFsdWVzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRt
aW4vZmllbGR2YWx1ZXMvY29uZmlybS1kZWxldGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vZmllbGR2YWx1ZXMvY3JlYXRlLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2Fk
bWluL2ZpZWxkdmFsdWVzL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vZmllbGR2YWx1ZXMvZGVsZXRlZC5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9m
aWVsZHZhbHVlcy9lZGl0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1w
bGF0ZS9lbi9kZWZhdWx0L2FkbWluL2ZpZWxkdmFsdWVzL2Zvb3Rlci5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9maWVsZHZhbHVl
cy9saXN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L2FkbWluL2ZpZWxkdmFsdWVzL3NlbGVjdC1maWVsZC5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9maWVsZHZhbHVlcy91
cGRhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L2FkbWluL2ZsYWctdHlwZTogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0
ZS9lbi9kZWZhdWx0L2FkbWluL2ZsYWctdHlwZS9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9mbGFnLXR5
cGUvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9hZG1pbi9mbGFnLXR5cGUvbGlzdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9ncm91cHM6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9ncm91cHMvY2hhbmdlLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWlu
L2dyb3Vwcy9jcmVhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBs
YXRlL2VuL2RlZmF1bHQvYWRtaW4vZ3JvdXBzL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vZ3JvdXBzL2RlbGV0ZS5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9h
ZG1pbi9ncm91cHMvZGVsZXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
dGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9ncm91cHMvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9ncm91cHMvbGlzdC5o
dG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9h
ZG1pbi9ncm91cHMvcmVtb3ZlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL2tleXdvcmRzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4va2V5d29yZHMvY29uZmlybS1kZWxldGUuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRt
aW4va2V5d29yZHMvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL2tleXdvcmRzL2NyZWF0ZWQuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4va2V5d29yZHMv
ZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVm
YXVsdC9hZG1pbi9rZXl3b3Jkcy9saXN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL2tleXdvcmRzL3JlYnVpbGQtY2FjaGUuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRt
aW4vbWlsZXN0b25lczogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZh
dWx0L2FkbWluL21pbGVzdG9uZXMvY29uZmlybS1kZWxldGUuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vbWlsZXN0b25lcy9jcmVh
dGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1
bHQvYWRtaW4vbWlsZXN0b25lcy9jcmVhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL21pbGVzdG9uZXMvZGVsZXRlZC5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1p
bi9taWxlc3RvbmVzL2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rl
bXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vbWlsZXN0b25lcy9mb290ZXIuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vbWlsZXN0b25l
cy9saXN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L2FkbWluL21pbGVzdG9uZXMvc2VsZWN0LXByb2R1Y3QuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vbWlsZXN0b25lcy91
cGRhdGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L2FkbWluL3Byb2R1Y3RzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvYWRtaW4vcHJvZHVjdHMvY29uZmlybS1kZWxldGUuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vcHJvZHVjdHMv
ZGVsZXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9hZG1pbi9wcm9kdWN0cy9mb290ZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vcHJvZHVjdHMvZ3JvdXBjb250cm9s
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vcHJv
ZHVjdHMvZ3JvdXBjb250cm9sL2NvbmZpcm0tZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9wcm9kdWN0cy9ncm91cGNvbnRy
b2wvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9hZG1pbi9wcm9kdWN0cy9saXN0LWNsYXNzaWZpY2F0aW9ucy5odG1sLnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9wcm9kdWN0
cy9saXN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L2FkbWluL3NldHRpbmdzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvYWRtaW4vc2V0dGluZ3MvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi9zZXR0aW5ncy91cGRhdGVkLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2Fk
bWluL3RhYmxlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9kZWZhdWx0L2FkbWluL3VzZXJzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvYWRtaW4vdXNlcnMvY29uZmlybS1kZWxldGUuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vdXNlcnMvY3JlYXRl
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0
L2FkbWluL3VzZXJzL2VkaXQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rl
bXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vdXNlcnMvbGlzdC5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi91c2Vycy9saXN0c2VsZWN0
dmFycy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVm
YXVsdC9hZG1pbi91c2Vycy9zZWFyY2guaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vdXNlcnMvdXNlcmRhdGEuaHRtbC50bXBsOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vdmVyc2lv
bnM6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi92
ZXJzaW9ucy9jb25maXJtLWRlbGV0ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hZG1pbi92ZXJzaW9ucy9jcmVhdGUuaHRtbC50bXBsOiBB
ZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vdmVyc2lv
bnMvY3JlYXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUv
ZW4vZGVmYXVsdC9hZG1pbi92ZXJzaW9ucy9kZWxldGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL3ZlcnNpb25zL2VkaXQuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRt
aW4vdmVyc2lvbnMvZm9vdGVyLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2FkbWluL3ZlcnNpb25zL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYWRtaW4vdmVyc2lvbnMvc2Vs
ZWN0LXByb2R1Y3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvYWRtaW4vdmVyc2lvbnMvdXBkYXRlZC5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hdHRhY2htZW50OiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYXR0YWNobWVudC9jaG9vc2UuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYXR0
YWNobWVudC9jb250ZW50LXR5cGVzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2F0dGFjaG1lbnQvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2F0dGFjaG1lbnQvY3JlYXRl
ZC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVs
dC9hdHRhY2htZW50L2RpZmYtZmlsZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hdHRhY2htZW50L2RpZmYtZm9vdGVyLmh0bWwudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2F0dGFjaG1lbnQv
ZGlmZi1oZWFkZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvYXR0YWNobWVudC9lZGl0LWFyb2Jlbi5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hdHRhY2htZW50L2VkaXQuaHRtbC50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYXR0YWNo
bWVudC9saXN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9kZWZhdWx0L2F0dGFjaG1lbnQvc2hvdy1tdWx0aXBsZS5odG1sLnRtcGw6IEFkZGVkLgogICAg
ICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9hdHRhY2htZW50L3VwZGF0ZWQuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVn
OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVnL2FjdGl2
aXR5OiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVnL2Fj
dGl2aXR5L3Nob3cuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvYnVnL2FjdGl2aXR5L3RhYmxlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2J1Zy9jaG9vc2UuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVnL2NvbW1lbnRzLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2J1
Zy9jcmVhdGU6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9i
dWcvY3JlYXRlL2NvbW1lbnQtZ3VpZGVkLnR4dC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVnL2NyZWF0ZS9jb21tZW50LnR4dC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVnL2NyZWF0ZS9jcmVh
dGUtZ3VpZGVkLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9kZWZhdWx0L2J1Zy9jcmVhdGUvY3JlYXRlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2J1Zy9jcmVhdGUvY3JlYXRlZC5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvY3JlYXRl
L21ha2UtdGVtcGxhdGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBs
YXRlL2VuL2RlZmF1bHQvYnVnL2NyZWF0ZS91c2VyLW1lc3NhZ2UuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVnL2RlcGVuZGVuY3ktZ3Jh
cGguaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1
bHQvYnVnL2RlcGVuZGVuY3ktdHJlZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvZWRpdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcva25vYi5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvbmF2aWdhdGUuaHRt
bC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVn
L3Byb2Nlc3M6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9i
dWcvcHJvY2Vzcy9idWdtYWlsLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2J1Zy9wcm9jZXNzL2NvbmZpcm0tZHVwbGljYXRlLmh0bWwudG1w
bDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2J1Zy9wcm9j
ZXNzL2hlYWRlci5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUv
ZW4vZGVmYXVsdC9idWcvcHJvY2Vzcy9taWRhaXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvYnVnL3Byb2Nlc3MvbmV4dC5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvcHJvY2Vz
cy9yZXN1bHRzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9kZWZhdWx0L2J1Zy9wcm9jZXNzL3ZlcmlmeS1uZXctcHJvZHVjdC5odG1sLnRtcGw6IEFkZGVk
LgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvc2hvdy1tdWx0aXBs
ZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVs
dC9idWcvc2hvdy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUv
ZW4vZGVmYXVsdC9idWcvc2hvdy54bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2J1Zy9zdW1tYXJpemUtdGltZS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvdGltZS5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvdm90ZXM6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9idWcvdm90ZXMv
ZGVsZXRlLWFsbC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUv
ZW4vZGVmYXVsdC9idWcvdm90ZXMvbGlzdC1mb3ItYnVnLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2J1Zy92b3Rlcy9saXN0LWZvci11c2Vy
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0
L2NvbmZpZy5qcy50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2Rl
ZmF1bHQvY29uZmlnLnJkZi50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvZmlsdGVyZXhjZXB0aW9ucy5wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2ZsYWc6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVt
cGxhdGUvZW4vZGVmYXVsdC9mbGFnL2xpc3QuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvZ2xvYmFsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvZ2xvYmFsL2Jhbm5lci5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9nbG9iYWwvY2hvb3NlLWNsYXNz
aWZpY2F0aW9uLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9l
bi9kZWZhdWx0L2dsb2JhbC9jaG9vc2UtcHJvZHVjdC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9nbG9iYWwvY29kZS1lcnJvci5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9nbG9iYWwv
Y29uZmlybS11c2VyLW1hdGNoLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2JhbC9maWVsZC1kZXNjcy5ub25lLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9nbG9iYWwvZm9vdGVyLmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2Jh
bC9oZWFkZXIuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2RlZmF1bHQvZ2xvYmFsL2hlbHAtaGVhZGVyLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2JhbC9oZWxwLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2JhbC9oaWRkZW4tZmll
bGRzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZh
dWx0L2dsb2JhbC9pbml0aWFsaXplLm5vbmUudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2JhbC9tZXNzYWdlLmh0bWwudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2JhbC9tZXNzYWdlcy5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9nbG9i
YWwvc2VsZWN0LW1lbnUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBs
YXRlL2VuL2RlZmF1bHQvZ2xvYmFsL3NldHRpbmctZGVzY3Mubm9uZS50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvZ2xvYmFsL3NpdGUtbmF2aWdhdGlv
bi5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVs
dC9nbG9iYWwvdXNlZnVsLWxpbmtzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0
ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2JhbC91c2VyLWVycm9yLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2dsb2JhbC91c2Vyc2VsZWN0
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0
L2dsb2JhbC92YXJpYWJsZXMubm9uZS50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rl
bXBsYXRlL2VuL2RlZmF1bHQvaW5kZXguaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvbGlzdDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L2xpc3QvY2hhbmdlLWNvbHVtbnMuaHRtbC50bXBsOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvbGlzdC9lZGl0LW11bHRpcGxl
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0
L2xpc3QvbGlzdC1zaW1wbGUuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rl
bXBsYXRlL2VuL2RlZmF1bHQvbGlzdC9saXN0LmF0b20udG1wbDogQWRkZWQuCiAgICAgICAgKiBC
dWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2xpc3QvbGlzdC5jc3YudG1wbDogQWRkZWQuCiAg
ICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L2xpc3QvbGlzdC5odG1sLnRtcGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9saXN0L2xpc3Qu
aWNzLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9s
aXN0L2xpc3QuanMudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L2xpc3QvbGlzdC5yZGYudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1w
bGF0ZS9lbi9kZWZhdWx0L2xpc3QvcXVpcHMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1
Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvbGlzdC9zZXJ2ZXItcHVzaC5odG1sLnRtcGw6IEFk
ZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9saXN0L3RhYmxlLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3Bh
Z2VzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvcGFnZXMv
YnVnLXdyaXRpbmcuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRl
L2VuL2RlZmF1bHQvcGFnZXMvZmllbGRzLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdz
U2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3BhZ2VzL2xpbmtlZC5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9wYWdlcy9saW5raWZ5Lmh0bWwu
dG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3BhZ2Vz
L3ZvdGluZy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9yZXBvcnRzOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2Rl
ZmF1bHQvcmVwb3J0cy9jaGFydC5jc3YudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90
ZW1wbGF0ZS9lbi9kZWZhdWx0L3JlcG9ydHMvY2hhcnQuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvcmVwb3J0cy9jaGFydC5wbmcudG1wbDog
QWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3JlcG9ydHMvY29t
cG9uZW50cy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9yZXBvcnRzL2NyZWF0ZS1jaGFydC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9yZXBvcnRzL2R1cGxpY2F0ZXMtc2ltcGxlLmh0
bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3Jl
cG9ydHMvZHVwbGljYXRlcy10YWJsZS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9yZXBvcnRzL2R1cGxpY2F0ZXMuaHRtbC50bXBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvcmVwb3J0cy9kdXBsaWNh
dGVzLnJkZi50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1
bHQvcmVwb3J0cy9lZGl0LXNlcmllcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9yZXBvcnRzL2tleXdvcmRzLmh0bWwudG1wbDogQWRkZWQu
CiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3JlcG9ydHMvbWVudS5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9yZXBv
cnRzL3JlcG9ydC1iYXIucG5nLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vZGVmYXVsdC9yZXBvcnRzL3JlcG9ydC1saW5lLnBuZy50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvcmVwb3J0cy9yZXBvcnQtcGllLnBuZy50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvcmVwb3J0
cy9yZXBvcnQtc2ltcGxlLmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1w
bGF0ZS9lbi9kZWZhdWx0L3JlcG9ydHMvcmVwb3J0LXRhYmxlLmNzdi50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvcmVwb3J0cy9yZXBvcnQtdGFibGUu
aHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQv
cmVwb3J0cy9yZXBvcnQuY3N2LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vZGVmYXVsdC9yZXBvcnRzL3JlcG9ydC5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICog
QnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9yZXBvcnRzL3Nlcmllcy1jb21tb24uaHRtbC50
bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvcmVwb3J0
cy9zZXJpZXMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2Vu
L2RlZmF1bHQvcmVxdWVzdDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9k
ZWZhdWx0L3JlcXVlc3QvZW1haWwudHh0LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
dGVtcGxhdGUvZW4vZGVmYXVsdC9yZXF1ZXN0L3F1ZXVlLmh0bWwudG1wbDogQWRkZWQuCiAgICAg
ICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3NlYXJjaDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3NlYXJjaC9ib29sZWFuLWNoYXJ0cy5odG1s
LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC9zZWFy
Y2gvZm9ybS5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4v
ZGVmYXVsdC9zZWFyY2gva25vYi5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUv
dGVtcGxhdGUvZW4vZGVmYXVsdC9zZWFyY2gvc2VhcmNoLWFkdmFuY2VkLmh0bWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3NlYXJjaC9zZWFyY2gt
Y3JlYXRlLXNlcmllcy5odG1sLnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxh
dGUvZW4vZGVmYXVsdC9zZWFyY2gvc2VhcmNoLWhlbHAuaHRtbC50bXBsOiBBZGRlZC4KICAgICAg
ICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvc2VhcmNoL3NlYXJjaC1yZXBvcnQtZ3Jh
cGguaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1
bHQvc2VhcmNoL3NlYXJjaC1yZXBvcnQtc2VsZWN0Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3NlYXJjaC9zZWFyY2gtcmVwb3J0LXRhYmxl
Lmh0bWwudG1wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0
L3NlYXJjaC9zZWFyY2gtc3BlY2lmaWMuaHRtbC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NT
aXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvc2VhcmNoL3RhYnMuaHRtbC50bXBsOiBBZGRlZC4KICAg
ICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvc2lkZWJhci54dWwudG1wbDogQWRk
ZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90ZW1wbGF0ZS9lbi9kZWZhdWx0L3doaW5lOiBBZGRlZC4K
ICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1bHQvd2hpbmUvbWFpbC5odG1sLnRt
cGw6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZGVmYXVsdC93aGluZS9t
YWlsLnR4dC50bXBsOiBBZGRlZC4KICAgICAgICAqIEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2RlZmF1
bHQvd2hpbmUvbXVsdGlwYXJ0LW1pbWUudHh0LnRtcGw6IEFkZGVkLgogICAgICAgICogQnVnc1Np
dGUvdGVtcGxhdGUvZW4vZGVmYXVsdC93aGluZS9zY2hlZHVsZS5odG1sLnRtcGw6IEFkZGVkLgog
ICAgICAgICogQnVnc1NpdGUvdGVtcGxhdGUvZW4vZXh0ZW5zaW9uOiBBZGRlZC4KICAgICAgICAq
IEJ1Z3NTaXRlL3RlbXBsYXRlL2VuL2V4dGVuc2lvbi9maWx0ZXJleGNlcHRpb25zLnBsOiBBZGRl
ZC4KICAgICAgICAqIEJ1Z3NTaXRlL3Rlc3RhZ2VudC5jZ2k6IEFkZGVkLgogICAgICAgICogQnVn
c1NpdGUvdGVzdHNlcnZlci5wbDogQWRkZWQuCiAgICAgICAgKiBCdWdzU2l0ZS90b2tlbi5jZ2k6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvdXNlcnByZWZzLmNnaTogQWRkZWQuCiAgICAgICAg
KiBCdWdzU2l0ZS92b3Rlcy5jZ2k6IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvd2hpbmUucGw6
IEFkZGVkLgogICAgICAgICogQnVnc1NpdGUvd2hpbmVhdG5ld3MucGw6IEFkZGVkLgogICAgICAg
ICogQnVnc1NpdGUveG1sLmNnaTogQWRkZWQuCgoyMDA4LTAyLTA0ICBKYW4gTWljaGFlbCBBbG9u
em8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEFscCBU
b2tlciBhbmQgTWFyayBSb3dlLgoKICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjYxOAogICAgICAgIFtHVEtdIGJ1aWxkLXdlYmtpdCBhbmQgcnVuLXdlYmtp
dC10ZXN0cyBhdXRvb3Rvb2xzIHN1cHBvcnQKCiAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHRoZSBh
dXRvdG9vbHMgYnVpbGQgdG8gdGhlIFdlYktpdCBidWlsZCBhbmQgdGVzdAogICAgICAgIHNjcmlw
dHMuCgoyMDA4LTAyLTA0ICBSb2RuZXkgRGF3ZXMgIDxkb2JleUB3YXlvZnRoZW1vbmtleS5jb20+
CgogICAgICAgIFJldmlld2VkIGJ5IEFscCBUb2tlciBhbmQgTWFyayBSb3dlLgoKICAgICAgICBG
aXggaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcxNzUuCiAgICAgICAg
QnVnIDE3MTc1OiBVc2Ugb2YgQysrIGNvbXBpbGVyIGZsYWdzIGluIENGTEFHUwoKICAgICAgICBB
ZGQgZ2xvYmFsX2N4eGZsYWdzIGRlZmluaXRpb24gZm9yIGluY2x1c2lvbiBpbiBDWFhGTEFHUyB2
YXJpYWJsZXMuCiAgICAgICAgT25seSB1c2UgLWZuby1ydHRpIGFuZCAkKFNZTUJPTF9WSVNJQklM
SVRZX0lOTElORVMpIHdpdGggZ2xvYmFsX2N4eGZsYWdzIGFzIGdjYyBjb21wbGFpbnMgdGhleSBh
cmVuJ3QgdmFsaWQgZm9yIEMuCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CgoyMDA4LTAyLTA0
ICBBbHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkg
TWFyayBSb3dlLgoKICAgICAgICBSZW1vdmUgYWxsIHRyYWlsaW5nIHdoaXRlc3BhY2UgaW4gdGhl
IEdUSysgcG9ydCBhbmQgcmVsYXRlZAogICAgICAgIGNvbXBvbmVudHMuCgogICAgICAgICogR05V
bWFrZWZpbGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTAxLTMxICBBbHAgVG9r
ZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgoKICAg
ICAgICBGaXggdGhlIHBrZy1jb25maWcgZmlsZSB0byBmb2xsb3cgR1RLKyBwYWNrYWdlIG5hbWlu
ZyBhbmQgdmVyc2lvbmluZwogICAgICAgIGNvbnZlbnRpb25zLgoKICAgICAgICBSZW1vdmUgdW5u
ZWVkZWQgZGVwZW5kZW5jeSBsaXN0aW5ncy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKICAg
ICAgICAqIGNvbmZpZ3VyZS5hYzoKCjIwMDgtMDEtMzEgIEFscCBUb2tlciAgPGFscEBhdG9rZXIu
Y29tPgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBBZGFtIFJvYmVuLgoKICAgICAgICBodHRw
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzAwNgogICAgICAgIFtHVEtdIEhl
YWRlciBwYXRoIHNob3VsZCBiZSB3ZWJraXQvd2Via2l0LmgKCiAgICAgICAgTW92ZSB0aGUgR1RL
KyBBUEkgc291cmNlcyBhcyBuZWVkZWQgYW5kIHVwZGF0ZSB0aGUgYnVpbGQgc3lzdGVtcy4KCiAg
ICAgICAgKiBHTlVtYWtlZmlsZS5hbToKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDA4LTAxLTI3
ICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+CgogICAgICAg
IFJldmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTQ4MTEKICAgICAgICBbZ3RrXSBbcmVxdWVzdF0gYWRkIGEgd2Via2l0
X2d0a19wYWdlX2dvX3RvX2hpc3RvcnlfaXRlbSBmdW5jdGlvbgoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOiBBZGRlZCB3ZWJraXR3ZWJiYWNrZm9yd2FyZGxpc3QgYW5kIHdlYmtpdHdlYmhpc3Rv
cnlpdGVtCgoyMDA4LTAxLTI2ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CgogICAgICAg
IFJldmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgRml4IGh0dHA6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE3MDA3LgogICAgICAgIEJ1ZyAxNzAwNzogW0dUS10gYXV0b2dl
bi5zaCBhdHRlbXB0cyB0byB1c2UgImxpYnRvb2xpemUiIG9uIHRoZSBNYWMKCiAgICAgICAgbGli
dG9vbGl6ZSBpcyBpbnN0YWxsZWQgYXMgZ2xpYnRvb2xpemUgb24gTWFjIE9TIFggdG8gYXZvaWQg
bmFtaW5nIGNvbmZsaWN0cwogICAgICAgIHdpdGggb3RoZXIgc3lzdGVtIGNvbW1hbmRzLiAgQ2hl
Y2sgZm9yIHRoZSBwcmVzZW5jZSBvZiBnbGlidG9vbGl6ZSBpZiBsaWJ0b29saXplCiAgICAgICAg
Y2Fubm90IGJlIGZvdW5kLgoKICAgICAgICAqIGF1dG9nZW4uc2g6CgoyMDA4LTAxLTIzICBBbHAg
VG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgTWFyayBS
b3dlLgoKICAgICAgICBSZW1vdmUgd2hpdGVzcGFjZSBhZnRlciAtSSBpbiBhdXRvbWFrZSBpbmNs
dWRlIGxpc3RzLgoKICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgoKMjAwOC0wMS0yMiAgQ2hyaXN0
aWFuIER5d2FuICA8Y2hyaXN0aWFuQGltZW5kaW8uY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBB
bHAgVG9rZXIuCgogICAgICAgIFtHVEtdIEFQSTogV2ViS2l0V2ViU2V0dGluZ3MgaXMgbm90IHVz
YWJsZQogICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MjE5
CgogICAgICAgIEltcGxlbWVudCBXZWJLaXRXZWJTZXR0aW5ncy4KCiAgICAgICAgKiBHTlVtYWtl
ZmlsZS5hbToKCjIwMDgtMDEtMjIgIFNpbW9uIEhhdXNtYW5uICA8aGF1c21hbm5Ad2Via2l0Lm9y
Zz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTGFycy4KCiAgICAgICAgRG9uJ3QgY29tcGlsZSB0aGUg
SUNPIHBsdWdpbiB3aGVuIGJ1aWxkaW5nIGFnYWluc3QgUXQgPj0gNC40CgoKICAgICAgICAqIFdl
YktpdC5wcm86CgoyMDA4LTAxLTIxICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B1bnBs
dWdnYWJsZS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0
cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5NTUKICAgICAgICBHZXQgZXJy
b3JzIHdoZW4gY3Jvc3MtY29tcGlsZSB3ZWJraXQtZ3RrCgogICAgICAgICogR05VbWFrZWZpbGUu
YW06IGFkZGVkIElDVV9DUFBGTEFHUwogICAgICAgICogY29uZmlndXJlLmFjOiBhZGRlZCBJQ1Vf
Q1BQRkxBR1MsIHJlbW92ZWQgSUNVX0NGTEFHUwoKMjAwOC0wMS0xOSAgSmFuIE1pY2hhZWwgQWxv
bnpvICA8am1hbG9uem9AdW5wbHVnZ2FibGUuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBBbHAg
VG9rZXIuCgogICAgICAgIEFkZCBzdmcgZm9yZWlnbiBvYmplY3QgYW5kIHN2ZyBleHBlcmltZW50
YWwgdG8gdGhlIEdUSysvYXV0b3Rvb2xzCiAgICAgICAgYnVpbGQgc3lzdGVtLgoKICAgICAgICAq
IGNvbmZpZ3VyZS5hYzoKCjIwMDgtMDEtMTUgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgoK
ICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBBbmRlcnMuCgogICAgICAgIE1ha2UgdGhlIEhUVFAg
YmFja2VuZCBjb25maWd1cmFibGUgaW4gdGhlIEdUSysgcG9ydC4gY3VybCBpcyBjdXJyZW50bHkK
ICAgICAgICB0aGUgb25seSBvcHRpb24uCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CiAgICAg
ICAgKiBXZWJLaXQucHJpOgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wMS0xNSAgQWxw
IFRva2VyICA8YWxwQGF0b2tlci5jb20+CgogICAgICAgIEdUSysvYXV0b3Rvb2xzIGJ1aWxkIGZp
eCBmb3IgR0NDIDwgNC4gVXNlIHRoZSAtZnZpc2liaWxpdHkgY29tcGlsZXIKICAgICAgICBmbGFn
cyBvbmx5IHdoZW4gdGhleSdyZSBhdmFpbGFibGUuCgogICAgICAgIEFkZGl0aW9uYWxseSwgdXNl
IC1mdmlzaWJpbGl0eS1pbmxpbmVzLWhpZGRlbiBpbiBib3RoIGRlYnVnIGFuZAogICAgICAgIHJl
bGVhc2UgYnVpbGRzIHdoZW4gYXZhaWxhYmxlIHRvIG1hdGNoIHRoZSBNYWMgYnVpbGQuCgogICAg
ICAgICogR05VbWFrZWZpbGUuYW06CiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTAxLTEy
ICBBbHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBS
b3dlLgoKICAgICAgICBIaWRlIG5vbi1wdWJsaWMgc3ltYm9scyBpbiBHVEsrL2F1dG90b29scyBy
ZWxlYXNlIGJ1aWxkcy4KCiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKCjIwMDgtMDEtMTEgIEFs
cCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBPbGl2ZXIgSHVu
dC4KCiAgICAgICAgRW5hYmxlIEZhc3RNYWxsb2MgYnkgZGVmYXVsdCBpbiBHVEsrL2F1dG90b29s
cyBhbmQgYWRkIGEgY29uZmlndXJlCiAgICAgICAgc3dpdGNoLgoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wMS0xMSAgTHVjYSBCcnVubyAg
PGxldGhhbG1hbjg4QGdtYWlsLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgoK
ICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjgzOAogICAg
ICAgIFtHVEtdIEJhZCBhdXRvdG9vbHMgZGVidWcgYW5kIHZpZGVvIG9wdGlvbnMKCiAgICAgICAg
Rml4IHNvbWUgY29uZmlndXJlIG9wdGlvbnMuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAw
OC0wMS0xMSAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgoKICAgICAgICBBdHRlbXB0IHRv
IGZpeCB0aGUgR1RLKyBhbmQgUXQgYnVpbGRzLgoKICAgICAgICAqIFdlYktpdC5wcm86CgoyMDA4
LTAxLTEwICBBbHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgU1ZHIGZvbnQgYnVp
bGQgZml4IGZvciBHVEsrL2F1dG90b29scy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4
LTAxLTA1ICBBbHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgUnViYmVyLXN0YW1w
ZWQgYnkgTWFyayBSb3dlLgoKICAgICAgICBGaXggY29uZmlndXJlIHNjcmlwdCBvdXRwdXQgd2l0
aCBjb3JyZWN0IGRlc2NyaXB0aW9ucyBvZiB0aGUgZGVmYXVsdAogICAgICAgIGNvbmZpZ3VyYXRp
b24gb3B0aW9ucy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6CgoyMDA4LTAxLTA1ICBTeWx2YWlu
IFBhc2NoZSAgPHN5bHZhaW4ucGFzY2hlQGdtYWlsLmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkg
QWxwIFRva2VyLgoKICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNjczNgogICAgICAgIEFsbG93IGF1dG9nZW4uc2ggaW52b2NhdGlvbiBmcm9tIGEgc2VwYXJh
dGUgYnVpbGQgZGlyZWN0b3J5LgoKICAgICAgICAqIGF1dG9nZW4uc2g6CgoyMDA4LTAxLTA0ICBB
bHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgTWFy
ayBSb3dlLgoKICAgICAgICBSZW1vdmUgQU1fTUFJTlRBSU5FUl9NT0RFLCBhcyByZWNvbW1lbmRl
ZCBieSB0aGUgYXV0b21ha2UgbWFudWFsLiBUaGUKICAgICAgICAicmVidWlsZCBydWxlcyIgd2ls
bCBub3cgYmUgZW5hYmxlZCBieSBkZWZhdWx0LgoKICAgICAgICBUaGlzIG9idmlhdGVzIHRoZSBu
ZWVkIHRvIHBhc3MgJy0tZW5hYmxlLW1haW50YWluZXItbW9kZScgdG8KICAgICAgICBjb25maWd1
cmUuCgogICAgICAgICogY29uZmlndXJlLmFjOgoKMjAwOC0wMS0wMiAgSG9sZ2VyIEhhbnMgUGV0
ZXIgRnJleXRoZXIgIDx6ZWNrZUBzZWxmaXNoLm9yZz4KCiAgICAgICAgUnViYmVyIHN0YW1wZWQg
YnkgQWxwLgoKICAgICAgICBSZW1vdmUgR0RLX01VTFRJSEVBRF9TQUZFIGFuZCBHVEtfTVVMVElI
RUFEX1NBRkUgYmVjYXVzZSB0aGV5IGJyZWFrCiAgICAgICAgdGhlIGJ1aWxkLiBBdCBsZWFzdCBw
ZW9wbGUgZG9pbmcgYSBkZWJ1ZyBidWlsZCBvbiBVYnVudHUgSGFyZHkgd2lsbCBzZWUKICAgICAg
ICB0aGUgYnJlYWthZ2UuIEkgd2FzIGFza2VkIHRvIGxlYXZlIHRoZSBmbGFncyBpbnNpZGUgdGhl
IGZpbGVzIHRvIGVhc2UgZnV0dXJlCiAgICAgICAgZGVidWdnaW5nLgoKICAgICAgICAqIEdOVW1h
a2VmaWxlLmFtOgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDgtMDEtMDEgIEFscCBUb2tlciAg
PGFscEBhdG9rZXIuY29tPgoKICAgICAgICBHVEsrIGF1dG90b29scyBidWlsZCBmaXguIFRyYWNr
IGNoYW5nZXMgaW4gcjI5MDUxLCByMjkwNTggYW5kIHBhc3MgdGhlCiAgICAgICAgY29ycmVjdCBw
YXJhbWV0ZXIgdG8gQU1fSU5JVF9BVVRPTUFLRS4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6Cgoy
MDA3LTEyLTMwICBBbHAgVG9rZXIgIDxhbHBAYXRva2VyLmNvbT4KCiAgICAgICAgQnVpbGQgZml4
IGZvciBvbGRlciBhdXRvY29uZiB2ZXJzaW9ucy4KCiAgICAgICAgKiBjb25maWd1cmUuYWM6Cgoy
MDA3LTEyLTI5ICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+
CgogICAgICAgIFJldmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgRW5hYmxlIERhdGFiYXNl
LCBYUGF0aCBhbmQgWFNMVCBmZWF0dXJlcyBieSBkZWZhdWx0CgogICAgICAgICogY29uZmlndXJl
LmFjOgoKMjAwNy0xMi0yOSAgSmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9AdW5wbHVnZ2Fi
bGUuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBBbHAgVG9rZXIuCgogICAgICAgIGh0dHA6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NjY5CiAgICAgICAgYXV0b3Rvb2xzIHVw
ZGF0ZSBhbmQgZml4ZXMKCiAgICAgICAgVmFyaW91cyBmaXhlcyB0byB0aGUgYXV0b3Rvb2xzIGJ1
aWxkCgogICAgICAgICogR05VbWFrZWZpbGUuYW06CiAgICAgICAgICAtIFJlbW92ZSBJQ1VfRkxB
R1MgYmVjYXVzZSBpdCBhZGRzIC1nIGluIHRoZSBDRkxBR1MvQ1hYRkxBR1MKICAgICAgICAgIC0g
Rml4IGNsZWFuIHJ1bGVzIChSb2RuZXkgRGF3ZXMpCiAgICAgICAgICAtIEFkZGVkIHdlYmNvcmUg
c3BlY2lmaWMgdmFyaWFibGVzLCByZW1vdmUgU1RESU5UX0ggYW5kCiAgICAgICAgICAgIFBUSFJF
QURfTlBfSCBjaGVja3MgKGFscmVhZHkgaW5jbHVkZWQgaW4gY29uZmlnLmgpCiAgICAgICAgKiBh
dXRvZ2VuLnNoOgogICAgICAgICAgLSBMb29zZW4gYXV0b21ha2UgYW5kIGFjbG9jYWwgcmVxdWly
ZW1lbnQKICAgICAgICAqIGNvbmZpZ3VyZS5hYzoKICAgICAgICAgIC0gV29ya2Fyb3VuZCBBQ19Q
Uk9HX0NYWCBwdXR0aW5nIC1nIGluIENYWEZMQUdTLiBPbmx5IHVzZSAtZwogICAgICAgICAgICB3
aGVuIGRvaW5nIGEgZGVidWcgYnVpbGQgKFJvZG5leSBEYXdlcykKICAgICAgICAgIC0gRml4IHdl
YmtpdCB0YXJnZXQgYW5kIHJlbW92ZSB0cmFjZXMgb2YgWEJMCgoyMDA3LTEyLTI3ICBKYW4gTWlj
aGFlbCBBbG9uem8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+CgogICAgICAgIFJldmlld2Vk
IGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTYzNTMKICAgICAgICBbR1RLXSBDaGVjayBmb3IgZGVwcmVjYXRlZCBBUEkgdXNlIChH
X0RJU0FCTEVfREVQUkVDQVRFRCBldGMuKQoKICAgICAgICBBZGRlZCB0aGUgZmxhZ3MgbWVudGlv
bmVkIGluIHRoZSBidWcgb25seSB3aGVuIGRvaW5nICdkZWJ1ZycKICAgICAgICBidWlsZHMuIC1E
R1NUX0RJU0FCTEVfREVQUkVDQVRFRCBvbmx5IGFkZGVkIHdoZW4gdmlkZW8gaXMgZW5hYmxlZC4K
CiAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDA3LTEy
LTI2ICBKYW4gTWljaGFlbCBBbG9uem8gIDxqbWFsb256b0B1bnBsdWdnYWJsZS5jb20+CgogICAg
ICAgIFJldmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTYzOTAKICAgICAgICBVc2UgYXV0b3Rvb2xzIG9yIEdOVSBtYWtl
IGFzIHRoZSBidWlsZCBzeXN0ZW0gZm9yIHRoZSBHVEsgcG9ydAoKICAgICAgICAqIEdOVW1ha2Vm
aWxlLmFtOiBBZGRlZC4KICAgICAgICAqIGF1dG9nZW4uc2g6IEFkZGVkLgogICAgICAgICogY29u
ZmlndXJlLmFjOiBBZGRlZC4KCjIwMDctMTItMjAgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29t
PgoKICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBNYWNpZWouCgogICAgICAgIGh0dHA6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NTQyCiAgICAgICAgW0dUS10gVGV4dCBpcyBt
aXNzaW5nIHdpdGggb2xkIFBhbmdvIHZlcnNpb24KCiAgICAgICAgQmFjayBvdXQgY29tbWl0cyBy
Mjg4ODAsIHIyODg3NiwgcjI4ODY1LCByMjg4NjQgd2hpY2ggYWRkZWQgUGFuZ28gZm9udAogICAg
ICAgIHNlbGVjdGlvbiBzdXBwb3J0LiBUaGVzZSBjaGFuZ2VzIGNhdXNlZCBhIHJlZ3Jlc3Npb24g
d2hlcmUgbm8gdGV4dCB3YXMKICAgICAgICBkaXNwbGF5ZWQgd2l0aCBvbGRlciBQYW5nbyB2ZXJz
aW9ucy4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwNy0xMi0xOSAgQWxwIFRva2VyICA8YWxw
QGF0b2tlci5jb20+CgogICAgICAgIFJlbW92ZSB0aGUgY2Fpcm8tZnQgcGtnLWNvbmZpZyBjaGVj
ay4gVGhlIEdUSysgcG9ydCBkb2Vzbid0IHVzZQogICAgICAgIGNhaXJvLWZ0IGRpcmVjdGx5IGZv
bGxvd2luZyBjaGFuZ2VzIGluIHIyODg2NC4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwNy0x
Mi0xMiAgQWxwIFRva2VyICA8YWxwQGF0b2tlci5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IE1h
cmsgUm93ZS4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTYzMDIKICAgICAgICBbR1RLXSBDb21waWxlciBmbGFncyBmb3Igb3B0aW1pemF0aW9uCgogICAg
ICAgIFVzZSB0aGUgY29tcGlsZXIgZmxhZ3MgLWZuby1leGNlcHRpb25zIC1mbm8tcnR0aS4KCiAg
ICAgICAgVGhpcyBwYXRjaCBkb2VzIG5vdCBhZGQgYWxsIHRoZSBmbGFncyBkaXNjdXNzZWQgaW4g
dGhlIGJ1ZyByZXBvcnQsCiAgICAgICAgb25seSB0aGVzZSB0d28uCgogICAgICAgICogV2ViS2l0
LnByaToKCjIwMDctMTItMDQgIFhhbiBMb3BleiAgPHhhbkBnbm9tZS5vcmc+CgogICAgICAgIFJl
dmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTU1NjEKICAgICAgICBHVEsgcG9ydCBuZWVkcyBEdW1wUmVuZGVyVHJlZSBp
bXBsZW1lbnRhdGlvbgoKICAgICAgICBTdGFydCB3b3JrIG9uIHRoZSBHVEsrIERSVC4KCiAgICAg
ICAgKiBXZWJLaXQucHJvOgoKMjAwNy0xMS0zMCAgQWxwIFRva2VyICA8YWxwQGF0b2tlci5jb20+
CgogICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCgogICAgICAgIGh0dHA6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NjkxCiAgICAgICAgW0dUS10gUHVibGljIEFQSSBk
b2VzIG5vdCBmb2xsb3cgR1RLKyBjb252ZW50aW9ucwoKICAgICAgICBSZWZhY3RvciB0aGUgV2Vi
S2l0L0dUSysgcHVibGljIEFQSS4gQ2hhbmdlczoKICAgICAgICAgIFdlYktpdFBhZ2UgLT4gV2Vi
S2l0V2ViVmlldwogICAgICAgICAgV2ViS2l0RnJhbWUgLT4gV2ViS2l0V2ViRnJhbWUKCiAgICAg
ICAgUHVibGljIEFQSSBzb3VyY2UgYW5kIGhlYWRlciBuYW1lcyBoYXZlIGJlZW4gdXBkYXRlZCB0
byBtaXJyb3IgdGhlIEFQSQogICAgICAgIGNoYW5nZXMuCgogICAgICAgIFRoZSBBUEkgaXMgbm93
IGtlcHQgaW4gV2ViS2l0L2d0ay9XZWJWaWV3IHRvIG1hdGNoIG90aGVyIHBvcnRzIGluIHRoZQog
ICAgICAgIHNhbWUgY2xhc3Mgc3VjaCBhcyBNYWMgYW5kIFdpbi4KCiAgICAgICAgKiBXZWJLaXQu
cHJpOgoKMjAwNy0xMS0yNiAgUm9kbmV5IERhd2VzICA8ZG9iZXlAd2F5b2Z0aGVtb25rZXkuY29t
PgoKICAgICAgICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCgogICAgICAgIFNldCBDT05GSUcgb3B0
aW9uIGZvciB0aGUgd2luZG93IHN5c3RlbSBHVEsrIGlzIHVzaW5nCgogICAgICAgICogV2ViS2l0
LnByaToKCjIwMDctMTEtMjIgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgoKICAgICAgICBH
VEsrIGJ1aWxkIGZpeC4gUGFzcyBhIGNvcnJlY3QgTElCRElSIHZhbHVlLgoKICAgICAgICAqIFdl
YktpdC5wcmk6CgoyMDA3LTExLTIwICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CgogICAg
ICAgIFJldmlld2VkIGJ5IEFscCBUb2tlci4KCiAgICAgICAgKiBXZWJLaXQucHJpOiBBZGQgaW4g
LVduby11bnVzZWQtcGFyYW1ldGVyIHRvIHNpbGVuY2Ugd2FybmluZ3MgaW4gV2ViQ29yZS4KCjIw
MDctMTEtMjAgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgoKICAgICAgICBSZXZpZXdlZCBi
eSBTaW1vbiBIYXVzbWFubi4KCiAgICAgICAgQ2xlYW4gdXAgR1RLKyBwb3J0IGNvbmZpZ3VyYXRp
b24uCgogICAgICAgIFVzZSBzaW1pbGFyIGNvbXBpbGVyIHdhcm5pbmcgZmxhZ3MgdG8gdGhlIE1h
YyBidWlsZC4KCiAgICAgICAgQWRkIHRoZSBxbWFrZSBjaGFuZ2VzIG5lZWRlZCBmb3IgRGlyZWN0
RkIgc3VwcG9ydC4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwNy0xMS0wNyAgU2ltb24gSGF1
c21hbm4gIDxoYXVzbWFubkBrZGUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBNYXJrLgoKICAg
ICAgICBBZGQgV2ViS2l0L3F0L0FwaSB0byB0aGUgZGVwZW5kZW5jeSBwYXRoIHdoZW4gYnVpbGRp
bmcgUXRMYXVuY2hlciBhbmQgRHVtcFJlbmRlclRyZWUuCiAgICAgICAgVGhhdCBtZWFucyB0aGF0
IGNoYW5nZXMgdG8gdGhlIHB1YmxpYyBBUEkgb2YgdGhlIFF0IHBvcnQgYWxzbyB0cmlnZ2VyIGEg
cmVidWlsZCBvZiB0aGUgdG9vbHMuCgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDctMTAtMDMg
IExhcnMgS25vbGwgIDxsYXJzQHRyb2xsdGVjaC5jb20+CgogICAgICAgIFNpZ25lZCBvZmYgYnkg
b2xsaWVqLgoKICAgICAgICBtb3ZlIFdlYktpdFF0IHRvIFdlYktpdC9xdCBmb3IgY29uc2lzdGVu
Y3kgd2l0aCB0aGUgb3RoZXIgcG9ydHMuCgogICAgICAgICogV2ViS2l0LnByaToKICAgICAgICAq
IFdlYktpdC5wcm86CgoyMDA3LTEwLTAzICBMYXJzIEtub2xsICA8bGFyc0B0cm9sbHRlY2guY29t
PgoKICAgICAgICBSZXZpZXdlZCBieSBvbGxpZWouCgogICAgICAgIE1vdmUgdGhlIFF0IHZlcnNp
b24gb2YgRFJUIGludG8gdGhlIGNvcnJlY3QgcGxhY2UgYW5kIHB1dCB0aGUgYmluYXJ5IGludG8g
QlVJTERESVIvYmluLgoKICAgICAgICAqIFdlYktpdC5wcm86CgoyMDA3LTA5LTI5ICBIb2xnZXIg
SGFucyBQZXRlciBGcmV5dGhlciAgPHplY2tlQHNlbGZpc2gub3JnPgoKICAgICAgICBSZXZpZXdl
ZCBieSBNYXJrLgoKICAgICAgICAtRml4IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzMjI2LgogICAgICAgIFJlbW92ZSBCYWtlZmlsZXMgZnJvbSBzdm4uCgogICAgICAg
ICogQmFrZWZpbGVzL0Jha2VmaWxlcy5ia2dlbjogUmVtb3ZlZC4KICAgICAgICAqIEJha2VmaWxl
cy9DaGFuZ2VMb2c6IFJlbW92ZWQuCiAgICAgICAgKiBCYWtlZmlsZXMvUmVhZG1lLnR4dDogUmVt
b3ZlZC4KICAgICAgICAqIEJha2VmaWxlcy9wcmVzZXRzLmJrbDogUmVtb3ZlZC4KICAgICAgICAq
IEJha2VmaWxlcy91cGRhdGUtZmlsZS1saXN0cy5weTogUmVtb3ZlZC4KCjIwMDctMDktMjAgIEhv
bGdlciBIYW5zIFBldGVyIEZyZXl0aGVyICA8emVja2VAc2VsZmlzaC5vcmc+CgogICAgICAgIFJ1
YmJlciBzdGFtcGVkIGJ5IEFkYW0uCgogICAgICAgIFJlbmFtZWQgZmlsZXMgZnJvbSAqR2RrIHRv
ICpHdGsgKHNlZSAjMTQ3MzIpIHVzaW5nIHRoZQogICAgICAgIHdvcmsgb2YgSnVhbiBBLiBTdWFy
ZXogUm9tZXJvIGFzIGEgYmFzZS4KCiAgICAgICAgR0RLIC0+IEdUSwoKICAgICAgICAqIFdlYktp
dC5wcmk6CiAgICAgICAgKiBXZWJLaXQucHJvOgoKMjAwNy0wNy0yOSAgQnJpYW4gTWFzdGVuYnJv
b2sgIDxicmlhbkBtYXN0ZW5icm9vay5uZXQ+CgogICAgICAgIEJ1aWxkIGZpeCBmb3IgV2ViS2l0
L0d0ayB0byBjb21waWxlIG9uIEZlZG9yYSA3IGFzIGRlc2NyaWJlZCBpbgogICAgICAgIGh0dHA6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NTU3CgogICAgICAgICogV2ViS2l0
LnByaTogY2Fpcm8tZnQgaXMgdXNlZCBieSB0aGUgV2ViS2l0L0d0ayBwb3J0CgoyMDA3LTA3LTI3
ICBTaW1vbiBIYXVzbWFubiAgPGhhdXNtYW5uQGtkZS5vcmc+CgogICAgICAgIERvbmUgd2l0aCBh
bmQgcmV2aWV3ZWQgYnkgTGFycyBhbmQgWmFjay4KCiAgICAgICAgRXhjbHVkZSBEdW1wUmVuZGVy
VHJlZSBmcm9tIHRoZSBRdCBidWlsZCBvbiBXaW5kb3dzIGZvciBub3cuCgogICAgICAgICogV2Vi
S2l0LnBybzoKCjIwMDctMDctMjcgIFNpbW9uIEhhdXNtYW5uICA8aGF1c21hbm5Aa2RlLm9yZz4K
CiAgICAgICAgRG9uZSB3aXRoIGFuZCByZXZpZXdlZCBieSBMYXJzIGFuZCBaYWNrLgoKICAgICAg
ICBUZW1wb3JhcmlseSBkaXNhYmxlIHRoZSBJQ08gc3VwcG9ydCBmb3IgdGhlIFF0IGJ1aWxkIG9u
IFdpbmRvd3MuCgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMDctMDctMjYgIFNpbW9uIEhhdXNt
YW5uICA8aGF1c21hbm5Aa2RlLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTGFycy4KCiAgICAg
ICAgVXNlIFFNQUtFX0xJQkRJUiBpbnN0ZWFkIG9mIFFNQUtFX0xGTEFHUyB0byBzcGVjaWZ5IHRo
ZSBsaWJyYXJ5IHNlYXJjaCBwYXRoIGZvciBRdFdlYktpdCwgYXMgdGhlIGZvcm1lciBpcyBwb3J0
YWJsZSBhbmQgY29ycmVjdGx5IHRyYW5zZm9ybWVkIHRvIC9MSUJQQVRIOiB3aXRoIG1zdmMgZm9y
IGV4YW1wbGUuCgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDctMDctMjIgIEhvbGdlciBIYW5z
IFBldGVyIEZyZXl0aGVyICA8emVja2VAc2VsZmlzaC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5
IEFkYW0uCgogICAgICAgIEFkZCBXZWJLaXQvZ3RrL0FwaSBhbmQgV2ViQ29yZVN1cHBvcnQgQVBJ
IHRvIHRoZSBJTkNMVURFUEFUSCB0byBhbGxvdyBHZGtMYXVuY2hlciB0byBiZQogICAgICAgIGJ1
aWxkIGFnYWluc3QgaXQuCgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDctMDctMTggIFNpbW9u
IEhhdXNtYW5uICA8aGF1c21hbm5Aa2RlLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWmFjay4K
CiAgICAgICAgRG9uJ3QgY2FsbCBnY2MgZGlyZWN0bHkgd2hlbiBidWlsZGluZyB0aGUgZGZ0YWJs
ZXMgdG9vbCBidXQgdXNlIGEgc2VwYXJhdGUgLnBybyBmaWxlIGZvciB0aGUgUXQgYnVpbGQuCgog
ICAgICAgICogV2ViS2l0LnBybzoKCjIwMDctMDctMTggIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90
aHlAYXBwbGUuY29tPgoKICAgICAgICBBZGQgYSBTQ1JJUFRTX1BBVEggdmFyaWFibGUgc28gTWFr
ZWZpbGVzIG9mIGRpZmZlcm5ldCBuZXN0ZWQgZGlyZWN0b3JpZXMgY2FuCiAgICAgICAgc3RpbGwg
dXNlIHRoaXMgb25lIE1ha2VmaWxlLnNoYXJlZCBhcyBhbiBpbmNsdWRlLgoKICAgICAgICAqIE1h
a2VmaWxlLnNoYXJlZDoKCjIwMDctMDctMTIgIEdlb3JnZSBTdGFpa29zICA8c3RhaWtvc0BrZGUu
b3JnPgoKICAgICAgICBGaXggYnVpbGQgaW4gZGVidWcgbW9kZS4KCiAgICAgICAgKiBXZWJLaXQu
cHJpOgoKMjAwNy0wNy0xMSAgSG9sZ2VyIEhhbnMgUGV0ZXIgRnJleXRoZXIgIDx6ZWNrZUBzZWxm
aXNoLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCgogICAgICAgIEFzIG9m
IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NTI3IG1vdmUgdGhlCiAg
ICAgICAgV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVyL0phdmFTY3JpcHRDb3JlIHRvIEphdmFTY3Jp
cHRDb3JlCgogICAgICAgICogV2ViS2l0LnByaTogQWRqdXN0IElOQ0xVREVQQVRICgoyMDA3LTA2
LTI1ICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KCiAgICAgICAgUmVhbGx5IHJlbW92
ZSBMYXlvdXRUZXN0UmVzdWx0cy4KCiAgICAgICAgKiBMYXlvdXRUZXN0UmVzdWx0czogUmVtb3Zl
ZC4KCjIwMDctMDYtMjUgIEFkYW0gUm9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgoKICAgICAgICBG
aXggQnVnIDE0NDA1OiBMYXlvdXRUZXN0UmVzdWx0cy9xdCBzaG91bGQgYmUgaW4gTGF5b3V0VGVz
dHMvcXQKICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQw
NQoKICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMuCgogICAgICAgICogTGF5b3V0VGVzdFJlc3Vs
dHM6IFJlbW92ZWQuCgoyMDA3LTA2LTI1ICBBbHAgVG9rZXIgIDxhbHAudG9rZXJAY29sbGFib3Jh
LmNvLnVrPgoKICAgICAgICBSZXZpZXdlZCBieSBNYXJrLgoKICAgICAgICBodHRwOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk3NQogICAgICAgIFVzZSBzeXN0ZW0tcHJvdmlk
ZWQgbGlianBlZyBhbmQgbGlicG5nCgogICAgICAgICogV2ViS2l0LnByaTogTGluayBhZ2FpbnN0
IGV4dGVybmFsIGxpYmpwZWcgYW5kIGxpYnBuZy4KCjIwMDctMDYtMjAgIEFkYW0gUm9iZW4gIDxh
cm9iZW5AYXBwbGUuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KCiAg
ICAgICAgTW9yZSBHZGsgYnVpbGQgZml4aW5nLgoKICAgICAgICAqIFdlYktpdC5wcm86CgoyMDA3
LTA2LTE1ICBBZGFtIFRyZWF0ICA8YWRhbUBzdGFpa29zLm5ldD4KCiAgICAgICAgUmV2aWV3ZWQg
YnkgR2VvcmdlIFN0YWlrb3MuCgogICAgICAgIEFkZCBJQ08gc3VwcG9ydCB0byB0aGUgUXQgYnVp
bGQuCgogICAgICAgICogV2ViS2l0LnBybzoKCjIwMDctMDYtMTMgIEdlb3JnZSBTdGFpa29zICA8
c3RhaWtvc0BrZGUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBMYXJzLgoKICAgICAgICBDb21w
aWxlIHdpdGhvdXQgc2VsZi1saW5raW5nLgoKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDA3LTA2
LTEzICBTaW1vbiBIYXVzbWFubiAgPGhhdXNtYW5uQGtkZS5vcmc+CgogICAgICAgIFJldmlld2Vk
IGJ5IExhcnMuCgogICAgICAgICogV2ViS2l0LnByaTogV2ViS2l0UXQgaXMgbm93IGNhbGxlZCBR
dFdlYktpdC4KCjIwMDctMDUtMzEgIEFscCBUb2tlciAgPGFscC50b2tlckBjb2xsYWJvcmEuY28u
dWs+CgogICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgoKICAgICAgICBodHRwOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk0MQogICAgICAgIFJlbmFtZSBXZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvZ2RrIHRvIFdlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsCgog
ICAgICAgICogV2ViS2l0LnByaToKCjIwMDctMDUtMTggIEhvbGdlciBIYW5zIFBldGVyIEZyZXl0
aGVyICA8emVja2VAc2VsZmlzaC5vcmc+CgogICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4K
CiAgICAgICAgKiBXZWJLaXQucHJvOiBCdWlsZCB0ZXN0a2pzIGZvciBHZGsgYW5kIFF0CgoyMDA3
LTA1LTExICBIb2xnZXIgRnJleXRoZXIgPGZyZXl0aGVyQGtkZS5vcmc+CgogICAgICAgIFJldmll
d2VkIGJ5IE1hcmsgUm93ZS4KCiAgICAgICAgTW92ZSBsaWJjdXJsIGNvbmZpZ3VyYXRpb24gaW50
byBXZWJLaXQucHJpIHNvIGl0IHdpbGwgYmUgdXNlZCBieSBHZGtMYXVuY2hlciwKICAgICAgICBh
bmQgYWRkIElDVSBjb25maWd1cmF0aW9uIHRvIFFNQUtFX0NYWEZMQUdTLgoKICAgICAgICAqIFdl
YktpdC5wcmk6CgoyMDA3LTA1LTA2ICBFcmlrIEJ1bmNlICA8a2RlQGJ1bmNlLnVzPgoKICAgICAg
ICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCgogICAgICAgICogV2ViS2l0LnByaToKICAgICAgICBS
ZW1vdmVkIHVubmVjZXNzYXJ5IGRlcGVuZGVuY3kgb24gTWFjUG9ydHMgKC9vcHQvbG9jYWwpCgoy
MDA3LTA1LTAzICBIb2xnZXIgRnJleXRoZXIgPGZyZXl0aGVyQGtkZS5vcmc+CgogICAgICAgIFJl
dmlld2VkIGJ5IFphY2ssIGxhbmRlZCBieSBTaW1vbi4KICAgICAgICBUaGlzIGlzIGJ1Z3ppbGxh
IGJ1ZyAxMzQ5OS4KCiAgICAgICAgKiBXZWJLaXQucHJpOiBQbGFjZSBRdCBpbnRvIGEgc2NvcGUs
IHN0YXJ0IHNoYXJpbmcgcW1ha2Ugd2l0aCB0aGUgR2RrCiAgICAgICAgcG9ydAogICAgICAgICog
V2ViS2l0LnBybzogUGxhY2UgUXQgaW50byBhIHNjb3BlLCBzdGFydCBzaGFyaW5nIHFtYWtlIHdp
dGggdGhlIEdkawogICAgICAgIHBvcnQKCjIwMDctMDQtMjcgIEhvbGdlciBGcmV5dGhlciA8ZnJl
eXRoZXJAa2RlLm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVqLgoKICAgICAgICBSZW1v
dmUgdW5tYWludGFpbmVkIENNYWtlIGJ1aWxkIHN5c3RlbS4KCiAgICAgICAgKiBDTWFrZUxpc3Rz
LnR4dDogUmVtb3ZlZC4KCjIwMDctMDEtMzAgIFNpbW9uIEhhdXNtYW5uICA8aGF1c21hbm5Aa2Rl
Lm9yZz4KCiAgICAgICAgUmV2aWV3ZWQgYnkgWmFjay4KCiAgICAgICAgKiBXZWJLaXQucHJpOiBs
aWJKYXZhU2NyaXB0Q29yZSBpcyBnb25lIHdpdGggdGhlIFF0IGJ1aWxkCiAgICAgICAgKiBXZWJL
aXQucHJvOgoKMjAwNy0wMS0yNiAgR2VvcmdlIFN0YWlrb3MgIDxzdGFpa29zQGtkZS5vcmc+Cgog
ICAgICAgIFJlbW92ZSBoZWFkZXJzIC0gbm90IG5lZWRlZCBub3cuCgogICAgICAgICogV2ViS2l0
LnByaToKCjIwMDctMDEtMjMgIEdlb3JnZSBTdGFpa29zIDxzdGFpa29zQGtkZS5vcmc+CgogICAg
ICAgIFB1dCBldmVyeXRoaW5nIGJhY2sgc2luY2Ugd2UgY2FuJ3QgYnVpbGQgZXZlcnl0aGluZyB3
aXRob3V0IGl0IHlldC4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwNy0wMS0xNiAgTGFycyBL
bm9sbCA8bGFyc0B0cm9sbHRlY2guY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBaYWNrCgogICAg
ICAgIFJlbW92ZSBldmVyeXRoaW5nIGJ1dCB0aGUgbmV3IHB1YmxpYyBBUEkgZnJvbQogICAgICAg
IHRoZSBpbmNsdWRlIHBhdGguCgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDctMDEtMTEgIEdl
b3JnZSBTdGFpa29zICA8c3RhaWtvc0BrZGUub3JnPgoKICAgICAgICBGaXggdGhlIFF0IGJ1aWxk
CgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDctMDEtMDMgIExhcnMgS25vbGwgPGxhcnNAdHJv
bGx0ZWNoLmNvbT4KCiAgICAgICAgRml4IHRoZSBRdCBidWlsZAoKICAgICAgICAqIFdlYktpdC5w
cmk6CgoyMDA2LTEyLTE3ICBTaW1vbiBIYXVzbWFubiAgPGhhdXNtYW5uQGtkZS5vcmc+CgogICAg
ICAgIFJldmlld2VkIGJ5IFJvYiBCdWlzLgoKICAgICAgICAqIFdlYktpdC5wcm86IEJ1aWxkIHRl
c3RranMuCgoyMDA2LTEyLTE0ICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4K
CiAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkuCgogICAgICAgICogTWFrZWZpbGUuc2hhcmVkOiB1
c2UgJFBJUEVTVEFUVVNbMF0gYW5kIGEgc3ViLXNoZWxsIHRvIGV4aXQgd2l0aCB4Y29kZWJ1aWxk
J3MgZXhpdCBzdGF0dXMKCjIwMDYtMTItMTMgIE1hY2llaiBTdGFjaG93aWFrICA8bWpzQGFwcGxl
LmNvbT4KCiAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgYW5kIEFuZGVycy4KCiAgICAgICAgKiBN
YWtlZmlsZS5zaGFyZWQ6IFN0b3Agc3Bld2luZyB0aGUgZW52aXJvbm1lbnQgYWxsIHRoZSB0aW1l
LCBhdCBsZWFzdCBmb3IgY29tbWFuZC1saW5lIGJ1aWxkcy4KCjIwMDYtMTItMTAgIFphY2sgUnVz
aW4gIDx6YWNrQGtkZS5vcmc+CgogICAgICAgIENsaWVudCBjbGFzc2VzIGhhdmUgYmVlbiBtb3Zl
ZCB0byBXZWJLaXRRdC9XZWJDb3JlU3VwcG9ydCBzbwogICAgICAgIGFkanVzdGluZyB0aGUgcHJp
IGZpbGUuCgogICAgICAgICogV2ViS2l0LnByaToKCjIwMDYtMTItMTAgIEdlb3JnZSBTdGFpa29z
ICA8c3RhaWtvc0BrZGUub3JnPgoKICAgICAgICBSZXZpZXdlZCBieSBaYWNrLgoKICAgICAgICBB
ZGQgV2ViS2l0QnVpbGQvUmVsZWFzZSBiYWNrIHRvIHRoZSBvdXRwdXQgZGlyIGZvciBleHRlcm5h
bCBidWlsZCBjYXNlcy4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwNi0xMi0xMCAgWmFjayBS
dXNpbiAgPHphY2tAa2RlLm9yZz4KCiAgICAgICAgRml4IHRoZSBsaW5rIGRpcmVjdG9yeSBsb2Nh
dGlvbi4KCiAgICAgICAgKiBXZWJLaXQucHJpOgoKMjAwNi0xMi0xMCAgTGFycyBLbm9sbCA8bGFy
c0B0cm9sbHRlY2guY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBaYWNrCgogICAgICAgIEluY2x1
ZGUgRHVtcFJlbmRlclRyZWUgaW4gdGhlIFF0IGJ1aWxkCgogICAgICAgICogV2ViS2l0LnBybzoK
CjIwMDYtMTItMDkgIEdlb3JnZSBTdGFpa29zICA8c3RhaWtvc0BrZGUub3JnPgoKICAgICAgICBS
ZXZpZXdlZCBieSBaYWNrLgoKICAgICAgICBDb3JyZWN0IHRoZSBwYXRoIHRvIHRoZSBsaWJyYXJp
ZXMgZm9yIFFNYWtlLgoKICAgICAgICAqIFdlYktpdC5wcmk6CgoyMDA2LTEyLTA5ICBMYXJzIEtu
b2xsIDxsYXJzQHRyb2xsdGVjaC5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IFphY2sKCiAgICAg
ICAgTWFrZSBpdCBwb3NzaWJsZSB0byBidWlsZCBXZWJLaXQgd2l0aCBxbWFrZS4KCiAgICAgICAg
KiBXZWJLaXQucHJpOiBBZGRlZC4KICAgICAgICAqIFdlYktpdC5wcm86IEFkZGVkLgoKMjAwNi0x
MS0xOSAgU2ltb24gSGF1c21hbm4gIDxoYXVzbWFubkBrZGUub3JnPgoKICAgICAgICBSZXZpZXdl
ZCBieSBaYWNrLgoKICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMTY0OQoKICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBGaXggUXQtb25seSBidWlsZCB3aXRo
b3V0IEtERSBjbWFrZSBmaWxlcwoKMjAwNi0xMC0zMCAgVGltb3RoeSBIYXRjaGVyICA8dGltb3Ro
eUBhcHBsZS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IEJyYWR5LgoKICAgICAgICBNYWtlIHRo
ZSB1bml2ZXJzYWwgYnVpbGQgcmV0dXJuIG5vbi16ZXJvIHdoZW4gbW9kdWxlIG1ha2UgZmFpbHMu
CgogICAgICAgICogTWFrZWZpbGU6CgoyMDA2LTEwLTMwICBTdGVwaGFuaWUgTGV3aXMgIDxzbGV3
aXNAYXBwbGUuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KCiAgICAgICAg
Q2hhbmdlIE1ha2VmaWxlcyB0byByZXR1cm4gbm9uLXplcm8gd2hlbiBtb2R1bGUgbWFrZSBmYWls
cy4KCiAgICAgICAgKiBNYWtlZmlsZToKCjIwMDYtMTAtMjcgIEJyYWR5IEVpZHNvbiAgPGJlaWRz
b25AYXBwbGUuY29tPgoKICAgICAgICBSdWJiZXIgc3RhbXBlZCBieSBUaW0gSGF0Y2hlcgoKICAg
ICAgICBBZGRlZCAibWFrZSB1bml2ZXJzYWwiIHRvIGJ1aWxkIHVuaXZlcnNhbCBiaW5hcmllcwoK
ICAgICAgICAqIE1ha2VmaWxlOgogICAgICAgICogTWFrZWZpbGUuc2hhcmVkOgoKMjAwNi0xMC0w
MSAgTmlrb2xhcyBaaW1tZXJtYW5uICA8emltbWVybWFubkBrZGUub3JnPgoKICAgICAgICBSZXZp
ZXdlZCBieSBlc2VpZGVsLgoKICAgICAgICAqIENNYWtlTGlzdHMudHh0OiBhZGQgb3B0aW9uIHRv
IGRpc2FibGUgY29sb3JlZCBvdXRwdXQgd2hlbiBidWlsZGluZyBvbiB0aGUgYnVpbGRib3QKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57231</attachid>
            <date>2010-05-27 06:12:44 -0700</date>
            <delta_ts>2010-05-30 23:06:50 -0700</delta_ts>
            <desc>Not sure why the patch failed to apply, try again.</desc>
            <filename>39146.patch</filename>
            <type>text/plain</type>
            <size>23161</size>
            <attacher name="Yael">yael</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNjAyOTYpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTAtMDUtMjYgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFy
b25Abm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFtRdF0gUGFzcyBhbGwgd2ViIG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVzdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIG11bHRpcGxlIHNpbXVsdGFuZW91cyBub3RpZmljYXRpb25zLgor
ICAgICAgICBBZGQgYSBwcml2YXRlIGNhbGxiYWNrIG1lY2hhbmlzbSB0byB0aGUgY2xpZW50IGZv
ciBzZWN1cml0eSBjaGVja3MuIAorICAgICAgICBOb3RpZmljYXRpb25zIGFyZSBkaXNhYmxlZCBp
ZiB0aGUgY2xpZW50IGRvZXMgbm90IHNldCB0aGUgY2FsbGJhY2tzLiAKKyAgICAgICAgU3VwcG9y
dCByZXBsYWNlSWQgYW5kIGNhbmNlbC4KKyAgICAgICAgU2VuZCBjbG9zZSBhbmQgZGlzcGxheSBl
dmVudHMgd2hlbiBuZWVkZWQuICAgCisKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3BwOgorICAg
ICAgICAoUVdlYlBhZ2VQcml2YXRlOjpRV2ViUGFnZVByaXZhdGUpOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcDoKKyAgICAgICAgKER1bXBSZW5k
ZXJUcmVlU3VwcG9ydFF0OjpzZXROb3RpZmljYXRpb25zUmVjZWl2ZXIpOgorICAgICAgICAoRHVt
cFJlbmRlclRyZWVTdXBwb3J0UXQ6OmFsbG93Tm90aWZpY2F0aW9uRm9yT3JpZ2luKToKKyAgICAg
ICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRDaGVja1Blcm1pc3Npb25GdW5jdGlvbik6
CisgICAgICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6c2V0UmVxdWVzdFBlcm1pc3Npb25G
dW5jdGlvbik6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
UXQuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50UXQ6OmRpc3BhdGNoRGlkQ2xlYXJX
aW5kb3dPYmplY3RJbldvcmxkKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRp
b25QcmVzZW50ZXJDbGllbnRRdC5jcHA6CisgICAgICAgIChOb3RpZmljYXRpb25JY29uV3JhcHBl
cjo6Tm90aWZpY2F0aW9uSWNvbldyYXBwZXIpOgorICAgICAgICAoTm90aWZpY2F0aW9uSWNvbldy
YXBwZXI6On5Ob3RpZmljYXRpb25JY29uV3JhcHBlcik6CisgICAgICAgIChOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQpOgorICAgICAg
ICAoTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OnNob3cpOgorICAgICAgICAoTm90aWZp
Y2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6OmNhbmNlbCk6CisgICAgICAgIChOb3RpZmljYXRpb25Q
cmVzZW50ZXJDbGllbnRRdDo6bm90aWZpY2F0aW9uT2JqZWN0RGVzdHJveWVkKToKKyAgICAgICAg
KE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpyZXF1ZXN0UGVybWlzc2lvbik6CisgICAg
ICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2hlY2tQZXJtaXNzaW9uKToKKyAg
ICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjphbGxvd05vdGlmaWNhdGlvbkZv
ck9yaWdpbik6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2xlYXJO
b3RpZmljYXRpb25zTGlzdCk6CisgICAgICAgIChOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dDo6c2VuZEV2ZW50KToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdC5oOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uUHJlc2VudGVy
Q2xpZW50UXQ6On5Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCk6CisgICAgICAgIChXZWJD
b3JlOjpOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2V0UmVjZWl2ZXIpOgorCiAyMDEw
LTA1LTI3ICBMdWl6IEFnb3N0aW5pICA8bHVpei5hZ29zdGluaUBvcGVuYm9zc2Eub3JnPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgpJbmRleDogV2Vi
S2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0FwaS9xd2Vi
cGFnZS5jcHAJKHJldmlzaW9uIDYwMjk2KQorKysgV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI5OSw3ICsyOTksNyBAQCBRV2ViUGFnZVByaXZhdGU6OlFXZWJQ
YWdlUHJpdmF0ZShRV2ViUGFnCiAgICAgUGFnZUdyb3VwOjpzZXRTaG91bGRUcmFja1Zpc2l0ZWRM
aW5rcyh0cnVlKTsKICAgICAKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykgICAgCi0gICAgbm90
aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3IE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVu
dFF0KCk7CisgICAgbm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50ID0gbmV3IE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0KHEpOwogI2VuZGlmCiB9CiAKSW5kZXg6IFdlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAkocmV2aXNp
b24gNjAyOTYpCisrKyBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBw
b3J0UXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02MCw2ICs2MCw5IEBACiAKIHVzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOwogCitDaGVja1Blcm1pc3Npb25GdW5jdGlvblR5cGUqIGNoZWNrUGVybWlz
c2lvbkZ1bmN0aW9uID0gMDsKK1JlcXVlc3RQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKiByZXF1ZXN0
UGVybWlzc2lvbkZ1bmN0aW9uID0gMDsKKwogRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OkR1bXBS
ZW5kZXJUcmVlU3VwcG9ydFF0KCkKIHsKIH0KQEAgLTUzMyw2ICs1MzYsMjkgQEAgdm9pZCBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRRdDo6ZHVtcE5vdGlmaQogICAgIE5vdGlmaWNhdGlvblByZXNlbnRl
ckNsaWVudFF0OjpkdW1wTm90aWZpY2F0aW9uID0gYjsKICNlbmRpZgogfQorCit2b2lkIER1bXBS
ZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXROb3RpZmljYXRpb25zUmVjZWl2ZXIoUVdlYlBhZ2UqIHBh
Z2UsIFFPYmplY3QqIHJlY2VpdmVyKQoreworICAgIHBhZ2UtPmQtPm5vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudC0+c2V0UmVjZWl2ZXIocmVjZWl2ZXIpOworfQorCit2b2lkIER1bXBSZW5kZXJU
cmVlU3VwcG9ydFF0OjphbGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihRV2ViUGFnZSogcGFnZSwg
Y29uc3QgUVN0cmluZyYgb3JpZ2luKQoreworI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorICAg
IHBhZ2UtPmQtPm5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudC0+YWxsb3dOb3RpZmljYXRpb25G
b3JPcmlnaW4ob3JpZ2luKTsKKyNlbmRpZgorfQorCit2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9y
dFF0OjpzZXRDaGVja1Blcm1pc3Npb25GdW5jdGlvbihDaGVja1Blcm1pc3Npb25GdW5jdGlvblR5
cGUqIGYpCit7CisgICAgY2hlY2tQZXJtaXNzaW9uRnVuY3Rpb24gPSBmOworfQorCit2b2lkIER1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uKFJlcXVl
c3RQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKiBmKQoreworICAgIHJlcXVlc3RQZXJtaXNzaW9uRnVu
Y3Rpb24gPSBmOworfQorCiAvLyBQcm92aWRlIGEgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aXRo
IHByZXZpb3VzbHkgZXhwb3J0ZWQgcHJpdmF0ZSBzeW1ib2xzIGFzIG9mIFF0V2ViS2l0IDQuNiBy
ZWxlYXNlCiAKIHZvaWQgUVdFQktJVF9FWFBPUlQgcXRfcmVzdW1lQWN0aXZlRE9NT2JqZWN0cyhR
V2ViRnJhbWUqIGZyYW1lKQpJbmRleDogV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlU3VwcG9ydFF0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmgJKHJldmlzaW9uIDYwMjk2KQorKysgV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmgJKHdvcmtpbmcgY29weSkK
QEAgLTMwLDYgKzMwLDE4IEBAIGNsYXNzIFFXZWJFbGVtZW50OwogY2xhc3MgUVdlYkZyYW1lOwog
Y2xhc3MgUVdlYlBhZ2U7CiAKK2VudW0gTm90aWZpY2F0aW9uUGVybWlzc2lvbiB7CisgICAgTm90
aWZpY2F0aW9uQWxsb3dlZCwKKyAgICBOb3RpZmljYXRpb25Ob3RBbGxvd2VkLAorICAgIE5vdGlm
aWNhdGlvbkRlbmllZAorfTsKKwordHlwZWRlZiB2b2lkIChDaGVja1Blcm1pc3Npb25GdW5jdGlv
blR5cGUpIChRT2JqZWN0KiByZWNlaXZlciwgY29uc3QgUVVybCYsIE5vdGlmaWNhdGlvblBlcm1p
c3Npb24mKTsKK3R5cGVkZWYgdm9pZCAoUmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvblR5cGUpIChR
T2JqZWN0KiByZWNlaXZlciwgUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJpbmcmKTsKKworZXh0
ZXJuIENoZWNrUGVybWlzc2lvbkZ1bmN0aW9uVHlwZSogY2hlY2tQZXJtaXNzaW9uRnVuY3Rpb247
CitleHRlcm4gUmVxdWVzdFBlcm1pc3Npb25GdW5jdGlvblR5cGUqIHJlcXVlc3RQZXJtaXNzaW9u
RnVuY3Rpb247CisKIGNsYXNzIFFXRUJLSVRfRVhQT1JUIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0
IHsKIAogcHVibGljOgpAQCAtMTAwLDcgKzExMiwxMiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZv
aWQgZHVtcFNldEFjY2VwdHNFZGl0aW5nKGJvb2wgYik7CiAKICAgICBzdGF0aWMgdm9pZCBkdW1w
Tm90aWZpY2F0aW9uKGJvb2wgYik7Ci0KKyAgICAvLyBUaGVzZSBmdW5jdGlvbnMgc2hvdWxkIGV2
ZW50dWFsbHkgdHVybiBpbnRvIHB1YmxpYyBBUEkKKyAgICAvLyBhbmQgdGhlICJyZWNlaXZlciIg
Y29uY2VwdCB3b3VsZCBnbyBhd2F5CisgICAgc3RhdGljIHZvaWQgc2V0Tm90aWZpY2F0aW9uc1Jl
Y2VpdmVyKFFXZWJQYWdlKiBwYWdlLCBRT2JqZWN0KiByZWNlaXZlcik7CisgICAgc3RhdGljIHZv
aWQgYWxsb3dOb3RpZmljYXRpb25Gb3JPcmlnaW4oUVdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFFTdHJp
bmcmIG9yaWdpbik7CisgICAgc3RhdGljIHZvaWQgc2V0Q2hlY2tQZXJtaXNzaW9uRnVuY3Rpb24o
Q2hlY2tQZXJtaXNzaW9uRnVuY3Rpb25UeXBlKik7CisgICAgc3RhdGljIHZvaWQgc2V0UmVxdWVz
dFBlcm1pc3Npb25GdW5jdGlvbihSZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uVHlwZSopOwogfTsK
IAogI2VuZGlmCkluZGV4OiBXZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGll
bnRRdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9h
ZGVyQ2xpZW50UXQuY3BwCShyZXZpc2lvbiA2MDI5NikKKysrIFdlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9GcmFtZUxvYWRlckNsaWVudFF0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTEsNiArNTEs
NyBAQAogI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxQbHVnSW5F
bGVtZW50LmgiCiAjaW5jbHVkZSAiSFRUUFBhcnNlcnMuaCIKKyNpbmNsdWRlICJOb3RpZmljYXRp
b25QcmVzZW50ZXJDbGllbnRRdC5oIgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5j
bHVkZSAiUU5ldHdvcmtSZXBseUhhbmRsZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZUlu
dGVybmFsLmgiCkBAIC02MzgsOCArNjM5LDEyIEBAIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRRdDo6
ZGlzcGF0Y2hEaWRDbGUKICAgICBpZiAod29ybGQgIT0gbWFpblRocmVhZE5vcm1hbFdvcmxkKCkp
CiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChtX3dlYkZyYW1lKQorICAgIGlmIChtX3dlYkZy
YW1lKSB7CiAgICAgICAgIGVtaXQgbV93ZWJGcmFtZS0+amF2YVNjcmlwdFdpbmRvd09iamVjdENs
ZWFyZWQoKTsKKyNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKKyAgICAgICAgbV93ZWJGcmFtZS0+
cGFnZSgpLT5kLT5ub3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnQtPmNsZWFyTm90aWZpY2F0aW9u
c0xpc3QoKTsKKyNlbmRpZgorICAgIH0KIH0KIAogdm9pZCBGcmFtZUxvYWRlckNsaWVudFF0Ojpk
b2N1bWVudEVsZW1lbnRBdmFpbGFibGUoKQpJbmRleDogV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0
L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwCShyZXZp
c2lvbiA2MDI5NikKKysrIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDEzICszMiwxNSBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0
LmgiCiAKKyNpbmNsdWRlICJEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oIgogI2luY2x1ZGUgIkRv
Y3VtZW50LmgiCisjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIktVUkwuaCIKLSNp
bmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAK
KyNpbmNsdWRlICJxd2ViZnJhbWUuaCIKICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCi0KKyNp
bmNsdWRlICJxd2VicGFnZS5oIgogI2luY2x1ZGUgPFF0R3VpPgogCiAKQEAgLTQ4LDI1ICs1MCw2
NiBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogYm9vbCBOb3RpZmljYXRpb25QcmVzZW50
ZXJDbGllbnRRdDo6ZHVtcE5vdGlmaWNhdGlvbiA9IGZhbHNlOwogCi1Ob3RpZmljYXRpb25QcmVz
ZW50ZXJDbGllbnRRdDo6Tm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQoKQorTm90aWZpY2F0
aW9uSWNvbldyYXBwZXI6Ok5vdGlmaWNhdGlvbkljb25XcmFwcGVyKCkKK3sKKyNpZm5kZWYgUVRf
Tk9fU1lTVEVNVFJBWUlDT04KKyAgICBtX25vdGlmaWNhdGlvbkljb24gPSAwOworI2VuZGlmCit9
CisKK05vdGlmaWNhdGlvbkljb25XcmFwcGVyOjp+Tm90aWZpY2F0aW9uSWNvbldyYXBwZXIoKQor
eworI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgorICAgIGRlbGV0ZSBtX25vdGlmaWNhdGlv
bkljb247CisjZW5kaWYKK30KKworTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQ6Ok5vdGlm
aWNhdGlvblByZXNlbnRlckNsaWVudFF0KFFXZWJQYWdlKiBwYWdlKSA6IG1fcGFnZShwYWdlKQog
ewogfQogCiBib29sIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzaG93KE5vdGlmaWNh
dGlvbiogbm90aWZpY2F0aW9uKQogeworICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmlj
YXRpb25JY29uV3JhcHBlcio+OjpJdGVyYXRvciBlbmQgPSBtX25vdGlmaWNhdGlvbnMuZW5kKCk7
CisgICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIE5vdGlmaWNhdGlvbkljb25XcmFwcGVyKj46Okl0
ZXJhdG9yIGl0ZXIgPSBtX25vdGlmaWNhdGlvbnMuYmVnaW4oKTsKKworICAgIGlmICghbm90aWZp
Y2F0aW9uLT5yZXBsYWNlSWQoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgd2hpbGUgKGl0ZXIgIT0g
ZW5kKSB7CisgICAgICAgICAgICBOb3RpZmljYXRpb24qIGV4aXN0aW5nTm90aWZpY2F0aW9uID0g
aXRlci5rZXkoKTsKKyAgICAgICAgICAgIGlmIChleGlzdGluZ05vdGlmaWNhdGlvbi0+cmVwbGFj
ZUlkKCkgPT0gbm90aWZpY2F0aW9uLT5yZXBsYWNlSWQoKSAmJiBleGlzdGluZ05vdGlmaWNhdGlv
bi0+dXJsKCkucHJvdG9jb2woKSA9PSBub3RpZmljYXRpb24tPnVybCgpLnByb3RvY29sKCkgJiYg
ZXhpc3RpbmdOb3RpZmljYXRpb24tPnVybCgpLmhvc3QoKSA9PSBub3RpZmljYXRpb24tPnVybCgp
Lmhvc3QoKSkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGl0ZXIrKzsKKyAg
ICAgICAgfQorICAgIH0gZWxzZQorICAgICAgICBpdGVyID0gZW5kOworCiAgICAgaWYgKGR1bXBO
b3RpZmljYXRpb24pIHsKKyAgICAgICAgaWYgKGl0ZXIgIT0gZW5kKSB7CisgICAgICAgICAgICBO
b3RpZmljYXRpb24qIG9sZE5vdGlmaWNhdGlvbiA9IGl0ZXIua2V5KCk7CisgICAgICAgICAgICBw
cmludGYoIlJFUExBQ0lORyBOT1RJRklDQVRJT04gJXNcbiIsIG9sZE5vdGlmaWNhdGlvbi0+aXNI
VE1MKCkgPyBRU3RyaW5nKG9sZE5vdGlmaWNhdGlvbi0+dXJsKCkuc3RyaW5nKCkpLnRvVXRmOCgp
LmNvbnN0RGF0YSgpIDogUVN0cmluZyhvbGROb3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUo
KSkudG9VdGY4KCkuY29uc3REYXRhKCkpOworICAgICAgICB9CiAgICAgICAgIGlmIChub3RpZmlj
YXRpb24tPmlzSFRNTCgpKQogICAgICAgICAgICAgcHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElP
TjogY29udGVudHMgYXQgJXNcbiIsIFFTdHJpbmcobm90aWZpY2F0aW9uLT51cmwoKS5zdHJpbmco
KSkudG9VdGY4KCkuY29uc3REYXRhKCkpOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIHBy
aW50ZigiREVTS1RPUCBOT1RJRklDQVRJT046IGljb24gJXMsIHRpdGxlICVzLCB0ZXh0ICVzXG4i
LCAKKyAgICAgICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT046JXMgaWNvbiAlcywg
dGl0bGUgJXMsIHRleHQgJXNcbiIsCisgICAgICAgICAgICAgICAgbm90aWZpY2F0aW9uLT5kaXIo
KSA9PSAicnRsIiA/ICIoUlRMKSIgOiAiIiwKICAgICAgICAgICAgICAgICBRU3RyaW5nKG5vdGlm
aWNhdGlvbi0+Y29udGVudHMoKS5pY29uKCkuc3RyaW5nKCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgp
LCBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS50aXRsZSgpKS50b1V0ZjgoKS5jb25z
dERhdGEoKSwgCiAgICAgICAgICAgICAgICAgUVN0cmluZyhub3RpZmljYXRpb24tPmNvbnRlbnRz
KCkuYm9keSgpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAgICAgICAgIH0KICAgICB9CiAKKyAg
ICBpZiAoaXRlciAhPSBlbmQpIHsKKyAgICAgICAgc2VuZEV2ZW50KGl0ZXIua2V5KCksIGV2ZW50
TmFtZXMoKS5jbG9zZUV2ZW50KTsKKyAgICAgICAgZGVsZXRlIG1fbm90aWZpY2F0aW9ucy50YWtl
KGl0ZXIua2V5KCkpOworICAgIH0KKyAgICBOb3RpZmljYXRpb25JY29uV3JhcHBlciogd3JhcHBl
ciA9IG5ldyBOb3RpZmljYXRpb25JY29uV3JhcHBlcigpOworICAgIG1fbm90aWZpY2F0aW9ucy5p
bnNlcnQobm90aWZpY2F0aW9uLCB3cmFwcGVyKTsKKyAgICBzZW5kRXZlbnQobm90aWZpY2F0aW9u
LCAiZGlzcGxheSIpOworCiAjaWZuZGVmIFFUX05PX1NZU1RFTVRSQVlJQ09OCi0gICAgbV90cmF5
LnNob3coKTsKLSAgICBtX3RyYXkuc2hvd01lc3NhZ2Uobm90aWZpY2F0aW9uLT5jb250ZW50cygp
LnRpdGxlKCksIG5vdGlmaWNhdGlvbi0+Y29udGVudHMoKS5ib2R5KCksIFFTeXN0ZW1UcmF5SWNv
bjo6SW5mb3JtYXRpb24pOworICAgIHdyYXBwZXItPm1fbm90aWZpY2F0aW9uSWNvbiA9IG5ldyBR
U3lzdGVtVHJheUljb247CisgICAgd3JhcHBlci0+bV9ub3RpZmljYXRpb25JY29uLT5zaG93KCk7
CisgICAgd3JhcHBlci0+bV9ub3RpZmljYXRpb25JY29uLT5zaG93TWVzc2FnZShub3RpZmljYXRp
b24tPmNvbnRlbnRzKCkudGl0bGUoKSwgbm90aWZpY2F0aW9uLT5jb250ZW50cygpLmJvZHkoKSk7
CiAjZW5kaWYKICAgICByZXR1cm4gdHJ1ZTsKIH0KQEAgLTgwLDEyICsxMjMsMTcgQEAgdm9pZCBO
b3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2FuYwogICAgICAgICAgICAgcHJpbnRmKCJE
RVNLVE9QIE5PVElGSUNBVElPTiBDTE9TRUQ6ICVzXG4iLCBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+
Y29udGVudHMoKS50aXRsZSgpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAgICAgfQogCi0gICAg
bm90SW1wbGVtZW50ZWQoKTsKKyAgICBRSGFzaCA8Tm90aWZpY2F0aW9uKiwgTm90aWZpY2F0aW9u
SWNvbldyYXBwZXIqPjo6SXRlcmF0b3IgaXRlciA9IG1fbm90aWZpY2F0aW9ucy5maW5kKG5vdGlm
aWNhdGlvbik7CisgICAgaWYgKGl0ZXIgIT0gbV9ub3RpZmljYXRpb25zLmVuZCgpKQorICAgICAg
ICBzZW5kRXZlbnQoaXRlci5rZXkoKSwgZXZlbnROYW1lcygpLmNsb3NlRXZlbnQpOwogfQogCiB2
b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0Ojpub3RpZmljYXRpb25PYmplY3REZXN0
cm95ZWQoTm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24pCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQo
KTsKKyAgICAvLyBDYWxsZWQgZnJvbSB+Tm90aWZpY2F0aW9uKCksIFJlbW92ZSB0aGUgZW50cnkg
ZnJvbSB0aGUgbm90aWZpY2F0aW9ucyBsaXN0IGFuZCBkZWxldGUgdGhlIGljb24uCisgICAgUUhh
c2ggPE5vdGlmaWNhdGlvbiosIE5vdGlmaWNhdGlvbkljb25XcmFwcGVyKj46Okl0ZXJhdG9yIGl0
ZXIgPSBtX25vdGlmaWNhdGlvbnMuZmluZChub3RpZmljYXRpb24pOworICAgIGlmIChpdGVyICE9
IG1fbm90aWZpY2F0aW9ucy5lbmQoKSkKKyAgICAgICAgZGVsZXRlIG1fbm90aWZpY2F0aW9ucy50
YWtlKG5vdGlmaWNhdGlvbik7CiB9CiAKIHZvaWQgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50
UXQ6OnJlcXVlc3RQZXJtaXNzaW9uKFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4sIFBhc3NSZWZQdHI8
Vm9pZENhbGxiYWNrPiBjYWxsYmFjaykKQEAgLTkzLDEzICsxNDEsNjIgQEAgdm9pZCBOb3RpZmlj
YXRpb25QcmVzZW50ZXJDbGllbnRRdDo6cmVxdQogICAgIGlmIChkdW1wTm90aWZpY2F0aW9uKQog
ICAgICAgcHJpbnRmKCJERVNLVE9QIE5PVElGSUNBVElPTiBQRVJNSVNTSU9OIFJFUVVFU1RFRDog
JXNcbiIsIFFTdHJpbmcob3JpZ2luLT50b1N0cmluZygpKS50b1V0ZjgoKS5jb25zdERhdGEoKSk7
CiAKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIFFTdHJpbmcgb3JpZ2luU3RyaW5nID0gb3Jp
Z2luLT50b1N0cmluZygpOworICAgIFFIYXNoPFFTdHJpbmcsIFFMaXN0PFJlZlB0cjxWb2lkQ2Fs
bGJhY2s+ID4gPjo6aXRlcmF0b3IgaXRlciA9IG1fcGVuZGluZ1Blcm1pc3Npb25SZXF1ZXN0cy5m
aW5kKG9yaWdpblN0cmluZyk7CisgICAgaWYgKGl0ZXIgIT0gbV9wZW5kaW5nUGVybWlzc2lvblJl
cXVlc3RzLmVuZCgpKQorICAgICAgICBpdGVyLnZhbHVlKCkuYXBwZW5kKGNhbGxiYWNrKTsKKyAg
ICBlbHNlIHsKKyAgICAgICAgUUxpc3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4gPiBjYWxsYmFja3M7
CisgICAgICAgIFJlZlB0cjxWb2lkQ2FsbGJhY2s+IGNiID0gY2FsbGJhY2s7CisgICAgICAgIGNh
bGxiYWNrcy5hcHBlbmQoY2IpOworICAgICAgICBtX3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHMu
aW5zZXJ0KG9yaWdpblN0cmluZywgY2FsbGJhY2tzKTsKKyAgICAgICAgaWYgKHJlcXVlc3RQZXJt
aXNzaW9uRnVuY3Rpb24pCisgICAgICAgICAgICByZXF1ZXN0UGVybWlzc2lvbkZ1bmN0aW9uKG1f
cmVjZWl2ZXIsIG1fcGFnZSwgb3JpZ2luU3RyaW5nKTsKKyAgICB9Cit9CisKK05vdGlmaWNhdGlv
blByZXNlbnRlcjo6UGVybWlzc2lvbiBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6Y2hl
Y2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwmIHVybCkKK3sKKyAgICBOb3RpZmljYXRpb25QZXJtaXNz
aW9uIHBlcm1pc3Npb24gPSBOb3RpZmljYXRpb25Ob3RBbGxvd2VkOworICAgIFFTdHJpbmcgb3Jp
Z2luID0gdXJsLnN0cmluZygpOworICAgIGlmIChjaGVja1Blcm1pc3Npb25GdW5jdGlvbikKKyAg
ICAgICAgY2hlY2tQZXJtaXNzaW9uRnVuY3Rpb24obV9yZWNlaXZlciwgb3JpZ2luLCBwZXJtaXNz
aW9uKTsKKyAgICBzd2l0Y2ggKHBlcm1pc3Npb24pIHsKKyAgICBjYXNlIE5vdGlmaWNhdGlvbkFs
bG93ZWQ6CisgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25B
bGxvd2VkOworICAgIGNhc2UgTm90aWZpY2F0aW9uTm90QWxsb3dlZDoKKyAgICAgICAgcmV0dXJu
IE5vdGlmaWNhdGlvblByZXNlbnRlcjo6UGVybWlzc2lvbk5vdEFsbG93ZWQ7CisgICAgY2FzZSBO
b3RpZmljYXRpb25EZW5pZWQ6CisgICAgICAgIHJldHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6
OlBlcm1pc3Npb25EZW5pZWQ7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
IHJldHVybiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb25Ob3RBbGxvd2VkOworfQor
Cit2b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjphbGxvd05vdGlmaWNhdGlvbkZv
ck9yaWdpbihjb25zdCBRU3RyaW5nJiBvcmlnaW4pCit7CisgICAgUUhhc2g8UVN0cmluZywgUUxp
c3Q8UmVmUHRyPFZvaWRDYWxsYmFjaz4gPiA+OjppdGVyYXRvciBpdGVyID0gbV9wZW5kaW5nUGVy
bWlzc2lvblJlcXVlc3RzLmZpbmQob3JpZ2luKTsKKyAgICBpZiAoaXRlciAhPSBtX3BlbmRpbmdQ
ZXJtaXNzaW9uUmVxdWVzdHMuZW5kKCkpIHsKKyAgICAgICAgUUxpc3Q8UmVmUHRyPFZvaWRDYWxs
YmFjaz4gPiYgY2FsbGJhY2tzID0gaXRlci52YWx1ZSgpOworICAgICAgICBmb3IgKGludCBpID0g
MDsgaSA8IGNhbGxiYWNrcy5zaXplKCk7IGkrKykKKyAgICAgICAgICAgIGNhbGxiYWNrcy5hdChp
KS0+aGFuZGxlRXZlbnQoKTsKKyAgICAgICAgbV9wZW5kaW5nUGVybWlzc2lvblJlcXVlc3RzLnJl
bW92ZShvcmlnaW4pOworICAgIH0KK30KKwordm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGll
bnRRdDo6Y2xlYXJOb3RpZmljYXRpb25zTGlzdCgpCit7CisgICAgbV9wZW5kaW5nUGVybWlzc2lv
blJlcXVlc3RzLmNsZWFyKCk7CisgICAgd2hpbGUgKCFtX25vdGlmaWNhdGlvbnMuaXNFbXB0eSgp
KSB7CisgICAgICAgIFFIYXNoIDxOb3RpZmljYXRpb24qLCBOb3RpZmljYXRpb25JY29uV3JhcHBl
cio+OjpJdGVyYXRvciBpdGVyID0gbV9ub3RpZmljYXRpb25zLmJlZ2luKCk7CisgICAgICAgIGRl
bGV0ZSBtX25vdGlmaWNhdGlvbnMudGFrZShpdGVyLmtleSgpKTsKKyAgICB9CiB9CiAKLU5vdGlm
aWNhdGlvblByZXNlbnRlcjo6UGVybWlzc2lvbiBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRR
dDo6Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwmKQordm9pZCBOb3RpZmljYXRpb25QcmVzZW50
ZXJDbGllbnRRdDo6c2VuZEV2ZW50KE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uLCBjb25zdCBB
dG9taWNTdHJpbmcmIGV2ZW50TmFtZSkKIHsKLSAgICAvLyBGSVhNRSBJbXBsZW1lbnQgcGVybWlz
c2lvbiBwb2xpY3kKLSAgICByZXR1cm4gTm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJtaXNzaW9u
QWxsb3dlZDsKKyAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50ID0gRXZlbnQ6OmNyZWF0ZShldmVudE5h
bWUsIGZhbHNlLCB0cnVlKTsKKyAgICBub3RpZmljYXRpb24tPmRpc3BhdGNoRXZlbnQoZXZlbnQu
cmVsZWFzZSgpKTsKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShOT1RJRklDQVRJT05TKQpJbmRleDog
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNl
bnRlckNsaWVudFF0LmgJKHJldmlzaW9uIDYwMjk2KQorKysgV2ViS2l0L3F0L1dlYkNvcmVTdXBw
b3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI5
LDIwICsyOSwzNSBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaWZuZGVmIE5vdGlmaWNhdGlv
blByZXNlbnRlckNsaWVudFF0X2gKKyNkZWZpbmUgTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50
UXRfaAorCiAjaW5jbHVkZSAiTm90aWZpY2F0aW9uLmgiCiAjaW5jbHVkZSAiTm90aWZpY2F0aW9u
UHJlc2VudGVyLmgiCiAKKyNpbmNsdWRlIDxRTXVsdGlIYXNoPgogI2luY2x1ZGUgPFFTeXN0ZW1U
cmF5SWNvbj4KIAorCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCitjbGFzcyBRV2ViUGFnZTsK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBLVVJMOwogCitz
dHJ1Y3QgTm90aWZpY2F0aW9uSWNvbldyYXBwZXIgeworICAgIE5vdGlmaWNhdGlvbkljb25XcmFw
cGVyKCk7CisgICAgfk5vdGlmaWNhdGlvbkljb25XcmFwcGVyKCk7CisjaWZuZGVmIFFUX05PX1NZ
U1RFTVRSQVlJQ09OCisgICAgUVN5c3RlbVRyYXlJY29uKiBtX25vdGlmaWNhdGlvbkljb247Cisj
ZW5kaWYKK307CisKIGNsYXNzIE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0IDogcHVibGlj
IE5vdGlmaWNhdGlvblByZXNlbnRlciB7CiBwdWJsaWM6Ci0gICAgTm90aWZpY2F0aW9uUHJlc2Vu
dGVyQ2xpZW50UXQoKTsKKyAgICBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdChRV2ViUGFn
ZSopOworICAgIH5Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdCgpIHt9CiAKICAgICAvKiBX
ZWJDb3JlOjpOb3RpZmljYXRpb25QcmVzZW50ZXIgaW50ZXJmYWNlICovCiAgICAgdmlydHVhbCBi
b29sIHNob3coTm90aWZpY2F0aW9uKik7CkBAIC01MSwxMyArNjYsMjIgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihTZWN1cml0eU9yaWdpbiosIFBhc3NSZWZQ
dHI8Vm9pZENhbGxiYWNrPik7CiAgICAgdmlydHVhbCBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBl
cm1pc3Npb24gY2hlY2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwmKTsKIAorICAgIHZvaWQgYWxsb3dO
b3RpZmljYXRpb25Gb3JPcmlnaW4oY29uc3QgUVN0cmluZyYgb3JpZ2luKTsKKyAgICB2b2lkIGNs
ZWFyTm90aWZpY2F0aW9uc0xpc3QoKTsKKwogICAgIHN0YXRpYyBib29sIGR1bXBOb3RpZmljYXRp
b247CiAKLXByaXZhdGU6IAotI2lmbmRlZiBRVF9OT19TWVNURU1UUkFZSUNPTgotICAgIFFTeXN0
ZW1UcmF5SWNvbiBtX3RyYXk7Ci0jZW5kaWYKKyAgICB2b2lkIHNldFJlY2VpdmVyKFFPYmplY3Qq
IHJlY2VpdmVyKSB7IG1fcmVjZWl2ZXIgPSByZWNlaXZlcjsgfQorCitwcml2YXRlOgorICAgIHZv
aWQgc2VuZEV2ZW50KE5vdGlmaWNhdGlvbiosIGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnROYW1l
KTsKKyAgICBRV2ViUGFnZSogbV9wYWdlOworICAgIFFNdWx0aUhhc2g8UVN0cmluZywgIFFMaXN0
PFJlZlB0cjxWb2lkQ2FsbGJhY2s+ID4gPiBtX3BlbmRpbmdQZXJtaXNzaW9uUmVxdWVzdHM7Cisg
ICAgUUhhc2ggPE5vdGlmaWNhdGlvbiosIE5vdGlmaWNhdGlvbkljb25XcmFwcGVyKj4gbV9ub3Rp
ZmljYXRpb25zOworICAgIFFPYmplY3QqIG1fcmVjZWl2ZXI7CiB9OwogfQogCiAjZW5kaWYKKyNl
bmRpZgorCkluZGV4OiBXZWJLaXRUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA2MDI5NikKKysrIFdlYktpdFRvb2xzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDEwLTA1LTI2ICBZYWVsIEFoYXJv
biAgPHlhZWwuYWhhcm9uQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBbUXRdIFBhc3MgYWxsIHdlYiBub3RpZmljYXRpb24gbGF5b3V0
IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
OTE0NgorCisgICAgICAgIE1pbWljIENocm9taXVtJ3MgdGVzdF9zaGVsbCBzZWN1cml0eSBtb2Rl
bCBpbiBRdCdzIERSVC4KKyAgICAgICAgSXQgbWFrZXMgYSBsaXN0IG9mIG9yaWdpbnMgd2hpY2gg
d2VyZSBncmFudGVkIHBlcm1pc3Npb24gdG8gZGlzcGxheQorICAgICAgICBub3RpZmljYXRpb25z
LCBhbmQgb25seSB0aG9zZSBvcmlnaW5zIGNhbiBkaXNwbGF5IG5vdGlmaWNhdGlvbnMuCisKKyAg
ICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmNoZWNrUGVybWlzc2lvbkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OnJl
cXVlc3RQZXJtaXNzaW9uQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6V2ViUGFnZTo6V2Vi
UGFnZSk6CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6Y2hlY2tQZXJtaXNzaW9u
KToKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpyZXF1ZXN0UGVybWlzc2lvbik6
CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oOgorICAgICAg
ICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwOgorICAgICAg
ICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OnJlc2V0KToKKyAgICAgICAgKExheW91dFRlc3RDb250
cm9sbGVyOjpncmFudERlc2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKToKKyAgICAgICAgKExh
eW91dFRlc3RDb250cm9sbGVyOjpjaGVja0Rlc2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKToK
KyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0Lmg6CisK
IDIwMTAtMDUtMjcgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IFNoaW5pY2hpcm8gSGFtYWppLgpJbmRleDogV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAJKHJldmlzaW9u
IDYwMjk2KQorKysgV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVR
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzMCw2ICsxMzAsMTUgQEAgcHVibGljOgogfTsKICNl
bmRpZgogCit2b2lkIGNoZWNrUGVybWlzc2lvbkNhbGxiYWNrKFFPYmplY3QqIHJlY2VpdmVyLCBj
b25zdCBRVXJsJiB1cmwsIE5vdGlmaWNhdGlvblBlcm1pc3Npb24mIHBlcm1pc3Npb24pCit7Cisg
ICAgcW9iamVjdF9jYXN0PER1bXBSZW5kZXJUcmVlKj4ocmVjZWl2ZXIpLT5jaGVja1Blcm1pc3Np
b24odXJsLCBwZXJtaXNzaW9uKTsKK30KKwordm9pZCByZXF1ZXN0UGVybWlzc2lvbkNhbGxiYWNr
KFFPYmplY3QqIHJlY2VpdmVyLCBRV2ViUGFnZSogcGFnZSwgY29uc3QgUVN0cmluZyYgb3JpZ2lu
KQoreworICAgIHFvYmplY3RfY2FzdDxEdW1wUmVuZGVyVHJlZSo+KHJlY2VpdmVyKS0+cmVxdWVz
dFBlcm1pc3Npb24ocGFnZSwgb3JpZ2luKTsKK30KIAogV2ViUGFnZTo6V2ViUGFnZShRT2JqZWN0
KiBwYXJlbnQsIER1bXBSZW5kZXJUcmVlKiBkcnQpCiAgICAgOiBRV2ViUGFnZShwYXJlbnQpCkBA
IC0xNTgsNiArMTY3LDExIEBAIFdlYlBhZ2U6OldlYlBhZ2UoUU9iamVjdCogcGFyZW50LCBEdW1w
UmUKIAogICAgIHNldE5ldHdvcmtBY2Nlc3NNYW5hZ2VyKG1fZHJ0LT5uZXR3b3JrQWNjZXNzTWFu
YWdlcigpKTsKICAgICBzZXRQbHVnaW5GYWN0b3J5KG5ldyBUZXN0UGx1Z2luKHRoaXMpKTsKKwor
ICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXROb3RpZmljYXRpb25zUmVjZWl2ZXIodGhp
cywgbV9kcnQpOworICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpzZXRDaGVja1Blcm1pc3Np
b25GdW5jdGlvbihjaGVja1Blcm1pc3Npb25DYWxsYmFjayk7CisgICAgRHVtcFJlbmRlclRyZWVT
dXBwb3J0UXQ6OnNldFJlcXVlc3RQZXJtaXNzaW9uRnVuY3Rpb24ocmVxdWVzdFBlcm1pc3Npb25D
YWxsYmFjayk7CisKIH0KIAogV2ViUGFnZTo6fldlYlBhZ2UoKQpAQCAtOTAxLDYgKzkxNSwxNiBA
QCB2b2lkIER1bXBSZW5kZXJUcmVlOjpzd2l0Y2hGb2N1cyhib29sIGZvCiAgICAgUUFwcGxpY2F0
aW9uOjpzZW5kRXZlbnQobV9tYWluVmlldywgJmV2ZW50KTsKIH0KIAordm9pZCBEdW1wUmVuZGVy
VHJlZTo6Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IFFVcmwmIHVybCwgTm90aWZpY2F0aW9uUGVybWlz
c2lvbiYgcGVybWlzc2lvbikKK3sKKyAgICBwZXJtaXNzaW9uID0gbV9jb250cm9sbGVyLT5jaGVj
a0Rlc2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKHVybC5zY2hlbWUoKSArICI6Ly8iICsgdXJs
Lmhvc3QoKSkgPyBOb3RpZmljYXRpb25BbGxvd2VkIDogTm90aWZpY2F0aW9uRGVuaWVkOworfQor
Cit2b2lkIER1bXBSZW5kZXJUcmVlOjpyZXF1ZXN0UGVybWlzc2lvbihRV2ViUGFnZSogcGFnZSwg
Y29uc3QgUVN0cmluZyYgb3JpZ2luKQoreworICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojph
bGxvd05vdGlmaWNhdGlvbkZvck9yaWdpbihwYWdlLCBvcmlnaW4pOworfQorCiAjaWYgZGVmaW5l
ZChRX1dTX1gxMSkKIHZvaWQgRHVtcFJlbmRlclRyZWU6OmluaXRpYWxpemVGb250cygpCiB7Cklu
ZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVR
dC5oCShyZXZpc2lvbiA2MDI5NikKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1
bXBSZW5kZXJUcmVlUXQuaAkod29ya2luZyBjb3B5KQpAQCAtNDAsNiArNDAsNyBAQAogI2luY2x1
ZGUgPFFTc2xFcnJvcj4KICNlbmRpZgogCisjaW5jbHVkZSAiLi4vLi4vLi4vV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmgiCiAjaW5jbHVkZSA8cXdlYmZy
YW1lLmg+CiAjaW5jbHVkZSA8cXdlYmluc3BlY3Rvci5oPgogI2luY2x1ZGUgPHF3ZWJwYWdlLmg+
CkBAIC0xMTMsNiArMTE0LDggQEAgcHVibGljIFFfU0xPVFM6CiAgICAgdm9pZCBkdW1wRGF0YWJh
c2VRdW90YShRV2ViRnJhbWUqIGZyYW1lLCBjb25zdCBRU3RyaW5nJiBkYk5hbWUpOwogICAgIHZv
aWQgc3RhdHVzQmFyTWVzc2FnZShjb25zdCBRU3RyaW5nJiBtZXNzYWdlKTsKICAgICB2b2lkIHdp
bmRvd0Nsb3NlUmVxdWVzdGVkKCk7CisgICAgdm9pZCBjaGVja1Blcm1pc3Npb24oY29uc3QgUVVy
bCYsIE5vdGlmaWNhdGlvblBlcm1pc3Npb24mKTsKKyAgICB2b2lkIHJlcXVlc3RQZXJtaXNzaW9u
KFFXZWJQYWdlKiBwYWdlLCBjb25zdCBRU3RyaW5nJik7CiAKIFFfU0lHTkFMUzoKICAgICB2b2lk
IHF1aXQoKTsKSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RD
b250cm9sbGVyUXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwCShyZXZpc2lvbiA2MDI5NikKKysrIFdlYktp
dFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC02NCw2ICs2NCw4IEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnJl
c2V0KCkKICAgICBtX2hhbmRsZUVycm9yUGFnZXMgPSBmYWxzZTsKICAgICBtX3dlYkhpc3Rvcnkg
PSAwOwogICAgIG1fZ2xvYmFsRmxhZyA9IGZhbHNlOworICAgIG1fZGVza3RvcE5vdGlmaWNhdGlv
bkFsbG93ZWRPcmlnaW5zLmNsZWFyKCk7CisKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6
ZHVtcEVkaXRpbmdDYWxsYmFja3MoZmFsc2UpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0
OjpkdW1wRnJhbWVMb2FkZXIoZmFsc2UpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojpk
dW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKGZhbHNlKTsKQEAgLTcxLDYgKzczLDcgQEAgdm9pZCBM
YXlvdXRUZXN0Q29udHJvbGxlcjo6cmVzZXQoKQogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0
OjpzZXRXaWxsU2VuZFJlcXVlc3RSZXR1cm5zTnVsbChmYWxzZSk7CiAgICAgRHVtcFJlbmRlclRy
ZWVTdXBwb3J0UXQ6OnNldFdpbGxTZW5kUmVxdWVzdENsZWFySGVhZGVycyhRU3RyaW5nTGlzdCgp
KTsKICAgICBzZXRJY29uRGF0YWJhc2VFbmFibGVkKGZhbHNlKTsKKwogICAgIGVtaXQgaGlkZVBh
Z2UoKTsKIH0KIApAQCAtMTgxLDEzICsxODQsMTIgQEAgaW50IExheW91dFRlc3RDb250cm9sbGVy
Ojp3aW5kb3dDb3VudCgpCiAKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmdyYW50RGVza3Rv
cE5vdGlmaWNhdGlvblBlcm1pc3Npb24oY29uc3QgUVN0cmluZyYgb3JpZ2luKQogewotICAgIC8v
IEZJWE1FOiBJbXBsZW1lbnQgZm9yIG5vdGlmaWNhdGlvbiBzZWN1cml0eQorICAgIG1fZGVza3Rv
cE5vdGlmaWNhdGlvbkFsbG93ZWRPcmlnaW5zLmFwcGVuZChvcmlnaW4pOwogfQogCiBib29sIExh
eW91dFRlc3RDb250cm9sbGVyOjpjaGVja0Rlc2t0b3BOb3RpZmljYXRpb25QZXJtaXNzaW9uKGNv
bnN0IFFTdHJpbmcmIG9yaWdpbikKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IGZvciBub3Rp
ZmljYXRpb24gc2VjdXJpdHkKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4gbV9kZXNrdG9w
Tm90aWZpY2F0aW9uQWxsb3dlZE9yaWdpbnMuY29udGFpbnMob3JpZ2luKTsKIH0KIAogdm9pZCBM
YXlvdXRUZXN0Q29udHJvbGxlcjo6ZGlzcGxheSgpCkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oCShyZXZpc2lv
biA2MDI5NikKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250
cm9sbGVyUXQuaAkod29ya2luZyBjb3B5KQpAQCAtMjE4LDYgKzIxOCw3IEBAIHByaXZhdGU6CiAg
ICAgUVdlYkZyYW1lKiBtX3RvcExvYWRpbmdGcmFtZTsKICAgICBXZWJDb3JlOjpEdW1wUmVuZGVy
VHJlZSogbV9kcnQ7CiAgICAgUVdlYkhpc3RvcnkqIG1fd2ViSGlzdG9yeTsKKyAgICBRU3RyaW5n
TGlzdCBtX2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2luczsKIH07CiAKICNlbmRpZiAv
LyBMYXlvdXRUZXN0Q29udHJvbGxlclF0X2gKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDYwMjk2KQorKysg
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIw
MTAtMDUtMjYgIFlhZWwgQWhhcm9uICA8eWFlbC5haGFyb25Abm9raWEuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gUGFzcyBhbGwgd2Vi
IG5vdGlmaWNhdGlvbiBsYXlvdXQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM5MTQ2CisKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVk
OgorCiAyMDEwLTA1LTI3ICBKZWRyemVqIE5vd2Fja2kgIDxqZWRyemVqLm5vd2Fja2lAbm9raWEu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEJyYWR5IEVpZHNvbi4KSW5kZXg6IExheW91dFRl
c3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vcXQvU2tpcHBlZAkocmV2aXNpb24gNjAyOTYpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC00Njk1LDE0ICs0Njk1LDYgQEAgbG9hZGVyL2dv
LWJhY2stdG8tZGlmZmVyZW50LXdpbmRvdy1zaXplLgogIyBUaGlzIHBvcnQgZG9lc24ndCBzdXBw
b3J0IEdlb2xvY2F0aW9uLgogZmFzdC9kb20vR2VvbG9jYXRpb24KIAotIyBUaGlzIHBvcnQgZG9l
c24ndCBzdXBwb3J0IE5vdGlmaWNhdGlvbiBwZXJtaXNzaW9ucwotZmFzdC9ub3RpZmljYXRpb25z
L25vdGlmaWNhdGlvbnMtY2hlY2stcGVybWlzc2lvbi5odG1sCi1mYXN0L25vdGlmaWNhdGlvbnMv
bm90aWZpY2F0aW9ucy1kaXNwbGF5LWNsb3NlLWV2ZW50cy5odG1sCi1mYXN0L25vdGlmaWNhdGlv
bnMvbm90aWZpY2F0aW9ucy1yZXF1ZXN0LXBlcm1pc3Npb24uaHRtbAotZmFzdC9ub3RpZmljYXRp
b25zL25vdGlmaWNhdGlvbnMtd2l0aG91dC1wZXJtaXNzaW9uLmh0bWwKLWZhc3Qvbm90aWZpY2F0
aW9ucy9ub3RpZmljYXRpb25zLXJ0bC5odG1sCi1mYXN0L25vdGlmaWNhdGlvbnMvbm90aWZpY2F0
aW9ucy1yZXBsYWNlLmh0bWwKLQogIyBNaXNzaW5nIERSVCBhYmlsaXR5IHRvIHNldCBhY2NlcHQg
Y29va2llIHBvbGljeQogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9jcm9zcy1vcmlnaW4tY29v
a2llLXN0b3JhZ2UuaHRtbAogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>