<?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>57515</bug_id>
          
          <creation_ts>2011-03-30 17:43:48 -0700</creation_ts>
          <short_desc>[WK2] [Mac] Implement KeyDown function for WebKit2 EventSender</short_desc>
          <delta_ts>2011-09-14 13:12:09 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>57629</dependson>
          <blocked>42194</blocked>
    
    <blocked>56485</blocked>
    
    <blocked>68108</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chang Shu">cshu</reporter>
          <assigned_to name="Chang Shu">cshu</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>buildbot</cc>
    
    <cc>darin</cc>
    
    <cc>kbalazs</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>lforschler</cc>
    
    <cc>mjs</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>376819</commentid>
    <comment_count>0</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-03-30 17:43:48 -0700</bug_when>
    <thetext>Start building framework using KeyDown event.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377208</commentid>
    <comment_count>1</comment_count>
      <attachid>87740</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-03-31 09:07:29 -0700</bug_when>
    <thetext>Created attachment 87740
fix patch

This patch does the following things for KeyDown event:
1. passes function calls from WebKitTestRunner::InjectedBundle to WebKit2::WebProcess::InjectedBundle through WK interface 
2. encodes it as a binary buffer attached to a general InjectedBundle message.
3. sends out the message to UIProcess
4. UIProcess passes the general InjectedBundle message to WebKitTestRunner::EventSenderProxy.
5. EventSenderProxy calls the decoding mechanism through WK interface
5. EventSenderProxy further calls the platform-dependent code to trigger the event from the UIProcess side.

Note that the platform-dependent implementation on Mac has not been done yet for my lack of experience on objC development.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377216</commentid>
    <comment_count>2</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-03-31 09:10:13 -0700</bug_when>
    <thetext>I changed the title of the bug since my patch is 100% common code except the project files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377225</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-31 09:18:58 -0700</bug_when>
    <thetext>Maciej told me an approach like this won’t work due to the behavior of CoreIPC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377227</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-31 09:20:17 -0700</bug_when>
    <thetext>We can make it work by enhancing CoreIPC. I don’t know the details. Maybe he can fill us in.

Adding him to the cc list. In the mean time I am making a version of eventSender work entirely within the web process. We can still move to the round trip UI process version later, but this will get many tests running and testing what they intend to even though they will not test as much code as the multi-process version we eventually want.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377243</commentid>
    <comment_count>5</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-03-31 09:37:08 -0700</bug_when>
    <thetext>Attachment 87740 did not build on qt:
Build output: http://queues.webkit.org/results/8315188</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377272</commentid>
    <comment_count>6</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2011-03-31 10:00:25 -0700</bug_when>
    <thetext>Attachment 87740 did not build on win:
Build output: http://queues.webkit.org/results/8297951</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377274</commentid>
    <comment_count>7</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-03-31 10:04:59 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Maciej told me an approach like this won’t work due to the behavior of CoreIPC.

Hi, Darin,
I am not sure which part of the code you are referring to. With the similar patch for bug 56485, I have made it work on Qt and fixed at least one test case. It will be good the enhance CoreIPC though and the WK interface will become neater.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377278</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-31 10:07:58 -0700</bug_when>
    <thetext>I am going to put my patches that work entirely in the web process up for review. I hope that does not make your task more difficult. I think your direction is fine. It’s Maciej and Anders that can explain the concerns. Please also fee free to replace my code with yours if mine lands and yours will work even better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377334</commentid>
    <comment_count>9</comment_count>
      <attachid>87766</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-03-31 11:00:53 -0700</bug_when>
    <thetext>Created attachment 87766
fix patch 2

fix build break</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377337</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-31 11:03:50 -0700</bug_when>
    <thetext>Attachment 87766 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit...&quot; exit_code: 1

Tools/WebKitTestRunner/EventSenderProxy.h:30:  Should have a space between // and comment  [whitespace/comments] [4]
Total errors found: 1 in 30 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377342</commentid>
    <comment_count>11</comment_count>
      <attachid>87770</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-03-31 11:11:23 -0700</bug_when>
    <thetext>Created attachment 87770
fix patch 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393090</commentid>
    <comment_count>12</comment_count>
      <attachid>87770</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-04-26 16:56:33 -0700</bug_when>
    <thetext>Comment on attachment 87770
fix patch 2

I&apos;m told Maciej believes this can&apos;t work this way.  I&apos;m sorry I don&apos;t have more infromation for you than that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393142</commentid>
    <comment_count>13</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-04-26 17:07:15 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 87770 [details])
&gt; I&apos;m told Maciej believes this can&apos;t work this way.  I&apos;m sorry I don&apos;t have more infromation for you than that.

Yes, I understand. Thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409013</commentid>
    <comment_count>14</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-05-24 11:11:35 -0700</bug_when>
    <thetext>I am back to this bug now. I had a concern that the synchronous message cannot hop from WebProcess to UIProcess and to WebProcess again. But after I investigated the code, it actually works.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409674</commentid>
    <comment_count>15</comment_count>
      <attachid>94789</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-05-25 09:05:49 -0700</bug_when>
    <thetext>Created attachment 94789
fix patch 3

This patch allows key events being sent from WTR::InjectedBundle to WTR UIProcess and then to WebKit2::WebProcess again, all synchronously.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>452252</commentid>
    <comment_count>16</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-08-17 08:05:56 -0700</bug_when>
    <thetext>*** Bug 62576 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>465977</commentid>
    <comment_count>17</comment_count>
      <attachid>94789</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-09-12 17:05:25 -0700</bug_when>
    <thetext>Comment on attachment 94789
fix patch 3

View in context: https://bugs.webkit.org/attachment.cgi?id=94789&amp;action=review

&gt; Source/WebKit2/UIProcess/API/C/WKPagePrivate.h:71
&gt; +WK_EXPORT void WKPageSetSendEventSynchronously(WKPageRef page, bool sync);

The name here is not ideal. Given what this does, normally we’d name this WKPageSetShouldSendKeyboardEventsSynchronously.

&gt; Source/WebKit2/WebProcess/WebPage/WebPage.cpp:1091
&gt; +    // FIXME: Platform default behaviors should be performed during normal DOM event dispatch (in most cases, in default keydown event handler).

Do we really need this FIXME?

&gt; Source/WebKit2/WebProcess/WebPage/WebPage.messages.in:36
&gt; +    KeyEventSync(WebKit::WebKeyboardEvent event) -&gt; (bool handled)

I think it would be best if there was some way to indicate this was intended for testing only.

&gt; Tools/WebKitTestRunner/EventSenderProxy.h:36
&gt; +    EventSenderProxy(TestController* testController) : m_testController(testController) { };

This semicolon is unnecessary.

&gt; Tools/WebKitTestRunner/EventSenderProxy.h:38
&gt; +    void keyDown(WKStringRef key, WKEventModifiers, unsigned int location, double timestamp);

It should be &quot;unsigned&quot;, not &quot;unsigned int&quot;.

&gt; Tools/WebKitTestRunner/TestController.cpp:31
&gt; +#if PLATFORM(MAC)
&gt; +#include &quot;EventSenderProxy.h&quot;
&gt; +#endif

Conditional includes should normally be separate and under unconditional includes.

&gt; Tools/WebKitTestRunner/TestController.cpp:502
&gt; +#if PLATFORM(MAC)

What is Mac-specific here?

&gt; Tools/WebKitTestRunner/TestController.cpp:518
&gt; +            unsigned int location = static_cast&lt;unsigned int&gt;(WKUInt64GetValue(static_cast&lt;WKUInt64Ref&gt;(WKDictionaryGetItemForKey(messageBodyDictionary, locationKey.get()))));

Should just be &quot;unsigned&quot; not &quot;unsigned int&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466086</commentid>
    <comment_count>18</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-09-12 20:45:48 -0700</bug_when>
    <thetext>Thanks a lot for the review, Darin. I&apos;ll provide a new patch to accommodate your review and rebase the code.
(In reply to comment #17)
&gt; (From update of attachment 94789 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=94789&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/C/WKPagePrivate.h:71
&gt; &gt; +WK_EXPORT void WKPageSetSendEventSynchronously(WKPageRef page, bool sync);
&gt; 
&gt; The name here is not ideal. Given what this does, normally we’d name this WKPageSetShouldSendKeyboardEventsSynchronously.
&gt; 
&gt; &gt; Source/WebKit2/WebProcess/WebPage/WebPage.cpp:1091
&gt; &gt; +    // FIXME: Platform default behaviors should be performed during normal DOM event dispatch (in most cases, in default keydown event handler).
&gt; 
&gt; Do we really need this FIXME?
&gt; 
&gt; &gt; Source/WebKit2/WebProcess/WebPage/WebPage.messages.in:36
&gt; &gt; +    KeyEventSync(WebKit::WebKeyboardEvent event) -&gt; (bool handled)
&gt; 
&gt; I think it would be best if there was some way to indicate this was intended for testing only.
&gt; 
&gt; &gt; Tools/WebKitTestRunner/EventSenderProxy.h:36
&gt; &gt; +    EventSenderProxy(TestController* testController) : m_testController(testController) { };
&gt; 
&gt; This semicolon is unnecessary.
&gt; 
&gt; &gt; Tools/WebKitTestRunner/EventSenderProxy.h:38
&gt; &gt; +    void keyDown(WKStringRef key, WKEventModifiers, unsigned int location, double timestamp);
&gt; 
&gt; It should be &quot;unsigned&quot;, not &quot;unsigned int&quot;.
&gt; 
&gt; &gt; Tools/WebKitTestRunner/TestController.cpp:31
&gt; &gt; +#if PLATFORM(MAC)
&gt; &gt; +#include &quot;EventSenderProxy.h&quot;
&gt; &gt; +#endif
&gt; 
&gt; Conditional includes should normally be separate and under unconditional includes.
&gt; 
&gt; &gt; Tools/WebKitTestRunner/TestController.cpp:502
&gt; &gt; +#if PLATFORM(MAC)
&gt; 
&gt; What is Mac-specific here?
&gt; 
&gt; &gt; Tools/WebKitTestRunner/TestController.cpp:518
&gt; &gt; +            unsigned int location = static_cast&lt;unsigned int&gt;(WKUInt64GetValue(static_cast&lt;WKUInt64Ref&gt;(WKDictionaryGetItemForKey(messageBodyDictionary, locationKey.get()))));
&gt; 
&gt; Should just be &quot;unsigned&quot; not &quot;unsigned int&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466246</commentid>
    <comment_count>19</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2011-09-13 05:35:12 -0700</bug_when>
    <thetext>It&apos;s strange to me that this patch is a Mac-only fix. I guess the plan is to do the platform independent part and the Mac part in one and later fix it on other platforms, is that right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466272</commentid>
    <comment_count>20</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-09-13 06:57:31 -0700</bug_when>
    <thetext>Exactly. I will change the title. Thanks.
(In reply to comment #19)
&gt; It&apos;s strange to me that this patch is a Mac-only fix. I guess the plan is to do the platform independent part and the Mac part in one and later fix it on other platforms, is that right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466427</commentid>
    <comment_count>21</comment_count>
      <attachid>107203</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-09-13 11:42:00 -0700</bug_when>
    <thetext>Created attachment 107203
patch 4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466466</commentid>
    <comment_count>22</comment_count>
      <attachid>107203</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-13 12:25:51 -0700</bug_when>
    <thetext>Comment on attachment 107203
patch 4

Clearing flags on attachment: 107203

Committed r95039: &lt;http://trac.webkit.org/changeset/95039&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466467</commentid>
    <comment_count>23</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-13 12:25:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>87740</attachid>
            <date>2011-03-31 09:07:29 -0700</date>
            <delta_ts>2011-03-31 11:00:53 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>57515_1.patch</filename>
            <type>text/plain</type>
            <size>94385</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDgyNTgyKQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTEtMDMtMzEgIENoYW5nIFNo
dSAgPGNzaHVAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBbTWFjXSBbV0syXSBJbXBsZW1lbnQgS2V5RG93biBmdW5jdGlvbiBmb3Ig
V2ViS2l0MiBFdmVudFNlbmRlci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU3NTE1CisKKyAgICAgICAgVGhlIGZvbGxvd2luZyBjb2RlIGNoYW5nZSBi
dWlsZHMgdXAgdGhlIGluZnJhc3RydWN0dXJlIGZvcgorICAgICAgICBXZWJLaXRUZXN0UnVubmVy
IEV2ZW50U2VuZGVyIHRvIHNlbmQgbWVzc2FnZXMgZnJvbSB0aGUgSW5qZWN0ZWRCdW5kbGUKKyAg
ICAgICAgaW4gV2ViUHJvY2VzcyB0byBVSVByb2Nlc3Mgb2YgV2ViS2l0VGVzdFJ1bm5lci4KKwor
ICAgICAgICBUaGUgYmFzaWMgS2V5RG93biBmdW5jdGlvbmFsaXR5IGlzIGltcGxlbWVudGVkIGV4
Y2VwdCB0aGUgbG9jYWwgaW1wbGVtZW50YXRpb24uCisKKyAgICAgICAgKiBTaGFyZWQvQVBJL2Mv
V0tBcmd1bWVudERlY29kZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdLQ3JlYXRlQXJndW1lbnRE
ZWNvZGVyKToKKyAgICAgICAgKFdLRGVjb2RlVUludDMyKToKKyAgICAgICAgKFdLRGVjb2RlU3Ry
aW5nKToKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tBcmd1bWVudERlY29kZXIuaDogQWRkZWQu
CisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLQmFzZS5oOgorICAgICAgICAqIFNoYXJlZC9BUEkv
Yy9XS01lc3NhZ2VJRC5oOiBBZGRlZC4KKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tTaGFyZWRB
UElDYXN0Lmg6CisgICAgICAgICogU2hhcmVkL0V2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oOiBB
ZGRlZC4KKyAgICAgICAgKE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLZXlEb3duOjpLZXlE
b3duKToKKyAgICAgICAgKE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLZXlEb3duOjplbmNv
ZGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0VXNlck1lc3NhZ2VDb2RlcnMuaDoK
KyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dFVzZXJNZXNzYWdlRGVjb2Rlcjo6ZGVjb2RlKToK
KyAgICAgICAgKiBXZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5jcHA6CisgICAgICAgIChX
S0J1bmRsZUdldEV2ZW50U2VuZGVyKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9jL1dLQnVuZGxlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRs
ZS9BUEkvYy9XS0J1bmRsZUFQSUNhc3QuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdL
QnVuZGxlRXZlbnRTZW5kZXJLZXlEb3duKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuaDogQWRkZWQuCisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlOjpJbmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oOgorICAgICAgICAoV2ViS2l0OjpJbmpl
Y3RlZEJ1bmRsZTo6ZXZlbnRTZW5kZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5jcHA6IEFkZGVkLgorICAgICAgICAoV2Vi
S2l0OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0
OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyOjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyKToK
KyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcjo6fkluamVjdGVkQnVu
ZGxlRXZlbnRTZW5kZXIpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2Vu
ZGVyOjprZXlEb3duKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlRXZlbnRTZW5kZXIuaDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlQ29kZXJzLmg6CisgICAgICAgIChX
ZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyOjplbmNvZGUpOgorCiAyMDEx
LTAzLTMxICBFdmFuIE1hcnRpbiAgPGV2YW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEVyaWMgU2VpZGVsLgpJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL0V2ZW50U2Vu
ZGVyUHJveHlNZXNzYWdlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9F
dmVudFNlbmRlclByb3h5TWVzc2FnZXMuaAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJLaXQy
L1NoYXJlZC9FdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSw2NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29y
IGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SCisgKiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgorICog
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIKKyAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEV2ZW50U2VuZGVyUHJv
eHlNZXNzYWdlc19oCisjZGVmaW5lIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlc19oCisKKyNpbmNs
dWRlICJBcmd1bWVudHMuaCIKKyNpbmNsdWRlICJNZXNzYWdlSUQuaCIKKyNpbmNsdWRlICJXS01l
c3NhZ2VJRC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCituYW1lc3BhY2Ug
TWVzc2FnZXMgeworCituYW1lc3BhY2UgRXZlbnRTZW5kZXJQcm94eSB7CisKK3N0cnVjdCBLZXlE
b3duIDogQ29yZUlQQzo6QXJndW1lbnRzMzxjb25zdCBTdHJpbmcmLCB1aW50MzJfdCwgdWludDMy
X3Q+IHsKKyAgICBzdGF0aWMgY29uc3QgS2luZCBtZXNzYWdlSUQgPSBLZXlEb3duSUQ7CisgICAg
dHlwZWRlZiBDb3JlSVBDOjpBcmd1bWVudHMzPGNvbnN0IFN0cmluZyYsIHVpbnQzMl90LCB1aW50
MzJfdD4gRGVjb2RlVHlwZTsKKyAgICBLZXlEb3duKGNvbnN0IFN0cmluZyYga2V5LCB1aW50MzJf
dCBtb2RpZmllcnMsIHVpbnQzMl90IGxvY2F0aW9uKQorICAgICAgICA6IENvcmVJUEM6OkFyZ3Vt
ZW50czM8Y29uc3QgU3RyaW5nJiwgdWludDMyX3QsIHVpbnQzMl90PihrZXksIG1vZGlmaWVycywg
bG9jYXRpb24pCisgICAgeworICAgIH0KKyAgICB2b2lkIGVuY29kZShDb3JlSVBDOjpBcmd1bWVu
dEVuY29kZXIqIGVuY29kZXIpIGNvbnN0CisgICAgeworICAgICAgICBlbmNvZGVyLT5lbmNvZGUo
c3RhdGljX2Nhc3Q8dWludDMyX3Q+KG1lc3NhZ2VJRCkpOworICAgICAgICBEZWNvZGVUeXBlOjpl
bmNvZGUoZW5jb2Rlcik7CisgICAgfQorfTsKKworfSAvLyBuYW1lc3BhY2UgRXZlbnRTZW5kZXJQ
cm94eQorCit9IC8vIG5hbWVzcGFjZSBNZXNzYWdlcworCituYW1lc3BhY2UgQ29yZUlQQyB7CisK
K3RlbXBsYXRlPD4gc3RydWN0IE1lc3NhZ2VLaW5kVHJhaXRzPE1lc3NhZ2VzOjpFdmVudFNlbmRl
clByb3h5OjpLaW5kPiB7CisgICAgc3RhdGljIGNvbnN0IE1lc3NhZ2VDbGFzcyBtZXNzYWdlQ2xh
c3MgPSBNZXNzYWdlQ2xhc3NXZWJDb250ZXh0TGVnYWN5OworfTsKKworfSAvLyBuYW1lc3BhY2Ug
Q29yZUlQQworCisjZW5kaWYgLy8gRXZlbnRTZW5kZXJQcm94eU1lc3NhZ2VzX2gKSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0FyZ3VtZW50RGVjb2Rlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLQXJndW1lbnREZWNvZGVyLmNwcAko
cmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0FyZ3VtZW50RGVj
b2Rlci5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNTkgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV0tBcmd1bWVudERlY29kZXIu
aCIKKworI2luY2x1ZGUgIkFQSU9iamVjdC5oIgorI2luY2x1ZGUgIkFyZ3VtZW50Q29kZXJzLmgi
CisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkV2ZW50U2VuZGVyUHJveHlNZXNz
YWdlcy5oIgorI2luY2x1ZGUgIkhhbmRsZU1lc3NhZ2UuaCIKKyNpbmNsdWRlICJXS0FQSUNhc3Qu
aCIKKyNpbmNsdWRlICJXS1N0cmluZy5oIgorCit1c2luZyBuYW1lc3BhY2UgV2ViS2l0OworCitX
S0FyZ3VtZW50RGVjb2RlclJlZiBXS0NyZWF0ZUFyZ3VtZW50RGVjb2Rlcihjb25zdCB1bnNpZ25l
ZCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoKQoreworICAgIENvcmVJUEM6OkFyZ3VtZW50RGVj
b2RlciogYXJndW1lbnREZWNvZGVyID0gbmV3IENvcmVJUEM6OkFyZ3VtZW50RGVjb2RlcihkYXRh
LCBsZW5ndGgpOworICAgIHJldHVybiB0b0FQSShhcmd1bWVudERlY29kZXIpOworfQorCitib29s
IFdLRGVjb2RlVUludDMyKFdLQXJndW1lbnREZWNvZGVyUmVmIGFyZ3VtZW50RGVjb2RlclJlZiwg
dWludDMyX3QmIHZhbHVlKQoreworICAgIHJldHVybiB0b0ltcGwoYXJndW1lbnREZWNvZGVyUmVm
KS0+ZGVjb2RlKHZhbHVlKTsKK30KKworYm9vbCBXS0RlY29kZVN0cmluZyhXS0FyZ3VtZW50RGVj
b2RlclJlZiBhcmd1bWVudERlY29kZXJSZWYsIFdLU3RyaW5nUmVmJiBzdHJSZWYpCit7CisgICAg
U3RyaW5nIHN0cjsKKyAgICBpZiAodG9JbXBsKGFyZ3VtZW50RGVjb2RlclJlZiktPmRlY29kZShz
dHIpKSB7CisgICAgICAgIHN0clJlZiA9IFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKHN0
ci51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVy
biBmYWxzZTsKK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0FyZ3VtZW50
RGVjb2Rlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0Fy
Z3VtZW50RGVjb2Rlci5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQ
SS9jL1dLQXJndW1lbnREZWNvZGVyLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDcgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lk
aWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
CisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgor
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFdLQXJndW1lbnREZWNvZGVyX2gKKyNkZWZp
bmUgV0tBcmd1bWVudERlY29kZXJfaAorCisjaW5jbHVkZSA8V2ViS2l0Mi9XS0Jhc2UuaD4KKyNp
bmNsdWRlIDxXZWJLaXQyL1dLTWVzc2FnZUlELmg+CisKKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0
ZXJuICJDIiB7CisjZW5kaWYKKworV0tfRVhQT1JUIFdLQXJndW1lbnREZWNvZGVyUmVmIFdLQ3Jl
YXRlQXJndW1lbnREZWNvZGVyKGNvbnN0IHVuc2lnbmVkIGNoYXIqLCBzaXplX3QpOworV0tfRVhQ
T1JUIGJvb2wgV0tEZWNvZGVVSW50MzIoV0tBcmd1bWVudERlY29kZXJSZWYsIHVpbnQzMl90Jik7
CisKK1dLX0VYUE9SVCBib29sIFdLRGVjb2RlU3RyaW5nKFdLQXJndW1lbnREZWNvZGVyUmVmLCBX
S1N0cmluZ1JlZiYpOworCisjaWZkZWYgX19jcGx1c3BsdXMKK30KKyNlbmRpZgorCisKKyNlbmRp
ZiAvKiBXS0FyZ3VtZW50RGVjb2Rlcl9oICovCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
QVBJL2MvV0tCYXNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9j
L1dLQmFzZS5oCShyZXZpc2lvbiA4MjQzNSkKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkv
Yy9XS0Jhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtNjUsNiArNjUsOCBAQCB0eXBlZGVmIGNvbnN0
IHN0cnVjdCBPcGFxdWVXS1VSTFJlcXVlc3QqCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVX
S1VSTFJlc3BvbnNlKiBXS1VSTFJlc3BvbnNlUmVmOwogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3Bh
cXVlV0tVc2VyQ29udGVudFVSTFBhdHRlcm4qIFdLVXNlckNvbnRlbnRVUkxQYXR0ZXJuUmVmOwog
Cit0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0FyZ3VtZW50RGVjb2RlciogV0tBcmd1bWVu
dERlY29kZXJSZWY7CisKIC8qIFdlYktpdDIgbWFpbiBBUEkgdHlwZXMgKi8KIAogdHlwZWRlZiBj
b25zdCBzdHJ1Y3QgT3BhcXVlV0tBcHBsaWNhdGlvbkNhY2hlTWFuYWdlciogV0tBcHBsaWNhdGlv
bkNhY2hlTWFuYWdlclJlZjsKQEAgLTEwMyw2ICsxMDUsNyBAQCB0eXBlZGVmIGNvbnN0IHN0cnVj
dCBPcGFxdWVXS0J1bmRsZSogV0tCCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0J1bmRs
ZUJhY2tGb3J3YXJkTGlzdCogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RSZWY7CiB0eXBlZGVmIGNv
bnN0IHN0cnVjdCBPcGFxdWVXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0qIFdLQnVuZGxlQmFj
a0ZvcndhcmRMaXN0SXRlbVJlZjsKIHR5cGVkZWYgY29uc3Qgc3RydWN0IE9wYXF1ZVdLQnVuZGxl
RE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiogV0tCdW5kbGVDU1NTdHlsZURlY2xhcmF0aW9uUmVmOwor
dHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tCdW5kbGVFdmVudFNlbmRlciogV0tCdW5kbGVF
dmVudFNlbmRlclJlZjsKIHR5cGVkZWYgY29uc3Qgc3RydWN0IE9wYXF1ZVdLQnVuZGxlRnJhbWUq
IFdLQnVuZGxlRnJhbWVSZWY7CiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0J1bmRsZUhp
dFRlc3RSZXN1bHQqIFdLQnVuZGxlSGl0VGVzdFJlc3VsdFJlZjsKIHR5cGVkZWYgY29uc3Qgc3Ry
dWN0IE9wYXF1ZVdLQnVuZGxlSW5zcGVjdG9yKiBXS0J1bmRsZUluc3BlY3RvclJlZjsKSW5kZXg6
IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS01lc3NhZ2VJRC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS01lc3NhZ2VJRC5oCShyZXZpc2lvbiAwKQor
KysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLTWVzc2FnZUlELmgJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0
aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUgorICogQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IKKyAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisgKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICog
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBXS01l
c3NhZ2VJRF9oCisjZGVmaW5lIFdLTWVzc2FnZUlEX2gKKworbmFtZXNwYWNlIE1lc3NhZ2VzIHsK
KworbmFtZXNwYWNlIEV2ZW50U2VuZGVyUHJveHkgeworCitlbnVtIEtpbmQgeworICAgIEtleURv
d25JRCwKK307CisKK30gLy8gbmFtZXNwYWNlIEV2ZW50U2VuZGVyUHJveHkKKworfSAvLyBuYW1l
c3BhY2UgTWVzc2FnZXMKKworI2VuZGlmIC8vIFdLTWVzc2FnZUlEX2gKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNhc3QuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgJKHJldmlzaW9uIDgyNDM1
KQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00OSw2ICs0OSwxMCBAQAogI2luY2x1ZGUgPFdlYkNvcmUvSW50UmVjdC5o
PgogI2luY2x1ZGUgPHd0Zi9UeXBlVHJhaXRzLmg+CiAKK25hbWVzcGFjZSBDb3JlSVBDIHsKK2Ns
YXNzIEFyZ3VtZW50RGVjb2RlcjsKK30KKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIElt
bXV0YWJsZUFycmF5OwpAQCAtOTUsNiArOTksOCBAQCBXS19BRERfQVBJX01BUFBJTkcoV0tVUkxS
ZXF1ZXN0UmVmLCBXZWJVCiBXS19BRERfQVBJX01BUFBJTkcoV0tVUkxSZXNwb25zZVJlZiwgV2Vi
VVJMUmVzcG9uc2UpCiBXS19BRERfQVBJX01BUFBJTkcoV0tVc2VyQ29udGVudFVSTFBhdHRlcm5S
ZWYsIFdlYlVzZXJDb250ZW50VVJMUGF0dGVybikKIAorV0tfQUREX0FQSV9NQVBQSU5HKFdLQXJn
dW1lbnREZWNvZGVyUmVmLCBDb3JlSVBDOjpBcmd1bWVudERlY29kZXIpCisKIHRlbXBsYXRlPHR5
cGVuYW1lIEltcGxUeXBlLCB0eXBlbmFtZSBBUElUeXBlID0gdHlwZW5hbWUgSW1wbFR5cGVJbmZv
PEltcGxUeXBlKj46OkFQSVR5cGU+CiBjbGFzcyBQcm94eWluZ1JlZlB0ciB7CiBwdWJsaWM6Cklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dFVzZXJNZXNzYWdlQ29kZXJz
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHRVc2Vy
TWVzc2FnZUNvZGVycy5oCShyZXZpc2lvbiA4MjQzNSkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJDb250ZXh0VXNlck1lc3NhZ2VDb2RlcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjUs
NiArMjUsNyBAQAogCiAjaW5jbHVkZSAiVXNlck1lc3NhZ2VDb2RlcnMuaCIKICNpbmNsdWRlICJX
ZWJDb250ZXh0LmgiCisjaW5jbHVkZSAiV2ViRGF0YS5oIgogI2luY2x1ZGUgIldlYkZyYW1lUHJv
eHkuaCIKICNpbmNsdWRlICJXZWJQYWdlR3JvdXAuaCIKICNpbmNsdWRlICJXZWJQYWdlR3JvdXBE
YXRhLmgiCkBAIC0xMjcsNiArMTI4LDE0IEBAIHB1YmxpYzoKICAgICAgICAgICAgIGNvZGVyLm1f
cm9vdCA9IFdlYlBhZ2VHcm91cDo6Z2V0KHBhZ2VHcm91cElEKTsKICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICB9CisgICAgICAgIGNhc2UgQVBJT2JqZWN0OjpUeXBlRGF0YTogeworICAgICAg
ICAgICAgVmVjdG9yPHVpbnQ4X3Q+IGJ5dGVzOworICAgICAgICAgICAgaWYgKCFkZWNvZGVyLT5k
ZWNvZGVCeXRlcyhieXRlcykpCisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAg
ICAgICAgUmVmUHRyPFdlYkRhdGE+IHdlYkRhdGEgPSBXZWJEYXRhOjpjcmVhdGUoYnl0ZXMucmVs
ZWFzZUJ1ZmZlcigpLCBieXRlcy5zaXplKCkpOworICAgICAgICAgICAgY29kZXIubV9yb290ID0g
d2ViRGF0YS5yZWxlYXNlKCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQogICAgICAg
ICBkZWZhdWx0OgogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShy
ZXZpc2lvbiA4MjQzNSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMzU2LDYgKzM1NiwxNSBAQAogCQk1MUQwMkY2
QTEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlTWVzc2FnZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRDAyRjY3MTMyRUM3MzcwMEJF
QUE5NiAvKiBXZWJJY29uRGF0YWJhc2VNZXNzYWdlcy5oICovOyB9OwogCQk1MUQwMkY2QjEzMkVD
NzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFEMDJGNjgxMzJF
QzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcCAq
LzsgfTsKIAkJNTFEMDJGNkMxMzJFQzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5
TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUxRDAyRjY5MTMyRUM3MzcwMEJFQUE5NiAvKiBXZWJJY29uRGF0YWJhc2VQcm94eU1lc3NhZ2Vz
LmggKi87IH07CisJCTU2QkM2RDc2MTM0MzlDOUMwMDZCRDdBMyAvKiBXS0FyZ3VtZW50RGVjb2Rl
ci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NkJD
NkQ3NTEzNDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29kZXIuY3BwICovOyB9OworCQk1
NkJDNkQ3ODEzNDM5RjA0MDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29kZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2QkM2RDc3MTM0MzlGMDQwMDZC
RDdBMyAvKiBXS0FyZ3VtZW50RGVjb2Rlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFB1YmxpYywgKTsgfTsgfTsKKwkJNTZCQzZEN0MxMzQzQjkyRTAwNkJEN0EzIC8qIFdLTWVzc2Fn
ZUlELmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NkJD
NkQ3QjEzNDNCOTJFMDA2QkQ3QTMgLyogV0tNZXNzYWdlSUQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CisJCTU2Q0U3MTRCMTMzM0JBQjEwMDQ5RDg5RSAv
KiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRBMTMzM0JBQjEwMDQ5RDg5RSAvKiBJbmplY3Rl
ZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLzsgfTsKKwkJNTZDRTcxNEQxMzMzQkFFRDAwNDlEODlF
IC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRDMTMzM0JBRUQwMDQ5RDg5RSAvKiBJbmplY3Rl
ZEJ1bmRsZUV2ZW50U2VuZGVyLmggKi87IH07CisJCTU2Q0U3MTRGMTMzM0JCMkEwMDQ5RDg5RSAv
KiBFdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRFMTMzM0JCMkEwMDQ5RDg5RSAvKiBFdmVudFNlbmRl
clByb3h5TWVzc2FnZXMuaCAqLzsgfTsKKwkJNTZDRTcxNUExMzMzQkJDMTAwNDlEODlFIC8qIFdL
QnVuZGxlRXZlbnRTZW5kZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTZDRTcxNTgxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5k
ZXIuY3BwICovOyB9OworCQk1NkNFNzE1QjEzMzNCQkMxMDA0OUQ4OUUgLyogV0tCdW5kbGVFdmVu
dFNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTZDRTcxNTkxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5kZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CisJCTU2RDAxREM4MTM0M0JD
NDQwMDk4REUwNiAvKiBXS0FycmF5LmggaW4gQ29weUZpbGVzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDNDA3NUQ4MTI0RkYwMjcwMDY4RjIwQSAvKiBXS0FycmF5LmggKi87
IH07CiAJCTY1MDFCRDFBMTJGMTI0MzQwMEU5RjI0OCAvKiBXS0J1bmRsZUluc3BlY3Rvci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NUI4NkYxNzEy
RjExRDdCMDBCN0REOEEgLyogV0tCdW5kbGVJbnNwZWN0b3IuY3BwICovOyB9OwogCQk2NTlDNTUx
RTEzMDAwNjQxMDAyNUMwQzIgLyogSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1NDZB
ODI5MTMwMDAxNjQwMDBDRUIxQyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGll
bnQuY3BwICovOyB9OwogCQk2NUI4NkYxRTEyRjExREUzMDBCN0REOEEgLyogV0tCdW5kbGVJbnNw
ZWN0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1
Qjg2RjE4MTJGMTFEN0IwMEI3REQ4QSAvKiBXS0J1bmRsZUluc3BlY3Rvci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKQEAgLTg2OCw2ICs4NzcsNyBAQAog
CQkJCTFBNTBEQjY2MTEwQTNENTcwMDBEM0ZFNSAvKiBXZWJQcm9jZXNzLmFwcCBpbiBDb3B5Rmls
ZXMgKi8sCiAJCQkJQkNERTBBQkYxMzI3MjcwODAwMTI1OUZCIC8qIFBsdWdpblByb2Nlc3MuYXBw
IGluIENvcHlGaWxlcyAqLywKIAkJCQlGNjM4OTU1MDEzM0JFRjM4MDA4OTQxRDUgLyogSFRUUENv
b2tpZUFjY2VwdFBvbGljeS5oIGluIENvcHlGaWxlcyAqLywKKwkJCQk1NkQwMURDODEzNDNCQzQ0
MDA5OERFMDYgLyogV0tBcnJheS5oIGluIENvcHlGaWxlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTEyNDIsNiArMTI1Miwx
NCBAQAogCQk1MUQwMkY2NzEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlTWVzc2Fn
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViSWNvbkRhdGFiYXNlTWVz
c2FnZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFEMDJGNjgxMzJFQzczNzAw
QkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkljb25EYXRhYmFzZVByb3h5TWVzc2Fn
ZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFEMDJGNjkxMzJF
QzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVzc2FnZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViSWNvbkRhdGFiYXNlUHJveHlNZXNzYWdlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NkJDNkQ3NTEzNDM5QzlDMDA2QkQ3QTMgLyog
V0tBcmd1bWVudERlY29kZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gV0tBcmd1bWVudERlY29kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
NkJDNkQ3NzEzNDM5RjA0MDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29kZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tBcmd1bWVudERlY29kZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTZCQzZEN0IxMzQzQjkyRTAwNkJEN0EzIC8qIFdLTWVzc2FnZUlE
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLTWVzc2FnZUlELmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTRBMTMzM0JBQjEwMDQ5RDg5RSAvKiBJbmpl
Y3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1NkNFNzE0QzEzMzNCQUVEMDA0OUQ4OUUgLyogSW5qZWN0ZWRCdW5kbGVFdmVu
dFNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmplY3RlZEJ1bmRs
ZUV2ZW50U2VuZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTRFMTMz
M0JCMkEwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRTZW5kZXJQcm94eU1lc3NhZ2VzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTU4MTMzM0JCQzEwMDQ5RDg5RSAvKiBXS0J1bmRs
ZUV2ZW50U2VuZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdL
QnVuZGxlRXZlbnRTZW5kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NkNF
NzE1OTEzMzNCQkMxMDA0OUQ4OUUgLyogV0tCdW5kbGVFdmVudFNlbmRlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZUV2ZW50U2VuZGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTVEQUQ3Mjk0MTE2RkY3MEIwMEVFNTM5NiAvKiBXZWJQcm9jZXNz
LnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFdlYlByb2Nlc3MueGNj
b25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVEQUQ3M0YxMTE2RkY5MEMwMEVF
NTM5NiAvKiBCYXNlVGFyZ2V0LnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0
aCA9IEJhc2VUYXJnZXQueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTY1
NDZBODI5MTMwMDAxNjQwMDBDRUIxQyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5qZWN0ZWRC
dW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTIwNDEsNiArMjA1OSw3IEBACiAJCQkJQkNFODFEOTcxMzFBRTAyMTAwMjQxOTEwIC8q
IERpY3Rpb25hcnlQb3B1cEluZm8uaCAqLywKIAkJCQlDNTE3Mzg4MDEyREY4RjRGMDBFRTNGNDcg
LyogRHJhZ0NvbnRyb2xsZXJBY3Rpb24uaCAqLywKIAkJCQkwRkI2NTkyMjEyMDhCNERCMDA0NDgx
NkMgLyogRHJhd2luZ0FyZWFJbmZvLmggKi8sCisJCQkJNTZDRTcxNEUxMzMzQkIyQTAwNDlEODlF
IC8qIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oICovLAogCQkJCTc2MkI3NDgxMTIwQkJBMDEw
MDgxOTMzOSAvKiBGb250U21vb3RoaW5nTGV2ZWwuaCAqLywKIAkJCQlGNjM4OTU0RjEzM0JFRjM4
MDA4OTQxRDUgLyogSFRUUENvb2tpZUFjY2VwdFBvbGljeS5oICovLAogCQkJCUJDQ0Y2QjIzMTJD
OTNFN0EwMDhGOUMzNSAvKiBJbWFnZU9wdGlvbnMuaCAqLywKQEAgLTI4MTAsNiArMjgyOSw4IEBA
CiAJCQkJOTM1RUVCOTIxMjc3NjE1RDAwMzMyMkI4IC8qIEluamVjdGVkQnVuZGxlQmFja0Zvcndh
cmRMaXN0SXRlbS5oICovLAogCQkJCUJDRUU3REM0MTI4QjY0NUQwMDk4MjdEQSAvKiBJbmplY3Rl
ZEJ1bmRsZUNsaWVudC5jcHAgKi8sCiAJCQkJQkNFRTdEQzMxMjhCNjQ1RDAwOTgyN0RBIC8qIElu
amVjdGVkQnVuZGxlQ2xpZW50LmggKi8sCisJCQkJNTZDRTcxNEExMzMzQkFCMTAwNDlEODlFIC8q
IEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwICovLAorCQkJCTU2Q0U3MTRDMTMzM0JBRUQw
MDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmggKi8sCiAJCQkJQkM0OTg2MTcx
MjREMTBFMjAwRDgzNEUxIC8qIEluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdC5jcHAgKi8sCiAJ
CQkJQkM0OTg2MTYxMjREMTBFMjAwRDgzNEUxIC8qIEluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3Vs
dC5oICovLAogCQkJCUJDODE0N0Q0MTJGNjZEMzEwMDdCMkMzMiAvKiBJbmplY3RlZEJ1bmRsZU5h
dmlnYXRpb25BY3Rpb24uY3BwICovLApAQCAtMjg2MSw2ICsyODgyLDggQEAKIAkJCQk5MzVFRUI5
NjEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCAqLywKIAkJCQk5
MzVFRUI5NzEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNw
cCAqLywKIAkJCQk5MzVFRUI5ODEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2Fy
ZExpc3RJdGVtLmggKi8sCisJCQkJNTZDRTcxNTgxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxl
RXZlbnRTZW5kZXIuY3BwICovLAorCQkJCTU2Q0U3MTU5MTMzM0JCQzEwMDQ5RDg5RSAvKiBXS0J1
bmRsZUV2ZW50U2VuZGVyLmggKi8sCiAJCQkJQkNEMjVGMTYxMUQ2QkRFMTAwMTY5QjBFIC8qIFdL
QnVuZGxlRnJhbWUuY3BwICovLAogCQkJCUJDRDI1RjE1MTFENkJERTEwMDE2OUIwRSAvKiBXS0J1
bmRsZUZyYW1lLmggKi8sCiAJCQkJQkNGMDQ5RTQxMUZFMjBGNjAwRjg2QTU4IC8qIFdLQnVuZGxl
RnJhbWVQcml2YXRlLmggKi8sCkBAIC0zMDQ2LDYgKzMwNjksOCBAQAogCQkJCUJDNDA3NUQ1MTI0
RkVGRkEwMDY4RjIwQSAvKiBjZiAqLywKIAkJCQlCQ0NGNkFDNDEyQzkxRjNCMDA4RjlDMzUgLyog
Y2cgKi8sCiAJCQkJQkM0MDc1RDYxMjRGRjAwMDAwNjhGMjBBIC8qIG1hYyAqLywKKwkJCQk1NkJD
NkQ3NTEzNDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29kZXIuY3BwICovLAorCQkJCTU2
QkM2RDc3MTM0MzlGMDQwMDZCRDdBMyAvKiBXS0FyZ3VtZW50RGVjb2Rlci5oICovLAogCQkJCUJD
NDA3NUQ3MTI0RkYwMjcwMDY4RjIwQSAvKiBXS0FycmF5LmNwcCAqLywKIAkJCQlCQzQwNzVEODEy
NEZGMDI3MDA2OEYyMEEgLyogV0tBcnJheS5oICovLAogCQkJCUJDRERCMzE2MTI0RUJEMTMwMDQ4
RDEzQyAvKiBXS0Jhc2UuaCAqLywKQEAgLTMwNjcsNiArMzA5Miw3IEBACiAJCQkJQkNBNTZBNjMx
MkY5QzhGOTAwQzU2NkM3IC8qIFdLR3JhcGhpY3NDb250ZXh0LmggKi8sCiAJCQkJQkNDRjZBQzAx
MkM5MUYzNDAwOEY5QzM1IC8qIFdLSW1hZ2UuY3BwICovLAogCQkJCUJDQ0Y2QUMxMTJDOTFGMzQw
MDhGOUMzNSAvKiBXS0ltYWdlLmggKi8sCisJCQkJNTZCQzZEN0IxMzQzQjkyRTAwNkJEN0EzIC8q
IFdLTWVzc2FnZUlELmggKi8sCiAJCQkJQkM0MDc1RTExMjRGRjAyNzAwNjhGMjBBIC8qIFdLTXV0
YWJsZUFycmF5LmNwcCAqLywKIAkJCQlCQzQwNzVFMjEyNEZGMDI3MDA2OEYyMEEgLyogV0tNdXRh
YmxlQXJyYXkuaCAqLywKIAkJCQlCQzQwNzVFMzEyNEZGMDI3MDA2OEYyMEEgLyogV0tNdXRhYmxl
RGljdGlvbmFyeS5jcHAgKi8sCkBAIC0zNjUzLDYgKzM2NzksMTEgQEAKIAkJCQlDMDY0NTA0QTEz
M0JFNzA5MDAzNDcwRTIgLyogTGF5ZXJUcmVlSG9zdENBLmggaW4gSGVhZGVycyAqLywKIAkJCQk1
MTEwQUUwRDEzM0MxNkNCMDA3MjcxN0EgLyogV0tJY29uRGF0YWJhc2UuaCBpbiBIZWFkZXJzICov
LAogCQkJCTUxMjNDRjFDMTMzRDI2MEEwMDU2RjgwMCAvKiBXS0ljb25EYXRhYmFzZUNHLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1NkNFNzE0RDEzMzNCQUVEMDA0OUQ4OUUgLyogSW5qZWN0ZWRCdW5k
bGVFdmVudFNlbmRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTZDRTcxNEYxMzMzQkIyQTAwNDlE
ODlFIC8qIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTZD
RTcxNUIxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5kZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTU2QkM2RDc4MTM0MzlGMDQwMDZCRDdBMyAvKiBXS0FyZ3VtZW50RGVjb2Rlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTZCQzZEN0MxMzQzQjkyRTAwNkJEN0EzIC8qIFdLTWVzc2Fn
ZUlELmggaW4gSGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rw
cm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTQyNzcsNiArNDMwOCw5IEBACiAJCQkJNTEyM0NGMUIx
MzNEMjYwQTAwNTZGODAwIC8qIFdLSWNvbkRhdGFiYXNlQ0cuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJRjZBOTA4MTMxMzNDMjA1MTAwODJDM0Y0IC8qIFdlYkNvb2tpZU1hbmFnZXJNYWMubW0gaW4g
U291cmNlcyAqLywKIAkJCQlGNkQ2MzJCQzEzM0QxOTgyMDA3NDNENzcgLyogV2ViQ29va2llTWFu
YWdlclByb3h5TWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTZDRTcxNEIxMzMzQkFCMTAwNDlE
ODlFIC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTZDRTcxNUExMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJNTZCQzZENzYxMzQzOUM5QzAwNkJEN0EzIC8qIFdLQXJndW1lbnREZWNv
ZGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9z
dHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAJKHJldmlz
aW9uIDgyNDM1KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9J
bmplY3RlZEJ1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lu
Y2x1ZGUgIkFyZ3VtZW50cy5oIgogI2luY2x1ZGUgIkltbXV0YWJsZUFycmF5LmgiCisjaW5jbHVk
ZSAiSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oIgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxl
TWVzc2FnZUtpbmRzLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZC5oIgog
I2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VDb2RlcnMuaCIKQEAgLTU3LDYgKzU4
LDkgQEAgSW5qZWN0ZWRCdW5kbGU6OkluamVjdGVkQnVuZGxlKGNvbnN0IFN0cgogICAgIDogbV9w
YXRoKHBhdGgpCiAgICAgLCBtX3BsYXRmb3JtQnVuZGxlKDApCiB7CisjaWYgUExBVEZPUk0oUVQp
CisgICAgbV9ldmVudFNlbmRlciA9IHRvQVBJKEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXI6OmNy
ZWF0ZSgpKTsKKyNlbmRpZgogICAgIGluaXRpYWxpemVDbGllbnQoMCk7CiB9CiAKSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlLmgJKHJldmlzaW9uIDgyNDM1KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
OCw2ICsyOCw3IEBACiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIKICNpbmNsdWRlICJJbmplY3Rl
ZEJ1bmRsZUNsaWVudC5oIgorI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuaCIK
ICNpbmNsdWRlICJTYW5kYm94RXh0ZW5zaW9uLmgiCiAjaW5jbHVkZSAiV0tCdW5kbGUuaCIKICNp
bmNsdWRlIDxXZWJDb3JlL1VzZXJDb250ZW50VHlwZXMuaD4KQEAgLTc4LDggKzc5LDkgQEAgcHVi
bGljOgogCiAgICAgLy8gQVBJCiAgICAgdm9pZCBpbml0aWFsaXplQ2xpZW50KFdLQnVuZGxlQ2xp
ZW50Kik7Ci0gICAgdm9pZCBwb3N0TWVzc2FnZShjb25zdCBTdHJpbmcmLCBBUElPYmplY3QqKTsK
KyAgICBzdGF0aWMgdm9pZCBwb3N0TWVzc2FnZShjb25zdCBTdHJpbmcmLCBBUElPYmplY3QqKTsK
ICAgICB2b2lkIHBvc3RTeW5jaHJvbm91c01lc3NhZ2UoY29uc3QgU3RyaW5nJiwgQVBJT2JqZWN0
KiwgUmVmUHRyPEFQSU9iamVjdD4mIHJldHVybkRhdGEpOworICAgIFdLQnVuZGxlRXZlbnRTZW5k
ZXJSZWYgZXZlbnRTZW5kZXIoKSBjb25zdCB7IHJldHVybiBtX2V2ZW50U2VuZGVyOyB9CiAjaWYg
UExBVEZPUk0oV0lOKQogICAgIHZvaWQgc2V0SG9zdEFsbG93c0FueUhUVFBTQ2VydGlmaWNhdGUo
Y29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBzZXRDbGllbnRDZXJ0aWZpY2F0ZShjb25zdCBTdHJp
bmcmLCBjb25zdCBXZWJDZXJ0aWZpY2F0ZUluZm8qKTsKQEAgLTEyNCw2ICsxMjYsNyBAQCBwcml2
YXRlOgogICAgIFN0cmluZyBtX3BhdGg7CiAgICAgUGxhdGZvcm1CdW5kbGUgbV9wbGF0Zm9ybUJ1
bmRsZTsgLy8gVGhpcyBpcyBsZWFrZWQgcmlnaHQgbm93LCBzaW5jZSB3ZSBuZXZlciB1bmxvYWQg
dGhlIGJ1bmRsZS9tb2R1bGUuCiAKKyAgICBXS0J1bmRsZUV2ZW50U2VuZGVyUmVmIG1fZXZlbnRT
ZW5kZXI7CiAgICAgUmVmUHRyPFNhbmRib3hFeHRlbnNpb24+IG1fc2FuZGJveEV4dGVuc2lvbjsK
IAogICAgIEluamVjdGVkQnVuZGxlQ2xpZW50IG1fY2xpZW50OwpJbmRleDogU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVy
LmNwcAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZUV2ZW50U2Vu
ZGVyLmgiCisKKyNpbmNsdWRlICJBUElPYmplY3QuaCIKKyNpbmNsdWRlICJBcmd1bWVudENvZGVy
cy5oIgorI2luY2x1ZGUgIkV2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oIgorI2luY2x1ZGUgPElu
amVjdGVkQnVuZGxlLmg+CisjaW5jbHVkZSA8TWVzc2FnZUlELmg+CisjaW5jbHVkZSA8V0tTdHJp
bmcuaD4KKyNpbmNsdWRlIDxXZWJDb250ZXh0TWVzc2FnZUtpbmRzLmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9Vc2VyQ29udGVudFR5cGVzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyU2NyaXB0VHlw
ZXMuaD4KKyNpbmNsdWRlIDxXZWJEYXRhLmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFpblB0
ci5oPgorI2luY2x1ZGUgPFdlYlByb2Nlc3MuaD4KKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsK
KworSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlciogSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcjo6
Y3JlYXRlKCkKK3sKKyAgICByZXR1cm4gbmV3IEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIoKTsK
K30KKworSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcjo6SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRl
cigpCit7Cit9CisKK0luamVjdGVkQnVuZGxlRXZlbnRTZW5kZXI6On5JbmplY3RlZEJ1bmRsZUV2
ZW50U2VuZGVyKCkKK3sKK30KKwordm9pZCBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyOjprZXlE
b3duKGNvbnN0IFN0cmluZyYga2V5LCB1bnNpZ25lZCBpbnQgbW9kaWYsIHVuc2lnbmVkIGludCBs
b2NhdGlvbikKK3sKKyAgICBPd25QdHI8Q29yZUlQQzo6QXJndW1lbnRFbmNvZGVyPiBhcmd1bWVu
dEVuY29kZXIgPSBDb3JlSVBDOjpBcmd1bWVudEVuY29kZXI6OmNyZWF0ZSgwKTsKKyAgICBhcmd1
bWVudEVuY29kZXItPmVuY29kZShNZXNzYWdlczo6RXZlbnRTZW5kZXJQcm94eTo6S2V5RG93bihr
ZXksIG1vZGlmLCBsb2NhdGlvbikpOworICAgIFJlZlB0cjxXZWJEYXRhPiB3ZWJEYXRhID0gV2Vi
RGF0YTo6Y3JlYXRlKGFyZ3VtZW50RW5jb2Rlci0+YnVmZmVyKCksIGFyZ3VtZW50RW5jb2Rlci0+
YnVmZmVyU2l6ZSgpKTsKKyAgICBJbmplY3RlZEJ1bmRsZTo6cG9zdE1lc3NhZ2UoIkV2ZW50U2Vu
ZGVyIiwgd2ViRGF0YS5yZWxlYXNlKCkuZ2V0KCkpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKwpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmgJKHJldmlz
aW9uIDApCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlRXZlbnRTZW5kZXIuaAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0OSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRp
YXJ5KC1pZXMpCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
KyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcl9o
CisjZGVmaW5lIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXJfaAorCisjaW5jbHVkZSAiQVBJT2Jq
ZWN0LmgiCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9X
VEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEluamVjdGVkQnVuZGxl
RXZlbnRTZW5kZXIgeworcHVibGljOgorICAgIHN0YXRpYyBJbmplY3RlZEJ1bmRsZUV2ZW50U2Vu
ZGVyKiBjcmVhdGUoKTsKKyAgICB+SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcigpOworCisgICAg
dm9pZCBrZXlEb3duKGNvbnN0IFN0cmluZyYga2V5LCB1bnNpZ25lZCBpbnQgbW9kaWYsIHVuc2ln
bmVkIGludCBsb2NhdGlvbik7CisKK3ByaXZhdGU6CisgICAgSW5qZWN0ZWRCdW5kbGVFdmVudFNl
bmRlcigpOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRpZiAvLyBJbmplY3Rl
ZEJ1bmRsZUV2ZW50U2VuZGVyX2gKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVVc2VyTWVzc2FnZUNvZGVycy5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGVVc2VyTWVzc2FnZUNvZGVycy5oCShyZXZpc2lvbiA4MjQzNSkKKysrIFNvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVVc2VyTWVzc2FnZUNvZGVy
cy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw2ICsyNyw3IEBACiAjZGVmaW5lIEluamVjdGVkQnVu
ZGxlVXNlck1lc3NhZ2VDb2RlcnNfaAogCiAjaW5jbHVkZSAiVXNlck1lc3NhZ2VDb2RlcnMuaCIK
KyNpbmNsdWRlICJXZWJEYXRhLmgiCiAjaW5jbHVkZSAiV2ViRnJhbWUuaCIKICNpbmNsdWRlICJX
ZWJQYWdlLmgiCiAjaW5jbHVkZSAiV2ViUGFnZUdyb3VwRGF0YS5oIgpAQCAtNzEsNiArNzIsMTEg
QEAgcHVibGljOgogICAgICAgICAgICAgZW5jb2Rlci0+ZW5jb2RlKHBhZ2VHcm91cC0+cGFnZUdy
b3VwSUQoKSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQorICAgICAgICBjYXNlIEFQ
SU9iamVjdDo6VHlwZURhdGE6IHsKKyAgICAgICAgICAgIFdlYkRhdGEqIHdlYkRhdGEgPSBzdGF0
aWNfY2FzdDxXZWJEYXRhKj4obV9yb290KTsKKyAgICAgICAgICAgIGVuY29kZXItPmVuY29kZUJ5
dGVzKHdlYkRhdGEtPmJ5dGVzKCksIHdlYkRhdGEtPnNpemUoKSk7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgfQogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CiAgICAgICAgICAgICBicmVhazsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGUuY3Bw
CShyZXZpc2lvbiA4MjQzNSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL2MvV0tCdW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw2ICs0NSwxMSBA
QCB2b2lkIFdLQnVuZGxlU2V0Q2xpZW50KFdLQnVuZGxlUmVmIGJ1bmRsCiAgICAgdG9JbXBsKGJ1
bmRsZVJlZiktPmluaXRpYWxpemVDbGllbnQod2tDbGllbnQpOwogfQogCitXS0J1bmRsZUV2ZW50
U2VuZGVyUmVmIFdLQnVuZGxlR2V0RXZlbnRTZW5kZXIoV0tCdW5kbGVSZWYgYnVuZGxlUmVmKQor
eworICAgIHJldHVybiB0b0ltcGwoYnVuZGxlUmVmKS0+ZXZlbnRTZW5kZXIoKTsKK30KKwogdm9p
ZCBXS0J1bmRsZVBvc3RNZXNzYWdlKFdLQnVuZGxlUmVmIGJ1bmRsZVJlZiwgV0tTdHJpbmdSZWYg
bWVzc2FnZU5hbWVSZWYsIFdLVHlwZVJlZiBtZXNzYWdlQm9keVJlZikKIHsKICAgICB0b0ltcGwo
YnVuZGxlUmVmKS0+cG9zdE1lc3NhZ2UodG9JbXBsKG1lc3NhZ2VOYW1lUmVmKS0+c3RyaW5nKCks
IHRvSW1wbChtZXNzYWdlQm9keVJlZikpOwpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGUuaAkocmV2aXNp
b24gODI0MzUpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQ
SS9jL1dLQnVuZGxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTUxLDYgKzUxLDggQEAgdHlwZWRlZiBz
dHJ1Y3QgV0tCdW5kbGVDbGllbnQgV0tCdW5kbGVDbAogCiBXS19FWFBPUlQgV0tUeXBlSUQgV0tC
dW5kbGVHZXRUeXBlSUQoKTsKIAorV0tfRVhQT1JUIFdLQnVuZGxlRXZlbnRTZW5kZXJSZWYgV0tC
dW5kbGVHZXRFdmVudFNlbmRlcihXS0J1bmRsZVJlZiBidW5kbGVSZWYpOworCiBXS19FWFBPUlQg
dm9pZCBXS0J1bmRsZVNldENsaWVudChXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlQ2xpZW50
ICogY2xpZW50KTsKIAogV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVQb3N0TWVzc2FnZShXS0J1bmRs
ZVJlZiBidW5kbGUsIFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lLCBXS1R5cGVSZWYgbWVzc2FnZUJv
ZHkpOwpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Yy9XS0J1bmRsZUFQSUNhc3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlQVBJQ2FzdC5oCShyZXZpc2lvbiA4MjQz
NSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tC
dW5kbGVBUElDYXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDcgQEAgbmFtZXNwYWNl
IFdlYktpdCB7CiBjbGFzcyBJbmplY3RlZEJ1bmRsZTsKIGNsYXNzIEluamVjdGVkQnVuZGxlQmFj
a0ZvcndhcmRMaXN0OwogY2xhc3MgSW5qZWN0ZWRCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtOwor
Y2xhc3MgSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcjsKIGNsYXNzIEluamVjdGVkQnVuZGxlSGl0
VGVzdFJlc3VsdDsKIGNsYXNzIEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbjsKIGNsYXNz
IEluamVjdGVkQnVuZGxlTm9kZUhhbmRsZTsKQEAgLTU4LDYgKzU5LDcgQEAgY2xhc3MgV2ViUGFn
ZUdyb3VwUHJveHk7CiBXS19BRERfQVBJX01BUFBJTkcoV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJ
dGVtUmVmLCBJbmplY3RlZEJ1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0pCiBXS19BRERfQVBJX01B
UFBJTkcoV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RSZWYsIEluamVjdGVkQnVuZGxlQmFja0Zvcndh
cmRMaXN0KQogV0tfQUREX0FQSV9NQVBQSU5HKFdLQnVuZGxlQ1NTU3R5bGVEZWNsYXJhdGlvblJl
ZiwgV2ViQ29yZTo6Q1NTU3R5bGVEZWNsYXJhdGlvbikKK1dLX0FERF9BUElfTUFQUElORyhXS0J1
bmRsZUV2ZW50U2VuZGVyUmVmLCBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyKQogV0tfQUREX0FQ
SV9NQVBQSU5HKFdLQnVuZGxlRnJhbWVSZWYsIFdlYkZyYW1lKQogV0tfQUREX0FQSV9NQVBQSU5H
KFdLQnVuZGxlSGl0VGVzdFJlc3VsdFJlZiwgSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UmVzdWx0KQog
V0tfQUREX0FQSV9NQVBQSU5HKFdLQnVuZGxlSW5zcGVjdG9yUmVmLCBXZWJJbnNwZWN0b3IpCklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVu
ZGxlRXZlbnRTZW5kZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVFdmVudFNlbmRlci5jcHAJKHJldmlzaW9u
IDApCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dL
QnVuZGxlRXZlbnRTZW5kZXIuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM5IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlh
cnkoLWllcykKKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
KyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgor
ICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAq
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldLQnVu
ZGxlRXZlbnRTZW5kZXIuaCIKKworI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIu
aCIKKyNpbmNsdWRlICJXS0J1bmRsZUFQSUNhc3QuaCIKKwordXNpbmcgbmFtZXNwYWNlIFdlYktp
dDsKKwordm9pZCBXS0J1bmRsZUV2ZW50U2VuZGVyS2V5RG93bihXS0J1bmRsZUV2ZW50U2VuZGVy
UmVmIGV2ZW50U2VuZGVyUmVmLCBXS1N0cmluZ1JlZiBrZXlSZWYsIHVpbnQzMl90IG1vZGlmLCB1
aW50MzJfdCBsb2NhdGlvbikKK3sKKyAgICB0b0ltcGwoZXZlbnRTZW5kZXJSZWYpLT5rZXlEb3du
KHRvSW1wbChrZXlSZWYpLT5zdHJpbmcoKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQgaW50Pih0b0lt
cGwobW9kaWYpKSwgdG9JbXBsKGxvY2F0aW9uKSk7Cit9CisKSW5kZXg6IFNvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVFdmVudFNlbmRlci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJ
L2MvV0tCdW5kbGVFdmVudFNlbmRlci5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUV2ZW50U2VuZGVyLmgJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNDQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIFdLQnVuZGxlRXZlbnRTZW5kZXJfaAorI2RlZmluZSBXS0J1bmRsZUV2ZW50U2VuZGVyX2gK
KworI2luY2x1ZGUgPFdlYktpdDIvV0tCYXNlLmg+CisKKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0
ZXJuICJDIiB7CisjZW5kaWYKKworV0tfRVhQT1JUIFdLVHlwZUlEIFdLQnVuZGxlRXZlbnRTZW5k
ZXJHZXRUeXBlSUQoKTsKKworV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVFdmVudFNlbmRlcktleURv
d24oV0tCdW5kbGVFdmVudFNlbmRlclJlZiBldmVudFNlbmRlclJlZiwgV0tTdHJpbmdSZWYga2V5
UmVmLCB1aW50MzJfdCBtb2RpZiwgdWludDMyX3QgbG9jYXRpb24pOworCisjaWZkZWYgX19jcGx1
c3BsdXMKK30KKyNlbmRpZgorCisjZW5kaWYgLy8gV0tCdW5kbGVFdmVudFNlbmRlcl9oCkluZGV4
OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lv
biA4MjU4MikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMz
IEBACisyMDExLTAzLTMxICBDaGFuZyBTaHUgIDxjc2h1QHdlYmtpdC5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW01hY10gW1dLMl0gSW1wbGVt
ZW50IEtleURvd24gZnVuY3Rpb24gZm9yIFdlYktpdDIgRXZlbnRTZW5kZXIuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzUxNQorCisgICAgICAgIFRo
ZSBmb2xsb3dpbmcgY29kZSBjaGFuZ2UgYnVpbGRzIHVwIHRoZSBpbmZyYXN0cnVjdHVyZSBmb3IK
KyAgICAgICAgV2ViS2l0VGVzdFJ1bm5lciBFdmVudFNlbmRlciB0byBzZW5kIG1lc3NhZ2VzIGZy
b20gdGhlIEluamVjdGVkQnVuZGxlCisgICAgICAgIGluIFdlYlByb2Nlc3MgdG8gVUlQcm9jZXNz
IG9mIFdlYktpdFRlc3RSdW5uZXIuCisKKyAgICAgICAgVGhlIGJhc2ljIEtleURvd24gZnVuY3Rp
b25hbGl0eSBpcyBpbXBsZW1lbnRlZCBleGNlcHQgdGhlIGxvY2FsIGltcGxlbWVudGF0aW9uLgor
CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5LmNwcDogQWRkZWQu
CisgICAgICAgIChXVFI6OkV2ZW50U2VuZGVyUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXVFI6
OkV2ZW50U2VuZGVyUHJveHk6OkV2ZW50U2VuZGVyUHJveHkpOgorICAgICAgICAoV1RSOjpFdmVu
dFNlbmRlclByb3h5OjpkaWRSZWNlaXZlRXZlbnRTZW5kZXJQcm94eU1lc3NhZ2UpOgorICAgICAg
ICAqIFdlYktpdFRlc3RSdW5uZXIvRXZlbnRTZW5kZXJQcm94eS5oOiBBZGRlZC4KKyAgICAgICAg
KiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAoV1RSOjpFdmVudFNlbmRpbmdDb250cm9sbGVyOjprZXlEb3duKToKKyAg
ICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmg6
CisgICAgICAgIChXVFI6OkluamVjdGVkQnVuZGxlOjpldmVudFNlbmRlcik6CisgICAgICAgICog
V2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RD
b250cm9sbGVyOjpUZXN0Q29udHJvbGxlcik6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVy
OjpkaWRSZWNlaXZlTWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogV2ViS2l0
VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
V2ViS2l0VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFdl
YktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyLmg6IEFkZGVkLgorICAgICAgICAqIFdlYktp
dFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyTWFjLm1tOiBBZGRlZC4KKwogMjAxMS0wMy0zMSAg
VmFtc2hpa3Jpc2huYS5ZZWxsZW5raSAgPHZhbXNoaUBtb3Rvcm9sYS5jb20+IGFuZCBBbGVqYW5k
cm8gRy4gQ2FzdHJvICA8YWxleEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1h
cnRpbiBSb2JpbnNvbi4KSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvRXZlbnRTZW5kZXJQ
cm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRl
clByb3h5LmNwcAkocmV2aXNpb24gMCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvRXZlbnRT
ZW5kZXJQcm94eS5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjYgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVz
KQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRXZlbnRTZW5kZXJQ
cm94eS5oIgorCisjaW5jbHVkZSA8V2ViS2l0Mi9XS0FyZ3VtZW50RGVjb2Rlci5oPgorI2luY2x1
ZGUgPFdlYktpdDIvV0tBcnJheS5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tNZXNzYWdlSUQuaD4K
KworbmFtZXNwYWNlIFdUUiB7CisKK0V2ZW50U2VuZGVyUHJveHkqIEV2ZW50U2VuZGVyUHJveHk6
OmNyZWF0ZShUZXN0Q29udHJvbGxlciogdGVzdENvbnRyb2xsZXIpCit7CisgICAgcmV0dXJuIG5l
dyBFdmVudFNlbmRlclByb3h5KHRlc3RDb250cm9sbGVyKTsKK30KKworRXZlbnRTZW5kZXJQcm94
eTo6RXZlbnRTZW5kZXJQcm94eShUZXN0Q29udHJvbGxlciogdGVzdENvbnRyb2xsZXIpCisgICAg
OiBtX3Rlc3RDb250cm9sbGVyKHRlc3RDb250cm9sbGVyKQoreworLy8gVE9ETyAgICBtX2V2ZW50
U2VuZGVyID0gbmV3IEV2ZW50U2VuZGVyKCk7Cit9OworCit2b2lkIEV2ZW50U2VuZGVyUHJveHk6
OmRpZFJlY2VpdmVFdmVudFNlbmRlclByb3h5TWVzc2FnZShXS0RhdGFSZWYgd2ViRGF0YSkKK3sK
KyAgICBXS0FyZ3VtZW50RGVjb2RlclJlZiBhcmd1bWVudERlY29kZXJSZWYgPSBXS0NyZWF0ZUFy
Z3VtZW50RGVjb2RlcihXS0RhdGFHZXRCeXRlcyh3ZWJEYXRhKSwgV0tEYXRhR2V0U2l6ZSh3ZWJE
YXRhKSk7CisgICAgdWludDMyX3QgbWVzc2FnZUlEVWludDMyOworICAgIGlmICghV0tEZWNvZGVV
SW50MzIoYXJndW1lbnREZWNvZGVyUmVmLCBtZXNzYWdlSURVaW50MzIpKQorICAgICAgICByZXR1
cm47CisgICAgc3dpdGNoIChzdGF0aWNfY2FzdDxNZXNzYWdlczo6RXZlbnRTZW5kZXJQcm94eTo6
S2luZD4obWVzc2FnZUlEVWludDMyKSkgeworICAgIGNhc2UgTWVzc2FnZXM6OkV2ZW50U2VuZGVy
UHJveHk6OktleURvd25JRDoKKyAgICAgICAgV0tTdHJpbmdSZWYga2V5OworICAgICAgICB1aW50
MzJfdCBtb2RpZmllcnM7CisgICAgICAgIHVpbnQzMl90IGxvY2F0aW9uOworICAgICAgICBpZiAo
V0tEZWNvZGVTdHJpbmcoYXJndW1lbnREZWNvZGVyUmVmLCBrZXkpICYmIFdLRGVjb2RlVUludDMy
KGFyZ3VtZW50RGVjb2RlclJlZiwgbW9kaWZpZXJzKSAmJiBXS0RlY29kZVVJbnQzMihhcmd1bWVu
dERlY29kZXJSZWYsIGxvY2F0aW9uKSkKKyAgICAgICAgICAgIGZwdXRzKCJJbXBsZW1lbnQga2V5
RG93biBpbiBXVFIuXG4iLCBzdGRlcnIpOyAvLyBUT0RPIG1fZXZlbnRTZW5kZXItPmtleURvd24o
a2V5LCBtb2RpZmllcnMsIGxvY2F0aW9uKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoK
KyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgfQorfQorCit9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvRXZlbnRTZW5kZXJQcm94eS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvRXZlbnRTZW5kZXJQcm94eS5o
CShyZXZpc2lvbiAwKQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5
LmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEx
IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaWZuZGVmIEV2ZW50U2VuZGVyUHJveHlfaAorI2RlZmluZSBFdmVudFNlbmRlclByb3h5X2gK
KworI2luY2x1ZGUgIkV2ZW50U2VuZGVyLmgiCisjaW5jbHVkZSAiVGVzdENvbnRyb2xsZXIuaCIK
KyNpbmNsdWRlICJXZWJLaXQyL1dLU3RyaW5nLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7
CisKK25hbWVzcGFjZSBXVFIgeworCitjbGFzcyBFdmVudFNlbmRlclByb3h5IHsKK3B1YmxpYzoK
KworICAgIHN0YXRpYyBFdmVudFNlbmRlclByb3h5KiBjcmVhdGUoVGVzdENvbnRyb2xsZXIqKTsK
KworICAgIHZvaWQgZGlkUmVjZWl2ZUV2ZW50U2VuZGVyUHJveHlNZXNzYWdlKFdLRGF0YVJlZik7
CisKK3ByaXZhdGU6CisgICAgRXZlbnRTZW5kZXJQcm94eShUZXN0Q29udHJvbGxlciopOworCisg
ICAgVGVzdENvbnRyb2xsZXIqIG1fdGVzdENvbnRyb2xsZXI7CisvLyBUT0RPICAgIEV2ZW50U2Vu
ZGVyKiBtX2V2ZW50U2VuZGVyOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRp
ZiAvLyBXZWJQYWdlUHJveHlfaApJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29u
dHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29u
dHJvbGxlci5jcHAJKHJldmlzaW9uIDgyNDM1KQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9U
ZXN0Q29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNpbmNsdWRlICJUZXN0Q29udHJvbGxlci5oIgogCisjaW5jbHVkZSA8
RXZlbnRTZW5kZXJQcm94eS5oPgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1
ZGUgIlN0cmluZ0Z1bmN0aW9ucy5oIgogI2luY2x1ZGUgIlRlc3RJbnZvY2F0aW9uLmgiCkBAIC02
Niw2ICs2Nyw3IEBAIFRlc3RDb250cm9sbGVyOjpUZXN0Q29udHJvbGxlcihpbnQgYXJnYywKICAg
ICAsIG1fc2hvcnRUaW1lb3V0KGRlZmF1bHRTaG9ydFRpbWVvdXQpCiAgICAgLCBtX2RpZFByaW50
V2ViUHJvY2Vzc0NyYXNoZWRNZXNzYWdlKGZhbHNlKQogICAgICwgbV9zaG91bGRFeGl0V2hlbldl
YlByb2Nlc3NDcmFzaGVzKHRydWUpCisgICAgLCBtX2V2ZW50U2VuZGVyUHJveHkoRXZlbnRTZW5k
ZXJQcm94eTo6Y3JlYXRlKHRoaXMpKQogewogICAgIGluaXRpYWxpemUoYXJnYywgYXJndik7CiAg
ICAgY29udHJvbGxlciA9IHRoaXM7CkBAIC00NTgsNiArNDYwLDEyIEBAIHZvaWQgVGVzdENvbnRy
b2xsZXI6OmRpZFJlY2VpdmVTeW5jaHJvbm8KIAogdm9pZCBUZXN0Q29udHJvbGxlcjo6ZGlkUmVj
ZWl2ZU1lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5kbGUoV0tTdHJpbmdSZWYgbWVzc2FnZU5hbWUsIFdL
VHlwZVJlZiBtZXNzYWdlQm9keSkKIHsKKyAgICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0
cmluZyhtZXNzYWdlTmFtZSwgIkV2ZW50U2VuZGVyIikpIHsKKyAgICAgICAgQVNTRVJUKFdLR2V0
VHlwZUlEKG1lc3NhZ2VCb2R5KSA9PSBXS0RhdGFHZXRUeXBlSUQoKSk7CisgICAgICAgIG1fZXZl
bnRTZW5kZXJQcm94eS0+ZGlkUmVjZWl2ZUV2ZW50U2VuZGVyUHJveHlNZXNzYWdlKHN0YXRpY19j
YXN0PFdLRGF0YVJlZj4obWVzc2FnZUJvZHkpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwog
ICAgIGlmICghbV9jdXJyZW50SW52b2NhdGlvbikKICAgICAgICAgcmV0dXJuOwogICAgIG1fY3Vy
cmVudEludm9jYXRpb24tPmRpZFJlY2VpdmVNZXNzYWdlRnJvbUluamVjdGVkQnVuZGxlKG1lc3Nh
Z2VOYW1lLCBtZXNzYWdlQm9keSk7CkluZGV4OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RD
b250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29u
dHJvbGxlci5oCShyZXZpc2lvbiA4MjQzNSkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVz
dENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMzUsNiArMzUsNyBAQCBuYW1lc3BhY2Ug
V1RSIHsKIAogY2xhc3MgVGVzdEludm9jYXRpb247CiBjbGFzcyBQbGF0Zm9ybVdlYlZpZXc7Citj
bGFzcyBFdmVudFNlbmRlclByb3h5OwogCiAvLyBGSVhNRTogUmVuYW1lIHRoaXMgVGVzdFJ1bm5l
cj8KIGNsYXNzIFRlc3RDb250cm9sbGVyIHsKQEAgLTEyMCw2ICsxMjEsOCBAQCBwcml2YXRlOgog
CiAgICAgYm9vbCBtX2RpZFByaW50V2ViUHJvY2Vzc0NyYXNoZWRNZXNzYWdlOwogICAgIGJvb2wg
bV9zaG91bGRFeGl0V2hlbldlYlByb2Nlc3NDcmFzaGVzOworCisgICAgRXZlbnRTZW5kZXJQcm94
eSogbV9ldmVudFNlbmRlclByb3h5OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RSCkluZGV4OiBU
b29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xs
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5k
bGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAJKHJldmlzaW9uIDgyNDM1KQorKysgVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250cm9sbGVyLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksOCBAQAogI2luY2x1ZGUgIkluamVjdGVkQnVu
ZGxlLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlLmgiCiAjaW5jbHVkZSAiSlNFdmVu
dFNlbmRpbmdDb250cm9sbGVyLmgiCisjaW5jbHVkZSAiU3RyaW5nRnVuY3Rpb25zLmgiCisjaW5j
bHVkZSA8V2ViS2l0Mi9XS0J1bmRsZUV2ZW50U2VuZGVyLmg+CiAjaW5jbHVkZSA8V2ViS2l0Mi9X
S0J1bmRsZVBhZ2UuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlUGFnZVByaXZhdGUuaD4K
ICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlUHJpdmF0ZS5oPgpAQCAtNzgsNyArODAsMzcgQEAg
dm9pZCBFdmVudFNlbmRpbmdDb250cm9sbGVyOjptb3VzZU1vdmVUbwogCiB2b2lkIEV2ZW50U2Vu
ZGluZ0NvbnRyb2xsZXI6OmtleURvd24oSlNDb250ZXh0UmVmIGNvbnRleHQsIHNpemVfdCBhcmd1
bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNl
cHRpb24pCiB7CisjaWYgUExBVEZPUk0oTUFDKQorICAgIGlmICghSlNWYWx1ZUlzU3RyaW5nKGNv
bnRleHQsIGFyZ3VtZW50c1swXSkpCisgICAgICAgIHJldHVybjsKKyAgICBKU1JldGFpblB0cjxK
U1N0cmluZ1JlZj4ganNLZXlTdHJSZWYgPSBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4oQWRvcHQs
IEpTVmFsdWVUb1N0cmluZ0NvcHkoY29udGV4dCwgYXJndW1lbnRzWzBdLCAwKSk7CisgICAgCisg
ICAgdW5zaWduZWQgaW50IG1vZGlmID0gMDsKKyAgICBpZiAoSlNWYWx1ZUlzT2JqZWN0KGNvbnRl
eHQsIGFyZ3VtZW50c1sxXSkpIHsKKyAgICAgICAgSlNPYmplY3RSZWYgbW9kaWZPYmpSZWYgPSBK
U1ZhbHVlVG9PYmplY3QoY29udGV4dCwgYXJndW1lbnRzWzFdLCBleGNlcHRpb24pOworICAgICAg
ICBmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICAgICAgSlNWYWx1ZVJlZiBt
b2RpZlZhbHVlUmVmID0gSlNPYmplY3RHZXRQcm9wZXJ0eUF0SW5kZXgoY29udGV4dCwgbW9kaWZP
YmpSZWYsIGksIGV4Y2VwdGlvbik7CisgICAgICAgICAgICBpZiAoSlNWYWx1ZUlzU3RyaW5nKGNv
bnRleHQsIG1vZGlmVmFsdWVSZWYpKSB7CisgICAgICAgICAgICAgICAgSlNSZXRhaW5QdHI8SlNT
dHJpbmdSZWY+IGpzTW9kaWZTdHJSZWYgPSBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4oQWRvcHQs
IEpTVmFsdWVUb1N0cmluZ0NvcHkoY29udGV4dCwgbW9kaWZWYWx1ZVJlZiwgMCkpOworICAgICAg
ICAgICAgICAgIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGpzTW9kaWZTdHJSZWYu
Z2V0KCksICJjdHJsS2V5IikpCisgICAgICAgICAgICAgICAgICAgIG1vZGlmIHw9IGtXS0V2ZW50
TW9kaWZpZXJzQ29udHJvbEtleTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lz
RXF1YWxUb1VURjhDU3RyaW5nKGpzTW9kaWZTdHJSZWYuZ2V0KCksICJzaGlmdEtleSIpKQorICAg
ICAgICAgICAgICAgICAgICBtb2RpZiB8PSBrV0tFdmVudE1vZGlmaWVyc1NoaWZ0S2V5OworICAg
ICAgICAgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoanNNb2Rp
ZlN0clJlZi5nZXQoKSwgImFsdEtleSIpKQorICAgICAgICAgICAgICAgICAgICBtb2RpZiB8PSBr
V0tFdmVudE1vZGlmaWVyc0FsdEtleTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChKU1N0cmlu
Z0lzRXF1YWxUb1VURjhDU3RyaW5nKGpzTW9kaWZTdHJSZWYuZ2V0KCksICJtZXRhS2V5IikpCisg
ICAgICAgICAgICAgICAgICAgIG1vZGlmIHw9IGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtleTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICB1bnNpZ25lZCBpbnQgbG9jYXRpb24g
PSAwOworICAgIGlmIChKU1ZhbHVlSXNOdW1iZXIoY29udGV4dCwgYXJndW1lbnRzWzJdKSkKKyAg
ICAgICAgbG9jYXRpb24gPSBzdGF0aWNfY2FzdDx1bnNpZ25lZCBpbnQ+KEpTVmFsdWVUb051bWJl
cihjb250ZXh0LCBhcmd1bWVudHNbMl0sIGV4Y2VwdGlvbikpOworCisgICAgV0tCdW5kbGVFdmVu
dFNlbmRlcktleURvd24oSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLmV2ZW50U2VuZGVyKCksIHRv
V0soanNLZXlTdHJSZWYpLmdldCgpLCBtb2RpZiwgbG9jYXRpb24pOworI2Vsc2UKICAgICBzZXRF
eGNlcHRpb25Gb3JTdHJpbmcoY29udGV4dCwgZXhjZXB0aW9uLCAiRXZlbnRTZW5kZXIua2V5RG93
biBpcyBub3QgeWV0IHN1cHBvcnRlZC4iKTsKKyNlbmRpZgogfQogCiB2b2lkIEV2ZW50U2VuZGlu
Z0NvbnRyb2xsZXI6OmNvbnRleHRDbGljayhKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6ZV90IGFy
Z3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4
Y2VwdGlvbikKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5q
ZWN0ZWRCdW5kbGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmgJKHJldmlzaW9uIDgyNDM1KQorKysgVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiR0NDb250cm9sbGVyLmgiCiAjaW5jbHVk
ZSAiTGF5b3V0VGVzdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLQmFzZS5oPgor
I2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGUuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWlu
UHRyLmg+CiAjaW5jbHVkZSA8d3RmL093blB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4K
QEAgLTUxLDYgKzUyLDggQEAgcHVibGljOgogICAgIFdLQnVuZGxlUmVmIGJ1bmRsZSgpIGNvbnN0
IHsgcmV0dXJuIG1fYnVuZGxlOyB9CiAgICAgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3Vw
KCkgY29uc3QgeyByZXR1cm4gbV9wYWdlR3JvdXA7IH0KIAorICAgIFdLQnVuZGxlRXZlbnRTZW5k
ZXJSZWYgZXZlbnRTZW5kZXIoKSBjb25zdCB7IHJldHVybiBXS0J1bmRsZUdldEV2ZW50U2VuZGVy
KG1fYnVuZGxlKTsgfQorCiAgICAgTGF5b3V0VGVzdENvbnRyb2xsZXIqIGxheW91dFRlc3RDb250
cm9sbGVyKCkgeyByZXR1cm4gbV9sYXlvdXRUZXN0Q29udHJvbGxlci5nZXQoKTsgfQogICAgIEdD
Q29udHJvbGxlciogZ2NDb250cm9sbGVyKCkgeyByZXR1cm4gbV9nY0NvbnRyb2xsZXIuZ2V0KCk7
IH0KICAgICBFdmVudFNlbmRpbmdDb250cm9sbGVyKiBldmVudFNlbmRpbmdDb250cm9sbGVyKCkg
eyByZXR1cm4gbV9ldmVudFNlbmRpbmdDb250cm9sbGVyLmdldCgpOyB9CkluZGV4OiBUb29scy9X
ZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
ago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gODI0MzUpCisrKyBUb29scy9XZWJL
aXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagko
d29ya2luZyBjb3B5KQpAQCAtMjEsNiArMjEsOCBAQAogLyogRW5kIFBCWEFnZ3JlZ2F0ZVRhcmdl
dCBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWEJ1aWxkRmlsZSBzZWN0aW9uICovCisJCTU2MTc4
MTc2MTM0NENDM0IwMDdBOTBBOCAvKiBFdmVudFNlbmRlck1hYy5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2MTc4MTc1MTM0NENDM0IwMDdBOTBBOCAv
KiBFdmVudFNlbmRlck1hYy5tbSAqLzsgfTsKKwkJNTZDRTcxODAxMzMzQzcxNDAwNDlEODlFIC8q
IEV2ZW50U2VuZGVyUHJveHkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTZDRTcxN0UxMzMzQzcxNDAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHku
Y3BwICovOyB9OwogCQk2NTEwQTc4MjExRUM2NDM4MDA0MTA4NjcgLyogQUhFTV9fX18uVFRGIGlu
IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTEwQTc3NzEx
RUM2NDM4MDA0MTA4NjcgLyogQUhFTV9fX18uVFRGICovOyB9OwogCQk2NTEwQTc4MzExRUM2NDM4
MDA0MTA4NjcgLyogQ29sb3JCaXRzLnR0ZiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNjUxMEE3NzgxMUVDNjQzODAwNDEwODY3IC8qIENvbG9yQml0cy50
dGYgKi87IH07CiAJCTY1MTBBNzg0MTFFQzY0MzgwMDQxMDg2NyAvKiBXZWJLaXRXZWlnaHRXYXRj
aGVyMTAwLnR0ZiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNjUxMEE3NzkxMUVDNjQzODAwNDEwODY3IC8qIFdlYktpdFdlaWdodFdhdGNoZXIxMDAudHRm
ICovOyB9OwpAQCAtNzgsNiArODAsMTAgQEAKIAogLyogQmVnaW4gUEJYRmlsZVJlZmVyZW5jZSBz
ZWN0aW9uICovCiAJCTM3OEQ0NDIyMTMzNDZEMDAwMDZBNzc3QiAvKiBjb25maWcuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gY29uZmlnLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2MTc4MTc0
MTM0NENDMjgwMDdBOTBBOCAvKiBFdmVudFNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBFdmVudFNlbmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
NjE3ODE3NTEzNDRDQzNCMDA3QTkwQTggLyogRXZlbnRTZW5kZXJNYWMubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBFdmVudFNlbmRlck1hYy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTZDRTcxN0UxMzMzQzcxNDAwNDlEODlFIC8qIEV2ZW50U2Vu
ZGVyUHJveHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXZlbnRT
ZW5kZXJQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTdGMTMz
M0M3MTQwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEV2ZW50U2VuZGVyUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNjUxMEE3NzcxMUVDNjQzODAwNDEwODY3IC8qIEFIRU1fX19fLlRURiAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7IG5hbWUgPSAiQUhF
TV9fX18uVFRGIjsgcGF0aCA9ICJmb250cy9BSEVNX19fXy5UVEYiOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk2NTEwQTc3ODExRUM2NDM4MDA0MTA4NjcgLyogQ29sb3JCaXRzLnR0ZiAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7IG5h
bWUgPSBDb2xvckJpdHMudHRmOyBwYXRoID0gZm9udHMvQ29sb3JCaXRzLnR0Zjsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNjUxMEE3NzkxMUVDNjQzODAwNDEwODY3IC8qIFdlYktpdFdl
aWdodFdhdGNoZXIxMDAudHRmICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gZmlsZTsgbmFtZSA9IFdlYktpdFdlaWdodFdhdGNoZXIxMDAudHRmOyBwYXRo
ID0gZm9udHMvV2ViS2l0V2VpZ2h0V2F0Y2hlcjEwMC50dGY7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0xODUsNiArMTkxLDggQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJCUJDOTE5MjAy
MTMzM0U0Q0QwMDMwMTFEQyAvKiBjZyAqLywKIAkJCQlCQzc5MzNGRTExOEY3Qzc0MDA1RUE4RTIg
LyogbWFjICovLAorCQkJCTU2Q0U3MTdFMTMzM0M3MTQwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclBy
b3h5LmNwcCAqLywKKwkJCQk1NkNFNzE3RjEzMzNDNzE0MDA0OUQ4OUUgLyogRXZlbnRTZW5kZXJQ
cm94eS5oICovLAogCQkJCUJDMjUxQTE3MTFEMTY3NzQwMDJFQkMwMSAvKiBXZWJLaXRUZXN0UnVu
bmVyUHJlZml4LmggKi8sCiAJCQkJQkM3OTM0REQxMTkwNjZFQzAwNUVBOEUyIC8qIFBsYXRmb3Jt
V2ViVmlldy5oICovLAogCQkJCUJDNzkzNDJGMTE4RjdGMTkwMDVFQThFMiAvKiBUZXN0Q29udHJv
bGxlci5oICovLApAQCAtMjc2LDYgKzI4NCw4IEBACiAJCUJDNzkzM0ZFMTE4RjdDNzQwMDVFQThF
MiAvKiBtYWMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJ
CTU2MTc4MTc1MTM0NENDM0IwMDdBOTBBOCAvKiBFdmVudFNlbmRlck1hYy5tbSAqLywKKwkJCQk1
NjE3ODE3NDEzNDRDQzI4MDA3QTkwQTggLyogRXZlbnRTZW5kZXIuaCAqLywKIAkJCQlCQzc5MzNG
RjExOEY3Qzg0MDA1RUE4RTIgLyogbWFpbi5tbSAqLywKIAkJCQlCQzc5MzRFNzExOTA2ODQ2MDA1
RUE4RTIgLyogUGxhdGZvcm1XZWJWaWV3TWFjLm1tICovLAogCQkJCUJDOEM3OTVCMTFEMjc4NUQw
MDQ1MzVBMSAvKiBUZXN0Q29udHJvbGxlck1hYy5tbSAqLywKQEAgLTQ1Miw2ICs0NjIsOCBAQAog
CQkJCUJDRDdEMkY4MTE5MjEyNzgwMDZEQjdFRSAvKiBUZXN0SW52b2NhdGlvbi5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCQzhDNzk1QzExRDI3ODVEMDA0NTM1QTEgLyogVGVzdENvbnRyb2xsZXJN
YWMubW0gaW4gU291cmNlcyAqLywKIAkJCQlCQzkxOTIwNTEzMzNFNEY4MDAzMDExREMgLyogVGVz
dEludm9jYXRpb25DRy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1NkNFNzE4MDEzMzNDNzE0MDA0
OUQ4OUUgLyogRXZlbnRTZW5kZXJQcm94eS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1NjE3ODE3
NjEzNDRDQzNCMDA3QTkwQTggLyogRXZlbnRTZW5kZXJNYWMubW0gaW4gU291cmNlcyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5k
ZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXIuaAkocmV2aXNpb24gMCkK
KysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyLmgJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4gCisgKiAzLiAgTmVpdGhlciB0
aGUgbmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBv
ZgorICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBz
cGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIAorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5Z
CisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
CisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZiAwIC8vIFRPRE8KKyNpbXBvcnQgPENvY29hL0NvY29h
Lmg+CisjaW1wb3J0IDxXZWJLaXQvV2ViS2l0Lmg+CisKK0BpbnRlcmZhY2UgRXZlbnRTZW5kZXIg
OiBOU09iamVjdCA8RE9NRXZlbnRMaXN0ZW5lcj4geworICAgIEJPT0wgbGVmdE1vdXNlQnV0dG9u
RG93bjsKKyAgICBCT09MIGRyYWdNb2RlOworICAgIGludCBjbGlja0NvdW50OworICAgIE5TVGlt
ZUludGVydmFsIGxhc3RDbGljazsKKyAgICBpbnQgZXZlbnROdW1iZXI7CisgICAgZG91YmxlIHRp
bWVPZmZzZXQ7Cit9CisKKysgKHZvaWQpc2F2ZUV2ZW50OihOU0ludm9jYXRpb24gKilldmVudDsK
KysgKHZvaWQpcmVwbGF5U2F2ZWRFdmVudHM7CisrICh2b2lkKWNsZWFyU2F2ZWRFdmVudHM7CisK
Ky0gKHZvaWQpc2NoZWR1bGVBc3luY2hyb25vdXNDbGljazsKKworLSAodm9pZCllbmFibGVET01V
SUV2ZW50TG9nZ2luZzooV2ViU2NyaXB0T2JqZWN0ICopbm9kZTsKKworLSAodm9pZCloYW5kbGVF
dmVudDooRE9NRXZlbnQgKilldmVudDsKKworQGVuZAorCitleHRlcm4gTlNQb2ludCBsYXN0TW91
c2VQb3NpdGlvbjsKK2V4dGVybiBOU1BvaW50IGxhc3RDbGlja1Bvc2l0aW9uOworI2VuZGlmCklu
ZGV4OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlck1hYy5tbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlck1hYy5tbQkocmV2
aXNpb24gMCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyTWFjLm1t
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDg2NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
MSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKKyAq
IDMuICBOZWl0aGVyIHRoZSBuYW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBu
b3IgdGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAgIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAi
QVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmIDAKKyNpbXBvcnQgImNvbmZp
Zy5oIgorI2ltcG9ydCAiRXZlbnRTZW5kZXIuaCIKKworI2ltcG9ydCAiRHVtcFJlbmRlclRyZWUu
aCIKKyNpbXBvcnQgIkR1bXBSZW5kZXJUcmVlRHJhZ2dpbmdJbmZvLmgiCisjaW1wb3J0ICJEdW1w
UmVuZGVyVHJlZUZpbGVEcmFnZ2luZ1NvdXJjZS5oIgorCisjaW1wb3J0IDxDYXJib24vQ2FyYm9u
Lmg+ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZm9yIEdldEN1cnJlbnRFdmVudFRpbWUo
KQorI2ltcG9ydCA8V2ViS2l0L0RPTVByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9XZWJLaXQu
aD4KKyNpbXBvcnQgPFdlYktpdC9XZWJWaWV3UHJpdmF0ZS5oPgorCitleHRlcm4gIkMiIHZvaWQg
X05TTmV3S2lsbFJpbmdTZXF1ZW5jZSgpOworCitlbnVtIE1vdXNlQWN0aW9uIHsKKyAgICBNb3Vz
ZURvd24sCisgICAgTW91c2VVcCwKKyAgICBNb3VzZURyYWdnZWQKK307CisKKy8vIE1hdGNoIHRo
ZSBET00gc3BlYyAoc2FkbHkgdGhlIERPTSBzcGVjIGRvZXMgbm90IHByb3ZpZGUgYW4gZW51bSkK
K2VudW0gTW91c2VCdXR0b24geworICAgIExlZnRNb3VzZUJ1dHRvbiA9IDAsCisgICAgTWlkZGxl
TW91c2VCdXR0b24gPSAxLAorICAgIFJpZ2h0TW91c2VCdXR0b24gPSAyLAorICAgIE5vTW91c2VC
dXR0b24gPSAtMQorfTsKKworTlNQb2ludCBsYXN0TW91c2VQb3NpdGlvbjsKK05TUG9pbnQgbGFz
dENsaWNrUG9zaXRpb247CitpbnQgbGFzdENsaWNrQnV0dG9uID0gTm9Nb3VzZUJ1dHRvbjsKK05T
QXJyYXkgKndlYmtpdERvbUV2ZW50TmFtZXM7CitOU011dGFibGVBcnJheSAqc2F2ZWRNb3VzZUV2
ZW50czsgLy8gbW91c2UgZXZlbnRzIHNlbnQgYmV0d2VlbiBtb3VzZURvd24gYW5kIG1vdXNlVXAg
YXJlIHN0b3JlZCBoZXJlLCBhbmQgdGhlbiBleGVjdXRlZCBhdCBvbmNlLgorQk9PTCByZXBsYXlp
bmdTYXZlZEV2ZW50czsKKworQGltcGxlbWVudGF0aW9uIEV2ZW50U2VuZGVyCisKKysgKHZvaWQp
aW5pdGlhbGl6ZQoreworICAgIHdlYmtpdERvbUV2ZW50TmFtZXMgPSBbW05TQXJyYXkgYWxsb2Nd
IGluaXRXaXRoT2JqZWN0czoKKyAgICAgICAgQCJhYm9ydCIsCisgICAgICAgIEAiYmVmb3JlY29w
eSIsCisgICAgICAgIEAiYmVmb3JlY3V0IiwKKyAgICAgICAgQCJiZWZvcmVwYXN0ZSIsCisgICAg
ICAgIEAiYmx1ciIsCisgICAgICAgIEAiY2hhbmdlIiwKKyAgICAgICAgQCJjbGljayIsCisgICAg
ICAgIEAiY29udGV4dG1lbnUiLAorICAgICAgICBAImNvcHkiLAorICAgICAgICBAImN1dCIsCisg
ICAgICAgIEAiZGJsY2xpY2siLAorICAgICAgICBAImRyYWciLAorICAgICAgICBAImRyYWdlbmQi
LAorICAgICAgICBAImRyYWdlbnRlciIsCisgICAgICAgIEAiZHJhZ2xlYXZlIiwKKyAgICAgICAg
QCJkcmFnb3ZlciIsCisgICAgICAgIEAiZHJhZ3N0YXJ0IiwKKyAgICAgICAgQCJkcm9wIiwKKyAg
ICAgICAgQCJlcnJvciIsCisgICAgICAgIEAiZm9jdXMiLAorICAgICAgICBAImlucHV0IiwKKyAg
ICAgICAgQCJrZXlkb3duIiwKKyAgICAgICAgQCJrZXlwcmVzcyIsCisgICAgICAgIEAia2V5dXAi
LAorICAgICAgICBAImxvYWQiLAorICAgICAgICBAIm1vdXNlZG93biIsCisgICAgICAgIEAibW91
c2Vtb3ZlIiwKKyAgICAgICAgQCJtb3VzZW91dCIsCisgICAgICAgIEAibW91c2VvdmVyIiwKKyAg
ICAgICAgQCJtb3VzZXVwIiwKKyAgICAgICAgQCJtb3VzZXdoZWVsIiwKKyAgICAgICAgQCJiZWZv
cmV1bmxvYWQiLAorICAgICAgICBAInBhc3RlIiwKKyAgICAgICAgQCJyZWFkeXN0YXRlY2hhbmdl
IiwKKyAgICAgICAgQCJyZXNldCIsCisgICAgICAgIEAicmVzaXplIiwgCisgICAgICAgIEAic2Ny
b2xsIiwgCisgICAgICAgIEAic2VhcmNoIiwKKyAgICAgICAgQCJzZWxlY3QiLAorICAgICAgICBA
InNlbGVjdHN0YXJ0IiwKKyAgICAgICAgQCJzdWJtaXQiLCAKKyAgICAgICAgQCJ0ZXh0SW5wdXQi
LCAKKyAgICAgICAgQCJ0ZXh0em9vbWluIiwKKyAgICAgICAgQCJ0ZXh0em9vbW91dCIsCisgICAg
ICAgIEAidW5sb2FkIiwKKyAgICAgICAgQCJ6b29tIiwKKyAgICAgICAgbmlsXTsKK30KKworKyAo
Qk9PTClpc1NlbGVjdG9yRXhjbHVkZWRGcm9tV2ViU2NyaXB0OihTRUwpYVNlbGVjdG9yCit7Cisg
ICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoYmVnaW5EcmFnV2l0aEZpbGVzOikKKyAgICAg
ICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoY2xlYXJLaWxsUmluZykKKyAgICAgICAg
ICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoY29udGV4dENsaWNrKQorICAgICAgICAgICAg
fHwgYVNlbGVjdG9yID09IEBzZWxlY3RvcihlbmFibGVET01VSUV2ZW50TG9nZ2luZzopCisgICAg
ICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGZpcmVLZXlib2FyZEV2ZW50c1RvRWxl
bWVudDopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGtleURvd246d2l0
aE1vZGlmaWVyczp3aXRoTG9jYXRpb246KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBz
ZWxlY3RvcihsZWFwRm9yd2FyZDopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVj
dG9yKG1vdXNlRG93bjp3aXRoTW9kaWZpZXJzOikKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9
PSBAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09
IEBzZWxlY3Rvcihtb3VzZVVwOndpdGhNb2RpZmllcnM6KQorICAgICAgICAgICAgfHwgYVNlbGVj
dG9yID09IEBzZWxlY3RvcihzY2hlZHVsZUFzeW5jaHJvbm91c0NsaWNrKQorICAgICAgICAgICAg
fHwgYVNlbGVjdG9yID09IEBzZWxlY3Rvcih0ZXh0Wm9vbUluKQorICAgICAgICAgICAgfHwgYVNl
bGVjdG9yID09IEBzZWxlY3Rvcih0ZXh0Wm9vbU91dCkKKyAgICAgICAgICAgIHx8IGFTZWxlY3Rv
ciA9PSBAc2VsZWN0b3Ioem9vbVBhZ2VJbikKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBA
c2VsZWN0b3Ioem9vbVBhZ2VPdXQpCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVj
dG9yKG1vdXNlU2Nyb2xsQnlYOmFuZFk6KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBz
ZWxlY3Rvcihjb250aW51b3VzTW91c2VTY3JvbGxCeVg6YW5kWTopKQorICAgICAgICByZXR1cm4g
Tk87CisgICAgcmV0dXJuIFlFUzsKK30KKworKyAoQk9PTClpc0tleUV4Y2x1ZGVkRnJvbVdlYlNj
cmlwdDooY29uc3QgY2hhciopbmFtZQoreworICAgIGlmIChzdHJjbXAobmFtZSwgImRyYWdNb2Rl
IikgPT0gMCkKKyAgICAgICAgcmV0dXJuIE5POworICAgIHJldHVybiBZRVM7Cit9CisKKysgKE5T
U3RyaW5nICopd2ViU2NyaXB0TmFtZUZvclNlbGVjdG9yOihTRUwpYVNlbGVjdG9yCit7CisgICAg
aWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoYmVnaW5EcmFnV2l0aEZpbGVzOikpCisgICAgICAg
IHJldHVybiBAImJlZ2luRHJhZ1dpdGhGaWxlcyI7CisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2Vs
ZWN0b3IoY29udGV4dENsaWNrKSkKKyAgICAgICAgcmV0dXJuIEAiY29udGV4dENsaWNrIjsKKyAg
ICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3RvcihlbmFibGVET01VSUV2ZW50TG9nZ2luZzopKQor
ICAgICAgICByZXR1cm4gQCJlbmFibGVET01VSUV2ZW50TG9nZ2luZyI7CisgICAgaWYgKGFTZWxl
Y3RvciA9PSBAc2VsZWN0b3IoZmlyZUtleWJvYXJkRXZlbnRzVG9FbGVtZW50OikpCisgICAgICAg
IHJldHVybiBAImZpcmVLZXlib2FyZEV2ZW50c1RvRWxlbWVudCI7CisgICAgaWYgKGFTZWxlY3Rv
ciA9PSBAc2VsZWN0b3Ioa2V5RG93bjp3aXRoTW9kaWZpZXJzOndpdGhMb2NhdGlvbjopKQorICAg
ICAgICByZXR1cm4gQCJrZXlEb3duIjsKKyAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3Rvcihs
ZWFwRm9yd2FyZDopKQorICAgICAgICByZXR1cm4gQCJsZWFwRm9yd2FyZCI7CisgICAgaWYgKGFT
ZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VEb3duOndpdGhNb2RpZmllcnM6KSkKKyAgICAgICAg
cmV0dXJuIEAibW91c2VEb3duIjsKKyAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3Rvcihtb3Vz
ZVVwOndpdGhNb2RpZmllcnM6KSkKKyAgICAgICAgcmV0dXJuIEAibW91c2VVcCI7CisgICAgaWYg
KGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KSkKKyAgICAgICAgcmV0dXJu
IEAibW91c2VNb3ZlVG8iOworICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKHNldERyYWdN
b2RlOikpCisgICAgICAgIHJldHVybiBAInNldERyYWdNb2RlIjsKKyAgICBpZiAoYVNlbGVjdG9y
ID09IEBzZWxlY3Rvcihtb3VzZVNjcm9sbEJ5WDphbmRZOikpCisgICAgICAgIHJldHVybiBAIm1v
dXNlU2Nyb2xsQnkiOworICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGNvbnRpbnVvdXNN
b3VzZVNjcm9sbEJ5WDphbmRZOikpCisgICAgICAgIHJldHVybiBAImNvbnRpbnVvdXNNb3VzZVNj
cm9sbEJ5IjsKKyAgICByZXR1cm4gbmlsOworfQorCistIChpZClpbml0Cit7CisgICAgc2VsZiA9
IFtzdXBlciBpbml0XTsKKyAgICBpZiAoc2VsZikKKyAgICAgICAgZHJhZ01vZGUgPSBZRVM7Cisg
ICAgcmV0dXJuIHNlbGY7Cit9CisKKy0gKHZvaWQpZGVhbGxvYworeworICAgIFtzdXBlciBkZWFs
bG9jXTsKK30KKworLSAoZG91YmxlKWN1cnJlbnRFdmVudFRpbWUKK3sKKyAgICByZXR1cm4gR2V0
Q3VycmVudEV2ZW50VGltZSgpICsgdGltZU9mZnNldDsKK30KKworLSAodm9pZClsZWFwRm9yd2Fy
ZDooaW50KW1pbGxpc2Vjb25kcworeworICAgIGlmIChkcmFnTW9kZSAmJiBsZWZ0TW91c2VCdXR0
b25Eb3duICYmICFyZXBsYXlpbmdTYXZlZEV2ZW50cykgeworICAgICAgICBOU0ludm9jYXRpb24g
Kmludm9jYXRpb24gPSBbTlNJbnZvY2F0aW9uIGludm9jYXRpb25XaXRoTWV0aG9kU2lnbmF0dXJl
OltFdmVudFNlbmRlciBpbnN0YW5jZU1ldGhvZFNpZ25hdHVyZUZvclNlbGVjdG9yOkBzZWxlY3Rv
cihsZWFwRm9yd2FyZDopXV07CisgICAgICAgIFtpbnZvY2F0aW9uIHNldFRhcmdldDpzZWxmXTsK
KyAgICAgICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNlbGVjdG9yKGxlYXBGb3J3YXJkOild
OworICAgICAgICBbaW52b2NhdGlvbiBzZXRBcmd1bWVudDombWlsbGlzZWNvbmRzIGF0SW5kZXg6
Ml07CisgICAgICAgIAorICAgICAgICBbRXZlbnRTZW5kZXIgc2F2ZUV2ZW50Omludm9jYXRpb25d
OworICAgICAgICAKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHRpbWVPZmZzZXQgKz0g
bWlsbGlzZWNvbmRzIC8gMTAwMC4wOworfQorCistICh2b2lkKWNsZWFyS2lsbFJpbmcKK3sKKyAg
ICBfTlNOZXdLaWxsUmluZ1NlcXVlbmNlKCk7Cit9CisKK3N0YXRpYyBOU0V2ZW50VHlwZSBldmVu
dFR5cGVGb3JNb3VzZUJ1dHRvbkFuZEFjdGlvbihpbnQgYnV0dG9uLCBNb3VzZUFjdGlvbiBhY3Rp
b24pCit7CisgICAgc3dpdGNoIChidXR0b24pIHsKKyAgICAgICAgY2FzZSBMZWZ0TW91c2VCdXR0
b246CisgICAgICAgICAgICBzd2l0Y2ggKGFjdGlvbikgeworICAgICAgICAgICAgICAgIGNhc2Ug
TW91c2VEb3duOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNMZWZ0TW91c2VEb3duOwor
ICAgICAgICAgICAgICAgIGNhc2UgTW91c2VVcDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJu
IE5TTGVmdE1vdXNlVXA7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBOU0xlZnRNb3VzZURyYWdnZWQ7CisgICAgICAgICAgICB9
CisgICAgICAgIGNhc2UgUmlnaHRNb3VzZUJ1dHRvbjoKKyAgICAgICAgICAgIHN3aXRjaCAoYWN0
aW9uKSB7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURvd246CisgICAgICAgICAgICAgICAg
ICAgIHJldHVybiBOU1JpZ2h0TW91c2VEb3duOworICAgICAgICAgICAgICAgIGNhc2UgTW91c2VV
cDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TUmlnaHRNb3VzZVVwOworICAgICAgICAg
ICAgICAgIGNhc2UgTW91c2VEcmFnZ2VkOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNS
aWdodE1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHN3aXRjaCAoYWN0aW9uKSB7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURvd246
CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOU090aGVyTW91c2VEb3duOworICAgICAgICAg
ICAgICAgIGNhc2UgTW91c2VVcDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TT3RoZXJN
b3VzZVVwOworICAgICAgICAgICAgICAgIGNhc2UgTW91c2VEcmFnZ2VkOgorICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gTlNPdGhlck1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAgICB9
CisgICAgYXNzZXJ0KDApOworICAgIHJldHVybiBzdGF0aWNfY2FzdDxOU0V2ZW50VHlwZT4oMCk7
Cit9CisKKy0gKHZvaWQpYmVnaW5EcmFnV2l0aEZpbGVzOihXZWJTY3JpcHRPYmplY3QqKWpzRmls
ZVBhdGhzCit7CisgICAgYXNzZXJ0KCFkcmFnZ2luZ0luZm8pOworICAgIGFzc2VydChbanNGaWxl
UGF0aHMgaXNLaW5kT2ZDbGFzczpbV2ViU2NyaXB0T2JqZWN0IGNsYXNzXV0pOworCisgICAgTlNQ
YXN0ZWJvYXJkICpwYm9hcmQgPSBbTlNQYXN0ZWJvYXJkIHBhc3RlYm9hcmRXaXRoVW5pcXVlTmFt
ZV07CisgICAgW3Bib2FyZCBkZWNsYXJlVHlwZXM6W05TQXJyYXkgYXJyYXlXaXRoT2JqZWN0Ok5T
RmlsZW5hbWVzUGJvYXJkVHlwZV0gb3duZXI6bmlsXTsKKworICAgIE5TVVJMICpjdXJyZW50VGVz
dFVSTCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOltbbWFpbkZyYW1lIHdlYlZpZXddIG1haW5GcmFt
ZVVSTF1dOworCisgICAgTlNNdXRhYmxlQXJyYXkgKmZpbGVQYXRocyA9IFtOU011dGFibGVBcnJh
eSBhcnJheV07CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgW1tqc0ZpbGVQYXRocyB3ZWJTY3Jp
cHRWYWx1ZUF0SW5kZXg6aV0gaXNLaW5kT2ZDbGFzczpbTlNTdHJpbmcgY2xhc3NdXTsgaSsrKSB7
CisgICAgICAgIE5TU3RyaW5nICpmaWxlUGF0aCA9IChOU1N0cmluZyAqKVtqc0ZpbGVQYXRocyB3
ZWJTY3JpcHRWYWx1ZUF0SW5kZXg6aV07CisgICAgICAgIC8vIEhhdmUgTlNVUkwgZW5jb2RlIHRo
ZSBuYW1lIHNvIHRoYXQgd2UgaGFuZGxlICc/JyBpbiBmaWxlIG5hbWVzIGNvcnJlY3RseS4KKyAg
ICAgICAgTlNVUkwgKmZpbGVVUkwgPSBbTlNVUkwgZmlsZVVSTFdpdGhQYXRoOmZpbGVQYXRoXTsK
KyAgICAgICAgTlNVUkwgKmFic29sdXRlRmlsZVVSTCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOltm
aWxlVVJMIHJlbGF0aXZlU3RyaW5nXSAgcmVsYXRpdmVUb1VSTDpjdXJyZW50VGVzdFVSTF07Cisg
ICAgICAgIFtmaWxlUGF0aHMgYWRkT2JqZWN0OlthYnNvbHV0ZUZpbGVVUkwgcGF0aF1dOworICAg
IH0KKworICAgIFtwYm9hcmQgc2V0UHJvcGVydHlMaXN0OmZpbGVQYXRocyBmb3JUeXBlOk5TRmls
ZW5hbWVzUGJvYXJkVHlwZV07CisgICAgYXNzZXJ0KFtwYm9hcmQgcHJvcGVydHlMaXN0Rm9yVHlw
ZTpOU0ZpbGVuYW1lc1Bib2FyZFR5cGVdKTsgLy8gc2V0UHJvcGVydHlMaXN0IHdpbGwgc2lsZW50
bHkgZmFpbCBvbiBlcnJvciwgYXNzZXJ0IHRoYXQgaXQgZGlkbid0IGZhaWwKKworICAgIC8vIFBy
b3ZpZGUgYSBzb3VyY2UsIG90aGVyd2lzZSBbRHVtcFJlbmRlclRyZWVEcmFnZ2luZ0luZm8gZHJh
Z2dpbmdTb3VyY2VPcGVyYXRpb25NYXNrXSBkZWZhdWx0cyB0byBOU0RyYWdPcGVyYXRpb25Ob25l
CisgICAgRHVtcFJlbmRlclRyZWVGaWxlRHJhZ2dpbmdTb3VyY2UgKnNvdXJjZSA9IFtbW0R1bXBS
ZW5kZXJUcmVlRmlsZURyYWdnaW5nU291cmNlIGFsbG9jXSBpbml0XSBhdXRvcmVsZWFzZV07Cisg
ICAgZHJhZ2dpbmdJbmZvID0gW1tEdW1wUmVuZGVyVHJlZURyYWdnaW5nSW5mbyBhbGxvY10gaW5p
dFdpdGhJbWFnZTpuaWwgb2Zmc2V0Ok5TWmVyb1NpemUgcGFzdGVib2FyZDpwYm9hcmQgc291cmNl
OnNvdXJjZV07CisgICAgW1ttYWluRnJhbWUgd2ViVmlld10gZHJhZ2dpbmdFbnRlcmVkOmRyYWdn
aW5nSW5mb107CisKKyAgICBkcmFnTW9kZSA9IE5POyAvLyBkcmFnTW9kZSBzYXZlcyBldmVudHMg
YW5kIHRoZW4gcmVwbGF5cyB0aGVtIGxhdGVyLiAgV2UgZG9uJ3QgbmVlZC93YW50IHRoYXQuCisg
ICAgbGVmdE1vdXNlQnV0dG9uRG93biA9IFlFUzsgLy8gTWFrZSB0aGUgcmVzdCBvZiBldmVudFNl
bmRlciB0aGluayBhIGRyYWcgaXMgaW4gcHJvZ3Jlc3MKK30KKworLSAodm9pZCl1cGRhdGVDbGlj
a0NvdW50Rm9yQnV0dG9uOihpbnQpYnV0dG9uTnVtYmVyCit7CisgICAgaWYgKChbc2VsZiBjdXJy
ZW50RXZlbnRUaW1lXSAtIGxhc3RDbGljayA+PSAxKSB8fAorICAgICAgICAhTlNFcXVhbFBvaW50
cyhsYXN0TW91c2VQb3NpdGlvbiwgbGFzdENsaWNrUG9zaXRpb24pIHx8CisgICAgICAgIGxhc3RD
bGlja0J1dHRvbiAhPSBidXR0b25OdW1iZXIpIHsKKyAgICAgICAgY2xpY2tDb3VudCA9IDE7Cisg
ICAgICAgIGxhc3RDbGlja0J1dHRvbiA9IGJ1dHRvbk51bWJlcjsKKyAgICB9IGVsc2UKKyAgICAg
ICAgY2xpY2tDb3VudCsrOworfQorCitzdGF0aWMgaW50IGJ1aWxkTW9kaWZpZXJGbGFncyhjb25z
dCBXZWJTY3JpcHRPYmplY3QqIG1vZGlmaWVycykKK3sKKyAgICBpbnQgZmxhZ3MgPSAwOworICAg
IGlmICghW21vZGlmaWVycyBpc0tpbmRPZkNsYXNzOltXZWJTY3JpcHRPYmplY3QgY2xhc3NdXSkK
KyAgICAgICAgcmV0dXJuIGZsYWdzOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IFtbbW9kaWZp
ZXJzIHdlYlNjcmlwdFZhbHVlQXRJbmRleDppXSBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFz
c11dOyBpKyspIHsKKyAgICAgICAgTlNTdHJpbmcqIG1vZGlmaWVyTmFtZSA9IChOU1N0cmluZyop
W21vZGlmaWVycyB3ZWJTY3JpcHRWYWx1ZUF0SW5kZXg6aV07CisgICAgICAgIGlmIChbbW9kaWZp
ZXJOYW1lIGlzRXF1YWw6QCJjdHJsS2V5Il0pCisgICAgICAgICAgICBmbGFncyB8PSBOU0NvbnRy
b2xLZXlNYXNrOworICAgICAgICBlbHNlIGlmIChbbW9kaWZpZXJOYW1lIGlzRXF1YWw6QCJzaGlm
dEtleSJdIHx8IFttb2RpZmllck5hbWUgaXNFcXVhbDpAInJhbmdlU2VsZWN0aW9uS2V5Il0pCisg
ICAgICAgICAgICBmbGFncyB8PSBOU1NoaWZ0S2V5TWFzazsKKyAgICAgICAgZWxzZSBpZiAoW21v
ZGlmaWVyTmFtZSBpc0VxdWFsOkAiYWx0S2V5Il0pCisgICAgICAgICAgICBmbGFncyB8PSBOU0Fs
dGVybmF0ZUtleU1hc2s7CisgICAgICAgIGVsc2UgaWYgKFttb2RpZmllck5hbWUgaXNFcXVhbDpA
Im1ldGFLZXkiXSB8fCBbbW9kaWZpZXJOYW1lIGlzRXF1YWw6QCJhZGRTZWxlY3Rpb25LZXkiXSkK
KyAgICAgICAgICAgIGZsYWdzIHw9IE5TQ29tbWFuZEtleU1hc2s7CisgICAgfQorICAgIHJldHVy
biBmbGFnczsKK30KKworLSAodm9pZCltb3VzZURvd246KGludClidXR0b25OdW1iZXIgd2l0aE1v
ZGlmaWVyczooV2ViU2NyaXB0T2JqZWN0Kiltb2RpZmllcnMKK3sKKyAgICBbW1ttYWluRnJhbWUg
ZnJhbWVWaWV3XSBkb2N1bWVudFZpZXddIGxheW91dF07CisgICAgW3NlbGYgdXBkYXRlQ2xpY2tD
b3VudEZvckJ1dHRvbjpidXR0b25OdW1iZXJdOworICAgIAorICAgIE5TRXZlbnRUeXBlIGV2ZW50
VHlwZSA9IGV2ZW50VHlwZUZvck1vdXNlQnV0dG9uQW5kQWN0aW9uKGJ1dHRvbk51bWJlciwgTW91
c2VEb3duKTsKKyAgICBOU0V2ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlw
ZTpldmVudFR5cGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2Nh
dGlvbjpsYXN0TW91c2VQb3NpdGlvbiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbW9kaWZpZXJGbGFnczpidWlsZE1vZGlmaWVyRmxhZ3MobW9kaWZpZXJzKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltzZWxmIGN1cnJlbnRFdmVu
dFRpbWVdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dOdW1iZXI6
W1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gd2luZG93TnVtYmVyXSAKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQg
Y3VycmVudENvbnRleHRdIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2
ZW50TnVtYmVyOisrZXZlbnROdW1iZXIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNsaWNrQ291bnQ6Y2xpY2tDb3VudCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwcmVzc3VyZTowLjBdOworCisgICAgTlNWaWV3ICpzdWJWaWV3ID0gW1tt
YWluRnJhbWUgd2ViVmlld10gaGl0VGVzdDpbZXZlbnQgbG9jYXRpb25JbldpbmRvd11dOworICAg
IGlmIChzdWJWaWV3KSB7CisgICAgICAgIFtzdWJWaWV3IG1vdXNlRG93bjpldmVudF07CisgICAg
ICAgIGlmIChidXR0b25OdW1iZXIgPT0gTGVmdE1vdXNlQnV0dG9uKQorICAgICAgICAgICAgbGVm
dE1vdXNlQnV0dG9uRG93biA9IFlFUzsKKyAgICB9Cit9CisKKy0gKHZvaWQpbW91c2VEb3duOihp
bnQpYnV0dG9uTnVtYmVyCit7CisgICAgW3NlbGYgbW91c2VEb3duOmJ1dHRvbk51bWJlciB3aXRo
TW9kaWZpZXJzOm5pbF07Cit9CisKKy0gKHZvaWQpdGV4dFpvb21JbgoreworICAgIFtbbWFpbkZy
YW1lIHdlYlZpZXddIG1ha2VUZXh0TGFyZ2VyOnNlbGZdOworfQorCistICh2b2lkKXRleHRab29t
T3V0Cit7CisgICAgW1ttYWluRnJhbWUgd2ViVmlld10gbWFrZVRleHRTbWFsbGVyOnNlbGZdOwor
fQorCistICh2b2lkKXpvb21QYWdlSW4KK3sKKyAgICBbW21haW5GcmFtZSB3ZWJWaWV3XSB6b29t
UGFnZUluOnNlbGZdOworfQorCistICh2b2lkKXpvb21QYWdlT3V0Cit7CisgICAgW1ttYWluRnJh
bWUgd2ViVmlld10gem9vbVBhZ2VPdXQ6c2VsZl07Cit9CisKKy0gKHZvaWQpbW91c2VVcDooaW50
KWJ1dHRvbk51bWJlciB3aXRoTW9kaWZpZXJzOihXZWJTY3JpcHRPYmplY3QqKW1vZGlmaWVycwor
eworICAgIGlmIChkcmFnTW9kZSAmJiAhcmVwbGF5aW5nU2F2ZWRFdmVudHMpIHsKKyAgICAgICAg
TlNJbnZvY2F0aW9uICppbnZvY2F0aW9uID0gW05TSW52b2NhdGlvbiBpbnZvY2F0aW9uV2l0aE1l
dGhvZFNpZ25hdHVyZTpbRXZlbnRTZW5kZXIgaW5zdGFuY2VNZXRob2RTaWduYXR1cmVGb3JTZWxl
Y3RvcjpAc2VsZWN0b3IobW91c2VVcDp3aXRoTW9kaWZpZXJzOildXTsKKyAgICAgICAgW2ludm9j
YXRpb24gc2V0VGFyZ2V0OnNlbGZdOworICAgICAgICBbaW52b2NhdGlvbiBzZXRTZWxlY3RvcjpA
c2VsZWN0b3IobW91c2VVcDp3aXRoTW9kaWZpZXJzOildOworICAgICAgICBbaW52b2NhdGlvbiBz
ZXRBcmd1bWVudDomYnV0dG9uTnVtYmVyIGF0SW5kZXg6Ml07CisgICAgICAgIFtpbnZvY2F0aW9u
IHNldEFyZ3VtZW50OiZtb2RpZmllcnMgYXRJbmRleDozXTsKKyAgICAgICAgCisgICAgICAgIFtF
dmVudFNlbmRlciBzYXZlRXZlbnQ6aW52b2NhdGlvbl07CisgICAgICAgIFtFdmVudFNlbmRlciBy
ZXBsYXlTYXZlZEV2ZW50c107CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFtbW21h
aW5GcmFtZSBmcmFtZVZpZXddIGRvY3VtZW50Vmlld10gbGF5b3V0XTsKKyAgICBOU0V2ZW50VHlw
ZSBldmVudFR5cGUgPSBldmVudFR5cGVGb3JNb3VzZUJ1dHRvbkFuZEFjdGlvbihidXR0b25OdW1i
ZXIsIE1vdXNlVXApOworICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdp
dGhUeXBlOmV2ZW50VHlwZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGxvY2F0aW9uOmxhc3RNb3VzZVBvc2l0aW9uIAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtb2RpZmllckZsYWdzOmJ1aWxkTW9kaWZpZXJGbGFncyhtb2RpZmllcnMpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA6W3NlbGYgY3VycmVu
dEV2ZW50VGltZV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd051
bWJlcjpbW1ttYWluRnJhbWUgd2ViVmlld10gd2luZG93XSB3aW5kb3dOdW1iZXJdIAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OltOU0dyYXBoaWNzQ29u
dGV4dCBjdXJyZW50Q29udGV4dF0gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZXZlbnROdW1iZXI6KytldmVudE51bWJlciAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY2xpY2tDb3VudDpjbGlja0NvdW50IAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHByZXNzdXJlOjAuMF07CisKKyAgICBOU1ZpZXcgKnRhcmdldFZp
ZXcgPSBbW21haW5GcmFtZSB3ZWJWaWV3XSBoaXRUZXN0OltldmVudCBsb2NhdGlvbkluV2luZG93
XV07CisgICAgLy8gRklYTUU6IFNpbGx5IGhhY2sgdG8gdGVhY2ggRFJUIHRvIHJlc3BlY3QgY2Fw
dHVyaW5nIG1vdXNlIGV2ZW50cyBvdXRzaWRlIHRoZSBXZWJWaWV3LgorICAgIC8vIFRoZSByaWdo
dCBzb2x1dGlvbiBpcyBqdXN0IHRvIHVzZSBOU0FwcGxpY2F0aW9uJ3MgYnVpbHQtaW4gZXZlbnQg
c2VuZGluZyBtZXRob2RzLCAKKyAgICAvLyBpbnN0ZWFkIG9mIHJvbGxpbmcgb3VyIG93biBhbGdv
cml0aG0gZm9yIHNlbGVjdGluZyBhbiBldmVudCB0YXJnZXQuCisgICAgdGFyZ2V0VmlldyA9IHRh
cmdldFZpZXcgPyB0YXJnZXRWaWV3IDogW1ttYWluRnJhbWUgZnJhbWVWaWV3XSBkb2N1bWVudFZp
ZXddOworICAgIGFzc2VydCh0YXJnZXRWaWV3KTsKKyAgICBbdGFyZ2V0VmlldyBtb3VzZVVwOmV2
ZW50XTsKKyAgICBpZiAoYnV0dG9uTnVtYmVyID09IExlZnRNb3VzZUJ1dHRvbikKKyAgICAgICAg
bGVmdE1vdXNlQnV0dG9uRG93biA9IE5POworICAgIGxhc3RDbGljayA9IFtldmVudCB0aW1lc3Rh
bXBdOworICAgIGxhc3RDbGlja1Bvc2l0aW9uID0gbGFzdE1vdXNlUG9zaXRpb247CisgICAgaWYg
KGRyYWdnaW5nSW5mbykgeworICAgICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gW21haW5GcmFtZSB3
ZWJWaWV3XTsKKyAgICAgICAgCisgICAgICAgIE5TRHJhZ09wZXJhdGlvbiBkcmFnT3BlcmF0aW9u
ID0gW3dlYlZpZXcgZHJhZ2dpbmdVcGRhdGVkOmRyYWdnaW5nSW5mb107CisgICAgICAgIAorICAg
ICAgICBpZiAoZHJhZ09wZXJhdGlvbiAhPSBOU0RyYWdPcGVyYXRpb25Ob25lKQorICAgICAgICAg
ICAgW3dlYlZpZXcgcGVyZm9ybURyYWdPcGVyYXRpb246ZHJhZ2dpbmdJbmZvXTsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgW3dlYlZpZXcgZHJhZ2dpbmdFeGl0ZWQ6ZHJhZ2dpbmdJbmZvXTsK
KyAgICAgICAgLy8gUGVyIE5TRHJhZ2dpbmcuaDogZHJhZ2dpbmdTb3VyY2VzIG1heSBub3QgaW1w
bGVtZW50IGRyYWdnZWRJbWFnZTplbmRlZEF0Om9wZXJhdGlvbjoKKyAgICAgICAgaWYgKFtbZHJh
Z2dpbmdJbmZvIGRyYWdnaW5nU291cmNlXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGRy
YWdnZWRJbWFnZTplbmRlZEF0Om9wZXJhdGlvbjopXSkKKyAgICAgICAgICAgIFtbZHJhZ2dpbmdJ
bmZvIGRyYWdnaW5nU291cmNlXSBkcmFnZ2VkSW1hZ2U6W2RyYWdnaW5nSW5mbyBkcmFnZ2VkSW1h
Z2VdIGVuZGVkQXQ6bGFzdE1vdXNlUG9zaXRpb24gb3BlcmF0aW9uOmRyYWdPcGVyYXRpb25dOwor
ICAgICAgICBbZHJhZ2dpbmdJbmZvIHJlbGVhc2VdOworICAgICAgICBkcmFnZ2luZ0luZm8gPSBu
aWw7CisgICAgfQorfQorCistICh2b2lkKW1vdXNlVXA6KGludClidXR0b25OdW1iZXIKK3sKKyAg
ICBbc2VsZiBtb3VzZVVwOmJ1dHRvbk51bWJlciB3aXRoTW9kaWZpZXJzOm5pbF07Cit9CisKKy0g
KHZvaWQpbW91c2VNb3ZlVG9YOihpbnQpeCBZOihpbnQpeQoreworICAgIGlmIChkcmFnTW9kZSAm
JiBsZWZ0TW91c2VCdXR0b25Eb3duICYmICFyZXBsYXlpbmdTYXZlZEV2ZW50cykgeworICAgICAg
ICBOU0ludm9jYXRpb24gKmludm9jYXRpb24gPSBbTlNJbnZvY2F0aW9uIGludm9jYXRpb25XaXRo
TWV0aG9kU2lnbmF0dXJlOltFdmVudFNlbmRlciBpbnN0YW5jZU1ldGhvZFNpZ25hdHVyZUZvclNl
bGVjdG9yOkBzZWxlY3Rvcihtb3VzZU1vdmVUb1g6WTopXV07CisgICAgICAgIFtpbnZvY2F0aW9u
IHNldFRhcmdldDpzZWxmXTsKKyAgICAgICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNlbGVj
dG9yKG1vdXNlTW92ZVRvWDpZOildOworICAgICAgICBbaW52b2NhdGlvbiBzZXRBcmd1bWVudDom
eCBhdEluZGV4OjJdOworICAgICAgICBbaW52b2NhdGlvbiBzZXRBcmd1bWVudDomeSBhdEluZGV4
OjNdOworICAgICAgICAKKyAgICAgICAgW0V2ZW50U2VuZGVyIHNhdmVFdmVudDppbnZvY2F0aW9u
XTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIE5TVmlldyAqdmlldyA9IFttYWluRnJh
bWUgd2ViVmlld107CisgICAgbGFzdE1vdXNlUG9zaXRpb24gPSBbdmlldyBjb252ZXJ0UG9pbnQ6
TlNNYWtlUG9pbnQoeCwgW3ZpZXcgZnJhbWVdLnNpemUuaGVpZ2h0IC0geSkgdG9WaWV3Om5pbF07
CisgICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5cGU6KGxlZnRN
b3VzZUJ1dHRvbkRvd24gPyBOU0xlZnRNb3VzZURyYWdnZWQgOiBOU01vdXNlTW92ZWQpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246bGFzdE1vdXNlUG9z
aXRpb24gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyRmxhZ3M6
MCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpbc2Vs
ZiBjdXJyZW50RXZlbnRUaW1lXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
d2luZG93TnVtYmVyOltbdmlldyB3aW5kb3ddIHdpbmRvd051bWJlcl0gCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6W05TR3JhcGhpY3NDb250ZXh0IGN1
cnJlbnRDb250ZXh0XSAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVu
dE51bWJlcjorK2V2ZW50TnVtYmVyIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjbGlja0NvdW50OihsZWZ0TW91c2VCdXR0b25Eb3duID8gY2xpY2tDb3VudCA6IDApIAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXNzdXJlOjAuMF07CisK
KyAgICBOU1ZpZXcgKnN1YlZpZXcgPSBbW21haW5GcmFtZSB3ZWJWaWV3XSBoaXRUZXN0OltldmVu
dCBsb2NhdGlvbkluV2luZG93XV07CisgICAgaWYgKHN1YlZpZXcpIHsKKyAgICAgICAgaWYgKGxl
ZnRNb3VzZUJ1dHRvbkRvd24pIHsKKyAgICAgICAgICAgIGlmIChkcmFnZ2luZ0luZm8pIHsKKyAg
ICAgICAgICAgICAgICAvLyBQZXIgTlNEcmFnZ2luZy5oOiBkcmFnZ2luZ1NvdXJjZXMgbWF5IG5v
dCBpbXBsZW1lbnQgZHJhZ2dlZEltYWdlOm1vdmVkVG86CisgICAgICAgICAgICAgICAgaWYgKFtb
ZHJhZ2dpbmdJbmZvIGRyYWdnaW5nU291cmNlXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9y
KGRyYWdnZWRJbWFnZTptb3ZlZFRvOildKQorICAgICAgICAgICAgICAgICAgICBbW2RyYWdnaW5n
SW5mbyBkcmFnZ2luZ1NvdXJjZV0gZHJhZ2dlZEltYWdlOltkcmFnZ2luZ0luZm8gZHJhZ2dlZElt
YWdlXSBtb3ZlZFRvOmxhc3RNb3VzZVBvc2l0aW9uXTsKKyAgICAgICAgICAgICAgICBbW21haW5G
cmFtZSB3ZWJWaWV3XSBkcmFnZ2luZ1VwZGF0ZWQ6ZHJhZ2dpbmdJbmZvXTsKKyAgICAgICAgICAg
IH0gZWxzZQorICAgICAgICAgICAgICAgIFtzdWJWaWV3IG1vdXNlRHJhZ2dlZDpldmVudF07Cisg
ICAgICAgIH0gZWxzZQorICAgICAgICAgICAgW3N1YlZpZXcgbW91c2VNb3ZlZDpldmVudF07Cisg
ICAgfQorfQorCistICh2b2lkKW1vdXNlU2Nyb2xsQnlYOihpbnQpeCBhbmRZOihpbnQpeSBjb250
aW51b3VzbHk6KEJPT0wpYworeworICAgIC8vIENHRXZlbnRDcmVhdGVTY3JvbGxXaGVlbEV2ZW50
KCkgd2FzIGludHJvZHVjZWQgaW4gMTAuNQorI2lmICFkZWZpbmVkKEJVSUxESU5HX09OX1RJR0VS
KQorICAgIENHU2Nyb2xsRXZlbnRVbml0IHVuaXQgPSBjP2tDR1Njcm9sbEV2ZW50VW5pdFBpeGVs
OmtDR1Njcm9sbEV2ZW50VW5pdExpbmU7CisgICAgQ0dFdmVudFJlZiBjZ1Njcm9sbEV2ZW50ID0g
Q0dFdmVudENyZWF0ZVNjcm9sbFdoZWVsRXZlbnQoTlVMTCwgdW5pdCwgMiwgeSwgeCk7CisgICAg
CisgICAgLy8gQ0dFdmVudCBsb2NhdGlvbnMgYXJlIGluIGdsb2JhbCBkaXNwbGF5IGNvb3JkaW5h
dGVzLgorICAgIENHUG9pbnQgbGFzdEdsb2JhbE1vdXNlUG9zaXRpb24gPSB7CisgICAgICAgIGxh
c3RNb3VzZVBvc2l0aW9uLngsCisgICAgICAgIFtbTlNTY3JlZW4gbWFpblNjcmVlbl0gZnJhbWVd
LnNpemUuaGVpZ2h0IC0gbGFzdE1vdXNlUG9zaXRpb24ueQorICAgIH07CisgICAgQ0dFdmVudFNl
dExvY2F0aW9uKGNnU2Nyb2xsRXZlbnQsIGxhc3RHbG9iYWxNb3VzZVBvc2l0aW9uKTsKKworICAg
IE5TRXZlbnQgKnNjcm9sbEV2ZW50ID0gW05TRXZlbnQgZXZlbnRXaXRoQ0dFdmVudDpjZ1Njcm9s
bEV2ZW50XTsKKyAgICBDRlJlbGVhc2UoY2dTY3JvbGxFdmVudCk7CisKKyAgICBOU1ZpZXcgKnN1
YlZpZXcgPSBbW21haW5GcmFtZSB3ZWJWaWV3XSBoaXRUZXN0OltzY3JvbGxFdmVudCBsb2NhdGlv
bkluV2luZG93XV07CisgICAgaWYgKHN1YlZpZXcpCisgICAgICAgIFtzdWJWaWV3IHNjcm9sbFdo
ZWVsOnNjcm9sbEV2ZW50XTsKKyNlbmRpZgorfQorCistICh2b2lkKWNvbnRpbnVvdXNNb3VzZVNj
cm9sbEJ5WDooaW50KXggYW5kWTooaW50KXkKK3sKKyAgICBbc2VsZiBtb3VzZVNjcm9sbEJ5WDp4
IGFuZFk6eSBjb250aW51b3VzbHk6WUVTXTsKK30KKworLSAodm9pZCltb3VzZVNjcm9sbEJ5WDoo
aW50KXggYW5kWTooaW50KXkKK3sKKyAgICBbc2VsZiBtb3VzZVNjcm9sbEJ5WDp4IGFuZFk6eSBj
b250aW51b3VzbHk6Tk9dOworfQorCistIChOU0FycmF5ICopY29udGV4dENsaWNrCit7CisgICAg
W1tbbWFpbkZyYW1lIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XSBsYXlvdXRdOworICAgIFtzZWxm
IHVwZGF0ZUNsaWNrQ291bnRGb3JCdXR0b246UmlnaHRNb3VzZUJ1dHRvbl07CisKKyAgICBOU0V2
ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpOU1JpZ2h0TW91c2VEb3du
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246bGFzdE1v
dXNlUG9zaXRpb24gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVy
RmxhZ3M6MCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFt
cDpbc2VsZiBjdXJyZW50RXZlbnRUaW1lXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgd2luZG93TnVtYmVyOltbW21haW5GcmFtZSB3ZWJWaWV3XSB3aW5kb3ddIHdpbmRvd051
bWJlcl0gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6
W05TR3JhcGhpY3NDb250ZXh0IGN1cnJlbnRDb250ZXh0XSAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBldmVudE51bWJlcjorK2V2ZW50TnVtYmVyIAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjbGlja0NvdW50OmNsaWNrQ291bnQgCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc3N1cmU6MC4wXTsKKworICAgIE5T
VmlldyAqc3ViVmlldyA9IFtbbWFpbkZyYW1lIHdlYlZpZXddIGhpdFRlc3Q6W2V2ZW50IGxvY2F0
aW9uSW5XaW5kb3ddXTsKKyAgICBOU011dGFibGVBcnJheSAqbWVudUl0ZW1TdHJpbmdzID0gW05T
TXV0YWJsZUFycmF5IGFycmF5XTsKKyAgICAKKyAgICBpZiAoc3ViVmlldykgeworICAgICAgICBO
U01lbnUqIG1lbnUgPSBbc3ViVmlldyBtZW51Rm9yRXZlbnQ6ZXZlbnRdOworCisgICAgICAgIGZv
ciAoaW50IGkgPSAwOyBpIDwgW21lbnUgbnVtYmVyT2ZJdGVtc107ICsraSkgeworICAgICAgICAg
ICAgTlNNZW51SXRlbSogbWVudUl0ZW0gPSBbbWVudSBpdGVtQXRJbmRleDppXTsKKyAgICAgICAg
ICAgIGlmICghc3RyY21wKCJJbnNwZWN0IEVsZW1lbnQiLCBbW21lbnVJdGVtIHRpdGxlXSBVVEY4
U3RyaW5nXSkpCisgICAgICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgICAgIGlmIChb
bWVudUl0ZW0gaXNTZXBhcmF0b3JJdGVtXSkKKyAgICAgICAgICAgICAgICBbbWVudUl0ZW1TdHJp
bmdzIGFkZE9iamVjdDpAIjxzZXBhcmF0b3I+Il07CisgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICAgW21lbnVJdGVtU3RyaW5ncyBhZGRPYmplY3Q6W21lbnVJdGVtIHRpdGxlXV07Cisg
ICAgICAgIH0KKyAgICB9CisgICAgCisgICAgcmV0dXJuIG1lbnVJdGVtU3RyaW5nczsKK30KKwor
LSAodm9pZClzY2hlZHVsZUFzeW5jaHJvbm91c0NsaWNrCit7CisgICAgW3NlbGYgcGVyZm9ybVNl
bGVjdG9yOkBzZWxlY3Rvcihtb3VzZURvd246KSB3aXRoT2JqZWN0Om5pbCBhZnRlckRlbGF5OjBd
OworICAgIFtzZWxmIHBlcmZvcm1TZWxlY3RvcjpAc2VsZWN0b3IobW91c2VVcDopIHdpdGhPYmpl
Y3Q6bmlsIGFmdGVyRGVsYXk6MF07Cit9CisKKysgKHZvaWQpc2F2ZUV2ZW50OihOU0ludm9jYXRp
b24gKilldmVudAoreworICAgIGlmICghc2F2ZWRNb3VzZUV2ZW50cykKKyAgICAgICAgc2F2ZWRN
b3VzZUV2ZW50cyA9IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRdOworICAgIFtzYXZlZE1v
dXNlRXZlbnRzIGFkZE9iamVjdDpldmVudF07Cit9CisKKysgKHZvaWQpcmVwbGF5U2F2ZWRFdmVu
dHMKK3sKKyAgICByZXBsYXlpbmdTYXZlZEV2ZW50cyA9IFlFUzsKKyAgICB3aGlsZSAoW3NhdmVk
TW91c2VFdmVudHMgY291bnRdKSB7CisgICAgICAgIC8vIGlmIGEgZHJhZyBpcyBpbml0aWF0ZWQs
IHRoZSByZW1haW5pbmcgc2F2ZWQgZXZlbnRzIHdpbGwgYmUgZGlzcGF0Y2hlZCBmcm9tIG91ciBk
cmFnZ2luZyBkZWxlZ2F0ZQorICAgICAgICBOU0ludm9jYXRpb24gKmludm9jYXRpb24gPSBbW1tz
YXZlZE1vdXNlRXZlbnRzIG9iamVjdEF0SW5kZXg6MF0gcmV0YWluXSBhdXRvcmVsZWFzZV07Cisg
ICAgICAgIFtzYXZlZE1vdXNlRXZlbnRzIHJlbW92ZU9iamVjdEF0SW5kZXg6MF07CisgICAgICAg
IFtpbnZvY2F0aW9uIGludm9rZV07CisgICAgfQorICAgIHJlcGxheWluZ1NhdmVkRXZlbnRzID0g
Tk87Cit9CisKKysgKHZvaWQpY2xlYXJTYXZlZEV2ZW50cworeworICAgIFtzYXZlZE1vdXNlRXZl
bnRzIHJlbGVhc2VdOworICAgIHNhdmVkTW91c2VFdmVudHMgPSBuaWw7Cit9CisKKy0gKHZvaWQp
a2V5RG93bjooTlNTdHJpbmcgKiljaGFyYWN0ZXIgd2l0aE1vZGlmaWVyczooV2ViU2NyaXB0T2Jq
ZWN0ICopbW9kaWZpZXJzIHdpdGhMb2NhdGlvbjoodW5zaWduZWQgbG9uZylrZXlMb2NhdGlvbgor
eworICAgIE5TU3RyaW5nICpldmVudENoYXJhY3RlciA9IGNoYXJhY3RlcjsKKyAgICB1bnNpZ25l
ZCBzaG9ydCBrZXlDb2RlID0gMDsKKyAgICBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6
QCJsZWZ0QXJyb3ciXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNMZWZ0QXJyb3dG
dW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0
aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4N0I7CisgICAg
fSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAInJpZ2h0QXJyb3ciXSkgewor
ICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNSaWdodEFycm93RnVuY3Rpb25LZXk7CisgICAg
ICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBs
ZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDdDOworICAgIH0gZWxzZSBpZiAoW2NoYXJh
Y3RlciBpc0VxdWFsVG9TdHJpbmc6QCJ1cEFycm93Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hh
ciBjaCA9IE5TVXBBcnJvd0Z1bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtO
U1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBrZXlD
b2RlID0gMHg3RTsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAi
ZG93bkFycm93Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRG93bkFycm93RnVu
Y3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhD
aGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDdEOworICAgIH0g
ZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJwYWdlVXAiXSkgeworICAgICAg
ICBjb25zdCB1bmljaGFyIGNoID0gTlNQYWdlVXBGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRD
aGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsK
KyAgICAgICAga2V5Q29kZSA9IDB4NzQ7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1
YWxUb1N0cmluZzpAInBhZ2VEb3duIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5T
UGFnZURvd25GdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcg
c3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4
Nzk7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImhvbWUiXSkg
eworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNIb21lRnVuY3Rpb25LZXk7CisgICAgICAg
IGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5n
dGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDczOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3Rl
ciBpc0VxdWFsVG9TdHJpbmc6QCJlbmQiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0g
TlNFbmRGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4Nzc7
CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImluc2VydCJdKSB7
CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0luc2VydEZ1bmN0aW9uS2V5OworICAgICAg
ICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVu
Z3RoOjFdOworICAgICAgICBrZXlDb2RlID0gMHg3MjsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0
ZXIgaXNFcXVhbFRvU3RyaW5nOkAiZGVsZXRlIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBj
aCA9IE5TRGVsZXRlRnVuY3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3Ry
aW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUg
PSAweDc1OworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJwcmlu
dFNjcmVlbiJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU1ByaW50U2NyZWVuRnVu
Y3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhD
aGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDA7IC8vIFRoZXJl
IGlzIG5vIGtub3duIHZpcnR1YWwga2V5IGNvZGUgZm9yIFByaW50U2NyZWVuLgorICAgIH0KKwor
ICAgIC8vIENvbXBhcmUgdGhlIGlucHV0IHN0cmluZyB3aXRoIHRoZSBmdW5jdGlvbi1rZXkgbmFt
ZXMgZGVmaW5lZCBieSB0aGUgRE9NIHNwZWMgKGkuZS4gIkYxIiwuLi4sIkYyNCIpLgorICAgIC8v
IElmIHRoZSBpbnB1dCBzdHJpbmcgaXMgYSBmdW5jdGlvbi1rZXkgbmFtZSwgc2V0IGl0cyBrZXkg
Y29kZS4KKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAxOyBpIDw9IDI0OyBpKyspIHsKKyAgICAgICAg
aWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0
OkAiRiV1IiwgaV1dKSB7CisgICAgICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGMUZ1bmN0
aW9uS2V5ICsgKGkgLSAxKTsKKyAgICAgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5n
IHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgICAgICBzd2l0Y2gg
KGkpIHsKKyAgICAgICAgICAgICAgICBjYXNlIDE6IGtleUNvZGUgPSAweDdBOyBicmVhazsKKyAg
ICAgICAgICAgICAgICBjYXNlIDI6IGtleUNvZGUgPSAweDc4OyBicmVhazsKKyAgICAgICAgICAg
ICAgICBjYXNlIDM6IGtleUNvZGUgPSAweDYzOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IDQ6IGtleUNvZGUgPSAweDc2OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDU6IGtleUNv
ZGUgPSAweDYwOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDY6IGtleUNvZGUgPSAweDYx
OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDc6IGtleUNvZGUgPSAweDYyOyBicmVhazsK
KyAgICAgICAgICAgICAgICBjYXNlIDg6IGtleUNvZGUgPSAweDY0OyBicmVhazsKKyAgICAgICAg
ICAgICAgICBjYXNlIDk6IGtleUNvZGUgPSAweDY1OyBicmVhazsKKyAgICAgICAgICAgICAgICBj
YXNlIDEwOiBrZXlDb2RlID0gMHg2RDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxMTog
a2V5Q29kZSA9IDB4Njc7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTI6IGtleUNvZGUg
PSAweDZGOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDEzOiBrZXlDb2RlID0gMHg2OTsg
YnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxNDoga2V5Q29kZSA9IDB4NkI7IGJyZWFrOwor
ICAgICAgICAgICAgICAgIGNhc2UgMTU6IGtleUNvZGUgPSAweDcxOyBicmVhazsKKyAgICAgICAg
ICAgICAgICBjYXNlIDE2OiBrZXlDb2RlID0gMHg2QTsgYnJlYWs7CisgICAgICAgICAgICAgICAg
Y2FzZSAxNzoga2V5Q29kZSA9IDB4NDA7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTg6
IGtleUNvZGUgPSAweDRGOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDE5OiBrZXlDb2Rl
ID0gMHg1MDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAyMDoga2V5Q29kZSA9IDB4NUE7
IGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgLy8gRklYTUU6
IE5vIGtleUNvZGUgaXMgc2V0IGZvciBtb3N0IGtleXMuCisgICAgaWYgKFtjaGFyYWN0ZXIgaXNF
cXVhbFRvU3RyaW5nOkAiXHQiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MzA7CisgICAgZWxzZSBp
ZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCIgIl0pCisgICAgICAgIGtleUNvZGUgPSAw
eDMxOworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiXHIiXSkKKyAg
ICAgICAga2V5Q29kZSA9IDB4MjQ7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9T
dHJpbmc6QCJcbiJdKQorICAgICAgICBrZXlDb2RlID0gMHg0QzsKKyAgICBlbHNlIGlmIChbY2hh
cmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIlx4OCJdKQorICAgICAgICBrZXlDb2RlID0gMHgzMzsK
KyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjciXSkKKyAgICAgICAg
a2V5Q29kZSA9IDB4MUE7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6
QCI1Il0pCisgICAgICAgIGtleUNvZGUgPSAweDE3OworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIg
aXNFcXVhbFRvU3RyaW5nOkAiOSJdKQorICAgICAgICBrZXlDb2RlID0gMHgxOTsKKyAgICBlbHNl
IGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjAiXSkKKyAgICAgICAga2V5Q29kZSA9
IDB4MUQ7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJhIl0pCisg
ICAgICAgIGtleUNvZGUgPSAweDAwOworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRv
U3RyaW5nOkAiYiJdKQorICAgICAgICBrZXlDb2RlID0gMHgwQjsKKyAgICBlbHNlIGlmIChbY2hh
cmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImQiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MDI7Cisg
ICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJlIl0pCisgICAgICAgIGtl
eUNvZGUgPSAweDBFOworCisgICAgTlNTdHJpbmcgKmNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVy
cyA9IGV2ZW50Q2hhcmFjdGVyOworCisgICAgaW50IG1vZGlmaWVyRmxhZ3MgPSAwOworCisgICAg
aWYgKFtjaGFyYWN0ZXIgbGVuZ3RoXSA9PSAxICYmIFtjaGFyYWN0ZXIgY2hhcmFjdGVyQXRJbmRl
eDowXSA+PSAnQScgJiYgW2NoYXJhY3RlciBjaGFyYWN0ZXJBdEluZGV4OjBdIDw9ICdaJykgewor
ICAgICAgICBtb2RpZmllckZsYWdzIHw9IE5TU2hpZnRLZXlNYXNrOworICAgICAgICBjaGFyYWN0
ZXJzSWdub3JpbmdNb2RpZmllcnMgPSBbY2hhcmFjdGVyIGxvd2VyY2FzZVN0cmluZ107CisgICAg
fQorCisgICAgbW9kaWZpZXJGbGFncyB8PSBidWlsZE1vZGlmaWVyRmxhZ3MobW9kaWZpZXJzKTsK
KworICAgIGlmIChrZXlMb2NhdGlvbiA9PSBET01fS0VZX0xPQ0FUSU9OX05VTVBBRCkKKyAgICAg
ICAgbW9kaWZpZXJGbGFncyB8PSBOU051bWVyaWNQYWRLZXlNYXNrOworCisgICAgW1tbbWFpbkZy
YW1lIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XSBsYXlvdXRdOworCisgICAgTlNFdmVudCAqZXZl
bnQgPSBbTlNFdmVudCBrZXlFdmVudFdpdGhUeXBlOk5TS2V5RG93bgorICAgICAgICAgICAgICAg
ICAgICAgICAgbG9jYXRpb246TlNNYWtlUG9pbnQoNSwgNSkKKyAgICAgICAgICAgICAgICAgICAg
ICAgIG1vZGlmaWVyRmxhZ3M6bW9kaWZpZXJGbGFncworICAgICAgICAgICAgICAgICAgICAgICAg
dGltZXN0YW1wOltzZWxmIGN1cnJlbnRFdmVudFRpbWVdCisgICAgICAgICAgICAgICAgICAgICAg
ICB3aW5kb3dOdW1iZXI6W1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gd2luZG93TnVtYmVy
XQorICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQgY3Vy
cmVudENvbnRleHRdCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzOmV2ZW50Q2hh
cmFjdGVyCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmll
cnM6Y2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzCisgICAgICAgICAgICAgICAgICAgICAgICBp
c0FSZXBlYXQ6Tk8KKyAgICAgICAgICAgICAgICAgICAgICAgIGtleUNvZGU6a2V5Q29kZV07CisK
KyAgICBbW1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gZmlyc3RSZXNwb25kZXJdIGtleURv
d246ZXZlbnRdOworCisgICAgZXZlbnQgPSBbTlNFdmVudCBrZXlFdmVudFdpdGhUeXBlOk5TS2V5
VXAKKyAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uOk5TTWFrZVBvaW50KDUsIDUpCisg
ICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmllckZsYWdzOm1vZGlmaWVyRmxhZ3MKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpbc2VsZiBjdXJyZW50RXZlbnRUaW1lXQorICAg
ICAgICAgICAgICAgICAgICAgICAgd2luZG93TnVtYmVyOltbW21haW5GcmFtZSB3ZWJWaWV3XSB3
aW5kb3ddIHdpbmRvd051bWJlcl0KKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6W05T
R3JhcGhpY3NDb250ZXh0IGN1cnJlbnRDb250ZXh0XQorICAgICAgICAgICAgICAgICAgICAgICAg
Y2hhcmFjdGVyczpldmVudENoYXJhY3RlcgorICAgICAgICAgICAgICAgICAgICAgICAgY2hhcmFj
dGVyc0lnbm9yaW5nTW9kaWZpZXJzOmNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycworICAgICAg
ICAgICAgICAgICAgICAgICAgaXNBUmVwZWF0Ok5PCisgICAgICAgICAgICAgICAgICAgICAgICBr
ZXlDb2RlOmtleUNvZGVdOworCisgICAgW1tbW21haW5GcmFtZSB3ZWJWaWV3XSB3aW5kb3ddIGZp
cnN0UmVzcG9uZGVyXSBrZXlVcDpldmVudF07Cit9CisKKy0gKHZvaWQpZW5hYmxlRE9NVUlFdmVu
dExvZ2dpbmc6KFdlYlNjcmlwdE9iamVjdCAqKW5vZGUKK3sKKyAgICBOU0VudW1lcmF0b3IgKmV2
ZW50RW51bWVyYXRvciA9IFt3ZWJraXREb21FdmVudE5hbWVzIG9iamVjdEVudW1lcmF0b3JdOwor
ICAgIGlkIGV2ZW50TmFtZTsKKyAgICB3aGlsZSAoKGV2ZW50TmFtZSA9IFtldmVudEVudW1lcmF0
b3IgbmV4dE9iamVjdF0pKSB7CisgICAgICAgIFsoaWQ8RE9NRXZlbnRUYXJnZXQ+KW5vZGUgYWRk
RXZlbnRMaXN0ZW5lcjpldmVudE5hbWUgbGlzdGVuZXI6c2VsZiB1c2VDYXB0dXJlOk5PXTsKKyAg
ICB9Cit9CisKKy0gKHZvaWQpaGFuZGxlRXZlbnQ6KERPTUV2ZW50ICopZXZlbnQKK3sKKyAgICBE
T01Ob2RlICp0YXJnZXQgPSBbZXZlbnQgdGFyZ2V0XTsKKworICAgIHByaW50ZigiZXZlbnQgdHlw
ZTogICAgICAlc1xuIiwgW1tldmVudCB0eXBlXSBVVEY4U3RyaW5nXSk7CisgICAgcHJpbnRmKCIg
IHRhcmdldDogICAgICAgIDwlcz5cbiIsIFtbW3RhcmdldCBub2RlTmFtZV0gbG93ZXJjYXNlU3Ry
aW5nXSBVVEY4U3RyaW5nXSk7CisgICAgCisgICAgaWYgKFtldmVudCBpc0tpbmRPZkNsYXNzOltE
T01FdmVudCBjbGFzc11dKSB7CisgICAgICAgIHByaW50ZigiICBldmVudFBoYXNlOiAgICAlZFxu
IiwgW2V2ZW50IGV2ZW50UGhhc2VdKTsKKyAgICAgICAgcHJpbnRmKCIgIGJ1YmJsZXM6ICAgICAg
ICVkXG4iLCBbZXZlbnQgYnViYmxlc10gPyAxIDogMCk7CisgICAgICAgIHByaW50ZigiICBjYW5j
ZWxhYmxlOiAgICAlZFxuIiwgW2V2ZW50IGNhbmNlbGFibGVdID8gMSA6IDApOworICAgIH0KKyAg
ICAKKyAgICBpZiAoW2V2ZW50IGlzS2luZE9mQ2xhc3M6W0RPTVVJRXZlbnQgY2xhc3NdXSkgewor
ICAgICAgICBwcmludGYoIiAgZGV0YWlsOiAgICAgICAgJWRcbiIsIFsoRE9NVUlFdmVudCopZXZl
bnQgZGV0YWlsXSk7CisgICAgICAgIAorICAgICAgICBET01BYnN0cmFjdFZpZXcgKnZpZXcgPSBb
KERPTVVJRXZlbnQqKWV2ZW50IHZpZXddOworICAgICAgICBpZiAodmlldykgeworICAgICAgICAg
ICAgcHJpbnRmKCIgIHZpZXc6ICAgICAgICAgIE9LIik7ICAgICAgICAgICAgCisgICAgICAgICAg
ICBpZiAoW3ZpZXcgZG9jdW1lbnRdKQorICAgICAgICAgICAgICAgIHByaW50ZigiIChkb2N1bWVu
dDogT0spIik7CisgICAgICAgICAgICBwcmludGYoIlxuIik7CisgICAgICAgIH0KKyAgICB9Cisg
ICAgCisgICAgaWYgKFtldmVudCBpc0tpbmRPZkNsYXNzOltET01LZXlib2FyZEV2ZW50IGNsYXNz
XV0pIHsKKyAgICAgICAgcHJpbnRmKCIgIGtleUlkZW50aWZpZXI6ICVzXG4iLCBbWyhET01LZXli
b2FyZEV2ZW50KilldmVudCBrZXlJZGVudGlmaWVyXSBVVEY4U3RyaW5nXSk7CisgICAgICAgIHBy
aW50ZigiICBrZXlMb2NhdGlvbjogICAlZFxuIiwgWyhET01LZXlib2FyZEV2ZW50KilldmVudCBr
ZXlMb2NhdGlvbl0pOworICAgICAgICBwcmludGYoIiAgbW9kaWZpZXIga2V5czogYzolZCBzOiVk
IGE6JWQgbTolZFxuIiwgCisgICAgICAgICAgICAgICBbKERPTUtleWJvYXJkRXZlbnQqKWV2ZW50
IGN0cmxLZXldID8gMSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01LZXlib2FyZEV2ZW50Kill
dmVudCBzaGlmdEtleV0gPyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTUtleWJvYXJkRXZl
bnQqKWV2ZW50IGFsdEtleV0gPyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTUtleWJvYXJk
RXZlbnQqKWV2ZW50IG1ldGFLZXldID8gMSA6IDApOworICAgICAgICBwcmludGYoIiAga2V5Q29k
ZTogICAgICAgJWRcbiIsIFsoRE9NS2V5Ym9hcmRFdmVudCopZXZlbnQga2V5Q29kZV0pOworICAg
ICAgICBwcmludGYoIiAgY2hhckNvZGU6ICAgICAgJWRcbiIsIFsoRE9NS2V5Ym9hcmRFdmVudCop
ZXZlbnQgY2hhckNvZGVdKTsKKyAgICB9CisgICAgCisgICAgaWYgKFtldmVudCBpc0tpbmRPZkNs
YXNzOltET01Nb3VzZUV2ZW50IGNsYXNzXV0pIHsKKyAgICAgICAgcHJpbnRmKCIgIGJ1dHRvbjog
ICAgICAgICVkXG4iLCBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IGJ1dHRvbl0pOworICAgICAgICBw
cmludGYoIiAgY2xpZW50WDogICAgICAgJWRcbiIsIFsoRE9NTW91c2VFdmVudCopZXZlbnQgY2xp
ZW50WF0pOworICAgICAgICBwcmludGYoIiAgY2xpZW50WTogICAgICAgJWRcbiIsIFsoRE9NTW91
c2VFdmVudCopZXZlbnQgY2xpZW50WV0pOworICAgICAgICBwcmludGYoIiAgc2NyZWVuWDogICAg
ICAgJWRcbiIsIFsoRE9NTW91c2VFdmVudCopZXZlbnQgc2NyZWVuWF0pOworICAgICAgICBwcmlu
dGYoIiAgc2NyZWVuWTogICAgICAgJWRcbiIsIFsoRE9NTW91c2VFdmVudCopZXZlbnQgc2NyZWVu
WV0pOworICAgICAgICBwcmludGYoIiAgbW9kaWZpZXIga2V5czogYzolZCBzOiVkIGE6JWQgbTol
ZFxuIiwgCisgICAgICAgICAgICAgICBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IGN0cmxLZXldID8g
MSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01Nb3VzZUV2ZW50KilldmVudCBzaGlmdEtleV0g
PyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IGFsdEtleV0g
PyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IG1ldGFLZXld
ID8gMSA6IDApOworICAgICAgICBpZCByZWxhdGVkVGFyZ2V0ID0gWyhET01Nb3VzZUV2ZW50Kill
dmVudCByZWxhdGVkVGFyZ2V0XTsKKyAgICAgICAgaWYgKHJlbGF0ZWRUYXJnZXQpIHsKKyAgICAg
ICAgICAgIHByaW50ZigiICByZWxhdGVkVGFyZ2V0OiAlcyIsIFtbW3JlbGF0ZWRUYXJnZXQgY2xh
c3NdIGRlc2NyaXB0aW9uXSBVVEY4U3RyaW5nXSk7CisgICAgICAgICAgICBpZiAoW3JlbGF0ZWRU
YXJnZXQgaXNLaW5kT2ZDbGFzczpbRE9NTm9kZSBjbGFzc11dKQorICAgICAgICAgICAgICAgIHBy
aW50ZigiIChub2RlTmFtZTogJXMpIiwgW1soRE9NTm9kZSopcmVsYXRlZFRhcmdldCBub2RlTmFt
ZV0gVVRGOFN0cmluZ10pOworICAgICAgICAgICAgcHJpbnRmKCJcbiIpOworICAgICAgICB9Cisg
ICAgfQorICAgIAorICAgIGlmIChbZXZlbnQgaXNLaW5kT2ZDbGFzczpbRE9NTXV0YXRpb25FdmVu
dCBjbGFzc11dKSB7CisgICAgICAgIHByaW50ZigiICBwcmV2VmFsdWU6ICAgICAlc1xuIiwgW1so
RE9NTXV0YXRpb25FdmVudCopZXZlbnQgcHJldlZhbHVlXSBVVEY4U3RyaW5nXSk7CisgICAgICAg
IHByaW50ZigiICBuZXdWYWx1ZTogICAgICAlc1xuIiwgW1soRE9NTXV0YXRpb25FdmVudCopZXZl
bnQgbmV3VmFsdWVdIFVURjhTdHJpbmddKTsKKyAgICAgICAgcHJpbnRmKCIgIGF0dHJOYW1lOiAg
ICAgICVzXG4iLCBbWyhET01NdXRhdGlvbkV2ZW50KilldmVudCBhdHRyTmFtZV0gVVRGOFN0cmlu
Z10pOworICAgICAgICBwcmludGYoIiAgYXR0ckNoYW5nZTogICAgJWRcbiIsIFsoRE9NTXV0YXRp
b25FdmVudCopZXZlbnQgYXR0ckNoYW5nZV0pOworICAgICAgICBET01Ob2RlICpyZWxhdGVkTm9k
ZSA9IFsoRE9NTXV0YXRpb25FdmVudCopZXZlbnQgcmVsYXRlZE5vZGVdOworICAgICAgICBpZiAo
cmVsYXRlZE5vZGUpIHsKKyAgICAgICAgICAgIHByaW50ZigiICByZWxhdGVkTm9kZTogICAlcyAo
bm9kZU5hbWU6ICVzKVxuIiwgCisgICAgICAgICAgICAgICAgICAgW1tbcmVsYXRlZE5vZGUgY2xh
c3NdIGRlc2NyaXB0aW9uXSBVVEY4U3RyaW5nXSwKKyAgICAgICAgICAgICAgICAgICBbW3JlbGF0
ZWROb2RlIG5vZGVOYW1lXSBVVEY4U3RyaW5nXSk7CisgICAgICAgIH0KKyAgICB9CisgICAgCisg
ICAgaWYgKFtldmVudCBpc0tpbmRPZkNsYXNzOltET01XaGVlbEV2ZW50IGNsYXNzXV0pIHsKKyAg
ICAgICAgcHJpbnRmKCIgIGNsaWVudFg6ICAgICAgICVkXG4iLCBbKERPTVdoZWVsRXZlbnQqKWV2
ZW50IGNsaWVudFhdKTsKKyAgICAgICAgcHJpbnRmKCIgIGNsaWVudFk6ICAgICAgICVkXG4iLCBb
KERPTVdoZWVsRXZlbnQqKWV2ZW50IGNsaWVudFldKTsKKyAgICAgICAgcHJpbnRmKCIgIHNjcmVl
blg6ICAgICAgICVkXG4iLCBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IHNjcmVlblhdKTsKKyAgICAg
ICAgcHJpbnRmKCIgIHNjcmVlblk6ICAgICAgICVkXG4iLCBbKERPTVdoZWVsRXZlbnQqKWV2ZW50
IHNjcmVlblldKTsKKyAgICAgICAgcHJpbnRmKCIgIG1vZGlmaWVyIGtleXM6IGM6JWQgczolZCBh
OiVkIG06JWRcbiIsIAorICAgICAgICAgICAgICAgWyhET01XaGVlbEV2ZW50KilldmVudCBjdHJs
S2V5XSA/IDEgOiAwLCAKKyAgICAgICAgICAgICAgIFsoRE9NV2hlZWxFdmVudCopZXZlbnQgc2hp
ZnRLZXldID8gMSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01XaGVlbEV2ZW50KilldmVudCBh
bHRLZXldID8gMSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01XaGVlbEV2ZW50KilldmVudCBt
ZXRhS2V5XSA/IDEgOiAwKTsKKyAgICAgICAgcHJpbnRmKCIgIGlzSG9yaXpvbnRhbDogICVkXG4i
LCBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IGlzSG9yaXpvbnRhbF0gPyAxIDogMCk7CisgICAgICAg
IHByaW50ZigiICB3aGVlbERlbHRhOiAgICAlZFxuIiwgWyhET01XaGVlbEV2ZW50KilldmVudCB3
aGVlbERlbHRhXSk7CisgICAgfQorfQorCisvLyBGSVhNRTogSXQncyBub3QgZ29vZCB0byBoYXZl
IGEgdGVzdCBoYXJkLXdpcmVkIGludG8gdGhpcyBjb250cm9sbGVyIGxpa2UgdGhpcy4KKy8vIElu
c3RlYWQgd2UgbmVlZCB0byBnZXQgdGVzdGluZyBmcmFtZXdvcmsgYmFzZWQgb24gdGhlIE9iamVj
dGl2ZS1DIGJpbmRpbmdzCisvLyB0byB3b3JrIHdlbGwgZW5vdWdoIHRoYXQgd2UgY2FuIHRlc3Qg
dGhhdCB3YXkgaW5zdGVhZC4KKy0gKHZvaWQpZmlyZUtleWJvYXJkRXZlbnRzVG9FbGVtZW50OihX
ZWJTY3JpcHRPYmplY3QgKillbGVtZW50IHsKKyAgICAKKyAgICBpZiAoIVtlbGVtZW50IGlzS2lu
ZE9mQ2xhc3M6W0RPTUhUTUxFbGVtZW50IGNsYXNzXV0pCisgICAgICAgIHJldHVybjsKKyAgICAK
KyAgICBET01IVE1MRWxlbWVudCAqdGFyZ2V0ID0gKERPTUhUTUxFbGVtZW50KillbGVtZW50Owor
ICAgIERPTURvY3VtZW50ICpkb2N1bWVudCA9IFt0YXJnZXQgb3duZXJEb2N1bWVudF07CisgICAg
CisgICAgLy8gS2V5Ym9hcmQgRXZlbnQgMQorICAgIAorICAgIERPTUV2ZW50ICpkb21FdmVudCA9
IFtkb2N1bWVudCBjcmVhdGVFdmVudDpAIktleWJvYXJkRXZlbnQiXTsKKyAgICBbKERPTUtleWJv
YXJkRXZlbnQqKWRvbUV2ZW50IGluaXRLZXlib2FyZEV2ZW50OkAia2V5ZG93biIgCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbkJ1YmJsZTpZRVMKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxhYmxlOllFUworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXc6W2RvY3VtZW50IGRlZmF1
bHRWaWV3XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleUlkZW50aWZp
ZXI6QCJVKzAwMDA0MSIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBr
ZXlMb2NhdGlvbjowCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y3RybEtleTpZRVMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
YWx0S2V5Ok5PCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlm
dEtleTpOTworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFL
ZXk6Tk9dOworICAgIFt0YXJnZXQgZGlzcGF0Y2hFdmVudDpkb21FdmVudF07ICAKKyAgICAgICAg
CisgICAgLy8gS2V5Ym9hcmQgRXZlbnQgMgorICAgIAorICAgIGRvbUV2ZW50ID0gW2RvY3VtZW50
IGNyZWF0ZUV2ZW50OkAiS2V5Ym9hcmRFdmVudCJdOworICAgIFsoRE9NS2V5Ym9hcmRFdmVudCop
ZG9tRXZlbnQgaW5pdEtleWJvYXJkRXZlbnQ6QCJrZXlwcmVzcyIgCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNhbkJ1YmJsZTpZRVMKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxhYmxlOllFUworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXc6W2RvY3VtZW50IGRlZmF1bHRWaWV3XQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleUlkZW50aWZpZXI6QCJVKzAw
MDA0NSIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlMb2NhdGlv
bjoxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3RybEtleTpO
TworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRLZXk6WUVT
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlmdEtleTpOTwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFLZXk6Tk9dOwor
ICAgIFt0YXJnZXQgZGlzcGF0Y2hFdmVudDpkb21FdmVudF07ICAgIAorICAgIAorICAgIC8vIEtl
eWJvYXJkIEV2ZW50IDMKKyAgICAKKyAgICBkb21FdmVudCA9IFtkb2N1bWVudCBjcmVhdGVFdmVu
dDpAIktleWJvYXJkRXZlbnQiXTsKKyAgICBbKERPTUtleWJvYXJkRXZlbnQqKWRvbUV2ZW50IGlu
aXRLZXlib2FyZEV2ZW50OkAia2V5dXAiIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjYW5CdWJibGU6WUVTCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY2FuY2VsYWJsZTpZRVMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB2aWV3Oltkb2N1bWVudCBkZWZhdWx0Vmlld10KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBrZXlJZGVudGlmaWVyOkAiVSswMDAwNTYiIAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5TG9jYXRpb246MAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0cmxLZXk6Tk8KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0S2V5Ok5PCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlmdEtleTpOTworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFLZXk6Tk9dOworICAgIFt0YXJnZXQgZGlz
cGF0Y2hFdmVudDpkb21FdmVudF07ICAgCisgICAgCit9CisKK0BlbmQKKyNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>87766</attachid>
            <date>2011-03-31 11:00:53 -0700</date>
            <delta_ts>2011-03-31 11:11:23 -0700</delta_ts>
            <desc>fix patch 2</desc>
            <filename>57515_2.patch</filename>
            <type>text/plain</type>
            <size>95122</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTEtMDMtMzEgIENoYW5nIFNo
dSAgPGNzaHVAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBbTWFjXSBbV0syXSBJbXBsZW1lbnQgS2V5RG93biBmdW5jdGlvbiBmb3Ig
V2ViS2l0MiBFdmVudFNlbmRlci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU3NTE1CisKKyAgICAgICAgVGhlIGZvbGxvd2luZyBjb2RlIGNoYW5nZSBi
dWlsZHMgdXAgdGhlIGluZnJhc3RydWN0dXJlIGZvcgorICAgICAgICBXZWJLaXRUZXN0UnVubmVy
IEV2ZW50U2VuZGVyIHRvIHNlbmQgbWVzc2FnZXMgZnJvbSB0aGUgSW5qZWN0ZWRCdW5kbGUKKyAg
ICAgICAgaW4gV2ViUHJvY2VzcyB0byBVSVByb2Nlc3Mgb2YgV2ViS2l0VGVzdFJ1bm5lci4KKwor
ICAgICAgICBUaGUgYmFzaWMgS2V5RG93biBmdW5jdGlvbmFsaXR5IGlzIGltcGxlbWVudGVkIGV4
Y2VwdCB0aGUgbG9jYWwgaW1wbGVtZW50YXRpb24uCisKKyAgICAgICAgKiBTaGFyZWQvQVBJL2Mv
V0tBcmd1bWVudERlY29kZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdLQ3JlYXRlQXJndW1lbnRE
ZWNvZGVyKToKKyAgICAgICAgKFdLRGVjb2RlVUludDMyKToKKyAgICAgICAgKFdLRGVjb2RlU3Ry
aW5nKToKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tBcmd1bWVudERlY29kZXIuaDogQWRkZWQu
CisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLQmFzZS5oOgorICAgICAgICAqIFNoYXJlZC9BUEkv
Yy9XS01lc3NhZ2VJRC5oOiBBZGRlZC4KKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tTaGFyZWRB
UElDYXN0Lmg6CisgICAgICAgICogU2hhcmVkL0V2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oOiBB
ZGRlZC4KKyAgICAgICAgKE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLZXlEb3duOjpLZXlE
b3duKToKKyAgICAgICAgKE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLZXlEb3duOjplbmNv
ZGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0VXNlck1lc3NhZ2VDb2RlcnMuaDoK
KyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dFVzZXJNZXNzYWdlRGVjb2Rlcjo6ZGVjb2RlKToK
KyAgICAgICAgKiBXZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5jcHA6CisgICAgICAgIChX
S0J1bmRsZUdldEV2ZW50U2VuZGVyKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9jL1dLQnVuZGxlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRs
ZS9BUEkvYy9XS0J1bmRsZUFQSUNhc3QuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdL
QnVuZGxlRXZlbnRTZW5kZXJLZXlEb3duKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuaDogQWRkZWQuCisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlOjpJbmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oOgorICAgICAgICAoV2ViS2l0OjpJbmpl
Y3RlZEJ1bmRsZTo6ZXZlbnRTZW5kZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5jcHA6IEFkZGVkLgorICAgICAgICAoV2Vi
S2l0OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0
OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyOjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyKToK
KyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcjo6fkluamVjdGVkQnVu
ZGxlRXZlbnRTZW5kZXIpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2Vu
ZGVyOjprZXlEb3duKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlRXZlbnRTZW5kZXIuaDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlQ29kZXJzLmg6CisgICAgICAgIChX
ZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyOjplbmNvZGUpOgorCiAyMDEx
LTAzLTMxICBKb2huIFN1bGxpdmFuICA8c3VsbGl2YW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyIGFuZCBBZGFtIFJvYmVuLgpJbmRleDogU291cmNlL1dlYktp
dDIvU2hhcmVkL0V2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9FdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaAkocmV2aXNpb24gMCkK
KysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9FdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw2NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEg
Q29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCisgKiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUgorICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKKyAqIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlc19oCisjZGVmaW5lIEV2ZW50U2VuZGVyUHJveHlN
ZXNzYWdlc19oCisKKyNpbmNsdWRlICJBcmd1bWVudHMuaCIKKyNpbmNsdWRlICJNZXNzYWdlSUQu
aCIKKyNpbmNsdWRlICJXS01lc3NhZ2VJRC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgorCituYW1lc3BhY2UgTWVzc2FnZXMgeworCituYW1lc3BhY2UgRXZlbnRTZW5kZXJQcm94
eSB7CisKK3N0cnVjdCBLZXlEb3duIDogQ29yZUlQQzo6QXJndW1lbnRzMzxjb25zdCBTdHJpbmcm
LCB1aW50MzJfdCwgdWludDMyX3Q+IHsKKyAgICBzdGF0aWMgY29uc3QgS2luZCBtZXNzYWdlSUQg
PSBLZXlEb3duSUQ7CisgICAgdHlwZWRlZiBDb3JlSVBDOjpBcmd1bWVudHMzPGNvbnN0IFN0cmlu
ZyYsIHVpbnQzMl90LCB1aW50MzJfdD4gRGVjb2RlVHlwZTsKKyAgICBLZXlEb3duKGNvbnN0IFN0
cmluZyYga2V5LCB1aW50MzJfdCBtb2RpZmllcnMsIHVpbnQzMl90IGxvY2F0aW9uKQorICAgICAg
ICA6IENvcmVJUEM6OkFyZ3VtZW50czM8Y29uc3QgU3RyaW5nJiwgdWludDMyX3QsIHVpbnQzMl90
PihrZXksIG1vZGlmaWVycywgbG9jYXRpb24pCisgICAgeworICAgIH0KKyAgICB2b2lkIGVuY29k
ZShDb3JlSVBDOjpBcmd1bWVudEVuY29kZXIqIGVuY29kZXIpIGNvbnN0CisgICAgeworICAgICAg
ICBlbmNvZGVyLT5lbmNvZGUoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KG1lc3NhZ2VJRCkpOworICAg
ICAgICBEZWNvZGVUeXBlOjplbmNvZGUoZW5jb2Rlcik7CisgICAgfQorfTsKKworfSAvLyBuYW1l
c3BhY2UgRXZlbnRTZW5kZXJQcm94eQorCit9IC8vIG5hbWVzcGFjZSBNZXNzYWdlcworCituYW1l
c3BhY2UgQ29yZUlQQyB7CisKK3RlbXBsYXRlPD4gc3RydWN0IE1lc3NhZ2VLaW5kVHJhaXRzPE1l
c3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLaW5kPiB7CisgICAgc3RhdGljIGNvbnN0IE1lc3Nh
Z2VDbGFzcyBtZXNzYWdlQ2xhc3MgPSBNZXNzYWdlQ2xhc3NXZWJDb250ZXh0TGVnYWN5OworfTsK
KworfSAvLyBuYW1lc3BhY2UgQ29yZUlQQworCisjZW5kaWYgLy8gRXZlbnRTZW5kZXJQcm94eU1l
c3NhZ2VzX2gKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0FyZ3VtZW50RGVj
b2Rlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLQXJn
dW1lbnREZWNvZGVyLmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UEkvYy9XS0FyZ3VtZW50RGVjb2Rlci5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNTkgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vi
c2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
V0tBcmd1bWVudERlY29kZXIuaCIKKworI2luY2x1ZGUgIkFQSU9iamVjdC5oIgorI2luY2x1ZGUg
IkFyZ3VtZW50Q29kZXJzLmgiCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkV2
ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oIgorI2luY2x1ZGUgIkhhbmRsZU1lc3NhZ2UuaCIKKyNp
bmNsdWRlICJXS0FQSUNhc3QuaCIKKyNpbmNsdWRlICJXS1N0cmluZy5oIgorCit1c2luZyBuYW1l
c3BhY2UgV2ViS2l0OworCitXS0FyZ3VtZW50RGVjb2RlclJlZiBXS0NyZWF0ZUFyZ3VtZW50RGVj
b2Rlcihjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoKQoreworICAgIENv
cmVJUEM6OkFyZ3VtZW50RGVjb2RlciogYXJndW1lbnREZWNvZGVyID0gbmV3IENvcmVJUEM6OkFy
Z3VtZW50RGVjb2RlcihkYXRhLCBsZW5ndGgpOworICAgIHJldHVybiB0b0FQSShhcmd1bWVudERl
Y29kZXIpOworfQorCitib29sIFdLRGVjb2RlVUludDMyKFdLQXJndW1lbnREZWNvZGVyUmVmIGFy
Z3VtZW50RGVjb2RlclJlZiwgdWludDMyX3QmIHZhbHVlKQoreworICAgIHJldHVybiB0b0ltcGwo
YXJndW1lbnREZWNvZGVyUmVmKS0+ZGVjb2RlKHZhbHVlKTsKK30KKworYm9vbCBXS0RlY29kZVN0
cmluZyhXS0FyZ3VtZW50RGVjb2RlclJlZiBhcmd1bWVudERlY29kZXJSZWYsIFdLU3RyaW5nUmVm
JiBzdHJSZWYpCit7CisgICAgU3RyaW5nIHN0cjsKKyAgICBpZiAodG9JbXBsKGFyZ3VtZW50RGVj
b2RlclJlZiktPmRlY29kZShzdHIpKSB7CisgICAgICAgIHN0clJlZiA9IFdLU3RyaW5nQ3JlYXRl
V2l0aFVURjhDU3RyaW5nKHN0ci51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIHRydWU7
CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9BUEkvYy9XS0FyZ3VtZW50RGVjb2Rlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1NoYXJlZC9BUEkvYy9XS0FyZ3VtZW50RGVjb2Rlci5oCShyZXZpc2lvbiAwKQorKysgU291cmNl
L1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLQXJndW1lbnREZWNvZGVyLmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9u
IGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFdLQXJndW1l
bnREZWNvZGVyX2gKKyNkZWZpbmUgV0tBcmd1bWVudERlY29kZXJfaAorCisjaW5jbHVkZSA8V2Vi
S2l0Mi9XS0Jhc2UuaD4KKyNpbmNsdWRlIDxXZWJLaXQyL1dLTWVzc2FnZUlELmg+CisKKyNpZmRl
ZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIiB7CisjZW5kaWYKKworV0tfRVhQT1JUIFdLQXJndW1l
bnREZWNvZGVyUmVmIFdLQ3JlYXRlQXJndW1lbnREZWNvZGVyKGNvbnN0IHVuc2lnbmVkIGNoYXIq
LCBzaXplX3QpOworV0tfRVhQT1JUIGJvb2wgV0tEZWNvZGVVSW50MzIoV0tBcmd1bWVudERlY29k
ZXJSZWYsIHVpbnQzMl90Jik7CisKK1dLX0VYUE9SVCBib29sIFdLRGVjb2RlU3RyaW5nKFdLQXJn
dW1lbnREZWNvZGVyUmVmLCBXS1N0cmluZ1JlZiYpOworCisjaWZkZWYgX19jcGx1c3BsdXMKK30K
KyNlbmRpZgorCisKKyNlbmRpZiAvKiBXS0FyZ3VtZW50RGVjb2Rlcl9oICovCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tCYXNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCShyZXZpc2lvbiA4MjU5NCkKKysrIFNvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0Jhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtNjUsNiArNjUs
OCBAQCB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS1VSTFJlcXVlc3QqCiB0eXBlZGVmIGNv
bnN0IHN0cnVjdCBPcGFxdWVXS1VSTFJlc3BvbnNlKiBXS1VSTFJlc3BvbnNlUmVmOwogdHlwZWRl
ZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tVc2VyQ29udGVudFVSTFBhdHRlcm4qIFdLVXNlckNvbnRl
bnRVUkxQYXR0ZXJuUmVmOwogCit0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0FyZ3VtZW50
RGVjb2RlciogV0tBcmd1bWVudERlY29kZXJSZWY7CisKIC8qIFdlYktpdDIgbWFpbiBBUEkgdHlw
ZXMgKi8KIAogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tBcHBsaWNhdGlvbkNhY2hlTWFu
YWdlciogV0tBcHBsaWNhdGlvbkNhY2hlTWFuYWdlclJlZjsKQEAgLTEwMyw2ICsxMDUsNyBAQCB0
eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0J1bmRsZSogV0tCCiB0eXBlZGVmIGNvbnN0IHN0
cnVjdCBPcGFxdWVXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdCogV0tCdW5kbGVCYWNrRm9yd2FyZExp
c3RSZWY7CiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0J1bmRsZUJhY2tGb3J3YXJkTGlz
dEl0ZW0qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbVJlZjsKIHR5cGVkZWYgY29uc3Qgc3Ry
dWN0IE9wYXF1ZVdLQnVuZGxlRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiogV0tCdW5kbGVDU1NTdHls
ZURlY2xhcmF0aW9uUmVmOwordHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tCdW5kbGVFdmVu
dFNlbmRlciogV0tCdW5kbGVFdmVudFNlbmRlclJlZjsKIHR5cGVkZWYgY29uc3Qgc3RydWN0IE9w
YXF1ZVdLQnVuZGxlRnJhbWUqIFdLQnVuZGxlRnJhbWVSZWY7CiB0eXBlZGVmIGNvbnN0IHN0cnVj
dCBPcGFxdWVXS0J1bmRsZUhpdFRlc3RSZXN1bHQqIFdLQnVuZGxlSGl0VGVzdFJlc3VsdFJlZjsK
IHR5cGVkZWYgY29uc3Qgc3RydWN0IE9wYXF1ZVdLQnVuZGxlSW5zcGVjdG9yKiBXS0J1bmRsZUlu
c3BlY3RvclJlZjsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS01lc3NhZ2VJ
RC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS01lc3NhZ2VJ
RC5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLTWVzc2Fn
ZUlELmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
CisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorICogQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisgKiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2lmbmRlZiBXS01lc3NhZ2VJRF9oCisjZGVmaW5lIFdLTWVzc2FnZUlEX2gKKworbmFt
ZXNwYWNlIE1lc3NhZ2VzIHsKKworbmFtZXNwYWNlIEV2ZW50U2VuZGVyUHJveHkgeworCitlbnVt
IEtpbmQgeworICAgIEtleURvd25JRCwKK307CisKK30gLy8gbmFtZXNwYWNlIEV2ZW50U2VuZGVy
UHJveHkKKworfSAvLyBuYW1lc3BhY2UgTWVzc2FnZXMKKworI2VuZGlmIC8vIFdLTWVzc2FnZUlE
X2gKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNhc3QuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0
LmgJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU2hh
cmVkQVBJQ2FzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0OSwxMCBAQAogI2luY2x1ZGUg
PFdlYkNvcmUvSW50UmVjdC5oPgogI2luY2x1ZGUgPHd0Zi9UeXBlVHJhaXRzLmg+CiAKK25hbWVz
cGFjZSBDb3JlSVBDIHsKK2NsYXNzIEFyZ3VtZW50RGVjb2RlcjsKK30KKwogbmFtZXNwYWNlIFdl
YktpdCB7CiAKIGNsYXNzIEltbXV0YWJsZUFycmF5OwpAQCAtOTUsNiArOTksOCBAQCBXS19BRERf
QVBJX01BUFBJTkcoV0tVUkxSZXF1ZXN0UmVmLCBXZWJVCiBXS19BRERfQVBJX01BUFBJTkcoV0tV
UkxSZXNwb25zZVJlZiwgV2ViVVJMUmVzcG9uc2UpCiBXS19BRERfQVBJX01BUFBJTkcoV0tVc2Vy
Q29udGVudFVSTFBhdHRlcm5SZWYsIFdlYlVzZXJDb250ZW50VVJMUGF0dGVybikKIAorV0tfQURE
X0FQSV9NQVBQSU5HKFdLQXJndW1lbnREZWNvZGVyUmVmLCBDb3JlSVBDOjpBcmd1bWVudERlY29k
ZXIpCisKIHRlbXBsYXRlPHR5cGVuYW1lIEltcGxUeXBlLCB0eXBlbmFtZSBBUElUeXBlID0gdHlw
ZW5hbWUgSW1wbFR5cGVJbmZvPEltcGxUeXBlKj46OkFQSVR5cGU+CiBjbGFzcyBQcm94eWluZ1Jl
ZlB0ciB7CiBwdWJsaWM6CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4
dFVzZXJNZXNzYWdlQ29kZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkNvbnRleHRVc2VyTWVzc2FnZUNvZGVycy5oCShyZXZpc2lvbiA4MjU5NCkKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0VXNlck1lc3NhZ2VDb2RlcnMuaAkod29y
a2luZyBjb3B5KQpAQCAtMjUsNiArMjUsNyBAQAogCiAjaW5jbHVkZSAiVXNlck1lc3NhZ2VDb2Rl
cnMuaCIKICNpbmNsdWRlICJXZWJDb250ZXh0LmgiCisjaW5jbHVkZSAiV2ViRGF0YS5oIgogI2lu
Y2x1ZGUgIldlYkZyYW1lUHJveHkuaCIKICNpbmNsdWRlICJXZWJQYWdlR3JvdXAuaCIKICNpbmNs
dWRlICJXZWJQYWdlR3JvdXBEYXRhLmgiCkBAIC0xMjcsNiArMTI4LDE0IEBAIHB1YmxpYzoKICAg
ICAgICAgICAgIGNvZGVyLm1fcm9vdCA9IFdlYlBhZ2VHcm91cDo6Z2V0KHBhZ2VHcm91cElEKTsK
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CisgICAgICAgIGNhc2UgQVBJT2JqZWN0OjpU
eXBlRGF0YTogeworICAgICAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IGJ5dGVzOworICAgICAgICAg
ICAgaWYgKCFkZWNvZGVyLT5kZWNvZGVCeXRlcyhieXRlcykpCisgICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgICAgICAgICAgUmVmUHRyPFdlYkRhdGE+IHdlYkRhdGEgPSBXZWJEYXRh
OjpjcmVhdGUoYnl0ZXMucmVsZWFzZUJ1ZmZlcigpLCBieXRlcy5zaXplKCkpOworICAgICAgICAg
ICAgY29kZXIubV9yb290ID0gd2ViRGF0YS5yZWxlYXNlKCk7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgfQogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgICAgICB9CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA4MjU5NCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYktp
dDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMzU2LDYgKzM1
NiwxNSBAQAogCQk1MUQwMkY2QTEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlTWVz
c2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUx
RDAyRjY3MTMyRUM3MzcwMEJFQUE5NiAvKiBXZWJJY29uRGF0YWJhc2VNZXNzYWdlcy5oICovOyB9
OwogCQk1MUQwMkY2QjEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlUHJveHlNZXNz
YWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTFEMDJGNjgxMzJFQzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVz
c2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJNTFEMDJGNkMxMzJFQzczNzAwQkVBQTk2IC8qIFdl
Ykljb25EYXRhYmFzZVByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUxRDAyRjY5MTMyRUM3MzcwMEJFQUE5NiAvKiBXZWJJY29uRGF0
YWJhc2VQcm94eU1lc3NhZ2VzLmggKi87IH07CisJCTU2QkM2RDc2MTM0MzlDOUMwMDZCRDdBMyAv
KiBXS0FyZ3VtZW50RGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1NkJDNkQ3NTEzNDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29k
ZXIuY3BwICovOyB9OworCQk1NkJDNkQ3ODEzNDM5RjA0MDA2QkQ3QTMgLyogV0tBcmd1bWVudERl
Y29kZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2
QkM2RDc3MTM0MzlGMDQwMDZCRDdBMyAvKiBXS0FyZ3VtZW50RGVjb2Rlci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKKwkJNTZCQzZEN0MxMzQzQjkyRTAw
NkJEN0EzIC8qIFdLTWVzc2FnZUlELmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1NkJDNkQ3QjEzNDNCOTJFMDA2QkQ3QTMgLyogV0tNZXNzYWdlSUQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CisJCTU2Q0U3MTRC
MTMzM0JBQjEwMDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRBMTMzM0JBQjEw
MDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLzsgfTsKKwkJNTZDRTcx
NEQxMzMzQkFFRDAwNDlEODlFIC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRDMTMzM0JBRUQw
MDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmggKi87IH07CisJCTU2Q0U3MTRG
MTMzM0JCMkEwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRFMTMzM0JCMkEwMDQ5
RDg5RSAvKiBFdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaCAqLzsgfTsKKwkJNTZDRTcxNUExMzMz
QkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTZDRTcxNTgxMzMzQkJDMTAwNDlEODlFIC8q
IFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwICovOyB9OworCQk1NkNFNzE1QjEzMzNCQkMxMDA0OUQ4
OUUgLyogV0tCdW5kbGVFdmVudFNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTZDRTcxNTkxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZl
bnRTZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07
CisJCTU2RDAxREM4MTM0M0JDNDQwMDk4REUwNiAvKiBXS0FycmF5LmggaW4gQ29weUZpbGVzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNDA3NUQ4MTI0RkYwMjcwMDY4RjIw
QSAvKiBXS0FycmF5LmggKi87IH07CiAJCTY1MDFCRDFBMTJGMTI0MzQwMEU5RjI0OCAvKiBXS0J1
bmRsZUluc3BlY3Rvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA2NUI4NkYxNzEyRjExRDdCMDBCN0REOEEgLyogV0tCdW5kbGVJbnNwZWN0b3IuY3Bw
ICovOyB9OwogCQk2NTlDNTUxRTEzMDAwNjQxMDAyNUMwQzIgLyogSW5qZWN0ZWRCdW5kbGVQYWdl
UmVzb3VyY2VMb2FkQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDY1NDZBODI5MTMwMDAxNjQwMDBDRUIxQyAvKiBJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwICovOyB9OwogCQk2NUI4NkYxRTEyRjExREUzMDBCN0RE
OEEgLyogV0tCdW5kbGVJbnNwZWN0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDY1Qjg2RjE4MTJGMTFEN0IwMEI3REQ4QSAvKiBXS0J1bmRsZUluc3Bl
Y3Rvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKQEAg
LTg2OCw2ICs4NzcsNyBAQAogCQkJCTFBNTBEQjY2MTEwQTNENTcwMDBEM0ZFNSAvKiBXZWJQcm9j
ZXNzLmFwcCBpbiBDb3B5RmlsZXMgKi8sCiAJCQkJQkNERTBBQkYxMzI3MjcwODAwMTI1OUZCIC8q
IFBsdWdpblByb2Nlc3MuYXBwIGluIENvcHlGaWxlcyAqLywKIAkJCQlGNjM4OTU1MDEzM0JFRjM4
MDA4OTQxRDUgLyogSFRUUENvb2tpZUFjY2VwdFBvbGljeS5oIGluIENvcHlGaWxlcyAqLywKKwkJ
CQk1NkQwMURDODEzNDNCQzQ0MDA5OERFMDYgLyogV0tBcnJheS5oIGluIENvcHlGaWxlcyAqLywK
IAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsK
QEAgLTEyNDEsNiArMTI1MSwxNCBAQAogCQk1MUQwMkY2NzEzMkVDNzM3MDBCRUFBOTYgLyogV2Vi
SWNvbkRhdGFiYXNlTWVzc2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V2ViSWNvbkRhdGFiYXNlTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTFEMDJGNjgxMzJFQzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVzc2FnZVJl
Y2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkljb25E
YXRhYmFzZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNTFEMDJGNjkxMzJFQzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVz
c2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViSWNvbkRhdGFiYXNl
UHJveHlNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NkJDNkQ3NTEz
NDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29kZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV0tBcmd1bWVudERlY29kZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1NkJDNkQ3NzEzNDM5RjA0MDA2QkQ3QTMgLyogV0tBcmd1bWVudERl
Y29kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tBcmd1bWVudERlY29k
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTZCQzZEN0IxMzQzQjkyRTAwNkJE
N0EzIC8qIFdLTWVzc2FnZUlELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdL
TWVzc2FnZUlELmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTRBMTMzM0JB
QjEwMDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NkNFNzE0QzEzMzNCQUVEMDA0OUQ4OUUgLyog
SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU2Q0U3MTRFMTMzM0JCMkEwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5TWVzc2Fn
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRTZW5kZXJQcm94eU1l
c3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTU4MTMzM0JCQzEw
MDQ5RDg5RSAvKiBXS0J1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1NkNFNzE1OTEzMzNCQkMxMDA0OUQ4OUUgLyogV0tCdW5kbGVFdmVudFNl
bmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZUV2ZW50U2Vu
ZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVEQUQ3Mjk0MTE2RkY3MEIwMEVF
NTM5NiAvKiBXZWJQcm9jZXNzLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0
aCA9IFdlYlByb2Nlc3MueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVE
QUQ3M0YxMTE2RkY5MEMwMEVFNTM5NiAvKiBCYXNlVGFyZ2V0LnhjY29uZmlnICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dC54Y2NvbmZpZzsgcGF0aCA9IEJhc2VUYXJnZXQueGNjb25maWc7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTY1NDZBODI5MTMwMDAxNjQwMDBDRUIxQyAvKiBJbmplY3RlZEJ1bmRs
ZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwNDAsNiArMjA1OCw3IEBACiAJCQkJQkNFODFEOTcx
MzFBRTAyMTAwMjQxOTEwIC8qIERpY3Rpb25hcnlQb3B1cEluZm8uaCAqLywKIAkJCQlDNTE3Mzg4
MDEyREY4RjRGMDBFRTNGNDcgLyogRHJhZ0NvbnRyb2xsZXJBY3Rpb24uaCAqLywKIAkJCQkwRkI2
NTkyMjEyMDhCNERCMDA0NDgxNkMgLyogRHJhd2luZ0FyZWFJbmZvLmggKi8sCisJCQkJNTZDRTcx
NEUxMzMzQkIyQTAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oICovLAogCQkJ
CTc2MkI3NDgxMTIwQkJBMDEwMDgxOTMzOSAvKiBGb250U21vb3RoaW5nTGV2ZWwuaCAqLywKIAkJ
CQlGNjM4OTU0RjEzM0JFRjM4MDA4OTQxRDUgLyogSFRUUENvb2tpZUFjY2VwdFBvbGljeS5oICov
LAogCQkJCUJDQ0Y2QjIzMTJDOTNFN0EwMDhGOUMzNSAvKiBJbWFnZU9wdGlvbnMuaCAqLywKQEAg
LTI4MDgsNiArMjgyNyw4IEBACiAJCQkJOTM1RUVCOTIxMjc3NjE1RDAwMzMyMkI4IC8qIEluamVj
dGVkQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oICovLAogCQkJCUJDRUU3REM0MTI4QjY0NUQw
MDk4MjdEQSAvKiBJbmplY3RlZEJ1bmRsZUNsaWVudC5jcHAgKi8sCiAJCQkJQkNFRTdEQzMxMjhC
NjQ1RDAwOTgyN0RBIC8qIEluamVjdGVkQnVuZGxlQ2xpZW50LmggKi8sCisJCQkJNTZDRTcxNEEx
MzMzQkFCMTAwNDlEODlFIC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwICovLAorCQkJ
CTU2Q0U3MTRDMTMzM0JBRUQwMDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmgg
Ki8sCiAJCQkJQkM0OTg2MTcxMjREMTBFMjAwRDgzNEUxIC8qIEluamVjdGVkQnVuZGxlSGl0VGVz
dFJlc3VsdC5jcHAgKi8sCiAJCQkJQkM0OTg2MTYxMjREMTBFMjAwRDgzNEUxIC8qIEluamVjdGVk
QnVuZGxlSGl0VGVzdFJlc3VsdC5oICovLAogCQkJCUJDODE0N0Q0MTJGNjZEMzEwMDdCMkMzMiAv
KiBJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwICovLApAQCAtMjg1OSw2ICsyODgw
LDggQEAKIAkJCQk5MzVFRUI5NjEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2Fy
ZExpc3QuaCAqLywKIAkJCQk5MzVFRUI5NzEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNr
Rm9yd2FyZExpc3RJdGVtLmNwcCAqLywKIAkJCQk5MzVFRUI5ODEyNzc2MTZEMDAzMzIyQjggLyog
V0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggKi8sCisJCQkJNTZDRTcxNTgxMzMzQkJDMTAw
NDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwICovLAorCQkJCTU2Q0U3MTU5MTMzM0JC
QzEwMDQ5RDg5RSAvKiBXS0J1bmRsZUV2ZW50U2VuZGVyLmggKi8sCiAJCQkJQkNEMjVGMTYxMUQ2
QkRFMTAwMTY5QjBFIC8qIFdLQnVuZGxlRnJhbWUuY3BwICovLAogCQkJCUJDRDI1RjE1MTFENkJE
RTEwMDE2OUIwRSAvKiBXS0J1bmRsZUZyYW1lLmggKi8sCiAJCQkJQkNGMDQ5RTQxMUZFMjBGNjAw
Rjg2QTU4IC8qIFdLQnVuZGxlRnJhbWVQcml2YXRlLmggKi8sCkBAIC0zMDQ0LDYgKzMwNjcsOCBA
QAogCQkJCUJDNDA3NUQ1MTI0RkVGRkEwMDY4RjIwQSAvKiBjZiAqLywKIAkJCQlCQ0NGNkFDNDEy
QzkxRjNCMDA4RjlDMzUgLyogY2cgKi8sCiAJCQkJQkM0MDc1RDYxMjRGRjAwMDAwNjhGMjBBIC8q
IG1hYyAqLywKKwkJCQk1NkJDNkQ3NTEzNDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29k
ZXIuY3BwICovLAorCQkJCTU2QkM2RDc3MTM0MzlGMDQwMDZCRDdBMyAvKiBXS0FyZ3VtZW50RGVj
b2Rlci5oICovLAogCQkJCUJDNDA3NUQ3MTI0RkYwMjcwMDY4RjIwQSAvKiBXS0FycmF5LmNwcCAq
LywKIAkJCQlCQzQwNzVEODEyNEZGMDI3MDA2OEYyMEEgLyogV0tBcnJheS5oICovLAogCQkJCUJD
RERCMzE2MTI0RUJEMTMwMDQ4RDEzQyAvKiBXS0Jhc2UuaCAqLywKQEAgLTMwNjUsNiArMzA5MCw3
IEBACiAJCQkJQkNBNTZBNjMxMkY5QzhGOTAwQzU2NkM3IC8qIFdLR3JhcGhpY3NDb250ZXh0Lmgg
Ki8sCiAJCQkJQkNDRjZBQzAxMkM5MUYzNDAwOEY5QzM1IC8qIFdLSW1hZ2UuY3BwICovLAogCQkJ
CUJDQ0Y2QUMxMTJDOTFGMzQwMDhGOUMzNSAvKiBXS0ltYWdlLmggKi8sCisJCQkJNTZCQzZEN0Ix
MzQzQjkyRTAwNkJEN0EzIC8qIFdLTWVzc2FnZUlELmggKi8sCiAJCQkJQkM0MDc1RTExMjRGRjAy
NzAwNjhGMjBBIC8qIFdLTXV0YWJsZUFycmF5LmNwcCAqLywKIAkJCQlCQzQwNzVFMjEyNEZGMDI3
MDA2OEYyMEEgLyogV0tNdXRhYmxlQXJyYXkuaCAqLywKIAkJCQlCQzQwNzVFMzEyNEZGMDI3MDA2
OEYyMEEgLyogV0tNdXRhYmxlRGljdGlvbmFyeS5jcHAgKi8sCkBAIC0zNjUxLDYgKzM2NzcsMTEg
QEAKIAkJCQlDMDY0NTA0QTEzM0JFNzA5MDAzNDcwRTIgLyogTGF5ZXJUcmVlSG9zdENBLmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MTEwQUUwRDEzM0MxNkNCMDA3MjcxN0EgLyogV0tJY29uRGF0YWJh
c2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxMjNDRjFDMTMzRDI2MEEwMDU2RjgwMCAvKiBXS0lj
b25EYXRhYmFzZUNHLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NkNFNzE0RDEzMzNCQUVEMDA0OUQ4
OUUgLyogSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTZD
RTcxNEYxMzMzQkIyQTAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTZDRTcxNUIxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRT
ZW5kZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTU2QkM2RDc4MTM0MzlGMDQwMDZCRDdBMyAvKiBX
S0FyZ3VtZW50RGVjb2Rlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTZCQzZEN0MxMzQzQjkyRTAw
NkJEN0EzIC8qIFdLTWVzc2FnZUlELmggaW4gSGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTQyNzUsNiArNDMwNiw5
IEBACiAJCQkJNTEyM0NGMUIxMzNEMjYwQTAwNTZGODAwIC8qIFdLSWNvbkRhdGFiYXNlQ0cuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJRjZBOTA4MTMxMzNDMjA1MTAwODJDM0Y0IC8qIFdlYkNvb2tp
ZU1hbmFnZXJNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQlGNkQ2MzJCQzEzM0QxOTgyMDA3NDNE
NzcgLyogV2ViQ29va2llTWFuYWdlclByb3h5TWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTZD
RTcxNEIxMzMzQkFCMTAwNDlEODlFIC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTZDRTcxNUExMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZl
bnRTZW5kZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTZCQzZENzYxMzQzOUM5QzAwNkJEN0Ez
IC8qIFdLQXJndW1lbnREZWNvZGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9u
bHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJbmRleDogU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZS5jcHAJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4
LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgIkFyZ3VtZW50cy5oIgogI2luY2x1ZGUgIkltbXV0YWJs
ZUFycmF5LmgiCisjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oIgogI2luY2x1
ZGUgIkluamVjdGVkQnVuZGxlTWVzc2FnZUtpbmRzLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5k
bGVTY3JpcHRXb3JsZC5oIgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VDb2Rl
cnMuaCIKQEAgLTU3LDYgKzU4LDkgQEAgSW5qZWN0ZWRCdW5kbGU6OkluamVjdGVkQnVuZGxlKGNv
bnN0IFN0cgogICAgIDogbV9wYXRoKHBhdGgpCiAgICAgLCBtX3BsYXRmb3JtQnVuZGxlKDApCiB7
CisjaWYgUExBVEZPUk0oTUFDKQorICAgIG1fZXZlbnRTZW5kZXIgPSB0b0FQSShJbmplY3RlZEJ1
bmRsZUV2ZW50U2VuZGVyOjpjcmVhdGUoKSk7CisjZW5kaWYKICAgICBpbml0aWFsaXplQ2xpZW50
KDApOwogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCShyZXZpc2lvbiA4MjU5NCkKKysrIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaAko
d29ya2luZyBjb3B5KQpAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAiQVBJT2JqZWN0Lmgi
CiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVDbGllbnQuaCIKKyNpbmNsdWRlICJJbmplY3RlZEJ1
bmRsZUV2ZW50U2VuZGVyLmgiCiAjaW5jbHVkZSAiU2FuZGJveEV4dGVuc2lvbi5oIgogI2luY2x1
ZGUgIldLQnVuZGxlLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyQ29udGVudFR5cGVzLmg+CkBA
IC03OCw4ICs3OSw5IEBAIHB1YmxpYzoKIAogICAgIC8vIEFQSQogICAgIHZvaWQgaW5pdGlhbGl6
ZUNsaWVudChXS0J1bmRsZUNsaWVudCopOwotICAgIHZvaWQgcG9zdE1lc3NhZ2UoY29uc3QgU3Ry
aW5nJiwgQVBJT2JqZWN0Kik7CisgICAgc3RhdGljIHZvaWQgcG9zdE1lc3NhZ2UoY29uc3QgU3Ry
aW5nJiwgQVBJT2JqZWN0Kik7CiAgICAgdm9pZCBwb3N0U3luY2hyb25vdXNNZXNzYWdlKGNvbnN0
IFN0cmluZyYsIEFQSU9iamVjdCosIFJlZlB0cjxBUElPYmplY3Q+JiByZXR1cm5EYXRhKTsKKyAg
ICBXS0J1bmRsZUV2ZW50U2VuZGVyUmVmIGV2ZW50U2VuZGVyKCkgY29uc3QgeyByZXR1cm4gbV9l
dmVudFNlbmRlcjsgfQogI2lmIFBMQVRGT1JNKFdJTikKICAgICB2b2lkIHNldEhvc3RBbGxvd3NB
bnlIVFRQU0NlcnRpZmljYXRlKGNvbnN0IFN0cmluZyYpOwogICAgIHZvaWQgc2V0Q2xpZW50Q2Vy
dGlmaWNhdGUoY29uc3QgU3RyaW5nJiwgY29uc3QgV2ViQ2VydGlmaWNhdGVJbmZvKik7CkBAIC0x
MjQsNiArMTI2LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9wYXRoOwogICAgIFBsYXRmb3Jt
QnVuZGxlIG1fcGxhdGZvcm1CdW5kbGU7IC8vIFRoaXMgaXMgbGVha2VkIHJpZ2h0IG5vdywgc2lu
Y2Ugd2UgbmV2ZXIgdW5sb2FkIHRoZSBidW5kbGUvbW9kdWxlLgogCisgICAgV0tCdW5kbGVFdmVu
dFNlbmRlclJlZiBtX2V2ZW50U2VuZGVyOwogICAgIFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPiBt
X3NhbmRib3hFeHRlbnNpb247CiAKICAgICBJbmplY3RlZEJ1bmRsZUNsaWVudCBtX2NsaWVudDsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGVFdmVudFNlbmRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcAkocmV2aXNp
b24gMCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVFdmVudFNlbmRlci5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjkgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lk
aWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
CisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgor
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSW5q
ZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oIgorCisjaW5jbHVkZSAiQVBJT2JqZWN0LmgiCisjaW5j
bHVkZSAiQXJndW1lbnRDb2RlcnMuaCIKKyNpbmNsdWRlICJFdmVudFNlbmRlclByb3h5TWVzc2Fn
ZXMuaCIKKyNpbmNsdWRlIDxJbmplY3RlZEJ1bmRsZS5oPgorI2luY2x1ZGUgPE1lc3NhZ2VJRC5o
PgorI2luY2x1ZGUgPFdLU3RyaW5nLmg+CisjaW5jbHVkZSA8V2ViQ29udGV4dE1lc3NhZ2VLaW5k
cy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvVXNlckNvbnRlbnRUeXBlcy5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvVXNlclNjcmlwdFR5cGVzLmg+CisjaW5jbHVkZSA8V2ViRGF0YS5oPgorI2luY2x1ZGUg
PFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KKyNpbmNsdWRlIDxXZWJQcm9jZXNzLmg+CisjaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK0luamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIqIEluamVjdGVk
QnVuZGxlRXZlbnRTZW5kZXI6OmNyZWF0ZSgpCit7CisgICAgcmV0dXJuIG5ldyBJbmplY3RlZEJ1
bmRsZUV2ZW50U2VuZGVyKCk7Cit9CisKK0luamVjdGVkQnVuZGxlRXZlbnRTZW5kZXI6OkluamVj
dGVkQnVuZGxlRXZlbnRTZW5kZXIoKQoreworfQorCitJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVy
Ojp+SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcigpCit7Cit9CisKK3ZvaWQgSW5qZWN0ZWRCdW5k
bGVFdmVudFNlbmRlcjo6a2V5RG93bihjb25zdCBTdHJpbmcmIGtleSwgdW5zaWduZWQgaW50IG1v
ZGlmLCB1bnNpZ25lZCBpbnQgbG9jYXRpb24pCit7CisgICAgT3duUHRyPENvcmVJUEM6OkFyZ3Vt
ZW50RW5jb2Rlcj4gYXJndW1lbnRFbmNvZGVyID0gQ29yZUlQQzo6QXJndW1lbnRFbmNvZGVyOjpj
cmVhdGUoMCk7CisgICAgYXJndW1lbnRFbmNvZGVyLT5lbmNvZGUoTWVzc2FnZXM6OkV2ZW50U2Vu
ZGVyUHJveHk6OktleURvd24oa2V5LCBtb2RpZiwgbG9jYXRpb24pKTsKKyAgICBSZWZQdHI8V2Vi
RGF0YT4gd2ViRGF0YSA9IFdlYkRhdGE6OmNyZWF0ZShhcmd1bWVudEVuY29kZXItPmJ1ZmZlcigp
LCBhcmd1bWVudEVuY29kZXItPmJ1ZmZlclNpemUoKSk7CisgICAgSW5qZWN0ZWRCdW5kbGU6OnBv
c3RNZXNzYWdlKCJFdmVudFNlbmRlciIsIHdlYkRhdGEucmVsZWFzZSgpLmdldCgpKTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVF
dmVudFNlbmRlci5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNDkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9u
IGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEluamVjdGVk
QnVuZGxlRXZlbnRTZW5kZXJfaAorI2RlZmluZSBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyX2gK
KworI2luY2x1ZGUgIkFQSU9iamVjdC5oIgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitj
bGFzcyBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgSW5q
ZWN0ZWRCdW5kbGVFdmVudFNlbmRlciogY3JlYXRlKCk7CisgICAgfkluamVjdGVkQnVuZGxlRXZl
bnRTZW5kZXIoKTsKKworICAgIHZvaWQga2V5RG93bihjb25zdCBTdHJpbmcmIGtleSwgdW5zaWdu
ZWQgaW50IG1vZGlmLCB1bnNpZ25lZCBpbnQgbG9jYXRpb24pOworCitwcml2YXRlOgorICAgIElu
amVjdGVkQnVuZGxlRXZlbnRTZW5kZXIoKTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAor
CisjZW5kaWYgLy8gSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcl9oCkluZGV4OiBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VD
b2RlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VDb2RlcnMuaAkocmV2aXNpb24gODI1OTQp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlVXNlck1lc3NhZ2VDb2RlcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsNiArMjcsNyBAQAog
I2RlZmluZSBJbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlQ29kZXJzX2gKIAogI2luY2x1ZGUgIlVz
ZXJNZXNzYWdlQ29kZXJzLmgiCisjaW5jbHVkZSAiV2ViRGF0YS5oIgogI2luY2x1ZGUgIldlYkZy
YW1lLmgiCiAjaW5jbHVkZSAiV2ViUGFnZS5oIgogI2luY2x1ZGUgIldlYlBhZ2VHcm91cERhdGEu
aCIKQEAgLTcxLDYgKzcyLDExIEBAIHB1YmxpYzoKICAgICAgICAgICAgIGVuY29kZXItPmVuY29k
ZShwYWdlR3JvdXAtPnBhZ2VHcm91cElEKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KKyAgICAgICAgY2FzZSBBUElPYmplY3Q6OlR5cGVEYXRhOiB7CisgICAgICAgICAgICBXZWJE
YXRhKiB3ZWJEYXRhID0gc3RhdGljX2Nhc3Q8V2ViRGF0YSo+KG1fcm9vdCk7CisgICAgICAgICAg
ICBlbmNvZGVyLT5lbmNvZGVCeXRlcyh3ZWJEYXRhLT5ieXRlcygpLCB3ZWJEYXRhLT5zaXplKCkp
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KICAgICAgICAgZGVmYXVsdDoKICAgICAg
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgICAgICAgICAgYnJlYWs7CkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0FQSS9jL1dLQnVuZGxlLmNwcAkocmV2aXNpb24gODI1OTQpCisrKyBTb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNDUsNiArNDUsMTEgQEAgdm9pZCBXS0J1bmRsZVNldENsaWVudChXS0J1bmRsZVJlZiBi
dW5kbAogICAgIHRvSW1wbChidW5kbGVSZWYpLT5pbml0aWFsaXplQ2xpZW50KHdrQ2xpZW50KTsK
IH0KIAorV0tCdW5kbGVFdmVudFNlbmRlclJlZiBXS0J1bmRsZUdldEV2ZW50U2VuZGVyKFdLQnVu
ZGxlUmVmIGJ1bmRsZVJlZikKK3sKKyAgICByZXR1cm4gdG9JbXBsKGJ1bmRsZVJlZiktPmV2ZW50
U2VuZGVyKCk7Cit9CisKIHZvaWQgV0tCdW5kbGVQb3N0TWVzc2FnZShXS0J1bmRsZVJlZiBidW5k
bGVSZWYsIFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lUmVmLCBXS1R5cGVSZWYgbWVzc2FnZUJvZHlS
ZWYpCiB7CiAgICAgdG9JbXBsKGJ1bmRsZVJlZiktPnBvc3RNZXNzYWdlKHRvSW1wbChtZXNzYWdl
TmFtZVJlZiktPnN0cmluZygpLCB0b0ltcGwobWVzc2FnZUJvZHlSZWYpKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGUuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9j
L1dLQnVuZGxlLmgJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MSw2
ICs1MSw4IEBAIHR5cGVkZWYgc3RydWN0IFdLQnVuZGxlQ2xpZW50IFdLQnVuZGxlQ2wKIAogV0tf
RVhQT1JUIFdLVHlwZUlEIFdLQnVuZGxlR2V0VHlwZUlEKCk7CiAKK1dLX0VYUE9SVCBXS0J1bmRs
ZUV2ZW50U2VuZGVyUmVmIFdLQnVuZGxlR2V0RXZlbnRTZW5kZXIoV0tCdW5kbGVSZWYgYnVuZGxl
UmVmKTsKKwogV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVTZXRDbGllbnQoV0tCdW5kbGVSZWYgYnVu
ZGxlLCBXS0J1bmRsZUNsaWVudCAqIGNsaWVudCk7CiAKIFdLX0VYUE9SVCB2b2lkIFdLQnVuZGxl
UG9zdE1lc3NhZ2UoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS1N0cmluZ1JlZiBtZXNzYWdlTmFtZSwg
V0tUeXBlUmVmIG1lc3NhZ2VCb2R5KTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVBUElDYXN0LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUFQSUNh
c3QuaAkocmV2aXNpb24gODI1OTQpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlQVBJQ2FzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2
ICs0NCw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgSW5qZWN0ZWRCdW5kbGU7CiBjbGFz
cyBJbmplY3RlZEJ1bmRsZUJhY2tGb3J3YXJkTGlzdDsKIGNsYXNzIEluamVjdGVkQnVuZGxlQmFj
a0ZvcndhcmRMaXN0SXRlbTsKK2NsYXNzIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXI7CiBjbGFz
cyBJbmplY3RlZEJ1bmRsZUhpdFRlc3RSZXN1bHQ7CiBjbGFzcyBJbmplY3RlZEJ1bmRsZU5hdmln
YXRpb25BY3Rpb247CiBjbGFzcyBJbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGU7CkBAIC01OCw2ICs1
OSw3IEBAIGNsYXNzIFdlYlBhZ2VHcm91cFByb3h5OwogV0tfQUREX0FQSV9NQVBQSU5HKFdLQnVu
ZGxlQmFja0ZvcndhcmRMaXN0SXRlbVJlZiwgSW5qZWN0ZWRCdW5kbGVCYWNrRm9yd2FyZExpc3RJ
dGVtKQogV0tfQUREX0FQSV9NQVBQSU5HKFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0UmVmLCBJbmpl
Y3RlZEJ1bmRsZUJhY2tGb3J3YXJkTGlzdCkKIFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUNT
U1N0eWxlRGVjbGFyYXRpb25SZWYsIFdlYkNvcmU6OkNTU1N0eWxlRGVjbGFyYXRpb24pCitXS19B
RERfQVBJX01BUFBJTkcoV0tCdW5kbGVFdmVudFNlbmRlclJlZiwgSW5qZWN0ZWRCdW5kbGVFdmVu
dFNlbmRlcikKIFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUZyYW1lUmVmLCBXZWJGcmFtZSkK
IFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUhpdFRlc3RSZXN1bHRSZWYsIEluamVjdGVkQnVu
ZGxlSGl0VGVzdFJlc3VsdCkKIFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUluc3BlY3RvclJl
ZiwgV2ViSW5zcGVjdG9yKQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUV2ZW50U2VuZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRT
ZW5kZXIuY3BwCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUV2ZW50U2VuZGVyLmNwcAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpbmNsdWRlICJXS0J1bmRsZUV2ZW50U2VuZGVyLmgiCisKKyNpbmNsdWRlICJJbmplY3Rl
ZEJ1bmRsZUV2ZW50U2VuZGVyLmgiCisjaW5jbHVkZSAiV0tCdW5kbGVBUElDYXN0LmgiCisKK3Vz
aW5nIG5hbWVzcGFjZSBXZWJLaXQ7CisKK3ZvaWQgV0tCdW5kbGVFdmVudFNlbmRlcktleURvd24o
V0tCdW5kbGVFdmVudFNlbmRlclJlZiBldmVudFNlbmRlclJlZiwgV0tTdHJpbmdSZWYga2V5UmVm
LCB1aW50MzJfdCBtb2RpZiwgdWludDMyX3QgbG9jYXRpb24pCit7CisgICAgdG9JbXBsKGV2ZW50
U2VuZGVyUmVmKS0+a2V5RG93bih0b0ltcGwoa2V5UmVmKS0+c3RyaW5nKCksIHN0YXRpY19jYXN0
PHVuc2lnbmVkIGludD4odG9JbXBsKG1vZGlmKSksIHRvSW1wbChsb2NhdGlvbikpOworfQorCklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVu
ZGxlRXZlbnRTZW5kZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuaAkocmV2aXNpb24gMCkK
KysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5k
bGVFdmVudFNlbmRlci5oCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ0IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWll
cykKKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2lmbmRlZiBXS0J1bmRsZUV2ZW50U2VuZGVyX2gKKyNkZWZpbmUgV0tC
dW5kbGVFdmVudFNlbmRlcl9oCisKKyNpbmNsdWRlIDxXZWJLaXQyL1dLQmFzZS5oPgorCisjaWZk
ZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2VuZGlmCisKK1dLX0VYUE9SVCBXS1R5cGVJ
RCBXS0J1bmRsZUV2ZW50U2VuZGVyR2V0VHlwZUlEKCk7CisKK1dLX0VYUE9SVCB2b2lkIFdLQnVu
ZGxlRXZlbnRTZW5kZXJLZXlEb3duKFdLQnVuZGxlRXZlbnRTZW5kZXJSZWYgZXZlbnRTZW5kZXJS
ZWYsIFdLU3RyaW5nUmVmIGtleVJlZiwgdWludDMyX3QgbW9kaWYsIHVpbnQzMl90IGxvY2F0aW9u
KTsKKworI2lmZGVmIF9fY3BsdXNwbHVzCit9CisjZW5kaWYKKworI2VuZGlmIC8vIFdLQnVuZGxl
RXZlbnRTZW5kZXJfaApJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L0NoYW5nZUxvZwkocmV2aXNpb24gODI1OTQpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwzMyBAQAorMjAxMS0wMy0zMSAgQ2hhbmcgU2h1ICA8Y3NodUB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFtNYWNdIFtXSzJdIEltcGxlbWVudCBLZXlEb3duIGZ1bmN0aW9uIGZvciBXZWJLaXQyIEV2ZW50
U2VuZGVyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTc1MTUKKworICAgICAgICBUaGUgZm9sbG93aW5nIGNvZGUgY2hhbmdlIGJ1aWxkcyB1cCB0aGUg
aW5mcmFzdHJ1Y3R1cmUgZm9yCisgICAgICAgIFdlYktpdFRlc3RSdW5uZXIgRXZlbnRTZW5kZXIg
dG8gc2VuZCBtZXNzYWdlcyBmcm9tIHRoZSBJbmplY3RlZEJ1bmRsZQorICAgICAgICBpbiBXZWJQ
cm9jZXNzIHRvIFVJUHJvY2VzcyBvZiBXZWJLaXRUZXN0UnVubmVyLgorCisgICAgICAgIFRoZSBi
YXNpYyBLZXlEb3duIGZ1bmN0aW9uYWxpdHkgaXMgaW1wbGVtZW50ZWQgZXhjZXB0IHRoZSBsb2Nh
bCBpbXBsZW1lbnRhdGlvbi4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvRXZlbnRTZW5k
ZXJQcm94eS5jcHA6IEFkZGVkLgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5OjpjcmVh
dGUpOgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5OjpFdmVudFNlbmRlclByb3h5KToK
KyAgICAgICAgKFdUUjo6RXZlbnRTZW5kZXJQcm94eTo6ZGlkUmVjZWl2ZUV2ZW50U2VuZGVyUHJv
eHlNZXNzYWdlKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJveHku
aDogQWRkZWQuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVu
dFNlbmRpbmdDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6RXZlbnRTZW5kaW5nQ29udHJv
bGxlcjo6a2V5RG93bik6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9JbmplY3RlZEJ1bmRsZS5oOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZTo6ZXZlbnRT
ZW5kZXIpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6VGVzdENvbnRyb2xsZXIpOgorICAgICAgICAo
V1RSOjpUZXN0Q29udHJvbGxlcjo6ZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5kbGUp
OgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaDoKKyAgICAgICAg
KiBXZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlci5oOiBBZGRl
ZC4KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlck1hYy5tbTogQWRk
ZWQuCisKIDIwMTEtMDMtMzEgIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFydGluIFJvYmluc29uLgpJbmRleDogVG9vbHMv
U2NyaXB0cy9idWlsZC13ZWJraXQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9idWlsZC13
ZWJraXQJKHJldmlzaW9uIDgyNTk0KQorKysgVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHdv
cmtpbmcgY29weSkKQEAgLTUwNSw2ICs1MDUsNyBAQCBpZiAoaXNHdGsoKSkgewogICAgIHB1c2gg
QG9wdGlvbnMsICItLWluc3RhbGwtaGVhZGVycz0iIC4gJGluc3RhbGxIZWFkZXJzIGlmIGRlZmlu
ZWQoJGluc3RhbGxIZWFkZXJzKTsKICAgICBwdXNoIEBvcHRpb25zLCAiLS1pbnN0YWxsLWxpYnM9
IiAuICRpbnN0YWxsTGlicyBpZiBkZWZpbmVkKCRpbnN0YWxsTGlicyk7CiAgICAgcHVzaCBAb3B0
aW9ucywgIi0tbWFrZWFyZ3M9IiAuICRtYWtlQXJncyBpZiAkbWFrZUFyZ3M7CisgICAgcHVzaCBA
b3B0aW9ucywgIi0tcW1ha2Vhcmc9Q09ORklHKz13ZWJraXQyIiBpZiAhJG5vV2ViS2l0MjsKIAog
ICAgIGZvcmVhY2ggKEBmZWF0dXJlcykgewogICAgICAgICBwdXNoIEBvcHRpb25zLCAiREVGSU5F
Uys9JF8tPntkZWZpbmV9PSR7JF8tPnt2YWx1ZX19IiBpZiAkeyRfLT57dmFsdWV9fSAhPSAkXy0+
e2RlZmF1bHR9OwpJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJv
eHkuY3BwCShyZXZpc2lvbiAwKQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRl
clByb3h5LmNwcAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2NiBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJFdmVudFNlbmRlclByb3h5
LmgiCisKKyNpbmNsdWRlIDxXZWJLaXQyL1dLQXJndW1lbnREZWNvZGVyLmg+CisjaW5jbHVkZSA8
V2ViS2l0Mi9XS0FycmF5Lmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XS01lc3NhZ2VJRC5oPgorCitu
YW1lc3BhY2UgV1RSIHsKKworRXZlbnRTZW5kZXJQcm94eSogRXZlbnRTZW5kZXJQcm94eTo6Y3Jl
YXRlKFRlc3RDb250cm9sbGVyKiB0ZXN0Q29udHJvbGxlcikKK3sKKyAgICByZXR1cm4gbmV3IEV2
ZW50U2VuZGVyUHJveHkodGVzdENvbnRyb2xsZXIpOworfQorCitFdmVudFNlbmRlclByb3h5OjpF
dmVudFNlbmRlclByb3h5KFRlc3RDb250cm9sbGVyKiB0ZXN0Q29udHJvbGxlcikKKyAgICA6IG1f
dGVzdENvbnRyb2xsZXIodGVzdENvbnRyb2xsZXIpCit7CisvLyBUT0RPICAgIG1fZXZlbnRTZW5k
ZXIgPSBuZXcgRXZlbnRTZW5kZXIoKTsKK307CisKK3ZvaWQgRXZlbnRTZW5kZXJQcm94eTo6ZGlk
UmVjZWl2ZUV2ZW50U2VuZGVyUHJveHlNZXNzYWdlKFdLRGF0YVJlZiB3ZWJEYXRhKQoreworICAg
IFdLQXJndW1lbnREZWNvZGVyUmVmIGFyZ3VtZW50RGVjb2RlclJlZiA9IFdLQ3JlYXRlQXJndW1l
bnREZWNvZGVyKFdLRGF0YUdldEJ5dGVzKHdlYkRhdGEpLCBXS0RhdGFHZXRTaXplKHdlYkRhdGEp
KTsKKyAgICB1aW50MzJfdCBtZXNzYWdlSURVaW50MzI7CisgICAgaWYgKCFXS0RlY29kZVVJbnQz
Mihhcmd1bWVudERlY29kZXJSZWYsIG1lc3NhZ2VJRFVpbnQzMikpCisgICAgICAgIHJldHVybjsK
KyAgICBzd2l0Y2ggKHN0YXRpY19jYXN0PE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLaW5k
PihtZXNzYWdlSURVaW50MzIpKSB7CisgICAgY2FzZSBNZXNzYWdlczo6RXZlbnRTZW5kZXJQcm94
eTo6S2V5RG93bklEOgorICAgICAgICBXS1N0cmluZ1JlZiBrZXk7CisgICAgICAgIHVpbnQzMl90
IG1vZGlmaWVyczsKKyAgICAgICAgdWludDMyX3QgbG9jYXRpb247CisgICAgICAgIGlmIChXS0Rl
Y29kZVN0cmluZyhhcmd1bWVudERlY29kZXJSZWYsIGtleSkgJiYgV0tEZWNvZGVVSW50MzIoYXJn
dW1lbnREZWNvZGVyUmVmLCBtb2RpZmllcnMpICYmIFdLRGVjb2RlVUludDMyKGFyZ3VtZW50RGVj
b2RlclJlZiwgbG9jYXRpb24pKQorICAgICAgICAgICAgZnB1dHMoIkltcGxlbWVudCBrZXlEb3du
IGluIFdUUi5cbiIsIHN0ZGVycik7IC8vIFRPRE8gbV9ldmVudFNlbmRlci0+a2V5RG93bihrZXks
IG1vZGlmaWVycywgbG9jYXRpb24pOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICB9Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YktpdApJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5LmgJKHJl
dmlzaW9uIDApCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJveHkuaAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9r
aWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
Zm5kZWYgRXZlbnRTZW5kZXJQcm94eV9oCisjZGVmaW5lIEV2ZW50U2VuZGVyUHJveHlfaAorCisv
L1RPRE8gI2luY2x1ZGUgIkV2ZW50U2VuZGVyLmgiCisjaW5jbHVkZSAiVGVzdENvbnRyb2xsZXIu
aCIKKyNpbmNsdWRlICJXZWJLaXQyL1dLU3RyaW5nLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJL
aXQ7CisKK25hbWVzcGFjZSBXVFIgeworCitjbGFzcyBFdmVudFNlbmRlclByb3h5IHsKK3B1Ymxp
YzoKKworICAgIHN0YXRpYyBFdmVudFNlbmRlclByb3h5KiBjcmVhdGUoVGVzdENvbnRyb2xsZXIq
KTsKKworICAgIHZvaWQgZGlkUmVjZWl2ZUV2ZW50U2VuZGVyUHJveHlNZXNzYWdlKFdLRGF0YVJl
Zik7CisKK3ByaXZhdGU6CisgICAgRXZlbnRTZW5kZXJQcm94eShUZXN0Q29udHJvbGxlciopOwor
CisgICAgVGVzdENvbnRyb2xsZXIqIG1fdGVzdENvbnRyb2xsZXI7CisvLyBUT0RPICAgIEV2ZW50
U2VuZGVyKiBtX2V2ZW50U2VuZGVyOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNl
bmRpZiAvLyBXZWJQYWdlUHJveHlfaApJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0
Q29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0
Q29udHJvbGxlci5jcHAJKHJldmlzaW9uIDgyNTk0KQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9UZXN0Q29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDkgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJUZXN0Q29udHJvbGxlci5oIgogCisjaWYgUExB
VEZPUk0oTUFDKQorI2luY2x1ZGUgPEV2ZW50U2VuZGVyUHJveHkuaD4KKyNlbmRpZgogI2luY2x1
ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUgIlN0cmluZ0Z1bmN0aW9ucy5oIgogI2lu
Y2x1ZGUgIlRlc3RJbnZvY2F0aW9uLmgiCkBAIC02Niw2ICs2OSw5IEBAIFRlc3RDb250cm9sbGVy
OjpUZXN0Q29udHJvbGxlcihpbnQgYXJnYywKICAgICAsIG1fc2hvcnRUaW1lb3V0KGRlZmF1bHRT
aG9ydFRpbWVvdXQpCiAgICAgLCBtX2RpZFByaW50V2ViUHJvY2Vzc0NyYXNoZWRNZXNzYWdlKGZh
bHNlKQogICAgICwgbV9zaG91bGRFeGl0V2hlbldlYlByb2Nlc3NDcmFzaGVzKHRydWUpCisjaWYg
UExBVEZPUk0oTUFDKQorICAgICwgbV9ldmVudFNlbmRlclByb3h5KEV2ZW50U2VuZGVyUHJveHk6
OmNyZWF0ZSh0aGlzKSkKKyNlbmRpZgogewogICAgIGluaXRpYWxpemUoYXJnYywgYXJndik7CiAg
ICAgY29udHJvbGxlciA9IHRoaXM7CkBAIC00NTgsNiArNDY0LDEzIEBAIHZvaWQgVGVzdENvbnRy
b2xsZXI6OmRpZFJlY2VpdmVTeW5jaHJvbm8KIAogdm9pZCBUZXN0Q29udHJvbGxlcjo6ZGlkUmVj
ZWl2ZU1lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5kbGUoV0tTdHJpbmdSZWYgbWVzc2FnZU5hbWUsIFdL
VHlwZVJlZiBtZXNzYWdlQm9keSkKIHsKKyNpZiBQTEFURk9STShNQUMpCisgICAgaWYgKFdLU3Ry
aW5nSXNFcXVhbFRvVVRGOENTdHJpbmcobWVzc2FnZU5hbWUsICJFdmVudFNlbmRlciIpKSB7Cisg
ICAgICAgIEFTU0VSVChXS0dldFR5cGVJRChtZXNzYWdlQm9keSkgPT0gV0tEYXRhR2V0VHlwZUlE
KCkpOworICAgICAgICBtX2V2ZW50U2VuZGVyUHJveHktPmRpZFJlY2VpdmVFdmVudFNlbmRlclBy
b3h5TWVzc2FnZShzdGF0aWNfY2FzdDxXS0RhdGFSZWY+KG1lc3NhZ2VCb2R5KSk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisjZW5kaWYKICAgICBpZiAoIW1fY3VycmVudEludm9jYXRpb24pCiAg
ICAgICAgIHJldHVybjsKICAgICBtX2N1cnJlbnRJbnZvY2F0aW9uLT5kaWRSZWNlaXZlTWVzc2Fn
ZUZyb21JbmplY3RlZEJ1bmRsZShtZXNzYWdlTmFtZSwgbWVzc2FnZUJvZHkpOwpJbmRleDogVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAkocmV2aXNpb24gODI1OTQpCisrKyBU
b29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAg
LTM1LDYgKzM1LDcgQEAgbmFtZXNwYWNlIFdUUiB7CiAKIGNsYXNzIFRlc3RJbnZvY2F0aW9uOwog
Y2xhc3MgUGxhdGZvcm1XZWJWaWV3OworY2xhc3MgRXZlbnRTZW5kZXJQcm94eTsKIAogLy8gRklY
TUU6IFJlbmFtZSB0aGlzIFRlc3RSdW5uZXI/CiBjbGFzcyBUZXN0Q29udHJvbGxlciB7CkBAIC0x
MjAsNiArMTIxLDggQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgbV9kaWRQcmludFdlYlByb2Nlc3ND
cmFzaGVkTWVzc2FnZTsKICAgICBib29sIG1fc2hvdWxkRXhpdFdoZW5XZWJQcm9jZXNzQ3Jhc2hl
czsKKworICAgIEV2ZW50U2VuZGVyUHJveHkqIG1fZXZlbnRTZW5kZXJQcm94eTsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdUUgpJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1
bmRsZS9FdmVudFNlbmRpbmdDb250cm9sbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuY3BwCShy
ZXZpc2lvbiA4MjU5NCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUv
RXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5LDYgKzI5LDEw
IEBACiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGUuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRs
ZVBhZ2UuaCIKICNpbmNsdWRlICJKU0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaCIKKyNpbmNsdWRl
ICJTdHJpbmdGdW5jdGlvbnMuaCIKKyNpZiBQTEFURk9STShNQUMpCisjaW5jbHVkZSA8V2ViS2l0
Mi9XS0J1bmRsZUV2ZW50U2VuZGVyLmg+CisjZW5kaWYKICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVu
ZGxlUGFnZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQYWdlUHJpdmF0ZS5oPgogI2lu
Y2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQcml2YXRlLmg+CkBAIC03OCw3ICs4MiwzNyBAQCB2b2lk
IEV2ZW50U2VuZGluZ0NvbnRyb2xsZXI6Om1vdXNlTW92ZVRvCiAKIHZvaWQgRXZlbnRTZW5kaW5n
Q29udHJvbGxlcjo6a2V5RG93bihKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6ZV90IGFyZ3VtZW50
Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2VwdGlv
bikKIHsKKyNpZiBQTEFURk9STShNQUMpCisgICAgaWYgKCFKU1ZhbHVlSXNTdHJpbmcoY29udGV4
dCwgYXJndW1lbnRzWzBdKSkKKyAgICAgICAgcmV0dXJuOworICAgIEpTUmV0YWluUHRyPEpTU3Ry
aW5nUmVmPiBqc0tleVN0clJlZiA9IEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPihBZG9wdCwgSlNW
YWx1ZVRvU3RyaW5nQ29weShjb250ZXh0LCBhcmd1bWVudHNbMF0sIDApKTsKKyAgICAKKyAgICB1
bnNpZ25lZCBpbnQgbW9kaWYgPSAwOworICAgIGlmIChKU1ZhbHVlSXNPYmplY3QoY29udGV4dCwg
YXJndW1lbnRzWzFdKSkgeworICAgICAgICBKU09iamVjdFJlZiBtb2RpZk9ialJlZiA9IEpTVmFs
dWVUb09iamVjdChjb250ZXh0LCBhcmd1bWVudHNbMV0sIGV4Y2VwdGlvbik7CisgICAgICAgIGZv
ciAoaW50IGkgPSAwOyBpIDwgNDsgaSsrKSB7CisgICAgICAgICAgICBKU1ZhbHVlUmVmIG1vZGlm
VmFsdWVSZWYgPSBKU09iamVjdEdldFByb3BlcnR5QXRJbmRleChjb250ZXh0LCBtb2RpZk9ialJl
ZiwgaSwgZXhjZXB0aW9uKTsKKyAgICAgICAgICAgIGlmIChKU1ZhbHVlSXNTdHJpbmcoY29udGV4
dCwgbW9kaWZWYWx1ZVJlZikpIHsKKyAgICAgICAgICAgICAgICBKU1JldGFpblB0cjxKU1N0cmlu
Z1JlZj4ganNNb2RpZlN0clJlZiA9IEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPihBZG9wdCwgSlNW
YWx1ZVRvU3RyaW5nQ29weShjb250ZXh0LCBtb2RpZlZhbHVlUmVmLCAwKSk7CisgICAgICAgICAg
ICAgICAgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoanNNb2RpZlN0clJlZi5nZXQo
KSwgImN0cmxLZXkiKSkKKyAgICAgICAgICAgICAgICAgICAgbW9kaWYgfD0ga1dLRXZlbnRNb2Rp
ZmllcnNDb250cm9sS2V5OworICAgICAgICAgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVh
bFRvVVRGOENTdHJpbmcoanNNb2RpZlN0clJlZi5nZXQoKSwgInNoaWZ0S2V5IikpCisgICAgICAg
ICAgICAgICAgICAgIG1vZGlmIHw9IGtXS0V2ZW50TW9kaWZpZXJzU2hpZnRLZXk7CisgICAgICAg
ICAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhqc01vZGlmU3Ry
UmVmLmdldCgpLCAiYWx0S2V5IikpCisgICAgICAgICAgICAgICAgICAgIG1vZGlmIHw9IGtXS0V2
ZW50TW9kaWZpZXJzQWx0S2V5OworICAgICAgICAgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNF
cXVhbFRvVVRGOENTdHJpbmcoanNNb2RpZlN0clJlZi5nZXQoKSwgIm1ldGFLZXkiKSkKKyAgICAg
ICAgICAgICAgICAgICAgbW9kaWYgfD0ga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5OworICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfQorICAgIHVuc2lnbmVkIGludCBsb2NhdGlvbiA9IDA7
CisgICAgaWYgKEpTVmFsdWVJc051bWJlcihjb250ZXh0LCBhcmd1bWVudHNbMl0pKQorICAgICAg
ICBsb2NhdGlvbiA9IHN0YXRpY19jYXN0PHVuc2lnbmVkIGludD4oSlNWYWx1ZVRvTnVtYmVyKGNv
bnRleHQsIGFyZ3VtZW50c1syXSwgZXhjZXB0aW9uKSk7CisKKyAgICBXS0J1bmRsZUV2ZW50U2Vu
ZGVyS2V5RG93bihJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkuZXZlbnRTZW5kZXIoKSwgdG9XSyhq
c0tleVN0clJlZikuZ2V0KCksIG1vZGlmLCBsb2NhdGlvbik7CisjZWxzZQogICAgIHNldEV4Y2Vw
dGlvbkZvclN0cmluZyhjb250ZXh0LCBleGNlcHRpb24sICJFdmVudFNlbmRlci5rZXlEb3duIGlz
IG5vdCB5ZXQgc3VwcG9ydGVkLiIpOworI2VuZGlmCiB9CiAKIHZvaWQgRXZlbnRTZW5kaW5nQ29u
dHJvbGxlcjo6Y29udGV4dENsaWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBzaXplX3QgYXJndW1l
bnRDb3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0
aW9uKQpJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGUuaAkocmV2aXNpb24gODI1OTQpCisrKyBUb29scy9XZWJLaXRU
ZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmgJKHdvcmtpbmcgY29weSkK
QEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJM
YXlvdXRUZXN0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgPFdlYktpdDIvV0tCYXNlLmg+CisjaW5j
bHVkZSA8V2ViS2l0Mi9XS0J1bmRsZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tSZXRhaW5QdHIu
aD4KICNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAt
NTEsNiArNTIsOCBAQCBwdWJsaWM6CiAgICAgV0tCdW5kbGVSZWYgYnVuZGxlKCkgY29uc3QgeyBy
ZXR1cm4gbV9idW5kbGU7IH0KICAgICBXS0J1bmRsZVBhZ2VHcm91cFJlZiBwYWdlR3JvdXAoKSBj
b25zdCB7IHJldHVybiBtX3BhZ2VHcm91cDsgfQogCisgICAgV0tCdW5kbGVFdmVudFNlbmRlclJl
ZiBldmVudFNlbmRlcigpIGNvbnN0IHsgcmV0dXJuIFdLQnVuZGxlR2V0RXZlbnRTZW5kZXIobV9i
dW5kbGUpOyB9CisKICAgICBMYXlvdXRUZXN0Q29udHJvbGxlciogbGF5b3V0VGVzdENvbnRyb2xs
ZXIoKSB7IHJldHVybiBtX2xheW91dFRlc3RDb250cm9sbGVyLmdldCgpOyB9CiAgICAgR0NDb250
cm9sbGVyKiBnY0NvbnRyb2xsZXIoKSB7IHJldHVybiBtX2djQ29udHJvbGxlci5nZXQoKTsgfQog
ICAgIEV2ZW50U2VuZGluZ0NvbnRyb2xsZXIqIGV2ZW50U2VuZGluZ0NvbnRyb2xsZXIoKSB7IHJl
dHVybiBtX2V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuZ2V0KCk7IH0KSW5kZXg6IFRvb2xzL1dlYktp
dFRlc3RSdW5uZXIvV2ViS2l0VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvV2ViS2l0VGVzdFJ1bm5lci54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA4MjU5NCkKKysrIFRvb2xzL1dlYktpdFRl
c3RSdW5uZXIvV2ViS2l0VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMSw2ICsyMSw4IEBACiAvKiBFbmQgUEJYQWdncmVnYXRlVGFyZ2V0IHNl
Y3Rpb24gKi8KIAogLyogQmVnaW4gUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8KKwkJNTYxNzgxNzYx
MzQ0Q0MzQjAwN0E5MEE4IC8qIEV2ZW50U2VuZGVyTWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTYxNzgxNzUxMzQ0Q0MzQjAwN0E5MEE4IC8qIEV2
ZW50U2VuZGVyTWFjLm1tICovOyB9OworCQk1NkNFNzE4MDEzMzNDNzE0MDA0OUQ4OUUgLyogRXZl
bnRTZW5kZXJQcm94eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1NkNFNzE3RTEzMzNDNzE0MDA0OUQ4OUUgLyogRXZlbnRTZW5kZXJQcm94eS5jcHAg
Ki87IH07CiAJCTY1MTBBNzgyMTFFQzY0MzgwMDQxMDg2NyAvKiBBSEVNX19fXy5UVEYgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1MTBBNzc3MTFFQzY0
MzgwMDQxMDg2NyAvKiBBSEVNX19fXy5UVEYgKi87IH07CiAJCTY1MTBBNzgzMTFFQzY0MzgwMDQx
MDg2NyAvKiBDb2xvckJpdHMudHRmIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2NTEwQTc3ODExRUM2NDM4MDA0MTA4NjcgLyogQ29sb3JCaXRzLnR0ZiAq
LzsgfTsKIAkJNjUxMEE3ODQxMUVDNjQzODAwNDEwODY3IC8qIFdlYktpdFdlaWdodFdhdGNoZXIx
MDAudHRmIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2
NTEwQTc3OTExRUM2NDM4MDA0MTA4NjcgLyogV2ViS2l0V2VpZ2h0V2F0Y2hlcjEwMC50dGYgKi87
IH07CkBAIC03OCw2ICs4MCwxMCBAQAogCiAvKiBCZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rp
b24gKi8KIAkJMzc4RDQ0MjIxMzM0NkQwMDAwNkE3NzdCIC8qIGNvbmZpZy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBjb25maWcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTYxNzgxNzQxMzQ0
Q0MyODAwN0E5MEE4IC8qIEV2ZW50U2VuZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEV2ZW50U2VuZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2MTc4
MTc1MTM0NENDM0IwMDdBOTBBOCAvKiBFdmVudFNlbmRlck1hYy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEV2ZW50U2VuZGVyTWFjLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1NkNFNzE3RTEzMzNDNzE0MDA0OUQ4OUUgLyogRXZlbnRTZW5kZXJQ
cm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFdmVudFNlbmRl
clByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTZDRTcxN0YxMzMzQzcx
NDAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRXZlbnRTZW5kZXJQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk2NTEwQTc3NzExRUM2NDM4MDA0MTA4NjcgLyogQUhFTV9fX18uVFRGICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZmlsZTsgbmFtZSA9ICJBSEVNX19f
Xy5UVEYiOyBwYXRoID0gImZvbnRzL0FIRU1fX19fLlRURiI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTY1MTBBNzc4MTFFQzY0MzgwMDQxMDg2NyAvKiBDb2xvckJpdHMudHRmICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZmlsZTsgbmFtZSA9
IENvbG9yQml0cy50dGY7IHBhdGggPSBmb250cy9Db2xvckJpdHMudHRmOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk2NTEwQTc3OTExRUM2NDM4MDA0MTA4NjcgLyogV2ViS2l0V2VpZ2h0
V2F0Y2hlcjEwMC50dGYgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBmaWxlOyBuYW1lID0gV2ViS2l0V2VpZ2h0V2F0Y2hlcjEwMC50dGY7IHBhdGggPSBm
b250cy9XZWJLaXRXZWlnaHRXYXRjaGVyMTAwLnR0Zjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTE4NSw2ICsxOTEsOCBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJQkM5MTkyMDIxMzMz
RTRDRDAwMzAxMURDIC8qIGNnICovLAogCQkJCUJDNzkzM0ZFMTE4RjdDNzQwMDVFQThFMiAvKiBt
YWMgKi8sCisJCQkJNTZDRTcxN0UxMzMzQzcxNDAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHku
Y3BwICovLAorCQkJCTU2Q0U3MTdGMTMzM0M3MTQwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5
LmggKi8sCiAJCQkJQkMyNTFBMTcxMUQxNjc3NDAwMkVCQzAxIC8qIFdlYktpdFRlc3RSdW5uZXJQ
cmVmaXguaCAqLywKIAkJCQlCQzc5MzRERDExOTA2NkVDMDA1RUE4RTIgLyogUGxhdGZvcm1XZWJW
aWV3LmggKi8sCiAJCQkJQkM3OTM0MkYxMThGN0YxOTAwNUVBOEUyIC8qIFRlc3RDb250cm9sbGVy
LmggKi8sCkBAIC0yNzYsNiArMjg0LDggQEAKIAkJQkM3OTMzRkUxMThGN0M3NDAwNUVBOEUyIC8q
IG1hYyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNTYx
NzgxNzUxMzQ0Q0MzQjAwN0E5MEE4IC8qIEV2ZW50U2VuZGVyTWFjLm1tICovLAorCQkJCTU2MTc4
MTc0MTM0NENDMjgwMDdBOTBBOCAvKiBFdmVudFNlbmRlci5oICovLAogCQkJCUJDNzkzM0ZGMTE4
RjdDODQwMDVFQThFMiAvKiBtYWluLm1tICovLAogCQkJCUJDNzkzNEU3MTE5MDY4NDYwMDVFQThF
MiAvKiBQbGF0Zm9ybVdlYlZpZXdNYWMubW0gKi8sCiAJCQkJQkM4Qzc5NUIxMUQyNzg1RDAwNDUz
NUExIC8qIFRlc3RDb250cm9sbGVyTWFjLm1tICovLApAQCAtNDUyLDYgKzQ2Miw4IEBACiAJCQkJ
QkNEN0QyRjgxMTkyMTI3ODAwNkRCN0VFIC8qIFRlc3RJbnZvY2F0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUJDOEM3OTVDMTFEMjc4NUQwMDQ1MzVBMSAvKiBUZXN0Q29udHJvbGxlck1hYy5t
bSBpbiBTb3VyY2VzICovLAogCQkJCUJDOTE5MjA1MTMzM0U0RjgwMDMwMTFEQyAvKiBUZXN0SW52
b2NhdGlvbkNHLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTU2Q0U3MTgwMTMzM0M3MTQwMDQ5RDg5
RSAvKiBFdmVudFNlbmRlclByb3h5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTU2MTc4MTc2MTM0
NENDM0IwMDdBOTBBOCAvKiBFdmVudFNlbmRlck1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJKTsK
IAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJbmRleDog
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlci5oCShyZXZpc2lvbiAwKQorKysg
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXIuaAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSw1NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKKyAqIDIuICBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKKyAqIDMuICBOZWl0aGVyIHRoZSBu
YW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCisg
KiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZAorICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
KyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAq
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2lmIDAgLy8gVE9ETworI2ltcG9ydCA8Q29jb2EvQ29jb2EuaD4K
KyNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4KKworQGludGVyZmFjZSBFdmVudFNlbmRlciA6IE5T
T2JqZWN0IDxET01FdmVudExpc3RlbmVyPiB7CisgICAgQk9PTCBsZWZ0TW91c2VCdXR0b25Eb3du
OworICAgIEJPT0wgZHJhZ01vZGU7CisgICAgaW50IGNsaWNrQ291bnQ7CisgICAgTlNUaW1lSW50
ZXJ2YWwgbGFzdENsaWNrOworICAgIGludCBldmVudE51bWJlcjsKKyAgICBkb3VibGUgdGltZU9m
ZnNldDsKK30KKworKyAodm9pZClzYXZlRXZlbnQ6KE5TSW52b2NhdGlvbiAqKWV2ZW50OworKyAo
dm9pZClyZXBsYXlTYXZlZEV2ZW50czsKKysgKHZvaWQpY2xlYXJTYXZlZEV2ZW50czsKKworLSAo
dm9pZClzY2hlZHVsZUFzeW5jaHJvbm91c0NsaWNrOworCistICh2b2lkKWVuYWJsZURPTVVJRXZl
bnRMb2dnaW5nOihXZWJTY3JpcHRPYmplY3QgKilub2RlOworCistICh2b2lkKWhhbmRsZUV2ZW50
OihET01FdmVudCAqKWV2ZW50OworCitAZW5kCisKK2V4dGVybiBOU1BvaW50IGxhc3RNb3VzZVBv
c2l0aW9uOworZXh0ZXJuIE5TUG9pbnQgbGFzdENsaWNrUG9zaXRpb247CisjZW5kaWYKSW5kZXg6
IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyTWFjLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyTWFjLm1tCShyZXZpc2lv
biAwKQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXJNYWMubW0JKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsODY3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuIAorICogMi4g
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uIAorICogMy4g
IE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgQ29tcHV0ZXIsIEluYy4gKCJBcHBsZSIpIG5vciB0
aGUgbmFtZXMgb2YKKyAqICAgICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICAgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiAKKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJ
UyIgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAorICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWYgMAorI2ltcG9ydCAiY29uZmlnLmgi
CisjaW1wb3J0ICJFdmVudFNlbmRlci5oIgorCisjaW1wb3J0ICJEdW1wUmVuZGVyVHJlZS5oIgor
I2ltcG9ydCAiRHVtcFJlbmRlclRyZWVEcmFnZ2luZ0luZm8uaCIKKyNpbXBvcnQgIkR1bXBSZW5k
ZXJUcmVlRmlsZURyYWdnaW5nU291cmNlLmgiCisKKyNpbXBvcnQgPENhcmJvbi9DYXJib24uaD4g
ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBmb3IgR2V0Q3VycmVudEV2ZW50VGltZSgpCisj
aW1wb3J0IDxXZWJLaXQvRE9NUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0L1dlYktpdC5oPgor
I2ltcG9ydCA8V2ViS2l0L1dlYlZpZXdQcml2YXRlLmg+CisKK2V4dGVybiAiQyIgdm9pZCBfTlNO
ZXdLaWxsUmluZ1NlcXVlbmNlKCk7CisKK2VudW0gTW91c2VBY3Rpb24geworICAgIE1vdXNlRG93
biwKKyAgICBNb3VzZVVwLAorICAgIE1vdXNlRHJhZ2dlZAorfTsKKworLy8gTWF0Y2ggdGhlIERP
TSBzcGVjIChzYWRseSB0aGUgRE9NIHNwZWMgZG9lcyBub3QgcHJvdmlkZSBhbiBlbnVtKQorZW51
bSBNb3VzZUJ1dHRvbiB7CisgICAgTGVmdE1vdXNlQnV0dG9uID0gMCwKKyAgICBNaWRkbGVNb3Vz
ZUJ1dHRvbiA9IDEsCisgICAgUmlnaHRNb3VzZUJ1dHRvbiA9IDIsCisgICAgTm9Nb3VzZUJ1dHRv
biA9IC0xCit9OworCitOU1BvaW50IGxhc3RNb3VzZVBvc2l0aW9uOworTlNQb2ludCBsYXN0Q2xp
Y2tQb3NpdGlvbjsKK2ludCBsYXN0Q2xpY2tCdXR0b24gPSBOb01vdXNlQnV0dG9uOworTlNBcnJh
eSAqd2Via2l0RG9tRXZlbnROYW1lczsKK05TTXV0YWJsZUFycmF5ICpzYXZlZE1vdXNlRXZlbnRz
OyAvLyBtb3VzZSBldmVudHMgc2VudCBiZXR3ZWVuIG1vdXNlRG93biBhbmQgbW91c2VVcCBhcmUg
c3RvcmVkIGhlcmUsIGFuZCB0aGVuIGV4ZWN1dGVkIGF0IG9uY2UuCitCT09MIHJlcGxheWluZ1Nh
dmVkRXZlbnRzOworCitAaW1wbGVtZW50YXRpb24gRXZlbnRTZW5kZXIKKworKyAodm9pZClpbml0
aWFsaXplCit7CisgICAgd2Via2l0RG9tRXZlbnROYW1lcyA9IFtbTlNBcnJheSBhbGxvY10gaW5p
dFdpdGhPYmplY3RzOgorICAgICAgICBAImFib3J0IiwKKyAgICAgICAgQCJiZWZvcmVjb3B5IiwK
KyAgICAgICAgQCJiZWZvcmVjdXQiLAorICAgICAgICBAImJlZm9yZXBhc3RlIiwKKyAgICAgICAg
QCJibHVyIiwKKyAgICAgICAgQCJjaGFuZ2UiLAorICAgICAgICBAImNsaWNrIiwKKyAgICAgICAg
QCJjb250ZXh0bWVudSIsCisgICAgICAgIEAiY29weSIsCisgICAgICAgIEAiY3V0IiwKKyAgICAg
ICAgQCJkYmxjbGljayIsCisgICAgICAgIEAiZHJhZyIsCisgICAgICAgIEAiZHJhZ2VuZCIsCisg
ICAgICAgIEAiZHJhZ2VudGVyIiwKKyAgICAgICAgQCJkcmFnbGVhdmUiLAorICAgICAgICBAImRy
YWdvdmVyIiwKKyAgICAgICAgQCJkcmFnc3RhcnQiLAorICAgICAgICBAImRyb3AiLAorICAgICAg
ICBAImVycm9yIiwKKyAgICAgICAgQCJmb2N1cyIsCisgICAgICAgIEAiaW5wdXQiLAorICAgICAg
ICBAImtleWRvd24iLAorICAgICAgICBAImtleXByZXNzIiwKKyAgICAgICAgQCJrZXl1cCIsCisg
ICAgICAgIEAibG9hZCIsCisgICAgICAgIEAibW91c2Vkb3duIiwKKyAgICAgICAgQCJtb3VzZW1v
dmUiLAorICAgICAgICBAIm1vdXNlb3V0IiwKKyAgICAgICAgQCJtb3VzZW92ZXIiLAorICAgICAg
ICBAIm1vdXNldXAiLAorICAgICAgICBAIm1vdXNld2hlZWwiLAorICAgICAgICBAImJlZm9yZXVu
bG9hZCIsCisgICAgICAgIEAicGFzdGUiLAorICAgICAgICBAInJlYWR5c3RhdGVjaGFuZ2UiLAor
ICAgICAgICBAInJlc2V0IiwKKyAgICAgICAgQCJyZXNpemUiLCAKKyAgICAgICAgQCJzY3JvbGwi
LCAKKyAgICAgICAgQCJzZWFyY2giLAorICAgICAgICBAInNlbGVjdCIsCisgICAgICAgIEAic2Vs
ZWN0c3RhcnQiLAorICAgICAgICBAInN1Ym1pdCIsIAorICAgICAgICBAInRleHRJbnB1dCIsIAor
ICAgICAgICBAInRleHR6b29taW4iLAorICAgICAgICBAInRleHR6b29tb3V0IiwKKyAgICAgICAg
QCJ1bmxvYWQiLAorICAgICAgICBAInpvb20iLAorICAgICAgICBuaWxdOworfQorCisrIChCT09M
KWlzU2VsZWN0b3JFeGNsdWRlZEZyb21XZWJTY3JpcHQ6KFNFTClhU2VsZWN0b3IKK3sKKyAgICBp
ZiAoYVNlbGVjdG9yID09IEBzZWxlY3RvcihiZWdpbkRyYWdXaXRoRmlsZXM6KQorICAgICAgICAg
ICAgfHwgYVNlbGVjdG9yID09IEBzZWxlY3RvcihjbGVhcktpbGxSaW5nKQorICAgICAgICAgICAg
fHwgYVNlbGVjdG9yID09IEBzZWxlY3Rvcihjb250ZXh0Q2xpY2spCisgICAgICAgICAgICB8fCBh
U2VsZWN0b3IgPT0gQHNlbGVjdG9yKGVuYWJsZURPTVVJRXZlbnRMb2dnaW5nOikKKyAgICAgICAg
ICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoZmlyZUtleWJvYXJkRXZlbnRzVG9FbGVtZW50
OikKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3Ioa2V5RG93bjp3aXRoTW9k
aWZpZXJzOndpdGhMb2NhdGlvbjopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVj
dG9yKGxlYXBGb3J3YXJkOikKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3Io
bW91c2VEb3duOndpdGhNb2RpZmllcnM6KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBz
ZWxlY3Rvcihtb3VzZU1vdmVUb1g6WTopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNl
bGVjdG9yKG1vdXNlVXA6d2l0aE1vZGlmaWVyczopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3Ig
PT0gQHNlbGVjdG9yKHNjaGVkdWxlQXN5bmNocm9ub3VzQ2xpY2spCisgICAgICAgICAgICB8fCBh
U2VsZWN0b3IgPT0gQHNlbGVjdG9yKHRleHRab29tSW4pCisgICAgICAgICAgICB8fCBhU2VsZWN0
b3IgPT0gQHNlbGVjdG9yKHRleHRab29tT3V0KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09
IEBzZWxlY3Rvcih6b29tUGFnZUluKQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBzZWxl
Y3Rvcih6b29tUGFnZU91dCkKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3Io
bW91c2VTY3JvbGxCeVg6YW5kWTopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVj
dG9yKGNvbnRpbnVvdXNNb3VzZVNjcm9sbEJ5WDphbmRZOikpCisgICAgICAgIHJldHVybiBOTzsK
KyAgICByZXR1cm4gWUVTOworfQorCisrIChCT09MKWlzS2V5RXhjbHVkZWRGcm9tV2ViU2NyaXB0
Oihjb25zdCBjaGFyKiluYW1lCit7CisgICAgaWYgKHN0cmNtcChuYW1lLCAiZHJhZ01vZGUiKSA9
PSAwKQorICAgICAgICByZXR1cm4gTk87CisgICAgcmV0dXJuIFlFUzsKK30KKworKyAoTlNTdHJp
bmcgKil3ZWJTY3JpcHROYW1lRm9yU2VsZWN0b3I6KFNFTClhU2VsZWN0b3IKK3sKKyAgICBpZiAo
YVNlbGVjdG9yID09IEBzZWxlY3RvcihiZWdpbkRyYWdXaXRoRmlsZXM6KSkKKyAgICAgICAgcmV0
dXJuIEAiYmVnaW5EcmFnV2l0aEZpbGVzIjsKKyAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3Rv
cihjb250ZXh0Q2xpY2spKQorICAgICAgICByZXR1cm4gQCJjb250ZXh0Q2xpY2siOworICAgIGlm
IChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGVuYWJsZURPTVVJRXZlbnRMb2dnaW5nOikpCisgICAg
ICAgIHJldHVybiBAImVuYWJsZURPTVVJRXZlbnRMb2dnaW5nIjsKKyAgICBpZiAoYVNlbGVjdG9y
ID09IEBzZWxlY3RvcihmaXJlS2V5Ym9hcmRFdmVudHNUb0VsZW1lbnQ6KSkKKyAgICAgICAgcmV0
dXJuIEAiZmlyZUtleWJvYXJkRXZlbnRzVG9FbGVtZW50IjsKKyAgICBpZiAoYVNlbGVjdG9yID09
IEBzZWxlY3RvcihrZXlEb3duOndpdGhNb2RpZmllcnM6d2l0aExvY2F0aW9uOikpCisgICAgICAg
IHJldHVybiBAImtleURvd24iOworICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGxlYXBG
b3J3YXJkOikpCisgICAgICAgIHJldHVybiBAImxlYXBGb3J3YXJkIjsKKyAgICBpZiAoYVNlbGVj
dG9yID09IEBzZWxlY3Rvcihtb3VzZURvd246d2l0aE1vZGlmaWVyczopKQorICAgICAgICByZXR1
cm4gQCJtb3VzZURvd24iOworICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlVXA6
d2l0aE1vZGlmaWVyczopKQorICAgICAgICByZXR1cm4gQCJtb3VzZVVwIjsKKyAgICBpZiAoYVNl
bGVjdG9yID09IEBzZWxlY3Rvcihtb3VzZU1vdmVUb1g6WTopKQorICAgICAgICByZXR1cm4gQCJt
b3VzZU1vdmVUbyI7CisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3Ioc2V0RHJhZ01vZGU6
KSkKKyAgICAgICAgcmV0dXJuIEAic2V0RHJhZ01vZGUiOworICAgIGlmIChhU2VsZWN0b3IgPT0g
QHNlbGVjdG9yKG1vdXNlU2Nyb2xsQnlYOmFuZFk6KSkKKyAgICAgICAgcmV0dXJuIEAibW91c2VT
Y3JvbGxCeSI7CisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoY29udGludW91c01vdXNl
U2Nyb2xsQnlYOmFuZFk6KSkKKyAgICAgICAgcmV0dXJuIEAiY29udGludW91c01vdXNlU2Nyb2xs
QnkiOworICAgIHJldHVybiBuaWw7Cit9CisKKy0gKGlkKWluaXQKK3sKKyAgICBzZWxmID0gW3N1
cGVyIGluaXRdOworICAgIGlmIChzZWxmKQorICAgICAgICBkcmFnTW9kZSA9IFlFUzsKKyAgICBy
ZXR1cm4gc2VsZjsKK30KKworLSAodm9pZClkZWFsbG9jCit7CisgICAgW3N1cGVyIGRlYWxsb2Nd
OworfQorCistIChkb3VibGUpY3VycmVudEV2ZW50VGltZQoreworICAgIHJldHVybiBHZXRDdXJy
ZW50RXZlbnRUaW1lKCkgKyB0aW1lT2Zmc2V0OworfQorCistICh2b2lkKWxlYXBGb3J3YXJkOihp
bnQpbWlsbGlzZWNvbmRzCit7CisgICAgaWYgKGRyYWdNb2RlICYmIGxlZnRNb3VzZUJ1dHRvbkRv
d24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRzKSB7CisgICAgICAgIE5TSW52b2NhdGlvbiAqaW52
b2NhdGlvbiA9IFtOU0ludm9jYXRpb24gaW52b2NhdGlvbldpdGhNZXRob2RTaWduYXR1cmU6W0V2
ZW50U2VuZGVyIGluc3RhbmNlTWV0aG9kU2lnbmF0dXJlRm9yU2VsZWN0b3I6QHNlbGVjdG9yKGxl
YXBGb3J3YXJkOildXTsKKyAgICAgICAgW2ludm9jYXRpb24gc2V0VGFyZ2V0OnNlbGZdOworICAg
ICAgICBbaW52b2NhdGlvbiBzZXRTZWxlY3RvcjpAc2VsZWN0b3IobGVhcEZvcndhcmQ6KV07Cisg
ICAgICAgIFtpbnZvY2F0aW9uIHNldEFyZ3VtZW50OiZtaWxsaXNlY29uZHMgYXRJbmRleDoyXTsK
KyAgICAgICAgCisgICAgICAgIFtFdmVudFNlbmRlciBzYXZlRXZlbnQ6aW52b2NhdGlvbl07Cisg
ICAgICAgIAorICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgdGltZU9mZnNldCArPSBtaWxs
aXNlY29uZHMgLyAxMDAwLjA7Cit9CisKKy0gKHZvaWQpY2xlYXJLaWxsUmluZworeworICAgIF9O
U05ld0tpbGxSaW5nU2VxdWVuY2UoKTsKK30KKworc3RhdGljIE5TRXZlbnRUeXBlIGV2ZW50VHlw
ZUZvck1vdXNlQnV0dG9uQW5kQWN0aW9uKGludCBidXR0b24sIE1vdXNlQWN0aW9uIGFjdGlvbikK
K3sKKyAgICBzd2l0Y2ggKGJ1dHRvbikgeworICAgICAgICBjYXNlIExlZnRNb3VzZUJ1dHRvbjoK
KyAgICAgICAgICAgIHN3aXRjaCAoYWN0aW9uKSB7CisgICAgICAgICAgICAgICAgY2FzZSBNb3Vz
ZURvd246CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOU0xlZnRNb3VzZURvd247CisgICAg
ICAgICAgICAgICAgY2FzZSBNb3VzZVVwOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNM
ZWZ0TW91c2VVcDsKKyAgICAgICAgICAgICAgICBjYXNlIE1vdXNlRHJhZ2dlZDoKKyAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIE5TTGVmdE1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgY2FzZSBSaWdodE1vdXNlQnV0dG9uOgorICAgICAgICAgICAgc3dpdGNoIChhY3Rpb24p
IHsKKyAgICAgICAgICAgICAgICBjYXNlIE1vdXNlRG93bjoKKyAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIE5TUmlnaHRNb3VzZURvd247CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZVVwOgor
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNSaWdodE1vdXNlVXA7CisgICAgICAgICAgICAg
ICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOU1JpZ2h0
TW91c2VEcmFnZ2VkOworICAgICAgICAgICAgfQorICAgICAgICBkZWZhdWx0OgorICAgICAgICAg
ICAgc3dpdGNoIChhY3Rpb24pIHsKKyAgICAgICAgICAgICAgICBjYXNlIE1vdXNlRG93bjoKKyAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TT3RoZXJNb3VzZURvd247CisgICAgICAgICAgICAg
ICAgY2FzZSBNb3VzZVVwOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNPdGhlck1vdXNl
VXA7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAgICAgICAgICAgICAg
ICAgIHJldHVybiBOU090aGVyTW91c2VEcmFnZ2VkOworICAgICAgICAgICAgfQorICAgIH0KKyAg
ICBhc3NlcnQoMCk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PE5TRXZlbnRUeXBlPigwKTsKK30K
KworLSAodm9pZCliZWdpbkRyYWdXaXRoRmlsZXM6KFdlYlNjcmlwdE9iamVjdCopanNGaWxlUGF0
aHMKK3sKKyAgICBhc3NlcnQoIWRyYWdnaW5nSW5mbyk7CisgICAgYXNzZXJ0KFtqc0ZpbGVQYXRo
cyBpc0tpbmRPZkNsYXNzOltXZWJTY3JpcHRPYmplY3QgY2xhc3NdXSk7CisKKyAgICBOU1Bhc3Rl
Ym9hcmQgKnBib2FyZCA9IFtOU1Bhc3RlYm9hcmQgcGFzdGVib2FyZFdpdGhVbmlxdWVOYW1lXTsK
KyAgICBbcGJvYXJkIGRlY2xhcmVUeXBlczpbTlNBcnJheSBhcnJheVdpdGhPYmplY3Q6TlNGaWxl
bmFtZXNQYm9hcmRUeXBlXSBvd25lcjpuaWxdOworCisgICAgTlNVUkwgKmN1cnJlbnRUZXN0VVJM
ID0gW05TVVJMIFVSTFdpdGhTdHJpbmc6W1ttYWluRnJhbWUgd2ViVmlld10gbWFpbkZyYW1lVVJM
XV07CisKKyAgICBOU011dGFibGVBcnJheSAqZmlsZVBhdGhzID0gW05TTXV0YWJsZUFycmF5IGFy
cmF5XTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBbW2pzRmlsZVBhdGhzIHdlYlNjcmlwdFZh
bHVlQXRJbmRleDppXSBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dOyBpKyspIHsKKyAg
ICAgICAgTlNTdHJpbmcgKmZpbGVQYXRoID0gKE5TU3RyaW5nICopW2pzRmlsZVBhdGhzIHdlYlNj
cmlwdFZhbHVlQXRJbmRleDppXTsKKyAgICAgICAgLy8gSGF2ZSBOU1VSTCBlbmNvZGUgdGhlIG5h
bWUgc28gdGhhdCB3ZSBoYW5kbGUgJz8nIGluIGZpbGUgbmFtZXMgY29ycmVjdGx5LgorICAgICAg
ICBOU1VSTCAqZmlsZVVSTCA9IFtOU1VSTCBmaWxlVVJMV2l0aFBhdGg6ZmlsZVBhdGhdOworICAg
ICAgICBOU1VSTCAqYWJzb2x1dGVGaWxlVVJMID0gW05TVVJMIFVSTFdpdGhTdHJpbmc6W2ZpbGVV
UkwgcmVsYXRpdmVTdHJpbmddICByZWxhdGl2ZVRvVVJMOmN1cnJlbnRUZXN0VVJMXTsKKyAgICAg
ICAgW2ZpbGVQYXRocyBhZGRPYmplY3Q6W2Fic29sdXRlRmlsZVVSTCBwYXRoXV07CisgICAgfQor
CisgICAgW3Bib2FyZCBzZXRQcm9wZXJ0eUxpc3Q6ZmlsZVBhdGhzIGZvclR5cGU6TlNGaWxlbmFt
ZXNQYm9hcmRUeXBlXTsKKyAgICBhc3NlcnQoW3Bib2FyZCBwcm9wZXJ0eUxpc3RGb3JUeXBlOk5T
RmlsZW5hbWVzUGJvYXJkVHlwZV0pOyAvLyBzZXRQcm9wZXJ0eUxpc3Qgd2lsbCBzaWxlbnRseSBm
YWlsIG9uIGVycm9yLCBhc3NlcnQgdGhhdCBpdCBkaWRuJ3QgZmFpbAorCisgICAgLy8gUHJvdmlk
ZSBhIHNvdXJjZSwgb3RoZXJ3aXNlIFtEdW1wUmVuZGVyVHJlZURyYWdnaW5nSW5mbyBkcmFnZ2lu
Z1NvdXJjZU9wZXJhdGlvbk1hc2tdIGRlZmF1bHRzIHRvIE5TRHJhZ09wZXJhdGlvbk5vbmUKKyAg
ICBEdW1wUmVuZGVyVHJlZUZpbGVEcmFnZ2luZ1NvdXJjZSAqc291cmNlID0gW1tbRHVtcFJlbmRl
clRyZWVGaWxlRHJhZ2dpbmdTb3VyY2UgYWxsb2NdIGluaXRdIGF1dG9yZWxlYXNlXTsKKyAgICBk
cmFnZ2luZ0luZm8gPSBbW0R1bXBSZW5kZXJUcmVlRHJhZ2dpbmdJbmZvIGFsbG9jXSBpbml0V2l0
aEltYWdlOm5pbCBvZmZzZXQ6TlNaZXJvU2l6ZSBwYXN0ZWJvYXJkOnBib2FyZCBzb3VyY2U6c291
cmNlXTsKKyAgICBbW21haW5GcmFtZSB3ZWJWaWV3XSBkcmFnZ2luZ0VudGVyZWQ6ZHJhZ2dpbmdJ
bmZvXTsKKworICAgIGRyYWdNb2RlID0gTk87IC8vIGRyYWdNb2RlIHNhdmVzIGV2ZW50cyBhbmQg
dGhlbiByZXBsYXlzIHRoZW0gbGF0ZXIuICBXZSBkb24ndCBuZWVkL3dhbnQgdGhhdC4KKyAgICBs
ZWZ0TW91c2VCdXR0b25Eb3duID0gWUVTOyAvLyBNYWtlIHRoZSByZXN0IG9mIGV2ZW50U2VuZGVy
IHRoaW5rIGEgZHJhZyBpcyBpbiBwcm9ncmVzcworfQorCistICh2b2lkKXVwZGF0ZUNsaWNrQ291
bnRGb3JCdXR0b246KGludClidXR0b25OdW1iZXIKK3sKKyAgICBpZiAoKFtzZWxmIGN1cnJlbnRF
dmVudFRpbWVdIC0gbGFzdENsaWNrID49IDEpIHx8CisgICAgICAgICFOU0VxdWFsUG9pbnRzKGxh
c3RNb3VzZVBvc2l0aW9uLCBsYXN0Q2xpY2tQb3NpdGlvbikgfHwKKyAgICAgICAgbGFzdENsaWNr
QnV0dG9uICE9IGJ1dHRvbk51bWJlcikgeworICAgICAgICBjbGlja0NvdW50ID0gMTsKKyAgICAg
ICAgbGFzdENsaWNrQnV0dG9uID0gYnV0dG9uTnVtYmVyOworICAgIH0gZWxzZQorICAgICAgICBj
bGlja0NvdW50Kys7Cit9CisKK3N0YXRpYyBpbnQgYnVpbGRNb2RpZmllckZsYWdzKGNvbnN0IFdl
YlNjcmlwdE9iamVjdCogbW9kaWZpZXJzKQoreworICAgIGludCBmbGFncyA9IDA7CisgICAgaWYg
KCFbbW9kaWZpZXJzIGlzS2luZE9mQ2xhc3M6W1dlYlNjcmlwdE9iamVjdCBjbGFzc11dKQorICAg
ICAgICByZXR1cm4gZmxhZ3M7CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgW1ttb2RpZmllcnMg
d2ViU2NyaXB0VmFsdWVBdEluZGV4OmldIGlzS2luZE9mQ2xhc3M6W05TU3RyaW5nIGNsYXNzXV07
IGkrKykgeworICAgICAgICBOU1N0cmluZyogbW9kaWZpZXJOYW1lID0gKE5TU3RyaW5nKilbbW9k
aWZpZXJzIHdlYlNjcmlwdFZhbHVlQXRJbmRleDppXTsKKyAgICAgICAgaWYgKFttb2RpZmllck5h
bWUgaXNFcXVhbDpAImN0cmxLZXkiXSkKKyAgICAgICAgICAgIGZsYWdzIHw9IE5TQ29udHJvbEtl
eU1hc2s7CisgICAgICAgIGVsc2UgaWYgKFttb2RpZmllck5hbWUgaXNFcXVhbDpAInNoaWZ0S2V5
Il0gfHwgW21vZGlmaWVyTmFtZSBpc0VxdWFsOkAicmFuZ2VTZWxlY3Rpb25LZXkiXSkKKyAgICAg
ICAgICAgIGZsYWdzIHw9IE5TU2hpZnRLZXlNYXNrOworICAgICAgICBlbHNlIGlmIChbbW9kaWZp
ZXJOYW1lIGlzRXF1YWw6QCJhbHRLZXkiXSkKKyAgICAgICAgICAgIGZsYWdzIHw9IE5TQWx0ZXJu
YXRlS2V5TWFzazsKKyAgICAgICAgZWxzZSBpZiAoW21vZGlmaWVyTmFtZSBpc0VxdWFsOkAibWV0
YUtleSJdIHx8IFttb2RpZmllck5hbWUgaXNFcXVhbDpAImFkZFNlbGVjdGlvbktleSJdKQorICAg
ICAgICAgICAgZmxhZ3MgfD0gTlNDb21tYW5kS2V5TWFzazsKKyAgICB9CisgICAgcmV0dXJuIGZs
YWdzOworfQorCistICh2b2lkKW1vdXNlRG93bjooaW50KWJ1dHRvbk51bWJlciB3aXRoTW9kaWZp
ZXJzOihXZWJTY3JpcHRPYmplY3QqKW1vZGlmaWVycworeworICAgIFtbW21haW5GcmFtZSBmcmFt
ZVZpZXddIGRvY3VtZW50Vmlld10gbGF5b3V0XTsKKyAgICBbc2VsZiB1cGRhdGVDbGlja0NvdW50
Rm9yQnV0dG9uOmJ1dHRvbk51bWJlcl07CisgICAgCisgICAgTlNFdmVudFR5cGUgZXZlbnRUeXBl
ID0gZXZlbnRUeXBlRm9yTW91c2VCdXR0b25BbmRBY3Rpb24oYnV0dG9uTnVtYmVyLCBNb3VzZURv
d24pOworICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhUeXBlOmV2
ZW50VHlwZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9u
Omxhc3RNb3VzZVBvc2l0aW9uIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
b2RpZmllckZsYWdzOmJ1aWxkTW9kaWZpZXJGbGFncyhtb2RpZmllcnMpCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA6W3NlbGYgY3VycmVudEV2ZW50VGlt
ZV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd051bWJlcjpbW1tt
YWluRnJhbWUgd2ViVmlld10gd2luZG93XSB3aW5kb3dOdW1iZXJdIAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OltOU0dyYXBoaWNzQ29udGV4dCBjdXJy
ZW50Q29udGV4dF0gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRO
dW1iZXI6KytldmVudE51bWJlciAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY2xpY2tDb3VudDpjbGlja0NvdW50IAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHByZXNzdXJlOjAuMF07CisKKyAgICBOU1ZpZXcgKnN1YlZpZXcgPSBbW21haW5G
cmFtZSB3ZWJWaWV3XSBoaXRUZXN0OltldmVudCBsb2NhdGlvbkluV2luZG93XV07CisgICAgaWYg
KHN1YlZpZXcpIHsKKyAgICAgICAgW3N1YlZpZXcgbW91c2VEb3duOmV2ZW50XTsKKyAgICAgICAg
aWYgKGJ1dHRvbk51bWJlciA9PSBMZWZ0TW91c2VCdXR0b24pCisgICAgICAgICAgICBsZWZ0TW91
c2VCdXR0b25Eb3duID0gWUVTOworICAgIH0KK30KKworLSAodm9pZCltb3VzZURvd246KGludCli
dXR0b25OdW1iZXIKK3sKKyAgICBbc2VsZiBtb3VzZURvd246YnV0dG9uTnVtYmVyIHdpdGhNb2Rp
ZmllcnM6bmlsXTsKK30KKworLSAodm9pZCl0ZXh0Wm9vbUluCit7CisgICAgW1ttYWluRnJhbWUg
d2ViVmlld10gbWFrZVRleHRMYXJnZXI6c2VsZl07Cit9CisKKy0gKHZvaWQpdGV4dFpvb21PdXQK
K3sKKyAgICBbW21haW5GcmFtZSB3ZWJWaWV3XSBtYWtlVGV4dFNtYWxsZXI6c2VsZl07Cit9CisK
Ky0gKHZvaWQpem9vbVBhZ2VJbgoreworICAgIFtbbWFpbkZyYW1lIHdlYlZpZXddIHpvb21QYWdl
SW46c2VsZl07Cit9CisKKy0gKHZvaWQpem9vbVBhZ2VPdXQKK3sKKyAgICBbW21haW5GcmFtZSB3
ZWJWaWV3XSB6b29tUGFnZU91dDpzZWxmXTsKK30KKworLSAodm9pZCltb3VzZVVwOihpbnQpYnV0
dG9uTnVtYmVyIHdpdGhNb2RpZmllcnM6KFdlYlNjcmlwdE9iamVjdCopbW9kaWZpZXJzCit7Cisg
ICAgaWYgKGRyYWdNb2RlICYmICFyZXBsYXlpbmdTYXZlZEV2ZW50cykgeworICAgICAgICBOU0lu
dm9jYXRpb24gKmludm9jYXRpb24gPSBbTlNJbnZvY2F0aW9uIGludm9jYXRpb25XaXRoTWV0aG9k
U2lnbmF0dXJlOltFdmVudFNlbmRlciBpbnN0YW5jZU1ldGhvZFNpZ25hdHVyZUZvclNlbGVjdG9y
OkBzZWxlY3Rvcihtb3VzZVVwOndpdGhNb2RpZmllcnM6KV1dOworICAgICAgICBbaW52b2NhdGlv
biBzZXRUYXJnZXQ6c2VsZl07CisgICAgICAgIFtpbnZvY2F0aW9uIHNldFNlbGVjdG9yOkBzZWxl
Y3Rvcihtb3VzZVVwOndpdGhNb2RpZmllcnM6KV07CisgICAgICAgIFtpbnZvY2F0aW9uIHNldEFy
Z3VtZW50OiZidXR0b25OdW1iZXIgYXRJbmRleDoyXTsKKyAgICAgICAgW2ludm9jYXRpb24gc2V0
QXJndW1lbnQ6Jm1vZGlmaWVycyBhdEluZGV4OjNdOworICAgICAgICAKKyAgICAgICAgW0V2ZW50
U2VuZGVyIHNhdmVFdmVudDppbnZvY2F0aW9uXTsKKyAgICAgICAgW0V2ZW50U2VuZGVyIHJlcGxh
eVNhdmVkRXZlbnRzXTsKKworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgW1tbbWFpbkZy
YW1lIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XSBsYXlvdXRdOworICAgIE5TRXZlbnRUeXBlIGV2
ZW50VHlwZSA9IGV2ZW50VHlwZUZvck1vdXNlQnV0dG9uQW5kQWN0aW9uKGJ1dHRvbk51bWJlciwg
TW91c2VVcCk7CisgICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5
cGU6ZXZlbnRUeXBlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9j
YXRpb246bGFzdE1vdXNlUG9zaXRpb24gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG1vZGlmaWVyRmxhZ3M6YnVpbGRNb2RpZmllckZsYWdzKG1vZGlmaWVycykKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpbc2VsZiBjdXJyZW50RXZl
bnRUaW1lXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93TnVtYmVy
OltbW21haW5GcmFtZSB3ZWJWaWV3XSB3aW5kb3ddIHdpbmRvd051bWJlcl0gCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6W05TR3JhcGhpY3NDb250ZXh0
IGN1cnJlbnRDb250ZXh0XSAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBl
dmVudE51bWJlcjorK2V2ZW50TnVtYmVyIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjbGlja0NvdW50OmNsaWNrQ291bnQgCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcHJlc3N1cmU6MC4wXTsKKworICAgIE5TVmlldyAqdGFyZ2V0VmlldyA9
IFtbbWFpbkZyYW1lIHdlYlZpZXddIGhpdFRlc3Q6W2V2ZW50IGxvY2F0aW9uSW5XaW5kb3ddXTsK
KyAgICAvLyBGSVhNRTogU2lsbHkgaGFjayB0byB0ZWFjaCBEUlQgdG8gcmVzcGVjdCBjYXB0dXJp
bmcgbW91c2UgZXZlbnRzIG91dHNpZGUgdGhlIFdlYlZpZXcuCisgICAgLy8gVGhlIHJpZ2h0IHNv
bHV0aW9uIGlzIGp1c3QgdG8gdXNlIE5TQXBwbGljYXRpb24ncyBidWlsdC1pbiBldmVudCBzZW5k
aW5nIG1ldGhvZHMsIAorICAgIC8vIGluc3RlYWQgb2Ygcm9sbGluZyBvdXIgb3duIGFsZ29yaXRo
bSBmb3Igc2VsZWN0aW5nIGFuIGV2ZW50IHRhcmdldC4KKyAgICB0YXJnZXRWaWV3ID0gdGFyZ2V0
VmlldyA/IHRhcmdldFZpZXcgOiBbW21haW5GcmFtZSBmcmFtZVZpZXddIGRvY3VtZW50Vmlld107
CisgICAgYXNzZXJ0KHRhcmdldFZpZXcpOworICAgIFt0YXJnZXRWaWV3IG1vdXNlVXA6ZXZlbnRd
OworICAgIGlmIChidXR0b25OdW1iZXIgPT0gTGVmdE1vdXNlQnV0dG9uKQorICAgICAgICBsZWZ0
TW91c2VCdXR0b25Eb3duID0gTk87CisgICAgbGFzdENsaWNrID0gW2V2ZW50IHRpbWVzdGFtcF07
CisgICAgbGFzdENsaWNrUG9zaXRpb24gPSBsYXN0TW91c2VQb3NpdGlvbjsKKyAgICBpZiAoZHJh
Z2dpbmdJbmZvKSB7CisgICAgICAgIFdlYlZpZXcgKndlYlZpZXcgPSBbbWFpbkZyYW1lIHdlYlZp
ZXddOworICAgICAgICAKKyAgICAgICAgTlNEcmFnT3BlcmF0aW9uIGRyYWdPcGVyYXRpb24gPSBb
d2ViVmlldyBkcmFnZ2luZ1VwZGF0ZWQ6ZHJhZ2dpbmdJbmZvXTsKKyAgICAgICAgCisgICAgICAg
IGlmIChkcmFnT3BlcmF0aW9uICE9IE5TRHJhZ09wZXJhdGlvbk5vbmUpCisgICAgICAgICAgICBb
d2ViVmlldyBwZXJmb3JtRHJhZ09wZXJhdGlvbjpkcmFnZ2luZ0luZm9dOworICAgICAgICBlbHNl
CisgICAgICAgICAgICBbd2ViVmlldyBkcmFnZ2luZ0V4aXRlZDpkcmFnZ2luZ0luZm9dOworICAg
ICAgICAvLyBQZXIgTlNEcmFnZ2luZy5oOiBkcmFnZ2luZ1NvdXJjZXMgbWF5IG5vdCBpbXBsZW1l
bnQgZHJhZ2dlZEltYWdlOmVuZGVkQXQ6b3BlcmF0aW9uOgorICAgICAgICBpZiAoW1tkcmFnZ2lu
Z0luZm8gZHJhZ2dpbmdTb3VyY2VdIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoZHJhZ2dl
ZEltYWdlOmVuZGVkQXQ6b3BlcmF0aW9uOildKQorICAgICAgICAgICAgW1tkcmFnZ2luZ0luZm8g
ZHJhZ2dpbmdTb3VyY2VdIGRyYWdnZWRJbWFnZTpbZHJhZ2dpbmdJbmZvIGRyYWdnZWRJbWFnZV0g
ZW5kZWRBdDpsYXN0TW91c2VQb3NpdGlvbiBvcGVyYXRpb246ZHJhZ09wZXJhdGlvbl07CisgICAg
ICAgIFtkcmFnZ2luZ0luZm8gcmVsZWFzZV07CisgICAgICAgIGRyYWdnaW5nSW5mbyA9IG5pbDsK
KyAgICB9Cit9CisKKy0gKHZvaWQpbW91c2VVcDooaW50KWJ1dHRvbk51bWJlcgoreworICAgIFtz
ZWxmIG1vdXNlVXA6YnV0dG9uTnVtYmVyIHdpdGhNb2RpZmllcnM6bmlsXTsKK30KKworLSAodm9p
ZCltb3VzZU1vdmVUb1g6KGludCl4IFk6KGludCl5Cit7CisgICAgaWYgKGRyYWdNb2RlICYmIGxl
ZnRNb3VzZUJ1dHRvbkRvd24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRzKSB7CisgICAgICAgIE5T
SW52b2NhdGlvbiAqaW52b2NhdGlvbiA9IFtOU0ludm9jYXRpb24gaW52b2NhdGlvbldpdGhNZXRo
b2RTaWduYXR1cmU6W0V2ZW50U2VuZGVyIGluc3RhbmNlTWV0aG9kU2lnbmF0dXJlRm9yU2VsZWN0
b3I6QHNlbGVjdG9yKG1vdXNlTW92ZVRvWDpZOildXTsKKyAgICAgICAgW2ludm9jYXRpb24gc2V0
VGFyZ2V0OnNlbGZdOworICAgICAgICBbaW52b2NhdGlvbiBzZXRTZWxlY3RvcjpAc2VsZWN0b3Io
bW91c2VNb3ZlVG9YOlk6KV07CisgICAgICAgIFtpbnZvY2F0aW9uIHNldEFyZ3VtZW50OiZ4IGF0
SW5kZXg6Ml07CisgICAgICAgIFtpbnZvY2F0aW9uIHNldEFyZ3VtZW50OiZ5IGF0SW5kZXg6M107
CisgICAgICAgIAorICAgICAgICBbRXZlbnRTZW5kZXIgc2F2ZUV2ZW50Omludm9jYXRpb25dOwor
ICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgTlNWaWV3ICp2aWV3ID0gW21haW5GcmFtZSB3
ZWJWaWV3XTsKKyAgICBsYXN0TW91c2VQb3NpdGlvbiA9IFt2aWV3IGNvbnZlcnRQb2ludDpOU01h
a2VQb2ludCh4LCBbdmlldyBmcmFtZV0uc2l6ZS5oZWlnaHQgLSB5KSB0b1ZpZXc6bmlsXTsKKyAg
ICBOU0V2ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZToobGVmdE1vdXNl
QnV0dG9uRG93biA/IE5TTGVmdE1vdXNlRHJhZ2dlZCA6IE5TTW91c2VNb3ZlZCkKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbjpsYXN0TW91c2VQb3NpdGlv
biAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJGbGFnczowIAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltzZWxmIGN1
cnJlbnRFdmVudFRpbWVdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5k
b3dOdW1iZXI6W1t2aWV3IHdpbmRvd10gd2luZG93TnVtYmVyXSAKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQgY3VycmVu
dENvbnRleHRdIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50TnVt
YmVyOisrZXZlbnROdW1iZXIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNsaWNrQ291bnQ6KGxlZnRNb3VzZUJ1dHRvbkRvd24gPyBjbGlja0NvdW50IDogMCkgCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc3N1cmU6MC4wXTsKKworICAg
IE5TVmlldyAqc3ViVmlldyA9IFtbbWFpbkZyYW1lIHdlYlZpZXddIGhpdFRlc3Q6W2V2ZW50IGxv
Y2F0aW9uSW5XaW5kb3ddXTsKKyAgICBpZiAoc3ViVmlldykgeworICAgICAgICBpZiAobGVmdE1v
dXNlQnV0dG9uRG93bikgeworICAgICAgICAgICAgaWYgKGRyYWdnaW5nSW5mbykgeworICAgICAg
ICAgICAgICAgIC8vIFBlciBOU0RyYWdnaW5nLmg6IGRyYWdnaW5nU291cmNlcyBtYXkgbm90IGlt
cGxlbWVudCBkcmFnZ2VkSW1hZ2U6bW92ZWRUbzoKKyAgICAgICAgICAgICAgICBpZiAoW1tkcmFn
Z2luZ0luZm8gZHJhZ2dpbmdTb3VyY2VdIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoZHJh
Z2dlZEltYWdlOm1vdmVkVG86KV0pCisgICAgICAgICAgICAgICAgICAgIFtbZHJhZ2dpbmdJbmZv
IGRyYWdnaW5nU291cmNlXSBkcmFnZ2VkSW1hZ2U6W2RyYWdnaW5nSW5mbyBkcmFnZ2VkSW1hZ2Vd
IG1vdmVkVG86bGFzdE1vdXNlUG9zaXRpb25dOworICAgICAgICAgICAgICAgIFtbbWFpbkZyYW1l
IHdlYlZpZXddIGRyYWdnaW5nVXBkYXRlZDpkcmFnZ2luZ0luZm9dOworICAgICAgICAgICAgfSBl
bHNlCisgICAgICAgICAgICAgICAgW3N1YlZpZXcgbW91c2VEcmFnZ2VkOmV2ZW50XTsKKyAgICAg
ICAgfSBlbHNlCisgICAgICAgICAgICBbc3ViVmlldyBtb3VzZU1vdmVkOmV2ZW50XTsKKyAgICB9
Cit9CisKKy0gKHZvaWQpbW91c2VTY3JvbGxCeVg6KGludCl4IGFuZFk6KGludCl5IGNvbnRpbnVv
dXNseTooQk9PTCljCit7CisgICAgLy8gQ0dFdmVudENyZWF0ZVNjcm9sbFdoZWVsRXZlbnQoKSB3
YXMgaW50cm9kdWNlZCBpbiAxMC41CisjaWYgIWRlZmluZWQoQlVJTERJTkdfT05fVElHRVIpCisg
ICAgQ0dTY3JvbGxFdmVudFVuaXQgdW5pdCA9IGM/a0NHU2Nyb2xsRXZlbnRVbml0UGl4ZWw6a0NH
U2Nyb2xsRXZlbnRVbml0TGluZTsKKyAgICBDR0V2ZW50UmVmIGNnU2Nyb2xsRXZlbnQgPSBDR0V2
ZW50Q3JlYXRlU2Nyb2xsV2hlZWxFdmVudChOVUxMLCB1bml0LCAyLCB5LCB4KTsKKyAgICAKKyAg
ICAvLyBDR0V2ZW50IGxvY2F0aW9ucyBhcmUgaW4gZ2xvYmFsIGRpc3BsYXkgY29vcmRpbmF0ZXMu
CisgICAgQ0dQb2ludCBsYXN0R2xvYmFsTW91c2VQb3NpdGlvbiA9IHsKKyAgICAgICAgbGFzdE1v
dXNlUG9zaXRpb24ueCwKKyAgICAgICAgW1tOU1NjcmVlbiBtYWluU2NyZWVuXSBmcmFtZV0uc2l6
ZS5oZWlnaHQgLSBsYXN0TW91c2VQb3NpdGlvbi55CisgICAgfTsKKyAgICBDR0V2ZW50U2V0TG9j
YXRpb24oY2dTY3JvbGxFdmVudCwgbGFzdEdsb2JhbE1vdXNlUG9zaXRpb24pOworCisgICAgTlNF
dmVudCAqc2Nyb2xsRXZlbnQgPSBbTlNFdmVudCBldmVudFdpdGhDR0V2ZW50OmNnU2Nyb2xsRXZl
bnRdOworICAgIENGUmVsZWFzZShjZ1Njcm9sbEV2ZW50KTsKKworICAgIE5TVmlldyAqc3ViVmll
dyA9IFtbbWFpbkZyYW1lIHdlYlZpZXddIGhpdFRlc3Q6W3Njcm9sbEV2ZW50IGxvY2F0aW9uSW5X
aW5kb3ddXTsKKyAgICBpZiAoc3ViVmlldykKKyAgICAgICAgW3N1YlZpZXcgc2Nyb2xsV2hlZWw6
c2Nyb2xsRXZlbnRdOworI2VuZGlmCit9CisKKy0gKHZvaWQpY29udGludW91c01vdXNlU2Nyb2xs
QnlYOihpbnQpeCBhbmRZOihpbnQpeQoreworICAgIFtzZWxmIG1vdXNlU2Nyb2xsQnlYOnggYW5k
WTp5IGNvbnRpbnVvdXNseTpZRVNdOworfQorCistICh2b2lkKW1vdXNlU2Nyb2xsQnlYOihpbnQp
eCBhbmRZOihpbnQpeQoreworICAgIFtzZWxmIG1vdXNlU2Nyb2xsQnlYOnggYW5kWTp5IGNvbnRp
bnVvdXNseTpOT107Cit9CisKKy0gKE5TQXJyYXkgKiljb250ZXh0Q2xpY2sKK3sKKyAgICBbW1tt
YWluRnJhbWUgZnJhbWVWaWV3XSBkb2N1bWVudFZpZXddIGxheW91dF07CisgICAgW3NlbGYgdXBk
YXRlQ2xpY2tDb3VudEZvckJ1dHRvbjpSaWdodE1vdXNlQnV0dG9uXTsKKworICAgIE5TRXZlbnQg
KmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhUeXBlOk5TUmlnaHRNb3VzZURvd24KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbjpsYXN0TW91c2VQ
b3NpdGlvbiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJGbGFn
czowIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltz
ZWxmIGN1cnJlbnRFdmVudFRpbWVdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB3aW5kb3dOdW1iZXI6W1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gd2luZG93TnVtYmVy
XSAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNH
cmFwaGljc0NvbnRleHQgY3VycmVudENvbnRleHRdIAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGV2ZW50TnVtYmVyOisrZXZlbnROdW1iZXIgCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNsaWNrQ291bnQ6Y2xpY2tDb3VudCAKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzc3VyZTowLjBdOworCisgICAgTlNWaWV3
ICpzdWJWaWV3ID0gW1ttYWluRnJhbWUgd2ViVmlld10gaGl0VGVzdDpbZXZlbnQgbG9jYXRpb25J
bldpbmRvd11dOworICAgIE5TTXV0YWJsZUFycmF5ICptZW51SXRlbVN0cmluZ3MgPSBbTlNNdXRh
YmxlQXJyYXkgYXJyYXldOworICAgIAorICAgIGlmIChzdWJWaWV3KSB7CisgICAgICAgIE5TTWVu
dSogbWVudSA9IFtzdWJWaWV3IG1lbnVGb3JFdmVudDpldmVudF07CisKKyAgICAgICAgZm9yIChp
bnQgaSA9IDA7IGkgPCBbbWVudSBudW1iZXJPZkl0ZW1zXTsgKytpKSB7CisgICAgICAgICAgICBO
U01lbnVJdGVtKiBtZW51SXRlbSA9IFttZW51IGl0ZW1BdEluZGV4OmldOworICAgICAgICAgICAg
aWYgKCFzdHJjbXAoIkluc3BlY3QgRWxlbWVudCIsIFtbbWVudUl0ZW0gdGl0bGVdIFVURjhTdHJp
bmddKSkKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAgICAgaWYgKFttZW51
SXRlbSBpc1NlcGFyYXRvckl0ZW1dKQorICAgICAgICAgICAgICAgIFttZW51SXRlbVN0cmluZ3Mg
YWRkT2JqZWN0OkAiPHNlcGFyYXRvcj4iXTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICBbbWVudUl0ZW1TdHJpbmdzIGFkZE9iamVjdDpbbWVudUl0ZW0gdGl0bGVdXTsKKyAgICAg
ICAgfQorICAgIH0KKyAgICAKKyAgICByZXR1cm4gbWVudUl0ZW1TdHJpbmdzOworfQorCistICh2
b2lkKXNjaGVkdWxlQXN5bmNocm9ub3VzQ2xpY2sKK3sKKyAgICBbc2VsZiBwZXJmb3JtU2VsZWN0
b3I6QHNlbGVjdG9yKG1vdXNlRG93bjopIHdpdGhPYmplY3Q6bmlsIGFmdGVyRGVsYXk6MF07Cisg
ICAgW3NlbGYgcGVyZm9ybVNlbGVjdG9yOkBzZWxlY3Rvcihtb3VzZVVwOikgd2l0aE9iamVjdDpu
aWwgYWZ0ZXJEZWxheTowXTsKK30KKworKyAodm9pZClzYXZlRXZlbnQ6KE5TSW52b2NhdGlvbiAq
KWV2ZW50Cit7CisgICAgaWYgKCFzYXZlZE1vdXNlRXZlbnRzKQorICAgICAgICBzYXZlZE1vdXNl
RXZlbnRzID0gW1tOU011dGFibGVBcnJheSBhbGxvY10gaW5pdF07CisgICAgW3NhdmVkTW91c2VF
dmVudHMgYWRkT2JqZWN0OmV2ZW50XTsKK30KKworKyAodm9pZClyZXBsYXlTYXZlZEV2ZW50cwor
eworICAgIHJlcGxheWluZ1NhdmVkRXZlbnRzID0gWUVTOworICAgIHdoaWxlIChbc2F2ZWRNb3Vz
ZUV2ZW50cyBjb3VudF0pIHsKKyAgICAgICAgLy8gaWYgYSBkcmFnIGlzIGluaXRpYXRlZCwgdGhl
IHJlbWFpbmluZyBzYXZlZCBldmVudHMgd2lsbCBiZSBkaXNwYXRjaGVkIGZyb20gb3VyIGRyYWdn
aW5nIGRlbGVnYXRlCisgICAgICAgIE5TSW52b2NhdGlvbiAqaW52b2NhdGlvbiA9IFtbW3NhdmVk
TW91c2VFdmVudHMgb2JqZWN0QXRJbmRleDowXSByZXRhaW5dIGF1dG9yZWxlYXNlXTsKKyAgICAg
ICAgW3NhdmVkTW91c2VFdmVudHMgcmVtb3ZlT2JqZWN0QXRJbmRleDowXTsKKyAgICAgICAgW2lu
dm9jYXRpb24gaW52b2tlXTsKKyAgICB9CisgICAgcmVwbGF5aW5nU2F2ZWRFdmVudHMgPSBOTzsK
K30KKworKyAodm9pZCljbGVhclNhdmVkRXZlbnRzCit7CisgICAgW3NhdmVkTW91c2VFdmVudHMg
cmVsZWFzZV07CisgICAgc2F2ZWRNb3VzZUV2ZW50cyA9IG5pbDsKK30KKworLSAodm9pZClrZXlE
b3duOihOU1N0cmluZyAqKWNoYXJhY3RlciB3aXRoTW9kaWZpZXJzOihXZWJTY3JpcHRPYmplY3Qg
Kiltb2RpZmllcnMgd2l0aExvY2F0aW9uOih1bnNpZ25lZCBsb25nKWtleUxvY2F0aW9uCit7Cisg
ICAgTlNTdHJpbmcgKmV2ZW50Q2hhcmFjdGVyID0gY2hhcmFjdGVyOworICAgIHVuc2lnbmVkIHNo
b3J0IGtleUNvZGUgPSAwOworICAgIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImxl
ZnRBcnJvdyJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0xlZnRBcnJvd0Z1bmN0
aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hh
cmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBrZXlDb2RlID0gMHg3QjsKKyAgICB9IGVs
c2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAicmlnaHRBcnJvdyJdKSB7CisgICAg
ICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU1JpZ2h0QXJyb3dGdW5jdGlvbktleTsKKyAgICAgICAg
ZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0
aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4N0M7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVy
IGlzRXF1YWxUb1N0cmluZzpAInVwQXJyb3ciXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNo
ID0gTlNVcEFycm93RnVuY3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3Ry
aW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUg
PSAweDdFOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJkb3du
QXJyb3ciXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNEb3duQXJyb3dGdW5jdGlv
bktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJh
Y3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4N0Q7CisgICAgfSBlbHNl
IGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAInBhZ2VVcCJdKSB7CisgICAgICAgIGNv
bnN0IHVuaWNoYXIgY2ggPSBOU1BhZ2VVcEZ1bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJh
Y3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAg
ICAgICBrZXlDb2RlID0gMHg3NDsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRv
U3RyaW5nOkAicGFnZURvd24iXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNQYWdl
RG93bkZ1bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJp
bmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBrZXlDb2RlID0gMHg3OTsK
KyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiaG9tZSJdKSB7Cisg
ICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0hvbWVGdW5jdGlvbktleTsKKyAgICAgICAgZXZl
bnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDox
XTsKKyAgICAgICAga2V5Q29kZSA9IDB4NzM7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlz
RXF1YWxUb1N0cmluZzpAImVuZCJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0Vu
ZEZ1bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdX
aXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBrZXlDb2RlID0gMHg3NzsKKyAg
ICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiaW5zZXJ0Il0pIHsKKyAg
ICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TSW5zZXJ0RnVuY3Rpb25LZXk7CisgICAgICAgIGV2
ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6
MV07CisgICAgICAgIGtleUNvZGUgPSAweDcyOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBp
c0VxdWFsVG9TdHJpbmc6QCJkZWxldGUiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0g
TlNEZWxldGVGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcg
c3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4
NzU7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAInByaW50U2Ny
ZWVuIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TUHJpbnRTY3JlZW5GdW5jdGlv
bktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJh
Y3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4MDsgLy8gVGhlcmUgaXMg
bm8ga25vd24gdmlydHVhbCBrZXkgY29kZSBmb3IgUHJpbnRTY3JlZW4uCisgICAgfQorCisgICAg
Ly8gQ29tcGFyZSB0aGUgaW5wdXQgc3RyaW5nIHdpdGggdGhlIGZ1bmN0aW9uLWtleSBuYW1lcyBk
ZWZpbmVkIGJ5IHRoZSBET00gc3BlYyAoaS5lLiAiRjEiLC4uLiwiRjI0IikuCisgICAgLy8gSWYg
dGhlIGlucHV0IHN0cmluZyBpcyBhIGZ1bmN0aW9uLWtleSBuYW1lLCBzZXQgaXRzIGtleSBjb2Rl
LgorICAgIGZvciAodW5zaWduZWQgaSA9IDE7IGkgPD0gMjQ7IGkrKykgeworICAgICAgICBpZiAo
W2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6W05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJG
JXUiLCBpXV0pIHsKKyAgICAgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0YxRnVuY3Rpb25L
ZXkgKyAoaSAtIDEpOworICAgICAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAgICAgIHN3aXRjaCAoaSkg
eworICAgICAgICAgICAgICAgIGNhc2UgMToga2V5Q29kZSA9IDB4N0E7IGJyZWFrOworICAgICAg
ICAgICAgICAgIGNhc2UgMjoga2V5Q29kZSA9IDB4Nzg7IGJyZWFrOworICAgICAgICAgICAgICAg
IGNhc2UgMzoga2V5Q29kZSA9IDB4NjM7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgNDog
a2V5Q29kZSA9IDB4NzY7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgNToga2V5Q29kZSA9
IDB4NjA7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgNjoga2V5Q29kZSA9IDB4NjE7IGJy
ZWFrOworICAgICAgICAgICAgICAgIGNhc2UgNzoga2V5Q29kZSA9IDB4NjI7IGJyZWFrOworICAg
ICAgICAgICAgICAgIGNhc2UgODoga2V5Q29kZSA9IDB4NjQ7IGJyZWFrOworICAgICAgICAgICAg
ICAgIGNhc2UgOToga2V5Q29kZSA9IDB4NjU7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2Ug
MTA6IGtleUNvZGUgPSAweDZEOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDExOiBrZXlD
b2RlID0gMHg2NzsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxMjoga2V5Q29kZSA9IDB4
NkY7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTM6IGtleUNvZGUgPSAweDY5OyBicmVh
azsKKyAgICAgICAgICAgICAgICBjYXNlIDE0OiBrZXlDb2RlID0gMHg2QjsgYnJlYWs7CisgICAg
ICAgICAgICAgICAgY2FzZSAxNToga2V5Q29kZSA9IDB4NzE7IGJyZWFrOworICAgICAgICAgICAg
ICAgIGNhc2UgMTY6IGtleUNvZGUgPSAweDZBOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IDE3OiBrZXlDb2RlID0gMHg0MDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxODoga2V5
Q29kZSA9IDB4NEY7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTk6IGtleUNvZGUgPSAw
eDUwOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDIwOiBrZXlDb2RlID0gMHg1QTsgYnJl
YWs7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvLyBGSVhNRTogTm8g
a2V5Q29kZSBpcyBzZXQgZm9yIG1vc3Qga2V5cy4KKyAgICBpZiAoW2NoYXJhY3RlciBpc0VxdWFs
VG9TdHJpbmc6QCJcdCJdKQorICAgICAgICBrZXlDb2RlID0gMHgzMDsKKyAgICBlbHNlIGlmIChb
Y2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIiAiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MzE7
CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJcciJdKQorICAgICAg
ICBrZXlDb2RlID0gMHgyNDsKKyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmlu
ZzpAIlxuIl0pCisgICAgICAgIGtleUNvZGUgPSAweDRDOworICAgIGVsc2UgaWYgKFtjaGFyYWN0
ZXIgaXNFcXVhbFRvU3RyaW5nOkAiXHg4Il0pCisgICAgICAgIGtleUNvZGUgPSAweDMzOworICAg
IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiNyJdKQorICAgICAgICBrZXlD
b2RlID0gMHgxQTsKKyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjUi
XSkKKyAgICAgICAga2V5Q29kZSA9IDB4MTc7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0Vx
dWFsVG9TdHJpbmc6QCI5Il0pCisgICAgICAgIGtleUNvZGUgPSAweDE5OworICAgIGVsc2UgaWYg
KFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiMCJdKQorICAgICAgICBrZXlDb2RlID0gMHgx
RDsKKyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImEiXSkKKyAgICAg
ICAga2V5Q29kZSA9IDB4MDA7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJp
bmc6QCJiIl0pCisgICAgICAgIGtleUNvZGUgPSAweDBCOworICAgIGVsc2UgaWYgKFtjaGFyYWN0
ZXIgaXNFcXVhbFRvU3RyaW5nOkAiZCJdKQorICAgICAgICBrZXlDb2RlID0gMHgwMjsKKyAgICBl
bHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImUiXSkKKyAgICAgICAga2V5Q29k
ZSA9IDB4MEU7CisKKyAgICBOU1N0cmluZyAqY2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzID0g
ZXZlbnRDaGFyYWN0ZXI7CisKKyAgICBpbnQgbW9kaWZpZXJGbGFncyA9IDA7CisKKyAgICBpZiAo
W2NoYXJhY3RlciBsZW5ndGhdID09IDEgJiYgW2NoYXJhY3RlciBjaGFyYWN0ZXJBdEluZGV4OjBd
ID49ICdBJyAmJiBbY2hhcmFjdGVyIGNoYXJhY3RlckF0SW5kZXg6MF0gPD0gJ1onKSB7CisgICAg
ICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNTaGlmdEtleU1hc2s7CisgICAgICAgIGNoYXJhY3RlcnNJ
Z25vcmluZ01vZGlmaWVycyA9IFtjaGFyYWN0ZXIgbG93ZXJjYXNlU3RyaW5nXTsKKyAgICB9CisK
KyAgICBtb2RpZmllckZsYWdzIHw9IGJ1aWxkTW9kaWZpZXJGbGFncyhtb2RpZmllcnMpOworCisg
ICAgaWYgKGtleUxvY2F0aW9uID09IERPTV9LRVlfTE9DQVRJT05fTlVNUEFEKQorICAgICAgICBt
b2RpZmllckZsYWdzIHw9IE5TTnVtZXJpY1BhZEtleU1hc2s7CisKKyAgICBbW1ttYWluRnJhbWUg
ZnJhbWVWaWV3XSBkb2N1bWVudFZpZXddIGxheW91dF07CisKKyAgICBOU0V2ZW50ICpldmVudCA9
IFtOU0V2ZW50IGtleUV2ZW50V2l0aFR5cGU6TlNLZXlEb3duCisgICAgICAgICAgICAgICAgICAg
ICAgICBsb2NhdGlvbjpOU01ha2VQb2ludCg1LCA1KQorICAgICAgICAgICAgICAgICAgICAgICAg
bW9kaWZpZXJGbGFnczptb2RpZmllckZsYWdzCisgICAgICAgICAgICAgICAgICAgICAgICB0aW1l
c3RhbXA6W3NlbGYgY3VycmVudEV2ZW50VGltZV0KKyAgICAgICAgICAgICAgICAgICAgICAgIHdp
bmRvd051bWJlcjpbW1ttYWluRnJhbWUgd2ViVmlld10gd2luZG93XSB3aW5kb3dOdW1iZXJdCisg
ICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OltOU0dyYXBoaWNzQ29udGV4dCBjdXJyZW50
Q29udGV4dF0KKyAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnM6ZXZlbnRDaGFyYWN0
ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVyczpj
aGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnMKKyAgICAgICAgICAgICAgICAgICAgICAgIGlzQVJl
cGVhdDpOTworICAgICAgICAgICAgICAgICAgICAgICAga2V5Q29kZTprZXlDb2RlXTsKKworICAg
IFtbW1ttYWluRnJhbWUgd2ViVmlld10gd2luZG93XSBmaXJzdFJlc3BvbmRlcl0ga2V5RG93bjpl
dmVudF07CisKKyAgICBldmVudCA9IFtOU0V2ZW50IGtleUV2ZW50V2l0aFR5cGU6TlNLZXlVcAor
ICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246TlNNYWtlUG9pbnQoNSwgNSkKKyAgICAg
ICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyRmxhZ3M6bW9kaWZpZXJGbGFncworICAgICAgICAg
ICAgICAgICAgICAgICAgdGltZXN0YW1wOltzZWxmIGN1cnJlbnRFdmVudFRpbWVdCisgICAgICAg
ICAgICAgICAgICAgICAgICB3aW5kb3dOdW1iZXI6W1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRv
d10gd2luZG93TnVtYmVyXQorICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFw
aGljc0NvbnRleHQgY3VycmVudENvbnRleHRdCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFy
YWN0ZXJzOmV2ZW50Q2hhcmFjdGVyCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJz
SWdub3JpbmdNb2RpZmllcnM6Y2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzCisgICAgICAgICAg
ICAgICAgICAgICAgICBpc0FSZXBlYXQ6Tk8KKyAgICAgICAgICAgICAgICAgICAgICAgIGtleUNv
ZGU6a2V5Q29kZV07CisKKyAgICBbW1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gZmlyc3RS
ZXNwb25kZXJdIGtleVVwOmV2ZW50XTsKK30KKworLSAodm9pZCllbmFibGVET01VSUV2ZW50TG9n
Z2luZzooV2ViU2NyaXB0T2JqZWN0ICopbm9kZQoreworICAgIE5TRW51bWVyYXRvciAqZXZlbnRF
bnVtZXJhdG9yID0gW3dlYmtpdERvbUV2ZW50TmFtZXMgb2JqZWN0RW51bWVyYXRvcl07CisgICAg
aWQgZXZlbnROYW1lOworICAgIHdoaWxlICgoZXZlbnROYW1lID0gW2V2ZW50RW51bWVyYXRvciBu
ZXh0T2JqZWN0XSkpIHsKKyAgICAgICAgWyhpZDxET01FdmVudFRhcmdldD4pbm9kZSBhZGRFdmVu
dExpc3RlbmVyOmV2ZW50TmFtZSBsaXN0ZW5lcjpzZWxmIHVzZUNhcHR1cmU6Tk9dOworICAgIH0K
K30KKworLSAodm9pZCloYW5kbGVFdmVudDooRE9NRXZlbnQgKilldmVudAoreworICAgIERPTU5v
ZGUgKnRhcmdldCA9IFtldmVudCB0YXJnZXRdOworCisgICAgcHJpbnRmKCJldmVudCB0eXBlOiAg
ICAgICVzXG4iLCBbW2V2ZW50IHR5cGVdIFVURjhTdHJpbmddKTsKKyAgICBwcmludGYoIiAgdGFy
Z2V0OiAgICAgICAgPCVzPlxuIiwgW1tbdGFyZ2V0IG5vZGVOYW1lXSBsb3dlcmNhc2VTdHJpbmdd
IFVURjhTdHJpbmddKTsKKyAgICAKKyAgICBpZiAoW2V2ZW50IGlzS2luZE9mQ2xhc3M6W0RPTUV2
ZW50IGNsYXNzXV0pIHsKKyAgICAgICAgcHJpbnRmKCIgIGV2ZW50UGhhc2U6ICAgICVkXG4iLCBb
ZXZlbnQgZXZlbnRQaGFzZV0pOworICAgICAgICBwcmludGYoIiAgYnViYmxlczogICAgICAgJWRc
biIsIFtldmVudCBidWJibGVzXSA/IDEgOiAwKTsKKyAgICAgICAgcHJpbnRmKCIgIGNhbmNlbGFi
bGU6ICAgICVkXG4iLCBbZXZlbnQgY2FuY2VsYWJsZV0gPyAxIDogMCk7CisgICAgfQorICAgIAor
ICAgIGlmIChbZXZlbnQgaXNLaW5kT2ZDbGFzczpbRE9NVUlFdmVudCBjbGFzc11dKSB7CisgICAg
ICAgIHByaW50ZigiICBkZXRhaWw6ICAgICAgICAlZFxuIiwgWyhET01VSUV2ZW50KilldmVudCBk
ZXRhaWxdKTsKKyAgICAgICAgCisgICAgICAgIERPTUFic3RyYWN0VmlldyAqdmlldyA9IFsoRE9N
VUlFdmVudCopZXZlbnQgdmlld107CisgICAgICAgIGlmICh2aWV3KSB7CisgICAgICAgICAgICBw
cmludGYoIiAgdmlldzogICAgICAgICAgT0siKTsgICAgICAgICAgICAKKyAgICAgICAgICAgIGlm
IChbdmlldyBkb2N1bWVudF0pCisgICAgICAgICAgICAgICAgcHJpbnRmKCIgKGRvY3VtZW50OiBP
SykiKTsKKyAgICAgICAgICAgIHByaW50ZigiXG4iKTsKKyAgICAgICAgfQorICAgIH0KKyAgICAK
KyAgICBpZiAoW2V2ZW50IGlzS2luZE9mQ2xhc3M6W0RPTUtleWJvYXJkRXZlbnQgY2xhc3NdXSkg
eworICAgICAgICBwcmludGYoIiAga2V5SWRlbnRpZmllcjogJXNcbiIsIFtbKERPTUtleWJvYXJk
RXZlbnQqKWV2ZW50IGtleUlkZW50aWZpZXJdIFVURjhTdHJpbmddKTsKKyAgICAgICAgcHJpbnRm
KCIgIGtleUxvY2F0aW9uOiAgICVkXG4iLCBbKERPTUtleWJvYXJkRXZlbnQqKWV2ZW50IGtleUxv
Y2F0aW9uXSk7CisgICAgICAgIHByaW50ZigiICBtb2RpZmllciBrZXlzOiBjOiVkIHM6JWQgYTol
ZCBtOiVkXG4iLCAKKyAgICAgICAgICAgICAgIFsoRE9NS2V5Ym9hcmRFdmVudCopZXZlbnQgY3Ry
bEtleV0gPyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTUtleWJvYXJkRXZlbnQqKWV2ZW50
IHNoaWZ0S2V5XSA/IDEgOiAwLCAKKyAgICAgICAgICAgICAgIFsoRE9NS2V5Ym9hcmRFdmVudCop
ZXZlbnQgYWx0S2V5XSA/IDEgOiAwLCAKKyAgICAgICAgICAgICAgIFsoRE9NS2V5Ym9hcmRFdmVu
dCopZXZlbnQgbWV0YUtleV0gPyAxIDogMCk7CisgICAgICAgIHByaW50ZigiICBrZXlDb2RlOiAg
ICAgICAlZFxuIiwgWyhET01LZXlib2FyZEV2ZW50KilldmVudCBrZXlDb2RlXSk7CisgICAgICAg
IHByaW50ZigiICBjaGFyQ29kZTogICAgICAlZFxuIiwgWyhET01LZXlib2FyZEV2ZW50KilldmVu
dCBjaGFyQ29kZV0pOworICAgIH0KKyAgICAKKyAgICBpZiAoW2V2ZW50IGlzS2luZE9mQ2xhc3M6
W0RPTU1vdXNlRXZlbnQgY2xhc3NdXSkgeworICAgICAgICBwcmludGYoIiAgYnV0dG9uOiAgICAg
ICAgJWRcbiIsIFsoRE9NTW91c2VFdmVudCopZXZlbnQgYnV0dG9uXSk7CisgICAgICAgIHByaW50
ZigiICBjbGllbnRYOiAgICAgICAlZFxuIiwgWyhET01Nb3VzZUV2ZW50KilldmVudCBjbGllbnRY
XSk7CisgICAgICAgIHByaW50ZigiICBjbGllbnRZOiAgICAgICAlZFxuIiwgWyhET01Nb3VzZUV2
ZW50KilldmVudCBjbGllbnRZXSk7CisgICAgICAgIHByaW50ZigiICBzY3JlZW5YOiAgICAgICAl
ZFxuIiwgWyhET01Nb3VzZUV2ZW50KilldmVudCBzY3JlZW5YXSk7CisgICAgICAgIHByaW50Zigi
ICBzY3JlZW5ZOiAgICAgICAlZFxuIiwgWyhET01Nb3VzZUV2ZW50KilldmVudCBzY3JlZW5ZXSk7
CisgICAgICAgIHByaW50ZigiICBtb2RpZmllciBrZXlzOiBjOiVkIHM6JWQgYTolZCBtOiVkXG4i
LCAKKyAgICAgICAgICAgICAgIFsoRE9NTW91c2VFdmVudCopZXZlbnQgY3RybEtleV0gPyAxIDog
MCwgCisgICAgICAgICAgICAgICBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IHNoaWZ0S2V5XSA/IDEg
OiAwLCAKKyAgICAgICAgICAgICAgIFsoRE9NTW91c2VFdmVudCopZXZlbnQgYWx0S2V5XSA/IDEg
OiAwLCAKKyAgICAgICAgICAgICAgIFsoRE9NTW91c2VFdmVudCopZXZlbnQgbWV0YUtleV0gPyAx
IDogMCk7CisgICAgICAgIGlkIHJlbGF0ZWRUYXJnZXQgPSBbKERPTU1vdXNlRXZlbnQqKWV2ZW50
IHJlbGF0ZWRUYXJnZXRdOworICAgICAgICBpZiAocmVsYXRlZFRhcmdldCkgeworICAgICAgICAg
ICAgcHJpbnRmKCIgIHJlbGF0ZWRUYXJnZXQ6ICVzIiwgW1tbcmVsYXRlZFRhcmdldCBjbGFzc10g
ZGVzY3JpcHRpb25dIFVURjhTdHJpbmddKTsKKyAgICAgICAgICAgIGlmIChbcmVsYXRlZFRhcmdl
dCBpc0tpbmRPZkNsYXNzOltET01Ob2RlIGNsYXNzXV0pCisgICAgICAgICAgICAgICAgcHJpbnRm
KCIgKG5vZGVOYW1lOiAlcykiLCBbWyhET01Ob2RlKilyZWxhdGVkVGFyZ2V0IG5vZGVOYW1lXSBV
VEY4U3RyaW5nXSk7CisgICAgICAgICAgICBwcmludGYoIlxuIik7CisgICAgICAgIH0KKyAgICB9
CisgICAgCisgICAgaWYgKFtldmVudCBpc0tpbmRPZkNsYXNzOltET01NdXRhdGlvbkV2ZW50IGNs
YXNzXV0pIHsKKyAgICAgICAgcHJpbnRmKCIgIHByZXZWYWx1ZTogICAgICVzXG4iLCBbWyhET01N
dXRhdGlvbkV2ZW50KilldmVudCBwcmV2VmFsdWVdIFVURjhTdHJpbmddKTsKKyAgICAgICAgcHJp
bnRmKCIgIG5ld1ZhbHVlOiAgICAgICVzXG4iLCBbWyhET01NdXRhdGlvbkV2ZW50KilldmVudCBu
ZXdWYWx1ZV0gVVRGOFN0cmluZ10pOworICAgICAgICBwcmludGYoIiAgYXR0ck5hbWU6ICAgICAg
JXNcbiIsIFtbKERPTU11dGF0aW9uRXZlbnQqKWV2ZW50IGF0dHJOYW1lXSBVVEY4U3RyaW5nXSk7
CisgICAgICAgIHByaW50ZigiICBhdHRyQ2hhbmdlOiAgICAlZFxuIiwgWyhET01NdXRhdGlvbkV2
ZW50KilldmVudCBhdHRyQ2hhbmdlXSk7CisgICAgICAgIERPTU5vZGUgKnJlbGF0ZWROb2RlID0g
WyhET01NdXRhdGlvbkV2ZW50KilldmVudCByZWxhdGVkTm9kZV07CisgICAgICAgIGlmIChyZWxh
dGVkTm9kZSkgeworICAgICAgICAgICAgcHJpbnRmKCIgIHJlbGF0ZWROb2RlOiAgICVzIChub2Rl
TmFtZTogJXMpXG4iLCAKKyAgICAgICAgICAgICAgICAgICBbW1tyZWxhdGVkTm9kZSBjbGFzc10g
ZGVzY3JpcHRpb25dIFVURjhTdHJpbmddLAorICAgICAgICAgICAgICAgICAgIFtbcmVsYXRlZE5v
ZGUgbm9kZU5hbWVdIFVURjhTdHJpbmddKTsKKyAgICAgICAgfQorICAgIH0KKyAgICAKKyAgICBp
ZiAoW2V2ZW50IGlzS2luZE9mQ2xhc3M6W0RPTVdoZWVsRXZlbnQgY2xhc3NdXSkgeworICAgICAg
ICBwcmludGYoIiAgY2xpZW50WDogICAgICAgJWRcbiIsIFsoRE9NV2hlZWxFdmVudCopZXZlbnQg
Y2xpZW50WF0pOworICAgICAgICBwcmludGYoIiAgY2xpZW50WTogICAgICAgJWRcbiIsIFsoRE9N
V2hlZWxFdmVudCopZXZlbnQgY2xpZW50WV0pOworICAgICAgICBwcmludGYoIiAgc2NyZWVuWDog
ICAgICAgJWRcbiIsIFsoRE9NV2hlZWxFdmVudCopZXZlbnQgc2NyZWVuWF0pOworICAgICAgICBw
cmludGYoIiAgc2NyZWVuWTogICAgICAgJWRcbiIsIFsoRE9NV2hlZWxFdmVudCopZXZlbnQgc2Ny
ZWVuWV0pOworICAgICAgICBwcmludGYoIiAgbW9kaWZpZXIga2V5czogYzolZCBzOiVkIGE6JWQg
bTolZFxuIiwgCisgICAgICAgICAgICAgICBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IGN0cmxLZXld
ID8gMSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01XaGVlbEV2ZW50KilldmVudCBzaGlmdEtl
eV0gPyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IGFsdEtl
eV0gPyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IG1ldGFL
ZXldID8gMSA6IDApOworICAgICAgICBwcmludGYoIiAgaXNIb3Jpem9udGFsOiAgJWRcbiIsIFso
RE9NV2hlZWxFdmVudCopZXZlbnQgaXNIb3Jpem9udGFsXSA/IDEgOiAwKTsKKyAgICAgICAgcHJp
bnRmKCIgIHdoZWVsRGVsdGE6ICAgICVkXG4iLCBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IHdoZWVs
RGVsdGFdKTsKKyAgICB9Cit9CisKKy8vIEZJWE1FOiBJdCdzIG5vdCBnb29kIHRvIGhhdmUgYSB0
ZXN0IGhhcmQtd2lyZWQgaW50byB0aGlzIGNvbnRyb2xsZXIgbGlrZSB0aGlzLgorLy8gSW5zdGVh
ZCB3ZSBuZWVkIHRvIGdldCB0ZXN0aW5nIGZyYW1ld29yayBiYXNlZCBvbiB0aGUgT2JqZWN0aXZl
LUMgYmluZGluZ3MKKy8vIHRvIHdvcmsgd2VsbCBlbm91Z2ggdGhhdCB3ZSBjYW4gdGVzdCB0aGF0
IHdheSBpbnN0ZWFkLgorLSAodm9pZClmaXJlS2V5Ym9hcmRFdmVudHNUb0VsZW1lbnQ6KFdlYlNj
cmlwdE9iamVjdCAqKWVsZW1lbnQgeworICAgIAorICAgIGlmICghW2VsZW1lbnQgaXNLaW5kT2ZD
bGFzczpbRE9NSFRNTEVsZW1lbnQgY2xhc3NdXSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAg
IERPTUhUTUxFbGVtZW50ICp0YXJnZXQgPSAoRE9NSFRNTEVsZW1lbnQqKWVsZW1lbnQ7CisgICAg
RE9NRG9jdW1lbnQgKmRvY3VtZW50ID0gW3RhcmdldCBvd25lckRvY3VtZW50XTsKKyAgICAKKyAg
ICAvLyBLZXlib2FyZCBFdmVudCAxCisgICAgCisgICAgRE9NRXZlbnQgKmRvbUV2ZW50ID0gW2Rv
Y3VtZW50IGNyZWF0ZUV2ZW50OkAiS2V5Ym9hcmRFdmVudCJdOworICAgIFsoRE9NS2V5Ym9hcmRF
dmVudCopZG9tRXZlbnQgaW5pdEtleWJvYXJkRXZlbnQ6QCJrZXlkb3duIiAKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FuQnViYmxlOllFUworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbGFibGU6WUVTCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlldzpbZG9jdW1lbnQgZGVmYXVsdFZp
ZXddCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5SWRlbnRpZmllcjpA
IlUrMDAwMDQxIiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleUxv
Y2F0aW9uOjAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHJs
S2V5OllFUworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRL
ZXk6Tk8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0S2V5
Ok5PCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YUtleTpO
T107CisgICAgW3RhcmdldCBkaXNwYXRjaEV2ZW50OmRvbUV2ZW50XTsgIAorICAgICAgICAKKyAg
ICAvLyBLZXlib2FyZCBFdmVudCAyCisgICAgCisgICAgZG9tRXZlbnQgPSBbZG9jdW1lbnQgY3Jl
YXRlRXZlbnQ6QCJLZXlib2FyZEV2ZW50Il07CisgICAgWyhET01LZXlib2FyZEV2ZW50Kilkb21F
dmVudCBpbml0S2V5Ym9hcmRFdmVudDpAImtleXByZXNzIiAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY2FuQnViYmxlOllFUworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNhbmNlbGFibGU6WUVTCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdmlldzpbZG9jdW1lbnQgZGVmYXVsdFZpZXddCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5SWRlbnRpZmllcjpAIlUrMDAwMDQ1
IiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleUxvY2F0aW9uOjEK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHJsS2V5Ok5PCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdEtleTpZRVMKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0S2V5Ok5PCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YUtleTpOT107CisgICAg
W3RhcmdldCBkaXNwYXRjaEV2ZW50OmRvbUV2ZW50XTsgICAgCisgICAgCisgICAgLy8gS2V5Ym9h
cmQgRXZlbnQgMworICAgIAorICAgIGRvbUV2ZW50ID0gW2RvY3VtZW50IGNyZWF0ZUV2ZW50OkAi
S2V5Ym9hcmRFdmVudCJdOworICAgIFsoRE9NS2V5Ym9hcmRFdmVudCopZG9tRXZlbnQgaW5pdEtl
eWJvYXJkRXZlbnQ6QCJrZXl1cCIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNhbkJ1YmJsZTpZRVMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjYW5jZWxhYmxlOllFUworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZpZXc6W2RvY3VtZW50IGRlZmF1bHRWaWV3XQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGtleUlkZW50aWZpZXI6QCJVKzAwMDA1NiIgCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlMb2NhdGlvbjowCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3RybEtleTpOTworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRLZXk6Tk8KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0S2V5Ok5PCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWV0YUtleTpOT107CisgICAgW3RhcmdldCBkaXNwYXRj
aEV2ZW50OmRvbUV2ZW50XTsgICAKKyAgICAKK30KKworQGVuZAorI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>87770</attachid>
            <date>2011-03-31 11:11:23 -0700</date>
            <delta_ts>2011-05-25 09:05:49 -0700</delta_ts>
            <desc>fix patch 2</desc>
            <filename>57515_2.patch</filename>
            <type>text/plain</type>
            <size>95123</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTEtMDMtMzEgIENoYW5nIFNo
dSAgPGNzaHVAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBbTWFjXSBbV0syXSBJbXBsZW1lbnQgS2V5RG93biBmdW5jdGlvbiBmb3Ig
V2ViS2l0MiBFdmVudFNlbmRlci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU3NTE1CisKKyAgICAgICAgVGhlIGZvbGxvd2luZyBjb2RlIGNoYW5nZSBi
dWlsZHMgdXAgdGhlIGluZnJhc3RydWN0dXJlIGZvcgorICAgICAgICBXZWJLaXRUZXN0UnVubmVy
IEV2ZW50U2VuZGVyIHRvIHNlbmQgbWVzc2FnZXMgZnJvbSB0aGUgSW5qZWN0ZWRCdW5kbGUKKyAg
ICAgICAgaW4gV2ViUHJvY2VzcyB0byBVSVByb2Nlc3Mgb2YgV2ViS2l0VGVzdFJ1bm5lci4KKwor
ICAgICAgICBUaGUgYmFzaWMgS2V5RG93biBmdW5jdGlvbmFsaXR5IGlzIGltcGxlbWVudGVkIGV4
Y2VwdCB0aGUgbG9jYWwgaW1wbGVtZW50YXRpb24uCisKKyAgICAgICAgKiBTaGFyZWQvQVBJL2Mv
V0tBcmd1bWVudERlY29kZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdLQ3JlYXRlQXJndW1lbnRE
ZWNvZGVyKToKKyAgICAgICAgKFdLRGVjb2RlVUludDMyKToKKyAgICAgICAgKFdLRGVjb2RlU3Ry
aW5nKToKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tBcmd1bWVudERlY29kZXIuaDogQWRkZWQu
CisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLQmFzZS5oOgorICAgICAgICAqIFNoYXJlZC9BUEkv
Yy9XS01lc3NhZ2VJRC5oOiBBZGRlZC4KKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tTaGFyZWRB
UElDYXN0Lmg6CisgICAgICAgICogU2hhcmVkL0V2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oOiBB
ZGRlZC4KKyAgICAgICAgKE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLZXlEb3duOjpLZXlE
b3duKToKKyAgICAgICAgKE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLZXlEb3duOjplbmNv
ZGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0VXNlck1lc3NhZ2VDb2RlcnMuaDoK
KyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dFVzZXJNZXNzYWdlRGVjb2Rlcjo6ZGVjb2RlKToK
KyAgICAgICAgKiBXZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5jcHA6CisgICAgICAgIChX
S0J1bmRsZUdldEV2ZW50U2VuZGVyKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9jL1dLQnVuZGxlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRs
ZS9BUEkvYy9XS0J1bmRsZUFQSUNhc3QuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdL
QnVuZGxlRXZlbnRTZW5kZXJLZXlEb3duKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuaDogQWRkZWQuCisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlOjpJbmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oOgorICAgICAgICAoV2ViS2l0OjpJbmpl
Y3RlZEJ1bmRsZTo6ZXZlbnRTZW5kZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5jcHA6IEFkZGVkLgorICAgICAgICAoV2Vi
S2l0OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0
OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyOjpJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyKToK
KyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcjo6fkluamVjdGVkQnVu
ZGxlRXZlbnRTZW5kZXIpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZUV2ZW50U2Vu
ZGVyOjprZXlEb3duKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlRXZlbnRTZW5kZXIuaDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlQ29kZXJzLmg6CisgICAgICAgIChX
ZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyOjplbmNvZGUpOgorCiAyMDEx
LTAzLTMxICBKb2huIFN1bGxpdmFuICA8c3VsbGl2YW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyIGFuZCBBZGFtIFJvYmVuLgpJbmRleDogU291cmNlL1dlYktp
dDIvU2hhcmVkL0V2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9FdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaAkocmV2aXNpb24gMCkK
KysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9FdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw2NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEg
Q29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCisgKiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUgorICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKKyAqIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlc19oCisjZGVmaW5lIEV2ZW50U2VuZGVyUHJveHlN
ZXNzYWdlc19oCisKKyNpbmNsdWRlICJBcmd1bWVudHMuaCIKKyNpbmNsdWRlICJNZXNzYWdlSUQu
aCIKKyNpbmNsdWRlICJXS01lc3NhZ2VJRC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgorCituYW1lc3BhY2UgTWVzc2FnZXMgeworCituYW1lc3BhY2UgRXZlbnRTZW5kZXJQcm94
eSB7CisKK3N0cnVjdCBLZXlEb3duIDogQ29yZUlQQzo6QXJndW1lbnRzMzxjb25zdCBTdHJpbmcm
LCB1aW50MzJfdCwgdWludDMyX3Q+IHsKKyAgICBzdGF0aWMgY29uc3QgS2luZCBtZXNzYWdlSUQg
PSBLZXlEb3duSUQ7CisgICAgdHlwZWRlZiBDb3JlSVBDOjpBcmd1bWVudHMzPGNvbnN0IFN0cmlu
ZyYsIHVpbnQzMl90LCB1aW50MzJfdD4gRGVjb2RlVHlwZTsKKyAgICBLZXlEb3duKGNvbnN0IFN0
cmluZyYga2V5LCB1aW50MzJfdCBtb2RpZmllcnMsIHVpbnQzMl90IGxvY2F0aW9uKQorICAgICAg
ICA6IENvcmVJUEM6OkFyZ3VtZW50czM8Y29uc3QgU3RyaW5nJiwgdWludDMyX3QsIHVpbnQzMl90
PihrZXksIG1vZGlmaWVycywgbG9jYXRpb24pCisgICAgeworICAgIH0KKyAgICB2b2lkIGVuY29k
ZShDb3JlSVBDOjpBcmd1bWVudEVuY29kZXIqIGVuY29kZXIpIGNvbnN0CisgICAgeworICAgICAg
ICBlbmNvZGVyLT5lbmNvZGUoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KG1lc3NhZ2VJRCkpOworICAg
ICAgICBEZWNvZGVUeXBlOjplbmNvZGUoZW5jb2Rlcik7CisgICAgfQorfTsKKworfSAvLyBuYW1l
c3BhY2UgRXZlbnRTZW5kZXJQcm94eQorCit9IC8vIG5hbWVzcGFjZSBNZXNzYWdlcworCituYW1l
c3BhY2UgQ29yZUlQQyB7CisKK3RlbXBsYXRlPD4gc3RydWN0IE1lc3NhZ2VLaW5kVHJhaXRzPE1l
c3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLaW5kPiB7CisgICAgc3RhdGljIGNvbnN0IE1lc3Nh
Z2VDbGFzcyBtZXNzYWdlQ2xhc3MgPSBNZXNzYWdlQ2xhc3NXZWJDb250ZXh0TGVnYWN5OworfTsK
KworfSAvLyBuYW1lc3BhY2UgQ29yZUlQQworCisjZW5kaWYgLy8gRXZlbnRTZW5kZXJQcm94eU1l
c3NhZ2VzX2gKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0FyZ3VtZW50RGVj
b2Rlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLQXJn
dW1lbnREZWNvZGVyLmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UEkvYy9XS0FyZ3VtZW50RGVjb2Rlci5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNTkgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vi
c2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
V0tBcmd1bWVudERlY29kZXIuaCIKKworI2luY2x1ZGUgIkFQSU9iamVjdC5oIgorI2luY2x1ZGUg
IkFyZ3VtZW50Q29kZXJzLmgiCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkV2
ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oIgorI2luY2x1ZGUgIkhhbmRsZU1lc3NhZ2UuaCIKKyNp
bmNsdWRlICJXS0FQSUNhc3QuaCIKKyNpbmNsdWRlICJXS1N0cmluZy5oIgorCit1c2luZyBuYW1l
c3BhY2UgV2ViS2l0OworCitXS0FyZ3VtZW50RGVjb2RlclJlZiBXS0NyZWF0ZUFyZ3VtZW50RGVj
b2Rlcihjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoKQoreworICAgIENv
cmVJUEM6OkFyZ3VtZW50RGVjb2RlciogYXJndW1lbnREZWNvZGVyID0gbmV3IENvcmVJUEM6OkFy
Z3VtZW50RGVjb2RlcihkYXRhLCBsZW5ndGgpOworICAgIHJldHVybiB0b0FQSShhcmd1bWVudERl
Y29kZXIpOworfQorCitib29sIFdLRGVjb2RlVUludDMyKFdLQXJndW1lbnREZWNvZGVyUmVmIGFy
Z3VtZW50RGVjb2RlclJlZiwgdWludDMyX3QmIHZhbHVlKQoreworICAgIHJldHVybiB0b0ltcGwo
YXJndW1lbnREZWNvZGVyUmVmKS0+ZGVjb2RlKHZhbHVlKTsKK30KKworYm9vbCBXS0RlY29kZVN0
cmluZyhXS0FyZ3VtZW50RGVjb2RlclJlZiBhcmd1bWVudERlY29kZXJSZWYsIFdLU3RyaW5nUmVm
JiBzdHJSZWYpCit7CisgICAgU3RyaW5nIHN0cjsKKyAgICBpZiAodG9JbXBsKGFyZ3VtZW50RGVj
b2RlclJlZiktPmRlY29kZShzdHIpKSB7CisgICAgICAgIHN0clJlZiA9IFdLU3RyaW5nQ3JlYXRl
V2l0aFVURjhDU3RyaW5nKHN0ci51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgcmV0dXJuIHRydWU7
CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9BUEkvYy9XS0FyZ3VtZW50RGVjb2Rlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1NoYXJlZC9BUEkvYy9XS0FyZ3VtZW50RGVjb2Rlci5oCShyZXZpc2lvbiAwKQorKysgU291cmNl
L1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLQXJndW1lbnREZWNvZGVyLmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9u
IGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFdLQXJndW1l
bnREZWNvZGVyX2gKKyNkZWZpbmUgV0tBcmd1bWVudERlY29kZXJfaAorCisjaW5jbHVkZSA8V2Vi
S2l0Mi9XS0Jhc2UuaD4KKyNpbmNsdWRlIDxXZWJLaXQyL1dLTWVzc2FnZUlELmg+CisKKyNpZmRl
ZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIiB7CisjZW5kaWYKKworV0tfRVhQT1JUIFdLQXJndW1l
bnREZWNvZGVyUmVmIFdLQ3JlYXRlQXJndW1lbnREZWNvZGVyKGNvbnN0IHVuc2lnbmVkIGNoYXIq
LCBzaXplX3QpOworV0tfRVhQT1JUIGJvb2wgV0tEZWNvZGVVSW50MzIoV0tBcmd1bWVudERlY29k
ZXJSZWYsIHVpbnQzMl90Jik7CisKK1dLX0VYUE9SVCBib29sIFdLRGVjb2RlU3RyaW5nKFdLQXJn
dW1lbnREZWNvZGVyUmVmLCBXS1N0cmluZ1JlZiYpOworCisjaWZkZWYgX19jcGx1c3BsdXMKK30K
KyNlbmRpZgorCisKKyNlbmRpZiAvKiBXS0FyZ3VtZW50RGVjb2Rlcl9oICovCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tCYXNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCShyZXZpc2lvbiA4MjU5NCkKKysrIFNvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0Jhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtNjUsNiArNjUs
OCBAQCB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS1VSTFJlcXVlc3QqCiB0eXBlZGVmIGNv
bnN0IHN0cnVjdCBPcGFxdWVXS1VSTFJlc3BvbnNlKiBXS1VSTFJlc3BvbnNlUmVmOwogdHlwZWRl
ZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tVc2VyQ29udGVudFVSTFBhdHRlcm4qIFdLVXNlckNvbnRl
bnRVUkxQYXR0ZXJuUmVmOwogCit0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0FyZ3VtZW50
RGVjb2RlciogV0tBcmd1bWVudERlY29kZXJSZWY7CisKIC8qIFdlYktpdDIgbWFpbiBBUEkgdHlw
ZXMgKi8KIAogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tBcHBsaWNhdGlvbkNhY2hlTWFu
YWdlciogV0tBcHBsaWNhdGlvbkNhY2hlTWFuYWdlclJlZjsKQEAgLTEwMyw2ICsxMDUsNyBAQCB0
eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0J1bmRsZSogV0tCCiB0eXBlZGVmIGNvbnN0IHN0
cnVjdCBPcGFxdWVXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdCogV0tCdW5kbGVCYWNrRm9yd2FyZExp
c3RSZWY7CiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0J1bmRsZUJhY2tGb3J3YXJkTGlz
dEl0ZW0qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbVJlZjsKIHR5cGVkZWYgY29uc3Qgc3Ry
dWN0IE9wYXF1ZVdLQnVuZGxlRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiogV0tCdW5kbGVDU1NTdHls
ZURlY2xhcmF0aW9uUmVmOwordHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tCdW5kbGVFdmVu
dFNlbmRlciogV0tCdW5kbGVFdmVudFNlbmRlclJlZjsKIHR5cGVkZWYgY29uc3Qgc3RydWN0IE9w
YXF1ZVdLQnVuZGxlRnJhbWUqIFdLQnVuZGxlRnJhbWVSZWY7CiB0eXBlZGVmIGNvbnN0IHN0cnVj
dCBPcGFxdWVXS0J1bmRsZUhpdFRlc3RSZXN1bHQqIFdLQnVuZGxlSGl0VGVzdFJlc3VsdFJlZjsK
IHR5cGVkZWYgY29uc3Qgc3RydWN0IE9wYXF1ZVdLQnVuZGxlSW5zcGVjdG9yKiBXS0J1bmRsZUlu
c3BlY3RvclJlZjsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS01lc3NhZ2VJ
RC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS01lc3NhZ2VJ
RC5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLTWVzc2Fn
ZUlELmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
CisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorICogQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisgKiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2lmbmRlZiBXS01lc3NhZ2VJRF9oCisjZGVmaW5lIFdLTWVzc2FnZUlEX2gKKworbmFt
ZXNwYWNlIE1lc3NhZ2VzIHsKKworbmFtZXNwYWNlIEV2ZW50U2VuZGVyUHJveHkgeworCitlbnVt
IEtpbmQgeworICAgIEtleURvd25JRCwKK307CisKK30gLy8gbmFtZXNwYWNlIEV2ZW50U2VuZGVy
UHJveHkKKworfSAvLyBuYW1lc3BhY2UgTWVzc2FnZXMKKworI2VuZGlmIC8vIFdLTWVzc2FnZUlE
X2gKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNhc3QuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0
LmgJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU2hh
cmVkQVBJQ2FzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0OSwxMCBAQAogI2luY2x1ZGUg
PFdlYkNvcmUvSW50UmVjdC5oPgogI2luY2x1ZGUgPHd0Zi9UeXBlVHJhaXRzLmg+CiAKK25hbWVz
cGFjZSBDb3JlSVBDIHsKK2NsYXNzIEFyZ3VtZW50RGVjb2RlcjsKK30KKwogbmFtZXNwYWNlIFdl
YktpdCB7CiAKIGNsYXNzIEltbXV0YWJsZUFycmF5OwpAQCAtOTUsNiArOTksOCBAQCBXS19BRERf
QVBJX01BUFBJTkcoV0tVUkxSZXF1ZXN0UmVmLCBXZWJVCiBXS19BRERfQVBJX01BUFBJTkcoV0tV
UkxSZXNwb25zZVJlZiwgV2ViVVJMUmVzcG9uc2UpCiBXS19BRERfQVBJX01BUFBJTkcoV0tVc2Vy
Q29udGVudFVSTFBhdHRlcm5SZWYsIFdlYlVzZXJDb250ZW50VVJMUGF0dGVybikKIAorV0tfQURE
X0FQSV9NQVBQSU5HKFdLQXJndW1lbnREZWNvZGVyUmVmLCBDb3JlSVBDOjpBcmd1bWVudERlY29k
ZXIpCisKIHRlbXBsYXRlPHR5cGVuYW1lIEltcGxUeXBlLCB0eXBlbmFtZSBBUElUeXBlID0gdHlw
ZW5hbWUgSW1wbFR5cGVJbmZvPEltcGxUeXBlKj46OkFQSVR5cGU+CiBjbGFzcyBQcm94eWluZ1Jl
ZlB0ciB7CiBwdWJsaWM6CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4
dFVzZXJNZXNzYWdlQ29kZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkNvbnRleHRVc2VyTWVzc2FnZUNvZGVycy5oCShyZXZpc2lvbiA4MjU5NCkKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0VXNlck1lc3NhZ2VDb2RlcnMuaAkod29y
a2luZyBjb3B5KQpAQCAtMjUsNiArMjUsNyBAQAogCiAjaW5jbHVkZSAiVXNlck1lc3NhZ2VDb2Rl
cnMuaCIKICNpbmNsdWRlICJXZWJDb250ZXh0LmgiCisjaW5jbHVkZSAiV2ViRGF0YS5oIgogI2lu
Y2x1ZGUgIldlYkZyYW1lUHJveHkuaCIKICNpbmNsdWRlICJXZWJQYWdlR3JvdXAuaCIKICNpbmNs
dWRlICJXZWJQYWdlR3JvdXBEYXRhLmgiCkBAIC0xMjcsNiArMTI4LDE0IEBAIHB1YmxpYzoKICAg
ICAgICAgICAgIGNvZGVyLm1fcm9vdCA9IFdlYlBhZ2VHcm91cDo6Z2V0KHBhZ2VHcm91cElEKTsK
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CisgICAgICAgIGNhc2UgQVBJT2JqZWN0OjpU
eXBlRGF0YTogeworICAgICAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IGJ5dGVzOworICAgICAgICAg
ICAgaWYgKCFkZWNvZGVyLT5kZWNvZGVCeXRlcyhieXRlcykpCisgICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgICAgICAgICAgUmVmUHRyPFdlYkRhdGE+IHdlYkRhdGEgPSBXZWJEYXRh
OjpjcmVhdGUoYnl0ZXMucmVsZWFzZUJ1ZmZlcigpLCBieXRlcy5zaXplKCkpOworICAgICAgICAg
ICAgY29kZXIubV9yb290ID0gd2ViRGF0YS5yZWxlYXNlKCk7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgfQogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgICAgICB9CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA4MjU5NCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYktp
dDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMzU2LDYgKzM1
NiwxNSBAQAogCQk1MUQwMkY2QTEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlTWVz
c2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUx
RDAyRjY3MTMyRUM3MzcwMEJFQUE5NiAvKiBXZWJJY29uRGF0YWJhc2VNZXNzYWdlcy5oICovOyB9
OwogCQk1MUQwMkY2QjEzMkVDNzM3MDBCRUFBOTYgLyogV2ViSWNvbkRhdGFiYXNlUHJveHlNZXNz
YWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTFEMDJGNjgxMzJFQzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVz
c2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJNTFEMDJGNkMxMzJFQzczNzAwQkVBQTk2IC8qIFdl
Ykljb25EYXRhYmFzZVByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUxRDAyRjY5MTMyRUM3MzcwMEJFQUE5NiAvKiBXZWJJY29uRGF0
YWJhc2VQcm94eU1lc3NhZ2VzLmggKi87IH07CisJCTU2QkM2RDc2MTM0MzlDOUMwMDZCRDdBMyAv
KiBXS0FyZ3VtZW50RGVjb2Rlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1NkJDNkQ3NTEzNDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29k
ZXIuY3BwICovOyB9OworCQk1NkJDNkQ3ODEzNDM5RjA0MDA2QkQ3QTMgLyogV0tBcmd1bWVudERl
Y29kZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2
QkM2RDc3MTM0MzlGMDQwMDZCRDdBMyAvKiBXS0FyZ3VtZW50RGVjb2Rlci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKKwkJNTZCQzZEN0MxMzQzQjkyRTAw
NkJEN0EzIC8qIFdLTWVzc2FnZUlELmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1NkJDNkQ3QjEzNDNCOTJFMDA2QkQ3QTMgLyogV0tNZXNzYWdlSUQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CisJCTU2Q0U3MTRC
MTMzM0JBQjEwMDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRBMTMzM0JBQjEw
MDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLzsgfTsKKwkJNTZDRTcx
NEQxMzMzQkFFRDAwNDlEODlFIC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRDMTMzM0JBRUQw
MDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmggKi87IH07CisJCTU2Q0U3MTRG
MTMzM0JCMkEwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2Q0U3MTRFMTMzM0JCMkEwMDQ5
RDg5RSAvKiBFdmVudFNlbmRlclByb3h5TWVzc2FnZXMuaCAqLzsgfTsKKwkJNTZDRTcxNUExMzMz
QkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTZDRTcxNTgxMzMzQkJDMTAwNDlEODlFIC8q
IFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwICovOyB9OworCQk1NkNFNzE1QjEzMzNCQkMxMDA0OUQ4
OUUgLyogV0tCdW5kbGVFdmVudFNlbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTZDRTcxNTkxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZl
bnRTZW5kZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07
CisJCTU2RDAxREM4MTM0M0JDNDQwMDk4REUwNiAvKiBXS0FycmF5LmggaW4gQ29weUZpbGVzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNDA3NUQ4MTI0RkYwMjcwMDY4RjIw
QSAvKiBXS0FycmF5LmggKi87IH07CiAJCTY1MDFCRDFBMTJGMTI0MzQwMEU5RjI0OCAvKiBXS0J1
bmRsZUluc3BlY3Rvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA2NUI4NkYxNzEyRjExRDdCMDBCN0REOEEgLyogV0tCdW5kbGVJbnNwZWN0b3IuY3Bw
ICovOyB9OwogCQk2NTlDNTUxRTEzMDAwNjQxMDAyNUMwQzIgLyogSW5qZWN0ZWRCdW5kbGVQYWdl
UmVzb3VyY2VMb2FkQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDY1NDZBODI5MTMwMDAxNjQwMDBDRUIxQyAvKiBJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwICovOyB9OwogCQk2NUI4NkYxRTEyRjExREUzMDBCN0RE
OEEgLyogV0tCdW5kbGVJbnNwZWN0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDY1Qjg2RjE4MTJGMTFEN0IwMEI3REQ4QSAvKiBXS0J1bmRsZUluc3Bl
Y3Rvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKQEAg
LTg2OCw2ICs4NzcsNyBAQAogCQkJCTFBNTBEQjY2MTEwQTNENTcwMDBEM0ZFNSAvKiBXZWJQcm9j
ZXNzLmFwcCBpbiBDb3B5RmlsZXMgKi8sCiAJCQkJQkNERTBBQkYxMzI3MjcwODAwMTI1OUZCIC8q
IFBsdWdpblByb2Nlc3MuYXBwIGluIENvcHlGaWxlcyAqLywKIAkJCQlGNjM4OTU1MDEzM0JFRjM4
MDA4OTQxRDUgLyogSFRUUENvb2tpZUFjY2VwdFBvbGljeS5oIGluIENvcHlGaWxlcyAqLywKKwkJ
CQk1NkQwMURDODEzNDNCQzQ0MDA5OERFMDYgLyogV0tBcnJheS5oIGluIENvcHlGaWxlcyAqLywK
IAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsK
QEAgLTEyNDEsNiArMTI1MSwxNCBAQAogCQk1MUQwMkY2NzEzMkVDNzM3MDBCRUFBOTYgLyogV2Vi
SWNvbkRhdGFiYXNlTWVzc2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V2ViSWNvbkRhdGFiYXNlTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTFEMDJGNjgxMzJFQzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVzc2FnZVJl
Y2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkljb25E
YXRhYmFzZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNTFEMDJGNjkxMzJFQzczNzAwQkVBQTk2IC8qIFdlYkljb25EYXRhYmFzZVByb3h5TWVz
c2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViSWNvbkRhdGFiYXNl
UHJveHlNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NkJDNkQ3NTEz
NDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29kZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV0tBcmd1bWVudERlY29kZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1NkJDNkQ3NzEzNDM5RjA0MDA2QkQ3QTMgLyogV0tBcmd1bWVudERl
Y29kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tBcmd1bWVudERlY29k
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTZCQzZEN0IxMzQzQjkyRTAwNkJE
N0EzIC8qIFdLTWVzc2FnZUlELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdL
TWVzc2FnZUlELmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTRBMTMzM0JB
QjEwMDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NkNFNzE0QzEzMzNCQUVEMDA0OUQ4OUUgLyog
SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU2Q0U3MTRFMTMzM0JCMkEwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5TWVzc2Fn
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRTZW5kZXJQcm94eU1l
c3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTU4MTMzM0JCQzEw
MDQ5RDg5RSAvKiBXS0J1bmRsZUV2ZW50U2VuZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1NkNFNzE1OTEzMzNCQkMxMDA0OUQ4OUUgLyogV0tCdW5kbGVFdmVudFNl
bmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZUV2ZW50U2Vu
ZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVEQUQ3Mjk0MTE2RkY3MEIwMEVF
NTM5NiAvKiBXZWJQcm9jZXNzLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0
aCA9IFdlYlByb2Nlc3MueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVE
QUQ3M0YxMTE2RkY5MEMwMEVFNTM5NiAvKiBCYXNlVGFyZ2V0LnhjY29uZmlnICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dC54Y2NvbmZpZzsgcGF0aCA9IEJhc2VUYXJnZXQueGNjb25maWc7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTY1NDZBODI5MTMwMDAxNjQwMDBDRUIxQyAvKiBJbmplY3RlZEJ1bmRs
ZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwNDAsNiArMjA1OCw3IEBACiAJCQkJQkNFODFEOTcx
MzFBRTAyMTAwMjQxOTEwIC8qIERpY3Rpb25hcnlQb3B1cEluZm8uaCAqLywKIAkJCQlDNTE3Mzg4
MDEyREY4RjRGMDBFRTNGNDcgLyogRHJhZ0NvbnRyb2xsZXJBY3Rpb24uaCAqLywKIAkJCQkwRkI2
NTkyMjEyMDhCNERCMDA0NDgxNkMgLyogRHJhd2luZ0FyZWFJbmZvLmggKi8sCisJCQkJNTZDRTcx
NEUxMzMzQkIyQTAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oICovLAogCQkJ
CTc2MkI3NDgxMTIwQkJBMDEwMDgxOTMzOSAvKiBGb250U21vb3RoaW5nTGV2ZWwuaCAqLywKIAkJ
CQlGNjM4OTU0RjEzM0JFRjM4MDA4OTQxRDUgLyogSFRUUENvb2tpZUFjY2VwdFBvbGljeS5oICov
LAogCQkJCUJDQ0Y2QjIzMTJDOTNFN0EwMDhGOUMzNSAvKiBJbWFnZU9wdGlvbnMuaCAqLywKQEAg
LTI4MDgsNiArMjgyNyw4IEBACiAJCQkJOTM1RUVCOTIxMjc3NjE1RDAwMzMyMkI4IC8qIEluamVj
dGVkQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oICovLAogCQkJCUJDRUU3REM0MTI4QjY0NUQw
MDk4MjdEQSAvKiBJbmplY3RlZEJ1bmRsZUNsaWVudC5jcHAgKi8sCiAJCQkJQkNFRTdEQzMxMjhC
NjQ1RDAwOTgyN0RBIC8qIEluamVjdGVkQnVuZGxlQ2xpZW50LmggKi8sCisJCQkJNTZDRTcxNEEx
MzMzQkFCMTAwNDlEODlFIC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwICovLAorCQkJ
CTU2Q0U3MTRDMTMzM0JBRUQwMDQ5RDg5RSAvKiBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmgg
Ki8sCiAJCQkJQkM0OTg2MTcxMjREMTBFMjAwRDgzNEUxIC8qIEluamVjdGVkQnVuZGxlSGl0VGVz
dFJlc3VsdC5jcHAgKi8sCiAJCQkJQkM0OTg2MTYxMjREMTBFMjAwRDgzNEUxIC8qIEluamVjdGVk
QnVuZGxlSGl0VGVzdFJlc3VsdC5oICovLAogCQkJCUJDODE0N0Q0MTJGNjZEMzEwMDdCMkMzMiAv
KiBJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwICovLApAQCAtMjg1OSw2ICsyODgw
LDggQEAKIAkJCQk5MzVFRUI5NjEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2Fy
ZExpc3QuaCAqLywKIAkJCQk5MzVFRUI5NzEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNr
Rm9yd2FyZExpc3RJdGVtLmNwcCAqLywKIAkJCQk5MzVFRUI5ODEyNzc2MTZEMDAzMzIyQjggLyog
V0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggKi8sCisJCQkJNTZDRTcxNTgxMzMzQkJDMTAw
NDlEODlFIC8qIFdLQnVuZGxlRXZlbnRTZW5kZXIuY3BwICovLAorCQkJCTU2Q0U3MTU5MTMzM0JC
QzEwMDQ5RDg5RSAvKiBXS0J1bmRsZUV2ZW50U2VuZGVyLmggKi8sCiAJCQkJQkNEMjVGMTYxMUQ2
QkRFMTAwMTY5QjBFIC8qIFdLQnVuZGxlRnJhbWUuY3BwICovLAogCQkJCUJDRDI1RjE1MTFENkJE
RTEwMDE2OUIwRSAvKiBXS0J1bmRsZUZyYW1lLmggKi8sCiAJCQkJQkNGMDQ5RTQxMUZFMjBGNjAw
Rjg2QTU4IC8qIFdLQnVuZGxlRnJhbWVQcml2YXRlLmggKi8sCkBAIC0zMDQ0LDYgKzMwNjcsOCBA
QAogCQkJCUJDNDA3NUQ1MTI0RkVGRkEwMDY4RjIwQSAvKiBjZiAqLywKIAkJCQlCQ0NGNkFDNDEy
QzkxRjNCMDA4RjlDMzUgLyogY2cgKi8sCiAJCQkJQkM0MDc1RDYxMjRGRjAwMDAwNjhGMjBBIC8q
IG1hYyAqLywKKwkJCQk1NkJDNkQ3NTEzNDM5QzlDMDA2QkQ3QTMgLyogV0tBcmd1bWVudERlY29k
ZXIuY3BwICovLAorCQkJCTU2QkM2RDc3MTM0MzlGMDQwMDZCRDdBMyAvKiBXS0FyZ3VtZW50RGVj
b2Rlci5oICovLAogCQkJCUJDNDA3NUQ3MTI0RkYwMjcwMDY4RjIwQSAvKiBXS0FycmF5LmNwcCAq
LywKIAkJCQlCQzQwNzVEODEyNEZGMDI3MDA2OEYyMEEgLyogV0tBcnJheS5oICovLAogCQkJCUJD
RERCMzE2MTI0RUJEMTMwMDQ4RDEzQyAvKiBXS0Jhc2UuaCAqLywKQEAgLTMwNjUsNiArMzA5MCw3
IEBACiAJCQkJQkNBNTZBNjMxMkY5QzhGOTAwQzU2NkM3IC8qIFdLR3JhcGhpY3NDb250ZXh0Lmgg
Ki8sCiAJCQkJQkNDRjZBQzAxMkM5MUYzNDAwOEY5QzM1IC8qIFdLSW1hZ2UuY3BwICovLAogCQkJ
CUJDQ0Y2QUMxMTJDOTFGMzQwMDhGOUMzNSAvKiBXS0ltYWdlLmggKi8sCisJCQkJNTZCQzZEN0Ix
MzQzQjkyRTAwNkJEN0EzIC8qIFdLTWVzc2FnZUlELmggKi8sCiAJCQkJQkM0MDc1RTExMjRGRjAy
NzAwNjhGMjBBIC8qIFdLTXV0YWJsZUFycmF5LmNwcCAqLywKIAkJCQlCQzQwNzVFMjEyNEZGMDI3
MDA2OEYyMEEgLyogV0tNdXRhYmxlQXJyYXkuaCAqLywKIAkJCQlCQzQwNzVFMzEyNEZGMDI3MDA2
OEYyMEEgLyogV0tNdXRhYmxlRGljdGlvbmFyeS5jcHAgKi8sCkBAIC0zNjUxLDYgKzM2NzcsMTEg
QEAKIAkJCQlDMDY0NTA0QTEzM0JFNzA5MDAzNDcwRTIgLyogTGF5ZXJUcmVlSG9zdENBLmggaW4g
SGVhZGVycyAqLywKIAkJCQk1MTEwQUUwRDEzM0MxNkNCMDA3MjcxN0EgLyogV0tJY29uRGF0YWJh
c2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxMjNDRjFDMTMzRDI2MEEwMDU2RjgwMCAvKiBXS0lj
b25EYXRhYmFzZUNHLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NkNFNzE0RDEzMzNCQUVEMDA0OUQ4
OUUgLyogSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTZD
RTcxNEYxMzMzQkIyQTAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHlNZXNzYWdlcy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTZDRTcxNUIxMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZlbnRT
ZW5kZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTU2QkM2RDc4MTM0MzlGMDQwMDZCRDdBMyAvKiBX
S0FyZ3VtZW50RGVjb2Rlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTZCQzZEN0MxMzQzQjkyRTAw
NkJEN0EzIC8qIFdLTWVzc2FnZUlELmggaW4gSGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTQyNzUsNiArNDMwNiw5
IEBACiAJCQkJNTEyM0NGMUIxMzNEMjYwQTAwNTZGODAwIC8qIFdLSWNvbkRhdGFiYXNlQ0cuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJRjZBOTA4MTMxMzNDMjA1MTAwODJDM0Y0IC8qIFdlYkNvb2tp
ZU1hbmFnZXJNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQlGNkQ2MzJCQzEzM0QxOTgyMDA3NDNE
NzcgLyogV2ViQ29va2llTWFuYWdlclByb3h5TWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTZD
RTcxNEIxMzMzQkFCMTAwNDlEODlFIC8qIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTZDRTcxNUExMzMzQkJDMTAwNDlEODlFIC8qIFdLQnVuZGxlRXZl
bnRTZW5kZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTZCQzZENzYxMzQzOUM5QzAwNkJEN0Ez
IC8qIFdLQXJndW1lbnREZWNvZGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9u
bHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJbmRleDogU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZS5jcHAJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4
LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgIkFyZ3VtZW50cy5oIgogI2luY2x1ZGUgIkltbXV0YWJs
ZUFycmF5LmgiCisjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oIgogI2luY2x1
ZGUgIkluamVjdGVkQnVuZGxlTWVzc2FnZUtpbmRzLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5k
bGVTY3JpcHRXb3JsZC5oIgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VDb2Rl
cnMuaCIKQEAgLTU3LDYgKzU4LDkgQEAgSW5qZWN0ZWRCdW5kbGU6OkluamVjdGVkQnVuZGxlKGNv
bnN0IFN0cgogICAgIDogbV9wYXRoKHBhdGgpCiAgICAgLCBtX3BsYXRmb3JtQnVuZGxlKDApCiB7
CisjaWYgUExBVEZPUk0oTUFDKQorICAgIG1fZXZlbnRTZW5kZXIgPSB0b0FQSShJbmplY3RlZEJ1
bmRsZUV2ZW50U2VuZGVyOjpjcmVhdGUoKSk7CisjZW5kaWYKICAgICBpbml0aWFsaXplQ2xpZW50
KDApOwogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCShyZXZpc2lvbiA4MjU5NCkKKysrIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaAko
d29ya2luZyBjb3B5KQpAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAiQVBJT2JqZWN0Lmgi
CiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVDbGllbnQuaCIKKyNpbmNsdWRlICJJbmplY3RlZEJ1
bmRsZUV2ZW50U2VuZGVyLmgiCiAjaW5jbHVkZSAiU2FuZGJveEV4dGVuc2lvbi5oIgogI2luY2x1
ZGUgIldLQnVuZGxlLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyQ29udGVudFR5cGVzLmg+CkBA
IC03OCw4ICs3OSw5IEBAIHB1YmxpYzoKIAogICAgIC8vIEFQSQogICAgIHZvaWQgaW5pdGlhbGl6
ZUNsaWVudChXS0J1bmRsZUNsaWVudCopOwotICAgIHZvaWQgcG9zdE1lc3NhZ2UoY29uc3QgU3Ry
aW5nJiwgQVBJT2JqZWN0Kik7CisgICAgc3RhdGljIHZvaWQgcG9zdE1lc3NhZ2UoY29uc3QgU3Ry
aW5nJiwgQVBJT2JqZWN0Kik7CiAgICAgdm9pZCBwb3N0U3luY2hyb25vdXNNZXNzYWdlKGNvbnN0
IFN0cmluZyYsIEFQSU9iamVjdCosIFJlZlB0cjxBUElPYmplY3Q+JiByZXR1cm5EYXRhKTsKKyAg
ICBXS0J1bmRsZUV2ZW50U2VuZGVyUmVmIGV2ZW50U2VuZGVyKCkgY29uc3QgeyByZXR1cm4gbV9l
dmVudFNlbmRlcjsgfQogI2lmIFBMQVRGT1JNKFdJTikKICAgICB2b2lkIHNldEhvc3RBbGxvd3NB
bnlIVFRQU0NlcnRpZmljYXRlKGNvbnN0IFN0cmluZyYpOwogICAgIHZvaWQgc2V0Q2xpZW50Q2Vy
dGlmaWNhdGUoY29uc3QgU3RyaW5nJiwgY29uc3QgV2ViQ2VydGlmaWNhdGVJbmZvKik7CkBAIC0x
MjQsNiArMTI2LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9wYXRoOwogICAgIFBsYXRmb3Jt
QnVuZGxlIG1fcGxhdGZvcm1CdW5kbGU7IC8vIFRoaXMgaXMgbGVha2VkIHJpZ2h0IG5vdywgc2lu
Y2Ugd2UgbmV2ZXIgdW5sb2FkIHRoZSBidW5kbGUvbW9kdWxlLgogCisgICAgV0tCdW5kbGVFdmVu
dFNlbmRlclJlZiBtX2V2ZW50U2VuZGVyOwogICAgIFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPiBt
X3NhbmRib3hFeHRlbnNpb247CiAKICAgICBJbmplY3RlZEJ1bmRsZUNsaWVudCBtX2NsaWVudDsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGVFdmVudFNlbmRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmNwcAkocmV2aXNp
b24gMCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVFdmVudFNlbmRlci5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjkgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lk
aWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
CisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgor
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSW5q
ZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oIgorCisjaW5jbHVkZSAiQVBJT2JqZWN0LmgiCisjaW5j
bHVkZSAiQXJndW1lbnRDb2RlcnMuaCIKKyNpbmNsdWRlICJFdmVudFNlbmRlclByb3h5TWVzc2Fn
ZXMuaCIKKyNpbmNsdWRlIDxJbmplY3RlZEJ1bmRsZS5oPgorI2luY2x1ZGUgPE1lc3NhZ2VJRC5o
PgorI2luY2x1ZGUgPFdLU3RyaW5nLmg+CisjaW5jbHVkZSA8V2ViQ29udGV4dE1lc3NhZ2VLaW5k
cy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvVXNlckNvbnRlbnRUeXBlcy5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvVXNlclNjcmlwdFR5cGVzLmg+CisjaW5jbHVkZSA8V2ViRGF0YS5oPgorI2luY2x1ZGUg
PFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KKyNpbmNsdWRlIDxXZWJQcm9jZXNzLmg+CisjaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK0luamVjdGVkQnVuZGxlRXZlbnRTZW5kZXIqIEluamVjdGVk
QnVuZGxlRXZlbnRTZW5kZXI6OmNyZWF0ZSgpCit7CisgICAgcmV0dXJuIG5ldyBJbmplY3RlZEJ1
bmRsZUV2ZW50U2VuZGVyKCk7Cit9CisKK0luamVjdGVkQnVuZGxlRXZlbnRTZW5kZXI6OkluamVj
dGVkQnVuZGxlRXZlbnRTZW5kZXIoKQoreworfQorCitJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVy
Ojp+SW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcigpCit7Cit9CisKK3ZvaWQgSW5qZWN0ZWRCdW5k
bGVFdmVudFNlbmRlcjo6a2V5RG93bihjb25zdCBTdHJpbmcmIGtleSwgdW5zaWduZWQgaW50IG1v
ZGlmLCB1bnNpZ25lZCBpbnQgbG9jYXRpb24pCit7CisgICAgT3duUHRyPENvcmVJUEM6OkFyZ3Vt
ZW50RW5jb2Rlcj4gYXJndW1lbnRFbmNvZGVyID0gQ29yZUlQQzo6QXJndW1lbnRFbmNvZGVyOjpj
cmVhdGUoMCk7CisgICAgYXJndW1lbnRFbmNvZGVyLT5lbmNvZGUoTWVzc2FnZXM6OkV2ZW50U2Vu
ZGVyUHJveHk6OktleURvd24oa2V5LCBtb2RpZiwgbG9jYXRpb24pKTsKKyAgICBSZWZQdHI8V2Vi
RGF0YT4gd2ViRGF0YSA9IFdlYkRhdGE6OmNyZWF0ZShhcmd1bWVudEVuY29kZXItPmJ1ZmZlcigp
LCBhcmd1bWVudEVuY29kZXItPmJ1ZmZlclNpemUoKSk7CisgICAgSW5qZWN0ZWRCdW5kbGU6OnBv
c3RNZXNzYWdlKCJFdmVudFNlbmRlciIsIHdlYkRhdGEucmVsZWFzZSgpLmdldCgpKTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVF
dmVudFNlbmRlci5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyLmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNDkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9u
IGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEluamVjdGVk
QnVuZGxlRXZlbnRTZW5kZXJfaAorI2RlZmluZSBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyX2gK
KworI2luY2x1ZGUgIkFQSU9iamVjdC5oIgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitj
bGFzcyBJbmplY3RlZEJ1bmRsZUV2ZW50U2VuZGVyIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgSW5q
ZWN0ZWRCdW5kbGVFdmVudFNlbmRlciogY3JlYXRlKCk7CisgICAgfkluamVjdGVkQnVuZGxlRXZl
bnRTZW5kZXIoKTsKKworICAgIHZvaWQga2V5RG93bihjb25zdCBTdHJpbmcmIGtleSwgdW5zaWdu
ZWQgaW50IG1vZGlmLCB1bnNpZ25lZCBpbnQgbG9jYXRpb24pOworCitwcml2YXRlOgorICAgIElu
amVjdGVkQnVuZGxlRXZlbnRTZW5kZXIoKTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAor
CisjZW5kaWYgLy8gSW5qZWN0ZWRCdW5kbGVFdmVudFNlbmRlcl9oCkluZGV4OiBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VD
b2RlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VDb2RlcnMuaAkocmV2aXNpb24gODI1OTQp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlVXNlck1lc3NhZ2VDb2RlcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsNiArMjcsNyBAQAog
I2RlZmluZSBJbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlQ29kZXJzX2gKIAogI2luY2x1ZGUgIlVz
ZXJNZXNzYWdlQ29kZXJzLmgiCisjaW5jbHVkZSAiV2ViRGF0YS5oIgogI2luY2x1ZGUgIldlYkZy
YW1lLmgiCiAjaW5jbHVkZSAiV2ViUGFnZS5oIgogI2luY2x1ZGUgIldlYlBhZ2VHcm91cERhdGEu
aCIKQEAgLTcxLDYgKzcyLDExIEBAIHB1YmxpYzoKICAgICAgICAgICAgIGVuY29kZXItPmVuY29k
ZShwYWdlR3JvdXAtPnBhZ2VHcm91cElEKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KKyAgICAgICAgY2FzZSBBUElPYmplY3Q6OlR5cGVEYXRhOiB7CisgICAgICAgICAgICBXZWJE
YXRhKiB3ZWJEYXRhID0gc3RhdGljX2Nhc3Q8V2ViRGF0YSo+KG1fcm9vdCk7CisgICAgICAgICAg
ICBlbmNvZGVyLT5lbmNvZGVCeXRlcyh3ZWJEYXRhLT5ieXRlcygpLCB3ZWJEYXRhLT5zaXplKCkp
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KICAgICAgICAgZGVmYXVsdDoKICAgICAg
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgICAgICAgICAgYnJlYWs7CkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0FQSS9jL1dLQnVuZGxlLmNwcAkocmV2aXNpb24gODI1OTQpCisrKyBTb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNDUsNiArNDUsMTEgQEAgdm9pZCBXS0J1bmRsZVNldENsaWVudChXS0J1bmRsZVJlZiBi
dW5kbAogICAgIHRvSW1wbChidW5kbGVSZWYpLT5pbml0aWFsaXplQ2xpZW50KHdrQ2xpZW50KTsK
IH0KIAorV0tCdW5kbGVFdmVudFNlbmRlclJlZiBXS0J1bmRsZUdldEV2ZW50U2VuZGVyKFdLQnVu
ZGxlUmVmIGJ1bmRsZVJlZikKK3sKKyAgICByZXR1cm4gdG9JbXBsKGJ1bmRsZVJlZiktPmV2ZW50
U2VuZGVyKCk7Cit9CisKIHZvaWQgV0tCdW5kbGVQb3N0TWVzc2FnZShXS0J1bmRsZVJlZiBidW5k
bGVSZWYsIFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lUmVmLCBXS1R5cGVSZWYgbWVzc2FnZUJvZHlS
ZWYpCiB7CiAgICAgdG9JbXBsKGJ1bmRsZVJlZiktPnBvc3RNZXNzYWdlKHRvSW1wbChtZXNzYWdl
TmFtZVJlZiktPnN0cmluZygpLCB0b0ltcGwobWVzc2FnZUJvZHlSZWYpKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGUuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9j
L1dLQnVuZGxlLmgJKHJldmlzaW9uIDgyNTk0KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MSw2
ICs1MSw4IEBAIHR5cGVkZWYgc3RydWN0IFdLQnVuZGxlQ2xpZW50IFdLQnVuZGxlQ2wKIAogV0tf
RVhQT1JUIFdLVHlwZUlEIFdLQnVuZGxlR2V0VHlwZUlEKCk7CiAKK1dLX0VYUE9SVCBXS0J1bmRs
ZUV2ZW50U2VuZGVyUmVmIFdLQnVuZGxlR2V0RXZlbnRTZW5kZXIoV0tCdW5kbGVSZWYgYnVuZGxl
UmVmKTsKKwogV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVTZXRDbGllbnQoV0tCdW5kbGVSZWYgYnVu
ZGxlLCBXS0J1bmRsZUNsaWVudCAqIGNsaWVudCk7CiAKIFdLX0VYUE9SVCB2b2lkIFdLQnVuZGxl
UG9zdE1lc3NhZ2UoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS1N0cmluZ1JlZiBtZXNzYWdlTmFtZSwg
V0tUeXBlUmVmIG1lc3NhZ2VCb2R5KTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVBUElDYXN0LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUFQSUNh
c3QuaAkocmV2aXNpb24gODI1OTQpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlQVBJQ2FzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2
ICs0NCw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgSW5qZWN0ZWRCdW5kbGU7CiBjbGFz
cyBJbmplY3RlZEJ1bmRsZUJhY2tGb3J3YXJkTGlzdDsKIGNsYXNzIEluamVjdGVkQnVuZGxlQmFj
a0ZvcndhcmRMaXN0SXRlbTsKK2NsYXNzIEluamVjdGVkQnVuZGxlRXZlbnRTZW5kZXI7CiBjbGFz
cyBJbmplY3RlZEJ1bmRsZUhpdFRlc3RSZXN1bHQ7CiBjbGFzcyBJbmplY3RlZEJ1bmRsZU5hdmln
YXRpb25BY3Rpb247CiBjbGFzcyBJbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGU7CkBAIC01OCw2ICs1
OSw3IEBAIGNsYXNzIFdlYlBhZ2VHcm91cFByb3h5OwogV0tfQUREX0FQSV9NQVBQSU5HKFdLQnVu
ZGxlQmFja0ZvcndhcmRMaXN0SXRlbVJlZiwgSW5qZWN0ZWRCdW5kbGVCYWNrRm9yd2FyZExpc3RJ
dGVtKQogV0tfQUREX0FQSV9NQVBQSU5HKFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0UmVmLCBJbmpl
Y3RlZEJ1bmRsZUJhY2tGb3J3YXJkTGlzdCkKIFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUNT
U1N0eWxlRGVjbGFyYXRpb25SZWYsIFdlYkNvcmU6OkNTU1N0eWxlRGVjbGFyYXRpb24pCitXS19B
RERfQVBJX01BUFBJTkcoV0tCdW5kbGVFdmVudFNlbmRlclJlZiwgSW5qZWN0ZWRCdW5kbGVFdmVu
dFNlbmRlcikKIFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUZyYW1lUmVmLCBXZWJGcmFtZSkK
IFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUhpdFRlc3RSZXN1bHRSZWYsIEluamVjdGVkQnVu
ZGxlSGl0VGVzdFJlc3VsdCkKIFdLX0FERF9BUElfTUFQUElORyhXS0J1bmRsZUluc3BlY3RvclJl
ZiwgV2ViSW5zcGVjdG9yKQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUV2ZW50U2VuZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRT
ZW5kZXIuY3BwCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUV2ZW50U2VuZGVyLmNwcAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpbmNsdWRlICJXS0J1bmRsZUV2ZW50U2VuZGVyLmgiCisKKyNpbmNsdWRlICJJbmplY3Rl
ZEJ1bmRsZUV2ZW50U2VuZGVyLmgiCisjaW5jbHVkZSAiV0tCdW5kbGVBUElDYXN0LmgiCisKK3Vz
aW5nIG5hbWVzcGFjZSBXZWJLaXQ7CisKK3ZvaWQgV0tCdW5kbGVFdmVudFNlbmRlcktleURvd24o
V0tCdW5kbGVFdmVudFNlbmRlclJlZiBldmVudFNlbmRlclJlZiwgV0tTdHJpbmdSZWYga2V5UmVm
LCB1aW50MzJfdCBtb2RpZiwgdWludDMyX3QgbG9jYXRpb24pCit7CisgICAgdG9JbXBsKGV2ZW50
U2VuZGVyUmVmKS0+a2V5RG93bih0b0ltcGwoa2V5UmVmKS0+c3RyaW5nKCksIHN0YXRpY19jYXN0
PHVuc2lnbmVkIGludD4odG9JbXBsKG1vZGlmKSksIHRvSW1wbChsb2NhdGlvbikpOworfQorCklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVu
ZGxlRXZlbnRTZW5kZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlRXZlbnRTZW5kZXIuaAkocmV2aXNpb24gMCkK
KysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5k
bGVFdmVudFNlbmRlci5oCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ0IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWll
cykKKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2lmbmRlZiBXS0J1bmRsZUV2ZW50U2VuZGVyX2gKKyNkZWZpbmUgV0tC
dW5kbGVFdmVudFNlbmRlcl9oCisKKyNpbmNsdWRlIDxXZWJLaXQyL1dLQmFzZS5oPgorCisjaWZk
ZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2VuZGlmCisKK1dLX0VYUE9SVCBXS1R5cGVJ
RCBXS0J1bmRsZUV2ZW50U2VuZGVyR2V0VHlwZUlEKCk7CisKK1dLX0VYUE9SVCB2b2lkIFdLQnVu
ZGxlRXZlbnRTZW5kZXJLZXlEb3duKFdLQnVuZGxlRXZlbnRTZW5kZXJSZWYgZXZlbnRTZW5kZXJS
ZWYsIFdLU3RyaW5nUmVmIGtleVJlZiwgdWludDMyX3QgbW9kaWYsIHVpbnQzMl90IGxvY2F0aW9u
KTsKKworI2lmZGVmIF9fY3BsdXNwbHVzCit9CisjZW5kaWYKKworI2VuZGlmIC8vIFdLQnVuZGxl
RXZlbnRTZW5kZXJfaApJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L0NoYW5nZUxvZwkocmV2aXNpb24gODI1OTQpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwzMyBAQAorMjAxMS0wMy0zMSAgQ2hhbmcgU2h1ICA8Y3NodUB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFtNYWNdIFtXSzJdIEltcGxlbWVudCBLZXlEb3duIGZ1bmN0aW9uIGZvciBXZWJLaXQyIEV2ZW50
U2VuZGVyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTc1MTUKKworICAgICAgICBUaGUgZm9sbG93aW5nIGNvZGUgY2hhbmdlIGJ1aWxkcyB1cCB0aGUg
aW5mcmFzdHJ1Y3R1cmUgZm9yCisgICAgICAgIFdlYktpdFRlc3RSdW5uZXIgRXZlbnRTZW5kZXIg
dG8gc2VuZCBtZXNzYWdlcyBmcm9tIHRoZSBJbmplY3RlZEJ1bmRsZQorICAgICAgICBpbiBXZWJQ
cm9jZXNzIHRvIFVJUHJvY2VzcyBvZiBXZWJLaXRUZXN0UnVubmVyLgorCisgICAgICAgIFRoZSBi
YXNpYyBLZXlEb3duIGZ1bmN0aW9uYWxpdHkgaXMgaW1wbGVtZW50ZWQgZXhjZXB0IHRoZSBsb2Nh
bCBpbXBsZW1lbnRhdGlvbi4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvRXZlbnRTZW5k
ZXJQcm94eS5jcHA6IEFkZGVkLgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5OjpjcmVh
dGUpOgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5OjpFdmVudFNlbmRlclByb3h5KToK
KyAgICAgICAgKFdUUjo6RXZlbnRTZW5kZXJQcm94eTo6ZGlkUmVjZWl2ZUV2ZW50U2VuZGVyUHJv
eHlNZXNzYWdlKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJveHku
aDogQWRkZWQuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVu
dFNlbmRpbmdDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6RXZlbnRTZW5kaW5nQ29udHJv
bGxlcjo6a2V5RG93bik6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9JbmplY3RlZEJ1bmRsZS5oOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZTo6ZXZlbnRT
ZW5kZXIpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6VGVzdENvbnRyb2xsZXIpOgorICAgICAgICAo
V1RSOjpUZXN0Q29udHJvbGxlcjo6ZGlkUmVjZWl2ZU1lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5kbGUp
OgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaDoKKyAgICAgICAg
KiBXZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlci5oOiBBZGRl
ZC4KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlck1hYy5tbTogQWRk
ZWQuCisKIDIwMTEtMDMtMzEgIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFydGluIFJvYmluc29uLgpJbmRleDogVG9vbHMv
U2NyaXB0cy9idWlsZC13ZWJraXQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9idWlsZC13
ZWJraXQJKHJldmlzaW9uIDgyNTk0KQorKysgVG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQJKHdv
cmtpbmcgY29weSkKQEAgLTUwNSw2ICs1MDUsNyBAQCBpZiAoaXNHdGsoKSkgewogICAgIHB1c2gg
QG9wdGlvbnMsICItLWluc3RhbGwtaGVhZGVycz0iIC4gJGluc3RhbGxIZWFkZXJzIGlmIGRlZmlu
ZWQoJGluc3RhbGxIZWFkZXJzKTsKICAgICBwdXNoIEBvcHRpb25zLCAiLS1pbnN0YWxsLWxpYnM9
IiAuICRpbnN0YWxsTGlicyBpZiBkZWZpbmVkKCRpbnN0YWxsTGlicyk7CiAgICAgcHVzaCBAb3B0
aW9ucywgIi0tbWFrZWFyZ3M9IiAuICRtYWtlQXJncyBpZiAkbWFrZUFyZ3M7CisgICAgcHVzaCBA
b3B0aW9ucywgIi0tcW1ha2Vhcmc9Q09ORklHKz13ZWJraXQyIiBpZiAhJG5vV2ViS2l0MjsKIAog
ICAgIGZvcmVhY2ggKEBmZWF0dXJlcykgewogICAgICAgICBwdXNoIEBvcHRpb25zLCAiREVGSU5F
Uys9JF8tPntkZWZpbmV9PSR7JF8tPnt2YWx1ZX19IiBpZiAkeyRfLT57dmFsdWV9fSAhPSAkXy0+
e2RlZmF1bHR9OwpJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJv
eHkuY3BwCShyZXZpc2lvbiAwKQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRl
clByb3h5LmNwcAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2NiBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJFdmVudFNlbmRlclByb3h5
LmgiCisKKyNpbmNsdWRlIDxXZWJLaXQyL1dLQXJndW1lbnREZWNvZGVyLmg+CisjaW5jbHVkZSA8
V2ViS2l0Mi9XS0FycmF5Lmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XS01lc3NhZ2VJRC5oPgorCitu
YW1lc3BhY2UgV1RSIHsKKworRXZlbnRTZW5kZXJQcm94eSogRXZlbnRTZW5kZXJQcm94eTo6Y3Jl
YXRlKFRlc3RDb250cm9sbGVyKiB0ZXN0Q29udHJvbGxlcikKK3sKKyAgICByZXR1cm4gbmV3IEV2
ZW50U2VuZGVyUHJveHkodGVzdENvbnRyb2xsZXIpOworfQorCitFdmVudFNlbmRlclByb3h5OjpF
dmVudFNlbmRlclByb3h5KFRlc3RDb250cm9sbGVyKiB0ZXN0Q29udHJvbGxlcikKKyAgICA6IG1f
dGVzdENvbnRyb2xsZXIodGVzdENvbnRyb2xsZXIpCit7CisvLyBUT0RPICAgIG1fZXZlbnRTZW5k
ZXIgPSBuZXcgRXZlbnRTZW5kZXIoKTsKK307CisKK3ZvaWQgRXZlbnRTZW5kZXJQcm94eTo6ZGlk
UmVjZWl2ZUV2ZW50U2VuZGVyUHJveHlNZXNzYWdlKFdLRGF0YVJlZiB3ZWJEYXRhKQoreworICAg
IFdLQXJndW1lbnREZWNvZGVyUmVmIGFyZ3VtZW50RGVjb2RlclJlZiA9IFdLQ3JlYXRlQXJndW1l
bnREZWNvZGVyKFdLRGF0YUdldEJ5dGVzKHdlYkRhdGEpLCBXS0RhdGFHZXRTaXplKHdlYkRhdGEp
KTsKKyAgICB1aW50MzJfdCBtZXNzYWdlSURVaW50MzI7CisgICAgaWYgKCFXS0RlY29kZVVJbnQz
Mihhcmd1bWVudERlY29kZXJSZWYsIG1lc3NhZ2VJRFVpbnQzMikpCisgICAgICAgIHJldHVybjsK
KyAgICBzd2l0Y2ggKHN0YXRpY19jYXN0PE1lc3NhZ2VzOjpFdmVudFNlbmRlclByb3h5OjpLaW5k
PihtZXNzYWdlSURVaW50MzIpKSB7CisgICAgY2FzZSBNZXNzYWdlczo6RXZlbnRTZW5kZXJQcm94
eTo6S2V5RG93bklEOgorICAgICAgICBXS1N0cmluZ1JlZiBrZXk7CisgICAgICAgIHVpbnQzMl90
IG1vZGlmaWVyczsKKyAgICAgICAgdWludDMyX3QgbG9jYXRpb247CisgICAgICAgIGlmIChXS0Rl
Y29kZVN0cmluZyhhcmd1bWVudERlY29kZXJSZWYsIGtleSkgJiYgV0tEZWNvZGVVSW50MzIoYXJn
dW1lbnREZWNvZGVyUmVmLCBtb2RpZmllcnMpICYmIFdLRGVjb2RlVUludDMyKGFyZ3VtZW50RGVj
b2RlclJlZiwgbG9jYXRpb24pKQorICAgICAgICAgICAgZnB1dHMoIkltcGxlbWVudCBrZXlEb3du
IGluIFdUUi5cbiIsIHN0ZGVycik7IC8vIFRPRE8gbV9ldmVudFNlbmRlci0+a2V5RG93bihrZXks
IG1vZGlmaWVycywgbG9jYXRpb24pOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICB9Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YktpdApJbmRleDogVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5LmgJKHJl
dmlzaW9uIDApCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJveHkuaAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgTm9r
aWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
Zm5kZWYgRXZlbnRTZW5kZXJQcm94eV9oCisjZGVmaW5lIEV2ZW50U2VuZGVyUHJveHlfaAorCisv
LyBUT0RPICNpbmNsdWRlICJFdmVudFNlbmRlci5oIgorI2luY2x1ZGUgIlRlc3RDb250cm9sbGVy
LmgiCisjaW5jbHVkZSAiV2ViS2l0Mi9XS1N0cmluZy5oIgorCit1c2luZyBuYW1lc3BhY2UgV2Vi
S2l0OworCituYW1lc3BhY2UgV1RSIHsKKworY2xhc3MgRXZlbnRTZW5kZXJQcm94eSB7CitwdWJs
aWM6CisKKyAgICBzdGF0aWMgRXZlbnRTZW5kZXJQcm94eSogY3JlYXRlKFRlc3RDb250cm9sbGVy
Kik7CisKKyAgICB2b2lkIGRpZFJlY2VpdmVFdmVudFNlbmRlclByb3h5TWVzc2FnZShXS0RhdGFS
ZWYpOworCitwcml2YXRlOgorICAgIEV2ZW50U2VuZGVyUHJveHkoVGVzdENvbnRyb2xsZXIqKTsK
KworICAgIFRlc3RDb250cm9sbGVyKiBtX3Rlc3RDb250cm9sbGVyOworLy8gVE9ETyAgICBFdmVu
dFNlbmRlciogbV9ldmVudFNlbmRlcjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisj
ZW5kaWYgLy8gV2ViUGFnZVByb3h5X2gKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVz
dENvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVz
dENvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiA4MjU5NCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvVGVzdENvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw2ICsyNiw5IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVGVzdENvbnRyb2xsZXIuaCIKIAorI2lmIFBM
QVRGT1JNKE1BQykKKyNpbmNsdWRlIDxFdmVudFNlbmRlclByb3h5Lmg+CisjZW5kaWYKICNpbmNs
dWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlICJTdHJpbmdGdW5jdGlvbnMuaCIKICNp
bmNsdWRlICJUZXN0SW52b2NhdGlvbi5oIgpAQCAtNjYsNiArNjksOSBAQCBUZXN0Q29udHJvbGxl
cjo6VGVzdENvbnRyb2xsZXIoaW50IGFyZ2MsCiAgICAgLCBtX3Nob3J0VGltZW91dChkZWZhdWx0
U2hvcnRUaW1lb3V0KQogICAgICwgbV9kaWRQcmludFdlYlByb2Nlc3NDcmFzaGVkTWVzc2FnZShm
YWxzZSkKICAgICAsIG1fc2hvdWxkRXhpdFdoZW5XZWJQcm9jZXNzQ3Jhc2hlcyh0cnVlKQorI2lm
IFBMQVRGT1JNKE1BQykKKyAgICAsIG1fZXZlbnRTZW5kZXJQcm94eShFdmVudFNlbmRlclByb3h5
OjpjcmVhdGUodGhpcykpCisjZW5kaWYKIHsKICAgICBpbml0aWFsaXplKGFyZ2MsIGFyZ3YpOwog
ICAgIGNvbnRyb2xsZXIgPSB0aGlzOwpAQCAtNDU4LDYgKzQ2NCwxMyBAQCB2b2lkIFRlc3RDb250
cm9sbGVyOjpkaWRSZWNlaXZlU3luY2hyb25vCiAKIHZvaWQgVGVzdENvbnRyb2xsZXI6OmRpZFJl
Y2VpdmVNZXNzYWdlRnJvbUluamVjdGVkQnVuZGxlKFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lLCBX
S1R5cGVSZWYgbWVzc2FnZUJvZHkpCiB7CisjaWYgUExBVEZPUk0oTUFDKQorICAgIGlmIChXS1N0
cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1lc3NhZ2VOYW1lLCAiRXZlbnRTZW5kZXIiKSkgewor
ICAgICAgICBBU1NFUlQoV0tHZXRUeXBlSUQobWVzc2FnZUJvZHkpID09IFdLRGF0YUdldFR5cGVJ
RCgpKTsKKyAgICAgICAgbV9ldmVudFNlbmRlclByb3h5LT5kaWRSZWNlaXZlRXZlbnRTZW5kZXJQ
cm94eU1lc3NhZ2Uoc3RhdGljX2Nhc3Q8V0tEYXRhUmVmPihtZXNzYWdlQm9keSkpOworICAgICAg
ICByZXR1cm47CisgICAgfQorI2VuZGlmCiAgICAgaWYgKCFtX2N1cnJlbnRJbnZvY2F0aW9uKQog
ICAgICAgICByZXR1cm47CiAgICAgbV9jdXJyZW50SW52b2NhdGlvbi0+ZGlkUmVjZWl2ZU1lc3Nh
Z2VGcm9tSW5qZWN0ZWRCdW5kbGUobWVzc2FnZU5hbWUsIG1lc3NhZ2VCb2R5KTsKSW5kZXg6IFRv
b2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgJKHJldmlzaW9uIDgyNTk0KQorKysg
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0zNSw2ICszNSw3IEBAIG5hbWVzcGFjZSBXVFIgewogCiBjbGFzcyBUZXN0SW52b2NhdGlvbjsK
IGNsYXNzIFBsYXRmb3JtV2ViVmlldzsKK2NsYXNzIEV2ZW50U2VuZGVyUHJveHk7CiAKIC8vIEZJ
WE1FOiBSZW5hbWUgdGhpcyBUZXN0UnVubmVyPwogY2xhc3MgVGVzdENvbnRyb2xsZXIgewpAQCAt
MTIwLDYgKzEyMSw4IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1fZGlkUHJpbnRXZWJQcm9jZXNz
Q3Jhc2hlZE1lc3NhZ2U7CiAgICAgYm9vbCBtX3Nob3VsZEV4aXRXaGVuV2ViUHJvY2Vzc0NyYXNo
ZXM7CisKKyAgICBFdmVudFNlbmRlclByb3h5KiBtX2V2ZW50U2VuZGVyUHJveHk7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXVFIKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250cm9sbGVyLmNwcAko
cmV2aXNpb24gODI1OTQpCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw2ICsyOSwx
MCBAQAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5k
bGVQYWdlLmgiCiAjaW5jbHVkZSAiSlNFdmVudFNlbmRpbmdDb250cm9sbGVyLmgiCisjaW5jbHVk
ZSAiU3RyaW5nRnVuY3Rpb25zLmgiCisjaWYgUExBVEZPUk0oTUFDKQorI2luY2x1ZGUgPFdlYktp
dDIvV0tCdW5kbGVFdmVudFNlbmRlci5oPgorI2VuZGlmCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS0J1
bmRsZVBhZ2UuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlUGFnZVByaXZhdGUuaD4KICNp
bmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlUHJpdmF0ZS5oPgpAQCAtNzgsNyArODIsMzcgQEAgdm9p
ZCBFdmVudFNlbmRpbmdDb250cm9sbGVyOjptb3VzZU1vdmVUbwogCiB2b2lkIEV2ZW50U2VuZGlu
Z0NvbnRyb2xsZXI6OmtleURvd24oSlNDb250ZXh0UmVmIGNvbnRleHQsIHNpemVfdCBhcmd1bWVu
dENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRp
b24pCiB7CisjaWYgUExBVEZPUk0oTUFDKQorICAgIGlmICghSlNWYWx1ZUlzU3RyaW5nKGNvbnRl
eHQsIGFyZ3VtZW50c1swXSkpCisgICAgICAgIHJldHVybjsKKyAgICBKU1JldGFpblB0cjxKU1N0
cmluZ1JlZj4ganNLZXlTdHJSZWYgPSBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4oQWRvcHQsIEpT
VmFsdWVUb1N0cmluZ0NvcHkoY29udGV4dCwgYXJndW1lbnRzWzBdLCAwKSk7CisgICAgCisgICAg
dW5zaWduZWQgaW50IG1vZGlmID0gMDsKKyAgICBpZiAoSlNWYWx1ZUlzT2JqZWN0KGNvbnRleHQs
IGFyZ3VtZW50c1sxXSkpIHsKKyAgICAgICAgSlNPYmplY3RSZWYgbW9kaWZPYmpSZWYgPSBKU1Zh
bHVlVG9PYmplY3QoY29udGV4dCwgYXJndW1lbnRzWzFdLCBleGNlcHRpb24pOworICAgICAgICBm
b3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICAgICAgSlNWYWx1ZVJlZiBtb2Rp
ZlZhbHVlUmVmID0gSlNPYmplY3RHZXRQcm9wZXJ0eUF0SW5kZXgoY29udGV4dCwgbW9kaWZPYmpS
ZWYsIGksIGV4Y2VwdGlvbik7CisgICAgICAgICAgICBpZiAoSlNWYWx1ZUlzU3RyaW5nKGNvbnRl
eHQsIG1vZGlmVmFsdWVSZWYpKSB7CisgICAgICAgICAgICAgICAgSlNSZXRhaW5QdHI8SlNTdHJp
bmdSZWY+IGpzTW9kaWZTdHJSZWYgPSBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4oQWRvcHQsIEpT
VmFsdWVUb1N0cmluZ0NvcHkoY29udGV4dCwgbW9kaWZWYWx1ZVJlZiwgMCkpOworICAgICAgICAg
ICAgICAgIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGpzTW9kaWZTdHJSZWYuZ2V0
KCksICJjdHJsS2V5IikpCisgICAgICAgICAgICAgICAgICAgIG1vZGlmIHw9IGtXS0V2ZW50TW9k
aWZpZXJzQ29udHJvbEtleTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lzRXF1
YWxUb1VURjhDU3RyaW5nKGpzTW9kaWZTdHJSZWYuZ2V0KCksICJzaGlmdEtleSIpKQorICAgICAg
ICAgICAgICAgICAgICBtb2RpZiB8PSBrV0tFdmVudE1vZGlmaWVyc1NoaWZ0S2V5OworICAgICAg
ICAgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoanNNb2RpZlN0
clJlZi5nZXQoKSwgImFsdEtleSIpKQorICAgICAgICAgICAgICAgICAgICBtb2RpZiB8PSBrV0tF
dmVudE1vZGlmaWVyc0FsdEtleTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChKU1N0cmluZ0lz
RXF1YWxUb1VURjhDU3RyaW5nKGpzTW9kaWZTdHJSZWYuZ2V0KCksICJtZXRhS2V5IikpCisgICAg
ICAgICAgICAgICAgICAgIG1vZGlmIHw9IGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtleTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICB1bnNpZ25lZCBpbnQgbG9jYXRpb24gPSAw
OworICAgIGlmIChKU1ZhbHVlSXNOdW1iZXIoY29udGV4dCwgYXJndW1lbnRzWzJdKSkKKyAgICAg
ICAgbG9jYXRpb24gPSBzdGF0aWNfY2FzdDx1bnNpZ25lZCBpbnQ+KEpTVmFsdWVUb051bWJlcihj
b250ZXh0LCBhcmd1bWVudHNbMl0sIGV4Y2VwdGlvbikpOworCisgICAgV0tCdW5kbGVFdmVudFNl
bmRlcktleURvd24oSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLmV2ZW50U2VuZGVyKCksIHRvV0so
anNLZXlTdHJSZWYpLmdldCgpLCBtb2RpZiwgbG9jYXRpb24pOworI2Vsc2UKICAgICBzZXRFeGNl
cHRpb25Gb3JTdHJpbmcoY29udGV4dCwgZXhjZXB0aW9uLCAiRXZlbnRTZW5kZXIua2V5RG93biBp
cyBub3QgeWV0IHN1cHBvcnRlZC4iKTsKKyNlbmRpZgogfQogCiB2b2lkIEV2ZW50U2VuZGluZ0Nv
bnRyb2xsZXI6OmNvbnRleHRDbGljayhKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6ZV90IGFyZ3Vt
ZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2Vw
dGlvbikKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlLmgJKHJldmlzaW9uIDgyNTk0KQorKysgVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiR0NDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAi
TGF5b3V0VGVzdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLQmFzZS5oPgorI2lu
Y2x1ZGUgPFdlYktpdDIvV0tCdW5kbGUuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWluUHRy
Lmg+CiAjaW5jbHVkZSA8d3RmL093blB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KQEAg
LTUxLDYgKzUyLDggQEAgcHVibGljOgogICAgIFdLQnVuZGxlUmVmIGJ1bmRsZSgpIGNvbnN0IHsg
cmV0dXJuIG1fYnVuZGxlOyB9CiAgICAgV0tCdW5kbGVQYWdlR3JvdXBSZWYgcGFnZUdyb3VwKCkg
Y29uc3QgeyByZXR1cm4gbV9wYWdlR3JvdXA7IH0KIAorICAgIFdLQnVuZGxlRXZlbnRTZW5kZXJS
ZWYgZXZlbnRTZW5kZXIoKSBjb25zdCB7IHJldHVybiBXS0J1bmRsZUdldEV2ZW50U2VuZGVyKG1f
YnVuZGxlKTsgfQorCiAgICAgTGF5b3V0VGVzdENvbnRyb2xsZXIqIGxheW91dFRlc3RDb250cm9s
bGVyKCkgeyByZXR1cm4gbV9sYXlvdXRUZXN0Q29udHJvbGxlci5nZXQoKTsgfQogICAgIEdDQ29u
dHJvbGxlciogZ2NDb250cm9sbGVyKCkgeyByZXR1cm4gbV9nY0NvbnRyb2xsZXIuZ2V0KCk7IH0K
ICAgICBFdmVudFNlbmRpbmdDb250cm9sbGVyKiBldmVudFNlbmRpbmdDb250cm9sbGVyKCkgeyBy
ZXR1cm4gbV9ldmVudFNlbmRpbmdDb250cm9sbGVyLmdldCgpOyB9CkluZGV4OiBUb29scy9XZWJL
aXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gODI1OTQpCisrKyBUb29scy9XZWJLaXRU
ZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29y
a2luZyBjb3B5KQpAQCAtMjEsNiArMjEsOCBAQAogLyogRW5kIFBCWEFnZ3JlZ2F0ZVRhcmdldCBz
ZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWEJ1aWxkRmlsZSBzZWN0aW9uICovCisJCTU2MTc4MTc2
MTM0NENDM0IwMDdBOTBBOCAvKiBFdmVudFNlbmRlck1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU2MTc4MTc1MTM0NENDM0IwMDdBOTBBOCAvKiBF
dmVudFNlbmRlck1hYy5tbSAqLzsgfTsKKwkJNTZDRTcxODAxMzMzQzcxNDAwNDlEODlFIC8qIEV2
ZW50U2VuZGVyUHJveHkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTZDRTcxN0UxMzMzQzcxNDAwNDlEODlFIC8qIEV2ZW50U2VuZGVyUHJveHkuY3Bw
ICovOyB9OwogCQk2NTEwQTc4MjExRUM2NDM4MDA0MTA4NjcgLyogQUhFTV9fX18uVFRGIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTEwQTc3NzExRUM2
NDM4MDA0MTA4NjcgLyogQUhFTV9fX18uVFRGICovOyB9OwogCQk2NTEwQTc4MzExRUM2NDM4MDA0
MTA4NjcgLyogQ29sb3JCaXRzLnR0ZiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNjUxMEE3NzgxMUVDNjQzODAwNDEwODY3IC8qIENvbG9yQml0cy50dGYg
Ki87IH07CiAJCTY1MTBBNzg0MTFFQzY0MzgwMDQxMDg2NyAvKiBXZWJLaXRXZWlnaHRXYXRjaGVy
MTAwLnR0ZiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NjUxMEE3NzkxMUVDNjQzODAwNDEwODY3IC8qIFdlYktpdFdlaWdodFdhdGNoZXIxMDAudHRmICov
OyB9OwpAQCAtNzgsNiArODAsMTAgQEAKIAogLyogQmVnaW4gUEJYRmlsZVJlZmVyZW5jZSBzZWN0
aW9uICovCiAJCTM3OEQ0NDIyMTMzNDZEMDAwMDZBNzc3QiAvKiBjb25maWcuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gY29uZmlnLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2MTc4MTc0MTM0
NENDMjgwMDdBOTBBOCAvKiBFdmVudFNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBFdmVudFNlbmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NjE3
ODE3NTEzNDRDQzNCMDA3QTkwQTggLyogRXZlbnRTZW5kZXJNYWMubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBFdmVudFNlbmRlck1hYy5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTZDRTcxN0UxMzMzQzcxNDAwNDlEODlFIC8qIEV2ZW50U2VuZGVy
UHJveHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXZlbnRTZW5k
ZXJQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU2Q0U3MTdGMTMzM0M3
MTQwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEV2ZW50U2VuZGVyUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNjUxMEE3NzcxMUVDNjQzODAwNDEwODY3IC8qIEFIRU1fX19fLlRURiAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7IG5hbWUgPSAiQUhFTV9f
X18uVFRGIjsgcGF0aCA9ICJmb250cy9BSEVNX19fXy5UVEYiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk2NTEwQTc3ODExRUM2NDM4MDA0MTA4NjcgLyogQ29sb3JCaXRzLnR0ZiAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7IG5hbWUg
PSBDb2xvckJpdHMudHRmOyBwYXRoID0gZm9udHMvQ29sb3JCaXRzLnR0Zjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNjUxMEE3NzkxMUVDNjQzODAwNDEwODY3IC8qIFdlYktpdFdlaWdo
dFdhdGNoZXIxMDAudHRmICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gZmlsZTsgbmFtZSA9IFdlYktpdFdlaWdodFdhdGNoZXIxMDAudHRmOyBwYXRoID0g
Zm9udHMvV2ViS2l0V2VpZ2h0V2F0Y2hlcjEwMC50dGY7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xODUsNiArMTkxLDggQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJCUJDOTE5MjAyMTMz
M0U0Q0QwMDMwMTFEQyAvKiBjZyAqLywKIAkJCQlCQzc5MzNGRTExOEY3Qzc0MDA1RUE4RTIgLyog
bWFjICovLAorCQkJCTU2Q0U3MTdFMTMzM0M3MTQwMDQ5RDg5RSAvKiBFdmVudFNlbmRlclByb3h5
LmNwcCAqLywKKwkJCQk1NkNFNzE3RjEzMzNDNzE0MDA0OUQ4OUUgLyogRXZlbnRTZW5kZXJQcm94
eS5oICovLAogCQkJCUJDMjUxQTE3MTFEMTY3NzQwMDJFQkMwMSAvKiBXZWJLaXRUZXN0UnVubmVy
UHJlZml4LmggKi8sCiAJCQkJQkM3OTM0REQxMTkwNjZFQzAwNUVBOEUyIC8qIFBsYXRmb3JtV2Vi
Vmlldy5oICovLAogCQkJCUJDNzkzNDJGMTE4RjdGMTkwMDVFQThFMiAvKiBUZXN0Q29udHJvbGxl
ci5oICovLApAQCAtMjc2LDYgKzI4NCw4IEBACiAJCUJDNzkzM0ZFMTE4RjdDNzQwMDVFQThFMiAv
KiBtYWMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTU2
MTc4MTc1MTM0NENDM0IwMDdBOTBBOCAvKiBFdmVudFNlbmRlck1hYy5tbSAqLywKKwkJCQk1NjE3
ODE3NDEzNDRDQzI4MDA3QTkwQTggLyogRXZlbnRTZW5kZXIuaCAqLywKIAkJCQlCQzc5MzNGRjEx
OEY3Qzg0MDA1RUE4RTIgLyogbWFpbi5tbSAqLywKIAkJCQlCQzc5MzRFNzExOTA2ODQ2MDA1RUE4
RTIgLyogUGxhdGZvcm1XZWJWaWV3TWFjLm1tICovLAogCQkJCUJDOEM3OTVCMTFEMjc4NUQwMDQ1
MzVBMSAvKiBUZXN0Q29udHJvbGxlck1hYy5tbSAqLywKQEAgLTQ1Miw2ICs0NjIsOCBAQAogCQkJ
CUJDRDdEMkY4MTE5MjEyNzgwMDZEQjdFRSAvKiBUZXN0SW52b2NhdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlCQzhDNzk1QzExRDI3ODVEMDA0NTM1QTEgLyogVGVzdENvbnRyb2xsZXJNYWMu
bW0gaW4gU291cmNlcyAqLywKIAkJCQlCQzkxOTIwNTEzMzNFNEY4MDAzMDExREMgLyogVGVzdElu
dm9jYXRpb25DRy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1NkNFNzE4MDEzMzNDNzE0MDA0OUQ4
OUUgLyogRXZlbnRTZW5kZXJQcm94eS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1NjE3ODE3NjEz
NDRDQzNCMDA3QTkwQTggLyogRXZlbnRTZW5kZXJNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCSk7
CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5kZXg6
IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXIuaAkocmV2aXNpb24gMCkKKysr
IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyLmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCisgKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4gCisgKiAzLiAgTmVpdGhlciB0aGUg
bmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgor
ICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIAorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5ECisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisg
KiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpZiAwIC8vIFRPRE8KKyNpbXBvcnQgPENvY29hL0NvY29hLmg+
CisjaW1wb3J0IDxXZWJLaXQvV2ViS2l0Lmg+CisKK0BpbnRlcmZhY2UgRXZlbnRTZW5kZXIgOiBO
U09iamVjdCA8RE9NRXZlbnRMaXN0ZW5lcj4geworICAgIEJPT0wgbGVmdE1vdXNlQnV0dG9uRG93
bjsKKyAgICBCT09MIGRyYWdNb2RlOworICAgIGludCBjbGlja0NvdW50OworICAgIE5TVGltZUlu
dGVydmFsIGxhc3RDbGljazsKKyAgICBpbnQgZXZlbnROdW1iZXI7CisgICAgZG91YmxlIHRpbWVP
ZmZzZXQ7Cit9CisKKysgKHZvaWQpc2F2ZUV2ZW50OihOU0ludm9jYXRpb24gKilldmVudDsKKysg
KHZvaWQpcmVwbGF5U2F2ZWRFdmVudHM7CisrICh2b2lkKWNsZWFyU2F2ZWRFdmVudHM7CisKKy0g
KHZvaWQpc2NoZWR1bGVBc3luY2hyb25vdXNDbGljazsKKworLSAodm9pZCllbmFibGVET01VSUV2
ZW50TG9nZ2luZzooV2ViU2NyaXB0T2JqZWN0ICopbm9kZTsKKworLSAodm9pZCloYW5kbGVFdmVu
dDooRE9NRXZlbnQgKilldmVudDsKKworQGVuZAorCitleHRlcm4gTlNQb2ludCBsYXN0TW91c2VQ
b3NpdGlvbjsKK2V4dGVybiBOU1BvaW50IGxhc3RDbGlja1Bvc2l0aW9uOworI2VuZGlmCkluZGV4
OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlck1hYy5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlck1hYy5tbQkocmV2aXNp
b24gMCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyTWFjLm1tCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDg2NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKKyAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKKyAqIDMu
ICBOZWl0aGVyIHRoZSBuYW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3Ig
dGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAgIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMg
SVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmIDAKKyNpbXBvcnQgImNvbmZpZy5o
IgorI2ltcG9ydCAiRXZlbnRTZW5kZXIuaCIKKworI2ltcG9ydCAiRHVtcFJlbmRlclRyZWUuaCIK
KyNpbXBvcnQgIkR1bXBSZW5kZXJUcmVlRHJhZ2dpbmdJbmZvLmgiCisjaW1wb3J0ICJEdW1wUmVu
ZGVyVHJlZUZpbGVEcmFnZ2luZ1NvdXJjZS5oIgorCisjaW1wb3J0IDxDYXJib24vQ2FyYm9uLmg+
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZm9yIEdldEN1cnJlbnRFdmVudFRpbWUoKQor
I2ltcG9ydCA8V2ViS2l0L0RPTVByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4K
KyNpbXBvcnQgPFdlYktpdC9XZWJWaWV3UHJpdmF0ZS5oPgorCitleHRlcm4gIkMiIHZvaWQgX05T
TmV3S2lsbFJpbmdTZXF1ZW5jZSgpOworCitlbnVtIE1vdXNlQWN0aW9uIHsKKyAgICBNb3VzZURv
d24sCisgICAgTW91c2VVcCwKKyAgICBNb3VzZURyYWdnZWQKK307CisKKy8vIE1hdGNoIHRoZSBE
T00gc3BlYyAoc2FkbHkgdGhlIERPTSBzcGVjIGRvZXMgbm90IHByb3ZpZGUgYW4gZW51bSkKK2Vu
dW0gTW91c2VCdXR0b24geworICAgIExlZnRNb3VzZUJ1dHRvbiA9IDAsCisgICAgTWlkZGxlTW91
c2VCdXR0b24gPSAxLAorICAgIFJpZ2h0TW91c2VCdXR0b24gPSAyLAorICAgIE5vTW91c2VCdXR0
b24gPSAtMQorfTsKKworTlNQb2ludCBsYXN0TW91c2VQb3NpdGlvbjsKK05TUG9pbnQgbGFzdENs
aWNrUG9zaXRpb247CitpbnQgbGFzdENsaWNrQnV0dG9uID0gTm9Nb3VzZUJ1dHRvbjsKK05TQXJy
YXkgKndlYmtpdERvbUV2ZW50TmFtZXM7CitOU011dGFibGVBcnJheSAqc2F2ZWRNb3VzZUV2ZW50
czsgLy8gbW91c2UgZXZlbnRzIHNlbnQgYmV0d2VlbiBtb3VzZURvd24gYW5kIG1vdXNlVXAgYXJl
IHN0b3JlZCBoZXJlLCBhbmQgdGhlbiBleGVjdXRlZCBhdCBvbmNlLgorQk9PTCByZXBsYXlpbmdT
YXZlZEV2ZW50czsKKworQGltcGxlbWVudGF0aW9uIEV2ZW50U2VuZGVyCisKKysgKHZvaWQpaW5p
dGlhbGl6ZQoreworICAgIHdlYmtpdERvbUV2ZW50TmFtZXMgPSBbW05TQXJyYXkgYWxsb2NdIGlu
aXRXaXRoT2JqZWN0czoKKyAgICAgICAgQCJhYm9ydCIsCisgICAgICAgIEAiYmVmb3JlY29weSIs
CisgICAgICAgIEAiYmVmb3JlY3V0IiwKKyAgICAgICAgQCJiZWZvcmVwYXN0ZSIsCisgICAgICAg
IEAiYmx1ciIsCisgICAgICAgIEAiY2hhbmdlIiwKKyAgICAgICAgQCJjbGljayIsCisgICAgICAg
IEAiY29udGV4dG1lbnUiLAorICAgICAgICBAImNvcHkiLAorICAgICAgICBAImN1dCIsCisgICAg
ICAgIEAiZGJsY2xpY2siLAorICAgICAgICBAImRyYWciLAorICAgICAgICBAImRyYWdlbmQiLAor
ICAgICAgICBAImRyYWdlbnRlciIsCisgICAgICAgIEAiZHJhZ2xlYXZlIiwKKyAgICAgICAgQCJk
cmFnb3ZlciIsCisgICAgICAgIEAiZHJhZ3N0YXJ0IiwKKyAgICAgICAgQCJkcm9wIiwKKyAgICAg
ICAgQCJlcnJvciIsCisgICAgICAgIEAiZm9jdXMiLAorICAgICAgICBAImlucHV0IiwKKyAgICAg
ICAgQCJrZXlkb3duIiwKKyAgICAgICAgQCJrZXlwcmVzcyIsCisgICAgICAgIEAia2V5dXAiLAor
ICAgICAgICBAImxvYWQiLAorICAgICAgICBAIm1vdXNlZG93biIsCisgICAgICAgIEAibW91c2Vt
b3ZlIiwKKyAgICAgICAgQCJtb3VzZW91dCIsCisgICAgICAgIEAibW91c2VvdmVyIiwKKyAgICAg
ICAgQCJtb3VzZXVwIiwKKyAgICAgICAgQCJtb3VzZXdoZWVsIiwKKyAgICAgICAgQCJiZWZvcmV1
bmxvYWQiLAorICAgICAgICBAInBhc3RlIiwKKyAgICAgICAgQCJyZWFkeXN0YXRlY2hhbmdlIiwK
KyAgICAgICAgQCJyZXNldCIsCisgICAgICAgIEAicmVzaXplIiwgCisgICAgICAgIEAic2Nyb2xs
IiwgCisgICAgICAgIEAic2VhcmNoIiwKKyAgICAgICAgQCJzZWxlY3QiLAorICAgICAgICBAInNl
bGVjdHN0YXJ0IiwKKyAgICAgICAgQCJzdWJtaXQiLCAKKyAgICAgICAgQCJ0ZXh0SW5wdXQiLCAK
KyAgICAgICAgQCJ0ZXh0em9vbWluIiwKKyAgICAgICAgQCJ0ZXh0em9vbW91dCIsCisgICAgICAg
IEAidW5sb2FkIiwKKyAgICAgICAgQCJ6b29tIiwKKyAgICAgICAgbmlsXTsKK30KKworKyAoQk9P
TClpc1NlbGVjdG9yRXhjbHVkZWRGcm9tV2ViU2NyaXB0OihTRUwpYVNlbGVjdG9yCit7CisgICAg
aWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoYmVnaW5EcmFnV2l0aEZpbGVzOikKKyAgICAgICAg
ICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoY2xlYXJLaWxsUmluZykKKyAgICAgICAgICAg
IHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoY29udGV4dENsaWNrKQorICAgICAgICAgICAgfHwg
YVNlbGVjdG9yID09IEBzZWxlY3RvcihlbmFibGVET01VSUV2ZW50TG9nZ2luZzopCisgICAgICAg
ICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGZpcmVLZXlib2FyZEV2ZW50c1RvRWxlbWVu
dDopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGtleURvd246d2l0aE1v
ZGlmaWVyczp3aXRoTG9jYXRpb246KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBzZWxl
Y3RvcihsZWFwRm9yd2FyZDopCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9y
KG1vdXNlRG93bjp3aXRoTW9kaWZpZXJzOikKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBA
c2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBz
ZWxlY3Rvcihtb3VzZVVwOndpdGhNb2RpZmllcnM6KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9y
ID09IEBzZWxlY3RvcihzY2hlZHVsZUFzeW5jaHJvbm91c0NsaWNrKQorICAgICAgICAgICAgfHwg
YVNlbGVjdG9yID09IEBzZWxlY3Rvcih0ZXh0Wm9vbUluKQorICAgICAgICAgICAgfHwgYVNlbGVj
dG9yID09IEBzZWxlY3Rvcih0ZXh0Wm9vbU91dCkKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9
PSBAc2VsZWN0b3Ioem9vbVBhZ2VJbikKKyAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2Vs
ZWN0b3Ioem9vbVBhZ2VPdXQpCisgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9y
KG1vdXNlU2Nyb2xsQnlYOmFuZFk6KQorICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBzZWxl
Y3Rvcihjb250aW51b3VzTW91c2VTY3JvbGxCeVg6YW5kWTopKQorICAgICAgICByZXR1cm4gTk87
CisgICAgcmV0dXJuIFlFUzsKK30KKworKyAoQk9PTClpc0tleUV4Y2x1ZGVkRnJvbVdlYlNjcmlw
dDooY29uc3QgY2hhciopbmFtZQoreworICAgIGlmIChzdHJjbXAobmFtZSwgImRyYWdNb2RlIikg
PT0gMCkKKyAgICAgICAgcmV0dXJuIE5POworICAgIHJldHVybiBZRVM7Cit9CisKKysgKE5TU3Ry
aW5nICopd2ViU2NyaXB0TmFtZUZvclNlbGVjdG9yOihTRUwpYVNlbGVjdG9yCit7CisgICAgaWYg
KGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoYmVnaW5EcmFnV2l0aEZpbGVzOikpCisgICAgICAgIHJl
dHVybiBAImJlZ2luRHJhZ1dpdGhGaWxlcyI7CisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0
b3IoY29udGV4dENsaWNrKSkKKyAgICAgICAgcmV0dXJuIEAiY29udGV4dENsaWNrIjsKKyAgICBp
ZiAoYVNlbGVjdG9yID09IEBzZWxlY3RvcihlbmFibGVET01VSUV2ZW50TG9nZ2luZzopKQorICAg
ICAgICByZXR1cm4gQCJlbmFibGVET01VSUV2ZW50TG9nZ2luZyI7CisgICAgaWYgKGFTZWxlY3Rv
ciA9PSBAc2VsZWN0b3IoZmlyZUtleWJvYXJkRXZlbnRzVG9FbGVtZW50OikpCisgICAgICAgIHJl
dHVybiBAImZpcmVLZXlib2FyZEV2ZW50c1RvRWxlbWVudCI7CisgICAgaWYgKGFTZWxlY3RvciA9
PSBAc2VsZWN0b3Ioa2V5RG93bjp3aXRoTW9kaWZpZXJzOndpdGhMb2NhdGlvbjopKQorICAgICAg
ICByZXR1cm4gQCJrZXlEb3duIjsKKyAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3RvcihsZWFw
Rm9yd2FyZDopKQorICAgICAgICByZXR1cm4gQCJsZWFwRm9yd2FyZCI7CisgICAgaWYgKGFTZWxl
Y3RvciA9PSBAc2VsZWN0b3IobW91c2VEb3duOndpdGhNb2RpZmllcnM6KSkKKyAgICAgICAgcmV0
dXJuIEAibW91c2VEb3duIjsKKyAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3Rvcihtb3VzZVVw
OndpdGhNb2RpZmllcnM6KSkKKyAgICAgICAgcmV0dXJuIEAibW91c2VVcCI7CisgICAgaWYgKGFT
ZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KSkKKyAgICAgICAgcmV0dXJuIEAi
bW91c2VNb3ZlVG8iOworICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKHNldERyYWdNb2Rl
OikpCisgICAgICAgIHJldHVybiBAInNldERyYWdNb2RlIjsKKyAgICBpZiAoYVNlbGVjdG9yID09
IEBzZWxlY3Rvcihtb3VzZVNjcm9sbEJ5WDphbmRZOikpCisgICAgICAgIHJldHVybiBAIm1vdXNl
U2Nyb2xsQnkiOworICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGNvbnRpbnVvdXNNb3Vz
ZVNjcm9sbEJ5WDphbmRZOikpCisgICAgICAgIHJldHVybiBAImNvbnRpbnVvdXNNb3VzZVNjcm9s
bEJ5IjsKKyAgICByZXR1cm4gbmlsOworfQorCistIChpZClpbml0Cit7CisgICAgc2VsZiA9IFtz
dXBlciBpbml0XTsKKyAgICBpZiAoc2VsZikKKyAgICAgICAgZHJhZ01vZGUgPSBZRVM7CisgICAg
cmV0dXJuIHNlbGY7Cit9CisKKy0gKHZvaWQpZGVhbGxvYworeworICAgIFtzdXBlciBkZWFsbG9j
XTsKK30KKworLSAoZG91YmxlKWN1cnJlbnRFdmVudFRpbWUKK3sKKyAgICByZXR1cm4gR2V0Q3Vy
cmVudEV2ZW50VGltZSgpICsgdGltZU9mZnNldDsKK30KKworLSAodm9pZClsZWFwRm9yd2FyZDoo
aW50KW1pbGxpc2Vjb25kcworeworICAgIGlmIChkcmFnTW9kZSAmJiBsZWZ0TW91c2VCdXR0b25E
b3duICYmICFyZXBsYXlpbmdTYXZlZEV2ZW50cykgeworICAgICAgICBOU0ludm9jYXRpb24gKmlu
dm9jYXRpb24gPSBbTlNJbnZvY2F0aW9uIGludm9jYXRpb25XaXRoTWV0aG9kU2lnbmF0dXJlOltF
dmVudFNlbmRlciBpbnN0YW5jZU1ldGhvZFNpZ25hdHVyZUZvclNlbGVjdG9yOkBzZWxlY3Rvcihs
ZWFwRm9yd2FyZDopXV07CisgICAgICAgIFtpbnZvY2F0aW9uIHNldFRhcmdldDpzZWxmXTsKKyAg
ICAgICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNlbGVjdG9yKGxlYXBGb3J3YXJkOildOwor
ICAgICAgICBbaW52b2NhdGlvbiBzZXRBcmd1bWVudDombWlsbGlzZWNvbmRzIGF0SW5kZXg6Ml07
CisgICAgICAgIAorICAgICAgICBbRXZlbnRTZW5kZXIgc2F2ZUV2ZW50Omludm9jYXRpb25dOwor
ICAgICAgICAKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHRpbWVPZmZzZXQgKz0gbWls
bGlzZWNvbmRzIC8gMTAwMC4wOworfQorCistICh2b2lkKWNsZWFyS2lsbFJpbmcKK3sKKyAgICBf
TlNOZXdLaWxsUmluZ1NlcXVlbmNlKCk7Cit9CisKK3N0YXRpYyBOU0V2ZW50VHlwZSBldmVudFR5
cGVGb3JNb3VzZUJ1dHRvbkFuZEFjdGlvbihpbnQgYnV0dG9uLCBNb3VzZUFjdGlvbiBhY3Rpb24p
Cit7CisgICAgc3dpdGNoIChidXR0b24pIHsKKyAgICAgICAgY2FzZSBMZWZ0TW91c2VCdXR0b246
CisgICAgICAgICAgICBzd2l0Y2ggKGFjdGlvbikgeworICAgICAgICAgICAgICAgIGNhc2UgTW91
c2VEb3duOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNMZWZ0TW91c2VEb3duOworICAg
ICAgICAgICAgICAgIGNhc2UgTW91c2VVcDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5T
TGVmdE1vdXNlVXA7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAgICAg
ICAgICAgICAgICAgIHJldHVybiBOU0xlZnRNb3VzZURyYWdnZWQ7CisgICAgICAgICAgICB9Cisg
ICAgICAgIGNhc2UgUmlnaHRNb3VzZUJ1dHRvbjoKKyAgICAgICAgICAgIHN3aXRjaCAoYWN0aW9u
KSB7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURvd246CisgICAgICAgICAgICAgICAgICAg
IHJldHVybiBOU1JpZ2h0TW91c2VEb3duOworICAgICAgICAgICAgICAgIGNhc2UgTW91c2VVcDoK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TUmlnaHRNb3VzZVVwOworICAgICAgICAgICAg
ICAgIGNhc2UgTW91c2VEcmFnZ2VkOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNSaWdo
dE1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHN3aXRjaCAoYWN0aW9uKSB7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURvd246Cisg
ICAgICAgICAgICAgICAgICAgIHJldHVybiBOU090aGVyTW91c2VEb3duOworICAgICAgICAgICAg
ICAgIGNhc2UgTW91c2VVcDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TT3RoZXJNb3Vz
ZVVwOworICAgICAgICAgICAgICAgIGNhc2UgTW91c2VEcmFnZ2VkOgorICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gTlNPdGhlck1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAgICB9Cisg
ICAgYXNzZXJ0KDApOworICAgIHJldHVybiBzdGF0aWNfY2FzdDxOU0V2ZW50VHlwZT4oMCk7Cit9
CisKKy0gKHZvaWQpYmVnaW5EcmFnV2l0aEZpbGVzOihXZWJTY3JpcHRPYmplY3QqKWpzRmlsZVBh
dGhzCit7CisgICAgYXNzZXJ0KCFkcmFnZ2luZ0luZm8pOworICAgIGFzc2VydChbanNGaWxlUGF0
aHMgaXNLaW5kT2ZDbGFzczpbV2ViU2NyaXB0T2JqZWN0IGNsYXNzXV0pOworCisgICAgTlNQYXN0
ZWJvYXJkICpwYm9hcmQgPSBbTlNQYXN0ZWJvYXJkIHBhc3RlYm9hcmRXaXRoVW5pcXVlTmFtZV07
CisgICAgW3Bib2FyZCBkZWNsYXJlVHlwZXM6W05TQXJyYXkgYXJyYXlXaXRoT2JqZWN0Ok5TRmls
ZW5hbWVzUGJvYXJkVHlwZV0gb3duZXI6bmlsXTsKKworICAgIE5TVVJMICpjdXJyZW50VGVzdFVS
TCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOltbbWFpbkZyYW1lIHdlYlZpZXddIG1haW5GcmFtZVVS
TF1dOworCisgICAgTlNNdXRhYmxlQXJyYXkgKmZpbGVQYXRocyA9IFtOU011dGFibGVBcnJheSBh
cnJheV07CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgW1tqc0ZpbGVQYXRocyB3ZWJTY3JpcHRW
YWx1ZUF0SW5kZXg6aV0gaXNLaW5kT2ZDbGFzczpbTlNTdHJpbmcgY2xhc3NdXTsgaSsrKSB7Cisg
ICAgICAgIE5TU3RyaW5nICpmaWxlUGF0aCA9IChOU1N0cmluZyAqKVtqc0ZpbGVQYXRocyB3ZWJT
Y3JpcHRWYWx1ZUF0SW5kZXg6aV07CisgICAgICAgIC8vIEhhdmUgTlNVUkwgZW5jb2RlIHRoZSBu
YW1lIHNvIHRoYXQgd2UgaGFuZGxlICc/JyBpbiBmaWxlIG5hbWVzIGNvcnJlY3RseS4KKyAgICAg
ICAgTlNVUkwgKmZpbGVVUkwgPSBbTlNVUkwgZmlsZVVSTFdpdGhQYXRoOmZpbGVQYXRoXTsKKyAg
ICAgICAgTlNVUkwgKmFic29sdXRlRmlsZVVSTCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOltmaWxl
VVJMIHJlbGF0aXZlU3RyaW5nXSAgcmVsYXRpdmVUb1VSTDpjdXJyZW50VGVzdFVSTF07CisgICAg
ICAgIFtmaWxlUGF0aHMgYWRkT2JqZWN0OlthYnNvbHV0ZUZpbGVVUkwgcGF0aF1dOworICAgIH0K
KworICAgIFtwYm9hcmQgc2V0UHJvcGVydHlMaXN0OmZpbGVQYXRocyBmb3JUeXBlOk5TRmlsZW5h
bWVzUGJvYXJkVHlwZV07CisgICAgYXNzZXJ0KFtwYm9hcmQgcHJvcGVydHlMaXN0Rm9yVHlwZTpO
U0ZpbGVuYW1lc1Bib2FyZFR5cGVdKTsgLy8gc2V0UHJvcGVydHlMaXN0IHdpbGwgc2lsZW50bHkg
ZmFpbCBvbiBlcnJvciwgYXNzZXJ0IHRoYXQgaXQgZGlkbid0IGZhaWwKKworICAgIC8vIFByb3Zp
ZGUgYSBzb3VyY2UsIG90aGVyd2lzZSBbRHVtcFJlbmRlclRyZWVEcmFnZ2luZ0luZm8gZHJhZ2dp
bmdTb3VyY2VPcGVyYXRpb25NYXNrXSBkZWZhdWx0cyB0byBOU0RyYWdPcGVyYXRpb25Ob25lCisg
ICAgRHVtcFJlbmRlclRyZWVGaWxlRHJhZ2dpbmdTb3VyY2UgKnNvdXJjZSA9IFtbW0R1bXBSZW5k
ZXJUcmVlRmlsZURyYWdnaW5nU291cmNlIGFsbG9jXSBpbml0XSBhdXRvcmVsZWFzZV07CisgICAg
ZHJhZ2dpbmdJbmZvID0gW1tEdW1wUmVuZGVyVHJlZURyYWdnaW5nSW5mbyBhbGxvY10gaW5pdFdp
dGhJbWFnZTpuaWwgb2Zmc2V0Ok5TWmVyb1NpemUgcGFzdGVib2FyZDpwYm9hcmQgc291cmNlOnNv
dXJjZV07CisgICAgW1ttYWluRnJhbWUgd2ViVmlld10gZHJhZ2dpbmdFbnRlcmVkOmRyYWdnaW5n
SW5mb107CisKKyAgICBkcmFnTW9kZSA9IE5POyAvLyBkcmFnTW9kZSBzYXZlcyBldmVudHMgYW5k
IHRoZW4gcmVwbGF5cyB0aGVtIGxhdGVyLiAgV2UgZG9uJ3QgbmVlZC93YW50IHRoYXQuCisgICAg
bGVmdE1vdXNlQnV0dG9uRG93biA9IFlFUzsgLy8gTWFrZSB0aGUgcmVzdCBvZiBldmVudFNlbmRl
ciB0aGluayBhIGRyYWcgaXMgaW4gcHJvZ3Jlc3MKK30KKworLSAodm9pZCl1cGRhdGVDbGlja0Nv
dW50Rm9yQnV0dG9uOihpbnQpYnV0dG9uTnVtYmVyCit7CisgICAgaWYgKChbc2VsZiBjdXJyZW50
RXZlbnRUaW1lXSAtIGxhc3RDbGljayA+PSAxKSB8fAorICAgICAgICAhTlNFcXVhbFBvaW50cyhs
YXN0TW91c2VQb3NpdGlvbiwgbGFzdENsaWNrUG9zaXRpb24pIHx8CisgICAgICAgIGxhc3RDbGlj
a0J1dHRvbiAhPSBidXR0b25OdW1iZXIpIHsKKyAgICAgICAgY2xpY2tDb3VudCA9IDE7CisgICAg
ICAgIGxhc3RDbGlja0J1dHRvbiA9IGJ1dHRvbk51bWJlcjsKKyAgICB9IGVsc2UKKyAgICAgICAg
Y2xpY2tDb3VudCsrOworfQorCitzdGF0aWMgaW50IGJ1aWxkTW9kaWZpZXJGbGFncyhjb25zdCBX
ZWJTY3JpcHRPYmplY3QqIG1vZGlmaWVycykKK3sKKyAgICBpbnQgZmxhZ3MgPSAwOworICAgIGlm
ICghW21vZGlmaWVycyBpc0tpbmRPZkNsYXNzOltXZWJTY3JpcHRPYmplY3QgY2xhc3NdXSkKKyAg
ICAgICAgcmV0dXJuIGZsYWdzOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IFtbbW9kaWZpZXJz
IHdlYlNjcmlwdFZhbHVlQXRJbmRleDppXSBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11d
OyBpKyspIHsKKyAgICAgICAgTlNTdHJpbmcqIG1vZGlmaWVyTmFtZSA9IChOU1N0cmluZyopW21v
ZGlmaWVycyB3ZWJTY3JpcHRWYWx1ZUF0SW5kZXg6aV07CisgICAgICAgIGlmIChbbW9kaWZpZXJO
YW1lIGlzRXF1YWw6QCJjdHJsS2V5Il0pCisgICAgICAgICAgICBmbGFncyB8PSBOU0NvbnRyb2xL
ZXlNYXNrOworICAgICAgICBlbHNlIGlmIChbbW9kaWZpZXJOYW1lIGlzRXF1YWw6QCJzaGlmdEtl
eSJdIHx8IFttb2RpZmllck5hbWUgaXNFcXVhbDpAInJhbmdlU2VsZWN0aW9uS2V5Il0pCisgICAg
ICAgICAgICBmbGFncyB8PSBOU1NoaWZ0S2V5TWFzazsKKyAgICAgICAgZWxzZSBpZiAoW21vZGlm
aWVyTmFtZSBpc0VxdWFsOkAiYWx0S2V5Il0pCisgICAgICAgICAgICBmbGFncyB8PSBOU0FsdGVy
bmF0ZUtleU1hc2s7CisgICAgICAgIGVsc2UgaWYgKFttb2RpZmllck5hbWUgaXNFcXVhbDpAIm1l
dGFLZXkiXSB8fCBbbW9kaWZpZXJOYW1lIGlzRXF1YWw6QCJhZGRTZWxlY3Rpb25LZXkiXSkKKyAg
ICAgICAgICAgIGZsYWdzIHw9IE5TQ29tbWFuZEtleU1hc2s7CisgICAgfQorICAgIHJldHVybiBm
bGFnczsKK30KKworLSAodm9pZCltb3VzZURvd246KGludClidXR0b25OdW1iZXIgd2l0aE1vZGlm
aWVyczooV2ViU2NyaXB0T2JqZWN0Kiltb2RpZmllcnMKK3sKKyAgICBbW1ttYWluRnJhbWUgZnJh
bWVWaWV3XSBkb2N1bWVudFZpZXddIGxheW91dF07CisgICAgW3NlbGYgdXBkYXRlQ2xpY2tDb3Vu
dEZvckJ1dHRvbjpidXR0b25OdW1iZXJdOworICAgIAorICAgIE5TRXZlbnRUeXBlIGV2ZW50VHlw
ZSA9IGV2ZW50VHlwZUZvck1vdXNlQnV0dG9uQW5kQWN0aW9uKGJ1dHRvbk51bWJlciwgTW91c2VE
b3duKTsKKyAgICBOU0V2ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpl
dmVudFR5cGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlv
bjpsYXN0TW91c2VQb3NpdGlvbiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
bW9kaWZpZXJGbGFnczpidWlsZE1vZGlmaWVyRmxhZ3MobW9kaWZpZXJzKQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltzZWxmIGN1cnJlbnRFdmVudFRp
bWVdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dOdW1iZXI6W1tb
bWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gd2luZG93TnVtYmVyXSAKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQgY3Vy
cmVudENvbnRleHRdIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50
TnVtYmVyOisrZXZlbnROdW1iZXIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNsaWNrQ291bnQ6Y2xpY2tDb3VudCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBwcmVzc3VyZTowLjBdOworCisgICAgTlNWaWV3ICpzdWJWaWV3ID0gW1ttYWlu
RnJhbWUgd2ViVmlld10gaGl0VGVzdDpbZXZlbnQgbG9jYXRpb25JbldpbmRvd11dOworICAgIGlm
IChzdWJWaWV3KSB7CisgICAgICAgIFtzdWJWaWV3IG1vdXNlRG93bjpldmVudF07CisgICAgICAg
IGlmIChidXR0b25OdW1iZXIgPT0gTGVmdE1vdXNlQnV0dG9uKQorICAgICAgICAgICAgbGVmdE1v
dXNlQnV0dG9uRG93biA9IFlFUzsKKyAgICB9Cit9CisKKy0gKHZvaWQpbW91c2VEb3duOihpbnQp
YnV0dG9uTnVtYmVyCit7CisgICAgW3NlbGYgbW91c2VEb3duOmJ1dHRvbk51bWJlciB3aXRoTW9k
aWZpZXJzOm5pbF07Cit9CisKKy0gKHZvaWQpdGV4dFpvb21JbgoreworICAgIFtbbWFpbkZyYW1l
IHdlYlZpZXddIG1ha2VUZXh0TGFyZ2VyOnNlbGZdOworfQorCistICh2b2lkKXRleHRab29tT3V0
Cit7CisgICAgW1ttYWluRnJhbWUgd2ViVmlld10gbWFrZVRleHRTbWFsbGVyOnNlbGZdOworfQor
CistICh2b2lkKXpvb21QYWdlSW4KK3sKKyAgICBbW21haW5GcmFtZSB3ZWJWaWV3XSB6b29tUGFn
ZUluOnNlbGZdOworfQorCistICh2b2lkKXpvb21QYWdlT3V0Cit7CisgICAgW1ttYWluRnJhbWUg
d2ViVmlld10gem9vbVBhZ2VPdXQ6c2VsZl07Cit9CisKKy0gKHZvaWQpbW91c2VVcDooaW50KWJ1
dHRvbk51bWJlciB3aXRoTW9kaWZpZXJzOihXZWJTY3JpcHRPYmplY3QqKW1vZGlmaWVycworewor
ICAgIGlmIChkcmFnTW9kZSAmJiAhcmVwbGF5aW5nU2F2ZWRFdmVudHMpIHsKKyAgICAgICAgTlNJ
bnZvY2F0aW9uICppbnZvY2F0aW9uID0gW05TSW52b2NhdGlvbiBpbnZvY2F0aW9uV2l0aE1ldGhv
ZFNpZ25hdHVyZTpbRXZlbnRTZW5kZXIgaW5zdGFuY2VNZXRob2RTaWduYXR1cmVGb3JTZWxlY3Rv
cjpAc2VsZWN0b3IobW91c2VVcDp3aXRoTW9kaWZpZXJzOildXTsKKyAgICAgICAgW2ludm9jYXRp
b24gc2V0VGFyZ2V0OnNlbGZdOworICAgICAgICBbaW52b2NhdGlvbiBzZXRTZWxlY3RvcjpAc2Vs
ZWN0b3IobW91c2VVcDp3aXRoTW9kaWZpZXJzOildOworICAgICAgICBbaW52b2NhdGlvbiBzZXRB
cmd1bWVudDomYnV0dG9uTnVtYmVyIGF0SW5kZXg6Ml07CisgICAgICAgIFtpbnZvY2F0aW9uIHNl
dEFyZ3VtZW50OiZtb2RpZmllcnMgYXRJbmRleDozXTsKKyAgICAgICAgCisgICAgICAgIFtFdmVu
dFNlbmRlciBzYXZlRXZlbnQ6aW52b2NhdGlvbl07CisgICAgICAgIFtFdmVudFNlbmRlciByZXBs
YXlTYXZlZEV2ZW50c107CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFtbW21haW5G
cmFtZSBmcmFtZVZpZXddIGRvY3VtZW50Vmlld10gbGF5b3V0XTsKKyAgICBOU0V2ZW50VHlwZSBl
dmVudFR5cGUgPSBldmVudFR5cGVGb3JNb3VzZUJ1dHRvbkFuZEFjdGlvbihidXR0b25OdW1iZXIs
IE1vdXNlVXApOworICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhU
eXBlOmV2ZW50VHlwZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxv
Y2F0aW9uOmxhc3RNb3VzZVBvc2l0aW9uIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtb2RpZmllckZsYWdzOmJ1aWxkTW9kaWZpZXJGbGFncyhtb2RpZmllcnMpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA6W3NlbGYgY3VycmVudEV2
ZW50VGltZV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd051bWJl
cjpbW1ttYWluRnJhbWUgd2ViVmlld10gd2luZG93XSB3aW5kb3dOdW1iZXJdIAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OltOU0dyYXBoaWNzQ29udGV4
dCBjdXJyZW50Q29udGV4dF0gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZXZlbnROdW1iZXI6KytldmVudE51bWJlciAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY2xpY2tDb3VudDpjbGlja0NvdW50IAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHByZXNzdXJlOjAuMF07CisKKyAgICBOU1ZpZXcgKnRhcmdldFZpZXcg
PSBbW21haW5GcmFtZSB3ZWJWaWV3XSBoaXRUZXN0OltldmVudCBsb2NhdGlvbkluV2luZG93XV07
CisgICAgLy8gRklYTUU6IFNpbGx5IGhhY2sgdG8gdGVhY2ggRFJUIHRvIHJlc3BlY3QgY2FwdHVy
aW5nIG1vdXNlIGV2ZW50cyBvdXRzaWRlIHRoZSBXZWJWaWV3LgorICAgIC8vIFRoZSByaWdodCBz
b2x1dGlvbiBpcyBqdXN0IHRvIHVzZSBOU0FwcGxpY2F0aW9uJ3MgYnVpbHQtaW4gZXZlbnQgc2Vu
ZGluZyBtZXRob2RzLCAKKyAgICAvLyBpbnN0ZWFkIG9mIHJvbGxpbmcgb3VyIG93biBhbGdvcml0
aG0gZm9yIHNlbGVjdGluZyBhbiBldmVudCB0YXJnZXQuCisgICAgdGFyZ2V0VmlldyA9IHRhcmdl
dFZpZXcgPyB0YXJnZXRWaWV3IDogW1ttYWluRnJhbWUgZnJhbWVWaWV3XSBkb2N1bWVudFZpZXdd
OworICAgIGFzc2VydCh0YXJnZXRWaWV3KTsKKyAgICBbdGFyZ2V0VmlldyBtb3VzZVVwOmV2ZW50
XTsKKyAgICBpZiAoYnV0dG9uTnVtYmVyID09IExlZnRNb3VzZUJ1dHRvbikKKyAgICAgICAgbGVm
dE1vdXNlQnV0dG9uRG93biA9IE5POworICAgIGxhc3RDbGljayA9IFtldmVudCB0aW1lc3RhbXBd
OworICAgIGxhc3RDbGlja1Bvc2l0aW9uID0gbGFzdE1vdXNlUG9zaXRpb247CisgICAgaWYgKGRy
YWdnaW5nSW5mbykgeworICAgICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gW21haW5GcmFtZSB3ZWJW
aWV3XTsKKyAgICAgICAgCisgICAgICAgIE5TRHJhZ09wZXJhdGlvbiBkcmFnT3BlcmF0aW9uID0g
W3dlYlZpZXcgZHJhZ2dpbmdVcGRhdGVkOmRyYWdnaW5nSW5mb107CisgICAgICAgIAorICAgICAg
ICBpZiAoZHJhZ09wZXJhdGlvbiAhPSBOU0RyYWdPcGVyYXRpb25Ob25lKQorICAgICAgICAgICAg
W3dlYlZpZXcgcGVyZm9ybURyYWdPcGVyYXRpb246ZHJhZ2dpbmdJbmZvXTsKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgW3dlYlZpZXcgZHJhZ2dpbmdFeGl0ZWQ6ZHJhZ2dpbmdJbmZvXTsKKyAg
ICAgICAgLy8gUGVyIE5TRHJhZ2dpbmcuaDogZHJhZ2dpbmdTb3VyY2VzIG1heSBub3QgaW1wbGVt
ZW50IGRyYWdnZWRJbWFnZTplbmRlZEF0Om9wZXJhdGlvbjoKKyAgICAgICAgaWYgKFtbZHJhZ2dp
bmdJbmZvIGRyYWdnaW5nU291cmNlXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGRyYWdn
ZWRJbWFnZTplbmRlZEF0Om9wZXJhdGlvbjopXSkKKyAgICAgICAgICAgIFtbZHJhZ2dpbmdJbmZv
IGRyYWdnaW5nU291cmNlXSBkcmFnZ2VkSW1hZ2U6W2RyYWdnaW5nSW5mbyBkcmFnZ2VkSW1hZ2Vd
IGVuZGVkQXQ6bGFzdE1vdXNlUG9zaXRpb24gb3BlcmF0aW9uOmRyYWdPcGVyYXRpb25dOworICAg
ICAgICBbZHJhZ2dpbmdJbmZvIHJlbGVhc2VdOworICAgICAgICBkcmFnZ2luZ0luZm8gPSBuaWw7
CisgICAgfQorfQorCistICh2b2lkKW1vdXNlVXA6KGludClidXR0b25OdW1iZXIKK3sKKyAgICBb
c2VsZiBtb3VzZVVwOmJ1dHRvbk51bWJlciB3aXRoTW9kaWZpZXJzOm5pbF07Cit9CisKKy0gKHZv
aWQpbW91c2VNb3ZlVG9YOihpbnQpeCBZOihpbnQpeQoreworICAgIGlmIChkcmFnTW9kZSAmJiBs
ZWZ0TW91c2VCdXR0b25Eb3duICYmICFyZXBsYXlpbmdTYXZlZEV2ZW50cykgeworICAgICAgICBO
U0ludm9jYXRpb24gKmludm9jYXRpb24gPSBbTlNJbnZvY2F0aW9uIGludm9jYXRpb25XaXRoTWV0
aG9kU2lnbmF0dXJlOltFdmVudFNlbmRlciBpbnN0YW5jZU1ldGhvZFNpZ25hdHVyZUZvclNlbGVj
dG9yOkBzZWxlY3Rvcihtb3VzZU1vdmVUb1g6WTopXV07CisgICAgICAgIFtpbnZvY2F0aW9uIHNl
dFRhcmdldDpzZWxmXTsKKyAgICAgICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNlbGVjdG9y
KG1vdXNlTW92ZVRvWDpZOildOworICAgICAgICBbaW52b2NhdGlvbiBzZXRBcmd1bWVudDomeCBh
dEluZGV4OjJdOworICAgICAgICBbaW52b2NhdGlvbiBzZXRBcmd1bWVudDomeSBhdEluZGV4OjNd
OworICAgICAgICAKKyAgICAgICAgW0V2ZW50U2VuZGVyIHNhdmVFdmVudDppbnZvY2F0aW9uXTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIE5TVmlldyAqdmlldyA9IFttYWluRnJhbWUg
d2ViVmlld107CisgICAgbGFzdE1vdXNlUG9zaXRpb24gPSBbdmlldyBjb252ZXJ0UG9pbnQ6TlNN
YWtlUG9pbnQoeCwgW3ZpZXcgZnJhbWVdLnNpemUuaGVpZ2h0IC0geSkgdG9WaWV3Om5pbF07Cisg
ICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5cGU6KGxlZnRNb3Vz
ZUJ1dHRvbkRvd24gPyBOU0xlZnRNb3VzZURyYWdnZWQgOiBOU01vdXNlTW92ZWQpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246bGFzdE1vdXNlUG9zaXRp
b24gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyRmxhZ3M6MCAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpbc2VsZiBj
dXJyZW50RXZlbnRUaW1lXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lu
ZG93TnVtYmVyOltbdmlldyB3aW5kb3ddIHdpbmRvd051bWJlcl0gCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6W05TR3JhcGhpY3NDb250ZXh0IGN1cnJl
bnRDb250ZXh0XSAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudE51
bWJlcjorK2V2ZW50TnVtYmVyIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjbGlja0NvdW50OihsZWZ0TW91c2VCdXR0b25Eb3duID8gY2xpY2tDb3VudCA6IDApIAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXNzdXJlOjAuMF07CisKKyAg
ICBOU1ZpZXcgKnN1YlZpZXcgPSBbW21haW5GcmFtZSB3ZWJWaWV3XSBoaXRUZXN0OltldmVudCBs
b2NhdGlvbkluV2luZG93XV07CisgICAgaWYgKHN1YlZpZXcpIHsKKyAgICAgICAgaWYgKGxlZnRN
b3VzZUJ1dHRvbkRvd24pIHsKKyAgICAgICAgICAgIGlmIChkcmFnZ2luZ0luZm8pIHsKKyAgICAg
ICAgICAgICAgICAvLyBQZXIgTlNEcmFnZ2luZy5oOiBkcmFnZ2luZ1NvdXJjZXMgbWF5IG5vdCBp
bXBsZW1lbnQgZHJhZ2dlZEltYWdlOm1vdmVkVG86CisgICAgICAgICAgICAgICAgaWYgKFtbZHJh
Z2dpbmdJbmZvIGRyYWdnaW5nU291cmNlXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGRy
YWdnZWRJbWFnZTptb3ZlZFRvOildKQorICAgICAgICAgICAgICAgICAgICBbW2RyYWdnaW5nSW5m
byBkcmFnZ2luZ1NvdXJjZV0gZHJhZ2dlZEltYWdlOltkcmFnZ2luZ0luZm8gZHJhZ2dlZEltYWdl
XSBtb3ZlZFRvOmxhc3RNb3VzZVBvc2l0aW9uXTsKKyAgICAgICAgICAgICAgICBbW21haW5GcmFt
ZSB3ZWJWaWV3XSBkcmFnZ2luZ1VwZGF0ZWQ6ZHJhZ2dpbmdJbmZvXTsKKyAgICAgICAgICAgIH0g
ZWxzZQorICAgICAgICAgICAgICAgIFtzdWJWaWV3IG1vdXNlRHJhZ2dlZDpldmVudF07CisgICAg
ICAgIH0gZWxzZQorICAgICAgICAgICAgW3N1YlZpZXcgbW91c2VNb3ZlZDpldmVudF07CisgICAg
fQorfQorCistICh2b2lkKW1vdXNlU2Nyb2xsQnlYOihpbnQpeCBhbmRZOihpbnQpeSBjb250aW51
b3VzbHk6KEJPT0wpYworeworICAgIC8vIENHRXZlbnRDcmVhdGVTY3JvbGxXaGVlbEV2ZW50KCkg
d2FzIGludHJvZHVjZWQgaW4gMTAuNQorI2lmICFkZWZpbmVkKEJVSUxESU5HX09OX1RJR0VSKQor
ICAgIENHU2Nyb2xsRXZlbnRVbml0IHVuaXQgPSBjP2tDR1Njcm9sbEV2ZW50VW5pdFBpeGVsOmtD
R1Njcm9sbEV2ZW50VW5pdExpbmU7CisgICAgQ0dFdmVudFJlZiBjZ1Njcm9sbEV2ZW50ID0gQ0dF
dmVudENyZWF0ZVNjcm9sbFdoZWVsRXZlbnQoTlVMTCwgdW5pdCwgMiwgeSwgeCk7CisgICAgCisg
ICAgLy8gQ0dFdmVudCBsb2NhdGlvbnMgYXJlIGluIGdsb2JhbCBkaXNwbGF5IGNvb3JkaW5hdGVz
LgorICAgIENHUG9pbnQgbGFzdEdsb2JhbE1vdXNlUG9zaXRpb24gPSB7CisgICAgICAgIGxhc3RN
b3VzZVBvc2l0aW9uLngsCisgICAgICAgIFtbTlNTY3JlZW4gbWFpblNjcmVlbl0gZnJhbWVdLnNp
emUuaGVpZ2h0IC0gbGFzdE1vdXNlUG9zaXRpb24ueQorICAgIH07CisgICAgQ0dFdmVudFNldExv
Y2F0aW9uKGNnU2Nyb2xsRXZlbnQsIGxhc3RHbG9iYWxNb3VzZVBvc2l0aW9uKTsKKworICAgIE5T
RXZlbnQgKnNjcm9sbEV2ZW50ID0gW05TRXZlbnQgZXZlbnRXaXRoQ0dFdmVudDpjZ1Njcm9sbEV2
ZW50XTsKKyAgICBDRlJlbGVhc2UoY2dTY3JvbGxFdmVudCk7CisKKyAgICBOU1ZpZXcgKnN1YlZp
ZXcgPSBbW21haW5GcmFtZSB3ZWJWaWV3XSBoaXRUZXN0OltzY3JvbGxFdmVudCBsb2NhdGlvbklu
V2luZG93XV07CisgICAgaWYgKHN1YlZpZXcpCisgICAgICAgIFtzdWJWaWV3IHNjcm9sbFdoZWVs
OnNjcm9sbEV2ZW50XTsKKyNlbmRpZgorfQorCistICh2b2lkKWNvbnRpbnVvdXNNb3VzZVNjcm9s
bEJ5WDooaW50KXggYW5kWTooaW50KXkKK3sKKyAgICBbc2VsZiBtb3VzZVNjcm9sbEJ5WDp4IGFu
ZFk6eSBjb250aW51b3VzbHk6WUVTXTsKK30KKworLSAodm9pZCltb3VzZVNjcm9sbEJ5WDooaW50
KXggYW5kWTooaW50KXkKK3sKKyAgICBbc2VsZiBtb3VzZVNjcm9sbEJ5WDp4IGFuZFk6eSBjb250
aW51b3VzbHk6Tk9dOworfQorCistIChOU0FycmF5ICopY29udGV4dENsaWNrCit7CisgICAgW1tb
bWFpbkZyYW1lIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XSBsYXlvdXRdOworICAgIFtzZWxmIHVw
ZGF0ZUNsaWNrQ291bnRGb3JCdXR0b246UmlnaHRNb3VzZUJ1dHRvbl07CisKKyAgICBOU0V2ZW50
ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpOU1JpZ2h0TW91c2VEb3duCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246bGFzdE1vdXNl
UG9zaXRpb24gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyRmxh
Z3M6MCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpb
c2VsZiBjdXJyZW50RXZlbnRUaW1lXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgd2luZG93TnVtYmVyOltbW21haW5GcmFtZSB3ZWJWaWV3XSB3aW5kb3ddIHdpbmRvd051bWJl
cl0gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6W05T
R3JhcGhpY3NDb250ZXh0IGN1cnJlbnRDb250ZXh0XSAKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBldmVudE51bWJlcjorK2V2ZW50TnVtYmVyIAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjbGlja0NvdW50OmNsaWNrQ291bnQgCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc3N1cmU6MC4wXTsKKworICAgIE5TVmll
dyAqc3ViVmlldyA9IFtbbWFpbkZyYW1lIHdlYlZpZXddIGhpdFRlc3Q6W2V2ZW50IGxvY2F0aW9u
SW5XaW5kb3ddXTsKKyAgICBOU011dGFibGVBcnJheSAqbWVudUl0ZW1TdHJpbmdzID0gW05TTXV0
YWJsZUFycmF5IGFycmF5XTsKKyAgICAKKyAgICBpZiAoc3ViVmlldykgeworICAgICAgICBOU01l
bnUqIG1lbnUgPSBbc3ViVmlldyBtZW51Rm9yRXZlbnQ6ZXZlbnRdOworCisgICAgICAgIGZvciAo
aW50IGkgPSAwOyBpIDwgW21lbnUgbnVtYmVyT2ZJdGVtc107ICsraSkgeworICAgICAgICAgICAg
TlNNZW51SXRlbSogbWVudUl0ZW0gPSBbbWVudSBpdGVtQXRJbmRleDppXTsKKyAgICAgICAgICAg
IGlmICghc3RyY21wKCJJbnNwZWN0IEVsZW1lbnQiLCBbW21lbnVJdGVtIHRpdGxlXSBVVEY4U3Ry
aW5nXSkpCisgICAgICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgICAgIGlmIChbbWVu
dUl0ZW0gaXNTZXBhcmF0b3JJdGVtXSkKKyAgICAgICAgICAgICAgICBbbWVudUl0ZW1TdHJpbmdz
IGFkZE9iamVjdDpAIjxzZXBhcmF0b3I+Il07CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgW21lbnVJdGVtU3RyaW5ncyBhZGRPYmplY3Q6W21lbnVJdGVtIHRpdGxlXV07CisgICAg
ICAgIH0KKyAgICB9CisgICAgCisgICAgcmV0dXJuIG1lbnVJdGVtU3RyaW5nczsKK30KKworLSAo
dm9pZClzY2hlZHVsZUFzeW5jaHJvbm91c0NsaWNrCit7CisgICAgW3NlbGYgcGVyZm9ybVNlbGVj
dG9yOkBzZWxlY3Rvcihtb3VzZURvd246KSB3aXRoT2JqZWN0Om5pbCBhZnRlckRlbGF5OjBdOwor
ICAgIFtzZWxmIHBlcmZvcm1TZWxlY3RvcjpAc2VsZWN0b3IobW91c2VVcDopIHdpdGhPYmplY3Q6
bmlsIGFmdGVyRGVsYXk6MF07Cit9CisKKysgKHZvaWQpc2F2ZUV2ZW50OihOU0ludm9jYXRpb24g
KilldmVudAoreworICAgIGlmICghc2F2ZWRNb3VzZUV2ZW50cykKKyAgICAgICAgc2F2ZWRNb3Vz
ZUV2ZW50cyA9IFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRdOworICAgIFtzYXZlZE1vdXNl
RXZlbnRzIGFkZE9iamVjdDpldmVudF07Cit9CisKKysgKHZvaWQpcmVwbGF5U2F2ZWRFdmVudHMK
K3sKKyAgICByZXBsYXlpbmdTYXZlZEV2ZW50cyA9IFlFUzsKKyAgICB3aGlsZSAoW3NhdmVkTW91
c2VFdmVudHMgY291bnRdKSB7CisgICAgICAgIC8vIGlmIGEgZHJhZyBpcyBpbml0aWF0ZWQsIHRo
ZSByZW1haW5pbmcgc2F2ZWQgZXZlbnRzIHdpbGwgYmUgZGlzcGF0Y2hlZCBmcm9tIG91ciBkcmFn
Z2luZyBkZWxlZ2F0ZQorICAgICAgICBOU0ludm9jYXRpb24gKmludm9jYXRpb24gPSBbW1tzYXZl
ZE1vdXNlRXZlbnRzIG9iamVjdEF0SW5kZXg6MF0gcmV0YWluXSBhdXRvcmVsZWFzZV07CisgICAg
ICAgIFtzYXZlZE1vdXNlRXZlbnRzIHJlbW92ZU9iamVjdEF0SW5kZXg6MF07CisgICAgICAgIFtp
bnZvY2F0aW9uIGludm9rZV07CisgICAgfQorICAgIHJlcGxheWluZ1NhdmVkRXZlbnRzID0gTk87
Cit9CisKKysgKHZvaWQpY2xlYXJTYXZlZEV2ZW50cworeworICAgIFtzYXZlZE1vdXNlRXZlbnRz
IHJlbGVhc2VdOworICAgIHNhdmVkTW91c2VFdmVudHMgPSBuaWw7Cit9CisKKy0gKHZvaWQpa2V5
RG93bjooTlNTdHJpbmcgKiljaGFyYWN0ZXIgd2l0aE1vZGlmaWVyczooV2ViU2NyaXB0T2JqZWN0
ICopbW9kaWZpZXJzIHdpdGhMb2NhdGlvbjoodW5zaWduZWQgbG9uZylrZXlMb2NhdGlvbgorewor
ICAgIE5TU3RyaW5nICpldmVudENoYXJhY3RlciA9IGNoYXJhY3RlcjsKKyAgICB1bnNpZ25lZCBz
aG9ydCBrZXlDb2RlID0gMDsKKyAgICBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJs
ZWZ0QXJyb3ciXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNMZWZ0QXJyb3dGdW5j
dGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENo
YXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4N0I7CisgICAgfSBl
bHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAInJpZ2h0QXJyb3ciXSkgeworICAg
ICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNSaWdodEFycm93RnVuY3Rpb25LZXk7CisgICAgICAg
IGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5n
dGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDdDOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3Rl
ciBpc0VxdWFsVG9TdHJpbmc6QCJ1cEFycm93Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBj
aCA9IE5TVXBBcnJvd0Z1bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0
cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBrZXlDb2Rl
ID0gMHg3RTsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiZG93
bkFycm93Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRG93bkFycm93RnVuY3Rp
b25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFy
YWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDdEOworICAgIH0gZWxz
ZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJwYWdlVXAiXSkgeworICAgICAgICBj
b25zdCB1bmljaGFyIGNoID0gTlNQYWdlVXBGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFy
YWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAg
ICAgICAga2V5Q29kZSA9IDB4NzQ7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxU
b1N0cmluZzpAInBhZ2VEb3duIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TUGFn
ZURvd25GdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4Nzk7
CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImhvbWUiXSkgewor
ICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNIb21lRnVuY3Rpb25LZXk7CisgICAgICAgIGV2
ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6
MV07CisgICAgICAgIGtleUNvZGUgPSAweDczOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBp
c0VxdWFsVG9TdHJpbmc6QCJlbmQiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNF
bmRGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5n
V2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4Nzc7Cisg
ICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImluc2VydCJdKSB7Cisg
ICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0luc2VydEZ1bmN0aW9uS2V5OworICAgICAgICBl
dmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3Ro
OjFdOworICAgICAgICBrZXlDb2RlID0gMHg3MjsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIg
aXNFcXVhbFRvU3RyaW5nOkAiZGVsZXRlIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9
IE5TRGVsZXRlRnVuY3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5n
IHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAw
eDc1OworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJwcmludFNj
cmVlbiJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU1ByaW50U2NyZWVuRnVuY3Rp
b25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFy
YWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDA7IC8vIFRoZXJlIGlz
IG5vIGtub3duIHZpcnR1YWwga2V5IGNvZGUgZm9yIFByaW50U2NyZWVuLgorICAgIH0KKworICAg
IC8vIENvbXBhcmUgdGhlIGlucHV0IHN0cmluZyB3aXRoIHRoZSBmdW5jdGlvbi1rZXkgbmFtZXMg
ZGVmaW5lZCBieSB0aGUgRE9NIHNwZWMgKGkuZS4gIkYxIiwuLi4sIkYyNCIpLgorICAgIC8vIElm
IHRoZSBpbnB1dCBzdHJpbmcgaXMgYSBmdW5jdGlvbi1rZXkgbmFtZSwgc2V0IGl0cyBrZXkgY29k
ZS4KKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAxOyBpIDw9IDI0OyBpKyspIHsKKyAgICAgICAgaWYg
KFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAi
RiV1IiwgaV1dKSB7CisgICAgICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGMUZ1bmN0aW9u
S2V5ICsgKGkgLSAxKTsKKyAgICAgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0
cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgICAgICBzd2l0Y2ggKGkp
IHsKKyAgICAgICAgICAgICAgICBjYXNlIDE6IGtleUNvZGUgPSAweDdBOyBicmVhazsKKyAgICAg
ICAgICAgICAgICBjYXNlIDI6IGtleUNvZGUgPSAweDc4OyBicmVhazsKKyAgICAgICAgICAgICAg
ICBjYXNlIDM6IGtleUNvZGUgPSAweDYzOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDQ6
IGtleUNvZGUgPSAweDc2OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDU6IGtleUNvZGUg
PSAweDYwOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDY6IGtleUNvZGUgPSAweDYxOyBi
cmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDc6IGtleUNvZGUgPSAweDYyOyBicmVhazsKKyAg
ICAgICAgICAgICAgICBjYXNlIDg6IGtleUNvZGUgPSAweDY0OyBicmVhazsKKyAgICAgICAgICAg
ICAgICBjYXNlIDk6IGtleUNvZGUgPSAweDY1OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IDEwOiBrZXlDb2RlID0gMHg2RDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxMToga2V5
Q29kZSA9IDB4Njc7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTI6IGtleUNvZGUgPSAw
eDZGOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDEzOiBrZXlDb2RlID0gMHg2OTsgYnJl
YWs7CisgICAgICAgICAgICAgICAgY2FzZSAxNDoga2V5Q29kZSA9IDB4NkI7IGJyZWFrOworICAg
ICAgICAgICAgICAgIGNhc2UgMTU6IGtleUNvZGUgPSAweDcxOyBicmVhazsKKyAgICAgICAgICAg
ICAgICBjYXNlIDE2OiBrZXlDb2RlID0gMHg2QTsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2Fz
ZSAxNzoga2V5Q29kZSA9IDB4NDA7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTg6IGtl
eUNvZGUgPSAweDRGOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDE5OiBrZXlDb2RlID0g
MHg1MDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAyMDoga2V5Q29kZSA9IDB4NUE7IGJy
ZWFrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgLy8gRklYTUU6IE5v
IGtleUNvZGUgaXMgc2V0IGZvciBtb3N0IGtleXMuCisgICAgaWYgKFtjaGFyYWN0ZXIgaXNFcXVh
bFRvU3RyaW5nOkAiXHQiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MzA7CisgICAgZWxzZSBpZiAo
W2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCIgIl0pCisgICAgICAgIGtleUNvZGUgPSAweDMx
OworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiXHIiXSkKKyAgICAg
ICAga2V5Q29kZSA9IDB4MjQ7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJp
bmc6QCJcbiJdKQorICAgICAgICBrZXlDb2RlID0gMHg0QzsKKyAgICBlbHNlIGlmIChbY2hhcmFj
dGVyIGlzRXF1YWxUb1N0cmluZzpAIlx4OCJdKQorICAgICAgICBrZXlDb2RlID0gMHgzMzsKKyAg
ICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjciXSkKKyAgICAgICAga2V5
Q29kZSA9IDB4MUE7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCI1
Il0pCisgICAgICAgIGtleUNvZGUgPSAweDE3OworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNF
cXVhbFRvU3RyaW5nOkAiOSJdKQorICAgICAgICBrZXlDb2RlID0gMHgxOTsKKyAgICBlbHNlIGlm
IChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjAiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4
MUQ7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJhIl0pCisgICAg
ICAgIGtleUNvZGUgPSAweDAwOworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3Ry
aW5nOkAiYiJdKQorICAgICAgICBrZXlDb2RlID0gMHgwQjsKKyAgICBlbHNlIGlmIChbY2hhcmFj
dGVyIGlzRXF1YWxUb1N0cmluZzpAImQiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MDI7CisgICAg
ZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJlIl0pCisgICAgICAgIGtleUNv
ZGUgPSAweDBFOworCisgICAgTlNTdHJpbmcgKmNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycyA9
IGV2ZW50Q2hhcmFjdGVyOworCisgICAgaW50IG1vZGlmaWVyRmxhZ3MgPSAwOworCisgICAgaWYg
KFtjaGFyYWN0ZXIgbGVuZ3RoXSA9PSAxICYmIFtjaGFyYWN0ZXIgY2hhcmFjdGVyQXRJbmRleDow
XSA+PSAnQScgJiYgW2NoYXJhY3RlciBjaGFyYWN0ZXJBdEluZGV4OjBdIDw9ICdaJykgeworICAg
ICAgICBtb2RpZmllckZsYWdzIHw9IE5TU2hpZnRLZXlNYXNrOworICAgICAgICBjaGFyYWN0ZXJz
SWdub3JpbmdNb2RpZmllcnMgPSBbY2hhcmFjdGVyIGxvd2VyY2FzZVN0cmluZ107CisgICAgfQor
CisgICAgbW9kaWZpZXJGbGFncyB8PSBidWlsZE1vZGlmaWVyRmxhZ3MobW9kaWZpZXJzKTsKKwor
ICAgIGlmIChrZXlMb2NhdGlvbiA9PSBET01fS0VZX0xPQ0FUSU9OX05VTVBBRCkKKyAgICAgICAg
bW9kaWZpZXJGbGFncyB8PSBOU051bWVyaWNQYWRLZXlNYXNrOworCisgICAgW1tbbWFpbkZyYW1l
IGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XSBsYXlvdXRdOworCisgICAgTlNFdmVudCAqZXZlbnQg
PSBbTlNFdmVudCBrZXlFdmVudFdpdGhUeXBlOk5TS2V5RG93bgorICAgICAgICAgICAgICAgICAg
ICAgICAgbG9jYXRpb246TlNNYWtlUG9pbnQoNSwgNSkKKyAgICAgICAgICAgICAgICAgICAgICAg
IG1vZGlmaWVyRmxhZ3M6bW9kaWZpZXJGbGFncworICAgICAgICAgICAgICAgICAgICAgICAgdGlt
ZXN0YW1wOltzZWxmIGN1cnJlbnRFdmVudFRpbWVdCisgICAgICAgICAgICAgICAgICAgICAgICB3
aW5kb3dOdW1iZXI6W1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gd2luZG93TnVtYmVyXQor
ICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQgY3VycmVu
dENvbnRleHRdCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzOmV2ZW50Q2hhcmFj
dGVyCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnM6
Y2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzCisgICAgICAgICAgICAgICAgICAgICAgICBpc0FS
ZXBlYXQ6Tk8KKyAgICAgICAgICAgICAgICAgICAgICAgIGtleUNvZGU6a2V5Q29kZV07CisKKyAg
ICBbW1tbbWFpbkZyYW1lIHdlYlZpZXddIHdpbmRvd10gZmlyc3RSZXNwb25kZXJdIGtleURvd246
ZXZlbnRdOworCisgICAgZXZlbnQgPSBbTlNFdmVudCBrZXlFdmVudFdpdGhUeXBlOk5TS2V5VXAK
KyAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uOk5TTWFrZVBvaW50KDUsIDUpCisgICAg
ICAgICAgICAgICAgICAgICAgICBtb2RpZmllckZsYWdzOm1vZGlmaWVyRmxhZ3MKKyAgICAgICAg
ICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpbc2VsZiBjdXJyZW50RXZlbnRUaW1lXQorICAgICAg
ICAgICAgICAgICAgICAgICAgd2luZG93TnVtYmVyOltbW21haW5GcmFtZSB3ZWJWaWV3XSB3aW5k
b3ddIHdpbmRvd051bWJlcl0KKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6W05TR3Jh
cGhpY3NDb250ZXh0IGN1cnJlbnRDb250ZXh0XQorICAgICAgICAgICAgICAgICAgICAgICAgY2hh
cmFjdGVyczpldmVudENoYXJhY3RlcgorICAgICAgICAgICAgICAgICAgICAgICAgY2hhcmFjdGVy
c0lnbm9yaW5nTW9kaWZpZXJzOmNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycworICAgICAgICAg
ICAgICAgICAgICAgICAgaXNBUmVwZWF0Ok5PCisgICAgICAgICAgICAgICAgICAgICAgICBrZXlD
b2RlOmtleUNvZGVdOworCisgICAgW1tbW21haW5GcmFtZSB3ZWJWaWV3XSB3aW5kb3ddIGZpcnN0
UmVzcG9uZGVyXSBrZXlVcDpldmVudF07Cit9CisKKy0gKHZvaWQpZW5hYmxlRE9NVUlFdmVudExv
Z2dpbmc6KFdlYlNjcmlwdE9iamVjdCAqKW5vZGUKK3sKKyAgICBOU0VudW1lcmF0b3IgKmV2ZW50
RW51bWVyYXRvciA9IFt3ZWJraXREb21FdmVudE5hbWVzIG9iamVjdEVudW1lcmF0b3JdOworICAg
IGlkIGV2ZW50TmFtZTsKKyAgICB3aGlsZSAoKGV2ZW50TmFtZSA9IFtldmVudEVudW1lcmF0b3Ig
bmV4dE9iamVjdF0pKSB7CisgICAgICAgIFsoaWQ8RE9NRXZlbnRUYXJnZXQ+KW5vZGUgYWRkRXZl
bnRMaXN0ZW5lcjpldmVudE5hbWUgbGlzdGVuZXI6c2VsZiB1c2VDYXB0dXJlOk5PXTsKKyAgICB9
Cit9CisKKy0gKHZvaWQpaGFuZGxlRXZlbnQ6KERPTUV2ZW50ICopZXZlbnQKK3sKKyAgICBET01O
b2RlICp0YXJnZXQgPSBbZXZlbnQgdGFyZ2V0XTsKKworICAgIHByaW50ZigiZXZlbnQgdHlwZTog
ICAgICAlc1xuIiwgW1tldmVudCB0eXBlXSBVVEY4U3RyaW5nXSk7CisgICAgcHJpbnRmKCIgIHRh
cmdldDogICAgICAgIDwlcz5cbiIsIFtbW3RhcmdldCBub2RlTmFtZV0gbG93ZXJjYXNlU3RyaW5n
XSBVVEY4U3RyaW5nXSk7CisgICAgCisgICAgaWYgKFtldmVudCBpc0tpbmRPZkNsYXNzOltET01F
dmVudCBjbGFzc11dKSB7CisgICAgICAgIHByaW50ZigiICBldmVudFBoYXNlOiAgICAlZFxuIiwg
W2V2ZW50IGV2ZW50UGhhc2VdKTsKKyAgICAgICAgcHJpbnRmKCIgIGJ1YmJsZXM6ICAgICAgICVk
XG4iLCBbZXZlbnQgYnViYmxlc10gPyAxIDogMCk7CisgICAgICAgIHByaW50ZigiICBjYW5jZWxh
YmxlOiAgICAlZFxuIiwgW2V2ZW50IGNhbmNlbGFibGVdID8gMSA6IDApOworICAgIH0KKyAgICAK
KyAgICBpZiAoW2V2ZW50IGlzS2luZE9mQ2xhc3M6W0RPTVVJRXZlbnQgY2xhc3NdXSkgeworICAg
ICAgICBwcmludGYoIiAgZGV0YWlsOiAgICAgICAgJWRcbiIsIFsoRE9NVUlFdmVudCopZXZlbnQg
ZGV0YWlsXSk7CisgICAgICAgIAorICAgICAgICBET01BYnN0cmFjdFZpZXcgKnZpZXcgPSBbKERP
TVVJRXZlbnQqKWV2ZW50IHZpZXddOworICAgICAgICBpZiAodmlldykgeworICAgICAgICAgICAg
cHJpbnRmKCIgIHZpZXc6ICAgICAgICAgIE9LIik7ICAgICAgICAgICAgCisgICAgICAgICAgICBp
ZiAoW3ZpZXcgZG9jdW1lbnRdKQorICAgICAgICAgICAgICAgIHByaW50ZigiIChkb2N1bWVudDog
T0spIik7CisgICAgICAgICAgICBwcmludGYoIlxuIik7CisgICAgICAgIH0KKyAgICB9CisgICAg
CisgICAgaWYgKFtldmVudCBpc0tpbmRPZkNsYXNzOltET01LZXlib2FyZEV2ZW50IGNsYXNzXV0p
IHsKKyAgICAgICAgcHJpbnRmKCIgIGtleUlkZW50aWZpZXI6ICVzXG4iLCBbWyhET01LZXlib2Fy
ZEV2ZW50KilldmVudCBrZXlJZGVudGlmaWVyXSBVVEY4U3RyaW5nXSk7CisgICAgICAgIHByaW50
ZigiICBrZXlMb2NhdGlvbjogICAlZFxuIiwgWyhET01LZXlib2FyZEV2ZW50KilldmVudCBrZXlM
b2NhdGlvbl0pOworICAgICAgICBwcmludGYoIiAgbW9kaWZpZXIga2V5czogYzolZCBzOiVkIGE6
JWQgbTolZFxuIiwgCisgICAgICAgICAgICAgICBbKERPTUtleWJvYXJkRXZlbnQqKWV2ZW50IGN0
cmxLZXldID8gMSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01LZXlib2FyZEV2ZW50KilldmVu
dCBzaGlmdEtleV0gPyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTUtleWJvYXJkRXZlbnQq
KWV2ZW50IGFsdEtleV0gPyAxIDogMCwgCisgICAgICAgICAgICAgICBbKERPTUtleWJvYXJkRXZl
bnQqKWV2ZW50IG1ldGFLZXldID8gMSA6IDApOworICAgICAgICBwcmludGYoIiAga2V5Q29kZTog
ICAgICAgJWRcbiIsIFsoRE9NS2V5Ym9hcmRFdmVudCopZXZlbnQga2V5Q29kZV0pOworICAgICAg
ICBwcmludGYoIiAgY2hhckNvZGU6ICAgICAgJWRcbiIsIFsoRE9NS2V5Ym9hcmRFdmVudCopZXZl
bnQgY2hhckNvZGVdKTsKKyAgICB9CisgICAgCisgICAgaWYgKFtldmVudCBpc0tpbmRPZkNsYXNz
OltET01Nb3VzZUV2ZW50IGNsYXNzXV0pIHsKKyAgICAgICAgcHJpbnRmKCIgIGJ1dHRvbjogICAg
ICAgICVkXG4iLCBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IGJ1dHRvbl0pOworICAgICAgICBwcmlu
dGYoIiAgY2xpZW50WDogICAgICAgJWRcbiIsIFsoRE9NTW91c2VFdmVudCopZXZlbnQgY2xpZW50
WF0pOworICAgICAgICBwcmludGYoIiAgY2xpZW50WTogICAgICAgJWRcbiIsIFsoRE9NTW91c2VF
dmVudCopZXZlbnQgY2xpZW50WV0pOworICAgICAgICBwcmludGYoIiAgc2NyZWVuWDogICAgICAg
JWRcbiIsIFsoRE9NTW91c2VFdmVudCopZXZlbnQgc2NyZWVuWF0pOworICAgICAgICBwcmludGYo
IiAgc2NyZWVuWTogICAgICAgJWRcbiIsIFsoRE9NTW91c2VFdmVudCopZXZlbnQgc2NyZWVuWV0p
OworICAgICAgICBwcmludGYoIiAgbW9kaWZpZXIga2V5czogYzolZCBzOiVkIGE6JWQgbTolZFxu
IiwgCisgICAgICAgICAgICAgICBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IGN0cmxLZXldID8gMSA6
IDAsIAorICAgICAgICAgICAgICAgWyhET01Nb3VzZUV2ZW50KilldmVudCBzaGlmdEtleV0gPyAx
IDogMCwgCisgICAgICAgICAgICAgICBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IGFsdEtleV0gPyAx
IDogMCwgCisgICAgICAgICAgICAgICBbKERPTU1vdXNlRXZlbnQqKWV2ZW50IG1ldGFLZXldID8g
MSA6IDApOworICAgICAgICBpZCByZWxhdGVkVGFyZ2V0ID0gWyhET01Nb3VzZUV2ZW50KilldmVu
dCByZWxhdGVkVGFyZ2V0XTsKKyAgICAgICAgaWYgKHJlbGF0ZWRUYXJnZXQpIHsKKyAgICAgICAg
ICAgIHByaW50ZigiICByZWxhdGVkVGFyZ2V0OiAlcyIsIFtbW3JlbGF0ZWRUYXJnZXQgY2xhc3Nd
IGRlc2NyaXB0aW9uXSBVVEY4U3RyaW5nXSk7CisgICAgICAgICAgICBpZiAoW3JlbGF0ZWRUYXJn
ZXQgaXNLaW5kT2ZDbGFzczpbRE9NTm9kZSBjbGFzc11dKQorICAgICAgICAgICAgICAgIHByaW50
ZigiIChub2RlTmFtZTogJXMpIiwgW1soRE9NTm9kZSopcmVsYXRlZFRhcmdldCBub2RlTmFtZV0g
VVRGOFN0cmluZ10pOworICAgICAgICAgICAgcHJpbnRmKCJcbiIpOworICAgICAgICB9CisgICAg
fQorICAgIAorICAgIGlmIChbZXZlbnQgaXNLaW5kT2ZDbGFzczpbRE9NTXV0YXRpb25FdmVudCBj
bGFzc11dKSB7CisgICAgICAgIHByaW50ZigiICBwcmV2VmFsdWU6ICAgICAlc1xuIiwgW1soRE9N
TXV0YXRpb25FdmVudCopZXZlbnQgcHJldlZhbHVlXSBVVEY4U3RyaW5nXSk7CisgICAgICAgIHBy
aW50ZigiICBuZXdWYWx1ZTogICAgICAlc1xuIiwgW1soRE9NTXV0YXRpb25FdmVudCopZXZlbnQg
bmV3VmFsdWVdIFVURjhTdHJpbmddKTsKKyAgICAgICAgcHJpbnRmKCIgIGF0dHJOYW1lOiAgICAg
ICVzXG4iLCBbWyhET01NdXRhdGlvbkV2ZW50KilldmVudCBhdHRyTmFtZV0gVVRGOFN0cmluZ10p
OworICAgICAgICBwcmludGYoIiAgYXR0ckNoYW5nZTogICAgJWRcbiIsIFsoRE9NTXV0YXRpb25F
dmVudCopZXZlbnQgYXR0ckNoYW5nZV0pOworICAgICAgICBET01Ob2RlICpyZWxhdGVkTm9kZSA9
IFsoRE9NTXV0YXRpb25FdmVudCopZXZlbnQgcmVsYXRlZE5vZGVdOworICAgICAgICBpZiAocmVs
YXRlZE5vZGUpIHsKKyAgICAgICAgICAgIHByaW50ZigiICByZWxhdGVkTm9kZTogICAlcyAobm9k
ZU5hbWU6ICVzKVxuIiwgCisgICAgICAgICAgICAgICAgICAgW1tbcmVsYXRlZE5vZGUgY2xhc3Nd
IGRlc2NyaXB0aW9uXSBVVEY4U3RyaW5nXSwKKyAgICAgICAgICAgICAgICAgICBbW3JlbGF0ZWRO
b2RlIG5vZGVOYW1lXSBVVEY4U3RyaW5nXSk7CisgICAgICAgIH0KKyAgICB9CisgICAgCisgICAg
aWYgKFtldmVudCBpc0tpbmRPZkNsYXNzOltET01XaGVlbEV2ZW50IGNsYXNzXV0pIHsKKyAgICAg
ICAgcHJpbnRmKCIgIGNsaWVudFg6ICAgICAgICVkXG4iLCBbKERPTVdoZWVsRXZlbnQqKWV2ZW50
IGNsaWVudFhdKTsKKyAgICAgICAgcHJpbnRmKCIgIGNsaWVudFk6ICAgICAgICVkXG4iLCBbKERP
TVdoZWVsRXZlbnQqKWV2ZW50IGNsaWVudFldKTsKKyAgICAgICAgcHJpbnRmKCIgIHNjcmVlblg6
ICAgICAgICVkXG4iLCBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IHNjcmVlblhdKTsKKyAgICAgICAg
cHJpbnRmKCIgIHNjcmVlblk6ICAgICAgICVkXG4iLCBbKERPTVdoZWVsRXZlbnQqKWV2ZW50IHNj
cmVlblldKTsKKyAgICAgICAgcHJpbnRmKCIgIG1vZGlmaWVyIGtleXM6IGM6JWQgczolZCBhOiVk
IG06JWRcbiIsIAorICAgICAgICAgICAgICAgWyhET01XaGVlbEV2ZW50KilldmVudCBjdHJsS2V5
XSA/IDEgOiAwLCAKKyAgICAgICAgICAgICAgIFsoRE9NV2hlZWxFdmVudCopZXZlbnQgc2hpZnRL
ZXldID8gMSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01XaGVlbEV2ZW50KilldmVudCBhbHRL
ZXldID8gMSA6IDAsIAorICAgICAgICAgICAgICAgWyhET01XaGVlbEV2ZW50KilldmVudCBtZXRh
S2V5XSA/IDEgOiAwKTsKKyAgICAgICAgcHJpbnRmKCIgIGlzSG9yaXpvbnRhbDogICVkXG4iLCBb
KERPTVdoZWVsRXZlbnQqKWV2ZW50IGlzSG9yaXpvbnRhbF0gPyAxIDogMCk7CisgICAgICAgIHBy
aW50ZigiICB3aGVlbERlbHRhOiAgICAlZFxuIiwgWyhET01XaGVlbEV2ZW50KilldmVudCB3aGVl
bERlbHRhXSk7CisgICAgfQorfQorCisvLyBGSVhNRTogSXQncyBub3QgZ29vZCB0byBoYXZlIGEg
dGVzdCBoYXJkLXdpcmVkIGludG8gdGhpcyBjb250cm9sbGVyIGxpa2UgdGhpcy4KKy8vIEluc3Rl
YWQgd2UgbmVlZCB0byBnZXQgdGVzdGluZyBmcmFtZXdvcmsgYmFzZWQgb24gdGhlIE9iamVjdGl2
ZS1DIGJpbmRpbmdzCisvLyB0byB3b3JrIHdlbGwgZW5vdWdoIHRoYXQgd2UgY2FuIHRlc3QgdGhh
dCB3YXkgaW5zdGVhZC4KKy0gKHZvaWQpZmlyZUtleWJvYXJkRXZlbnRzVG9FbGVtZW50OihXZWJT
Y3JpcHRPYmplY3QgKillbGVtZW50IHsKKyAgICAKKyAgICBpZiAoIVtlbGVtZW50IGlzS2luZE9m
Q2xhc3M6W0RPTUhUTUxFbGVtZW50IGNsYXNzXV0pCisgICAgICAgIHJldHVybjsKKyAgICAKKyAg
ICBET01IVE1MRWxlbWVudCAqdGFyZ2V0ID0gKERPTUhUTUxFbGVtZW50KillbGVtZW50OworICAg
IERPTURvY3VtZW50ICpkb2N1bWVudCA9IFt0YXJnZXQgb3duZXJEb2N1bWVudF07CisgICAgCisg
ICAgLy8gS2V5Ym9hcmQgRXZlbnQgMQorICAgIAorICAgIERPTUV2ZW50ICpkb21FdmVudCA9IFtk
b2N1bWVudCBjcmVhdGVFdmVudDpAIktleWJvYXJkRXZlbnQiXTsKKyAgICBbKERPTUtleWJvYXJk
RXZlbnQqKWRvbUV2ZW50IGluaXRLZXlib2FyZEV2ZW50OkAia2V5ZG93biIgCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbkJ1YmJsZTpZRVMKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxhYmxlOllFUworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXc6W2RvY3VtZW50IGRlZmF1bHRW
aWV3XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleUlkZW50aWZpZXI6
QCJVKzAwMDA0MSIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlM
b2NhdGlvbjowCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Ry
bEtleTpZRVMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0
S2V5Ok5PCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlmdEtl
eTpOTworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFLZXk6
Tk9dOworICAgIFt0YXJnZXQgZGlzcGF0Y2hFdmVudDpkb21FdmVudF07ICAKKyAgICAgICAgCisg
ICAgLy8gS2V5Ym9hcmQgRXZlbnQgMgorICAgIAorICAgIGRvbUV2ZW50ID0gW2RvY3VtZW50IGNy
ZWF0ZUV2ZW50OkAiS2V5Ym9hcmRFdmVudCJdOworICAgIFsoRE9NS2V5Ym9hcmRFdmVudCopZG9t
RXZlbnQgaW5pdEtleWJvYXJkRXZlbnQ6QCJrZXlwcmVzcyIgCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNhbkJ1YmJsZTpZRVMKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjYW5jZWxhYmxlOllFUworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXc6W2RvY3VtZW50IGRlZmF1bHRWaWV3XQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleUlkZW50aWZpZXI6QCJVKzAwMDA0
NSIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlMb2NhdGlvbjox
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3RybEtleTpOTwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRLZXk6WUVTCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlmdEtleTpOTworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFLZXk6Tk9dOworICAg
IFt0YXJnZXQgZGlzcGF0Y2hFdmVudDpkb21FdmVudF07ICAgIAorICAgIAorICAgIC8vIEtleWJv
YXJkIEV2ZW50IDMKKyAgICAKKyAgICBkb21FdmVudCA9IFtkb2N1bWVudCBjcmVhdGVFdmVudDpA
IktleWJvYXJkRXZlbnQiXTsKKyAgICBbKERPTUtleWJvYXJkRXZlbnQqKWRvbUV2ZW50IGluaXRL
ZXlib2FyZEV2ZW50OkAia2V5dXAiIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjYW5CdWJibGU6WUVTCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY2FuY2VsYWJsZTpZRVMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB2aWV3Oltkb2N1bWVudCBkZWZhdWx0Vmlld10KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBrZXlJZGVudGlmaWVyOkAiVSswMDAwNTYiIAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5TG9jYXRpb246MAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0cmxLZXk6Tk8KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0S2V5Ok5PCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlmdEtleTpOTworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFLZXk6Tk9dOworICAgIFt0YXJnZXQgZGlzcGF0
Y2hFdmVudDpkb21FdmVudF07ICAgCisgICAgCit9CisKK0BlbmQKKyNlbmRpZgo=
</data>
<flag name="review"
          id="80218"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94789</attachid>
            <date>2011-05-25 09:05:49 -0700</date>
            <delta_ts>2011-09-13 11:42:00 -0700</delta_ts>
            <desc>fix patch 3</desc>
            <filename>57515_3.patch</filename>
            <type>text/plain</type>
            <size>68620</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDg3Mjk2KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDUtMjUgIENoYW5nIFNo
dSAgPGNzaHVAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBbV0syXSBJbXBsZW1lbnQgS2V5RG93biBmdW5jdGlvbiBmb3IgV2ViS2l0
MiBFdmVudFNlbmRlci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTU3NTE1CisKKyAgICAgICAgVGhlIGNvZGUgY2hhbmdlIGluIFdlYktpdDIgYWxsb3dz
IGtleSBldmVudHMgYmVpbmcgc2VudCB0byBXZWJQcm9jZXNzIGZyb20gVUlQcm9jZXNzIHN5bmNo
cm5vdXNseS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwOgorICAgICAg
ICAoV0tQYWdlU2V0U2VuZEV2ZW50U3luY2hyb25vdXNseSk6CisgICAgICAgICogVUlQcm9jZXNz
L0FQSS9DL1dLUGFnZVByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpXZWJQYWdlUHJveHkpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmhhbmRsZUtleWJvYXJkRXZlbnQpOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5OjpzZXRTZW5kRXZlbnRTeW5jaHJvbm91c2x5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmtleUV2ZW50U3lu
Yyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKwogMjAxMS0wNS0yNCAgVGlt
b3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSB0aGUgV2Vi
IEluc3BlY3RvciBicmluZyB0aGUgcmlnaHQgd2luZG93IHRvIHRoZSBmcm9udCB3aGVuIGRvY2tl
ZC4KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCShyZXZp
c2lvbiA4NzI5NikKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNTQsNiArMTU0LDcgQEAgV2ViUGFnZVByb3h5OjpXZWJQYWdl
UHJveHkoUGFnZUNsaWVudCogcAogICAgICwgbV9tYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJh
cihmYWxzZSkKICAgICAsIG1fbWFpbkZyYW1lSXNQaW5uZWRUb0xlZnRTaWRlKGZhbHNlKQogICAg
ICwgbV9tYWluRnJhbWVJc1Bpbm5lZFRvUmlnaHRTaWRlKGZhbHNlKQorICAgICwgbV9zZW5kRXZl
bnRTeW5jaHJvbm91c2x5KGZhbHNlKQogewogI2lmbmRlZiBOREVCVUcKICAgICB3ZWJQYWdlUHJv
eHlDb3VudGVyLmluY3JlbWVudCgpOwpAQCAtOTA1LDcgKzkwNiwxMiBAQCB2b2lkIFdlYlBhZ2VQ
cm94eTo6aGFuZGxlS2V5Ym9hcmRFdmVudChjCiAgICAgbV9rZXlFdmVudFF1ZXVlLmFwcGVuZChl
dmVudCk7CiAKICAgICBwcm9jZXNzKCktPnJlc3BvbnNpdmVuZXNzVGltZXIoKS0+c3RhcnQoKTsK
LSAgICBwcm9jZXNzKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OktleUV2ZW50KGV2ZW50KSwg
bV9wYWdlSUQpOworICAgIGlmIChtX3NlbmRFdmVudFN5bmNocm9ub3VzbHkpIHsKKyAgICAgICAg
Ym9vbCBoYW5kbGVkID0gZmFsc2U7CisgICAgICAgIHByb2Nlc3MoKS0+c2VuZFN5bmMoTWVzc2Fn
ZXM6OldlYlBhZ2U6OktleUV2ZW50U3luYyhldmVudCksIE1lc3NhZ2VzOjpXZWJQYWdlOjpLZXlF
dmVudFN5bmM6OlJlcGx5KGhhbmRsZWQpLCBtX3BhZ2VJRCk7CisgICAgICAgIGRpZFJlY2VpdmVF
dmVudChldmVudC50eXBlKCksIGhhbmRsZWQpOworICAgIH0gZWxzZQorICAgICAgICBwcm9jZXNz
KCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OktleUV2ZW50KGV2ZW50KSwgbV9wYWdlSUQpOwog
fQogCiAjaWYgRU5BQkxFKEdFU1RVUkVfRVZFTlRTKQpJbmRleDogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gODcyOTYpCisrKyBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTUzMCw3ICs1MzAsOSBA
QCBwdWJsaWM6CiAgICAgLy8gRklYTUU6IFRoaXMgaXMgaW4gdmlvbGF0aW9uIG9mIHRoZSBubyBz
eW5jaHJvbm91cyBtZXNzYWdlcyB0byB0aGUgV2ViIFByb2Nlc3MgcG9saWN5IGFuZAogICAgIC8v
IHNob3VsZCBiZSByZW1vdmVkIGFzIHNvb24gYXMgcG9zc2libGUuCiAgICAgUGFzc1JlZlB0cjxX
ZWJJbWFnZT4gY3JlYXRlU25hcHNob3RPZlZpc2libGVDb250ZW50KCk7Ci0gCisKKyAgICB2b2lk
IHNldFNlbmRFdmVudFN5bmNocm9ub3VzbHkoYm9vbCBzeW5jKSB7IG1fc2VuZEV2ZW50U3luY2hy
b25vdXNseSA9IHN5bmM7IH07CisKIHByaXZhdGU6CiAgICAgV2ViUGFnZVByb3h5KFBhZ2VDbGll
bnQqLCBQYXNzUmVmUHRyPFdlYlByb2Nlc3NQcm94eT4sIFdlYlBhZ2VHcm91cCosIHVpbnQ2NF90
IHBhZ2VJRCk7CiAKQEAgLTg4NSw2ICs4ODcsOCBAQCBwcml2YXRlOgogICAgIFdlYkNvcmU6Oklu
dFJlY3QgbV92aXNpYmxlU2Nyb2xsZXJUaHVtYlJlY3Q7CiAKICAgICBzdGF0aWMgV0tQYWdlRGVi
dWdQYWludEZsYWdzIHNfZGVidWdQYWludEZsYWdzOworCisgICAgYm9vbCBtX3NlbmRFdmVudFN5
bmNocm9ub3VzbHk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCShyZXZpc2lvbiA4NzI5NikKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC01NzIsMyArNTcyLDcgQEAgV0tJbWFnZVJlZiBXS1BhZ2VDcmVhdGVTbmFwc2hvdE9mVmlzaWJs
ZQogICAgIHJldHVybiB0b0FQSSh3ZWJJbWFnZS5yZWxlYXNlKCkubGVha1JlZigpKTsKIH0KIAor
dm9pZCBXS1BhZ2VTZXRTZW5kRXZlbnRTeW5jaHJvbm91c2x5KFdLUGFnZVJlZiBwYWdlLCBib29s
IHN5bmMpCit7CisgICAgdG9JbXBsKHBhZ2UpLT5zZXRTZW5kRXZlbnRTeW5jaHJvbm91c2x5KHN5
bmMpOworfQpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZh
dGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdl
UHJpdmF0ZS5oCShyZXZpc2lvbiA4NzI5NikKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQy9XS1BhZ2VQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTY4LDYgKzY4LDggQEAgV0tf
RVhQT1JUIHZvaWQgV0tQYWdlRHJhd1BhZ2VzVG9QREYoV0tQYQogLy8gYmUgcmVtb3ZlZCBhcyBz
b29uIGFzIHBvc3NpYmxlLgogV0tfRVhQT1JUIFdLSW1hZ2VSZWYgV0tQYWdlQ3JlYXRlU25hcHNo
b3RPZlZpc2libGVDb250ZW50KFdLUGFnZVJlZiBwYWdlKTsKIAorV0tfRVhQT1JUIHZvaWQgV0tQ
YWdlU2V0U2VuZEV2ZW50U3luY2hyb25vdXNseShXS1BhZ2VSZWYgcGFnZSwgYm9vbCBzeW5jKTsK
KwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHJldmlzaW9uIDg3Mjk2KQorKysgU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMDgzLDYgKzEwODMsMTYgQEAgc3RhdGljIGJvb2wgaGFuZGxlS2V5RXZlbnQoY29uc3Qg
V2ViS2V5YgogICAgIHJldHVybiBwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS0+Zm9jdXNlZE9yTWFp
bkZyYW1lKCktPmV2ZW50SGFuZGxlcigpLT5rZXlFdmVudChwbGF0Zm9ybShrZXlib2FyZEV2ZW50
KSk7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6a2V5RXZlbnRTeW5jKGNvbnN0IFdlYktleWJvYXJkRXZl
bnQmIGtleWJvYXJkRXZlbnQsIGJvb2wmIGhhbmRsZWQpCit7CisgICAgQ3VycmVudEV2ZW50IGN1
cnJlbnRFdmVudChrZXlib2FyZEV2ZW50KTsKKworICAgIGhhbmRsZWQgPSBoYW5kbGVLZXlFdmVu
dChrZXlib2FyZEV2ZW50LCBtX3BhZ2UuZ2V0KCkpOworICAgIC8vIEZJWE1FOiBQbGF0Zm9ybSBk
ZWZhdWx0IGJlaGF2aW9ycyBzaG91bGQgYmUgcGVyZm9ybWVkIGR1cmluZyBub3JtYWwgRE9NIGV2
ZW50IGRpc3BhdGNoIChpbiBtb3N0IGNhc2VzLCBpbiBkZWZhdWx0IGtleWRvd24gZXZlbnQgaGFu
ZGxlcikuCisgICAgaWYgKCFoYW5kbGVkKQorICAgICAgICBoYW5kbGVkID0gcGVyZm9ybURlZmF1
bHRCZWhhdmlvckZvcktleUV2ZW50KGtleWJvYXJkRXZlbnQpOworfQorCiB2b2lkIFdlYlBhZ2U6
OmtleUV2ZW50KGNvbnN0IFdlYktleWJvYXJkRXZlbnQmIGtleWJvYXJkRXZlbnQpCiB7CiAgICAg
Q3VycmVudEV2ZW50IGN1cnJlbnRFdmVudChrZXlib2FyZEV2ZW50KTsKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAkocmV2aXNpb24gODcyOTYpCisr
KyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC00NzUsNiArNDc1LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIG1vdXNlRXZlbnQoY29u
c3QgV2ViTW91c2VFdmVudCYpOwogICAgIHZvaWQgd2hlZWxFdmVudChjb25zdCBXZWJXaGVlbEV2
ZW50Jik7CiAgICAgdm9pZCBrZXlFdmVudChjb25zdCBXZWJLZXlib2FyZEV2ZW50Jik7CisgICAg
dm9pZCBrZXlFdmVudFN5bmMoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYsIGJvb2wmKTsKICNpZiBF
TkFCTEUoR0VTVFVSRV9FVkVOVFMpCiAgICAgdm9pZCBnZXN0dXJlRXZlbnQoY29uc3QgV2ViR2Vz
dHVyZUV2ZW50Jik7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCShyZXZpc2lvbiA4NzI5NikKKysr
IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCSh3
b3JraW5nIGNvcHkpCkBAIC0zMyw2ICszMyw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2UgewogICAg
IFZpZXdXaWxsRW5kTGl2ZVJlc2l6ZSgpCiAKICAgICBLZXlFdmVudChXZWJLaXQ6OldlYktleWJv
YXJkRXZlbnQgZXZlbnQpCisgICAgS2V5RXZlbnRTeW5jKFdlYktpdDo6V2ViS2V5Ym9hcmRFdmVu
dCBldmVudCkgLT4gKGJvb2wgaGFuZGxlZCkKICAgICBNb3VzZUV2ZW50KFdlYktpdDo6V2ViTW91
c2VFdmVudCBldmVudCkKICAgICBXaGVlbEV2ZW50KFdlYktpdDo6V2ViV2hlZWxFdmVudCBldmVu
dCkKICNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA4NzI5NikKKysrIFRvb2xzL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDExLTA1LTI1ICBDaGFu
ZyBTaHUgIDxjc2h1QHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1dLMl0gSW1wbGVtZW50IEtleURvd24gZnVuY3Rpb24gZm9yIFdl
YktpdDIgRXZlbnRTZW5kZXIuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01NzUxNQorCisgICAgICAgIFRoZSBjb2RlIGNoYW5nZSBpbiBXZWJLaXRUZXN0
UnVubmVyIGZpcnN0IHNlbmRzIGtleWRvd24gZXZlbnQgZnJvbSBJbmplY3RlZEJ1bmRsZSB0bwor
ICAgICAgICBUZXN0Q29udHJvbGxlciBzeW5jaHJvbm91c2x5LiBUaGUgbGF0dGVyIHRoZW4gc2Vu
ZHMgc2ltdWxhdGVkIGV2ZW50IHRvIFdlYktpdDIgbW9kdWxlLAorICAgICAgICB3aGljaCBpcyBz
eW5jaHJvbm91cywgdG9vLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRl
clByb3h5Lmg6IEFkZGVkLgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5OjpFdmVudFNl
bmRlclByb3h5KToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0Jp
bmRpbmdzL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaWRsOgorICAgICAgICAqIFdlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHA6CisgICAgICAg
IChXVFI6OkV2ZW50U2VuZGluZ0NvbnRyb2xsZXI6OmtleURvd24pOgorICAgICAgICAqIFdlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5oOgorICAg
ICAgICAqIFdlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3Lmg6CisgICAgICAgIChXVFI6
OlBsYXRmb3JtV2ViVmlldzo6cGxhdGZvcm1XaW5kb3cpOgorICAgICAgICAqIFdlYktpdFRlc3RS
dW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6
VGVzdENvbnRyb2xsZXIpOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6ZGlkUmVjZWl2
ZVN5bmNocm9ub3VzTWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogV2ViS2l0
VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
V2ViS2l0VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFdl
YktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW06IEFkZGVkLgorICAgICAgICAo
V1RSOjpidWlsZE1vZGlmaWVyRmxhZ3MpOgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5
OjprZXlEb3duKToKKwogMjAxMS0wNS0yNCAgS2Vpc2hpIEhhdHRvcmkgIDxrZWlzaGlAd2Via2l0
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KSW5kZXg6IFRvb2xzL1dl
YktpdFRlc3RSdW5uZXIvRXZlbnRTZW5kZXJQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dl
YktpdFRlc3RSdW5uZXIvRXZlbnRTZW5kZXJQcm94eS5oCShyZXZpc2lvbiAwKQorKysgVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclByb3h5LmgJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsNDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBFdmVudFNlbmRlclBy
b3h5X2gKKyNkZWZpbmUgRXZlbnRTZW5kZXJQcm94eV9oCisKK25hbWVzcGFjZSBXVFIgeworCitj
bGFzcyBUZXN0Q29udHJvbGxlcjsKKworY2xhc3MgRXZlbnRTZW5kZXJQcm94eSB7CitwdWJsaWM6
CisgICAgRXZlbnRTZW5kZXJQcm94eShUZXN0Q29udHJvbGxlciogdGVzdENvbnRyb2xsZXIpIDog
bV90ZXN0Q29udHJvbGxlcih0ZXN0Q29udHJvbGxlcikgeyB9OworCisgICAgdm9pZCBrZXlEb3du
KFdLU3RyaW5nUmVmIGtleSwgV0tFdmVudE1vZGlmaWVycywgdW5zaWduZWQgaW50IGxvY2F0aW9u
LCBkb3VibGUgdGltZXN0YW1wKTsKKworcHJpdmF0ZToKKyAgICBUZXN0Q29udHJvbGxlciogbV90
ZXN0Q29udHJvbGxlcjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdUUgorCisjZW5kaWYgLy8gRXZl
bnRTZW5kZXJQcm94eV9oCkluZGV4OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL1BsYXRmb3JtV2Vi
Vmlldy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJW
aWV3LmgJKHJldmlzaW9uIDg3Mjk2KQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9y
bVdlYlZpZXcuaAkod29ya2luZyBjb3B5KQpAQCAtNTcsNiArNTcsNyBAQCBwdWJsaWM6CiAKICAg
ICBXS1BhZ2VSZWYgcGFnZSgpOwogICAgIFBsYXRmb3JtV0tWaWV3IHBsYXRmb3JtVmlldygpIHsg
cmV0dXJuIG1fdmlldzsgfQorICAgIFBsYXRmb3JtV2luZG93IHBsYXRmb3JtV2luZG93KCkgeyBy
ZXR1cm4gbV93aW5kb3c7IH0KICAgICB2b2lkIHJlc2l6ZVRvKHVuc2lnbmVkIHdpZHRoLCB1bnNp
Z25lZCBoZWlnaHQpOwogICAgIHZvaWQgZm9jdXMoKTsKIApJbmRleDogVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAJKHJldmlzaW9uIDg3Mjk2KQorKysgVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDYg
KzI2LDkgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJUZXN0Q29udHJvbGxlci5o
IgogCisjaWYgUExBVEZPUk0oTUFDKQorI2luY2x1ZGUgIkV2ZW50U2VuZGVyUHJveHkuaCIKKyNl
bmRpZgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUgIlN0cmluZ0Z1bmN0
aW9ucy5oIgogI2luY2x1ZGUgIlRlc3RJbnZvY2F0aW9uLmgiCkBAIC02OCw2ICs3MSw5IEBAIFRl
c3RDb250cm9sbGVyOjpUZXN0Q29udHJvbGxlcihpbnQgYXJnYywKICAgICAsIG1fc2hvcnRUaW1l
b3V0KGRlZmF1bHRTaG9ydFRpbWVvdXQpCiAgICAgLCBtX2RpZFByaW50V2ViUHJvY2Vzc0NyYXNo
ZWRNZXNzYWdlKGZhbHNlKQogICAgICwgbV9zaG91bGRFeGl0V2hlbldlYlByb2Nlc3NDcmFzaGVz
KHRydWUpCisjaWYgUExBVEZPUk0oTUFDKQorICAgICwgbV9ldmVudFNlbmRlclByb3h5KG5ldyBF
dmVudFNlbmRlclByb3h5KHRoaXMpKQorI2VuZGlmCiB7CiAgICAgaW5pdGlhbGl6ZShhcmdjLCBh
cmd2KTsKICAgICBjb250cm9sbGVyID0gdGhpczsKQEAgLTQ5Myw2ICs0OTksMzQgQEAgdm9pZCBU
ZXN0Q29udHJvbGxlcjo6ZGlkUmVjZWl2ZU1lc3NhZ2VGcgogCiBXS1JldGFpblB0cjxXS1R5cGVS
ZWY+IFRlc3RDb250cm9sbGVyOjpkaWRSZWNlaXZlU3luY2hyb25vdXNNZXNzYWdlRnJvbUluamVj
dGVkQnVuZGxlKFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lLCBXS1R5cGVSZWYgbWVzc2FnZUJvZHkp
CiB7CisjaWYgUExBVEZPUk0oTUFDKQorICAgIGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3Ry
aW5nKG1lc3NhZ2VOYW1lLCAiRXZlbnRTZW5kZXIiKSkgeworICAgICAgICBBU1NFUlQoV0tHZXRU
eXBlSUQobWVzc2FnZUJvZHkpID09IFdLRGljdGlvbmFyeUdldFR5cGVJRCgpKTsKKyAgICAgICAg
V0tEaWN0aW9uYXJ5UmVmIG1lc3NhZ2VCb2R5RGljdGlvbmFyeSA9IHN0YXRpY19jYXN0PFdLRGlj
dGlvbmFyeVJlZj4obWVzc2FnZUJvZHkpOworCisgICAgICAgIFdLUmV0YWluUHRyPFdLU3RyaW5n
UmVmPiBzdWJNZXNzYWdlS2V5KEFkb3B0V0ssIFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5n
KCJTdWJNZXNzYWdlIikpOworICAgICAgICBXS1N0cmluZ1JlZiBzdWJNZXNzYWdlTmFtZSA9IHN0
YXRpY19jYXN0PFdLU3RyaW5nUmVmPihXS0RpY3Rpb25hcnlHZXRJdGVtRm9yS2V5KG1lc3NhZ2VC
b2R5RGljdGlvbmFyeSwgc3ViTWVzc2FnZUtleS5nZXQoKSkpOworCisgICAgICAgIGlmIChXS1N0
cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKHN1Yk1lc3NhZ2VOYW1lLCAiS2V5RG93biIpKSB7Cisg
ICAgICAgICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4ga2V5S2V5ID0gYWRvcHRXSyhXS1N0
cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiS2V5IikpOworICAgICAgICAgICAgV0tTdHJpbmdS
ZWYga2V5ID0gc3RhdGljX2Nhc3Q8V0tTdHJpbmdSZWY+KFdLRGljdGlvbmFyeUdldEl0ZW1Gb3JL
ZXkobWVzc2FnZUJvZHlEaWN0aW9uYXJ5LCBrZXlLZXkuZ2V0KCkpKTsKKworICAgICAgICAgICAg
V0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IG1vZGlmaWVyc0tleSA9IGFkb3B0V0soV0tTdHJpbmdD
cmVhdGVXaXRoVVRGOENTdHJpbmcoIk1vZGlmaWVycyIpKTsKKyAgICAgICAgICAgIFdLRXZlbnRN
b2RpZmllcnMgbW9kaWZpZXJzID0gc3RhdGljX2Nhc3Q8V0tFdmVudE1vZGlmaWVycz4oV0tVSW50
NjRHZXRWYWx1ZShzdGF0aWNfY2FzdDxXS1VJbnQ2NFJlZj4oV0tEaWN0aW9uYXJ5R2V0SXRlbUZv
cktleShtZXNzYWdlQm9keURpY3Rpb25hcnksIG1vZGlmaWVyc0tleS5nZXQoKSkpKSk7CisKKyAg
ICAgICAgICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBsb2NhdGlvbktleSA9IGFkb3B0V0so
V0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIkxvY2F0aW9uIikpOworICAgICAgICAgICAg
dW5zaWduZWQgaW50IGxvY2F0aW9uID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQgaW50PihXS1VJbnQ2
NEdldFZhbHVlKHN0YXRpY19jYXN0PFdLVUludDY0UmVmPihXS0RpY3Rpb25hcnlHZXRJdGVtRm9y
S2V5KG1lc3NhZ2VCb2R5RGljdGlvbmFyeSwgbG9jYXRpb25LZXkuZ2V0KCkpKSkpOworCisgICAg
ICAgICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gdGltZXN0YW1wS2V5ID0gYWRvcHRXSyhX
S1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiVGltZXN0YW1wIikpOworICAgICAgICAgICAg
ZG91YmxlIHRpbWVzdGFtcCA9IFdLRG91YmxlR2V0VmFsdWUoc3RhdGljX2Nhc3Q8V0tEb3VibGVS
ZWY+KFdLRGljdGlvbmFyeUdldEl0ZW1Gb3JLZXkobWVzc2FnZUJvZHlEaWN0aW9uYXJ5LCB0aW1l
c3RhbXBLZXkuZ2V0KCkpKSk7CisKKyAgICAgICAgICAgIC8vIEZvcndhcmQgdG8gV2ViUHJvY2Vz
cworICAgICAgICAgICAgbV9ldmVudFNlbmRlclByb3h5LT5rZXlEb3duKGtleSwgbW9kaWZpZXJz
LCBsb2NhdGlvbiwgdGltZXN0YW1wKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9
CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIH0KKyNlbmRpZgogICAgIHJldHVy
biBtX2N1cnJlbnRJbnZvY2F0aW9uLT5kaWRSZWNlaXZlU3luY2hyb25vdXNNZXNzYWdlRnJvbUlu
amVjdGVkQnVuZGxlKG1lc3NhZ2VOYW1lLCBtZXNzYWdlQm9keSk7CiB9CiAKSW5kZXg6IFRvb2xz
L1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9X
ZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgJKHJldmlzaW9uIDg3Mjk2KQorKysgVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0z
NSw2ICszNSw3IEBAIG5hbWVzcGFjZSBXVFIgewogCiBjbGFzcyBUZXN0SW52b2NhdGlvbjsKIGNs
YXNzIFBsYXRmb3JtV2ViVmlldzsKK2NsYXNzIEV2ZW50U2VuZGVyUHJveHk7CiAKIC8vIEZJWE1F
OiBSZW5hbWUgdGhpcyBUZXN0UnVubmVyPwogY2xhc3MgVGVzdENvbnRyb2xsZXIgewpAQCAtMTIx
LDYgKzEyMiw4IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1fZGlkUHJpbnRXZWJQcm9jZXNzQ3Jh
c2hlZE1lc3NhZ2U7CiAgICAgYm9vbCBtX3Nob3VsZEV4aXRXaGVuV2ViUHJvY2Vzc0NyYXNoZXM7
CisKKyAgICBFdmVudFNlbmRlclByb3h5KiBtX2V2ZW50U2VuZGVyUHJveHk7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXVFIKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5k
bGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250cm9sbGVyLmNwcAkocmV2
aXNpb24gODcyOTYpCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2
ZW50U2VuZGluZ0NvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw5ICsyOSwxMyBA
QAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQ
YWdlLmgiCiAjaW5jbHVkZSAiSlNFdmVudFNlbmRpbmdDb250cm9sbGVyLmgiCisjaW5jbHVkZSAi
U3RyaW5nRnVuY3Rpb25zLmgiCisjaW5jbHVkZSA8V2ViS2l0Mi9XS0J1bmRsZS5oPgogI2luY2x1
ZGUgPFdlYktpdDIvV0tCdW5kbGVGcmFtZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQ
YWdlUHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQcml2YXRlLmg+CisjaW5j
bHVkZSA8V2ViS2l0Mi9XS011dGFibGVEaWN0aW9uYXJ5Lmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9X
S051bWJlci5oPgogCiBuYW1lc3BhY2UgV1RSIHsKIApAQCAtMjA1LDQgKzIwOSwzNiBAQCB2b2lk
IEV2ZW50U2VuZGluZ0NvbnRyb2xsZXI6Om1ha2VXaW5kb3dPCiAgICAgc2V0UHJvcGVydHkoY29u
dGV4dCwgd2luZG93T2JqZWN0LCAiZXZlbnRTZW5kZXIiLCB0aGlzLCBrSlNQcm9wZXJ0eUF0dHJp
YnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlLCBleGNlcHRpb24p
OwogfQogCit2b2lkIEV2ZW50U2VuZGluZ0NvbnRyb2xsZXI6OmtleURvd24oSlNTdHJpbmdSZWYg
a2V5LCBKU1ZhbHVlUmVmIG1vZGlmaWVyQXJyYXksIGludCBsb2NhdGlvbikKK3sKKyAgICBXS0J1
bmRsZVBhZ2VSZWYgcGFnZSA9IEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5wYWdlKCktPnBhZ2Uo
KTsKKyAgICBXS0J1bmRsZUZyYW1lUmVmIGZyYW1lID0gV0tCdW5kbGVQYWdlR2V0TWFpbkZyYW1l
KHBhZ2UpOworICAgIEpTQ29udGV4dFJlZiBjb250ZXh0ID0gV0tCdW5kbGVGcmFtZUdldEphdmFT
Y3JpcHRDb250ZXh0KGZyYW1lKTsKKyAgICBXS0V2ZW50TW9kaWZpZXJzIG1vZGlmaWVycyA9IHBh
cnNlTW9kaWZpZXJBcnJheShjb250ZXh0LCBtb2RpZmllckFycmF5KTsKKworICAgIFdLUmV0YWlu
UHRyPFdLU3RyaW5nUmVmPiBFdmVudFNlbmRlck1lc3NhZ2VOYW1lKEFkb3B0V0ssIFdLU3RyaW5n
Q3JlYXRlV2l0aFVURjhDU3RyaW5nKCJFdmVudFNlbmRlciIpKTsKKyAgICBXS1JldGFpblB0cjxX
S011dGFibGVEaWN0aW9uYXJ5UmVmPiBFdmVudFNlbmRlck1lc3NhZ2VCb2R5KEFkb3B0V0ssIFdL
TXV0YWJsZURpY3Rpb25hcnlDcmVhdGUoKSk7CisKKyAgICBXS1JldGFpblB0cjxXS1N0cmluZ1Jl
Zj4gc3ViTWVzc2FnZUtleShBZG9wdFdLLCBXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygi
U3ViTWVzc2FnZSIpKTsKKyAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gc3ViTWVzc2FnZU5h
bWUoQWRvcHRXSywgV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIktleURvd24iKSk7Cisg
ICAgV0tEaWN0aW9uYXJ5QWRkSXRlbShFdmVudFNlbmRlck1lc3NhZ2VCb2R5LmdldCgpLCBzdWJN
ZXNzYWdlS2V5LmdldCgpLCBzdWJNZXNzYWdlTmFtZS5nZXQoKSk7CisKKyAgICBXS1JldGFpblB0
cjxXS1N0cmluZ1JlZj4ga2V5S2V5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0
cmluZygiS2V5IikpOworICAgIFdLRGljdGlvbmFyeUFkZEl0ZW0oRXZlbnRTZW5kZXJNZXNzYWdl
Qm9keS5nZXQoKSwga2V5S2V5LmdldCgpLCB0b1dLKGtleSkuZ2V0KCkpOworCisgICAgV0tSZXRh
aW5QdHI8V0tTdHJpbmdSZWY+IG1vZGlmaWVyc0tleSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVX
aXRoVVRGOENTdHJpbmcoIk1vZGlmaWVycyIpKTsKKyAgICBXS1JldGFpblB0cjxXS1VJbnQ2NFJl
Zj4gbW9kaWZpZXJzUmVmID0gV0tVSW50NjRDcmVhdGUobW9kaWZpZXJzKTsKKyAgICBXS0RpY3Rp
b25hcnlBZGRJdGVtKEV2ZW50U2VuZGVyTWVzc2FnZUJvZHkuZ2V0KCksIG1vZGlmaWVyc0tleS5n
ZXQoKSwgbW9kaWZpZXJzUmVmLmdldCgpKTsKKworICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVm
PiBsb2NhdGlvbktleSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIkxv
Y2F0aW9uIikpOworICAgIFdLUmV0YWluUHRyPFdLVUludDY0UmVmPiBsb2NhdGlvblJlZiA9IFdL
VUludDY0Q3JlYXRlKGxvY2F0aW9uKTsKKyAgICBXS0RpY3Rpb25hcnlBZGRJdGVtKEV2ZW50U2Vu
ZGVyTWVzc2FnZUJvZHkuZ2V0KCksIGxvY2F0aW9uS2V5LmdldCgpLCBsb2NhdGlvblJlZi5nZXQo
KSk7CisKKyAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gdGltZXN0YW1wS2V5ID0gYWRvcHRX
SyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiVGltZXN0YW1wIikpOworICAgIFdLUmV0
YWluUHRyPFdLRG91YmxlUmVmPiB0aW1lUmVmID0gV0tEb3VibGVDcmVhdGUobV90aW1lKTsKKyAg
ICBXS0RpY3Rpb25hcnlBZGRJdGVtKEV2ZW50U2VuZGVyTWVzc2FnZUJvZHkuZ2V0KCksIHRpbWVz
dGFtcEtleS5nZXQoKSwgdGltZVJlZi5nZXQoKSk7CisKKyAgICBXS0J1bmRsZVBvc3RTeW5jaHJv
bm91c01lc3NhZ2UoSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLmJ1bmRsZSgpLCBFdmVudFNlbmRl
ck1lc3NhZ2VOYW1lLmdldCgpLCBFdmVudFNlbmRlck1lc3NhZ2VCb2R5LmdldCgpLCAwKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV1RSCkluZGV4OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9X
ZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaAko
cmV2aXNpb24gODcyOTYpCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDgsNiArNDgsOCBA
QCBwdWJsaWM6CiAgICAgdm9pZCBtb3VzZU1vdmVUbyhpbnQgeCwgaW50IHkpOwogICAgIHZvaWQg
bGVhcEZvcndhcmQoaW50IG1pbGxpc2Vjb25kcyk7CiAKKyAgICB2b2lkIGtleURvd24oSlNTdHJp
bmdSZWYga2V5LCBKU1ZhbHVlUmVmIG1vZGlmaWVyQXJyYXksIGludCBsb2NhdGlvbik7CisKICAg
ICAvLyBab29tIGZ1bmN0aW9ucy4KICAgICB2b2lkIHRleHRab29tSW4oKTsKICAgICB2b2lkIHRl
eHRab29tT3V0KCk7CkluZGV4OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L0JpbmRpbmdzL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaWRsCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvRXZlbnRTZW5kaW5nQ29u
dHJvbGxlci5pZGwJKHJldmlzaW9uIDg3Mjk2KQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9FdmVudFNlbmRpbmdDb250cm9sbGVyLmlkbAkod29ya2lu
ZyBjb3B5KQpAQCAtMzEsNiArMzEsOCBAQCBtb2R1bGUgV1RSIHsKICAgICAgICAgdm9pZCBtb3Vz
ZU1vdmVUbyhpbiBsb25nIHgsIGluIGxvbmcgeSk7CiAgICAgICAgIHZvaWQgbGVhcEZvcndhcmQo
aW4gbG9uZyBtaWxsaXNlY29uZHMpOwogCisgICAgICAgIHZvaWQga2V5RG93bihpbiBET01TdHJp
bmcga2V5LCBpbiBvYmplY3QgbW9kaWZpZXJBcnJheSwgaW4gbG9uZyBsb2NhdGlvbik7CisKICAg
ICAgICAgLy8gWm9vbSBmdW5jdGlvbnMuCiAgICAgICAgIHZvaWQgdGV4dFpvb21JbigpOwogICAg
ICAgICB2b2lkIHRleHRab29tT3V0KCk7CkluZGV4OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL1dl
YktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9XZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagkocmV2aXNpb24gODcyOTYpCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVyL1dlYktp
dFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAt
MjEsNiArMjEsNyBAQAogLyogRW5kIFBCWEFnZ3JlZ2F0ZVRhcmdldCBzZWN0aW9uICovCiAKIC8q
IEJlZ2luIFBCWEJ1aWxkRmlsZSBzZWN0aW9uICovCisJCTU2NzBCODI4MTM4NkZDQTUwMDJFQjM1
NSAvKiBFdmVudFNlbmRlclByb3h5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTY3MEI4MjcxMzg2RkNBNTAwMkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJv
eHkubW0gKi87IH07CiAJCTY1MTBBNzgyMTFFQzY0MzgwMDQxMDg2NyAvKiBBSEVNX19fXy5UVEYg
aW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1MTBBNzc3
MTFFQzY0MzgwMDQxMDg2NyAvKiBBSEVNX19fXy5UVEYgKi87IH07CiAJCTY1MTBBNzgzMTFFQzY0
MzgwMDQxMDg2NyAvKiBDb2xvckJpdHMudHRmIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA2NTEwQTc3ODExRUM2NDM4MDA0MTA4NjcgLyogQ29sb3JCaXRz
LnR0ZiAqLzsgfTsKIAkJNjUxMEE3ODQxMUVDNjQzODAwNDEwODY3IC8qIFdlYktpdFdlaWdodFdh
dGNoZXIxMDAudHRmIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2NTEwQTc3OTExRUM2NDM4MDA0MTA4NjcgLyogV2ViS2l0V2VpZ2h0V2F0Y2hlcjEwMC50
dGYgKi87IH07CkBAIC03OCw2ICs3OSw4IEBACiAKIC8qIEJlZ2luIFBCWEZpbGVSZWZlcmVuY2Ug
c2VjdGlvbiAqLwogCQkzNzhENDQyMjEzMzQ2RDAwMDA2QTc3N0IgLyogY29uZmlnLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IGNvbmZpZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NjcwQjgy
NjEzODZGQzEzMDAyRUIzNTUgLyogRXZlbnRTZW5kZXJQcm94eS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBFdmVudFNlbmRlclByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTU2NzBCODI3MTM4NkZDQTUwMDJFQjM1NSAvKiBFdmVudFNlbmRlclByb3h5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRXZlbnRTZW5kZXJQcm94
eS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNjUxMEE3NzcxMUVDNjQzODAwNDEw
ODY3IC8qIEFIRU1fX19fLlRURiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IGZpbGU7IG5hbWUgPSAiQUhFTV9fX18uVFRGIjsgcGF0aCA9ICJmb250cy9B
SEVNX19fXy5UVEYiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2NTEwQTc3ODExRUM2
NDM4MDA0MTA4NjcgLyogQ29sb3JCaXRzLnR0ZiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7IG5hbWUgPSBDb2xvckJpdHMudHRmOyBwYXRoID0g
Zm9udHMvQ29sb3JCaXRzLnR0Zjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNjUxMEE3
NzkxMUVDNjQzODAwNDEwODY3IC8qIFdlYktpdFdlaWdodFdhdGNoZXIxMDAudHRmICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZmlsZTsgbmFtZSA9IFdl
YktpdFdlaWdodFdhdGNoZXIxMDAudHRmOyBwYXRoID0gZm9udHMvV2ViS2l0V2VpZ2h0V2F0Y2hl
cjEwMC50dGY7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODYsNiArMTg5LDcgQEAK
IAkJCQlCQzkxOTIwMjEzMzNFNENEMDAzMDExREMgLyogY2cgKi8sCiAJCQkJQkM3OTMzRkUxMThG
N0M3NDAwNUVBOEUyIC8qIG1hYyAqLywKIAkJCQlCQzI1MUExNzExRDE2Nzc0MDAyRUJDMDEgLyog
V2ViS2l0VGVzdFJ1bm5lclByZWZpeC5oICovLAorCQkJCTU2NzBCODI2MTM4NkZDMTMwMDJFQjM1
NSAvKiBFdmVudFNlbmRlclByb3h5LmggKi8sCiAJCQkJQkM3OTM0REQxMTkwNjZFQzAwNUVBOEUy
IC8qIFBsYXRmb3JtV2ViVmlldy5oICovLAogCQkJCUJDNzkzNDJGMTE4RjdGMTkwMDVFQThFMiAv
KiBUZXN0Q29udHJvbGxlci5oICovLAogCQkJCUJDNzkzNDMwMTE4RjdGMTkwMDVFQThFMiAvKiBU
ZXN0Q29udHJvbGxlci5jcHAgKi8sCkBAIC0yNzYsNiArMjgwLDcgQEAKIAkJQkM3OTMzRkUxMThG
N0M3NDAwNUVBOEUyIC8qIG1hYyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRy
ZW4gPSAoCisJCQkJNTY3MEI4MjcxMzg2RkNBNTAwMkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJveHku
bW0gKi8sCiAJCQkJQkM3OTMzRkYxMThGN0M4NDAwNUVBOEUyIC8qIG1haW4ubW0gKi8sCiAJCQkJ
QkM3OTM0RTcxMTkwNjg0NjAwNUVBOEUyIC8qIFBsYXRmb3JtV2ViVmlld01hYy5tbSAqLywKIAkJ
CQlCQzhDNzk1QjExRDI3ODVEMDA0NTM1QTEgLyogVGVzdENvbnRyb2xsZXJNYWMubW0gKi8sCkBA
IC00NTIsNiArNDU3LDcgQEAKIAkJCQlCQ0Q3RDJGODExOTIxMjc4MDA2REI3RUUgLyogVGVzdElu
dm9jYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM4Qzc5NUMxMUQyNzg1RDAwNDUzNUEx
IC8qIFRlc3RDb250cm9sbGVyTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM5MTkyMDUxMzMz
RTRGODAwMzAxMURDIC8qIFRlc3RJbnZvY2F0aW9uQ0cuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTY3MEI4MjgxMzg2RkNBNTAwMkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJveHkubW0gaW4gU291cmNl
cyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsK
IAkJfTsKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHku
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXJQ
cm94eS5tbQkocmV2aXNpb24gMCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50
U2VuZGVyUHJveHkubW0JKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjExIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWll
cykuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiRXZlbnRTZW5kZXJQ
cm94eS5oIgorCisjaW1wb3J0ICJTdHJpbmdGdW5jdGlvbnMuaCIKKyNpbXBvcnQgIlBsYXRmb3Jt
V2ViVmlldy5oIgorI2ltcG9ydCAiVGVzdENvbnRyb2xsZXIuaCIKKyNpbXBvcnQgPFdlYktpdDIv
V0tQYWdlUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0Mi9XS1N0cmluZy5oPgorCituYW1lc3Bh
Y2UgV1RSIHsKKworc3RhdGljIGludCBidWlsZE1vZGlmaWVyRmxhZ3MoV0tFdmVudE1vZGlmaWVy
cyBtb2RpZmllcnMpCit7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBpZiAobW9kaWZpZXJzICYg
a1dLRXZlbnRNb2RpZmllcnNDb250cm9sS2V5KQorICAgICAgICBmbGFncyB8PSBOU0NvbnRyb2xL
ZXlNYXNrOworICAgIGlmIChtb2RpZmllcnMgJiBrV0tFdmVudE1vZGlmaWVyc1NoaWZ0S2V5KQor
ICAgICAgICBmbGFncyB8PSBOU1NoaWZ0S2V5TWFzazsKKyAgICBpZiAobW9kaWZpZXJzICYga1dL
RXZlbnRNb2RpZmllcnNBbHRLZXkpCisgICAgICAgIGZsYWdzIHw9IE5TQWx0ZXJuYXRlS2V5TWFz
azsKKyAgICBpZiAobW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5KQorICAgICAg
ICBmbGFncyB8PSBOU0NvbW1hbmRLZXlNYXNrOworICAgIHJldHVybiBmbGFnczsKK30KKwordm9p
ZCBFdmVudFNlbmRlclByb3h5OjprZXlEb3duKFdLU3RyaW5nUmVmIGtleVJlZiwgV0tFdmVudE1v
ZGlmaWVycyBtb2RpZmllcnNSZWYsIHVuc2lnbmVkIGludCBrZXlMb2NhdGlvbiwgZG91YmxlIHRp
bWVzdGFtcCkKK3sKKyAgICBOU1N0cmluZyogY2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dp
dGhDU3RyaW5nOnRvU1REKGtleVJlZikuY19zdHIoKSAKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZW5jb2Rpbmc6W05TU3RyaW5nIGRlZmF1bHRDU3RyaW5nRW5jb2RpbmddXTsK
KworICAgIE5TU3RyaW5nICpldmVudENoYXJhY3RlciA9IGNoYXJhY3RlcjsKKyAgICB1bnNpZ25l
ZCBzaG9ydCBrZXlDb2RlID0gMDsKKyAgICBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6
QCJsZWZ0QXJyb3ciXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNMZWZ0QXJyb3dG
dW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0
aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4N0I7CisgICAg
fSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAInJpZ2h0QXJyb3ciXSkgewor
ICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNSaWdodEFycm93RnVuY3Rpb25LZXk7CisgICAg
ICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBs
ZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDdDOworICAgIH0gZWxzZSBpZiAoW2NoYXJh
Y3RlciBpc0VxdWFsVG9TdHJpbmc6QCJ1cEFycm93Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hh
ciBjaCA9IE5TVXBBcnJvd0Z1bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtO
U1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBrZXlD
b2RlID0gMHg3RTsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAi
ZG93bkFycm93Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRG93bkFycm93RnVu
Y3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhD
aGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDdEOworICAgIH0g
ZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJwYWdlVXAiXSkgeworICAgICAg
ICBjb25zdCB1bmljaGFyIGNoID0gTlNQYWdlVXBGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRD
aGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsK
KyAgICAgICAga2V5Q29kZSA9IDB4NzQ7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1
YWxUb1N0cmluZzpAInBhZ2VEb3duIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5T
UGFnZURvd25GdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcg
c3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4
Nzk7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImhvbWUiXSkg
eworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNIb21lRnVuY3Rpb25LZXk7CisgICAgICAg
IGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5n
dGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDczOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3Rl
ciBpc0VxdWFsVG9TdHJpbmc6QCJlbmQiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0g
TlNFbmRGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4Nzc7
CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImluc2VydCJdKSB7
CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU0luc2VydEZ1bmN0aW9uS2V5OworICAgICAg
ICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVu
Z3RoOjFdOworICAgICAgICBrZXlDb2RlID0gMHg3MjsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0
ZXIgaXNFcXVhbFRvU3RyaW5nOkAiZGVsZXRlIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBj
aCA9IE5TRGVsZXRlRnVuY3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3Ry
aW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUg
PSAweDc1OworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJwcmlu
dFNjcmVlbiJdKSB7CisgICAgICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU1ByaW50U2NyZWVuRnVu
Y3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhD
aGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDA7IC8vIFRoZXJl
IGlzIG5vIGtub3duIHZpcnR1YWwga2V5IGNvZGUgZm9yIFByaW50U2NyZWVuLgorICAgIH0KKwor
ICAgIC8vIENvbXBhcmUgdGhlIGlucHV0IHN0cmluZyB3aXRoIHRoZSBmdW5jdGlvbi1rZXkgbmFt
ZXMgZGVmaW5lZCBieSB0aGUgRE9NIHNwZWMgKGkuZS4gIkYxIiwuLi4sIkYyNCIpLgorICAgIC8v
IElmIHRoZSBpbnB1dCBzdHJpbmcgaXMgYSBmdW5jdGlvbi1rZXkgbmFtZSwgc2V0IGl0cyBrZXkg
Y29kZS4KKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAxOyBpIDw9IDI0OyBpKyspIHsKKyAgICAgICAg
aWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0
OkAiRiV1IiwgaV1dKSB7CisgICAgICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGMUZ1bmN0
aW9uS2V5ICsgKGkgLSAxKTsKKyAgICAgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5n
IHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgICAgICBzd2l0Y2gg
KGkpIHsKKyAgICAgICAgICAgICAgICBjYXNlIDE6IGtleUNvZGUgPSAweDdBOyBicmVhazsKKyAg
ICAgICAgICAgICAgICBjYXNlIDI6IGtleUNvZGUgPSAweDc4OyBicmVhazsKKyAgICAgICAgICAg
ICAgICBjYXNlIDM6IGtleUNvZGUgPSAweDYzOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IDQ6IGtleUNvZGUgPSAweDc2OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDU6IGtleUNv
ZGUgPSAweDYwOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDY6IGtleUNvZGUgPSAweDYx
OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDc6IGtleUNvZGUgPSAweDYyOyBicmVhazsK
KyAgICAgICAgICAgICAgICBjYXNlIDg6IGtleUNvZGUgPSAweDY0OyBicmVhazsKKyAgICAgICAg
ICAgICAgICBjYXNlIDk6IGtleUNvZGUgPSAweDY1OyBicmVhazsKKyAgICAgICAgICAgICAgICBj
YXNlIDEwOiBrZXlDb2RlID0gMHg2RDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxMTog
a2V5Q29kZSA9IDB4Njc7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTI6IGtleUNvZGUg
PSAweDZGOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDEzOiBrZXlDb2RlID0gMHg2OTsg
YnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxNDoga2V5Q29kZSA9IDB4NkI7IGJyZWFrOwor
ICAgICAgICAgICAgICAgIGNhc2UgMTU6IGtleUNvZGUgPSAweDcxOyBicmVhazsKKyAgICAgICAg
ICAgICAgICBjYXNlIDE2OiBrZXlDb2RlID0gMHg2QTsgYnJlYWs7CisgICAgICAgICAgICAgICAg
Y2FzZSAxNzoga2V5Q29kZSA9IDB4NDA7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTg6
IGtleUNvZGUgPSAweDRGOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDE5OiBrZXlDb2Rl
ID0gMHg1MDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAyMDoga2V5Q29kZSA9IDB4NUE7
IGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgLy8gRklYTUU6
IE5vIGtleUNvZGUgaXMgc2V0IGZvciBtb3N0IGtleXMuCisgICAgaWYgKFtjaGFyYWN0ZXIgaXNF
cXVhbFRvU3RyaW5nOkAiXHQiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MzA7CisgICAgZWxzZSBp
ZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCIgIl0pCisgICAgICAgIGtleUNvZGUgPSAw
eDMxOworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiXHIiXSkKKyAg
ICAgICAga2V5Q29kZSA9IDB4MjQ7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9T
dHJpbmc6QCJcbiJdKQorICAgICAgICBrZXlDb2RlID0gMHg0QzsKKyAgICBlbHNlIGlmIChbY2hh
cmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIlx4OCJdKQorICAgICAgICBrZXlDb2RlID0gMHgzMzsK
KyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjciXSkKKyAgICAgICAg
a2V5Q29kZSA9IDB4MUE7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6
QCI1Il0pCisgICAgICAgIGtleUNvZGUgPSAweDE3OworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIg
aXNFcXVhbFRvU3RyaW5nOkAiOSJdKQorICAgICAgICBrZXlDb2RlID0gMHgxOTsKKyAgICBlbHNl
IGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjAiXSkKKyAgICAgICAga2V5Q29kZSA9
IDB4MUQ7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJhIl0pCisg
ICAgICAgIGtleUNvZGUgPSAweDAwOworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRv
U3RyaW5nOkAiYiJdKQorICAgICAgICBrZXlDb2RlID0gMHgwQjsKKyAgICBlbHNlIGlmIChbY2hh
cmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImQiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MDI7Cisg
ICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJlIl0pCisgICAgICAgIGtl
eUNvZGUgPSAweDBFOworCisgICAgTlNTdHJpbmcgKmNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVy
cyA9IGV2ZW50Q2hhcmFjdGVyOworCisgICAgaW50IG1vZGlmaWVyRmxhZ3MgPSAwOworCisgICAg
aWYgKFtjaGFyYWN0ZXIgbGVuZ3RoXSA9PSAxICYmIFtjaGFyYWN0ZXIgY2hhcmFjdGVyQXRJbmRl
eDowXSA+PSAnQScgJiYgW2NoYXJhY3RlciBjaGFyYWN0ZXJBdEluZGV4OjBdIDw9ICdaJykgewor
ICAgICAgICBtb2RpZmllckZsYWdzIHw9IE5TU2hpZnRLZXlNYXNrOworICAgICAgICBjaGFyYWN0
ZXJzSWdub3JpbmdNb2RpZmllcnMgPSBbY2hhcmFjdGVyIGxvd2VyY2FzZVN0cmluZ107CisgICAg
fQorCisgICAgbW9kaWZpZXJGbGFncyB8PSBidWlsZE1vZGlmaWVyRmxhZ3MobW9kaWZpZXJzUmVm
KTsKKworICAgIGlmIChrZXlMb2NhdGlvbiA9PSAweDAzIC8qRE9NX0tFWV9MT0NBVElPTl9OVU1Q
QUQqLykKKyAgICAgICAgbW9kaWZpZXJGbGFncyB8PSBOU051bWVyaWNQYWRLZXlNYXNrOworCisg
ICAgLy8gRklYTUU6IFtbW21haW5GcmFtZSBmcmFtZVZpZXddIGRvY3VtZW50Vmlld10gbGF5b3V0
XTsKKworICAgIFdLUGFnZVNldFNlbmRFdmVudFN5bmNocm9ub3VzbHkoW21fdGVzdENvbnRyb2xs
ZXItPm1haW5XZWJWaWV3KCktPnBsYXRmb3JtVmlldygpIHBhZ2VSZWZdLCB0cnVlKTsKKworICAg
IE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQga2V5RXZlbnRXaXRoVHlwZTpOU0tleURvd24KKyAg
ICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uOk5TTWFrZVBvaW50KDUsIDUpCisgICAgICAg
ICAgICAgICAgICAgICAgICBtb2RpZmllckZsYWdzOm1vZGlmaWVyRmxhZ3MKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHRpbWVzdGFtcDp0aW1lc3RhbXAvL1tzZWxmIGN1cnJlbnRFdmVudFRpbWVd
CisgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dOdW1iZXI6W21fdGVzdENvbnRyb2xsZXIt
Pm1haW5XZWJWaWV3KCktPnBsYXRmb3JtV2luZG93KCkgd2luZG93TnVtYmVyXQorICAgICAgICAg
ICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQgY3VycmVudENvbnRleHRd
CisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzOmV2ZW50Q2hhcmFjdGVyCisgICAg
ICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnM6Y2hhcmFjdGVy
c0lnbm9yaW5nTW9kaWZpZXJzCisgICAgICAgICAgICAgICAgICAgICAgICBpc0FSZXBlYXQ6Tk8K
KyAgICAgICAgICAgICAgICAgICAgICAgIGtleUNvZGU6a2V5Q29kZV07CisKKyAgICBbW21fdGVz
dENvbnRyb2xsZXItPm1haW5XZWJWaWV3KCktPnBsYXRmb3JtV2luZG93KCkgZmlyc3RSZXNwb25k
ZXJdIGtleURvd246ZXZlbnRdOworCisgICAgZXZlbnQgPSBbTlNFdmVudCBrZXlFdmVudFdpdGhU
eXBlOk5TS2V5VXAKKyAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uOk5TTWFrZVBvaW50
KDUsIDUpCisgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmllckZsYWdzOm1vZGlmaWVyRmxh
Z3MKKyAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDp0aW1lc3RhbXAvL1tzZWxmIGN1
cnJlbnRFdmVudFRpbWVdCisgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dOdW1iZXI6W21f
dGVzdENvbnRyb2xsZXItPm1haW5XZWJWaWV3KCktPnBsYXRmb3JtV2luZG93KCkgd2luZG93TnVt
YmVyXQorICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQg
Y3VycmVudENvbnRleHRdCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzOmV2ZW50
Q2hhcmFjdGVyCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzSWdub3JpbmdNb2Rp
ZmllcnM6Y2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzCisgICAgICAgICAgICAgICAgICAgICAg
ICBpc0FSZXBlYXQ6Tk8KKyAgICAgICAgICAgICAgICAgICAgICAgIGtleUNvZGU6a2V5Q29kZV07
CisKKyAgICBbW21fdGVzdENvbnRyb2xsZXItPm1haW5XZWJWaWV3KCktPnBsYXRmb3JtV2luZG93
KCkgZmlyc3RSZXNwb25kZXJdIGtleVVwOmV2ZW50XTsKKworICAgIFdLUGFnZVNldFNlbmRFdmVu
dFN5bmNocm9ub3VzbHkoW21fdGVzdENvbnRyb2xsZXItPm1haW5XZWJWaWV3KCktPnBsYXRmb3Jt
VmlldygpIHBhZ2VSZWZdLCBmYWxzZSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdUUgpJbmRleDog
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxv
ZwkocmV2aXNpb24gODcyOTYpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wNS0yNSAgQ2hhbmcgU2h1ICA8Y3NodUB3ZWJraXQu
b3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtX
SzJdIEltcGxlbWVudCBLZXlEb3duIGZ1bmN0aW9uIGZvciBXZWJLaXQyIEV2ZW50U2VuZGVyLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc1MTUKKwor
ICAgICAgICBVbnNraXAgcGFzc2VkIHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vbWFjLXdr
Mi9Ta2lwcGVkOgorCiAyMDExLTA1LTI1ICBBbmRyZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gU2tpcHBlZCAzIG5ldyBpbnNwZWN0b3IgdGVz
dHMgdGhhdCB0aW1lIG91dCBvbiBndGsuCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMt
d2syL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9T
a2lwcGVkCShyZXZpc2lvbiA4NzI5NikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIv
U2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAtNjgsMjYgKzY4LDEyIEBAIGZhc3QvZnJhbWVzL2Zs
YXR0ZW5pbmcvZnJhbWVzZXQtZmxhdHRlbmkKIAogIyBXZWJLaXRUZXN0UnVubmVyIG5lZWRzIGFu
IGltcGxlbWVudGF0aW9uIG9mIGV2ZW50U2VuZGVyCiAjIDxodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NDIxOTQ+Ci1lZGl0aW5nL2RlbGV0aW5nLzU3Mjk2ODAuaHRtbAot
ZWRpdGluZy9kZWxldGluZy9kZWxldGUtYnktd29yZC0wMDEuaHRtbAotZWRpdGluZy9kZWxldGlu
Zy9kZWxldGUtYnktd29yZC0wMDIuaHRtbAotZWRpdGluZy9kZWxldGluZy9kZWxldGUtbGlnYXR1
cmUtMDAxLmh0bWwKLWVkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWxpZ2F0dXJlLTAwMi5odG1sCi1l
ZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1saWdhdHVyZS0wMDMuaHRtbAotZWRpdGluZy9kZWxldGlu
Zy9mb3J3YXJkLWRlbGV0ZS1rZXkuaHRtbAotZWRpdGluZy9kZWxldGluZy9za2lwLXZpcmFtYS0w
MDEuaHRtbAogZWRpdGluZy9kZWxldGluZy9zbWFydC1kZWxldGUtMDAxLmh0bWwKIGVkaXRpbmcv
ZGVsZXRpbmcvc21hcnQtZGVsZXRlLTAwMi5odG1sCiBlZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWRl
bGV0ZS0wMDMuaHRtbAogZWRpdGluZy9kZWxldGluZy9zbWFydC1kZWxldGUtMDA0Lmh0bWwKIGVk
aXRpbmcvZXhlY0NvbW1hbmQvZmluZFN0cmluZy0yLmh0bWwKLWVkaXRpbmcvaW5wdXQvZW1hY3Mt
Y3RybC1vLmh0bWwKLWVkaXRpbmcvaW5wdXQvb3B0aW9uLXBhZ2UtdXAtZG93bi5odG1sCi1lZGl0
aW5nL2lucHV0L3BhZ2UtdXAtZG93bi1zY3JvbGxzLmh0bWwKLWVkaXRpbmcvaW5wdXQvc2Nyb2xs
LXZpZXdwb3J0LXBhZ2UtdXAtZG93bi5odG1sCiBlZGl0aW5nL2luc2VydGluZy9yZXR1cm4ta2V5
LWluLWhpZGRlbi1maWVsZC5odG1sCi1lZGl0aW5nL2luc2VydGluZy90eXBpbmctdGFiLWRlc2ln
bm1vZGUtZm9ybXMuaHRtbAotZWRpdGluZy9pbnNlcnRpbmcvdHlwaW5nLXRhYi1kZXNpZ25tb2Rl
Lmh0bWwKIGVkaXRpbmcvcGFzdGVib2FyZC80ODYxMDgwLmh0bWwKIGVkaXRpbmcvcGFzdGVib2Fy
ZC80OTQ0NzcwLTIuaHRtbAogZWRpdGluZy9wYXN0ZWJvYXJkLzQ5NDcxMzAuaHRtbApAQCAtMTA5
LDcgKzk1LDYgQEAgZWRpdGluZy9wYXN0ZWJvYXJkL2VtYWNzLWN0cmwtay15LTAwMS5odAogZWRp
dGluZy9wYXN0ZWJvYXJkL2ZpbGUtaW5wdXQtZmlsZXMtYWNjZXNzLmh0bWwKIGVkaXRpbmcvcGFz
dGVib2FyZC9maWxlcy1kdXJpbmctcGFnZS1kcmFncy5odG1sCiBlZGl0aW5nL3Bhc3RlYm9hcmQv
Z2V0LWRhdGEtdGV4dC1wbGFpbi1kcm9wLmh0bWwKLWVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1i
ZWZvcmUtdGFiLXNwYW4uaHRtbAogZWRpdGluZy9wYXN0ZWJvYXJkL3NtYXJ0LWRyYWctZHJvcC5o
dG1sCiBlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDAxLmh0bWwKIGVkaXRpbmcvcGFz
dGVib2FyZC9zbWFydC1wYXN0ZS0wMDIuaHRtbApAQCAtMTQ0LDEwICsxMjksOSBAQCBlZGl0aW5n
L3NlbGVjdGlvbi9kcmFnLXNlbGVjdC0xLmh0bWwKIGVkaXRpbmcvc2VsZWN0aW9uL2RyYWctc2Vs
ZWN0LXJhcGlkbHkuaHRtbAogZWRpdGluZy9zZWxlY3Rpb24vZHJhZy1zdGFydC1ldmVudC1jbGll
bnQteC15Lmh0bWwKIGVkaXRpbmcvc2VsZWN0aW9uL2RyYWctdG8tY29udGVudGVkaXRhYmxlLWlm
cmFtZS5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9lZGl0YWJsZS1saW5rcy5odG1sCiBlZGl0aW5n
L3NlbGVjdGlvbi9lbXB0eS1jZWxsLXJpZ2h0LWNsaWNrLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9u
L2V4cGFuZGluZy1zZWxlY3Rpb25zLmh0bWwKIGVkaXRpbmcvc2VsZWN0aW9uL2V4cGFuZGluZy1z
ZWxlY3Rpb25zMi5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9leHBhbmRpbmctc2VsZWN0aW9ucy5o
dG1sCiBlZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQtYWZ0ZXItbW91c2Utc2VsZWN0aW9uLmh0bWwK
IGVkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1zZWxlY3Rpb24tYWZ0ZXItZG91YmxlLWNsaWNrLmh0
bWwKIGVkaXRpbmcvc2VsZWN0aW9uL2Zha2UtZG91YmxlY2xpY2suaHRtbApAQCAtMTU1LDcgKzEz
OSw2IEBAIGVkaXRpbmcvc2VsZWN0aW9uL2Zha2UtZHJhZy5odG1sCiBlZGl0aW5nL3NlbGVjdGlv
bi9pbmxpbmUtY2xvc2VzdC1sZWFmLWNoaWxkLmh0bWwKIGVkaXRpbmcvc2VsZWN0aW9uL2xhc3Qt
ZW1wdHktaW5saW5lLmh0bWwKIGVkaXRpbmcvc2VsZWN0aW9uL21peGVkLWVkaXRhYmlsaXR5LTEw
Lmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL21vdmUtYmVnaW4tZW5kLmh0bWwKIGVkaXRpbmcvc2Vs
ZWN0aW9uL3BhcmFncmFwaC1ncmFudWxhcml0eS5odG1sCiBlZGl0aW5nL3NlbGVjdGlvbi9zZWxl
Y3QtZnJvbS10ZXh0ZmllbGQtb3V0d2FyZHMuaHRtbAogZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0
LW91dC1vZi1lZGl0YWJsZS5odG1sCkBAIC0xNjQsMTIgKzE0NywxMCBAQCBlZGl0aW5nL3NlbGVj
dGlvbi9zZWxlY3Qtb3V0LW9mLWZsb2F0ZWQtCiBlZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Qtb3V0
LW9mLWZsb2F0ZWQtdGV4dGFyZWEuaHRtbAogZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0aW9uLWFj
dGlvbnMuaHRtbAogZWRpdGluZy9zZWxlY3Rpb24vc2hpZnQtY2xpY2suaHRtbAotZWRpdGluZy9z
ZWxlY3Rpb24vc2hyaW5rLXNlbGVjdGlvbi1hZnRlci1zaGlmdC1wYWdlZG93bi5odG1sCiBlZGl0
aW5nL3NlbGVjdGlvbi91c2VyLWRyYWctZWxlbWVudC1hbmQtdXNlci1zZWxlY3Qtbm9uZS5odG1s
CiBlZGl0aW5nL3NlbGVjdGlvbi93b3JkLWdyYW51bGFyaXR5Lmh0bWwKIGVkaXRpbmcvc3BlbGxp
bmcvY29udGV4dC1tZW51LXN1Z2dlc3Rpb25zLmh0bWwKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxj
aGVjay1wYXN0ZS5odG1sCi1lZGl0aW5nL3VuZG8vdW5kby1kZWxldGVXb3JkLmh0bWwKIGVkaXRp
bmcvdW5kby91bmRvLXNtYXJ0LWRlbGV0ZS1yZXZlcnNlZC1zZWxlY3Rpb24uaHRtbAogZWRpdGlu
Zy91bmRvL3VuZG8tc21hcnQtZGVsZXRlLXdvcmQuaHRtbAogZmFzdC9ibG9ja2Zsb3cvaG9yaXpv
bnRhbC1idC1yZXBsYWNlZC1zZWxlY3Rpb24uaHRtbApAQCAtMTc4LDI2ICsxNTksMTcgQEAgZmFz
dC9ibG9ja2Zsb3cvamFwYW5lc2Utcmwtc2VsZWN0aW9uLmh0bQogZmFzdC9ibG9ja2Zsb3cvdmVy
dGljYWwtbHItcmVwbGFjZWQtc2VsZWN0aW9uLmh0bWwKIGZhc3QvYmxvY2tmbG93L3ZlcnRpY2Fs
LXJsLXJlcGxhY2VkLXNlbGVjdGlvbi5odG1sCiBmYXN0L2Nzcy91c2VyLWRyYWctbm9uZS5odG1s
Ci1mYXN0L2RvbS9IVE1MU2VsZWN0RWxlbWVudC9jbGljay1zaXplLXplcm8tbm8tY3Jhc2guaHRt
bAogZmFzdC9kb20vV2luZG93L3dpbmRvdy1wb3N0bWVzc2FnZS1jbG9uZS1mcmFtZXMuaHRtbAog
ZmFzdC9kb20vV2luZG93L3dpbmRvdy1wb3N0bWVzc2FnZS1jbG9uZS5odG1sCi1mYXN0L2RvbS9o
aWRkZW4taWZyYW1lLW5vLWZvY3VzLmh0bWwKIGZhc3QvZG9tL2hvcml6b250YWwtc2Nyb2xsYmFy
LWluLXJ0bC5odG1sCiBmYXN0L2RvbS92ZXJ0aWNhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwKIGZh
c3QvZHluYW1pYy9sYXllci1oaXQtdGVzdC1jcmFzaC5odG1sCiBmYXN0L2V2ZW50cy81MDU2NjE5
Lmh0bWwKLWZhc3QvZXZlbnRzL2FjY2Vzcy1rZXktc2VsZi1kZXN0cnVjdC5odG1sCi1mYXN0L2V2
ZW50cy9hbmNob3ItZW1wdHktZm9jdXMuaHRtbAotZmFzdC9ldmVudHMvYXJyb3cta2V5cy1vbi1i
b2R5Lmh0bWwKLWZhc3QvZXZlbnRzL2Fycm93LW5hdmlnYXRpb24uaHRtbAotZmFzdC9ldmVudHMv
YXR0ZW1wdC1zZWxlY3QtYWxsLXdpdGgtd3JvbmctbW9kaWZpZXIuaHRtbAogZmFzdC9ldmVudHMv
YXV0b3Njcm9sbC1pbi10ZXh0ZmllbGQuaHRtbAogZmFzdC9ldmVudHMvYXV0b3Njcm9sbC1ub25z
Y3JvbGxhYmxlLWlmcmFtZS1pbi1zY3JvbGxhYmxlLWRpdi5odG1sCiBmYXN0L2V2ZW50cy9hdXRv
c2Nyb2xsLXdpdGgtbm9uLXNjcm9sbGFibGUtcGFyZW50Lmh0bWwKIGZhc3QvZXZlbnRzL2F1dG9z
Y3JvbGwuaHRtbAogZmFzdC9ldmVudHMvYm9ndXMtZHJvcEVmZmVjdC1lZmZlY3RBbGxvd2VkLmh0
bWwKLWZhc3QvZXZlbnRzL2NoZWNrLWRlZm9jdXMtZXZlbnQtb3JkZXItd2hlbi10cmlnZ2VyZWQt
YnktbW91c2UtY2xpY2suaHRtbAotZmFzdC9ldmVudHMvY2hlY2stZGVmb2N1cy1ldmVudC1vcmRl
ci13aGVuLXRyaWdnZXJlZC1ieS10YWIuaHRtbAogZmFzdC9ldmVudHMvY2xpY2stY291bnQuaHRt
bAogZmFzdC9ldmVudHMvY29udGVudC1jaGFuZ2VkLWR1cmluZy1kcm9wLmh0bWwKIGZhc3QvZXZl
bnRzL2NvbnRleHQtbm8tZGVzZWxlY3QuaHRtbApAQCAtMjEzLDE0NyArMTg1LDQ3IEBAIGZhc3Qv
ZXZlbnRzL2RyYWctZmlsZS1jcmFzaC5odG1sCiBmYXN0L2V2ZW50cy9kcmFnLWluLWZyYW1lcy5o
dG1sCiBmYXN0L2V2ZW50cy9kcmFnLXBhcmVudC1ub2RlLmh0bWwKIGZhc3QvZXZlbnRzL2RyYWct
dG8tbmF2aWdhdGUuaHRtbAotZmFzdC9ldmVudHMvZXZlbnQtaW5wdXQtY29udGVudEVkaXRhYmxl
Lmh0bWwKLWZhc3QvZXZlbnRzL2ZvY3VzLWNoYW5nZS1jcmFzaC5odG1sCi1mYXN0L2V2ZW50cy9m
b2N1cy1jaGFuZ2UtY3Jhc2gyLmh0bWwKLWZhc3QvZXZlbnRzL2ZvY3VzaW5nVW5sb2FkZWRGcmFt
ZS5odG1sCi1mYXN0L2V2ZW50cy9pbWFnZW1hcC1ub3JlbmRlci1jcmFzaC5odG1sCi1mYXN0L2V2
ZW50cy9pbnB1dC10YWItZm9jdXMtbm8tZHVwbGljYXRlLWV2ZW50cy5odG1sCi1mYXN0L2V2ZW50
cy9pbnB1dFRleHQtbmV2ZXItZmlyZWQtb24ta2V5ZG93bi1jYW5jZWwuaHRtbAotZmFzdC9ldmVu
dHMvanMta2V5Ym9hcmQtZXZlbnQtY3JlYXRpb24uaHRtbAotZmFzdC9ldmVudHMva2V5LWV2ZW50
cy1pbi1pbnB1dC1idXR0b24uaHRtbAotZmFzdC9ldmVudHMva2V5LWV2ZW50cy1pbi1pbnB1dC10
ZXh0Lmh0bWwKLWZhc3QvZXZlbnRzL2tleWRvd24tMS5odG1sCi1mYXN0L2V2ZW50cy9rZXlkb3du
LWZ1bmN0aW9uLWtleXMuaHRtbAotZmFzdC9ldmVudHMva2V5ZG93bi1rZXlwcmVzcy1mb2N1cy1j
aGFuZ2UuaHRtbAotZmFzdC9ldmVudHMva2V5ZG93bi1rZXlwcmVzcy1wcmV2ZW50RGVmYXVsdC5o
dG1sCiBmYXN0L2V2ZW50cy9rZXlkb3duLW51bXBhZC1rZXlzLmh0bWwKLWZhc3QvZXZlbnRzL2tl
eWRvd24tcmVtb3ZlLWZyYW1lLmh0bWwKLWZhc3QvZXZlbnRzL2tleXByZXNzLWZvY3VzLWNoYW5n
ZS5odG1sCi1mYXN0L2V2ZW50cy9rZXlwcmVzcy1yZW1vdmVkLW5vZGUuaHRtbAotZmFzdC9ldmVu
dHMvbWVudS1rZXlkb3duLW9uLWhpZGRlbi1lbGVtZW50Lmh0bWwKIGZhc3QvZXZlbnRzL21vdXNl
LWNsaWNrLWV2ZW50cy5odG1sCiBmYXN0L2V2ZW50cy9tb3VzZXVwLWZyb20tYnV0dG9uMi5odG1s
Ci1mYXN0L2V2ZW50cy9tdWx0aWxpbmUtbGluay1hcnJvdy1uYXZpZ2F0aW9uLmh0bWwKIGZhc3Qv
ZXZlbnRzL25vZGUtZXZlbnQtYW5jaG9yLWxvY2suaHRtbAotZmFzdC9ldmVudHMvb25jaGFuZ2Ut
cGFzc3dvcmRmaWVsZC5odG1sCi1mYXN0L2V2ZW50cy9vbmNoYW5nZS1zZWFyY2hmaWVsZC5odG1s
Ci1mYXN0L2V2ZW50cy9vbmNoYW5nZS1zZWxlY3QtcG9wdXAuaHRtbAotZmFzdC9ldmVudHMvb25j
aGFuZ2UtdGV4dC1mb3JtLWZpZWxkLmh0bWwKLWZhc3QvZXZlbnRzL29uY2hhbmdlLXRleHRmaWVs
ZC5odG1sCiBmYXN0L2V2ZW50cy9vbmRyYWdlbnRlci5odG1sCi1mYXN0L2V2ZW50cy9vbmRyb3At
dGV4dC1odG1sLmh0bWwKLWZhc3QvZXZlbnRzL29uc2VhcmNoLWVudGVyLmh0bWwKIGZhc3QvZXZl
bnRzL29wZW4td2luZG93LWZyb20tYW5vdGhlci1mcmFtZS5odG1sCiBmYXN0L2V2ZW50cy9wbGF0
Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYuaHRtbAogZmFzdC9ldmVudHMvcG9wdXAt
YmxvY2tpbmctY2xpY2staW4taWZyYW1lLmh0bWwKIGZhc3QvZXZlbnRzL3BvcHVwLXdoZW4tc2Vs
ZWN0LWNoYW5nZS5odG1sCiBmYXN0L2V2ZW50cy9wcmV2ZW50LWRyYWctdG8tbmF2aWdhdGUuaHRt
bAotZmFzdC9ldmVudHMvcmVjb3JkZWQta2V5ZG93bi1ldmVudC5odG1sCiBmYXN0L2V2ZW50cy9y
ZW1vdmUtY2hpbGQtb25zY3JvbGwuaHRtbAogZmFzdC9ldmVudHMvcmlnaHQtY2xpY2stZm9jdXMu
aHRtbAogZmFzdC9ldmVudHMvc2Nyb2xsLWFmdGVyLWNsaWNrLW9uLXRhYi1pbmRleC5odG1sCiBm
YXN0L2V2ZW50cy9zY3JvbGwtaW4tc2NhbGVkLXBhZ2Utd2l0aC1vdmVyZmxvdy1oaWRkZW4uaHRt
bAogZmFzdC9ldmVudHMvc2Nyb2xsYmFyLWRvdWJsZS1jbGljay5odG1sCi1mYXN0L2V2ZW50cy9z
ZWxlY3QtZWxlbWVudC5odG1sCi1mYXN0L2V2ZW50cy9zZWxlY3Qtb25jaGFuZ2UtY3Jhc2guaHRt
bAotZmFzdC9ldmVudHMvc2VsZWN0aW9uY2hhbmdlLXVzZXItaW5pdGlhdGVkLmh0bWwKIGZhc3Qv
ZXZlbnRzL3NlbGVjdHN0YXJ0LWJ5LWRvdWJsZS10cmlwbGUtY2xpY2tzLmh0bWwKIGZhc3QvZXZl
bnRzL3NlbGVjdHN0YXJ0LWJ5LWRyYWcuaHRtbAotZmFzdC9ldmVudHMvc2VsZWN0c3RhcnQtZHVy
aW5nLWF1dG9zY3JvbGwuaHRtbAotZmFzdC9ldmVudHMvc3BhY2Utc2Nyb2xsLWV2ZW50Lmh0bWwK
LWZhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0Lmh0bWwKIGZhc3Qv
ZXZlbnRzL3N0YW5kYWxvbmUtaW1hZ2UtZHJhZy10by1lZGl0YWJsZS5odG1sCi1mYXN0L2V2ZW50
cy90YWItZm9jdXMtaGlkZGVuLmh0bWwKLWZhc3QvZXZlbnRzL3RhYi1pbWFnZW1hcC5odG1sCi1m
YXN0L2V2ZW50cy90YWItaXMtZm9jdXNhYmxlLWFzc2VydC5odG1sCi1mYXN0L2V2ZW50cy90YWJp
bmRleC1mb2N1cy1jaGFpbi5odG1sCiBmYXN0L2V2ZW50cy93aGVlbGV2ZW50LWluLWhvcml6b250
YWwtc2Nyb2xsYmFyLWluLXJ0bC5odG1sCiBmYXN0L2V2ZW50cy93aGVlbGV2ZW50LWluLXZlcnRp
Y2FsLXNjcm9sbGJhci1pbi1ydGwuaHRtbAogZmFzdC9ldmVudHMvem9vbS1kYmxjbGljay5odG1s
Ci1mYXN0L2ZpbGVzL2FwcGx5LWJsb2ItdXJsLXRvLWltZy5odG1sCiBmYXN0L2ZpbGVzL2FwcGx5
LWJsb2ItdXJsLXRvLXhoci5odG1sCi1mYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQtZXhlY3V0aW9u
LWNvbnRleHQtY3Jhc2guaHRtbAogZmFzdC9maWxlcy9maWxlLXJlYWRlci1hYm9ydC5odG1sCiBm
YXN0L2ZpbGVzL3JlYWQtYmxvYi1hc3luYy5odG1sCiBmYXN0L2ZpbGVzL3JlYWQtZmlsZS1hc3lu
Yy5odG1sCi1mYXN0L2Zvcm1zL2FjY2Vzcy1rZXkuaHRtbAotZmFzdC9mb3Jtcy9idXR0b24tZW50
ZXItY2xpY2suaHRtbAotZmFzdC9mb3Jtcy9idXR0b24tc3BhY2ViYXItY2xpY2suaHRtbAotZmFz
dC9mb3Jtcy9kaXNhYmxlZC1zZWFyY2gtaW5wdXQuaHRtbAotZmFzdC9mb3Jtcy9kaXNwbGF5LW5v
bmUtaW4tb25jaGFuZ2Uta2V5Ym9hcmQuaHRtbAogZmFzdC9mb3Jtcy9kcmFnLWludG8tdGV4dGFy
ZWEuaHRtbAogZmFzdC9mb3Jtcy9kcmFnLW91dC1vZi10ZXh0YXJlYS5odG1sCi1mYXN0L2Zvcm1z
L2VtcHR5LXRleHRhcmVhLXRvZ2dsZS1kaXNhYmxlZC5odG1sCi1mYXN0L2Zvcm1zL2VudGVyLWNs
aWNrcy1idXR0b25zLmh0bWwKLWZhc3QvZm9ybXMvZm9jdXMtY2hhbmdlLW9uLWtleXByZXNzLmh0
bWwKLWZhc3QvZm9ybXMvZm9jdXMtY29udHJvbC10by1wYWdlLmh0bWwKLWZhc3QvZm9ybXMvZm9j
dXMtc2VsZWN0aW9uLWlucHV0Lmh0bWwKLWZhc3QvZm9ybXMvZm9jdXMtc2VsZWN0aW9uLXRleHRh
cmVhLmh0bWwKIGZhc3QvZm9ybXMvZ2V0LWZpbGUtdXBsb2FkLmh0bWwKLWZhc3QvZm9ybXMvaW1w
bGljaXQtc3VibWlzc2lvbi5odG1sCiBmYXN0L2Zvcm1zL2lucHV0LWZpbGUtcmUtcmVuZGVyLmh0
bWwKLWZhc3QvZm9ybXMvaW5wdXQtbGl2ZS1wc2V1ZG8tc2VsZWN0b3JzLmh0bWwKLWZhc3QvZm9y
bXMvaW5wdXQtbnVtYmVyLWtleW9wZXJhdGlvbi5odG1sCi1mYXN0L2Zvcm1zL2lucHV0LXJhZGlv
LWNoZWNrZWQtdGFiLmh0bWwKIGZhc3QvZm9ybXMvaW5wdXQtcmVhZG9ubHktYXV0b3Njcm9sbC5o
dG1sCiBmYXN0L2Zvcm1zL2lucHV0LXRleHQtZG91YmxlLWNsaWNrLmh0bWwKIGZhc3QvZm9ybXMv
aW5wdXQtdGV4dC1kcmFnLWRvd24uaHRtbAotZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWVudGVyLmh0
bWwKLWZhc3QvZm9ybXMvaW5wdXQtdGV4dC1vcHRpb24tZGVsZXRlLmh0bWwKLWZhc3QvZm9ybXMv
aW5wdXQtdGV4dC1zY3JvbGwtbGVmdC1vbi1ibHVyLmh0bWwKLWZhc3QvZm9ybXMvaW5wdXQtdHlw
ZS1jaGFuZ2UtaW4tb25mb2N1cy1rZXlib2FyZC5odG1sCi1mYXN0L2Zvcm1zL2xlZ2VuZC1hY2Nl
c3Mta2V5Lmh0bWwKLWZhc3QvZm9ybXMvbGlzdGJveC1kZXNlbGVjdC1zY3JvbGwuaHRtbAotZmFz
dC9mb3Jtcy9saXN0Ym94LW9uY2hhbmdlLmh0bWwKLWZhc3QvZm9ybXMvbGlzdGJveC1zZWxlY3Rp
b24uaHRtbAogZmFzdC9mb3Jtcy9saXN0Ym94LXR5cGVhaGVhZC1jeXJpbGxpYy5odG1sCi1mYXN0
L2Zvcm1zL2xpc3Rib3gtdHlwZWFoZWFkLWVtcHR5Lmh0bWwKIGZhc3QvZm9ybXMvbGlzdGJveC10
eXBlYWhlYWQtZ3JlZWsuaHRtbAotZmFzdC9mb3Jtcy9saXN0Ym94LXR5cGVhaGVhZC1zY3JvbGwu
aHRtbAotZmFzdC9mb3Jtcy9vbmNoYW5nZS1lbnRlci1zdWJtaXQuaHRtbAogZmFzdC9mb3Jtcy9v
bnNlbGVjdC10ZXh0YXJlYS5odG1sCiBmYXN0L2Zvcm1zL29uc2VsZWN0LXRleHRmaWVsZC5odG1s
CiBmYXN0L2Zvcm1zL29wdGlvbi1tb3VzZWV2ZW50cy5odG1sCi1mYXN0L2Zvcm1zL3JhZGlvX2No
ZWNrZWRfbmFtZS5odG1sCi1mYXN0L2Zvcm1zL3JlbmRlci10ZXh0LWNyYXNoLmh0bWwKLWZhc3Qv
Zm9ybXMvcmVzdG9yZS1zZWxlY3Rpb24tYWZ0ZXItbGF5b3V0Lmh0bWwKLWZhc3QvZm9ybXMvc2Vh
cmNoLWV2ZW50LWRlbGF5Lmh0bWwKLWZhc3QvZm9ybXMvc2VsZWN0LWFjY2Vzc2tleS5odG1sCi1m
YXN0L2Zvcm1zL3NlbGVjdC1jYWNoZS1kZXN5bmNocm9uaXphdGlvbi5odG1sCi1mYXN0L2Zvcm1z
L3NlbGVjdC1kb3VibGUtb25jaGFuZ2UuaHRtbAotZmFzdC9mb3Jtcy9zZWxlY3QtZW1wdHktbGlz
dC5odG1sCi1mYXN0L2Zvcm1zL3NlbGVjdC1saXN0Ym94LWZvY3VzLWRpc3BsYXlub25lLmh0bWwK
LWZhc3QvZm9ybXMvc2VsZWN0LWxpc3Rib3gtbXVsdGlwbGUtbm8tZm9jdXNyaW5nLmh0bWwKLWZh
c3QvZm9ybXMvc2VsZWN0LW9wdGlvbi1hY2Nlc3NrZXktY3Jhc2guaHRtbAotZmFzdC9mb3Jtcy9z
ZWxlY3QtcG9wdXAtcGFnZWtleXMuaHRtbAotZmFzdC9mb3Jtcy9zZWxlY3Qtc2NyaXB0LW9uY2hh
bmdlLmh0bWwKLWZhc3QvZm9ybXMvc2VsZWN0LXR5cGUtYWhlYWQtbGlzdC1ib3gtbm8tc2VsZWN0
aW9uLmh0bWwKIGZhc3QvZm9ybXMvc2VsZWN0LXR5cGUtYWhlYWQtbm9uLWxhdGluLmh0bWwKIGZh
c3QvZm9ybXMvc2xpZGVyLWRlbGV0ZS13aGlsZS1kcmFnZ2luZy10aHVtYi5odG1sCi1mYXN0L2Zv
cm1zL3NsaWRlci1tb3VzZS1ldmVudHMuaHRtbAotZmFzdC9mb3Jtcy9zbGlkZXItb25jaGFuZ2Ut
ZXZlbnQuaHRtbAotZmFzdC9mb3Jtcy90YWJiaW5nLWlucHV0LWlmcmFtZS5odG1sCi1mYXN0L2Zv
cm1zL3RleHQtaW5wdXQtZXZlbnQuaHRtbAotZmFzdC9mb3Jtcy90ZXh0YXJlYS1hcnJvdy1uYXZp
Z2F0aW9uLmh0bWwKLWZhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuaHRtbAotZmFzdC9m
b3Jtcy90ZXh0YXJlYS1saXZlLXBzZXVkby1zZWxlY3RvcnMuaHRtbAotZmFzdC9mb3Jtcy90ZXh0
YXJlYS1zY3JvbGxlZC1lbmRsaW5lLWNhcmV0Lmh0bWwKLWZhc3QvZm9ybXMvdGV4dGFyZWEtdGV4
dGxlbmd0aC5odG1sCi1mYXN0L2Zvcm1zL3RleHRhcmVhLXR5cGUtc3BhY2VzLmh0bWwKLWZhc3Qv
Zm9ybXMvdGV4dGZpZWxkLWRyYWctaW50by1kaXNhYmxlZC5odG1sCi1mYXN0L2Zvcm1zL3RleHRm
aWVsZC1pbnNpZGUtYW5jaG9yLmh0bWwKLWZhc3QvZm9ybXMvdGV4dGZpZWxkLW9uY2hhbmdlLWRl
bGV0aW9uLmh0bWwKLWZhc3QvZm9ybXMvdGV4dGZpZWxkLW91dGxpbmUuaHRtbAotZmFzdC9mb3Jt
cy90ZXh0ZmllbGQtdG8tcGFzc3dvcmQtb24tZm9jdXMuaHRtbAotZmFzdC9mb3Jtcy90ZXh0aW5w
dXQtbm90LWZpcmVkLW9uLWVudGVyLWluLWlucHV0Lmh0bWwKLWZhc3QvZnJhbWVzL2lmcmFtZS13
aW5kb3ctZm9jdXMuaHRtbAotZmFzdC9mcmFtZXMvdGFrZS1mb2N1cy1mcm9tLWlmcmFtZS5odG1s
Ci1mYXN0L2hpc3RvcnkvaGlzdG9yeV9yZWxvYWQuaHRtbAogZmFzdC9oaXN0b3J5L3dpbmRvdy1v
cGVuLmh0bWwKIGZhc3QvbGlzdHMvZHJhZy1pbnRvLW1hcmtlci5odG1sCi1mYXN0L2xvYWRlci9w
b2xpY3ktZGVsZWdhdGUtYWN0aW9uLWhpdC10ZXN0LXpvb21lZC5odG1sCi1mYXN0L3JlcGFpbnQv
Zml4ZWQtbW92ZS1hZnRlci1rZXlib2FyZC1zY3JvbGwuaHRtbAogZmFzdC9yZXBhaW50L2phcGFu
ZXNlLXJsLXNlbGVjdGlvbi1yZXBhaW50Lmh0bWwKIGZhc3QvcmVwYWludC9yZXBhaW50LWFjcm9z
cy13cml0aW5nLW1vZGUtYm91bmRhcnkuaHRtbAogZmFzdC9yZXBhaW50L3NlbGVjdGlvbi1ybC5o
dG1sCkBAIC0zNzIsMjAgKzI0NCwxMSBAQCBodHRwL3Rlc3RzL2xvY2FsL2Zvcm1kYXRhL3NlbmQt
Zm9ybS1kYXRhCiBodHRwL3Rlc3RzL2xvY2FsL2Zvcm1kYXRhL3NlbmQtZm9ybS1kYXRhLmh0bWwK
IGh0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvdXBsb2FkLWV2ZW50cy5odG1sCiBodHRwL3Rlc3Rz
L21pc2MvYnViYmxlLWRyYWctZXZlbnRzLmh0bWwKLWh0dHAvdGVzdHMvbWlzYy9pc2luZGV4LXdp
dGgtbm8tZm9ybS1iYXNlLWhyZWYuaHRtbAotaHR0cC90ZXN0cy9taXNjL2lzaW5kZXgtd2l0aC1u
by1mb3JtLmh0bWwKLWh0dHAvdGVzdHMvbmF2aWdhdGlvbi9uby1yZWZlcnJlci1yZXNldC5odG1s
Ci1odHRwL3Rlc3RzL25hdmlnYXRpb24vbm8tcmVmZXJyZXItdGFyZ2V0LWJsYW5rLmh0bWwKIGh0
dHAvdGVzdHMvc2VjdXJpdHkvY2xpcGJvYXJkL2NsaXBib2FyZC1maWxlLWFjY2Vzcy5odG1sCiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2RhdGFUcmFuc2Zlci1zZXQtZGF0YS1maWxlLXVybC5odG1sCiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2RyYWctZHJvcC1zYW1lLXVuaXF1ZS1vcmlnaW4uaHRtbAogaHR0
cC90ZXN0cy9zZWN1cml0eS9kcmFnLW92ZXItcmVtb3RlLWNvbnRlbnQtaWZyYW1lLmh0bWwKLWh0
dHAvdGVzdHMvc2VjdXJpdHkvaXNvbGF0ZWRXb3JsZC91c2VyR2VzdHVyZUV2ZW50cy5odG1sCi1t
ZWRpYS9jb250cm9scy1kcmFnLXRpbWViYXIuaHRtbAogbWVkaWEvY29udHJvbHMtcmlnaHQtY2xp
Y2stb24tdGltZWJhci5odG1sCi1tZWRpYS9tZWRpYS1mdWxsc2NyZWVuLWlubGluZS5odG1sCi1t
ZWRpYS92aWRlby1jb250cm9scy12aXNpYmxlLWF1ZGlvLW9ubHkuaHRtbAotcGxhdGZvcm0vbWFj
L2VkaXRpbmcvZGVsZXRpbmcvYmFja3dhcmQtZGVsZXRlLmh0bWwKIHBsYXRmb3JtL21hYy9lZGl0
aW5nL3Bhc3RlYm9hcmQvZGF0YVRyYW5zZmVyLXNldC1kYXRhLWZpbGUtdXJsLmh0bWwKIHBsYXRm
b3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1zZWxlY3Rpb25zLXRvLWNvbnRlbnRlZGl0
YWJsZS5odG1sCiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stc2hv
dWxkLW5vdC1leHBhbmQtYWNyb3NzLWxpbmVzLmh0bWwKQEAgLTM5MywxMSArMjU2LDcgQEAgcGxh
dGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL3dvcmQtdGhhaQogcGxhdGZvcm0vbWFjL2Zhc3Qv
Zm9ybXMvbGlzdGJveC1zY3JvbGxiYXItaGl0LXRlc3QuaHRtbAogcGxhdGZvcm0vbWFjL2Zhc3Qv
b3ZlcmZsb3cvb3ZlcmZsb3ctc2Nyb2xsYmFyLWhpdC10ZXN0Lmh0bWwKIHBsdWdpbnMvY2xpY2tp
bmctbWlzc2luZy1wbHVnaW4tZmlyZXMtZGVsZWdhdGUuaHRtbAotcGx1Z2lucy9rZXlib2FyZC1l
dmVudHMuaHRtbAotcGx1Z2lucy9tb3VzZS1ldmVudHMuaHRtbAotcGx1Z2lucy9tb3VzZS1jbGlj
ay1pZnJhbWUtdG8tcGx1Z2luLmh0bWwKIHNjcm9sbGJhcnMvc2Nyb2xsYmFyLWlmcmFtZS1jbGlj
ay1kb2VzLW5vdC1ibHVyLWNvbnRlbnQuaHRtbAotc2Nyb2xsYmFycy9zY3JvbGxiYXItbWlzcy1t
b3VzZW1vdmUtZGlzYWJsZWQuaHRtbAogc2Nyb2xsYmFycy9zY3JvbGxldmVudC1pZnJhbWUtbm8t
c2Nyb2xsaW5nLXdoZWVsLmh0bWwKIAogc3ZnL2FuaW1hdGlvbnMvYW5pbVZhbC1iYXNpY3MuaHRt
bApAQCAtNDI2LDM5OCArMjg1LDEyIEBAIHN2Zy9hbmltYXRpb25zL2FuaW1hdGUtcGF0aC1uZXN0
ZWQtdHJhbnMKIHN2Zy9hbmltYXRpb25zL2FuaW1hdGUtcGF0aC10by1hbmltYXRpb24uaHRtbAog
c3ZnL2FuaW1hdGlvbnMvYW5pbWF0ZS1wb2ludHMuaHRtbAogc3ZnL2FuaW1hdGlvbnMvYW5pbWF0
ZS10ZXh0LW5lc3RlZC10cmFuc2Zvcm1zLmh0bWwKLXN2Zy9jdXN0b20vYWJzb2x1dGUtc2l6ZWQt
Y29udGVudC13aXRoLXJlc291cmNlcy54aHRtbAotc3ZnL2N1c3RvbS9jaXJjbGUtbW92ZS1pbnZh
bGlkYXRpb24uc3ZnCi1zdmcvY3VzdG9tL2NsaXAtcGF0aC1jaGlsZC1jaGFuZ2VzLnN2Zwotc3Zn
L2N1c3RvbS9jbGlwLXBhdGgtaHJlZi1jaGFuZ2VzLnN2Zwotc3ZnL2N1c3RvbS9jbGlwLXBhdGgt
aWQtY2hhbmdlcy5zdmcKLXN2Zy9jdXN0b20vY2xpcC1wYXRoLXVuaXRzLWNoYW5nZXMuc3ZnCi1z
dmcvY3VzdG9tL2RlZXAtZHluYW1pYy11cGRhdGVzLnN2Zwogc3ZnL2N1c3RvbS9mb3JlaWduT2Jq
ZWN0LWNyYXNoLW9uLWhvdmVyLnhtbAotc3ZnL2N1c3RvbS9nZXRzY3JlZW5jdG0taW4tc2Nyb2xs
YWJsZS1kaXYtYXJlYS1uZXN0ZWQueGh0bWwKLXN2Zy9jdXN0b20vZ2V0c2NyZWVuY3RtLWluLXNj
cm9sbGFibGUtZGl2LWFyZWEueGh0bWwKLXN2Zy9jdXN0b20vZ2V0c2NyZWVuY3RtLWluLXNjcm9s
bGFibGUtc3ZnLWFyZWEueGh0bWwKLXN2Zy9jdXN0b20vZ3JhZGllbnQtYXR0ci11cGRhdGUuc3Zn
Ci1zdmcvY3VzdG9tL2hpdC10ZXN0LXBhdGgtc3Ryb2tlLnN2Zwotc3ZnL2N1c3RvbS9oaXQtdGVz
dC1wYXRoLnN2Zwotc3ZnL2N1c3RvbS9oaXQtdGVzdC11bmNsb3NlZC1zdWJwYXRocy5zdmcKLXN2
Zy9jdXN0b20vaGl0LXRlc3Qtd2l0aC1ici54aHRtbAotc3ZnL2N1c3RvbS9ob3Zlci1kZWZhdWx0
LWZpbGwuc3ZnCi1zdmcvY3VzdG9tL2ltYWdlLWNsaXBwZWQtaGl0LnN2Zwotc3ZnL2N1c3RvbS9p
bm5lci1zdmctaGl0LXRlc3Quc3ZnCi1zdmcvY3VzdG9tL2pzLXVwZGF0ZS1jb250YWluZXIuc3Zn
Ci1zdmcvY3VzdG9tL2pzLXVwZGF0ZS1jb250YWluZXIyLnN2Zwotc3ZnL2N1c3RvbS9qcy11cGRh
dGUtZ3JhZGllbnQuc3ZnCi1zdmcvY3VzdG9tL2pzLXVwZGF0ZS1wYXRoLWNoYW5nZXMuc3ZnCi1z
dmcvY3VzdG9tL2pzLXVwZGF0ZS1wYXRoLXJlbW92YWwuc3ZnCi1zdmcvY3VzdG9tL2pzLXVwZGF0
ZS1wYXR0ZXJuLWNoaWxkLnN2Zwotc3ZnL2N1c3RvbS9qcy11cGRhdGUtcGF0dGVybi5zdmcKLXN2
Zy9jdXN0b20vanMtdXBkYXRlLXBvbHlnb24tY2hhbmdlcy5zdmcKLXN2Zy9jdXN0b20vanMtdXBk
YXRlLXBvbHlnb24tcmVtb3ZhbC5zdmcKLXN2Zy9jdXN0b20vanMtdXBkYXRlLXN0b3AtbGlua2Vk
LWdyYWRpZW50LnN2Zwotc3ZnL2N1c3RvbS9qcy11cGRhdGUtc3RvcC5zdmcKLXN2Zy9jdXN0b20v
anMtdXBkYXRlLXN0eWxlLnN2Zwotc3ZnL2N1c3RvbS9saW5raW5nLWEtMDMtYi1hbGwuc3ZnCi1z
dmcvY3VzdG9tL2xpbmtpbmctYS0wMy1iLXByZXNlcnZlQXNwZWN0UmF0aW8uc3ZnCi1zdmcvY3Vz
dG9tL2xpbmtpbmctYS0wMy1iLXRyYW5zZm9ybS5zdmcKLXN2Zy9jdXN0b20vbGlua2luZy1hLTAz
LWItdmlld0JveC10cmFuc2Zvcm0uc3ZnCi1zdmcvY3VzdG9tL2xpbmtpbmctYS0wMy1iLXZpZXdC
b3guc3ZnCi1zdmcvY3VzdG9tL2xpbmtpbmctYS0wMy1iLXZpZXdUYXJnZXQuc3ZnCi1zdmcvY3Vz
dG9tL2xpbmtpbmctYS0wMy1iLXpvb21BbmRQYW4uc3ZnCi1zdmcvY3VzdG9tL21hcmtlci1jaGFu
Z2VzLnN2Zwotc3ZnL2N1c3RvbS9tYXJrZXItY2hpbGQtY2hhbmdlcy1jc3Muc3ZnCi1zdmcvY3Vz
dG9tL21hcmtlci1jaGlsZC1jaGFuZ2VzLnN2Zwotc3ZnL2N1c3RvbS9tYXJrZXItc3Ryb2tlV2lk
dGgtY2hhbmdlcy5zdmcKLXN2Zy9jdXN0b20vbWFya2VyLXZpZXdCb3gtY2hhbmdlcy5zdmcKLXN2
Zy9jdXN0b20vbWFzay1jaGFuZ2VzLnN2Zwotc3ZnL2N1c3RvbS9tYXNrLWNoaWxkLWNoYW5nZXMu
c3ZnCiBzdmcvY3VzdG9tL21vdXNlLW1vdmUtb24tc3ZnLWNvbnRhaW5lci1zdGFuZGFsb25lLnN2
Zwogc3ZnL2N1c3RvbS9tb3VzZS1tb3ZlLW9uLXN2Zy1jb250YWluZXIueGh0bWwKIHN2Zy9jdXN0
b20vbW91c2UtbW92ZS1vbi1zdmctcm9vdC1zdGFuZGFsb25lLnN2Zwogc3ZnL2N1c3RvbS9tb3Vz
ZS1tb3ZlLW9uLXN2Zy1yb290LnhodG1sCi1zdmcvY3VzdG9tL3BvaW50ZXItZXZlbnRzLWltYWdl
LnN2Zwotc3ZnL2N1c3RvbS9wb2ludGVyLWV2ZW50cy1wYXRoLnN2Zwotc3ZnL2N1c3RvbS9wb2lu
dGVyLWV2ZW50cy10ZXh0LnN2Zwotc3ZnL2N1c3RvbS9wb2x5bGluZS1oaXR0ZXN0LnN2Zwotc3Zn
L2N1c3RvbS9wcmV2ZW50LWRlZmF1bHQuc3ZnCi1zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLWNv
bnRlbnQtd2l0aC1yZXNvdXJjZXMueGh0bWwKLXN2Zy9jdXN0b20vcmVwYWludC1vbi1jb25zdGFu
dC1zaXplLWNoYW5nZS5zdmcKLXN2Zy9jdXN0b20vcmVwYWludC1zdHJva2Utd2lkdGgtY2hhbmdl
cy5zdmcKLXN2Zy9jdXN0b20vcmVzb3VyY2UtaW52YWxpZGF0ZS1vbi10YXJnZXQtdXBkYXRlLnN2
Zwotc3ZnL2N1c3RvbS9zY3JvbGwtaGl0LXRlc3QueGh0bWwKLXN2Zy9jdXN0b20vc3Ryb2tlLXdp
ZHRoLWNsaWNrLnN2Zwotc3ZnL2N1c3RvbS90ZXh0LWhpdC10ZXN0LnN2Zwotc3ZnL2N1c3RvbS91
c2UtY2xpcHBlZC1oaXQuc3ZnCi1zdmcvY3VzdG9tL3VzZS1jc3MtZXZlbnRzLnN2Zwotc3ZnL2N1
c3RvbS91c2UtZWxlbWVudEluc3RhbmNlLWV2ZW50LXRhcmdldC5zdmcKLXN2Zy9jdXN0b20vdXNl
LWVsZW1lbnRJbnN0YW5jZS1tZXRob2RzLnN2Zwotc3ZnL2N1c3RvbS91c2UtZXZlbnQtaGFuZGxl
ci1vbi1yZWZlcmVuY2VkLWVsZW1lbnQuc3ZnCi1zdmcvY3VzdG9tL3VzZS1ldmVudC1oYW5kbGVy
LW9uLXVzZS1lbGVtZW50LnN2Zwogc3ZnL2N1c3RvbS91c2UtZXZlbnRzLWNyYXNoLnN2Zwotc3Zn
L2N1c3RvbS91c2UtaW5zdGFuY2VSb290LWFzLWV2ZW50LXRhcmdldC54aHRtbAotc3ZnL2N1c3Rv
bS91c2UtaW5zdGFuY2VSb290LWV2ZW50LWJ1YmJsaW5nLnhodG1sCi1zdmcvY3VzdG9tL3VzZS1p
bnN0YW5jZVJvb3QtZXZlbnQtbGlzdGVuZXJzLnhodG1sCi1zdmcvY3VzdG9tL3VzZS1zZXRBdHRy
aWJ1dGUtY3Jhc2guc3ZnCi1zdmcvY3VzdG9tL3ZpZXdCb3gtaGl0LnN2Zwotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdBRWxlbWVudC1kb20taHJlZi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHQUVsZW1lbnQtZG9tLXRhcmdldC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHQUVsZW1lbnQtc3ZnZG9tLWhyZWYtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0FFbGVtZW50LXN2Z2RvbS10YXJnZXQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0NpcmNsZUVsZW1lbnQtZG9tLWN4LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdD
aXJjbGVFbGVtZW50LWRvbS1jeS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2ly
Y2xlRWxlbWVudC1kb20tci1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2lyY2xl
RWxlbWVudC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0NpcmNsZUVsZW1lbnQtc3ZnZG9tLWN4LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdDaXJjbGVFbGVtZW50LXN2Z2RvbS1jeS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHQ2lyY2xlRWxlbWVudC1zdmdkb20tci1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHQ2lyY2xlRWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0NsaXBQYXRoLWluZmx1ZW5jZXMtaGl0VGVzdGluZy5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0NsaXBQYXRoRWxlbWVudC1kb20tY2xpcFBhdGhVbml0cy1hdHRyLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2xpcFBhdGhFbGVtZW50LXN2Z2RvbS1jbGlwUGF0
aFVuaXRzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDdXJzb3JFbGVtZW50LWRv
bS14LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDdXJzb3JFbGVtZW50LWRvbS15
LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDdXJzb3JFbGVtZW50LXN2Z2RvbS14
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDdXJzb3JFbGVtZW50LXN2Z2RvbS15
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1kb20tY3gt
YXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LWRvbS1jeS1h
dHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtZG9tLXJlcXVp
cmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1k
b20tcngtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LWRv
bS1yeS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtc3Zn
ZG9tLWN4LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1z
dmdkb20tY3ktcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50
LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxs
aXBzZUVsZW1lbnQtc3ZnZG9tLXJ4LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdF
bGxpcHNlRWxlbWVudC1zdmdkb20tcnktcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFQmxlbmRFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVCbGVuZEVsZW1lbnQtZG9tLWluMi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVCbGVuZEVsZW1lbnQtZG9tLW1vZGUtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFQmxlbmRFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVCbGVuZEVsZW1lbnQtc3ZnZG9tLWluMi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVCbGVuZEVsZW1lbnQtc3ZnZG9tLW1vZGUtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQtZG9tLXR5cGUtYXR0ci5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LWRvbS12YWx1ZXMtYXR0
ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LXN2Z2Rv
bS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb2xvck1hdHJpeEVsZW1l
bnQtc3ZnZG9tLXR5cGUtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29sb3JN
YXRyaXhFbGVtZW50LXN2Z2RvbS12YWx1ZXMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1kb20taW4tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1kb20taW4yLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtZG9tLWsxLWF0dHIuaHRtbAotc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtZG9tLWsyLWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtZG9tLWszLWF0dHIuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtZG9tLWs0LWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtZG9tLW9wZXJhdG9yLWF0
dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtc3ZnZG9t
LWluLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQt
c3ZnZG9tLWluMi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVF
bGVtZW50LXN2Z2RvbS1rMS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21w
b3NpdGVFbGVtZW50LXN2Z2RvbS1rMi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVDb21wb3NpdGVFbGVtZW50LXN2Z2RvbS1rMy1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LXN2Z2RvbS1rNC1wcm9wLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LXN2Z2RvbS1vcGVyYXRvci1wcm9wLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLWJpYXMt
YXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50
LWRvbS1kaXZpc29yLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZl
TWF0cml4RWxlbWVudC1kb20tZWRnZU1vZGUtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLWtlcm5lbE1hdHJpeC1hdHRy
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9t
LWtlcm5lbFVuaXRMZW5ndGgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29u
dm9sdmVNYXRyaXhFbGVtZW50LWRvbS1vcmRlci1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLXByZXNlcnZlQWxwaGEtYXR0ci5odG1s
Ci1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS10YXJn
ZXRYLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxl
bWVudC1kb20tdGFyZ2V0WS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252
b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLWJpYXMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LXN2Z2RvbS1kaXZpc29yLXByb3AuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20tZWRn
ZU1vZGUtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhF
bGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252
b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLWtlcm5lbE1hdHJpeC1wcm9wLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLWtlcm5lbFVuaXRM
ZW5ndGgtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhF
bGVtZW50LXN2Z2RvbS1vcmRlci1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVD
b252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLXByZXNlcnZlQWxwaGEtcHJvcC5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LXN2Z2RvbS10YXJnZXRY
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVu
dC1zdmdkb20tdGFyZ2V0WS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaWZm
dXNlTGlnaHRpbmdFbGVtZW50LWRvbS1kaWZmdXNlQ29uc3RhbnQtYXR0ci5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC1kb20taW4tYXR0ci5odG1s
Ci1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC1kb20tbGln
aHRpbmctY29sb3ItYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVzZUxp
Z2h0aW5nRWxlbWVudC1kb20tc3VyZmFjZVNjYWxlLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtbGlnaHRpbmctY29sb3ItY3NzLXByb3Au
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtc3Zn
ZG9tLWRpZmZ1c2VDb25zdGFudC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVE
aWZmdXNlTGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1zdXJmYWNlU2NhbGUtcHJv
cC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1k
b20taW4tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFw
RWxlbWVudC1kb20taW4yLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3Bs
YWNlbWVudE1hcEVsZW1lbnQtZG9tLXNjYWxlLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtZG9tLXhDaGFubmVsU2VsZWN0b3ItYXR0ci5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1kb20t
eUNoYW5uZWxTZWxlY3Rvci1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXNw
bGFjZW1lbnRNYXBFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LXN2Z2RvbS1pbjItcHJvcC5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1zdmdkb20tc2NhbGUt
cHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVu
dC1zdmdkb20teENoYW5uZWxTZWxlY3Rvci1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LXN2Z2RvbS15Q2hhbm5lbFNlbGVjdG9yLXByb3Au
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3RhbnRMaWdodEVsZW1lbnQtZG9tLWF6
aW11dGgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzdGFudExpZ2h0RWxl
bWVudC1kb20tZWxldmF0aW9uLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURp
c3RhbnRMaWdodEVsZW1lbnQtc3ZnZG9tLWF6aW11dGgtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFRGlzdGFudExpZ2h0RWxlbWVudC1zdmdkb20tZWxldmF0aW9uLXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUZsb29kRWxlbWVudC1kb20tZmxvb2QtY29sb3It
YXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRmxvb2RFbGVtZW50LWRvbS1mbG9v
ZC1vcGFjaXR5LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUZsb29kRWxlbWVu
dC1zdmdkb20tZmxvb2QtY29sb3ItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
Rmxvb2RFbGVtZW50LXN2Z2RvbS1mbG9vZC1vcGFjaXR5LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQtZG9tLXN0ZERldmlhdGlvbi1h
dHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVHYXVzc2lhbkJsdXJFbGVtZW50LWRv
bS1zdGREZXZpYXRpb24tY2FsbC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFR2F1c3Np
YW5CbHVyRWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFSW1hZ2VFbGVtZW50LWRvbS1wcmVzZXJ2ZUFzcGVjdFJhdGlvLWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRUltYWdlRWxlbWVudC1zdmdkb20tcHJlc2VydmVBc3BlY3RSYXRp
by1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVNZXJnZU5vZGVFbGVtZW50LWRv
bS1pbi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVNZXJnZU5vZGVFbGVtZW50
LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVNb3JwaG9sb2d5
RWxlbWVudC1kb20taW4tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTW9ycGhv
bG9neUVsZW1lbnQtZG9tLW9wZXJhdG9yLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRU1vcnBob2xvZ3lFbGVtZW50LWRvbS1yYWRpdXMtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFTW9ycGhvbG9neUVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRU1vcnBob2xvZ3lFbGVtZW50LXN2Z2RvbS1vcGVyYXRvci1wcm9w
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVNb3JwaG9sb2d5RWxlbWVudC1zdmdkb20t
cmFkaXVzLWNhbGwuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU9mZnNldEVsZW1lbnQt
ZG9tLWR4LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU9mZnNldEVsZW1lbnQt
ZG9tLWR5LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU9mZnNldEVsZW1lbnQt
ZG9tLWluLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU9mZnNldEVsZW1lbnQt
c3ZnZG9tLWR4LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU9mZnNldEVsZW1l
bnQtc3ZnZG9tLWR5LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU9mZnNldEVs
ZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVBvaW50
TGlnaHRFbGVtZW50LWRvbS14LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVBv
aW50TGlnaHRFbGVtZW50LWRvbS15LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RVBvaW50TGlnaHRFbGVtZW50LWRvbS16LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRVBvaW50TGlnaHRFbGVtZW50LXN2Z2RvbS14LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRVBvaW50TGlnaHRFbGVtZW50LXN2Z2RvbS15LXByb3AuaHRtbAotc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRVBvaW50TGlnaHRFbGVtZW50LXN2Z2RvbS16LXByb3AuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LWRvbS1pbi1hdHRy
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC1k
b20tc3BlY3VsYXJDb25zdGFudC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVT
cGVjdWxhckxpZ2h0aW5nRWxlbWVudC1kb20tc3BlY3VsYXJFeHBvbmVudC1hdHRyLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC1kb20tc3VyYWNl
U2NhbGUtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGlu
Z0VsZW1lbnQtcmVtb3ZlLWxpZ2h0U291cmNlLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQtc3ZnZG9tLXNwZWN1bGFyQ29u
c3RhbnQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGlu
Z0VsZW1lbnQtc3ZnZG9tLXNwZWN1bGFyRXhwb25lbnQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQtc3ZnZG9tLXN1cmFjZVNjYWxlLXBy
b3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtZG9tLWxp
bWl0aW5nQ29uZUFuZ2xlLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RM
aWdodEVsZW1lbnQtZG9tLXBvaW50c0F0WC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS1wb2ludHNBdFktYXR0ci5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1kb20tcG9pbnRzQXRaLWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtZG9tLXNwZWN1bGFyRXhw
b25lbnQtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVu
dC1kb20teC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVt
ZW50LWRvbS15LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVs
ZW1lbnQtZG9tLXotYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0
RWxlbWVudC1zdmdkb20tbGltaXRpbmdDb25lQW5nbGUtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1zdmdkb20tcG9pbnRzQXRYLXByb3AuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLXBvaW50c0F0
WS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LXN2
Z2RvbS1wb2ludHNBdFotcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExp
Z2h0RWxlbWVudC1zdmdkb20tc3BlY3VsYXJFeHBvbmVudC1wcm9wLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LXN2Z2RvbS14LXByb3AuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1zdmdkb20tei1wcm9wLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUaWxlRWxlbWVudC1kb20taW4tYXR0ci5odG1s
Ci1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVGlsZUVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVtZW50LWRvbS1iYXNlRnJl
cXVlbmN5LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVt
ZW50LWRvbS1udW1PY3RhdmVzLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1
cmJ1bGVuY2VFbGVtZW50LWRvbS1zZWVkLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRVR1cmJ1bGVuY2VFbGVtZW50LWRvbS1zdGl0Y2hUaWxlcy1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVudC1kb20tdHlwZS1hdHRyLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVudC1zdmdkb20tYmFzZUZyZXF1
ZW5jeS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVu
dC1zdmdkb20tbnVtT2N0YXZlcy1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVU
dXJidWxlbmNlRWxlbWVudC1zdmdkb20tc2VlZC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVudC1zdmdkb20tc3RpdGNoVGlsZXMtcHJvcC5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtc3ZnZG9tLXR5cGUtcHJv
cC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtZG9tLWZpbHRlclJl
cy1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1kb20tZmls
dGVyVW5pdHMtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQt
ZG9tLWhlaWdodC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVu
dC1kb20tcHJpbWl0aXZlVW5pdHMtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0Zp
bHRlckVsZW1lbnQtZG9tLXdpZHRoLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
aWx0ZXJFbGVtZW50LWRvbS14LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0
ZXJFbGVtZW50LWRvbS15LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJF
bGVtZW50LXN2Z2RvbS1maWx0ZXJSZXMtY2FsbC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZpbHRlckVsZW1lbnQtc3ZnZG9tLWZpbHRlclJlc1gtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtc3ZnZG9tLWZpbHRlclJlc1ktcHJvcC5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtc3ZnZG9tLWZpbHRlclVuaXRzLXByb3Au
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS1oZWlnaHQt
cHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtc3ZnZG9tLXBy
aW1pdGl2ZVVuaXRzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVt
ZW50LXN2Z2RvbS13aWR0aC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVy
RWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVy
RWxlbWVudC1zdmdkb20teS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVy
UHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLWRvbS1oZWlnaHQtYXR0ci5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1kb20tcmVz
dWx0LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFu
ZGFyZEF0dHJpYnV0ZXMtZG9tLXdpZHRoLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtZG9tLXgtYXR0ci5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1kb20t
eS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRh
cmRBdHRyaWJ1dGVzLXN2Z2RvbS1oZWlnaHQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1zdmdkb20tcmVzdWx0LXByb3Au
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJp
YnV0ZXMtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0
ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtc3ZnZG9tLXgtcHJvcC5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1zdmdkb20t
eS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQt
ZG9tLWhlaWdodC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVj
dEVsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGb3JlaWduT2JqZWN0RWxlbWVudC1kb20td2lkdGgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LWRvbS14LWF0dHIuaHRtbAotc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC1kb20teS1hdHRyLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQtc3ZnZG9tLWhlaWdodC1wcm9w
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQtc3ZnZG9t
LXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGb3JlaWduT2Jq
ZWN0RWxlbWVudC1zdmdkb20td2lkdGgtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZvcmVpZ25PYmplY3RFbGVtZW50LXN2Z2RvbS14LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC1zdmdkb20teS1wcm9wLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHR0VsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdHRWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1kb20taGVpZ2h0LWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9tLXByZXNlcnZlQXNwZWN0UmF0
aW8tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1kb20tcmVx
dWlyZWRGZWF0dXJlcy5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1k
b20td2lkdGgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1k
b20teC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LWRvbS15
LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtc3ZnZG9tLWhl
aWdodC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2Z2Rv
bS1wcmVzZXJ2ZUFzcGVjdFJhdGlvLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJ
bWFnZUVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdJbWFnZUVsZW1lbnQtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtc3ZnZG9tLXgtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1zdmdkb20teS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHTGluZUVsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1kb20teDEtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0xpbmVFbGVtZW50LWRvbS14Mi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHTGluZUVsZW1lbnQtZG9tLXkxLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdMaW5lRWxlbWVudC1kb20teTItYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xp
bmVFbGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHTGluZUVsZW1lbnQtc3ZnZG9tLXgxLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdMaW5lRWxlbWVudC1zdmdkb20teDItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR0xpbmVFbGVtZW50LXN2Z2RvbS15MS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHTGluZUVsZW1lbnQtc3ZnZG9tLXkyLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtZG9tLWdyYWRpZW50VHJhbnNmb3JtLWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtZG9tLWdyYWRpZW50
VW5pdHMtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50RWxl
bWVudC1kb20teDEtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRp
ZW50RWxlbWVudC1kb20teDItYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVh
ckdyYWRpZW50RWxlbWVudC1kb20teTEtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0xpbmVhckdyYWRpZW50RWxlbWVudC1kb20teTItYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC1zdmdkb20tZ3JhZGllbnRUcmFuc2Zvcm0tcHJv
cC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC1zdmdk
b20tZ3JhZGllbnRVbml0cy1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZWFy
R3JhZGllbnRFbGVtZW50LXN2Z2RvbS14MS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LXN2Z2RvbS14Mi1wcm9wLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LXN2Z2RvbS15MS1wcm9wLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LXN2Z2RvbS15Mi1wcm9w
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1kb20tbWFya2VySGVp
Z2h0LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LWRvbS1t
YXJrZXJVbml0cy1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVu
dC1kb20tbWFya2VyV2lkdGgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtl
ckVsZW1lbnQtZG9tLW9yaWVudC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFy
a2VyRWxlbWVudC1kb20tcmVmWC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFy
a2VyRWxlbWVudC1kb20tcmVmWS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFy
a2VyRWxlbWVudC1zdmdkb20tbWFya2VySGVpZ2h0LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdNYXJrZXJFbGVtZW50LXN2Z2RvbS1tYXJrZXJVbml0cy1wcm9wLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20tbWFya2VyV2lkdGgtcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLW9yaWVudEFu
Z2xlLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LXN2Z2Rv
bS1vcmllbnRUeXBlLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVt
ZW50LXN2Z2RvbS1yZWZYLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJF
bGVtZW50LXN2Z2RvbS1yZWZZLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJr
ZXJFbGVtZW50LXN2Z2RvbS1zZXRPcmllbnRUb0FuZ2xlLWNhbGwuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LXN2Z2RvbS1zZXRPcmllbnRUb0F1dG8tY2FsbC5odG1s
Ci1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVtZW50LWRvbS1oZWlnaHQtYXR0ci5odG1s
Ci1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVtZW50LWRvbS1tYXNrQ29udGVudFVuaXRz
LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1kb20tbWFza1Vu
aXRzLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1kb20td2lk
dGgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVtZW50LWRvbS14LWF0
dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1kb20teS1hdHRyLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtc3ZnZG9tLWhlaWdodC1wcm9w
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtc3ZnZG9tLW1hc2tDb250
ZW50VW5pdHMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVtZW50LXN2
Z2RvbS1tYXNrVW5pdHMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVt
ZW50LXN2Z2RvbS13aWR0aC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0Vs
ZW1lbnQtc3ZnZG9tLXgtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVt
ZW50LXN2Z2RvbS15LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXRoRWxlbWVu
dC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdGhF
bGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHUGF0dGVybkVsZW1lbnQtZG9tLWhlaWdodC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHUGF0dGVybkVsZW1lbnQtZG9tLXBhdHRlcm5Db250ZW50VW5pdHMtYXR0ci5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50LWRvbS1wYXR0ZXJuVHJhbnNmb3Jt
LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1kb20tcGF0
dGVyblVuaXRzLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVu
dC1kb20td2lkdGgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVt
ZW50LWRvbS14LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVu
dC1kb20teS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQt
c3ZnZG9tLWhlaWdodC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVs
ZW1lbnQtc3ZnZG9tLXBhdHRlcm5Db250ZW50VW5pdHMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50LXN2Z2RvbS1wYXR0ZXJuVHJhbnNmb3JtLXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1zdmdkb20tcGF0dGVyblVu
aXRzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1zdmdk
b20td2lkdGgtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50
LXN2Z2RvbS14LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVu
dC1zdmdkb20teS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUG9seWdvbkVsZW1l
bnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQb2x5
Z29uRWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR1BvbHlsaW5lRWxlbWVudC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR1BvbHlsaW5lRWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1kb20tY3gt
YXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1k
b20tY3ktYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxl
bWVudC1kb20tZngtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRp
ZW50RWxlbWVudC1kb20tZnktYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlh
bEdyYWRpZW50RWxlbWVudC1kb20tZ3JhZGllbnRUcmFuc2Zvcm0tYXR0ci5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1kb20tZ3JhZGllbnRVbml0cy1h
dHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LWRv
bS1yLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1l
bnQtc3ZnZG9tLWN4LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFk
aWVudEVsZW1lbnQtc3ZnZG9tLWN5LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdS
YWRpYWxHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLWZ4LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLWZ5LXByb3AuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLWdyYWRpZW50VHJh
bnNmb3JtLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVs
ZW1lbnQtc3ZnZG9tLWdyYWRpZW50VW5pdHMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1zdmdkb20tci1wcm9wLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtZG9tLWhlaWdodC1hdHRyLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1kb20td2lkdGgtYXR0ci5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LWRvbS14LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdSZWN0RWxlbWVudC1kb20teS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHUmVjdEVsZW1lbnQtc3ZnZG9tLWhlaWdodC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1zdmdkb20td2lkdGgtcHJvcC5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LXN2Z2RvbS14LXByb3AuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1zdmdkb20teS1wcm9wLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHU1ZHRWxlbWVudC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR1NWR0VsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUUmVmRWxlbWVudC1kb20taHJlZi1hdHRyLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHVGV4dEVsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMu
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUZXh0RWxlbWVudC1kb20tdHJhbnNmb3JtLWF0
dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUZXh0RWxlbWVudC1zdmdkb20tcmVxdWly
ZWRGZWF0dXJlcy5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1RleHRFbGVtZW50LXN2Z2Rv
bS1yb3RhdGUtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1RleHRFbGVtZW50LXN2
Z2RvbS10cmFuc2Zvcm0tcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1VzZUVsZW1l
bnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdVc2VF
bGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9maWx0ZXJzL2ZpbHRlci13
aWR0aC11cGRhdGUuc3ZnCi1zdmcvdGV4dC9mb3JlaWduT2JqZWN0LXJlcGFpbnQueG1sCiBzdmcv
dGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nLXNxdWVlemUtMS5zdmcKIHN2Zy90ZXh0L3Nl
bGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmctc3F1ZWV6ZS0yLnN2Zwogc3ZnL3RleHQvc2VsZWN0LXRl
eHRMZW5ndGgtc3BhY2luZy1zcXVlZXplLTMuc3ZnCkBAIC04NDMsOSArMzE2LDYgQEAgc3ZnL3Rl
eHQvc2VsZWN0LXgtbGlzdC13aXRoLXRzcGFucy0yLnN2Zwogc3ZnL3RleHQvc2VsZWN0LXgtbGlz
dC13aXRoLXRzcGFucy0zLnN2Zwogc3ZnL3RleHQvc2VsZWN0LXgtbGlzdC13aXRoLXRzcGFucy00
LnN2Zwogc3ZnL3RleHQvc2VsZWN0aW9uLWRvdWJsZWNsaWNrLnN2Zwotc3ZnL3RleHQvc2VsZWN0
aW9uLXRyaXBsZWNsaWNrLnN2Zwotc3ZnL3pvb20vcGFnZS96b29tLWNvb3Jkcy12aWV3YXR0ci0w
MS1iLnN2Zwotc3ZnL3pvb20vdGV4dC96b29tLWNvb3Jkcy12aWV3YXR0ci0wMS1iLnN2ZwogCiAj
IFdlYktpdDIgbmVlZHMgbGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJlbmNlCiAj
IDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDIxOTc+Cg==
</data>
<flag name="review"
          id="88164"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107203</attachid>
            <date>2011-09-13 11:42:00 -0700</date>
            <delta_ts>2011-09-13 12:25:51 -0700</delta_ts>
            <desc>patch 4</desc>
            <filename>57515_4.patch</filename>
            <type>text/plain</type>
            <size>163259</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDk1MDM0KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDktMTMgIENoYW5nIFNo
dSAgPGNzaHVAd2Via2l0Lm9yZz4KKworICAgICAgICBbV0syXSBbTWFjXSBJbXBsZW1lbnQgS2V5
RG93biBmdW5jdGlvbiBmb3IgV2ViS2l0MiBFdmVudFNlbmRlci4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3NTE1CisKKyAgICAgICAgVGhlIGNvZGUg
Y2hhbmdlIGluIFdlYktpdDIgYWxsb3dzIGtleSBldmVudHMgYmVpbmcgc2VudCB0byBXZWJQcm9j
ZXNzIGZyb20gVUlQcm9jZXNzIHN5bmNocm9ub3VzbHkuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcDoKKyAg
ICAgICAgKFdLUGFnZVNldFNob3VsZFNlbmRLZXlib2FyZEV2ZW50U3luY2hyb25vdXNseSk6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZhdGUuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpX
ZWJQYWdlUHJveHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmhhbmRsZUtleWJv
YXJkRXZlbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAg
KFdlYktpdDo6V2ViUGFnZVByb3h5OjpzZXRTaG91bGRTZW5kS2V5Ym9hcmRFdmVudFN5bmNocm9u
b3VzbHkpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFnZTo6a2V5RXZlbnRTeW5jRm9yVGVzdGluZyk6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKwogMjAxMS0wOS0xMiAgUnl1YW4gQ2hvaSAgPHJ5dWFu
LmNob2lAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkocmV2aXNpb24g
OTUwMjUpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTgwLDYgKzE4MCw3IEBAIFdlYlBhZ2VQcm94eTo6V2ViUGFnZVByb3h5
KFBhZ2VDbGllbnQqIHAKICAgICAsIG1fbWFpbkZyYW1lSXNQaW5uZWRUb0xlZnRTaWRlKGZhbHNl
KQogICAgICwgbV9tYWluRnJhbWVJc1Bpbm5lZFRvUmlnaHRTaWRlKGZhbHNlKQogICAgICwgbV9y
ZW5kZXJUcmVlU2l6ZSgwKQorICAgICwgbV9zaG91bGRTZW5kS2V5Ym9hcmRFdmVudFN5bmNocm9u
b3VzbHkoZmFsc2UpCiB7CiAjaWZuZGVmIE5ERUJVRwogICAgIHdlYlBhZ2VQcm94eUNvdW50ZXIu
aW5jcmVtZW50KCk7CkBAIC04NjAsNyArODYxLDEyIEBAIHZvaWQgV2ViUGFnZVByb3h5OjpoYW5k
bGVLZXlib2FyZEV2ZW50KGMKICAgICBtX2tleUV2ZW50UXVldWUuYXBwZW5kKGV2ZW50KTsKIAog
ICAgIHByb2Nlc3MoKS0+cmVzcG9uc2l2ZW5lc3NUaW1lcigpLT5zdGFydCgpOwotICAgIHByb2Nl
c3MoKS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6S2V5RXZlbnQoZXZlbnQpLCBtX3BhZ2VJRCk7
CisgICAgaWYgKG1fc2hvdWxkU2VuZEtleWJvYXJkRXZlbnRTeW5jaHJvbm91c2x5KSB7CisgICAg
ICAgIGJvb2wgaGFuZGxlZCA9IGZhbHNlOworICAgICAgICBwcm9jZXNzKCktPnNlbmRTeW5jKE1l
c3NhZ2VzOjpXZWJQYWdlOjpLZXlFdmVudFN5bmNGb3JUZXN0aW5nKGV2ZW50KSwgTWVzc2FnZXM6
OldlYlBhZ2U6OktleUV2ZW50U3luY0ZvclRlc3Rpbmc6OlJlcGx5KGhhbmRsZWQpLCBtX3BhZ2VJ
RCk7CisgICAgICAgIGRpZFJlY2VpdmVFdmVudChldmVudC50eXBlKCksIGhhbmRsZWQpOworICAg
IH0gZWxzZQorICAgICAgICBwcm9jZXNzKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OktleUV2
ZW50KGV2ZW50KSwgbV9wYWdlSUQpOwogfQogCiAjaWYgRU5BQkxFKEdFU1RVUkVfRVZFTlRTKQpJ
bmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gOTUw
MjUpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTU2MCw3ICs1NjAsOSBAQCBwdWJsaWM6CiAgICAgV2ViQ29yZTo6SW50UmVjdCB2
aXNpYmxlU2Nyb2xsZXJUaHVtYlJlY3QoKSBjb25zdCB7IHJldHVybiBtX3Zpc2libGVTY3JvbGxl
clRodW1iUmVjdDsgfQogCiAgICAgdWludDY0X3QgcmVuZGVyVHJlZVNpemUoKSBjb25zdCB7IHJl
dHVybiBtX3JlbmRlclRyZWVTaXplOyB9Ci0gCisKKyAgICB2b2lkIHNldFNob3VsZFNlbmRLZXli
b2FyZEV2ZW50U3luY2hyb25vdXNseShib29sIHN5bmMpIHsgbV9zaG91bGRTZW5kS2V5Ym9hcmRF
dmVudFN5bmNocm9ub3VzbHkgPSBzeW5jOyB9OworCiBwcml2YXRlOgogICAgIFdlYlBhZ2VQcm94
eShQYWdlQ2xpZW50KiwgUGFzc1JlZlB0cjxXZWJQcm9jZXNzUHJveHk+LCBXZWJQYWdlR3JvdXAq
LCB1aW50NjRfdCBwYWdlSUQpOwogCkBAIC05MzAsNiArOTMyLDggQEAgcHJpdmF0ZToKICAgICB1
aW50NjRfdCBtX3JlbmRlclRyZWVTaXplOwogCiAgICAgc3RhdGljIFdLUGFnZURlYnVnUGFpbnRG
bGFncyBzX2RlYnVnUGFpbnRGbGFnczsKKworICAgIGJvb2wgbV9zaG91bGRTZW5kS2V5Ym9hcmRF
dmVudFN5bmNocm9ub3VzbHk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCShyZXZpc2lvbiA5NTAyNSkK
KysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC01ODEsMyArNTgxLDcgQEAgV0tJbWFnZVJlZiBXS1BhZ2VDcmVhdGVTbmFwc2hvdE9m
VmlzaWJsZQogICAgIHJldHVybiAwOwogfQogCit2b2lkIFdLUGFnZVNldFNob3VsZFNlbmRLZXli
b2FyZEV2ZW50U3luY2hyb25vdXNseShXS1BhZ2VSZWYgcGFnZSwgYm9vbCBzeW5jKQoreworICAg
IHRvSW1wbChwYWdlKS0+c2V0U2hvdWxkU2VuZEtleWJvYXJkRXZlbnRTeW5jaHJvbm91c2x5KHN5
bmMpOworfQpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZh
dGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdl
UHJpdmF0ZS5oCShyZXZpc2lvbiA5NTAyNSkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQy9XS1BhZ2VQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTY5LDYgKzY5LDggQEAgV0tf
RVhQT1JUIHZvaWQgV0tQYWdlRHJhd1BhZ2VzVG9QREYoV0tQYQogLy8gRklYTUUgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2OTc5OiBSZW1vdmUgdGhpcyBzeW5jIGNh
bGwuCiBXS19FWFBPUlQgV0tJbWFnZVJlZiBXS1BhZ2VDcmVhdGVTbmFwc2hvdE9mVmlzaWJsZUNv
bnRlbnQoV0tQYWdlUmVmIHBhZ2UpOwogCitXS19FWFBPUlQgdm9pZCBXS1BhZ2VTZXRTaG91bGRT
ZW5kS2V5Ym9hcmRFdmVudFN5bmNocm9ub3VzbHkoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgc3luYyk7
CisKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiA5NTAyNSkKKysrIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTEwMCw2ICsxMTAwLDE1IEBAIHZvaWQgV2ViUGFnZTo6a2V5RXZlbnQoY29uc3QgV2Vi
S2V5Ym9hcmQKICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFJlY2VpdmVFdmVu
dChzdGF0aWNfY2FzdDx1aW50MzJfdD4oa2V5Ym9hcmRFdmVudC50eXBlKCkpLCBoYW5kbGVkKSk7
CiB9CiAKK3ZvaWQgV2ViUGFnZTo6a2V5RXZlbnRTeW5jRm9yVGVzdGluZyhjb25zdCBXZWJLZXli
b2FyZEV2ZW50JiBrZXlib2FyZEV2ZW50LCBib29sJiBoYW5kbGVkKQoreworICAgIEN1cnJlbnRF
dmVudCBjdXJyZW50RXZlbnQoa2V5Ym9hcmRFdmVudCk7CisKKyAgICBoYW5kbGVkID0gaGFuZGxl
S2V5RXZlbnQoa2V5Ym9hcmRFdmVudCwgbV9wYWdlLmdldCgpKTsKKyAgICBpZiAoIWhhbmRsZWQp
CisgICAgICAgIGhhbmRsZWQgPSBwZXJmb3JtRGVmYXVsdEJlaGF2aW9yRm9yS2V5RXZlbnQoa2V5
Ym9hcmRFdmVudCk7Cit9CisKICNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCiBzdGF0aWMgYm9v
bCBoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgV2ViR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQs
IFBhZ2UqIHBhZ2UpCiB7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmgJKHJldmlzaW9uIDk1MDI1KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtNDc3LDYgKzQ3Nyw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBtb3VzZUV2ZW50KGNvbnN0IFdlYk1vdXNlRXZlbnQmKTsKICAgICB2
b2lkIHdoZWVsRXZlbnQoY29uc3QgV2ViV2hlZWxFdmVudCYpOwogICAgIHZvaWQga2V5RXZlbnQo
Y29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOworICAgIHZvaWQga2V5RXZlbnRTeW5jRm9yVGVzdGlu
Zyhjb25zdCBXZWJLZXlib2FyZEV2ZW50JiwgYm9vbCYpOwogI2lmIEVOQUJMRShHRVNUVVJFX0VW
RU5UUykKICAgICB2b2lkIGdlc3R1cmVFdmVudChjb25zdCBXZWJHZXN0dXJlRXZlbnQmKTsKICNl
bmRpZgpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVz
c2FnZXMuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UubWVzc2FnZXMuaW4JKHJldmlzaW9uIDk1MDI1KQorKysgU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAg
LTMzLDYgKzMzLDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZSB7CiAgICAgVmlld1dpbGxFbmRMaXZl
UmVzaXplKCkKIAogICAgIEtleUV2ZW50KFdlYktpdDo6V2ViS2V5Ym9hcmRFdmVudCBldmVudCkK
KyAgICBLZXlFdmVudFN5bmNGb3JUZXN0aW5nKFdlYktpdDo6V2ViS2V5Ym9hcmRFdmVudCBldmVu
dCkgLT4gKGJvb2wgaGFuZGxlZCkKICAgICBNb3VzZUV2ZW50KFdlYktpdDo6V2ViTW91c2VFdmVu
dCBldmVudCkKICAgICBXaGVlbEV2ZW50KFdlYktpdDo6V2ViV2hlZWxFdmVudCBldmVudCkKICNp
ZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA5NTAzNCkKKysrIFRvb2xzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDExLTA5LTEzICBDaGFuZyBTaHUg
IDxjc2h1QHdlYmtpdC5vcmc+CisKKyAgICAgICAgW1dLMl0gW01hY10gSW1wbGVtZW50IEtleURv
d24gZnVuY3Rpb24gZm9yIFdlYktpdDIgRXZlbnRTZW5kZXIuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzUxNQorCisgICAgICAgIFRoZSBjb2RlIGNo
YW5nZSBpbiBXZWJLaXRUZXN0UnVubmVyIGZpcnN0IHNlbmRzIGtleWRvd24gZXZlbnQgZnJvbSBJ
bmplY3RlZEJ1bmRsZSB0bworICAgICAgICBUZXN0Q29udHJvbGxlciBzeW5jaHJvbm91c2x5LiBU
aGUgbGF0dGVyIHRoZW4gc2VuZHMgc2ltdWxhdGVkIGV2ZW50IHRvIFdlYktpdDIgbW9kdWxlLAor
ICAgICAgICB3aGljaCBpcyBzeW5jaHJvbm91cywgdG9vLgorCisgICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNlbmRlclBy
b3h5Lmg6IEFkZGVkLgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5OjpFdmVudFNlbmRl
clByb3h5KToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRp
bmdzL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaWRsOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5u
ZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHA6CisgICAgICAgIChX
VFI6OkV2ZW50U2VuZGluZ0NvbnRyb2xsZXI6OmtleURvd24pOgorICAgICAgICAqIFdlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5oOgorICAgICAg
ICAqIFdlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3Lmg6CisgICAgICAgIChXVFI6OlBs
YXRmb3JtV2ViVmlldzo6cGxhdGZvcm1XaW5kb3cpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5u
ZXIvVGVzdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6VGVz
dENvbnRyb2xsZXIpOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6ZGlkUmVjZWl2ZVN5
bmNocm9ub3VzTWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogV2ViS2l0VGVz
dFJ1bm5lci9UZXN0Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvV2Vi
S2l0VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFdlYktp
dFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW06IEFkZGVkLgorICAgICAgICAoV1RS
OjpidWlsZE1vZGlmaWVyRmxhZ3MpOgorICAgICAgICAoV1RSOjpFdmVudFNlbmRlclByb3h5Ojpr
ZXlEb3duKToKKwogMjAxMS0wOS0xMiAgTGVhbmRybyBQZXJlaXJhICA8bGVhbmRyb0Bwcm9mdXNp
b24ubW9iaT4KIAogICAgICAgICBbRUZMXSBEUlQ6IEFkZCBEdW1wUmVuZGVyVHJlZUVmbC5oCklu
ZGV4OiBUb29scy9XZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJveHkuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL0V2ZW50U2VuZGVyUHJveHkuaAkocmV2aXNpb24g
MCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvRXZlbnRTZW5kZXJQcm94eS5oCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jw
b3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYg
RXZlbnRTZW5kZXJQcm94eV9oCisjZGVmaW5lIEV2ZW50U2VuZGVyUHJveHlfaAorCituYW1lc3Bh
Y2UgV1RSIHsKKworY2xhc3MgVGVzdENvbnRyb2xsZXI7CisKK2NsYXNzIEV2ZW50U2VuZGVyUHJv
eHkgeworcHVibGljOgorICAgIEV2ZW50U2VuZGVyUHJveHkoVGVzdENvbnRyb2xsZXIqIHRlc3RD
b250cm9sbGVyKSA6IG1fdGVzdENvbnRyb2xsZXIodGVzdENvbnRyb2xsZXIpIHsgfQorCisgICAg
dm9pZCBrZXlEb3duKFdLU3RyaW5nUmVmIGtleSwgV0tFdmVudE1vZGlmaWVycywgdW5zaWduZWQg
bG9jYXRpb24sIGRvdWJsZSB0aW1lc3RhbXApOworCitwcml2YXRlOgorICAgIFRlc3RDb250cm9s
bGVyKiBtX3Rlc3RDb250cm9sbGVyOworfTsKKworfSAvLyBuYW1lc3BhY2UgV1RSCisKKyNlbmRp
ZiAvLyBFdmVudFNlbmRlclByb3h5X2gKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvUGxh
dGZvcm1XZWJWaWV3LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0
Zm9ybVdlYlZpZXcuaAkocmV2aXNpb24gOTUwMjUpCisrKyBUb29scy9XZWJLaXRUZXN0UnVubmVy
L1BsYXRmb3JtV2ViVmlldy5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw2ICs2MSw3IEBAIHB1Ymxp
YzoKIAogICAgIFdLUGFnZVJlZiBwYWdlKCk7CiAgICAgUGxhdGZvcm1XS1ZpZXcgcGxhdGZvcm1W
aWV3KCkgeyByZXR1cm4gbV92aWV3OyB9CisgICAgUGxhdGZvcm1XaW5kb3cgcGxhdGZvcm1XaW5k
b3coKSB7IHJldHVybiBtX3dpbmRvdzsgfQogICAgIHZvaWQgcmVzaXplVG8odW5zaWduZWQgd2lk
dGgsIHVuc2lnbmVkIGhlaWdodCk7CiAgICAgdm9pZCBmb2N1cygpOwogCkluZGV4OiBUb29scy9X
ZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9X
ZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAkocmV2aXNpb24gOTUwMjUpCisrKyBU
b29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMzcsNiArMzcsMTAgQEAKICNpbmNsdWRlIDxjc3RkaW8+CiAjaW5jbHVkZSA8d3RmL1Bhc3NP
d25QdHIuaD4KIAorI2lmIFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJFdmVudFNlbmRlclByb3h5
LmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdUUiB7CiAKIHN0YXRpYyBjb25zdCBkb3VibGUgZGVm
YXVsdExvbmdUaW1lb3V0ID0gMzA7CkBAIC02OSw2ICs3Myw5IEBAIFRlc3RDb250cm9sbGVyOjpU
ZXN0Q29udHJvbGxlcihpbnQgYXJnYywKICAgICAsIG1fZGlkUHJpbnRXZWJQcm9jZXNzQ3Jhc2hl
ZE1lc3NhZ2UoZmFsc2UpCiAgICAgLCBtX3Nob3VsZEV4aXRXaGVuV2ViUHJvY2Vzc0NyYXNoZXMo
dHJ1ZSkKICAgICAsIG1fYmVmb3JlVW5sb2FkUmV0dXJuVmFsdWUodHJ1ZSkKKyNpZiBQTEFURk9S
TShNQUMpCisgICAgLCBtX2V2ZW50U2VuZGVyUHJveHkobmV3IEV2ZW50U2VuZGVyUHJveHkodGhp
cykpCisjZW5kaWYKIHsKICAgICBpbml0aWFsaXplKGFyZ2MsIGFyZ3YpOwogICAgIGNvbnRyb2xs
ZXIgPSB0aGlzOwpAQCAtNTAxLDYgKzUwOCwzNCBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjpkaWRS
ZWNlaXZlTWVzc2FnZUZyCiAKIFdLUmV0YWluUHRyPFdLVHlwZVJlZj4gVGVzdENvbnRyb2xsZXI6
OmRpZFJlY2VpdmVTeW5jaHJvbm91c01lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5kbGUoV0tTdHJpbmdS
ZWYgbWVzc2FnZU5hbWUsIFdLVHlwZVJlZiBtZXNzYWdlQm9keSkKIHsKKyNpZiBQTEFURk9STShN
QUMpCisgICAgaWYgKFdLU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcobWVzc2FnZU5hbWUsICJF
dmVudFNlbmRlciIpKSB7CisgICAgICAgIEFTU0VSVChXS0dldFR5cGVJRChtZXNzYWdlQm9keSkg
PT0gV0tEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpOworICAgICAgICBXS0RpY3Rpb25hcnlSZWYgbWVz
c2FnZUJvZHlEaWN0aW9uYXJ5ID0gc3RhdGljX2Nhc3Q8V0tEaWN0aW9uYXJ5UmVmPihtZXNzYWdl
Qm9keSk7CisKKyAgICAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHN1Yk1lc3NhZ2VLZXko
QWRvcHRXSywgV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIlN1Yk1lc3NhZ2UiKSk7Cisg
ICAgICAgIFdLU3RyaW5nUmVmIHN1Yk1lc3NhZ2VOYW1lID0gc3RhdGljX2Nhc3Q8V0tTdHJpbmdS
ZWY+KFdLRGljdGlvbmFyeUdldEl0ZW1Gb3JLZXkobWVzc2FnZUJvZHlEaWN0aW9uYXJ5LCBzdWJN
ZXNzYWdlS2V5LmdldCgpKSk7CisKKyAgICAgICAgaWYgKFdLU3RyaW5nSXNFcXVhbFRvVVRGOENT
dHJpbmcoc3ViTWVzc2FnZU5hbWUsICJLZXlEb3duIikpIHsKKyAgICAgICAgICAgIFdLUmV0YWlu
UHRyPFdLU3RyaW5nUmVmPiBrZXlLZXkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhD
U3RyaW5nKCJLZXkiKSk7CisgICAgICAgICAgICBXS1N0cmluZ1JlZiBrZXkgPSBzdGF0aWNfY2Fz
dDxXS1N0cmluZ1JlZj4oV0tEaWN0aW9uYXJ5R2V0SXRlbUZvcktleShtZXNzYWdlQm9keURpY3Rp
b25hcnksIGtleUtleS5nZXQoKSkpOworCisgICAgICAgICAgICBXS1JldGFpblB0cjxXS1N0cmlu
Z1JlZj4gbW9kaWZpZXJzS2V5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmlu
ZygiTW9kaWZpZXJzIikpOworICAgICAgICAgICAgV0tFdmVudE1vZGlmaWVycyBtb2RpZmllcnMg
PSBzdGF0aWNfY2FzdDxXS0V2ZW50TW9kaWZpZXJzPihXS1VJbnQ2NEdldFZhbHVlKHN0YXRpY19j
YXN0PFdLVUludDY0UmVmPihXS0RpY3Rpb25hcnlHZXRJdGVtRm9yS2V5KG1lc3NhZ2VCb2R5RGlj
dGlvbmFyeSwgbW9kaWZpZXJzS2V5LmdldCgpKSkpKTsKKworICAgICAgICAgICAgV0tSZXRhaW5Q
dHI8V0tTdHJpbmdSZWY+IGxvY2F0aW9uS2V5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhV
VEY4Q1N0cmluZygiTG9jYXRpb24iKSk7CisgICAgICAgICAgICB1bnNpZ25lZCBsb2NhdGlvbiA9
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihXS1VJbnQ2NEdldFZhbHVlKHN0YXRpY19jYXN0PFdLVUlu
dDY0UmVmPihXS0RpY3Rpb25hcnlHZXRJdGVtRm9yS2V5KG1lc3NhZ2VCb2R5RGljdGlvbmFyeSwg
bG9jYXRpb25LZXkuZ2V0KCkpKSkpOworCisgICAgICAgICAgICBXS1JldGFpblB0cjxXS1N0cmlu
Z1JlZj4gdGltZXN0YW1wS2V5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmlu
ZygiVGltZXN0YW1wIikpOworICAgICAgICAgICAgZG91YmxlIHRpbWVzdGFtcCA9IFdLRG91Ymxl
R2V0VmFsdWUoc3RhdGljX2Nhc3Q8V0tEb3VibGVSZWY+KFdLRGljdGlvbmFyeUdldEl0ZW1Gb3JL
ZXkobWVzc2FnZUJvZHlEaWN0aW9uYXJ5LCB0aW1lc3RhbXBLZXkuZ2V0KCkpKSk7CisKKyAgICAg
ICAgICAgIC8vIEZvcndhcmQgdG8gV2ViUHJvY2VzcworICAgICAgICAgICAgbV9ldmVudFNlbmRl
clByb3h5LT5rZXlEb3duKGtleSwgbW9kaWZpZXJzLCBsb2NhdGlvbiwgdGltZXN0YW1wKTsKKyAg
ICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgIH0KKyNlbmRpZgogICAgIHJldHVybiBtX2N1cnJlbnRJbnZvY2F0aW9uLT5kaWRS
ZWNlaXZlU3luY2hyb25vdXNNZXNzYWdlRnJvbUluamVjdGVkQnVuZGxlKG1lc3NhZ2VOYW1lLCBt
ZXNzYWdlQm9keSk7CiB9CiAKSW5kZXg6IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRy
b2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9s
bGVyLmgJKHJldmlzaW9uIDk1MDI1KQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29u
dHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw3IEBAIG5hbWVzcGFjZSBXVFIg
ewogCiBjbGFzcyBUZXN0SW52b2NhdGlvbjsKIGNsYXNzIFBsYXRmb3JtV2ViVmlldzsKK2NsYXNz
IEV2ZW50U2VuZGVyUHJveHk7CiAKIC8vIEZJWE1FOiBSZW5hbWUgdGhpcyBUZXN0UnVubmVyPwog
Y2xhc3MgVGVzdENvbnRyb2xsZXIgewpAQCAtMTI2LDYgKzEyNyw4IEBAIHByaXZhdGU6CiAgICAg
Ym9vbCBtX3Nob3VsZEV4aXRXaGVuV2ViUHJvY2Vzc0NyYXNoZXM7CiAgICAgCiAgICAgYm9vbCBt
X2JlZm9yZVVubG9hZFJldHVyblZhbHVlOworCisgICAgRXZlbnRTZW5kZXJQcm94eSogbV9ldmVu
dFNlbmRlclByb3h5OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RSCkluZGV4OiBUb29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRT
ZW5kaW5nQ29udHJvbGxlci5jcHAJKHJldmlzaW9uIDk1MDI1KQorKysgVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250cm9sbGVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjksOSArMjksMTMgQEAKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZS5oIgog
I2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZS5oIgogI2luY2x1ZGUgIkpTRXZlbnRTZW5kaW5n
Q29udHJvbGxlci5oIgorI2luY2x1ZGUgIlN0cmluZ0Z1bmN0aW9ucy5oIgorI2luY2x1ZGUgPFdl
YktpdDIvV0tCdW5kbGUuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlRnJhbWUuaD4KICNp
bmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlUGFnZVByaXZhdGUuaD4KICNpbmNsdWRlIDxXZWJLaXQy
L1dLQnVuZGxlUHJpdmF0ZS5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tNdXRhYmxlRGljdGlvbmFy
eS5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tOdW1iZXIuaD4KIAogbmFtZXNwYWNlIFdUUiB7CiAK
QEAgLTIwNSw0ICsyMDksMzYgQEAgdm9pZCBFdmVudFNlbmRpbmdDb250cm9sbGVyOjptYWtlV2lu
ZG93TwogICAgIHNldFByb3BlcnR5KGNvbnRleHQsIHdpbmRvd09iamVjdCwgImV2ZW50U2VuZGVy
IiwgdGhpcywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmli
dXRlRG9udERlbGV0ZSwgZXhjZXB0aW9uKTsKIH0KIAordm9pZCBFdmVudFNlbmRpbmdDb250cm9s
bGVyOjprZXlEb3duKEpTU3RyaW5nUmVmIGtleSwgSlNWYWx1ZVJlZiBtb2RpZmllckFycmF5LCBp
bnQgbG9jYXRpb24pCit7CisgICAgV0tCdW5kbGVQYWdlUmVmIHBhZ2UgPSBJbmplY3RlZEJ1bmRs
ZTo6c2hhcmVkKCkucGFnZSgpLT5wYWdlKCk7CisgICAgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSA9
IFdLQnVuZGxlUGFnZUdldE1haW5GcmFtZShwYWdlKTsKKyAgICBKU0NvbnRleHRSZWYgY29udGV4
dCA9IFdLQnVuZGxlRnJhbWVHZXRKYXZhU2NyaXB0Q29udGV4dChmcmFtZSk7CisgICAgV0tFdmVu
dE1vZGlmaWVycyBtb2RpZmllcnMgPSBwYXJzZU1vZGlmaWVyQXJyYXkoY29udGV4dCwgbW9kaWZp
ZXJBcnJheSk7CisKKyAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gRXZlbnRTZW5kZXJNZXNz
YWdlTmFtZShBZG9wdFdLLCBXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiRXZlbnRTZW5k
ZXIiKSk7CisgICAgV0tSZXRhaW5QdHI8V0tNdXRhYmxlRGljdGlvbmFyeVJlZj4gRXZlbnRTZW5k
ZXJNZXNzYWdlQm9keShBZG9wdFdLLCBXS011dGFibGVEaWN0aW9uYXJ5Q3JlYXRlKCkpOworCisg
ICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHN1Yk1lc3NhZ2VLZXkoQWRvcHRXSywgV0tTdHJp
bmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIlN1Yk1lc3NhZ2UiKSk7CisgICAgV0tSZXRhaW5QdHI8
V0tTdHJpbmdSZWY+IHN1Yk1lc3NhZ2VOYW1lKEFkb3B0V0ssIFdLU3RyaW5nQ3JlYXRlV2l0aFVU
RjhDU3RyaW5nKCJLZXlEb3duIikpOworICAgIFdLRGljdGlvbmFyeUFkZEl0ZW0oRXZlbnRTZW5k
ZXJNZXNzYWdlQm9keS5nZXQoKSwgc3ViTWVzc2FnZUtleS5nZXQoKSwgc3ViTWVzc2FnZU5hbWUu
Z2V0KCkpOworCisgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IGtleUtleSA9IGFkb3B0V0so
V0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIktleSIpKTsKKyAgICBXS0RpY3Rpb25hcnlB
ZGRJdGVtKEV2ZW50U2VuZGVyTWVzc2FnZUJvZHkuZ2V0KCksIGtleUtleS5nZXQoKSwgdG9XSyhr
ZXkpLmdldCgpKTsKKworICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBtb2RpZmllcnNLZXkg
PSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCJNb2RpZmllcnMiKSk7Cisg
ICAgV0tSZXRhaW5QdHI8V0tVSW50NjRSZWY+IG1vZGlmaWVyc1JlZiA9IFdLVUludDY0Q3JlYXRl
KG1vZGlmaWVycyk7CisgICAgV0tEaWN0aW9uYXJ5QWRkSXRlbShFdmVudFNlbmRlck1lc3NhZ2VC
b2R5LmdldCgpLCBtb2RpZmllcnNLZXkuZ2V0KCksIG1vZGlmaWVyc1JlZi5nZXQoKSk7CisKKyAg
ICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gbG9jYXRpb25LZXkgPSBhZG9wdFdLKFdLU3RyaW5n
Q3JlYXRlV2l0aFVURjhDU3RyaW5nKCJMb2NhdGlvbiIpKTsKKyAgICBXS1JldGFpblB0cjxXS1VJ
bnQ2NFJlZj4gbG9jYXRpb25SZWYgPSBXS1VJbnQ2NENyZWF0ZShsb2NhdGlvbik7CisgICAgV0tE
aWN0aW9uYXJ5QWRkSXRlbShFdmVudFNlbmRlck1lc3NhZ2VCb2R5LmdldCgpLCBsb2NhdGlvbktl
eS5nZXQoKSwgbG9jYXRpb25SZWYuZ2V0KCkpOworCisgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdS
ZWY+IHRpbWVzdGFtcEtleSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmco
IlRpbWVzdGFtcCIpKTsKKyAgICBXS1JldGFpblB0cjxXS0RvdWJsZVJlZj4gdGltZVJlZiA9IFdL
RG91YmxlQ3JlYXRlKG1fdGltZSk7CisgICAgV0tEaWN0aW9uYXJ5QWRkSXRlbShFdmVudFNlbmRl
ck1lc3NhZ2VCb2R5LmdldCgpLCB0aW1lc3RhbXBLZXkuZ2V0KCksIHRpbWVSZWYuZ2V0KCkpOwor
CisgICAgV0tCdW5kbGVQb3N0U3luY2hyb25vdXNNZXNzYWdlKEluamVjdGVkQnVuZGxlOjpzaGFy
ZWQoKS5idW5kbGUoKSwgRXZlbnRTZW5kZXJNZXNzYWdlTmFtZS5nZXQoKSwgRXZlbnRTZW5kZXJN
ZXNzYWdlQm9keS5nZXQoKSwgMCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdUUgpJbmRleDogVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250cm9sbGVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9F
dmVudFNlbmRpbmdDb250cm9sbGVyLmgJKHJldmlzaW9uIDk1MDI1KQorKysgVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250cm9sbGVyLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQ4LDYgKzQ4LDggQEAgcHVibGljOgogICAgIHZvaWQgbW91c2VNb3ZlVG8o
aW50IHgsIGludCB5KTsKICAgICB2b2lkIGxlYXBGb3J3YXJkKGludCBtaWxsaXNlY29uZHMpOwog
CisgICAgdm9pZCBrZXlEb3duKEpTU3RyaW5nUmVmIGtleSwgSlNWYWx1ZVJlZiBtb2RpZmllckFy
cmF5LCBpbnQgbG9jYXRpb24pOworCiAgICAgLy8gWm9vbSBmdW5jdGlvbnMuCiAgICAgdm9pZCB0
ZXh0Wm9vbUluKCk7CiAgICAgdm9pZCB0ZXh0Wm9vbU91dCgpOwpJbmRleDogVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9CaW5kaW5ncy9FdmVudFNlbmRpbmdDb250cm9sbGVy
LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L0JpbmRpbmdzL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaWRsCShyZXZpc2lvbiA5NTAyNSkKKysr
IFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvRXZlbnRTZW5k
aW5nQ29udHJvbGxlci5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMxLDggQEAgbW9kdWxl
IFdUUiB7CiAgICAgICAgIHZvaWQgbW91c2VNb3ZlVG8oaW4gbG9uZyB4LCBpbiBsb25nIHkpOwog
ICAgICAgICB2b2lkIGxlYXBGb3J3YXJkKGluIGxvbmcgbWlsbGlzZWNvbmRzKTsKIAorICAgICAg
ICB2b2lkIGtleURvd24oaW4gRE9NU3RyaW5nIGtleSwgaW4gb2JqZWN0IG1vZGlmaWVyQXJyYXks
IGluIGxvbmcgbG9jYXRpb24pOworCiAgICAgICAgIC8vIFpvb20gZnVuY3Rpb25zLgogICAgICAg
ICB2b2lkIHRleHRab29tSW4oKTsKICAgICAgICAgdm9pZCB0ZXh0Wm9vbU91dCgpOwpJbmRleDog
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9XZWJLaXRUZXN0UnVubmVyLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9XZWJLaXRUZXN0
UnVubmVyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDk1MDI1KQorKysgVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9XZWJLaXRUZXN0UnVubmVyLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKIC8qIEJlZ2luIFBCWEJ1aWxk
RmlsZSBzZWN0aW9uICovCiAJCTUzMjJGQjQzMTNGREEwQ0QwMDQxQUJDQyAvKiBDeWNsaWNSZWR1
bmRhbmN5Q2hlY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTMyMkZCNDExM0ZEQTBDRDAwNDFBQkNDIC8qIEN5Y2xpY1JlZHVuZGFuY3lDaGVjay5j
cHAgKi87IH07CiAJCTUzMjJGQjQ2MTNGREEwRUEwMDQxQUJDQyAvKiBQaXhlbER1bXBTdXBwb3J0
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzMjJG
QjQ0MTNGREEwRUEwMDQxQUJDQyAvKiBQaXhlbER1bXBTdXBwb3J0LmNwcCAqLzsgfTsKKwkJNTY3
MEI4MjgxMzg2RkNBNTAwMkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJveHkubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NjcwQjgyNzEzODZGQ0E1MDAyRUIz
NTUgLyogRXZlbnRTZW5kZXJQcm94eS5tbSAqLzsgfTsKIAkJNjUxMEE3ODIxMUVDNjQzODAwNDEw
ODY3IC8qIEFIRU1fX19fLlRURiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNjUxMEE3NzcxMUVDNjQzODAwNDEwODY3IC8qIEFIRU1fX19fLlRURiAqLzsg
fTsKIAkJNjUxMEE3ODMxMUVDNjQzODAwNDEwODY3IC8qIENvbG9yQml0cy50dGYgaW4gUmVzb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1MTBBNzc4MTFFQzY0Mzgw
MDQxMDg2NyAvKiBDb2xvckJpdHMudHRmICovOyB9OwogCQk2NTEwQTc4NDExRUM2NDM4MDA0MTA4
NjcgLyogV2ViS2l0V2VpZ2h0V2F0Y2hlcjEwMC50dGYgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1MTBBNzc5MTFFQzY0MzgwMDQxMDg2NyAvKiBXZWJL
aXRXZWlnaHRXYXRjaGVyMTAwLnR0ZiAqLzsgfTsKQEAgLTg3LDYgKzg4LDggQEAKIAkJNTMyMkZC
NDIxM0ZEQTBDRDAwNDFBQkNDIC8qIEN5Y2xpY1JlZHVuZGFuY3lDaGVjay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDeWNsaWNSZWR1bmRhbmN5Q2hlY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTMyMkZCNDQxM0ZEQTBFQTAwNDFBQkNDIC8qIFBpeGVsRHVt
cFN1cHBvcnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGl4ZWxE
dW1wU3VwcG9ydC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzMjJGQjQ1MTNG
REEwRUEwMDQxQUJDQyAvKiBQaXhlbER1bXBTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBpeGVsRHVtcFN1cHBvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTY3MEI4MjYxMzg2RkMxMzAwMkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJveHkuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRTZW5kZXJQcm94eS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1NjcwQjgyNzEzODZGQ0E1MDAyRUIzNTUgLyogRXZlbnRT
ZW5kZXJQcm94eS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEV2
ZW50U2VuZGVyUHJveHkubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTY1MTBBNzc3
MTFFQzY0MzgwMDQxMDg2NyAvKiBBSEVNX19fXy5UVEYgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBmaWxlOyBuYW1lID0gIkFIRU1fX19fLlRURiI7IHBh
dGggPSAiZm9udHMvQUhFTV9fX18uVFRGIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NjUxMEE3NzgxMUVDNjQzODAwNDEwODY3IC8qIENvbG9yQml0cy50dGYgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBmaWxlOyBuYW1lID0gQ29sb3JCaXRz
LnR0ZjsgcGF0aCA9IGZvbnRzL0NvbG9yQml0cy50dGY7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTY1MTBBNzc5MTFFQzY0MzgwMDQxMDg2NyAvKiBXZWJLaXRXZWlnaHRXYXRjaGVyMTAw
LnR0ZiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZp
bGU7IG5hbWUgPSBXZWJLaXRXZWlnaHRXYXRjaGVyMTAwLnR0ZjsgcGF0aCA9IGZvbnRzL1dlYktp
dFdlaWdodFdhdGNoZXIxMDAudHRmOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTk3
LDYgKzIwMCw3IEBACiAJCQkJQkM3OTMzRkUxMThGN0M3NDAwNUVBOEUyIC8qIG1hYyAqLywKIAkJ
CQk1MzIyRkI0MTEzRkRBMENEMDA0MUFCQ0MgLyogQ3ljbGljUmVkdW5kYW5jeUNoZWNrLmNwcCAq
LywKIAkJCQk1MzIyRkI0MjEzRkRBMENEMDA0MUFCQ0MgLyogQ3ljbGljUmVkdW5kYW5jeUNoZWNr
LmggKi8sCisJCQkJNTY3MEI4MjYxMzg2RkMxMzAwMkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJveHku
aCAqLywKIAkJCQk1MzIyRkI0NDEzRkRBMEVBMDA0MUFCQ0MgLyogUGl4ZWxEdW1wU3VwcG9ydC5j
cHAgKi8sCiAJCQkJNTMyMkZCNDUxM0ZEQTBFQTAwNDFBQkNDIC8qIFBpeGVsRHVtcFN1cHBvcnQu
aCAqLywKIAkJCQlCQzc5MzRERDExOTA2NkVDMDA1RUE4RTIgLyogUGxhdGZvcm1XZWJWaWV3Lmgg
Ki8sCkBAIC0yOTIsNiArMjk2LDcgQEAKIAkJQkM3OTMzRkUxMThGN0M3NDAwNUVBOEUyIC8qIG1h
YyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJNTY3MEI4
MjcxMzg2RkNBNTAwMkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJveHkubW0gKi8sCiAJCQkJQkM3OTMz
RkYxMThGN0M4NDAwNUVBOEUyIC8qIG1haW4ubW0gKi8sCiAJCQkJQkM3OTM0RTcxMTkwNjg0NjAw
NUVBOEUyIC8qIFBsYXRmb3JtV2ViVmlld01hYy5tbSAqLywKIAkJCQlCQzhDNzk1QjExRDI3ODVE
MDA0NTM1QTEgLyogVGVzdENvbnRyb2xsZXJNYWMubW0gKi8sCkBAIC00NzAsNiArNDc1LDcgQEAK
IAkJCQlCQzhDNzk1QzExRDI3ODVEMDA0NTM1QTEgLyogVGVzdENvbnRyb2xsZXJNYWMubW0gaW4g
U291cmNlcyAqLywKIAkJCQlCQ0Q3RDJGODExOTIxMjc4MDA2REI3RUUgLyogVGVzdEludm9jYXRp
b24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM5MTkyMDUxMzMzRTRGODAwMzAxMURDIC8qIFRl
c3RJbnZvY2F0aW9uQ0cuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTY3MEI4MjgxMzg2RkNBNTAw
MkVCMzU1IC8qIEV2ZW50U2VuZGVyUHJveHkubW0gaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQly
dW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5kZXg6IFRvb2xz
L1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXJQcm94eS5tbQkocmV2aXNpb24g
MCkKKysrIFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW0JKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMjExIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMSBOb2tp
YSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiRXZlbnRTZW5kZXJQcm94eS5oIgorCisjaW1wb3J0
ICJTdHJpbmdGdW5jdGlvbnMuaCIKKyNpbXBvcnQgIlBsYXRmb3JtV2ViVmlldy5oIgorI2ltcG9y
dCAiVGVzdENvbnRyb2xsZXIuaCIKKyNpbXBvcnQgPFdlYktpdDIvV0tQYWdlUHJpdmF0ZS5oPgor
I2ltcG9ydCA8V2ViS2l0Mi9XS1N0cmluZy5oPgorCituYW1lc3BhY2UgV1RSIHsKKworc3RhdGlj
IGludCBidWlsZE1vZGlmaWVyRmxhZ3MoV0tFdmVudE1vZGlmaWVycyBtb2RpZmllcnMpCit7Cisg
ICAgaW50IGZsYWdzID0gMDsKKyAgICBpZiAobW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnND
b250cm9sS2V5KQorICAgICAgICBmbGFncyB8PSBOU0NvbnRyb2xLZXlNYXNrOworICAgIGlmICht
b2RpZmllcnMgJiBrV0tFdmVudE1vZGlmaWVyc1NoaWZ0S2V5KQorICAgICAgICBmbGFncyB8PSBO
U1NoaWZ0S2V5TWFzazsKKyAgICBpZiAobW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnNBbHRL
ZXkpCisgICAgICAgIGZsYWdzIHw9IE5TQWx0ZXJuYXRlS2V5TWFzazsKKyAgICBpZiAobW9kaWZp
ZXJzICYga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5KQorICAgICAgICBmbGFncyB8PSBOU0NvbW1h
bmRLZXlNYXNrOworICAgIHJldHVybiBmbGFnczsKK30KKwordm9pZCBFdmVudFNlbmRlclByb3h5
OjprZXlEb3duKFdLU3RyaW5nUmVmIGtleVJlZiwgV0tFdmVudE1vZGlmaWVycyBtb2RpZmllcnNS
ZWYsIHVuc2lnbmVkIGludCBrZXlMb2NhdGlvbiwgZG91YmxlIHRpbWVzdGFtcCkKK3sKKyAgICBO
U1N0cmluZyogY2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOnRvU1REKGtl
eVJlZikuY19zdHIoKSAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2Rp
bmc6W05TU3RyaW5nIGRlZmF1bHRDU3RyaW5nRW5jb2RpbmddXTsKKworICAgIE5TU3RyaW5nICpl
dmVudENoYXJhY3RlciA9IGNoYXJhY3RlcjsKKyAgICB1bnNpZ25lZCBzaG9ydCBrZXlDb2RlID0g
MDsKKyAgICBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJsZWZ0QXJyb3ciXSkgewor
ICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNMZWZ0QXJyb3dGdW5jdGlvbktleTsKKyAgICAg
ICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxl
bmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4N0I7CisgICAgfSBlbHNlIGlmIChbY2hhcmFj
dGVyIGlzRXF1YWxUb1N0cmluZzpAInJpZ2h0QXJyb3ciXSkgeworICAgICAgICBjb25zdCB1bmlj
aGFyIGNoID0gTlNSaWdodEFycm93RnVuY3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVy
ID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAg
IGtleUNvZGUgPSAweDdDOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJp
bmc6QCJ1cEFycm93Il0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TVXBBcnJvd0Z1
bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9IFtOU1N0cmluZyBzdHJpbmdXaXRo
Q2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBrZXlDb2RlID0gMHg3RTsKKyAgICB9
IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiZG93bkFycm93Il0pIHsKKyAg
ICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRG93bkFycm93RnVuY3Rpb25LZXk7CisgICAgICAg
IGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5n
dGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDdEOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3Rl
ciBpc0VxdWFsVG9TdHJpbmc6QCJwYWdlVXAiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNo
ID0gTlNQYWdlVXBGdW5jdGlvbktleTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJp
bmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9
IDB4NzQ7CisgICAgfSBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAInBhZ2VE
b3duIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TUGFnZURvd25GdW5jdGlvbktl
eTsKKyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3Rl
cnM6JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4Nzk7CisgICAgfSBlbHNlIGlm
IChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImhvbWUiXSkgeworICAgICAgICBjb25zdCB1
bmljaGFyIGNoID0gTlNIb21lRnVuY3Rpb25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0g
W05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtl
eUNvZGUgPSAweDczOworICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6
QCJlbmQiXSkgeworICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNFbmRGdW5jdGlvbktleTsK
KyAgICAgICAgZXZlbnRDaGFyYWN0ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6
JmNoIGxlbmd0aDoxXTsKKyAgICAgICAga2V5Q29kZSA9IDB4Nzc7CisgICAgfSBlbHNlIGlmIChb
Y2hhcmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAImluc2VydCJdKSB7CisgICAgICAgIGNvbnN0IHVu
aWNoYXIgY2ggPSBOU0luc2VydEZ1bmN0aW9uS2V5OworICAgICAgICBldmVudENoYXJhY3RlciA9
IFtOU1N0cmluZyBzdHJpbmdXaXRoQ2hhcmFjdGVyczomY2ggbGVuZ3RoOjFdOworICAgICAgICBr
ZXlDb2RlID0gMHg3MjsKKyAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5n
OkAiZGVsZXRlIl0pIHsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9IE5TRGVsZXRlRnVuY3Rp
b25LZXk7CisgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFy
YWN0ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDc1OworICAgIH0gZWxz
ZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJwcmludFNjcmVlbiJdKSB7CisgICAg
ICAgIGNvbnN0IHVuaWNoYXIgY2ggPSBOU1ByaW50U2NyZWVuRnVuY3Rpb25LZXk7CisgICAgICAg
IGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5n
dGg6MV07CisgICAgICAgIGtleUNvZGUgPSAweDA7IC8vIFRoZXJlIGlzIG5vIGtub3duIHZpcnR1
YWwga2V5IGNvZGUgZm9yIFByaW50U2NyZWVuLgorICAgIH0KKworICAgIC8vIENvbXBhcmUgdGhl
IGlucHV0IHN0cmluZyB3aXRoIHRoZSBmdW5jdGlvbi1rZXkgbmFtZXMgZGVmaW5lZCBieSB0aGUg
RE9NIHNwZWMgKGkuZS4gIkYxIiwuLi4sIkYyNCIpLgorICAgIC8vIElmIHRoZSBpbnB1dCBzdHJp
bmcgaXMgYSBmdW5jdGlvbi1rZXkgbmFtZSwgc2V0IGl0cyBrZXkgY29kZS4KKyAgICBmb3IgKHVu
c2lnbmVkIGkgPSAxOyBpIDw9IDI0OyBpKyspIHsKKyAgICAgICAgaWYgKFtjaGFyYWN0ZXIgaXNF
cXVhbFRvU3RyaW5nOltOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiRiV1IiwgaV1dKSB7Cisg
ICAgICAgICAgICBjb25zdCB1bmljaGFyIGNoID0gTlNGMUZ1bmN0aW9uS2V5ICsgKGkgLSAxKTsK
KyAgICAgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDaGFyYWN0
ZXJzOiZjaCBsZW5ndGg6MV07CisgICAgICAgICAgICBzd2l0Y2ggKGkpIHsKKyAgICAgICAgICAg
ICAgICBjYXNlIDE6IGtleUNvZGUgPSAweDdBOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IDI6IGtleUNvZGUgPSAweDc4OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDM6IGtleUNv
ZGUgPSAweDYzOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDQ6IGtleUNvZGUgPSAweDc2
OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDU6IGtleUNvZGUgPSAweDYwOyBicmVhazsK
KyAgICAgICAgICAgICAgICBjYXNlIDY6IGtleUNvZGUgPSAweDYxOyBicmVhazsKKyAgICAgICAg
ICAgICAgICBjYXNlIDc6IGtleUNvZGUgPSAweDYyOyBicmVhazsKKyAgICAgICAgICAgICAgICBj
YXNlIDg6IGtleUNvZGUgPSAweDY0OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDk6IGtl
eUNvZGUgPSAweDY1OyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDEwOiBrZXlDb2RlID0g
MHg2RDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxMToga2V5Q29kZSA9IDB4Njc7IGJy
ZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTI6IGtleUNvZGUgPSAweDZGOyBicmVhazsKKyAg
ICAgICAgICAgICAgICBjYXNlIDEzOiBrZXlDb2RlID0gMHg2OTsgYnJlYWs7CisgICAgICAgICAg
ICAgICAgY2FzZSAxNDoga2V5Q29kZSA9IDB4NkI7IGJyZWFrOworICAgICAgICAgICAgICAgIGNh
c2UgMTU6IGtleUNvZGUgPSAweDcxOyBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDE2OiBr
ZXlDb2RlID0gMHg2QTsgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAxNzoga2V5Q29kZSA9
IDB4NDA7IGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMTg6IGtleUNvZGUgPSAweDRGOyBi
cmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIDE5OiBrZXlDb2RlID0gMHg1MDsgYnJlYWs7Cisg
ICAgICAgICAgICAgICAgY2FzZSAyMDoga2V5Q29kZSA9IDB4NUE7IGJyZWFrOworICAgICAgICAg
ICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgLy8gRklYTUU6IE5vIGtleUNvZGUgaXMgc2V0
IGZvciBtb3N0IGtleXMuCisgICAgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiXHQi
XSkKKyAgICAgICAga2V5Q29kZSA9IDB4MzA7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0Vx
dWFsVG9TdHJpbmc6QCIgIl0pCisgICAgICAgIGtleUNvZGUgPSAweDMxOworICAgIGVsc2UgaWYg
KFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiXHIiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4
MjQ7CisgICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJcbiJdKQorICAg
ICAgICBrZXlDb2RlID0gMHg0QzsKKyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0
cmluZzpAIlx4OCJdKQorICAgICAgICBrZXlDb2RlID0gMHgzMzsKKyAgICBlbHNlIGlmIChbY2hh
cmFjdGVyIGlzRXF1YWxUb1N0cmluZzpAIjciXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MUE7Cisg
ICAgZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCI1Il0pCisgICAgICAgIGtl
eUNvZGUgPSAweDE3OworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAi
OSJdKQorICAgICAgICBrZXlDb2RlID0gMHgxOTsKKyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlz
RXF1YWxUb1N0cmluZzpAIjAiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MUQ7CisgICAgZWxzZSBp
ZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJhIl0pCisgICAgICAgIGtleUNvZGUgPSAw
eDAwOworICAgIGVsc2UgaWYgKFtjaGFyYWN0ZXIgaXNFcXVhbFRvU3RyaW5nOkAiYiJdKQorICAg
ICAgICBrZXlDb2RlID0gMHgwQjsKKyAgICBlbHNlIGlmIChbY2hhcmFjdGVyIGlzRXF1YWxUb1N0
cmluZzpAImQiXSkKKyAgICAgICAga2V5Q29kZSA9IDB4MDI7CisgICAgZWxzZSBpZiAoW2NoYXJh
Y3RlciBpc0VxdWFsVG9TdHJpbmc6QCJlIl0pCisgICAgICAgIGtleUNvZGUgPSAweDBFOworCisg
ICAgTlNTdHJpbmcgKmNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycyA9IGV2ZW50Q2hhcmFjdGVy
OworCisgICAgaW50IG1vZGlmaWVyRmxhZ3MgPSAwOworCisgICAgaWYgKFtjaGFyYWN0ZXIgbGVu
Z3RoXSA9PSAxICYmIFtjaGFyYWN0ZXIgY2hhcmFjdGVyQXRJbmRleDowXSA+PSAnQScgJiYgW2No
YXJhY3RlciBjaGFyYWN0ZXJBdEluZGV4OjBdIDw9ICdaJykgeworICAgICAgICBtb2RpZmllckZs
YWdzIHw9IE5TU2hpZnRLZXlNYXNrOworICAgICAgICBjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmll
cnMgPSBbY2hhcmFjdGVyIGxvd2VyY2FzZVN0cmluZ107CisgICAgfQorCisgICAgbW9kaWZpZXJG
bGFncyB8PSBidWlsZE1vZGlmaWVyRmxhZ3MobW9kaWZpZXJzUmVmKTsKKworICAgIGlmIChrZXlM
b2NhdGlvbiA9PSAweDAzIC8qRE9NX0tFWV9MT0NBVElPTl9OVU1QQUQqLykKKyAgICAgICAgbW9k
aWZpZXJGbGFncyB8PSBOU051bWVyaWNQYWRLZXlNYXNrOworCisgICAgLy8gRklYTUU6IFtbW21h
aW5GcmFtZSBmcmFtZVZpZXddIGRvY3VtZW50Vmlld10gbGF5b3V0XTsKKworICAgIFdLUGFnZVNl
dFNob3VsZFNlbmRLZXlib2FyZEV2ZW50U3luY2hyb25vdXNseShbbV90ZXN0Q29udHJvbGxlci0+
bWFpbldlYlZpZXcoKS0+cGxhdGZvcm1WaWV3KCkgcGFnZVJlZl0sIHRydWUpOworCisgICAgTlNF
dmVudCAqZXZlbnQgPSBbTlNFdmVudCBrZXlFdmVudFdpdGhUeXBlOk5TS2V5RG93bgorICAgICAg
ICAgICAgICAgICAgICAgICAgbG9jYXRpb246TlNNYWtlUG9pbnQoNSwgNSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgIG1vZGlmaWVyRmxhZ3M6bW9kaWZpZXJGbGFncworICAgICAgICAgICAgICAg
ICAgICAgICAgdGltZXN0YW1wOnRpbWVzdGFtcC8vW3NlbGYgY3VycmVudEV2ZW50VGltZV0KKyAg
ICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd051bWJlcjpbbV90ZXN0Q29udHJvbGxlci0+bWFp
bldlYlZpZXcoKS0+cGxhdGZvcm1XaW5kb3coKSB3aW5kb3dOdW1iZXJdCisgICAgICAgICAgICAg
ICAgICAgICAgICBjb250ZXh0OltOU0dyYXBoaWNzQ29udGV4dCBjdXJyZW50Q29udGV4dF0KKyAg
ICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnM6ZXZlbnRDaGFyYWN0ZXIKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVyczpjaGFyYWN0ZXJzSWdu
b3JpbmdNb2RpZmllcnMKKyAgICAgICAgICAgICAgICAgICAgICAgIGlzQVJlcGVhdDpOTworICAg
ICAgICAgICAgICAgICAgICAgICAga2V5Q29kZTprZXlDb2RlXTsKKworICAgIFtbbV90ZXN0Q29u
dHJvbGxlci0+bWFpbldlYlZpZXcoKS0+cGxhdGZvcm1XaW5kb3coKSBmaXJzdFJlc3BvbmRlcl0g
a2V5RG93bjpldmVudF07CisKKyAgICBldmVudCA9IFtOU0V2ZW50IGtleUV2ZW50V2l0aFR5cGU6
TlNLZXlVcAorICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246TlNNYWtlUG9pbnQoNSwg
NSkKKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyRmxhZ3M6bW9kaWZpZXJGbGFncwor
ICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOnRpbWVzdGFtcC8vW3NlbGYgY3VycmVu
dEV2ZW50VGltZV0KKyAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd051bWJlcjpbbV90ZXN0
Q29udHJvbGxlci0+bWFpbldlYlZpZXcoKS0+cGxhdGZvcm1XaW5kb3coKSB3aW5kb3dOdW1iZXJd
CisgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OltOU0dyYXBoaWNzQ29udGV4dCBjdXJy
ZW50Q29udGV4dF0KKyAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnM6ZXZlbnRDaGFy
YWN0ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVy
czpjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnMKKyAgICAgICAgICAgICAgICAgICAgICAgIGlz
QVJlcGVhdDpOTworICAgICAgICAgICAgICAgICAgICAgICAga2V5Q29kZTprZXlDb2RlXTsKKwor
ICAgIFtbbV90ZXN0Q29udHJvbGxlci0+bWFpbldlYlZpZXcoKS0+cGxhdGZvcm1XaW5kb3coKSBm
aXJzdFJlc3BvbmRlcl0ga2V5VXA6ZXZlbnRdOworCisgICAgV0tQYWdlU2V0U2hvdWxkU2VuZEtl
eWJvYXJkRXZlbnRTeW5jaHJvbm91c2x5KFttX3Rlc3RDb250cm9sbGVyLT5tYWluV2ViVmlldygp
LT5wbGF0Zm9ybVZpZXcoKSBwYWdlUmVmXSwgZmFsc2UpOworfQorCit9IC8vIG5hbWVzcGFjZSBX
VFIKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk1MDM0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDktMTMgIENoYW5nIFNodSAgPGNz
aHVAd2Via2l0Lm9yZz4KKworICAgICAgICBbV0syXSBbTWFjXSBJbXBsZW1lbnQgS2V5RG93biBm
dW5jdGlvbiBmb3IgV2ViS2l0MiBFdmVudFNlbmRlci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3NTE1CisKKyAgICAgICAgVW5za2lwIHBhc3NlZCB0
ZXN0cyBmb3IgTWFjLgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAg
ICAgICogcGxhdGZvcm0vbWFjLXdrMi9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0LXdr
Mi9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3dpbi13azIvU2tpcHBlZDoKKyAgICAgICAg
KiBwbGF0Zm9ybS93azIvU2tpcHBlZDoKKwogMjAxMS0wOS0xMyAgUnlvc3VrZSBOaXdhICA8cm5p
d2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBVcGRhdGUgY2hyb21pdW0gdGVzdCBleHBlY3RhdGlv
biBzaW5jZSBmYXN0L2JvcmRlcnMvYm9yZGVyLWltYWdlLW9taXQtcmlnaHQtc2xpY2UuaHRtbCBu
byBsb25nZXIgaGl0cyBhbiBhc3NlcnRpb24uCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMtd2syL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdr
Mi9Ta2lwcGVkCShyZXZpc2lvbiA5NTAyNSkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13
azIvU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiArMzgsMjIxIEBACiAjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIyMgU1RBUlQgT0YgKDEpIENsYXNzaWZp
ZWQgZmFpbHVyZXMgd2l0aCBidWcgcmVwb3J0cwogCisjIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMg
YW4gaW1wbGVtZW50YXRpb24gb2YgZXZlbnRTZW5kZXIKKyMgPGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MjE5ND4KK2VkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWxpZ2F0
dXJlLTAwMy5odG1sCitlZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWRlbGV0ZS0wMDEuaHRtbAorZWRp
dGluZy9kZWxldGluZy9zbWFydC1kZWxldGUtMDAyLmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvc21h
cnQtZGVsZXRlLTAwMy5odG1sCitlZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWRlbGV0ZS0wMDQuaHRt
bAorZWRpdGluZy9leGVjQ29tbWFuZC9maW5kU3RyaW5nLTIuaHRtbAorZWRpdGluZy9wYXN0ZWJv
YXJkLzQ5NDQ3NzAtMi5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvNDk0NzEzMC5odG1sCitlZGl0
aW5nL3Bhc3RlYm9hcmQvY29weS1zdGFuZGFsb25lLWltYWdlLWNyYXNoLmh0bWwKK2VkaXRpbmcv
cGFzdGVib2FyZC9kcmFnLWFuZC1kcm9wLWltYWdlLWNvbnRlbnRlZGl0YWJsZS5odG1sCitlZGl0
aW5nL3Bhc3RlYm9hcmQvZHJhZy1hbmQtZHJvcC1pbnB1dGltYWdlLWNvbnRlbnRlZGl0YWJsZS5o
dG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1hbmQtZHJvcC1vYmplY3RpbWFnZS1jb250ZW50
ZWRpdGFibGUuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZHJvcC1kZWFkLWZyYW1lLmh0
bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWRyb3AtaW5wdXQtdGV4dGFyZWEuaHRtbAorZWRp
dGluZy9wYXN0ZWJvYXJkL2RyYWctZHJvcC1saXN0Lmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9k
cmFnLWRyb3AtbW9kaWZpZXMtcGFnZS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1kcm9w
LXVybC10ZXh0Lmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWltYWdlLWluLWFib3V0LWJs
YW5rLWZyYW1lLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWltYWdlLXRvLWNvbnRlbnRl
ZGl0YWJsZS1pbi1pZnJhbWUuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctc2VsZWN0ZWQt
aW1hZ2UtdG8tY29udGVudGVkaXRhYmxlLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcm9wLWZp
bGUtc3ZnLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcm9wLWlucHV0dGV4dC1hY3F1aXJlcy1z
dHlsZS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJvcC1saW5rLmh0bWwKK2VkaXRpbmcvcGFz
dGVib2FyZC9kcm9wLXRleHQtZXZlbnRzLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcm9wLXRl
eHQtd2l0aG91dC1zZWxlY3Rpb24uaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2VtYWNzLWNudGwt
eS0wMDEuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2VtYWNzLWN0cmwtYS1rLXkuaHRtbAorZWRp
dGluZy9wYXN0ZWJvYXJkL2VtYWNzLWN0cmwtay15LTAwMS5odG1sCitlZGl0aW5nL3Bhc3RlYm9h
cmQvZmlsZS1pbnB1dC1maWxlcy1hY2Nlc3MuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2ZpbGVz
LWR1cmluZy1wYWdlLWRyYWdzLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9nZXQtZGF0YS10ZXh0
LXBsYWluLWRyb3AuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL3NtYXJ0LWRyYWctZHJvcC5odG1s
CitlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDAxLmh0bWwKK2VkaXRpbmcvcGFzdGVi
b2FyZC9zbWFydC1wYXN0ZS0wMDIuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL3NtYXJ0LXBhc3Rl
LTAwMy5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDA0Lmh0bWwKK2VkaXRp
bmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDUuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL3Nt
YXJ0LXBhc3RlLTAwNy5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDA4Lmh0
bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9zdWJmcmFtZS1kcmFnbmRyb3AtMS5odG1sCitlZGl0aW5n
L3NlbGVjdGlvbi8xNDk3MS5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi80ODk1NDI4LTEuaHRtbAor
ZWRpdGluZy9zZWxlY3Rpb24vNDg5NTQyOC00Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uLzUwNTc1
MDYuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vNTIzMjE1OS5odG1sCitlZGl0aW5nL3NlbGVjdGlv
bi81MzMzNzI1Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uLzUzNTQ0NTUtMS5odG1sCitlZGl0aW5n
L3NlbGVjdGlvbi81MzU0NDU1LTIuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vYW5jaG9yLWZvY3Vz
Mi5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9hbmNob3ItZm9jdXMzLmh0bWwKK2VkaXRpbmcvc2Vs
ZWN0aW9uL2J1dHRvbi1yaWdodC1jbGljay5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9jbGljay1p
bi1mb2N1c2FibGUtbGluay1zaG91bGQtbm90LWNsZWFyLXNlbGVjdGlvbi5odG1sCitlZGl0aW5n
L3NlbGVjdGlvbi9jbGljay1pbi1tYXJnaW5zLWluc2lkZS1lZGl0YWJsZS1kaXYuaHRtbAorZWRp
dGluZy9zZWxlY3Rpb24vY2xpY2staW4tcGFkZGluZy13aXRoLW11bHRpcGxlLWxpbmUtYm94ZXMu
aHRtbAorZWRpdGluZy9zZWxlY3Rpb24vY29udGFpbnMtYm91bmRhcmllcy5odG1sCitlZGl0aW5n
L3NlbGVjdGlvbi9jb250ZXh0LW1lbnUtb24tdGV4dC5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9k
b3VibGVjbGljay1iZXNpZGUtY3Itc3Bhbi5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVj
bGljay1jcmFzaC5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNl
LWNyYXNoLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtaW1n
LWNyYXNoLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UuaHRt
bAorZWRpdGluZy9zZWxlY3Rpb24vZHJhZy1zZWxlY3QtMS5odG1sCitlZGl0aW5nL3NlbGVjdGlv
bi9kcmFnLXNlbGVjdC1yYXBpZGx5Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2RyYWctc3RhcnQt
ZXZlbnQtY2xpZW50LXgteS5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9kcmFnLXRvLWNvbnRlbnRl
ZGl0YWJsZS1pZnJhbWUuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZW1wdHktY2VsbC1yaWdodC1j
bGljay5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9leHBhbmRpbmctc2VsZWN0aW9ucy5odG1sCitl
ZGl0aW5nL3NlbGVjdGlvbi9leHBhbmRpbmctc2VsZWN0aW9uczIuaHRtbAorZWRpdGluZy9zZWxl
Y3Rpb24vZXh0ZW5kLWFmdGVyLW1vdXNlLXNlbGVjdGlvbi5odG1sCitlZGl0aW5nL3NlbGVjdGlv
bi9leHRlbmQtc2VsZWN0aW9uLWFmdGVyLWRvdWJsZS1jbGljay5odG1sCitlZGl0aW5nL3NlbGVj
dGlvbi9mYWtlLWRvdWJsZWNsaWNrLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2Zha2UtZHJhZy5o
dG1sCitlZGl0aW5nL3NlbGVjdGlvbi9pbmxpbmUtY2xvc2VzdC1sZWFmLWNoaWxkLmh0bWwKK2Vk
aXRpbmcvc2VsZWN0aW9uL2xhc3QtZW1wdHktaW5saW5lLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9u
L21peGVkLWVkaXRhYmlsaXR5LTEwLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3BhcmFncmFwaC1n
cmFudWxhcml0eS5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3QtZnJvbS10ZXh0ZmllbGQt
b3V0d2FyZHMuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0LW91dC1vZi1lZGl0YWJsZS5o
dG1sCitlZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Qtb3V0LW9mLWZsb2F0ZWQtY29udGVudGVkaXRh
YmxlLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdC1vdXQtb2YtZmxvYXRlZC1pbnB1dC5o
dG1sCitlZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Qtb3V0LW9mLWZsb2F0ZWQtdGV4dGFyZWEuaHRt
bAorZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0aW9uLWFjdGlvbnMuaHRtbAorZWRpdGluZy9zZWxl
Y3Rpb24vc2hpZnQtY2xpY2suaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vdXNlci1kcmFnLWVsZW1l
bnQtYW5kLXVzZXItc2VsZWN0LW5vbmUuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vd29yZC1ncmFu
dWxhcml0eS5odG1sCitlZGl0aW5nL3NwZWxsaW5nL2NvbnRleHQtbWVudS1zdWdnZXN0aW9ucy5o
dG1sCitlZGl0aW5nL3NwZWxsaW5nL3NwZWxsY2hlY2stcGFzdGUuaHRtbAorZWRpdGluZy91bmRv
L3VuZG8tZGVsZXRlV29yZC5odG1sCitlZGl0aW5nL3VuZG8vdW5kby1zbWFydC1kZWxldGUtcmV2
ZXJzZWQtc2VsZWN0aW9uLmh0bWwKK2VkaXRpbmcvdW5kby91bmRvLXNtYXJ0LWRlbGV0ZS13b3Jk
Lmh0bWwKK2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvaGl0dGVzdC1vbi1yZWxhdGl2ZS1wb3NpdGlv
bmVkLWNoaWxkcmVuLmh0bWwKK2Zhc3QvY3NzL3VzZXItZHJhZy1ub25lLmh0bWwKK2Zhc3QvZG9t
L1dpbmRvdy93aW5kb3ctcG9zdG1lc3NhZ2UtY2xvbmUtZnJhbWVzLmh0bWwKK2Zhc3QvZG9tL1dp
bmRvdy93aW5kb3ctcG9zdG1lc3NhZ2UtY2xvbmUuaHRtbAorZmFzdC9kb20vaG9yaXpvbnRhbC1z
Y3JvbGxiYXItaW4tcnRsLmh0bWwKK2Zhc3QvZG9tL3ZlcnRpY2FsLXNjcm9sbGJhci1pbi1ydGwu
aHRtbAorZmFzdC9keW5hbWljL2xheWVyLWhpdC10ZXN0LWNyYXNoLmh0bWwKK2Zhc3QvZW5jb2Rp
bmcvbWFpbHRvLWFsd2F5cy11dGYtOC5odG1sCitmYXN0L2V2ZW50cy81MDU2NjE5Lmh0bWwKK2Zh
c3QvZXZlbnRzL2F1dG9zY3JvbGwtaW4tdGV4dGZpZWxkLmh0bWwKK2Zhc3QvZXZlbnRzL2F1dG9z
Y3JvbGwtbm9uc2Nyb2xsYWJsZS1pZnJhbWUtaW4tc2Nyb2xsYWJsZS1kaXYuaHRtbAorZmFzdC9l
dmVudHMvYXV0b3Njcm9sbC13aXRoLW5vbi1zY3JvbGxhYmxlLXBhcmVudC5odG1sCitmYXN0L2V2
ZW50cy9hdXRvc2Nyb2xsLmh0bWwKK2Zhc3QvZXZlbnRzL2JvZ3VzLWRyb3BFZmZlY3QtZWZmZWN0
QWxsb3dlZC5odG1sCitmYXN0L2V2ZW50cy9jbGljay1jb3VudC5odG1sCitmYXN0L2V2ZW50cy9j
b250ZW50LWNoYW5nZWQtZHVyaW5nLWRyb3AuaHRtbAorZmFzdC9ldmVudHMvY29udGV4dC1uby1k
ZXNlbGVjdC5odG1sCitmYXN0L2V2ZW50cy9jb250ZXh0LW9ubW91c2Vkb3duLWV2ZW50Lmh0bWwK
K2Zhc3QvZXZlbnRzL2NvbnRleHRtZW51LXNjcm9sbGVkLXBhZ2Utd2l0aC1mcmFtZS5odG1sCitm
YXN0L2V2ZW50cy9jb250aW51b3VzLXBsYXRmb3JtLXdoZWVsZXZlbnQtaW4tc2Nyb2xsaW5nLWRp
di5odG1sCitmYXN0L2V2ZW50cy9jcmFzaC1vbi1tdXRhdGUtZHVyaW5nLWRyb3AuaHRtbAorZmFz
dC9ldmVudHMvZGJsY2xpY2stYWRkRXZlbnRMaXN0ZW5lci5odG1sCitmYXN0L2V2ZW50cy9kcmFn
LWFuZC1kcm9wLWRhdGFUcmFuc2Zlci10eXBlcy1ub2NyYXNoLmh0bWwKK2Zhc3QvZXZlbnRzL2Ry
YWctYW5kLWRyb3AtZmlyZS1kcmFnLWRyYWdvdmVyLmh0bWwKK2Zhc3QvZXZlbnRzL2RyYWctYW5k
LWRyb3AuaHRtbAorZmFzdC9ldmVudHMvZHJhZy1maWxlLWNyYXNoLmh0bWwKK2Zhc3QvZXZlbnRz
L2RyYWctaW4tZnJhbWVzLmh0bWwKK2Zhc3QvZXZlbnRzL2RyYWctcGFyZW50LW5vZGUuaHRtbAor
ZmFzdC9ldmVudHMvZHJhZy10by1uYXZpZ2F0ZS5odG1sCitmYXN0L2V2ZW50cy9kcm9wem9uZS0w
MDEuaHRtbAorZmFzdC9ldmVudHMvZHJvcHpvbmUtMDAyLmh0bWwKK2Zhc3QvZXZlbnRzL2Ryb3B6
b25lLTAwMy5odG1sCitmYXN0L2V2ZW50cy9kcm9wem9uZS0wMDQuaHRtbAorZmFzdC9ldmVudHMv
a2V5ZG93bi1udW1wYWQta2V5cy5odG1sCitmYXN0L2V2ZW50cy9tb3VzZS1jbGljay1ldmVudHMu
aHRtbAorZmFzdC9ldmVudHMvbW91c2V1cC1mcm9tLWJ1dHRvbjIuaHRtbAorZmFzdC9ldmVudHMv
bm9kZS1ldmVudC1hbmNob3ItbG9jay5odG1sCitmYXN0L2V2ZW50cy9vbmRyYWdlbnRlci5odG1s
CitmYXN0L2V2ZW50cy9vcGVuLXdpbmRvdy1mcm9tLWFub3RoZXItZnJhbWUuaHRtbAorZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zhc3QvZXZl
bnRzL3BvcHVwLWJsb2NraW5nLWNsaWNrLWluLWlmcmFtZS5odG1sCitmYXN0L2V2ZW50cy9wb3B1
cC13aGVuLXNlbGVjdC1jaGFuZ2UuaHRtbAorZmFzdC9ldmVudHMvcHJldmVudC1kcmFnLXRvLW5h
dmlnYXRlLmh0bWwKK2Zhc3QvZXZlbnRzL3JlbW92ZS1jaGlsZC1vbnNjcm9sbC5odG1sCitmYXN0
L2V2ZW50cy9yaWdodC1jbGljay1mb2N1cy5odG1sCitmYXN0L2V2ZW50cy9zY3JvbGwtYWZ0ZXIt
Y2xpY2stb24tdGFiLWluZGV4Lmh0bWwKK2Zhc3QvZXZlbnRzL3Njcm9sbC1pbi1zY2FsZWQtcGFn
ZS13aXRoLW92ZXJmbG93LWhpZGRlbi5odG1sCitmYXN0L2V2ZW50cy9zY3JvbGxiYXItZG91Ymxl
LWNsaWNrLmh0bWwKK2Zhc3QvZXZlbnRzL3NlbGVjdHN0YXJ0LWJ5LWRvdWJsZS10cmlwbGUtY2xp
Y2tzLmh0bWwKK2Zhc3QvZXZlbnRzL3NlbGVjdHN0YXJ0LWJ5LWRyYWcuaHRtbAorZmFzdC9ldmVu
dHMvc2VsZWN0c3RhcnQtcHJldmVudC1zZWxlY3Rpb24tb24tcmlnaHQtY2xpY2suaHRtbAorZmFz
dC9ldmVudHMvc3RhbmRhbG9uZS1pbWFnZS1kcmFnLXRvLWVkaXRhYmxlLmh0bWwKK2Zhc3QvZXZl
bnRzL3doZWVsZXZlbnQtaW4taG9yaXpvbnRhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwKK2Zhc3Qv
ZXZlbnRzL3doZWVsZXZlbnQtaW4tdmVydGljYWwtc2Nyb2xsYmFyLWluLXJ0bC5odG1sCitmYXN0
L2V2ZW50cy96b29tLWRibGNsaWNrLmh0bWwKK2Zhc3QvZmlsZXMvYXBwbHktYmxvYi11cmwtdG8t
eGhyLmh0bWwKK2Zhc3QvZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQuaHRtbAorZmFzdC9maWxlcy9y
ZWFkLWJsb2ItYXN5bmMuaHRtbAorZmFzdC9maWxlcy9yZWFkLWZpbGUtYXN5bmMuaHRtbAorZmFz
dC9mb3Jtcy9kcmFnLWludG8tdGV4dGFyZWEuaHRtbAorZmFzdC9mb3Jtcy9kcmFnLW91dC1vZi10
ZXh0YXJlYS5odG1sCitmYXN0L2Zvcm1zL2dldC1maWxlLXVwbG9hZC5odG1sCitmYXN0L2Zvcm1z
L2lucHV0LWZpbGUtcmUtcmVuZGVyLmh0bWwKK2Zhc3QvZm9ybXMvaW5wdXQtcmVhZG9ubHktYXV0
b3Njcm9sbC5odG1sCitmYXN0L2Zvcm1zL2lucHV0LXRleHQtZG91YmxlLWNsaWNrLmh0bWwKK2Zh
c3QvZm9ybXMvaW5wdXQtdGV4dC1kcmFnLWRvd24uaHRtbAorZmFzdC9mb3Jtcy9saXN0Ym94LXR5
cGVhaGVhZC1jeXJpbGxpYy5odG1sCitmYXN0L2Zvcm1zL2xpc3Rib3gtdHlwZWFoZWFkLWdyZWVr
Lmh0bWwKK2Zhc3QvZm9ybXMvb25zZWxlY3QtdGV4dGFyZWEuaHRtbAorZmFzdC9mb3Jtcy9vbnNl
bGVjdC10ZXh0ZmllbGQuaHRtbAorZmFzdC9mb3Jtcy9vcHRpb24tbW91c2VldmVudHMuaHRtbAor
ZmFzdC9mb3Jtcy9yYW5nZS9zbGlkZXItZGVsZXRlLXdoaWxlLWRyYWdnaW5nLXRodW1iLmh0bWwK
K2Zhc3QvZm9ybXMvcmFuZ2Uvc2xpZGVyLW1vdXNlLWV2ZW50cy5odG1sCitmYXN0L2Zvcm1zL3Jh
bmdlL3NsaWRlci1vbmNoYW5nZS1ldmVudC5odG1sCitmYXN0L2Zvcm1zL3NlbGVjdC10eXBlLWFo
ZWFkLW5vbi1sYXRpbi5odG1sCitmYXN0L2hpc3Rvcnkvd2luZG93LW9wZW4uaHRtbAorZmFzdC9s
aXN0cy9kcmFnLWludG8tbWFya2VyLmh0bWwKK2Zhc3QvbG9hZGVyL3BvbGljeS1kZWxlZ2F0ZS1h
Y3Rpb24taGl0LXRlc3Qtem9vbWVkLmh0bWwKK2Zhc3QvcmVwYWludC9qYXBhbmVzZS1ybC1zZWxl
Y3Rpb24tcmVwYWludC5odG1sCitmYXN0L3JlcGFpbnQvcmVwYWludC1hY3Jvc3Mtd3JpdGluZy1t
b2RlLWJvdW5kYXJ5Lmh0bWwKK2Zhc3QvcmVwYWludC9zZWxlY3Rpb24tcmwuaHRtbAorZmFzdC90
ZXh0L2F0c3VpLXJ0bC1vdmVycmlkZS1zZWxlY3Rpb24uaHRtbAorZmFzdC90ZXh0L2ludGVybmF0
aW9uYWwva2htZXItc2VsZWN0aW9uLmh0bWwKK2Zhc3QvdGV4dC9vZmZzZXRGb3JQb3NpdGlvbi1j
b21wbGV4LWZhbGxiYWNrLmh0bWwKK2Zhc3QvdGV4dC9yZXNldC1kcmFnLW9uLW1vdXNlLWRvd24u
aHRtbAorZmFzdC93cml0aW5nLW1vZGUvaG9yaXpvbnRhbC1idC1yZXBsYWNlZC1zZWxlY3Rpb24u
aHRtbAorZmFzdC93cml0aW5nLW1vZGUvamFwYW5lc2UtbHItc2VsZWN0aW9uLmh0bWwKK2Zhc3Qv
d3JpdGluZy1tb2RlL2phcGFuZXNlLXJsLXNlbGVjdGlvbi5odG1sCitmYXN0L3dyaXRpbmctbW9k
ZS92ZXJ0aWNhbC1sci1yZXBsYWNlZC1zZWxlY3Rpb24uaHRtbAorZmFzdC93cml0aW5nLW1vZGUv
dmVydGljYWwtcmwtcmVwbGFjZWQtc2VsZWN0aW9uLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvYmxv
Yi9zZW5kLWh5YnJpZC1ibG9iLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZHJhZy1vdmVyLXJlbW90
ZS1jb250ZW50Lmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZp
ZWQuaHRtbAoraHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3NlbmQtZHJhZ2dlZC1maWxlLmh0bWwK
K2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9zZW5kLXNsaWNlZC1kcmFnZ2VkLWZpbGUuaHRtbAor
aHR0cC90ZXN0cy9sb2NhbC9mb3JtZGF0YS9mb3JtLWRhdGEtd2l0aC11bmtub3duLWZpbGUtZXh0
ZW5zaW9uLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvc2VuZC1mb3JtLWRhdGEtY29u
c3RydWN0ZWQtZnJvbS1mb3JtLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvc2VuZC1m
b3JtLWRhdGEtd2l0aC1zbGljZWQtZmlsZS5odG1sCitodHRwL3Rlc3RzL2xvY2FsL2Zvcm1kYXRh
L3NlbmQtZm9ybS1kYXRhLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvdXBsb2FkLWV2
ZW50cy5odG1sCitodHRwL3Rlc3RzL21pc2MvYnViYmxlLWRyYWctZXZlbnRzLmh0bWwKK2h0dHAv
dGVzdHMvc2VjdXJpdHkvY2xpcGJvYXJkL2NsaXBib2FyZC1maWxlLWFjY2Vzcy5odG1sCitodHRw
L3Rlc3RzL3NlY3VyaXR5L2RhdGFUcmFuc2Zlci1zZXQtZGF0YS1maWxlLXVybC5odG1sCitodHRw
L3Rlc3RzL3NlY3VyaXR5L2RyYWctZHJvcC1zYW1lLXVuaXF1ZS1vcmlnaW4uaHRtbAoraHR0cC90
ZXN0cy9zZWN1cml0eS9kcmFnLW92ZXItcmVtb3RlLWNvbnRlbnQtaWZyYW1lLmh0bWwKK21lZGlh
L2NvbnRyb2xzLXJpZ2h0LWNsaWNrLW9uLXRpbWViYXIuaHRtbAorcGxhdGZvcm0vbWFjL2VkaXRp
bmcvcGFzdGVib2FyZC9kYXRhVHJhbnNmZXItc2V0LWRhdGEtZmlsZS11cmwuaHRtbAorcGxhdGZv
cm0vbWFjL2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLXNlbGVjdGlvbnMtdG8tY29udGVudGVkaXRh
YmxlLmh0bWwKK3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1zaG91
bGQtbm90LWV4cGFuZC1hY3Jvc3MtbGluZXMuaHRtbAorcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2Vs
ZWN0aW9uL3dvcmQtdGhhaS5odG1sCitwbGF0Zm9ybS9tYWMvZmFzdC9mb3Jtcy9saXN0Ym94LXNj
cm9sbGJhci1oaXQtdGVzdC5odG1sCitwbGF0Zm9ybS9tYWMvZmFzdC9vdmVyZmxvdy9vdmVyZmxv
dy1zY3JvbGxiYXItaGl0LXRlc3QuaHRtbAorcGx1Z2lucy9jbGlja2luZy1taXNzaW5nLXBsdWdp
bi1maXJlcy1kZWxlZ2F0ZS5odG1sCitzY3JvbGxiYXJzL3Njcm9sbGJhci1pZnJhbWUtY2xpY2st
ZG9lcy1ub3QtYmx1ci1jb250ZW50Lmh0bWwKK3Njcm9sbGJhcnMvc2Nyb2xsZXZlbnQtaWZyYW1l
LW5vLXNjcm9sbGluZy13aGVlbC5odG1sCisKK3N2Zy9jdXN0b20vZm9yZWlnbk9iamVjdC1jcmFz
aC1vbi1ob3Zlci54bWwKK3N2Zy9jdXN0b20vbW91c2UtbW92ZS1vbi1zdmctY29udGFpbmVyLXN0
YW5kYWxvbmUuc3ZnCitzdmcvY3VzdG9tL21vdXNlLW1vdmUtb24tc3ZnLWNvbnRhaW5lci54aHRt
bAorc3ZnL2N1c3RvbS9tb3VzZS1tb3ZlLW9uLXN2Zy1yb290LXN0YW5kYWxvbmUuc3ZnCitzdmcv
Y3VzdG9tL21vdXNlLW1vdmUtb24tc3ZnLXJvb3QueGh0bWwKK3N2Zy9jdXN0b20vdXNlLWV2ZW50
cy1jcmFzaC5zdmcKKwogIyMjIEVORCBPRiAoMSkgQ2xhc3NpZmllZCBmYWlsdXJlcyB3aXRoIGJ1
ZyByZXBvcnRzCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKSW5k
ZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0LXdrMi9Ta2lwcGVkCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL3BsYXRmb3JtL3F0LXdrMi9Ta2lwcGVkCShyZXZpc2lvbiA5NTAyNSkKKysrIExh
eW91dFRlc3RzL3BsYXRmb3JtL3F0LXdrMi9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw2
ICs2NywzNDkgQEAgY29tcG9zaXRpbmcvdmlkZW8vdmlkZW8tcG9zdGVyLmh0bWwKIAogIyBXZWJL
aXRUZXN0UnVubmVyIG5lZWRzIGFuIGltcGxlbWVudGF0aW9uIG9mIGV2ZW50U2VuZGVyCiAjIDxo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDIxOTQ+CitlZGl0aW5nL2Rl
bGV0aW5nLzU3Mjk2ODAuaHRtbAorZWRpdGluZy9kZWxldGluZy9kZWxldGUtYnktd29yZC0wMDEu
aHRtbAorZWRpdGluZy9kZWxldGluZy9kZWxldGUtYnktd29yZC0wMDIuaHRtbAorZWRpdGluZy9k
ZWxldGluZy9kZWxldGUtbGlnYXR1cmUtMDAxLmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvZGVsZXRl
LWxpZ2F0dXJlLTAwMi5odG1sCitlZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1saWdhdHVyZS0wMDMu
aHRtbAorZWRpdGluZy9kZWxldGluZy9mb3J3YXJkLWRlbGV0ZS1rZXkuaHRtbAorZWRpdGluZy9k
ZWxldGluZy9za2lwLXZpcmFtYS0wMDEuaHRtbAorZWRpdGluZy9kZWxldGluZy9zbWFydC1kZWxl
dGUtMDAxLmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvc21hcnQtZGVsZXRlLTAwMi5odG1sCitlZGl0
aW5nL2RlbGV0aW5nL3NtYXJ0LWRlbGV0ZS0wMDMuaHRtbAorZWRpdGluZy9kZWxldGluZy9zbWFy
dC1kZWxldGUtMDA0Lmh0bWwKK2VkaXRpbmcvZXhlY0NvbW1hbmQvZmluZFN0cmluZy0yLmh0bWwK
K2VkaXRpbmcvaW5wdXQvZW1hY3MtY3RybC1vLmh0bWwKK2VkaXRpbmcvaW5wdXQvb3B0aW9uLXBh
Z2UtdXAtZG93bi5odG1sCitlZGl0aW5nL2lucHV0L3BhZ2UtdXAtZG93bi1zY3JvbGxzLmh0bWwK
K2VkaXRpbmcvaW5wdXQvc2Nyb2xsLXZpZXdwb3J0LXBhZ2UtdXAtZG93bi5odG1sCitlZGl0aW5n
L2lucHV0L3N0eWxlLWNoYW5nZS1kdXJpbmctaW5wdXQuaHRtbAorZWRpdGluZy9pbnNlcnRpbmcv
dHlwaW5nLXRhYi1kZXNpZ25tb2RlLWZvcm1zLmh0bWwKK2VkaXRpbmcvaW5zZXJ0aW5nL3R5cGlu
Zy10YWItZGVzaWdubW9kZS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvNDk0NDc3MC0yLmh0bWwK
K2VkaXRpbmcvcGFzdGVib2FyZC80OTQ3MTMwLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9jb3B5
LXN0YW5kYWxvbmUtaW1hZ2UtY3Jhc2guaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctYW5k
LWRyb3AtaW1hZ2UtY29udGVudGVkaXRhYmxlLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFn
LWFuZC1kcm9wLWlucHV0aW1hZ2UtY29udGVudGVkaXRhYmxlLmh0bWwKK2VkaXRpbmcvcGFzdGVi
b2FyZC9kcmFnLWFuZC1kcm9wLW9iamVjdGltYWdlLWNvbnRlbnRlZGl0YWJsZS5odG1sCitlZGl0
aW5nL3Bhc3RlYm9hcmQvZHJhZy1kcm9wLWRlYWQtZnJhbWUuaHRtbAorZWRpdGluZy9wYXN0ZWJv
YXJkL2RyYWctZHJvcC1pbnB1dC10ZXh0YXJlYS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJh
Zy1kcm9wLWxpc3QuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZHJvcC1tb2RpZmllcy1w
YWdlLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWRyb3AtdXJsLXRleHQuaHRtbAorZWRp
dGluZy9wYXN0ZWJvYXJkL2RyYWctaW1hZ2UtaW4tYWJvdXQtYmxhbmstZnJhbWUuaHRtbAorZWRp
dGluZy9wYXN0ZWJvYXJkL2RyYWctaW1hZ2UtdG8tY29udGVudGVkaXRhYmxlLWluLWlmcmFtZS5o
dG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1zZWxlY3RlZC1pbWFnZS10by1jb250ZW50ZWRp
dGFibGUuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2Ryb3AtZmlsZS1zdmcuaHRtbAorZWRpdGlu
Zy9wYXN0ZWJvYXJkL2Ryb3AtaW5wdXR0ZXh0LWFjcXVpcmVzLXN0eWxlLmh0bWwKK2VkaXRpbmcv
cGFzdGVib2FyZC9kcm9wLWxpbmsuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2Ryb3AtdGV4dC1l
dmVudHMuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2Ryb3AtdGV4dC13aXRob3V0LXNlbGVjdGlv
bi5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZW1hY3MtY250bC15LTAwMS5odG1sCitlZGl0aW5n
L3Bhc3RlYm9hcmQvZW1hY3MtY3RybC1hLWsteS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZW1h
Y3MtY3RybC1rLXktMDAxLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9maWxlLWlucHV0LWZpbGVz
LWFjY2Vzcy5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZmlsZXMtZHVyaW5nLXBhZ2UtZHJhZ3Mu
aHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2dldC1kYXRhLXRleHQtcGxhaW4tZHJvcC5odG1sCitl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtYmVmb3JlLXRhYi1zcGFuLmh0bWwKK2VkaXRpbmcvcGFz
dGVib2FyZC9zbWFydC1kcmFnLWRyb3AuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL3NtYXJ0LXBh
c3RlLTAwMS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDAyLmh0bWwKK2Vk
aXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDMuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJk
L3NtYXJ0LXBhc3RlLTAwNC5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDA1
Lmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDcuaHRtbAorZWRpdGluZy9w
YXN0ZWJvYXJkL3NtYXJ0LXBhc3RlLTAwOC5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc3ViZnJh
bWUtZHJhZ25kcm9wLTEuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vMTQ5NzEuaHRtbAorZWRpdGlu
Zy9zZWxlY3Rpb24vNDg5NTQyOC0xLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uLzQ4OTU0MjgtNC5o
dG1sCitlZGl0aW5nL3NlbGVjdGlvbi81MDU3NTA2Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uLzUy
MzIxNTkuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vNTMzMzcyNS5odG1sCitlZGl0aW5nL3NlbGVj
dGlvbi81MzU0NDU1LTEuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vNTM1NDQ1NS0yLmh0bWwKK2Vk
aXRpbmcvc2VsZWN0aW9uL2FuY2hvci1mb2N1czIuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vYW5j
aG9yLWZvY3VzMy5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9idXR0b24tcmlnaHQtY2xpY2suaHRt
bAorZWRpdGluZy9zZWxlY3Rpb24vY2xpY2staW4tZm9jdXNhYmxlLWxpbmstc2hvdWxkLW5vdC1j
bGVhci1zZWxlY3Rpb24uaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vY2xpY2staW4tbWFyZ2lucy1p
bnNpZGUtZWRpdGFibGUtZGl2Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2NsaWNrLWluLXBhZGRp
bmctd2l0aC1tdWx0aXBsZS1saW5lLWJveGVzLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2NvbnRh
aW5zLWJvdW5kYXJpZXMuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vY29udGV4dC1tZW51LW9uLXRl
eHQuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVzaWRlLWNyLXNwYW4uaHRt
bAorZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stY3Jhc2guaHRtbAorZWRpdGluZy9zZWxl
Y3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1jcmFzaC5odG1sCitlZGl0aW5nL3NlbGVjdGlv
bi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sCitlZGl0aW5nL3NlbGVjdGlv
bi9kb3VibGVjbGljay13aGl0ZXNwYWNlLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2RyYWctc2Vs
ZWN0LTEuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZHJhZy1zZWxlY3QtcmFwaWRseS5odG1sCitl
ZGl0aW5nL3NlbGVjdGlvbi9kcmFnLXN0YXJ0LWV2ZW50LWNsaWVudC14LXkuaHRtbAorZWRpdGlu
Zy9zZWxlY3Rpb24vZHJhZy10by1jb250ZW50ZWRpdGFibGUtaWZyYW1lLmh0bWwKK2VkaXRpbmcv
c2VsZWN0aW9uL2VkaXRhYmxlLWxpbmtzLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2VtcHR5LWNl
bGwtcmlnaHQtY2xpY2suaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZXhwYW5kaW5nLXNlbGVjdGlv
bnMuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZXhwYW5kaW5nLXNlbGVjdGlvbnMyLmh0bWwKK2Vk
aXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1hZnRlci1tb3VzZS1zZWxlY3Rpb24uaHRtbAorZWRpdGlu
Zy9zZWxlY3Rpb24vZXh0ZW5kLXNlbGVjdGlvbi1hZnRlci1kb3VibGUtY2xpY2suaHRtbAorZWRp
dGluZy9zZWxlY3Rpb24vZmFrZS1kb3VibGVjbGljay5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9m
YWtlLWRyYWcuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vaW5saW5lLWNsb3Nlc3QtbGVhZi1jaGls
ZC5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9sYXN0LWVtcHR5LWlubGluZS5odG1sCitlZGl0aW5n
L3NlbGVjdGlvbi9taXhlZC1lZGl0YWJpbGl0eS0xMC5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9t
b3ZlLWJlZ2luLWVuZC5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9wYXJhZ3JhcGgtZ3JhbnVsYXJp
dHkuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0LWZyb20tdGV4dGZpZWxkLW91dHdhcmRz
Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdC1vdXQtb2YtZWRpdGFibGUuaHRtbAorZWRp
dGluZy9zZWxlY3Rpb24vc2VsZWN0LW91dC1vZi1mbG9hdGVkLWNvbnRlbnRlZGl0YWJsZS5odG1s
CitlZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Qtb3V0LW9mLWZsb2F0ZWQtaW5wdXQuaHRtbAorZWRp
dGluZy9zZWxlY3Rpb24vc2VsZWN0LW91dC1vZi1mbG9hdGVkLXRleHRhcmVhLmh0bWwKK2VkaXRp
bmcvc2VsZWN0aW9uL3NlbGVjdGlvbi1hY3Rpb25zLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3No
aWZ0LWNsaWNrLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3Nocmluay1zZWxlY3Rpb24tYWZ0ZXIt
c2hpZnQtcGFnZWRvd24uaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vdXNlci1kcmFnLWVsZW1lbnQt
YW5kLXVzZXItc2VsZWN0LW5vbmUuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vd29yZC1ncmFudWxh
cml0eS5odG1sCitlZGl0aW5nL3NwZWxsaW5nL2NvbnRleHQtbWVudS1zdWdnZXN0aW9ucy5odG1s
CitlZGl0aW5nL3NwZWxsaW5nL3NwZWxsY2hlY2stcGFzdGUuaHRtbAorZWRpdGluZy91bmRvL3Vu
ZG8tZGVsZXRlV29yZC5odG1sCitlZGl0aW5nL3VuZG8vdW5kby1zbWFydC1kZWxldGUtcmV2ZXJz
ZWQtc2VsZWN0aW9uLmh0bWwKK2VkaXRpbmcvdW5kby91bmRvLXNtYXJ0LWRlbGV0ZS13b3JkLmh0
bWwKK2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvaGl0dGVzdC1vbi1yZWxhdGl2ZS1wb3NpdGlvbmVk
LWNoaWxkcmVuLmh0bWwKK2Zhc3QvY3NzL3VzZXItZHJhZy1ub25lLmh0bWwKK2Zhc3QvZG9tL0hU
TUxTZWxlY3RFbGVtZW50L2NsaWNrLXNpemUtemVyby1uby1jcmFzaC5odG1sCitmYXN0L2RvbS9X
aW5kb3cvd2luZG93LXBvc3RtZXNzYWdlLWNsb25lLWZyYW1lcy5odG1sCitmYXN0L2RvbS9XaW5k
b3cvd2luZG93LXBvc3RtZXNzYWdlLWNsb25lLmh0bWwKK2Zhc3QvZG9tL2hpZGRlbi1pZnJhbWUt
bm8tZm9jdXMuaHRtbAorZmFzdC9kb20vaG9yaXpvbnRhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwK
K2Zhc3QvZG9tL3ZlcnRpY2FsLXNjcm9sbGJhci1pbi1ydGwuaHRtbAorZmFzdC9keW5hbWljL2xh
eWVyLWhpdC10ZXN0LWNyYXNoLmh0bWwKK2Zhc3QvZW5jb2RpbmcvbWFpbHRvLWFsd2F5cy11dGYt
OC5odG1sCitmYXN0L2V2ZW50cy81MDU2NjE5Lmh0bWwKK2Zhc3QvZXZlbnRzL2FjY2Vzcy1rZXkt
c2VsZi1kZXN0cnVjdC5odG1sCitmYXN0L2V2ZW50cy9hbmNob3ItZW1wdHktZm9jdXMuaHRtbAor
ZmFzdC9ldmVudHMvYXJyb3cta2V5cy1vbi1ib2R5Lmh0bWwKK2Zhc3QvZXZlbnRzL2Fycm93LW5h
dmlnYXRpb24uaHRtbAorZmFzdC9ldmVudHMvYXR0ZW1wdC1zZWxlY3QtYWxsLXdpdGgtd3Jvbmct
bW9kaWZpZXIuaHRtbAorZmFzdC9ldmVudHMvYXV0b3Njcm9sbC1pbi10ZXh0ZmllbGQuaHRtbAor
ZmFzdC9ldmVudHMvYXV0b3Njcm9sbC1ub25zY3JvbGxhYmxlLWlmcmFtZS1pbi1zY3JvbGxhYmxl
LWRpdi5odG1sCitmYXN0L2V2ZW50cy9hdXRvc2Nyb2xsLXdpdGgtbm9uLXNjcm9sbGFibGUtcGFy
ZW50Lmh0bWwKK2Zhc3QvZXZlbnRzL2F1dG9zY3JvbGwuaHRtbAorZmFzdC9ldmVudHMvYm9ndXMt
ZHJvcEVmZmVjdC1lZmZlY3RBbGxvd2VkLmh0bWwKK2Zhc3QvZXZlbnRzL2NoZWNrLWRlZm9jdXMt
ZXZlbnQtb3JkZXItd2hlbi10cmlnZ2VyZWQtYnktbW91c2UtY2xpY2suaHRtbAorZmFzdC9ldmVu
dHMvY2hlY2stZGVmb2N1cy1ldmVudC1vcmRlci13aGVuLXRyaWdnZXJlZC1ieS10YWIuaHRtbAor
ZmFzdC9ldmVudHMvY2xpY2stY291bnQuaHRtbAorZmFzdC9ldmVudHMvY29udGVudC1jaGFuZ2Vk
LWR1cmluZy1kcm9wLmh0bWwKK2Zhc3QvZXZlbnRzL2NvbnRleHQtbm8tZGVzZWxlY3QuaHRtbAor
ZmFzdC9ldmVudHMvY29udGV4dC1vbm1vdXNlZG93bi1ldmVudC5odG1sCitmYXN0L2V2ZW50cy9j
b250ZXh0bWVudS1zY3JvbGxlZC1wYWdlLXdpdGgtZnJhbWUuaHRtbAorZmFzdC9ldmVudHMvY29u
dGludW91cy1wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYuaHRtbAorZmFzdC9l
dmVudHMvY3Jhc2gtb24tbXV0YXRlLWR1cmluZy1kcm9wLmh0bWwKK2Zhc3QvZXZlbnRzL2RibGNs
aWNrLWFkZEV2ZW50TGlzdGVuZXIuaHRtbAorZmFzdC9ldmVudHMvZHJhZy1hbmQtZHJvcC1kYXRh
VHJhbnNmZXItdHlwZXMtbm9jcmFzaC5odG1sCitmYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLWZp
cmUtZHJhZy1kcmFnb3Zlci5odG1sCitmYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLmh0bWwKK2Zh
c3QvZXZlbnRzL2RyYWctZmlsZS1jcmFzaC5odG1sCitmYXN0L2V2ZW50cy9kcmFnLWluLWZyYW1l
cy5odG1sCitmYXN0L2V2ZW50cy9kcmFnLXBhcmVudC1ub2RlLmh0bWwKK2Zhc3QvZXZlbnRzL2Ry
YWctdG8tbmF2aWdhdGUuaHRtbAorZmFzdC9ldmVudHMvZHJvcHpvbmUtMDAxLmh0bWwKK2Zhc3Qv
ZXZlbnRzL2Ryb3B6b25lLTAwMi5odG1sCitmYXN0L2V2ZW50cy9kcm9wem9uZS0wMDMuaHRtbAor
ZmFzdC9ldmVudHMvZHJvcHpvbmUtMDA0Lmh0bWwKK2Zhc3QvZXZlbnRzL2V2ZW50LWlucHV0LWNv
bnRlbnRFZGl0YWJsZS5odG1sCitmYXN0L2V2ZW50cy9mb2N1cy1jaGFuZ2UtY3Jhc2guaHRtbAor
ZmFzdC9ldmVudHMvZm9jdXMtY2hhbmdlLWNyYXNoMi5odG1sCitmYXN0L2V2ZW50cy9mb2N1c2lu
Z1VubG9hZGVkRnJhbWUuaHRtbAorZmFzdC9ldmVudHMvaW1hZ2VtYXAtbm9yZW5kZXItY3Jhc2gu
aHRtbAorZmFzdC9ldmVudHMvaW5wdXQtdGFiLWZvY3VzLW5vLWR1cGxpY2F0ZS1ldmVudHMuaHRt
bAorZmFzdC9ldmVudHMvaW5wdXRUZXh0LW5ldmVyLWZpcmVkLW9uLWtleWRvd24tY2FuY2VsLmh0
bWwKK2Zhc3QvZXZlbnRzL2pzLWtleWJvYXJkLWV2ZW50LWNyZWF0aW9uLmh0bWwKK2Zhc3QvZXZl
bnRzL2tleS1ldmVudHMtaW4taW5wdXQtYnV0dG9uLmh0bWwKK2Zhc3QvZXZlbnRzL2tleS1ldmVu
dHMtaW4taW5wdXQtdGV4dC5odG1sCitmYXN0L2V2ZW50cy9rZXlkb3duLTEuaHRtbAorZmFzdC9l
dmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwKK2Zhc3QvZXZlbnRzL2tleWRvd24ta2V5
cHJlc3MtZm9jdXMtY2hhbmdlLmh0bWwKK2Zhc3QvZXZlbnRzL2tleWRvd24ta2V5cHJlc3MtcHJl
dmVudERlZmF1bHQuaHRtbAorZmFzdC9ldmVudHMva2V5ZG93bi1udW1wYWQta2V5cy5odG1sCitm
YXN0L2V2ZW50cy9rZXlkb3duLXJlbW92ZS1mcmFtZS5odG1sCitmYXN0L2V2ZW50cy9rZXlwcmVz
cy1mb2N1cy1jaGFuZ2UuaHRtbAorZmFzdC9ldmVudHMva2V5cHJlc3MtcmVtb3ZlZC1ub2RlLmh0
bWwKK2Zhc3QvZXZlbnRzL21lbnUta2V5ZG93bi1vbi1oaWRkZW4tZWxlbWVudC5odG1sCitmYXN0
L2V2ZW50cy9tb3VzZS1jbGljay1ldmVudHMuaHRtbAorZmFzdC9ldmVudHMvbW91c2V1cC1mcm9t
LWJ1dHRvbjIuaHRtbAorZmFzdC9ldmVudHMvbXVsdGlsaW5lLWxpbmstYXJyb3ctbmF2aWdhdGlv
bi5odG1sCitmYXN0L2V2ZW50cy9ub2RlLWV2ZW50LWFuY2hvci1sb2NrLmh0bWwKK2Zhc3QvZXZl
bnRzL29uY2hhbmdlLXBhc3N3b3JkZmllbGQuaHRtbAorZmFzdC9ldmVudHMvb25jaGFuZ2Utc2Vh
cmNoZmllbGQuaHRtbAorZmFzdC9ldmVudHMvb25jaGFuZ2Utc2VsZWN0LXBvcHVwLmh0bWwKK2Zh
c3QvZXZlbnRzL29uY2hhbmdlLXRleHQtZm9ybS1maWVsZC5odG1sCitmYXN0L2V2ZW50cy9vbmNo
YW5nZS10ZXh0ZmllbGQuaHRtbAorZmFzdC9ldmVudHMvb25kcmFnZW50ZXIuaHRtbAorZmFzdC9l
dmVudHMvb25kcm9wLXRleHQtaHRtbC5odG1sCitmYXN0L2V2ZW50cy9vbnNlYXJjaC1lbnRlci5o
dG1sCitmYXN0L2V2ZW50cy9vcGVuLXdpbmRvdy1mcm9tLWFub3RoZXItZnJhbWUuaHRtbAorZmFz
dC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zhc3Qv
ZXZlbnRzL3BvcHVwLWJsb2NraW5nLWNsaWNrLWluLWlmcmFtZS5odG1sCitmYXN0L2V2ZW50cy9w
b3B1cC13aGVuLXNlbGVjdC1jaGFuZ2UuaHRtbAorZmFzdC9ldmVudHMvcHJldmVudC1kcmFnLXRv
LW5hdmlnYXRlLmh0bWwKK2Zhc3QvZXZlbnRzL3JlY29yZGVkLWtleWRvd24tZXZlbnQuaHRtbAor
ZmFzdC9ldmVudHMvcmVtb3ZlLWNoaWxkLW9uc2Nyb2xsLmh0bWwKK2Zhc3QvZXZlbnRzL3JpZ2h0
LWNsaWNrLWZvY3VzLmh0bWwKK2Zhc3QvZXZlbnRzL3Njcm9sbC1hZnRlci1jbGljay1vbi10YWIt
aW5kZXguaHRtbAorZmFzdC9ldmVudHMvc2Nyb2xsLWluLXNjYWxlZC1wYWdlLXdpdGgtb3ZlcmZs
b3ctaGlkZGVuLmh0bWwKK2Zhc3QvZXZlbnRzL3Njcm9sbGJhci1kb3VibGUtY2xpY2suaHRtbAor
ZmFzdC9ldmVudHMvc2VsZWN0LWVsZW1lbnQuaHRtbAorZmFzdC9ldmVudHMvc2VsZWN0LW9uY2hh
bmdlLWNyYXNoLmh0bWwKK2Zhc3QvZXZlbnRzL3NlbGVjdGlvbmNoYW5nZS11c2VyLWluaXRpYXRl
ZC5odG1sCitmYXN0L2V2ZW50cy9zZWxlY3RzdGFydC1ieS1kb3VibGUtdHJpcGxlLWNsaWNrcy5o
dG1sCitmYXN0L2V2ZW50cy9zZWxlY3RzdGFydC1ieS1kcmFnLmh0bWwKK2Zhc3QvZXZlbnRzL3Nl
bGVjdHN0YXJ0LWR1cmluZy1hdXRvc2Nyb2xsLmh0bWwKK2Zhc3QvZXZlbnRzL3NlbGVjdHN0YXJ0
LXByZXZlbnQtc2VsZWN0aW9uLW9uLXJpZ2h0LWNsaWNrLmh0bWwKK2Zhc3QvZXZlbnRzL3NwYWNl
LXNjcm9sbC1ldmVudC5odG1sCitmYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5w
dXQtdGV4dC5odG1sCitmYXN0L2V2ZW50cy9zdGFuZGFsb25lLWltYWdlLWRyYWctdG8tZWRpdGFi
bGUuaHRtbAorZmFzdC9ldmVudHMvdGFiLWZvY3VzLWhpZGRlbi5odG1sCitmYXN0L2V2ZW50cy90
YWItaW1hZ2VtYXAuaHRtbAorZmFzdC9ldmVudHMvdGFiLWlzLWZvY3VzYWJsZS1hc3NlcnQuaHRt
bAorZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9jdXMtY2hhaW4uaHRtbAorZmFzdC9ldmVudHMvd2hl
ZWxldmVudC1pbi1ob3Jpem9udGFsLXNjcm9sbGJhci1pbi1ydGwuaHRtbAorZmFzdC9ldmVudHMv
d2hlZWxldmVudC1pbi12ZXJ0aWNhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwKK2Zhc3QvZXZlbnRz
L3pvb20tZGJsY2xpY2suaHRtbAorZmFzdC9maWxlcy9hcHBseS1ibG9iLXVybC10by1pbWcuaHRt
bAorZmFzdC9maWxlcy9hcHBseS1ibG9iLXVybC10by14aHIuaHRtbAorZmFzdC9maWxlcy9kb211
cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLmh0bWwKK2Zhc3QvZmlsZXMvZmlsZS1y
ZWFkZXItYWJvcnQuaHRtbAorZmFzdC9maWxlcy9yZWFkLWJsb2ItYXN5bmMuaHRtbAorZmFzdC9m
aWxlcy9yZWFkLWZpbGUtYXN5bmMuaHRtbAorZmFzdC9mb3Jtcy9hY2Nlc3Mta2V5Lmh0bWwKK2Zh
c3QvZm9ybXMvYnV0dG9uLWVudGVyLWNsaWNrLmh0bWwKK2Zhc3QvZm9ybXMvYnV0dG9uLXNwYWNl
YmFyLWNsaWNrLmh0bWwKK2Zhc3QvZm9ybXMvZGlzYWJsZWQtc2VhcmNoLWlucHV0Lmh0bWwKK2Zh
c3QvZm9ybXMvZGlzcGxheS1ub25lLWluLW9uY2hhbmdlLWtleWJvYXJkLmh0bWwKK2Zhc3QvZm9y
bXMvZHJhZy1pbnRvLXRleHRhcmVhLmh0bWwKK2Zhc3QvZm9ybXMvZHJhZy1vdXQtb2YtdGV4dGFy
ZWEuaHRtbAorZmFzdC9mb3Jtcy9lbXB0eS10ZXh0YXJlYS10b2dnbGUtZGlzYWJsZWQuaHRtbAor
ZmFzdC9mb3Jtcy9lbnRlci1jbGlja3MtYnV0dG9ucy5odG1sCitmYXN0L2Zvcm1zL2ZvY3VzLWNo
YW5nZS1vbi1rZXlwcmVzcy5odG1sCitmYXN0L2Zvcm1zL2ZvY3VzLWNvbnRyb2wtdG8tcGFnZS5o
dG1sCitmYXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi1pbnB1dC5odG1sCitmYXN0L2Zvcm1zL2Zv
Y3VzLXNlbGVjdGlvbi10ZXh0YXJlYS5odG1sCitmYXN0L2Zvcm1zL2dldC1maWxlLXVwbG9hZC5o
dG1sCitmYXN0L2Zvcm1zL2ltcGxpY2l0LXN1Ym1pc3Npb24uaHRtbAorZmFzdC9mb3Jtcy9pbnB1
dC1maWxlLXJlLXJlbmRlci5odG1sCitmYXN0L2Zvcm1zL2lucHV0LWxpdmUtcHNldWRvLXNlbGVj
dG9ycy5odG1sCitmYXN0L2Zvcm1zL2lucHV0LW51bWJlci1rZXlvcGVyYXRpb24uaHRtbAorZmFz
dC9mb3Jtcy9pbnB1dC1yYWRpby1jaGVja2VkLXRhYi5odG1sCitmYXN0L2Zvcm1zL2lucHV0LXJl
YWRvbmx5LWF1dG9zY3JvbGwuaHRtbAorZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWRvdWJsZS1jbGlj
ay5odG1sCitmYXN0L2Zvcm1zL2lucHV0LXRleHQtZHJhZy1kb3duLmh0bWwKK2Zhc3QvZm9ybXMv
aW5wdXQtdGV4dC1lbnRlci5odG1sCitmYXN0L2Zvcm1zL2lucHV0LXRleHQtb3B0aW9uLWRlbGV0
ZS5odG1sCitmYXN0L2Zvcm1zL2lucHV0LXRleHQtc2Nyb2xsLWxlZnQtb24tYmx1ci5odG1sCitm
YXN0L2Zvcm1zL2lucHV0LXR5cGUtY2hhbmdlLWluLW9uZm9jdXMta2V5Ym9hcmQuaHRtbAorZmFz
dC9mb3Jtcy9sZWdlbmQtYWNjZXNzLWtleS5odG1sCitmYXN0L2Zvcm1zL2xpc3Rib3gtZGVzZWxl
Y3Qtc2Nyb2xsLmh0bWwKK2Zhc3QvZm9ybXMvbGlzdGJveC1vbmNoYW5nZS5odG1sCitmYXN0L2Zv
cm1zL2xpc3Rib3gtc2VsZWN0aW9uLmh0bWwKK2Zhc3QvZm9ybXMvbGlzdGJveC10eXBlYWhlYWQt
Y3lyaWxsaWMuaHRtbAorZmFzdC9mb3Jtcy9saXN0Ym94LXR5cGVhaGVhZC1lbXB0eS5odG1sCitm
YXN0L2Zvcm1zL2xpc3Rib3gtdHlwZWFoZWFkLWdyZWVrLmh0bWwKK2Zhc3QvZm9ybXMvbGlzdGJv
eC10eXBlYWhlYWQtc2Nyb2xsLmh0bWwKK2Zhc3QvZm9ybXMvb25jaGFuZ2UtZW50ZXItc3VibWl0
Lmh0bWwKK2Zhc3QvZm9ybXMvb25zZWxlY3QtdGV4dGFyZWEuaHRtbAorZmFzdC9mb3Jtcy9vbnNl
bGVjdC10ZXh0ZmllbGQuaHRtbAorZmFzdC9mb3Jtcy9vcHRpb24tbW91c2VldmVudHMuaHRtbAor
ZmFzdC9mb3Jtcy9yYWRpb19jaGVja2VkX25hbWUuaHRtbAorZmFzdC9mb3Jtcy9yYW5nZS9zbGlk
ZXItZGVsZXRlLXdoaWxlLWRyYWdnaW5nLXRodW1iLmh0bWwKK2Zhc3QvZm9ybXMvcmFuZ2Uvc2xp
ZGVyLW1vdXNlLWV2ZW50cy5odG1sCitmYXN0L2Zvcm1zL3JhbmdlL3NsaWRlci1vbmNoYW5nZS1l
dmVudC5odG1sCitmYXN0L2Zvcm1zL3JlbmRlci10ZXh0LWNyYXNoLmh0bWwKK2Zhc3QvZm9ybXMv
cmVzdG9yZS1zZWxlY3Rpb24tYWZ0ZXItbGF5b3V0Lmh0bWwKK2Zhc3QvZm9ybXMvc2VhcmNoLWV2
ZW50LWRlbGF5Lmh0bWwKK2Zhc3QvZm9ybXMvc2VsZWN0LWFjY2Vzc2tleS5odG1sCitmYXN0L2Zv
cm1zL3NlbGVjdC1jYWNoZS1kZXN5bmNocm9uaXphdGlvbi5odG1sCitmYXN0L2Zvcm1zL3NlbGVj
dC1kb3VibGUtb25jaGFuZ2UuaHRtbAorZmFzdC9mb3Jtcy9zZWxlY3QtZW1wdHktbGlzdC5odG1s
CitmYXN0L2Zvcm1zL3NlbGVjdC1saXN0Ym94LWZvY3VzLWRpc3BsYXlub25lLmh0bWwKK2Zhc3Qv
Zm9ybXMvc2VsZWN0LWxpc3Rib3gtbXVsdGlwbGUtbm8tZm9jdXNyaW5nLmh0bWwKK2Zhc3QvZm9y
bXMvc2VsZWN0LW9wdGlvbi1hY2Nlc3NrZXktY3Jhc2guaHRtbAorZmFzdC9mb3Jtcy9zZWxlY3Qt
cG9wdXAtcGFnZWtleXMuaHRtbAorZmFzdC9mb3Jtcy9zZWxlY3Qtc2NyaXB0LW9uY2hhbmdlLmh0
bWwKK2Zhc3QvZm9ybXMvc2VsZWN0LXR5cGUtYWhlYWQtbGlzdC1ib3gtbm8tc2VsZWN0aW9uLmh0
bWwKK2Zhc3QvZm9ybXMvc2VsZWN0LXR5cGUtYWhlYWQtbm9uLWxhdGluLmh0bWwKK2Zhc3QvZm9y
bXMvdGFiYmluZy1pbnB1dC1pZnJhbWUuaHRtbAorZmFzdC9mb3Jtcy90ZXh0LWlucHV0LWV2ZW50
Lmh0bWwKK2Zhc3QvZm9ybXMvdGV4dGFyZWEtYXJyb3ctbmF2aWdhdGlvbi5odG1sCitmYXN0L2Zv
cm1zL3RleHRhcmVhLWlucHV0LWV2ZW50Lmh0bWwKK2Zhc3QvZm9ybXMvdGV4dGFyZWEtbGl2ZS1w
c2V1ZG8tc2VsZWN0b3JzLmh0bWwKK2Zhc3QvZm9ybXMvdGV4dGFyZWEtc2Nyb2xsZWQtZW5kbGlu
ZS1jYXJldC5odG1sCitmYXN0L2Zvcm1zL3RleHRhcmVhLXRleHRsZW5ndGguaHRtbAorZmFzdC9m
b3Jtcy90ZXh0YXJlYS10eXBlLXNwYWNlcy5odG1sCitmYXN0L2Zvcm1zL3RleHRmaWVsZC1kcmFn
LWludG8tZGlzYWJsZWQuaHRtbAorZmFzdC9mb3Jtcy90ZXh0ZmllbGQtaW5zaWRlLWFuY2hvci5o
dG1sCitmYXN0L2Zvcm1zL3RleHRmaWVsZC1vbmNoYW5nZS1kZWxldGlvbi5odG1sCitmYXN0L2Zv
cm1zL3RleHRmaWVsZC1vdXRsaW5lLmh0bWwKK2Zhc3QvZm9ybXMvdGV4dGZpZWxkLXRvLXBhc3N3
b3JkLW9uLWZvY3VzLmh0bWwKK2Zhc3QvZm9ybXMvdGV4dGlucHV0LW5vdC1maXJlZC1vbi1lbnRl
ci1pbi1pbnB1dC5odG1sCitmYXN0L2ZyYW1lcy9pZnJhbWUtd2luZG93LWZvY3VzLmh0bWwKK2Zh
c3QvZnJhbWVzL3Rha2UtZm9jdXMtZnJvbS1pZnJhbWUuaHRtbAorZmFzdC9oaXN0b3J5L2hpc3Rv
cnlfcmVsb2FkLmh0bWwKK2Zhc3QvaGlzdG9yeS93aW5kb3ctb3Blbi5odG1sCitmYXN0L2xpc3Rz
L2RyYWctaW50by1tYXJrZXIuaHRtbAorZmFzdC9sb2FkZXIvcG9saWN5LWRlbGVnYXRlLWFjdGlv
bi1oaXQtdGVzdC16b29tZWQuaHRtbAorZmFzdC9yZXBhaW50L2ZpeGVkLW1vdmUtYWZ0ZXIta2V5
Ym9hcmQtc2Nyb2xsLmh0bWwKK2Zhc3QvcmVwYWludC9qYXBhbmVzZS1ybC1zZWxlY3Rpb24tcmVw
YWludC5odG1sCitmYXN0L3JlcGFpbnQvcmVwYWludC1hY3Jvc3Mtd3JpdGluZy1tb2RlLWJvdW5k
YXJ5Lmh0bWwKK2Zhc3QvcmVwYWludC9zZWxlY3Rpb24tcmwuaHRtbAorZmFzdC90ZXh0L2F0c3Vp
LXJ0bC1vdmVycmlkZS1zZWxlY3Rpb24uaHRtbAorZmFzdC90ZXh0L2ludGVybmF0aW9uYWwva2ht
ZXItc2VsZWN0aW9uLmh0bWwKK2Zhc3QvdGV4dC9vZmZzZXRGb3JQb3NpdGlvbi1jb21wbGV4LWZh
bGxiYWNrLmh0bWwKK2Zhc3QvdGV4dC9yZXNldC1kcmFnLW9uLW1vdXNlLWRvd24uaHRtbAorZmFz
dC93cml0aW5nLW1vZGUvaG9yaXpvbnRhbC1idC1yZXBsYWNlZC1zZWxlY3Rpb24uaHRtbAorZmFz
dC93cml0aW5nLW1vZGUvamFwYW5lc2UtbHItc2VsZWN0aW9uLmh0bWwKK2Zhc3Qvd3JpdGluZy1t
b2RlL2phcGFuZXNlLXJsLXNlbGVjdGlvbi5odG1sCitmYXN0L3dyaXRpbmctbW9kZS92ZXJ0aWNh
bC1sci1yZXBsYWNlZC1zZWxlY3Rpb24uaHRtbAorZmFzdC93cml0aW5nLW1vZGUvdmVydGljYWwt
cmwtcmVwbGFjZWQtc2VsZWN0aW9uLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLWh5
YnJpZC1ibG9iLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZHJhZy1vdmVyLXJlbW90ZS1jb250ZW50
Lmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9kaWZpZWQuaHRtbAor
aHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3NlbmQtZHJhZ2dlZC1maWxlLmh0bWwKK2h0dHAvdGVz
dHMvbG9jYWwvZmlsZWFwaS9zZW5kLXNsaWNlZC1kcmFnZ2VkLWZpbGUuaHRtbAoraHR0cC90ZXN0
cy9sb2NhbC9mb3JtZGF0YS9mb3JtLWRhdGEtd2l0aC11bmtub3duLWZpbGUtZXh0ZW5zaW9uLmh0
bWwKK2h0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvc2VuZC1mb3JtLWRhdGEtY29uc3RydWN0ZWQt
ZnJvbS1mb3JtLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvc2VuZC1mb3JtLWRhdGEt
d2l0aC1zbGljZWQtZmlsZS5odG1sCitodHRwL3Rlc3RzL2xvY2FsL2Zvcm1kYXRhL3NlbmQtZm9y
bS1kYXRhLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvdXBsb2FkLWV2ZW50cy5odG1s
CitodHRwL3Rlc3RzL21pc2MvYnViYmxlLWRyYWctZXZlbnRzLmh0bWwKK2h0dHAvdGVzdHMvbWlz
Yy9pc2luZGV4LXdpdGgtbm8tZm9ybS1iYXNlLWhyZWYuaHRtbAoraHR0cC90ZXN0cy9taXNjL2lz
aW5kZXgtd2l0aC1uby1mb3JtLmh0bWwKK2h0dHAvdGVzdHMvbmF2aWdhdGlvbi9uby1yZWZlcnJl
ci1yZXNldC5odG1sCitodHRwL3Rlc3RzL25hdmlnYXRpb24vbm8tcmVmZXJyZXItdGFyZ2V0LWJs
YW5rLmh0bWwKK2h0dHAvdGVzdHMvc2VjdXJpdHkvY2xpcGJvYXJkL2NsaXBib2FyZC1maWxlLWFj
Y2Vzcy5odG1sCitodHRwL3Rlc3RzL3NlY3VyaXR5L2RhdGFUcmFuc2Zlci1zZXQtZGF0YS1maWxl
LXVybC5odG1sCitodHRwL3Rlc3RzL3NlY3VyaXR5L2RyYWctZHJvcC1zYW1lLXVuaXF1ZS1vcmln
aW4uaHRtbAoraHR0cC90ZXN0cy9zZWN1cml0eS9kcmFnLW92ZXItcmVtb3RlLWNvbnRlbnQtaWZy
YW1lLmh0bWwKK2h0dHAvdGVzdHMvc2VjdXJpdHkvaXNvbGF0ZWRXb3JsZC91c2VyR2VzdHVyZUV2
ZW50cy5odG1sCittZWRpYS9jb250cm9scy1kcmFnLXRpbWViYXIuaHRtbAorbWVkaWEvY29udHJv
bHMtcmlnaHQtY2xpY2stb24tdGltZWJhci5odG1sCittZWRpYS9tZWRpYS1mdWxsc2NyZWVuLWlu
bGluZS5odG1sCittZWRpYS92aWRlby1jb250cm9scy12aXNpYmxlLWF1ZGlvLW9ubHkuaHRtbAor
cGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvYmFja3dhcmQtZGVsZXRlLmh0bWwKK3BsYXRm
b3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YVRyYW5zZmVyLXNldC1kYXRhLWZpbGUtdXJs
Lmh0bWwKK3BsYXRmb3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1zZWxlY3Rpb25zLXRv
LWNvbnRlbnRlZGl0YWJsZS5odG1sCitwbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vZG91
YmxlY2xpY2stc2hvdWxkLW5vdC1leHBhbmQtYWNyb3NzLWxpbmVzLmh0bWwKK3BsYXRmb3JtL21h
Yy9lZGl0aW5nL3NlbGVjdGlvbi93b3JkLXRoYWkuaHRtbAorcGxhdGZvcm0vbWFjL2Zhc3QvZm9y
bXMvbGlzdGJveC1zY3JvbGxiYXItaGl0LXRlc3QuaHRtbAorcGxhdGZvcm0vbWFjL2Zhc3Qvb3Zl
cmZsb3cvb3ZlcmZsb3ctc2Nyb2xsYmFyLWhpdC10ZXN0Lmh0bWwKK3BsdWdpbnMvY2xpY2tpbmct
bWlzc2luZy1wbHVnaW4tZmlyZXMtZGVsZWdhdGUuaHRtbAorcGx1Z2lucy9rZXlib2FyZC1ldmVu
dHMuaHRtbAorcGx1Z2lucy9tb3VzZS1ldmVudHMuaHRtbAorcGx1Z2lucy9tb3VzZS1jbGljay1p
ZnJhbWUtdG8tcGx1Z2luLmh0bWwKK3Njcm9sbGJhcnMvc2Nyb2xsYmFyLWlmcmFtZS1jbGljay1k
b2VzLW5vdC1ibHVyLWNvbnRlbnQuaHRtbAorc2Nyb2xsYmFycy9zY3JvbGxiYXItbWlzcy1tb3Vz
ZW1vdmUtZGlzYWJsZWQuaHRtbAorc2Nyb2xsYmFycy9zY3JvbGxldmVudC1pZnJhbWUtbm8tc2Ny
b2xsaW5nLXdoZWVsLmh0bWwKKwogZWRpdGluZy9zZWxlY3Rpb24vNTA1NzUwNi0yLmh0bWwKIGVk
aXRpbmcvc2VsZWN0aW9uL2NhcmV0LXJ0bC0yLmh0bWwKIGVkaXRpbmcvc2VsZWN0aW9uL2NhcmV0
LXJ0bC5odG1sCkBAIC05OSw2ICs0NDIsNDAyIEBAIG1lZGlhL2F1ZGlvLWRlbGV0ZS13aGlsZS1z
bGlkZXItdGh1bWItY2wKIHBsdWdpbnMvcmVzaXplLWZyb20tcGx1Z2luLmh0bWwKIHBsYXRmb3Jt
L3F0L2Zhc3QvZXZlbnRzL2V2ZW50LXNlbmRlci1rZXlkb3duLWZyYW1lLmh0bWwKIAorc3ZnL2N1
c3RvbS9hYnNvbHV0ZS1zaXplZC1jb250ZW50LXdpdGgtcmVzb3VyY2VzLnhodG1sCitzdmcvY3Vz
dG9tL2NpcmNsZS1tb3ZlLWludmFsaWRhdGlvbi5zdmcKK3N2Zy9jdXN0b20vY2xpcC1wYXRoLWNo
aWxkLWNoYW5nZXMuc3ZnCitzdmcvY3VzdG9tL2NsaXAtcGF0aC1ocmVmLWNoYW5nZXMuc3ZnCitz
dmcvY3VzdG9tL2NsaXAtcGF0aC1pZC1jaGFuZ2VzLnN2Zworc3ZnL2N1c3RvbS9jbGlwLXBhdGgt
dW5pdHMtY2hhbmdlcy5zdmcKK3N2Zy9jdXN0b20vZGVlcC1keW5hbWljLXVwZGF0ZXMuc3ZnCitz
dmcvY3VzdG9tL2ZvcmVpZ25PYmplY3QtY3Jhc2gtb24taG92ZXIueG1sCitzdmcvY3VzdG9tL2dl
dHNjcmVlbmN0bS1pbi1zY3JvbGxhYmxlLWRpdi1hcmVhLW5lc3RlZC54aHRtbAorc3ZnL2N1c3Rv
bS9nZXRzY3JlZW5jdG0taW4tc2Nyb2xsYWJsZS1kaXYtYXJlYS54aHRtbAorc3ZnL2N1c3RvbS9n
ZXRzY3JlZW5jdG0taW4tc2Nyb2xsYWJsZS1zdmctYXJlYS54aHRtbAorc3ZnL2N1c3RvbS9ncmFk
aWVudC1hdHRyLXVwZGF0ZS5zdmcKK3N2Zy9jdXN0b20vaGl0LXRlc3QtcGF0aC1zdHJva2Uuc3Zn
CitzdmcvY3VzdG9tL2hpdC10ZXN0LXBhdGguc3ZnCitzdmcvY3VzdG9tL2hpdC10ZXN0LXVuY2xv
c2VkLXN1YnBhdGhzLnN2Zworc3ZnL2N1c3RvbS9oaXQtdGVzdC13aXRoLWJyLnhodG1sCitzdmcv
Y3VzdG9tL2hvdmVyLWRlZmF1bHQtZmlsbC5zdmcKK3N2Zy9jdXN0b20vaW1hZ2UtY2xpcHBlZC1o
aXQuc3ZnCitzdmcvY3VzdG9tL2lubmVyLXN2Zy1oaXQtdGVzdC5zdmcKK3N2Zy9jdXN0b20vanMt
dXBkYXRlLWNvbnRhaW5lci5zdmcKK3N2Zy9jdXN0b20vanMtdXBkYXRlLWNvbnRhaW5lcjIuc3Zn
CitzdmcvY3VzdG9tL2pzLXVwZGF0ZS1ncmFkaWVudC5zdmcKK3N2Zy9jdXN0b20vanMtdXBkYXRl
LXBhdGgtY2hhbmdlcy5zdmcKK3N2Zy9jdXN0b20vanMtdXBkYXRlLXBhdGgtcmVtb3ZhbC5zdmcK
K3N2Zy9jdXN0b20vanMtdXBkYXRlLXBhdHRlcm4tY2hpbGQuc3ZnCitzdmcvY3VzdG9tL2pzLXVw
ZGF0ZS1wYXR0ZXJuLnN2Zworc3ZnL2N1c3RvbS9qcy11cGRhdGUtcG9seWdvbi1jaGFuZ2VzLnN2
Zworc3ZnL2N1c3RvbS9qcy11cGRhdGUtcG9seWdvbi1yZW1vdmFsLnN2Zworc3ZnL2N1c3RvbS9q
cy11cGRhdGUtc3RvcC1saW5rZWQtZ3JhZGllbnQuc3ZnCitzdmcvY3VzdG9tL2pzLXVwZGF0ZS1z
dG9wLnN2Zworc3ZnL2N1c3RvbS9qcy11cGRhdGUtc3R5bGUuc3ZnCitzdmcvY3VzdG9tL2xpbmtp
bmctYS0wMy1iLWFsbC5zdmcKK3N2Zy9jdXN0b20vbGlua2luZy1hLTAzLWItcHJlc2VydmVBc3Bl
Y3RSYXRpby5zdmcKK3N2Zy9jdXN0b20vbGlua2luZy1hLTAzLWItdHJhbnNmb3JtLnN2Zworc3Zn
L2N1c3RvbS9saW5raW5nLWEtMDMtYi12aWV3Qm94LXRyYW5zZm9ybS5zdmcKK3N2Zy9jdXN0b20v
bGlua2luZy1hLTAzLWItdmlld0JveC5zdmcKK3N2Zy9jdXN0b20vbGlua2luZy1hLTAzLWItdmll
d1RhcmdldC5zdmcKK3N2Zy9jdXN0b20vbGlua2luZy1hLTAzLWItem9vbUFuZFBhbi5zdmcKK3N2
Zy9jdXN0b20vbWFya2VyLWNoYW5nZXMuc3ZnCitzdmcvY3VzdG9tL21hcmtlci1jaGlsZC1jaGFu
Z2VzLWNzcy5zdmcKK3N2Zy9jdXN0b20vbWFya2VyLWNoaWxkLWNoYW5nZXMuc3ZnCitzdmcvY3Vz
dG9tL21hcmtlci1zdHJva2VXaWR0aC1jaGFuZ2VzLnN2Zworc3ZnL2N1c3RvbS9tYXJrZXItdmll
d0JveC1jaGFuZ2VzLnN2Zworc3ZnL2N1c3RvbS9tYXNrLWNoYW5nZXMuc3ZnCitzdmcvY3VzdG9t
L21hc2stY2hpbGQtY2hhbmdlcy5zdmcKK3N2Zy9jdXN0b20vbW91c2UtbW92ZS1vbi1zdmctY29u
dGFpbmVyLXN0YW5kYWxvbmUuc3ZnCitzdmcvY3VzdG9tL21vdXNlLW1vdmUtb24tc3ZnLWNvbnRh
aW5lci54aHRtbAorc3ZnL2N1c3RvbS9tb3VzZS1tb3ZlLW9uLXN2Zy1yb290LXN0YW5kYWxvbmUu
c3ZnCitzdmcvY3VzdG9tL21vdXNlLW1vdmUtb24tc3ZnLXJvb3QueGh0bWwKK3N2Zy9jdXN0b20v
cG9pbnRlci1ldmVudHMtaW1hZ2Uuc3ZnCitzdmcvY3VzdG9tL3BvaW50ZXItZXZlbnRzLXBhdGgu
c3ZnCitzdmcvY3VzdG9tL3BvaW50ZXItZXZlbnRzLXRleHQuc3ZnCitzdmcvY3VzdG9tL3BvbHls
aW5lLWhpdHRlc3Quc3ZnCitzdmcvY3VzdG9tL3ByZXZlbnQtZGVmYXVsdC5zdmcKK3N2Zy9jdXN0
b20vcmVsYXRpdmUtc2l6ZWQtY29udGVudC13aXRoLXJlc291cmNlcy54aHRtbAorc3ZnL2N1c3Rv
bS9yZXBhaW50LW9uLWNvbnN0YW50LXNpemUtY2hhbmdlLnN2Zworc3ZnL2N1c3RvbS9yZXBhaW50
LXN0cm9rZS13aWR0aC1jaGFuZ2VzLnN2Zworc3ZnL2N1c3RvbS9yZXNvdXJjZS1pbnZhbGlkYXRl
LW9uLXRhcmdldC11cGRhdGUuc3ZnCitzdmcvY3VzdG9tL3Njcm9sbC1oaXQtdGVzdC54aHRtbAor
c3ZnL2N1c3RvbS9zdHJva2Utd2lkdGgtY2xpY2suc3ZnCitzdmcvY3VzdG9tL3RleHQtaGl0LXRl
c3Quc3ZnCitzdmcvY3VzdG9tL3VzZS1jbGlwcGVkLWhpdC5zdmcKK3N2Zy9jdXN0b20vdXNlLWNz
cy1ldmVudHMuc3ZnCitzdmcvY3VzdG9tL3VzZS1lbGVtZW50SW5zdGFuY2UtZXZlbnQtdGFyZ2V0
LnN2Zworc3ZnL2N1c3RvbS91c2UtZWxlbWVudEluc3RhbmNlLW1ldGhvZHMuc3ZnCitzdmcvY3Vz
dG9tL3VzZS1ldmVudC1oYW5kbGVyLW9uLXJlZmVyZW5jZWQtZWxlbWVudC5zdmcKK3N2Zy9jdXN0
b20vdXNlLWV2ZW50LWhhbmRsZXItb24tdXNlLWVsZW1lbnQuc3ZnCitzdmcvY3VzdG9tL3VzZS1l
dmVudHMtY3Jhc2guc3ZnCitzdmcvY3VzdG9tL3VzZS1pbnN0YW5jZVJvb3QtYXMtZXZlbnQtdGFy
Z2V0LnhodG1sCitzdmcvY3VzdG9tL3VzZS1pbnN0YW5jZVJvb3QtZXZlbnQtYnViYmxpbmcueGh0
bWwKK3N2Zy9jdXN0b20vdXNlLWluc3RhbmNlUm9vdC1ldmVudC1saXN0ZW5lcnMueGh0bWwKK3N2
Zy9jdXN0b20vdXNlLXNldEF0dHJpYnV0ZS1jcmFzaC5zdmcKK3N2Zy9jdXN0b20vdmlld0JveC1o
aXQuc3ZnCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0FFbGVtZW50LWRvbS1ocmVmLWF0dHIuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdBRWxlbWVudC1kb20tdGFyZ2V0LWF0dHIuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdBRWxlbWVudC1zdmdkb20taHJlZi1wcm9wLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQUVsZW1lbnQtc3ZnZG9tLXRhcmdldC1wcm9wLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2lyY2xlRWxlbWVudC1kb20tY3gtYXR0ci5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVsZW1lbnQtZG9tLWN5LWF0dHIuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdDaXJjbGVFbGVtZW50LWRvbS1yLWF0dHIuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdDaXJjbGVFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2lyY2xlRWxlbWVudC1zdmdkb20tY3gtcHJvcC5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVsZW1lbnQtc3ZnZG9tLWN5LXByb3AuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDaXJjbGVFbGVtZW50LXN2Z2RvbS1yLXByb3AuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDaXJjbGVFbGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1
cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2xpcFBhdGgtaW5mbHVlbmNlcy1oaXRU
ZXN0aW5nLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2xpcFBhdGhFbGVtZW50LWRvbS1j
bGlwUGF0aFVuaXRzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDbGlwUGF0aEVs
ZW1lbnQtc3ZnZG9tLWNsaXBQYXRoVW5pdHMtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0N1cnNvckVsZW1lbnQtZG9tLXgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0N1cnNvckVsZW1lbnQtZG9tLXktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0N1
cnNvckVsZW1lbnQtc3ZnZG9tLXgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0N1
cnNvckVsZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0Vs
bGlwc2VFbGVtZW50LWRvbS1jeC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxs
aXBzZUVsZW1lbnQtZG9tLWN5LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxp
cHNlRWxlbWVudC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0VsbGlwc2VFbGVtZW50LWRvbS1yeC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRWxsaXBzZUVsZW1lbnQtZG9tLXJ5LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdFbGxpcHNlRWxlbWVudC1zdmdkb20tY3gtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0VsbGlwc2VFbGVtZW50LXN2Z2RvbS1jeS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1zdmdkb20tcngtcHJvcC5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LXN2Z2RvbS1yeS1wcm9wLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVCbGVuZEVsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRUJsZW5kRWxlbWVudC1kb20taW4yLWF0dHIuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRUJsZW5kRWxlbWVudC1kb20tbW9kZS1hdHRyLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVCbGVuZEVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUJsZW5kRWxlbWVudC1zdmdkb20taW4yLXByb3AuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUJsZW5kRWxlbWVudC1zdmdkb20tbW9kZS1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQtZG9tLWlu
LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbG9yTWF0cml4RWxlbWVudC1k
b20tdHlwZS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb2xvck1hdHJpeEVs
ZW1lbnQtZG9tLXZhbHVlcy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb2xv
ck1hdHJpeEVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRUNvbG9yTWF0cml4RWxlbWVudC1zdmdkb20tdHlwZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQtc3ZnZG9tLXZhbHVlcy1wcm9wLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LWRvbS1pbi1hdHRyLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LWRvbS1pbjItYXR0
ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1kb20tazEt
YXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1kb20t
azItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1k
b20tazMtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVu
dC1kb20tazQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxl
bWVudC1kb20tb3BlcmF0b3ItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29t
cG9zaXRlRWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFQ29tcG9zaXRlRWxlbWVudC1zdmdkb20taW4yLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtc3ZnZG9tLWsxLXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtc3ZnZG9tLWsyLXByb3AuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtc3ZnZG9tLWszLXByb3AuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtc3ZnZG9tLWs0LXBy
b3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtc3ZnZG9t
LW9wZXJhdG9yLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0
cml4RWxlbWVudC1kb20tYmlhcy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVD
b252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLWRpdmlzb3ItYXR0ci5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1lZGdlTW9kZS1hdHRyLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLWluLWF0
dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1k
b20ta2VybmVsTWF0cml4LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZv
bHZlTWF0cml4RWxlbWVudC1kb20ta2VybmVsVW5pdExlbmd0aC1hdHRyLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLW9yZGVyLWF0dHIuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1kb20tcHJl
c2VydmVBbHBoYS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1h
dHJpeEVsZW1lbnQtZG9tLXRhcmdldFgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS10YXJnZXRZLWF0dHIuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20tYmlhcy1wcm9wLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9t
LWRpdmlzb3ItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRy
aXhFbGVtZW50LXN2Z2RvbS1lZGdlTW9kZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20ta2VybmVsTWF0cml4
LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVu
dC1zdmdkb20ta2VybmVsVW5pdExlbmd0aC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLW9yZGVyLXByb3AuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20tcHJlc2VydmVB
bHBoYS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVs
ZW1lbnQtc3ZnZG9tLXRhcmdldFgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
Q29udm9sdmVNYXRyaXhFbGVtZW50LXN2Z2RvbS10YXJnZXRZLXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtZG9tLWRpZmZ1c2VDb25zdGFu
dC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVt
ZW50LWRvbS1pbi1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaWZmdXNlTGln
aHRpbmdFbGVtZW50LWRvbS1saWdodGluZy1jb2xvci1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LWRvbS1zdXJmYWNlU2NhbGUtYXR0ci5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC1saWdo
dGluZy1jb2xvci1jc3MtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVz
ZUxpZ2h0aW5nRWxlbWVudC1zdmdkb20tZGlmZnVzZUNvbnN0YW50LXByb3AuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtc3ZnZG9tLWluLXByb3Au
aHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtc3Zn
ZG9tLXN1cmZhY2VTY2FsZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXNw
bGFjZW1lbnRNYXBFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LWRvbS1pbjItYXR0ci5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1kb20tc2NhbGUtYXR0ci5odG1s
CitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1kb20teENo
YW5uZWxTZWxlY3Rvci1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXNwbGFj
ZW1lbnRNYXBFbGVtZW50LWRvbS15Q2hhbm5lbFNlbGVjdG9yLWF0dHIuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtc3ZnZG9t
LWluMi1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXNwbGFjZW1lbnRNYXBF
bGVtZW50LXN2Z2RvbS1zY2FsZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVE
aXNwbGFjZW1lbnRNYXBFbGVtZW50LXN2Z2RvbS14Q2hhbm5lbFNlbGVjdG9yLXByb3AuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtc3ZnZG9tLXlD
aGFubmVsU2VsZWN0b3ItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzdGFu
dExpZ2h0RWxlbWVudC1kb20tYXppbXV0aC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LWRvbS1lbGV2YXRpb24tYXR0ci5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZFRGlzdGFudExpZ2h0RWxlbWVudC1zdmdkb20tYXppbXV0aC1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LXN2Z2Rv
bS1lbGV2YXRpb24tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRmxvb2RFbGVt
ZW50LWRvbS1mbG9vZC1jb2xvci1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVG
bG9vZEVsZW1lbnQtZG9tLWZsb29kLW9wYWNpdHktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFRmxvb2RFbGVtZW50LXN2Z2RvbS1mbG9vZC1jb2xvci1wcm9wLmh0bWwKK3N2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVGbG9vZEVsZW1lbnQtc3ZnZG9tLWZsb29kLW9wYWNpdHktcHJv
cC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFR2F1c3NpYW5CbHVyRWxlbWVudC1kb20t
aW4tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFR2F1c3NpYW5CbHVyRWxlbWVu
dC1kb20tc3RkRGV2aWF0aW9uLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUdh
dXNzaWFuQmx1ckVsZW1lbnQtZG9tLXN0ZERldmlhdGlvbi1jYWxsLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVHYXVzc2lhbkJsdXJFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVJbWFnZUVsZW1lbnQtZG9tLXByZXNlcnZlQXNwZWN0UmF0
aW8tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFSW1hZ2VFbGVtZW50LXN2Z2Rv
bS1wcmVzZXJ2ZUFzcGVjdFJhdGlvLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RU1lcmdlTm9kZUVsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRU1lcmdlTm9kZUVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRU1vcnBob2xvZ3lFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVNb3JwaG9sb2d5RWxlbWVudC1kb20tb3BlcmF0b3ItYXR0ci5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTW9ycGhvbG9neUVsZW1lbnQtZG9tLXJhZGl1cy1hdHRy
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVNb3JwaG9sb2d5RWxlbWVudC1zdmdkb20t
aW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTW9ycGhvbG9neUVsZW1lbnQt
c3ZnZG9tLW9wZXJhdG9yLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU1vcnBo
b2xvZ3lFbGVtZW50LXN2Z2RvbS1yYWRpdXMtY2FsbC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFT2Zmc2V0RWxlbWVudC1kb20tZHgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFT2Zmc2V0RWxlbWVudC1kb20tZHktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFT2Zmc2V0RWxlbWVudC1kb20taW4tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFT2Zmc2V0RWxlbWVudC1zdmdkb20tZHgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFT2Zmc2V0RWxlbWVudC1zdmdkb20tZHktcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFT2Zmc2V0RWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFUG9pbnRMaWdodEVsZW1lbnQtZG9tLXgtYXR0ci5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZFUG9pbnRMaWdodEVsZW1lbnQtZG9tLXktYXR0ci5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZFUG9pbnRMaWdodEVsZW1lbnQtZG9tLXotYXR0ci5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFUG9pbnRMaWdodEVsZW1lbnQtc3ZnZG9tLXgtcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFUG9pbnRMaWdodEVsZW1lbnQtc3ZnZG9tLXkt
cHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFUG9pbnRMaWdodEVsZW1lbnQtc3Zn
ZG9tLXotcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGlu
Z0VsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1
bGFyTGlnaHRpbmdFbGVtZW50LWRvbS1zcGVjdWxhckNvbnN0YW50LWF0dHIuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LWRvbS1zcGVjdWxhckV4
cG9uZW50LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRp
bmdFbGVtZW50LWRvbS1zdXJhY2VTY2FsZS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC1yZW1vdmUtbGlnaHRTb3VyY2UuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1pbi1w
cm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVu
dC1zdmdkb20tc3BlY3VsYXJDb25zdGFudC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC1zdmdkb20tc3BlY3VsYXJFeHBvbmVudC1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC1z
dmdkb20tc3VyYWNlU2NhbGUtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3Bv
dExpZ2h0RWxlbWVudC1kb20tbGltaXRpbmdDb25lQW5nbGUtYXR0ci5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1kb20tcG9pbnRzQXRYLWF0dHIuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtZG9tLXBvaW50c0F0WS1h
dHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS1w
b2ludHNBdFotYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxl
bWVudC1kb20tc3BlY3VsYXJFeHBvbmVudC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS14LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtZG9tLXktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1kb20tei1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LXN2Z2RvbS1saW1pdGluZ0NvbmVBbmdsZS1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LXN2Z2RvbS1w
b2ludHNBdFgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxl
bWVudC1zdmdkb20tcG9pbnRzQXRZLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLXBvaW50c0F0Wi1wcm9wLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LXN2Z2RvbS1zcGVjdWxhckV4cG9uZW50LXBy
b3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9t
LXgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1z
dmdkb20teS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVt
ZW50LXN2Z2RvbS16LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVRpbGVFbGVt
ZW50LWRvbS1pbi1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUaWxlRWxlbWVu
dC1zdmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5j
ZUVsZW1lbnQtZG9tLWJhc2VGcmVxdWVuY3ktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtZG9tLW51bU9jdGF2ZXMtYXR0ci5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtZG9tLXNlZWQtYXR0ci5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtZG9tLXN0aXRjaFRpbGVz
LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVtZW50LWRv
bS10eXBlLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVt
ZW50LXN2Z2RvbS1iYXNlRnJlcXVlbmN5LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRVR1cmJ1bGVuY2VFbGVtZW50LXN2Z2RvbS1udW1PY3RhdmVzLXByb3AuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVtZW50LXN2Z2RvbS1zZWVkLXByb3AuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVtZW50LXN2Z2RvbS1zdGl0
Y2hUaWxlcy1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxl
bWVudC1zdmdkb20tdHlwZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVy
RWxlbWVudC1kb20tZmlsdGVyUmVzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
aWx0ZXJFbGVtZW50LWRvbS1maWx0ZXJVbml0cy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRmlsdGVyRWxlbWVudC1kb20taGVpZ2h0LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGaWx0ZXJFbGVtZW50LWRvbS1wcmltaXRpdmVVbml0cy1hdHRyLmh0bWwKK3N2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1kb20td2lkdGgtYXR0ci5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtZG9tLXgtYXR0ci5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtZG9tLXktYXR0ci5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtc3ZnZG9tLWZpbHRlclJlcy1jYWxsLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1zdmdkb20tZmlsdGVyUmVzWC1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1zdmdkb20tZmlsdGVy
UmVzWS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1zdmdk
b20tZmlsdGVyVW5pdHMtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVs
ZW1lbnQtc3ZnZG9tLWhlaWdodC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmls
dGVyRWxlbWVudC1zdmdkb20tcHJpbWl0aXZlVW5pdHMtcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS14LXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS15LXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtZG9tLWhlaWdo
dC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRh
cmRBdHRyaWJ1dGVzLWRvbS1yZXN1bHQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1kb20td2lkdGgtYXR0ci5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1k
b20teC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3Rh
bmRhcmRBdHRyaWJ1dGVzLWRvbS15LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
aWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtc3ZnZG9tLWhlaWdodC1wcm9wLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVz
LXN2Z2RvbS1yZXN1bHQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlclBy
aW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1zdmdkb20td2lkdGgtcHJvcC5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1zdmdkb20t
eC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRh
cmRBdHRyaWJ1dGVzLXN2Z2RvbS15LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
b3JlaWduT2JqZWN0RWxlbWVudC1kb20taGVpZ2h0LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LWRvbS13aWR0aC1hdHRy
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQtZG9tLXgt
YXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LWRv
bS15LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGb3JlaWduT2JqZWN0RWxlbWVu
dC1zdmdkb20taGVpZ2h0LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGb3JlaWdu
T2JqZWN0RWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LXN2Z2RvbS13aWR0aC1wcm9wLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQtc3ZnZG9tLXgtcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LXN2Z2RvbS15
LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdHRWxlbWVudC1kb20tcmVxdWlyZWRG
ZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0dFbGVtZW50LXN2Z2RvbS1yZXF1
aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LWRv
bS1oZWlnaHQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1k
b20tcHJlc2VydmVBc3BlY3RSYXRpby1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
SW1hZ2VFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHSW1hZ2VFbGVtZW50LWRvbS13aWR0aC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHSW1hZ2VFbGVtZW50LWRvbS14LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdJbWFnZUVsZW1lbnQtZG9tLXktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0lt
YWdlRWxlbWVudC1zdmdkb20taGVpZ2h0LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdJbWFnZUVsZW1lbnQtc3ZnZG9tLXByZXNlcnZlQXNwZWN0UmF0aW8tcHJvcC5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1zdmdkb20td2lkdGgtcHJv
cC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1zdmdkb20teC1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2Z2RvbS15LXByb3Au
aHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1kb20tcmVxdWlyZWRGZWF0
dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVFbGVtZW50LWRvbS14MS1hdHRy
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZUVsZW1lbnQtZG9tLXgyLWF0dHIuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1kb20teTEtYXR0ci5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVFbGVtZW50LWRvbS15Mi1hdHRyLmh0bWwKK3N2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHTGluZUVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1zdmdkb20teDEtcHJvcC5odG1s
CitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVFbGVtZW50LXN2Z2RvbS14Mi1wcm9wLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZUVsZW1lbnQtc3ZnZG9tLXkxLXByb3AuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1zdmdkb20teTItcHJvcC5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC1kb20tZ3JhZGllbnRU
cmFuc2Zvcm0tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50
RWxlbWVudC1kb20tZ3JhZGllbnRVbml0cy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LWRvbS14MS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LWRvbS14Mi1hdHRyLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LWRvbS15MS1hdHRyLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LWRvbS15Mi1hdHRyLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1n
cmFkaWVudFRyYW5zZm9ybS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZWFy
R3JhZGllbnRFbGVtZW50LXN2Z2RvbS1ncmFkaWVudFVuaXRzLXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLXgxLXByb3AuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLXgyLXBy
b3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtc3Zn
ZG9tLXkxLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVs
ZW1lbnQtc3ZnZG9tLXkyLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJF
bGVtZW50LWRvbS1tYXJrZXJIZWlnaHQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R01hcmtlckVsZW1lbnQtZG9tLW1hcmtlclVuaXRzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdNYXJrZXJFbGVtZW50LWRvbS1tYXJrZXJXaWR0aC1hdHRyLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1kb20tb3JpZW50LWF0dHIuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LWRvbS1yZWZYLWF0dHIuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LWRvbS1yZWZZLWF0dHIuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LXN2Z2RvbS1tYXJrZXJIZWlnaHQtcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLW1hcmtlclVu
aXRzLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LXN2Z2Rv
bS1tYXJrZXJXaWR0aC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxl
bWVudC1zdmdkb20tb3JpZW50QW5nbGUtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R01hcmtlckVsZW1lbnQtc3ZnZG9tLW9yaWVudFR5cGUtcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLXJlZlgtcHJvcC5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLXJlZlktcHJvcC5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLXNldE9yaWVudFRvQW5nbGUtY2Fs
bC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLXNldE9y
aWVudFRvQXV0by1jYWxsLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQt
ZG9tLWhlaWdodC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQt
ZG9tLW1hc2tDb250ZW50VW5pdHMtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01h
c2tFbGVtZW50LWRvbS1tYXNrVW5pdHMtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R01hc2tFbGVtZW50LWRvbS13aWR0aC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
TWFza0VsZW1lbnQtZG9tLXgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tF
bGVtZW50LWRvbS15LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVu
dC1zdmdkb20taGVpZ2h0LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxl
bWVudC1zdmdkb20tbWFza0NvbnRlbnRVbml0cy1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHTWFza0VsZW1lbnQtc3ZnZG9tLW1hc2tVbml0cy1wcm9wLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR1BhdGhFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUGF0aEVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1kb20taGVpZ2h0LWF0dHIuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1kb20tcGF0dGVybkNvbnRl
bnRVbml0cy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQt
ZG9tLXBhdHRlcm5UcmFuc2Zvcm0tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1Bh
dHRlcm5FbGVtZW50LWRvbS1wYXR0ZXJuVW5pdHMtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR1BhdHRlcm5FbGVtZW50LWRvbS13aWR0aC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtZG9tLXgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR1BhdHRlcm5FbGVtZW50LWRvbS15LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdQYXR0ZXJuRWxlbWVudC1zdmdkb20taGVpZ2h0LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1zdmdkb20tcGF0dGVybkNvbnRlbnRVbml0cy1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtc3ZnZG9tLXBhdHRl
cm5UcmFuc2Zvcm0tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVt
ZW50LXN2Z2RvbS1wYXR0ZXJuVW5pdHMtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R1BhdHRlcm5FbGVtZW50LXN2Z2RvbS13aWR0aC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHUGF0dGVybkVsZW1lbnQtc3ZnZG9tLXgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR1BhdHRlcm5FbGVtZW50LXN2Z2RvbS15LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdQb2x5Z29uRWxlbWVudC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR1BvbHlnb25FbGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUG9seWxpbmVFbGVtZW50LWRvbS1yZXF1aXJlZEZl
YXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUG9seWxpbmVFbGVtZW50LXN2Z2Rv
bS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3Jh
ZGllbnRFbGVtZW50LWRvbS1jeC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFk
aWFsR3JhZGllbnRFbGVtZW50LWRvbS1jeS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LWRvbS1meC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LWRvbS1meS1hdHRyLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LWRvbS1ncmFkaWVudFRyYW5zZm9y
bS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50
LWRvbS1ncmFkaWVudFVuaXRzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRp
YWxHcmFkaWVudEVsZW1lbnQtZG9tLXItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R1JhZGlhbEdyYWRpZW50RWxlbWVudC1zdmdkb20tY3gtcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1zdmdkb20tY3ktcHJvcC5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1zdmdkb20tZngtcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1zdmdkb20t
ZnktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVu
dC1zdmdkb20tZ3JhZGllbnRUcmFuc2Zvcm0tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1zdmdkb20tZ3JhZGllbnRVbml0cy1wcm9wLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1yLXBy
b3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1kb20taGVpZ2h0LWF0
dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1kb20tcmVxdWlyZWRG
ZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LWRvbS13aWR0
aC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtZG9tLXgtYXR0
ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LWRvbS15LWF0dHIuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1zdmdkb20taGVpZ2h0LXByb3Au
aHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1zdmdkb20tcmVxdWlyZWRG
ZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LXN2Z2RvbS13
aWR0aC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtc3ZnZG9t
LXgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LXN2Z2RvbS15
LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdTVkdFbGVtZW50LWRvbS1yZXF1aXJl
ZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHU1ZHRWxlbWVudC1zdmdkb20t
cmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1RSZWZFbGVtZW50
LWRvbS1ocmVmLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUZXh0RWxlbWVudC1k
b20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1RleHRFbGVt
ZW50LWRvbS10cmFuc2Zvcm0tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1RleHRF
bGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHVGV4dEVsZW1lbnQtc3ZnZG9tLXJvdGF0ZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHVGV4dEVsZW1lbnQtc3ZnZG9tLXRyYW5zZm9ybS1wcm9wLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHVXNlRWxlbWVudC1kb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR1VzZUVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAor
c3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS5zdmcKK3N2Zy90ZXh0L2ZvcmVpZ25PYmpl
Y3QtcmVwYWludC54bWwKK3N2Zy90ZXh0L3NlbGVjdGlvbi10cmlwbGVjbGljay5zdmcKK3N2Zy96
b29tL3BhZ2Uvem9vbS1jb29yZHMtdmlld2F0dHItMDEtYi5zdmcKK3N2Zy96b29tL3RleHQvem9v
bS1jb29yZHMtdmlld2F0dHItMDEtYi5zdmcKKwogIyBXZWJLaXQyIG5lZWRzIGxheW91dFRlc3RD
b250cm9sbGVyLm92ZXJyaWRlUHJlZmVyZW5jZQogIyA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQyMTk3PgogIyBHZXQgYWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcgd29y
a2luZyB3aXRoIHdlYmtpdDIKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi13azIvU2tp
cHBlZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4td2syL1NraXBwZWQJ
KHJldmlzaW9uIDk1MDI1KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luLXdrMi9Ta2lwcGVk
CSh3b3JraW5nIGNvcHkpCkBAIC01Miw2ICs1MiwzNDkgQEAgc3RvcmFnZS9kYXRhYmFzZS1sb2Nr
LWFmdGVyLXJlbG9hZC5odG1sCiAKICMgV2ViS2l0VGVzdFJ1bm5lciBuZWVkcyBhbiBpbXBsZW1l
bnRhdGlvbiBvZiBldmVudFNlbmRlcgogIyA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTQyMTk0PgorZWRpdGluZy9kZWxldGluZy81NzI5NjgwLmh0bWwKK2VkaXRpbmcv
ZGVsZXRpbmcvZGVsZXRlLWJ5LXdvcmQtMDAxLmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvZGVsZXRl
LWJ5LXdvcmQtMDAyLmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvZGVsZXRlLWxpZ2F0dXJlLTAwMS5o
dG1sCitlZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1saWdhdHVyZS0wMDIuaHRtbAorZWRpdGluZy9k
ZWxldGluZy9kZWxldGUtbGlnYXR1cmUtMDAzLmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvZm9yd2Fy
ZC1kZWxldGUta2V5Lmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvc2tpcC12aXJhbWEtMDAxLmh0bWwK
K2VkaXRpbmcvZGVsZXRpbmcvc21hcnQtZGVsZXRlLTAwMS5odG1sCitlZGl0aW5nL2RlbGV0aW5n
L3NtYXJ0LWRlbGV0ZS0wMDIuaHRtbAorZWRpdGluZy9kZWxldGluZy9zbWFydC1kZWxldGUtMDAz
Lmh0bWwKK2VkaXRpbmcvZGVsZXRpbmcvc21hcnQtZGVsZXRlLTAwNC5odG1sCitlZGl0aW5nL2V4
ZWNDb21tYW5kL2ZpbmRTdHJpbmctMi5odG1sCitlZGl0aW5nL2lucHV0L2VtYWNzLWN0cmwtby5o
dG1sCitlZGl0aW5nL2lucHV0L29wdGlvbi1wYWdlLXVwLWRvd24uaHRtbAorZWRpdGluZy9pbnB1
dC9wYWdlLXVwLWRvd24tc2Nyb2xscy5odG1sCitlZGl0aW5nL2lucHV0L3Njcm9sbC12aWV3cG9y
dC1wYWdlLXVwLWRvd24uaHRtbAorZWRpdGluZy9pbnB1dC9zdHlsZS1jaGFuZ2UtZHVyaW5nLWlu
cHV0Lmh0bWwKK2VkaXRpbmcvaW5zZXJ0aW5nL3R5cGluZy10YWItZGVzaWdubW9kZS1mb3Jtcy5o
dG1sCitlZGl0aW5nL2luc2VydGluZy90eXBpbmctdGFiLWRlc2lnbm1vZGUuaHRtbAorZWRpdGlu
Zy9wYXN0ZWJvYXJkLzQ5NDQ3NzAtMi5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvNDk0NzEzMC5o
dG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1zdGFuZGFsb25lLWltYWdlLWNyYXNoLmh0bWwK
K2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWFuZC1kcm9wLWltYWdlLWNvbnRlbnRlZGl0YWJsZS5o
dG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1hbmQtZHJvcC1pbnB1dGltYWdlLWNvbnRlbnRl
ZGl0YWJsZS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1hbmQtZHJvcC1vYmplY3RpbWFn
ZS1jb250ZW50ZWRpdGFibGUuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZHJvcC1kZWFk
LWZyYW1lLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWRyb3AtaW5wdXQtdGV4dGFyZWEu
aHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZHJvcC1saXN0Lmh0bWwKK2VkaXRpbmcvcGFz
dGVib2FyZC9kcmFnLWRyb3AtbW9kaWZpZXMtcGFnZS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQv
ZHJhZy1kcm9wLXVybC10ZXh0Lmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWltYWdlLWlu
LWFib3V0LWJsYW5rLWZyYW1lLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWltYWdlLXRv
LWNvbnRlbnRlZGl0YWJsZS1pbi1pZnJhbWUuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWct
c2VsZWN0ZWQtaW1hZ2UtdG8tY29udGVudGVkaXRhYmxlLmh0bWwKK2VkaXRpbmcvcGFzdGVib2Fy
ZC9kcm9wLWZpbGUtc3ZnLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9kcm9wLWlucHV0dGV4dC1h
Y3F1aXJlcy1zdHlsZS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvZHJvcC1saW5rLmh0bWwKK2Vk
aXRpbmcvcGFzdGVib2FyZC9kcm9wLXRleHQtZXZlbnRzLmh0bWwKK2VkaXRpbmcvcGFzdGVib2Fy
ZC9kcm9wLXRleHQtd2l0aG91dC1zZWxlY3Rpb24uaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2Vt
YWNzLWNudGwteS0wMDEuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2VtYWNzLWN0cmwtYS1rLXku
aHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL2VtYWNzLWN0cmwtay15LTAwMS5odG1sCitlZGl0aW5n
L3Bhc3RlYm9hcmQvZmlsZS1pbnB1dC1maWxlcy1hY2Nlc3MuaHRtbAorZWRpdGluZy9wYXN0ZWJv
YXJkL2ZpbGVzLWR1cmluZy1wYWdlLWRyYWdzLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9nZXQt
ZGF0YS10ZXh0LXBsYWluLWRyb3AuaHRtbAorZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWJlZm9y
ZS10YWItc3Bhbi5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtZHJhZy1kcm9wLmh0bWwK
K2VkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDEuaHRtbAorZWRpdGluZy9wYXN0ZWJv
YXJkL3NtYXJ0LXBhc3RlLTAwMi5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUt
MDAzLmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDQuaHRtbAorZWRpdGlu
Zy9wYXN0ZWJvYXJkL3NtYXJ0LXBhc3RlLTAwNS5odG1sCitlZGl0aW5nL3Bhc3RlYm9hcmQvc21h
cnQtcGFzdGUtMDA3Lmh0bWwKK2VkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDguaHRt
bAorZWRpdGluZy9wYXN0ZWJvYXJkL3N1YmZyYW1lLWRyYWduZHJvcC0xLmh0bWwKK2VkaXRpbmcv
c2VsZWN0aW9uLzE0OTcxLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uLzQ4OTU0MjgtMS5odG1sCitl
ZGl0aW5nL3NlbGVjdGlvbi80ODk1NDI4LTQuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vNTA1NzUw
Ni5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi81MjMyMTU5Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9u
LzUzMzM3MjUuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vNTM1NDQ1NS0xLmh0bWwKK2VkaXRpbmcv
c2VsZWN0aW9uLzUzNTQ0NTUtMi5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9hbmNob3ItZm9jdXMy
Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2FuY2hvci1mb2N1czMuaHRtbAorZWRpdGluZy9zZWxl
Y3Rpb24vYnV0dG9uLXJpZ2h0LWNsaWNrLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2NsaWNrLWlu
LWZvY3VzYWJsZS1saW5rLXNob3VsZC1ub3QtY2xlYXItc2VsZWN0aW9uLmh0bWwKK2VkaXRpbmcv
c2VsZWN0aW9uL2NsaWNrLWluLW1hcmdpbnMtaW5zaWRlLWVkaXRhYmxlLWRpdi5odG1sCitlZGl0
aW5nL3NlbGVjdGlvbi9jbGljay1pbi1wYWRkaW5nLXdpdGgtbXVsdGlwbGUtbGluZS1ib3hlcy5o
dG1sCitlZGl0aW5nL3NlbGVjdGlvbi9jb250YWlucy1ib3VuZGFyaWVzLmh0bWwKK2VkaXRpbmcv
c2VsZWN0aW9uL2NvbnRleHQtbWVudS1vbi10ZXh0Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2Rv
dWJsZWNsaWNrLWJlc2lkZS1jci1zcGFuLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNs
aWNrLWNyYXNoLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2Ut
Y3Jhc2guaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWct
Y3Jhc2guaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1s
CitlZGl0aW5nL3NlbGVjdGlvbi9kcmFnLXNlbGVjdC0xLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9u
L2RyYWctc2VsZWN0LXJhcGlkbHkuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZHJhZy1zdGFydC1l
dmVudC1jbGllbnQteC15Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2RyYWctdG8tY29udGVudGVk
aXRhYmxlLWlmcmFtZS5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9lZGl0YWJsZS1saW5rcy5odG1s
CitlZGl0aW5nL3NlbGVjdGlvbi9lbXB0eS1jZWxsLXJpZ2h0LWNsaWNrLmh0bWwKK2VkaXRpbmcv
c2VsZWN0aW9uL2V4cGFuZGluZy1zZWxlY3Rpb25zLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2V4
cGFuZGluZy1zZWxlY3Rpb25zMi5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQtYWZ0ZXIt
bW91c2Utc2VsZWN0aW9uLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1zZWxlY3Rpb24t
YWZ0ZXItZG91YmxlLWNsaWNrLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL2Zha2UtZG91YmxlY2xp
Y2suaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vZmFrZS1kcmFnLmh0bWwKK2VkaXRpbmcvc2VsZWN0
aW9uL2lubGluZS1jbG9zZXN0LWxlYWYtY2hpbGQuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vbGFz
dC1lbXB0eS1pbmxpbmUuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vbWl4ZWQtZWRpdGFiaWxpdHkt
MTAuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vbW92ZS1iZWdpbi1lbmQuaHRtbAorZWRpdGluZy9z
ZWxlY3Rpb24vcGFyYWdyYXBoLWdyYW51bGFyaXR5Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3Nl
bGVjdC1mcm9tLXRleHRmaWVsZC1vdXR3YXJkcy5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9zZWxl
Y3Qtb3V0LW9mLWVkaXRhYmxlLmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdC1vdXQtb2Yt
ZmxvYXRlZC1jb250ZW50ZWRpdGFibGUuaHRtbAorZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0LW91
dC1vZi1mbG9hdGVkLWlucHV0Lmh0bWwKK2VkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdC1vdXQtb2Yt
ZmxvYXRlZC10ZXh0YXJlYS5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Rpb24tYWN0aW9u
cy5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9zaGlmdC1jbGljay5odG1sCitlZGl0aW5nL3NlbGVj
dGlvbi9zaHJpbmstc2VsZWN0aW9uLWFmdGVyLXNoaWZ0LXBhZ2Vkb3duLmh0bWwKK2VkaXRpbmcv
c2VsZWN0aW9uL3VzZXItZHJhZy1lbGVtZW50LWFuZC11c2VyLXNlbGVjdC1ub25lLmh0bWwKK2Vk
aXRpbmcvc2VsZWN0aW9uL3dvcmQtZ3JhbnVsYXJpdHkuaHRtbAorZWRpdGluZy9zcGVsbGluZy9j
b250ZXh0LW1lbnUtc3VnZ2VzdGlvbnMuaHRtbAorZWRpdGluZy9zcGVsbGluZy9zcGVsbGNoZWNr
LXBhc3RlLmh0bWwKK2VkaXRpbmcvdW5kby91bmRvLWRlbGV0ZVdvcmQuaHRtbAorZWRpdGluZy91
bmRvL3VuZG8tc21hcnQtZGVsZXRlLXJldmVyc2VkLXNlbGVjdGlvbi5odG1sCitlZGl0aW5nL3Vu
ZG8vdW5kby1zbWFydC1kZWxldGUtd29yZC5odG1sCitmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2hp
dHRlc3Qtb24tcmVsYXRpdmUtcG9zaXRpb25lZC1jaGlsZHJlbi5odG1sCitmYXN0L2Nzcy91c2Vy
LWRyYWctbm9uZS5odG1sCitmYXN0L2RvbS9IVE1MU2VsZWN0RWxlbWVudC9jbGljay1zaXplLXpl
cm8tbm8tY3Jhc2guaHRtbAorZmFzdC9kb20vV2luZG93L3dpbmRvdy1wb3N0bWVzc2FnZS1jbG9u
ZS1mcmFtZXMuaHRtbAorZmFzdC9kb20vV2luZG93L3dpbmRvdy1wb3N0bWVzc2FnZS1jbG9uZS5o
dG1sCitmYXN0L2RvbS9oaWRkZW4taWZyYW1lLW5vLWZvY3VzLmh0bWwKK2Zhc3QvZG9tL2hvcml6
b250YWwtc2Nyb2xsYmFyLWluLXJ0bC5odG1sCitmYXN0L2RvbS92ZXJ0aWNhbC1zY3JvbGxiYXIt
aW4tcnRsLmh0bWwKK2Zhc3QvZHluYW1pYy9sYXllci1oaXQtdGVzdC1jcmFzaC5odG1sCitmYXN0
L2VuY29kaW5nL21haWx0by1hbHdheXMtdXRmLTguaHRtbAorZmFzdC9ldmVudHMvNTA1NjYxOS5o
dG1sCitmYXN0L2V2ZW50cy9hY2Nlc3Mta2V5LXNlbGYtZGVzdHJ1Y3QuaHRtbAorZmFzdC9ldmVu
dHMvYW5jaG9yLWVtcHR5LWZvY3VzLmh0bWwKK2Zhc3QvZXZlbnRzL2Fycm93LWtleXMtb24tYm9k
eS5odG1sCitmYXN0L2V2ZW50cy9hcnJvdy1uYXZpZ2F0aW9uLmh0bWwKK2Zhc3QvZXZlbnRzL2F0
dGVtcHQtc2VsZWN0LWFsbC13aXRoLXdyb25nLW1vZGlmaWVyLmh0bWwKK2Zhc3QvZXZlbnRzL2F1
dG9zY3JvbGwtaW4tdGV4dGZpZWxkLmh0bWwKK2Zhc3QvZXZlbnRzL2F1dG9zY3JvbGwtbm9uc2Ny
b2xsYWJsZS1pZnJhbWUtaW4tc2Nyb2xsYWJsZS1kaXYuaHRtbAorZmFzdC9ldmVudHMvYXV0b3Nj
cm9sbC13aXRoLW5vbi1zY3JvbGxhYmxlLXBhcmVudC5odG1sCitmYXN0L2V2ZW50cy9hdXRvc2Ny
b2xsLmh0bWwKK2Zhc3QvZXZlbnRzL2JvZ3VzLWRyb3BFZmZlY3QtZWZmZWN0QWxsb3dlZC5odG1s
CitmYXN0L2V2ZW50cy9jaGVjay1kZWZvY3VzLWV2ZW50LW9yZGVyLXdoZW4tdHJpZ2dlcmVkLWJ5
LW1vdXNlLWNsaWNrLmh0bWwKK2Zhc3QvZXZlbnRzL2NoZWNrLWRlZm9jdXMtZXZlbnQtb3JkZXIt
d2hlbi10cmlnZ2VyZWQtYnktdGFiLmh0bWwKK2Zhc3QvZXZlbnRzL2NsaWNrLWNvdW50Lmh0bWwK
K2Zhc3QvZXZlbnRzL2NvbnRlbnQtY2hhbmdlZC1kdXJpbmctZHJvcC5odG1sCitmYXN0L2V2ZW50
cy9jb250ZXh0LW5vLWRlc2VsZWN0Lmh0bWwKK2Zhc3QvZXZlbnRzL2NvbnRleHQtb25tb3VzZWRv
d24tZXZlbnQuaHRtbAorZmFzdC9ldmVudHMvY29udGV4dG1lbnUtc2Nyb2xsZWQtcGFnZS13aXRo
LWZyYW1lLmh0bWwKK2Zhc3QvZXZlbnRzL2NvbnRpbnVvdXMtcGxhdGZvcm0td2hlZWxldmVudC1p
bi1zY3JvbGxpbmctZGl2Lmh0bWwKK2Zhc3QvZXZlbnRzL2NyYXNoLW9uLW11dGF0ZS1kdXJpbmct
ZHJvcC5odG1sCitmYXN0L2V2ZW50cy9kYmxjbGljay1hZGRFdmVudExpc3RlbmVyLmh0bWwKK2Zh
c3QvZXZlbnRzL2RyYWctYW5kLWRyb3AtZGF0YVRyYW5zZmVyLXR5cGVzLW5vY3Jhc2guaHRtbAor
ZmFzdC9ldmVudHMvZHJhZy1hbmQtZHJvcC1maXJlLWRyYWctZHJhZ292ZXIuaHRtbAorZmFzdC9l
dmVudHMvZHJhZy1hbmQtZHJvcC5odG1sCitmYXN0L2V2ZW50cy9kcmFnLWZpbGUtY3Jhc2guaHRt
bAorZmFzdC9ldmVudHMvZHJhZy1pbi1mcmFtZXMuaHRtbAorZmFzdC9ldmVudHMvZHJhZy1wYXJl
bnQtbm9kZS5odG1sCitmYXN0L2V2ZW50cy9kcmFnLXRvLW5hdmlnYXRlLmh0bWwKK2Zhc3QvZXZl
bnRzL2Ryb3B6b25lLTAwMS5odG1sCitmYXN0L2V2ZW50cy9kcm9wem9uZS0wMDIuaHRtbAorZmFz
dC9ldmVudHMvZHJvcHpvbmUtMDAzLmh0bWwKK2Zhc3QvZXZlbnRzL2Ryb3B6b25lLTAwNC5odG1s
CitmYXN0L2V2ZW50cy9ldmVudC1pbnB1dC1jb250ZW50RWRpdGFibGUuaHRtbAorZmFzdC9ldmVu
dHMvZm9jdXMtY2hhbmdlLWNyYXNoLmh0bWwKK2Zhc3QvZXZlbnRzL2ZvY3VzLWNoYW5nZS1jcmFz
aDIuaHRtbAorZmFzdC9ldmVudHMvZm9jdXNpbmdVbmxvYWRlZEZyYW1lLmh0bWwKK2Zhc3QvZXZl
bnRzL2ltYWdlbWFwLW5vcmVuZGVyLWNyYXNoLmh0bWwKK2Zhc3QvZXZlbnRzL2lucHV0LXRhYi1m
b2N1cy1uby1kdXBsaWNhdGUtZXZlbnRzLmh0bWwKK2Zhc3QvZXZlbnRzL2lucHV0VGV4dC1uZXZl
ci1maXJlZC1vbi1rZXlkb3duLWNhbmNlbC5odG1sCitmYXN0L2V2ZW50cy9qcy1rZXlib2FyZC1l
dmVudC1jcmVhdGlvbi5odG1sCitmYXN0L2V2ZW50cy9rZXktZXZlbnRzLWluLWlucHV0LWJ1dHRv
bi5odG1sCitmYXN0L2V2ZW50cy9rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRtbAorZmFzdC9l
dmVudHMva2V5ZG93bi0xLmh0bWwKK2Zhc3QvZXZlbnRzL2tleWRvd24tZnVuY3Rpb24ta2V5cy5o
dG1sCitmYXN0L2V2ZW50cy9rZXlkb3duLWtleXByZXNzLWZvY3VzLWNoYW5nZS5odG1sCitmYXN0
L2V2ZW50cy9rZXlkb3duLWtleXByZXNzLXByZXZlbnREZWZhdWx0Lmh0bWwKK2Zhc3QvZXZlbnRz
L2tleWRvd24tbnVtcGFkLWtleXMuaHRtbAorZmFzdC9ldmVudHMva2V5ZG93bi1yZW1vdmUtZnJh
bWUuaHRtbAorZmFzdC9ldmVudHMva2V5cHJlc3MtZm9jdXMtY2hhbmdlLmh0bWwKK2Zhc3QvZXZl
bnRzL2tleXByZXNzLXJlbW92ZWQtbm9kZS5odG1sCitmYXN0L2V2ZW50cy9tZW51LWtleWRvd24t
b24taGlkZGVuLWVsZW1lbnQuaHRtbAorZmFzdC9ldmVudHMvbW91c2UtY2xpY2stZXZlbnRzLmh0
bWwKK2Zhc3QvZXZlbnRzL21vdXNldXAtZnJvbS1idXR0b24yLmh0bWwKK2Zhc3QvZXZlbnRzL211
bHRpbGluZS1saW5rLWFycm93LW5hdmlnYXRpb24uaHRtbAorZmFzdC9ldmVudHMvbm9kZS1ldmVu
dC1hbmNob3ItbG9jay5odG1sCitmYXN0L2V2ZW50cy9vbmNoYW5nZS1wYXNzd29yZGZpZWxkLmh0
bWwKK2Zhc3QvZXZlbnRzL29uY2hhbmdlLXNlYXJjaGZpZWxkLmh0bWwKK2Zhc3QvZXZlbnRzL29u
Y2hhbmdlLXNlbGVjdC1wb3B1cC5odG1sCitmYXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0t
ZmllbGQuaHRtbAorZmFzdC9ldmVudHMvb25jaGFuZ2UtdGV4dGZpZWxkLmh0bWwKK2Zhc3QvZXZl
bnRzL29uZHJhZ2VudGVyLmh0bWwKK2Zhc3QvZXZlbnRzL29uZHJvcC10ZXh0LWh0bWwuaHRtbAor
ZmFzdC9ldmVudHMvb25zZWFyY2gtZW50ZXIuaHRtbAorZmFzdC9ldmVudHMvb3Blbi13aW5kb3ct
ZnJvbS1hbm90aGVyLWZyYW1lLmh0bWwKK2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQt
aW4tc2Nyb2xsaW5nLWRpdi5odG1sCitmYXN0L2V2ZW50cy9wb3B1cC1ibG9ja2luZy1jbGljay1p
bi1pZnJhbWUuaHRtbAorZmFzdC9ldmVudHMvcG9wdXAtd2hlbi1zZWxlY3QtY2hhbmdlLmh0bWwK
K2Zhc3QvZXZlbnRzL3ByZXZlbnQtZHJhZy10by1uYXZpZ2F0ZS5odG1sCitmYXN0L2V2ZW50cy9y
ZWNvcmRlZC1rZXlkb3duLWV2ZW50Lmh0bWwKK2Zhc3QvZXZlbnRzL3JlbW92ZS1jaGlsZC1vbnNj
cm9sbC5odG1sCitmYXN0L2V2ZW50cy9yaWdodC1jbGljay1mb2N1cy5odG1sCitmYXN0L2V2ZW50
cy9zY3JvbGwtYWZ0ZXItY2xpY2stb24tdGFiLWluZGV4Lmh0bWwKK2Zhc3QvZXZlbnRzL3Njcm9s
bC1pbi1zY2FsZWQtcGFnZS13aXRoLW92ZXJmbG93LWhpZGRlbi5odG1sCitmYXN0L2V2ZW50cy9z
Y3JvbGxiYXItZG91YmxlLWNsaWNrLmh0bWwKK2Zhc3QvZXZlbnRzL3NlbGVjdC1lbGVtZW50Lmh0
bWwKK2Zhc3QvZXZlbnRzL3NlbGVjdC1vbmNoYW5nZS1jcmFzaC5odG1sCitmYXN0L2V2ZW50cy9z
ZWxlY3Rpb25jaGFuZ2UtdXNlci1pbml0aWF0ZWQuaHRtbAorZmFzdC9ldmVudHMvc2VsZWN0c3Rh
cnQtYnktZG91YmxlLXRyaXBsZS1jbGlja3MuaHRtbAorZmFzdC9ldmVudHMvc2VsZWN0c3RhcnQt
YnktZHJhZy5odG1sCitmYXN0L2V2ZW50cy9zZWxlY3RzdGFydC1kdXJpbmctYXV0b3Njcm9sbC5o
dG1sCitmYXN0L2V2ZW50cy9zZWxlY3RzdGFydC1wcmV2ZW50LXNlbGVjdGlvbi1vbi1yaWdodC1j
bGljay5odG1sCitmYXN0L2V2ZW50cy9zcGFjZS1zY3JvbGwtZXZlbnQuaHRtbAorZmFzdC9ldmVu
dHMvc3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRtbAorZmFzdC9ldmVudHMvc3Rh
bmRhbG9uZS1pbWFnZS1kcmFnLXRvLWVkaXRhYmxlLmh0bWwKK2Zhc3QvZXZlbnRzL3RhYi1mb2N1
cy1oaWRkZW4uaHRtbAorZmFzdC9ldmVudHMvdGFiLWltYWdlbWFwLmh0bWwKK2Zhc3QvZXZlbnRz
L3RhYi1pcy1mb2N1c2FibGUtYXNzZXJ0Lmh0bWwKK2Zhc3QvZXZlbnRzL3RhYmluZGV4LWZvY3Vz
LWNoYWluLmh0bWwKK2Zhc3QvZXZlbnRzL3doZWVsZXZlbnQtaW4taG9yaXpvbnRhbC1zY3JvbGxi
YXItaW4tcnRsLmh0bWwKK2Zhc3QvZXZlbnRzL3doZWVsZXZlbnQtaW4tdmVydGljYWwtc2Nyb2xs
YmFyLWluLXJ0bC5odG1sCitmYXN0L2V2ZW50cy96b29tLWRibGNsaWNrLmh0bWwKK2Zhc3QvZmls
ZXMvYXBwbHktYmxvYi11cmwtdG8taW1nLmh0bWwKK2Zhc3QvZmlsZXMvYXBwbHktYmxvYi11cmwt
dG8teGhyLmh0bWwKK2Zhc3QvZmlsZXMvZG9tdXJsLXNjcmlwdC1leGVjdXRpb24tY29udGV4dC1j
cmFzaC5odG1sCitmYXN0L2ZpbGVzL2ZpbGUtcmVhZGVyLWFib3J0Lmh0bWwKK2Zhc3QvZmlsZXMv
cmVhZC1ibG9iLWFzeW5jLmh0bWwKK2Zhc3QvZmlsZXMvcmVhZC1maWxlLWFzeW5jLmh0bWwKK2Zh
c3QvZm9ybXMvYWNjZXNzLWtleS5odG1sCitmYXN0L2Zvcm1zL2J1dHRvbi1lbnRlci1jbGljay5o
dG1sCitmYXN0L2Zvcm1zL2J1dHRvbi1zcGFjZWJhci1jbGljay5odG1sCitmYXN0L2Zvcm1zL2Rp
c2FibGVkLXNlYXJjaC1pbnB1dC5odG1sCitmYXN0L2Zvcm1zL2Rpc3BsYXktbm9uZS1pbi1vbmNo
YW5nZS1rZXlib2FyZC5odG1sCitmYXN0L2Zvcm1zL2RyYWctaW50by10ZXh0YXJlYS5odG1sCitm
YXN0L2Zvcm1zL2RyYWctb3V0LW9mLXRleHRhcmVhLmh0bWwKK2Zhc3QvZm9ybXMvZW1wdHktdGV4
dGFyZWEtdG9nZ2xlLWRpc2FibGVkLmh0bWwKK2Zhc3QvZm9ybXMvZW50ZXItY2xpY2tzLWJ1dHRv
bnMuaHRtbAorZmFzdC9mb3Jtcy9mb2N1cy1jaGFuZ2Utb24ta2V5cHJlc3MuaHRtbAorZmFzdC9m
b3Jtcy9mb2N1cy1jb250cm9sLXRvLXBhZ2UuaHRtbAorZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rp
b24taW5wdXQuaHRtbAorZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rpb24tdGV4dGFyZWEuaHRtbAor
ZmFzdC9mb3Jtcy9nZXQtZmlsZS11cGxvYWQuaHRtbAorZmFzdC9mb3Jtcy9pbXBsaWNpdC1zdWJt
aXNzaW9uLmh0bWwKK2Zhc3QvZm9ybXMvaW5wdXQtZmlsZS1yZS1yZW5kZXIuaHRtbAorZmFzdC9m
b3Jtcy9pbnB1dC1saXZlLXBzZXVkby1zZWxlY3RvcnMuaHRtbAorZmFzdC9mb3Jtcy9pbnB1dC1u
dW1iZXIta2V5b3BlcmF0aW9uLmh0bWwKK2Zhc3QvZm9ybXMvaW5wdXQtcmFkaW8tY2hlY2tlZC10
YWIuaHRtbAorZmFzdC9mb3Jtcy9pbnB1dC1yZWFkb25seS1hdXRvc2Nyb2xsLmh0bWwKK2Zhc3Qv
Zm9ybXMvaW5wdXQtdGV4dC1kb3VibGUtY2xpY2suaHRtbAorZmFzdC9mb3Jtcy9pbnB1dC10ZXh0
LWRyYWctZG93bi5odG1sCitmYXN0L2Zvcm1zL2lucHV0LXRleHQtZW50ZXIuaHRtbAorZmFzdC9m
b3Jtcy9pbnB1dC10ZXh0LW9wdGlvbi1kZWxldGUuaHRtbAorZmFzdC9mb3Jtcy9pbnB1dC10ZXh0
LXNjcm9sbC1sZWZ0LW9uLWJsdXIuaHRtbAorZmFzdC9mb3Jtcy9pbnB1dC10eXBlLWNoYW5nZS1p
bi1vbmZvY3VzLWtleWJvYXJkLmh0bWwKK2Zhc3QvZm9ybXMvbGVnZW5kLWFjY2Vzcy1rZXkuaHRt
bAorZmFzdC9mb3Jtcy9saXN0Ym94LWRlc2VsZWN0LXNjcm9sbC5odG1sCitmYXN0L2Zvcm1zL2xp
c3Rib3gtb25jaGFuZ2UuaHRtbAorZmFzdC9mb3Jtcy9saXN0Ym94LXNlbGVjdGlvbi5odG1sCitm
YXN0L2Zvcm1zL2xpc3Rib3gtdHlwZWFoZWFkLWN5cmlsbGljLmh0bWwKK2Zhc3QvZm9ybXMvbGlz
dGJveC10eXBlYWhlYWQtZW1wdHkuaHRtbAorZmFzdC9mb3Jtcy9saXN0Ym94LXR5cGVhaGVhZC1n
cmVlay5odG1sCitmYXN0L2Zvcm1zL2xpc3Rib3gtdHlwZWFoZWFkLXNjcm9sbC5odG1sCitmYXN0
L2Zvcm1zL29uY2hhbmdlLWVudGVyLXN1Ym1pdC5odG1sCitmYXN0L2Zvcm1zL29uc2VsZWN0LXRl
eHRhcmVhLmh0bWwKK2Zhc3QvZm9ybXMvb25zZWxlY3QtdGV4dGZpZWxkLmh0bWwKK2Zhc3QvZm9y
bXMvb3B0aW9uLW1vdXNlZXZlbnRzLmh0bWwKK2Zhc3QvZm9ybXMvcmFkaW9fY2hlY2tlZF9uYW1l
Lmh0bWwKK2Zhc3QvZm9ybXMvcmFuZ2Uvc2xpZGVyLWRlbGV0ZS13aGlsZS1kcmFnZ2luZy10aHVt
Yi5odG1sCitmYXN0L2Zvcm1zL3JhbmdlL3NsaWRlci1tb3VzZS1ldmVudHMuaHRtbAorZmFzdC9m
b3Jtcy9yYW5nZS9zbGlkZXItb25jaGFuZ2UtZXZlbnQuaHRtbAorZmFzdC9mb3Jtcy9yZW5kZXIt
dGV4dC1jcmFzaC5odG1sCitmYXN0L2Zvcm1zL3Jlc3RvcmUtc2VsZWN0aW9uLWFmdGVyLWxheW91
dC5odG1sCitmYXN0L2Zvcm1zL3NlYXJjaC1ldmVudC1kZWxheS5odG1sCitmYXN0L2Zvcm1zL3Nl
bGVjdC1hY2Nlc3NrZXkuaHRtbAorZmFzdC9mb3Jtcy9zZWxlY3QtY2FjaGUtZGVzeW5jaHJvbml6
YXRpb24uaHRtbAorZmFzdC9mb3Jtcy9zZWxlY3QtZG91YmxlLW9uY2hhbmdlLmh0bWwKK2Zhc3Qv
Zm9ybXMvc2VsZWN0LWVtcHR5LWxpc3QuaHRtbAorZmFzdC9mb3Jtcy9zZWxlY3QtbGlzdGJveC1m
b2N1cy1kaXNwbGF5bm9uZS5odG1sCitmYXN0L2Zvcm1zL3NlbGVjdC1saXN0Ym94LW11bHRpcGxl
LW5vLWZvY3VzcmluZy5odG1sCitmYXN0L2Zvcm1zL3NlbGVjdC1vcHRpb24tYWNjZXNza2V5LWNy
YXNoLmh0bWwKK2Zhc3QvZm9ybXMvc2VsZWN0LXBvcHVwLXBhZ2VrZXlzLmh0bWwKK2Zhc3QvZm9y
bXMvc2VsZWN0LXNjcmlwdC1vbmNoYW5nZS5odG1sCitmYXN0L2Zvcm1zL3NlbGVjdC10eXBlLWFo
ZWFkLWxpc3QtYm94LW5vLXNlbGVjdGlvbi5odG1sCitmYXN0L2Zvcm1zL3NlbGVjdC10eXBlLWFo
ZWFkLW5vbi1sYXRpbi5odG1sCitmYXN0L2Zvcm1zL3RhYmJpbmctaW5wdXQtaWZyYW1lLmh0bWwK
K2Zhc3QvZm9ybXMvdGV4dC1pbnB1dC1ldmVudC5odG1sCitmYXN0L2Zvcm1zL3RleHRhcmVhLWFy
cm93LW5hdmlnYXRpb24uaHRtbAorZmFzdC9mb3Jtcy90ZXh0YXJlYS1pbnB1dC1ldmVudC5odG1s
CitmYXN0L2Zvcm1zL3RleHRhcmVhLWxpdmUtcHNldWRvLXNlbGVjdG9ycy5odG1sCitmYXN0L2Zv
cm1zL3RleHRhcmVhLXNjcm9sbGVkLWVuZGxpbmUtY2FyZXQuaHRtbAorZmFzdC9mb3Jtcy90ZXh0
YXJlYS10ZXh0bGVuZ3RoLmh0bWwKK2Zhc3QvZm9ybXMvdGV4dGFyZWEtdHlwZS1zcGFjZXMuaHRt
bAorZmFzdC9mb3Jtcy90ZXh0ZmllbGQtZHJhZy1pbnRvLWRpc2FibGVkLmh0bWwKK2Zhc3QvZm9y
bXMvdGV4dGZpZWxkLWluc2lkZS1hbmNob3IuaHRtbAorZmFzdC9mb3Jtcy90ZXh0ZmllbGQtb25j
aGFuZ2UtZGVsZXRpb24uaHRtbAorZmFzdC9mb3Jtcy90ZXh0ZmllbGQtb3V0bGluZS5odG1sCitm
YXN0L2Zvcm1zL3RleHRmaWVsZC10by1wYXNzd29yZC1vbi1mb2N1cy5odG1sCitmYXN0L2Zvcm1z
L3RleHRpbnB1dC1ub3QtZmlyZWQtb24tZW50ZXItaW4taW5wdXQuaHRtbAorZmFzdC9mcmFtZXMv
aWZyYW1lLXdpbmRvdy1mb2N1cy5odG1sCitmYXN0L2ZyYW1lcy90YWtlLWZvY3VzLWZyb20taWZy
YW1lLmh0bWwKK2Zhc3QvaGlzdG9yeS9oaXN0b3J5X3JlbG9hZC5odG1sCitmYXN0L2hpc3Rvcnkv
d2luZG93LW9wZW4uaHRtbAorZmFzdC9saXN0cy9kcmFnLWludG8tbWFya2VyLmh0bWwKK2Zhc3Qv
bG9hZGVyL3BvbGljeS1kZWxlZ2F0ZS1hY3Rpb24taGl0LXRlc3Qtem9vbWVkLmh0bWwKK2Zhc3Qv
cmVwYWludC9maXhlZC1tb3ZlLWFmdGVyLWtleWJvYXJkLXNjcm9sbC5odG1sCitmYXN0L3JlcGFp
bnQvamFwYW5lc2Utcmwtc2VsZWN0aW9uLXJlcGFpbnQuaHRtbAorZmFzdC9yZXBhaW50L3JlcGFp
bnQtYWNyb3NzLXdyaXRpbmctbW9kZS1ib3VuZGFyeS5odG1sCitmYXN0L3JlcGFpbnQvc2VsZWN0
aW9uLXJsLmh0bWwKK2Zhc3QvdGV4dC9hdHN1aS1ydGwtb3ZlcnJpZGUtc2VsZWN0aW9uLmh0bWwK
K2Zhc3QvdGV4dC9pbnRlcm5hdGlvbmFsL2tobWVyLXNlbGVjdGlvbi5odG1sCitmYXN0L3RleHQv
b2Zmc2V0Rm9yUG9zaXRpb24tY29tcGxleC1mYWxsYmFjay5odG1sCitmYXN0L3RleHQvcmVzZXQt
ZHJhZy1vbi1tb3VzZS1kb3duLmh0bWwKK2Zhc3Qvd3JpdGluZy1tb2RlL2hvcml6b250YWwtYnQt
cmVwbGFjZWQtc2VsZWN0aW9uLmh0bWwKK2Zhc3Qvd3JpdGluZy1tb2RlL2phcGFuZXNlLWxyLXNl
bGVjdGlvbi5odG1sCitmYXN0L3dyaXRpbmctbW9kZS9qYXBhbmVzZS1ybC1zZWxlY3Rpb24uaHRt
bAorZmFzdC93cml0aW5nLW1vZGUvdmVydGljYWwtbHItcmVwbGFjZWQtc2VsZWN0aW9uLmh0bWwK
K2Zhc3Qvd3JpdGluZy1tb2RlL3ZlcnRpY2FsLXJsLXJlcGxhY2VkLXNlbGVjdGlvbi5odG1sCito
dHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1oeWJyaWQtYmxvYi5odG1sCitodHRwL3Rlc3RzL2xv
Y2FsL2RyYWctb3Zlci1yZW1vdGUtY29udGVudC5odG1sCitodHRwL3Rlc3RzL2xvY2FsL2ZpbGVh
cGkvZmlsZS1sYXN0LW1vZGlmaWVkLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9zZW5k
LWRyYWdnZWQtZmlsZS5odG1sCitodHRwL3Rlc3RzL2xvY2FsL2ZpbGVhcGkvc2VuZC1zbGljZWQt
ZHJhZ2dlZC1maWxlLmh0bWwKK2h0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvZm9ybS1kYXRhLXdp
dGgtdW5rbm93bi1maWxlLWV4dGVuc2lvbi5odG1sCitodHRwL3Rlc3RzL2xvY2FsL2Zvcm1kYXRh
L3NlbmQtZm9ybS1kYXRhLWNvbnN0cnVjdGVkLWZyb20tZm9ybS5odG1sCitodHRwL3Rlc3RzL2xv
Y2FsL2Zvcm1kYXRhL3NlbmQtZm9ybS1kYXRhLXdpdGgtc2xpY2VkLWZpbGUuaHRtbAoraHR0cC90
ZXN0cy9sb2NhbC9mb3JtZGF0YS9zZW5kLWZvcm0tZGF0YS5odG1sCitodHRwL3Rlc3RzL2xvY2Fs
L2Zvcm1kYXRhL3VwbG9hZC1ldmVudHMuaHRtbAoraHR0cC90ZXN0cy9taXNjL2J1YmJsZS1kcmFn
LWV2ZW50cy5odG1sCitodHRwL3Rlc3RzL21pc2MvaXNpbmRleC13aXRoLW5vLWZvcm0tYmFzZS1o
cmVmLmh0bWwKK2h0dHAvdGVzdHMvbWlzYy9pc2luZGV4LXdpdGgtbm8tZm9ybS5odG1sCitodHRw
L3Rlc3RzL25hdmlnYXRpb24vbm8tcmVmZXJyZXItcmVzZXQuaHRtbAoraHR0cC90ZXN0cy9uYXZp
Z2F0aW9uL25vLXJlZmVycmVyLXRhcmdldC1ibGFuay5odG1sCitodHRwL3Rlc3RzL3NlY3VyaXR5
L2NsaXBib2FyZC9jbGlwYm9hcmQtZmlsZS1hY2Nlc3MuaHRtbAoraHR0cC90ZXN0cy9zZWN1cml0
eS9kYXRhVHJhbnNmZXItc2V0LWRhdGEtZmlsZS11cmwuaHRtbAoraHR0cC90ZXN0cy9zZWN1cml0
eS9kcmFnLWRyb3Atc2FtZS11bmlxdWUtb3JpZ2luLmh0bWwKK2h0dHAvdGVzdHMvc2VjdXJpdHkv
ZHJhZy1vdmVyLXJlbW90ZS1jb250ZW50LWlmcmFtZS5odG1sCitodHRwL3Rlc3RzL3NlY3VyaXR5
L2lzb2xhdGVkV29ybGQvdXNlckdlc3R1cmVFdmVudHMuaHRtbAorbWVkaWEvY29udHJvbHMtZHJh
Zy10aW1lYmFyLmh0bWwKK21lZGlhL2NvbnRyb2xzLXJpZ2h0LWNsaWNrLW9uLXRpbWViYXIuaHRt
bAorbWVkaWEvbWVkaWEtZnVsbHNjcmVlbi1pbmxpbmUuaHRtbAorbWVkaWEvdmlkZW8tY29udHJv
bHMtdmlzaWJsZS1hdWRpby1vbmx5Lmh0bWwKK3BsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5n
L2JhY2t3YXJkLWRlbGV0ZS5odG1sCitwbGF0Zm9ybS9tYWMvZWRpdGluZy9wYXN0ZWJvYXJkL2Rh
dGFUcmFuc2Zlci1zZXQtZGF0YS1maWxlLXVybC5odG1sCitwbGF0Zm9ybS9tYWMvZWRpdGluZy9w
YXN0ZWJvYXJkL2RyYWctc2VsZWN0aW9ucy10by1jb250ZW50ZWRpdGFibGUuaHRtbAorcGxhdGZv
cm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXNob3VsZC1ub3QtZXhwYW5kLWFj
cm9zcy1saW5lcy5odG1sCitwbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vd29yZC10aGFp
Lmh0bWwKK3BsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL2xpc3Rib3gtc2Nyb2xsYmFyLWhpdC10ZXN0
Lmh0bWwKK3BsYXRmb3JtL21hYy9mYXN0L292ZXJmbG93L292ZXJmbG93LXNjcm9sbGJhci1oaXQt
dGVzdC5odG1sCitwbHVnaW5zL2NsaWNraW5nLW1pc3NpbmctcGx1Z2luLWZpcmVzLWRlbGVnYXRl
Lmh0bWwKK3BsdWdpbnMva2V5Ym9hcmQtZXZlbnRzLmh0bWwKK3BsdWdpbnMvbW91c2UtZXZlbnRz
Lmh0bWwKK3BsdWdpbnMvbW91c2UtY2xpY2staWZyYW1lLXRvLXBsdWdpbi5odG1sCitzY3JvbGxi
YXJzL3Njcm9sbGJhci1pZnJhbWUtY2xpY2stZG9lcy1ub3QtYmx1ci1jb250ZW50Lmh0bWwKK3Nj
cm9sbGJhcnMvc2Nyb2xsYmFyLW1pc3MtbW91c2Vtb3ZlLWRpc2FibGVkLmh0bWwKK3Njcm9sbGJh
cnMvc2Nyb2xsZXZlbnQtaWZyYW1lLW5vLXNjcm9sbGluZy13aGVlbC5odG1sCisKIHBsYXRmb3Jt
L3dpbi9lZGl0aW5nL3NlbGVjdGlvbi9zaGlmdC1wYWdlLXVwLWRvd24uaHRtbAogcGxhdGZvcm0v
d2luL2Zhc3QvZXZlbnRzL2FsdC1udW1wYWQuaHRtbAogcGxhdGZvcm0vd2luL2Zhc3QvZXZlbnRz
L2FsdC1zcGFjZS1zY3JvbGwuaHRtbApAQCAtNjYsNiArNDA5LDQwMiBAQCBwbGF0Zm9ybS93aW4v
ZmFzdC9ldmVudHMvcGFuU2Nyb2xsLW5lc3RlCiBwbGF0Zm9ybS93aW4vZmFzdC9ldmVudHMvcGFu
U2Nyb2xsLW5vLWlmcmFtZS1qdW1wLmh0bWwKIHBsYXRmb3JtL3dpbi9mYXN0L2V2ZW50cy9wYW5T
Y3JvbGwtcHJldmVudERlZmF1bHQuaHRtbAogCitzdmcvY3VzdG9tL2Fic29sdXRlLXNpemVkLWNv
bnRlbnQtd2l0aC1yZXNvdXJjZXMueGh0bWwKK3N2Zy9jdXN0b20vY2lyY2xlLW1vdmUtaW52YWxp
ZGF0aW9uLnN2Zworc3ZnL2N1c3RvbS9jbGlwLXBhdGgtY2hpbGQtY2hhbmdlcy5zdmcKK3N2Zy9j
dXN0b20vY2xpcC1wYXRoLWhyZWYtY2hhbmdlcy5zdmcKK3N2Zy9jdXN0b20vY2xpcC1wYXRoLWlk
LWNoYW5nZXMuc3ZnCitzdmcvY3VzdG9tL2NsaXAtcGF0aC11bml0cy1jaGFuZ2VzLnN2Zworc3Zn
L2N1c3RvbS9kZWVwLWR5bmFtaWMtdXBkYXRlcy5zdmcKK3N2Zy9jdXN0b20vZm9yZWlnbk9iamVj
dC1jcmFzaC1vbi1ob3Zlci54bWwKK3N2Zy9jdXN0b20vZ2V0c2NyZWVuY3RtLWluLXNjcm9sbGFi
bGUtZGl2LWFyZWEtbmVzdGVkLnhodG1sCitzdmcvY3VzdG9tL2dldHNjcmVlbmN0bS1pbi1zY3Jv
bGxhYmxlLWRpdi1hcmVhLnhodG1sCitzdmcvY3VzdG9tL2dldHNjcmVlbmN0bS1pbi1zY3JvbGxh
YmxlLXN2Zy1hcmVhLnhodG1sCitzdmcvY3VzdG9tL2dyYWRpZW50LWF0dHItdXBkYXRlLnN2Zwor
c3ZnL2N1c3RvbS9oaXQtdGVzdC1wYXRoLXN0cm9rZS5zdmcKK3N2Zy9jdXN0b20vaGl0LXRlc3Qt
cGF0aC5zdmcKK3N2Zy9jdXN0b20vaGl0LXRlc3QtdW5jbG9zZWQtc3VicGF0aHMuc3ZnCitzdmcv
Y3VzdG9tL2hpdC10ZXN0LXdpdGgtYnIueGh0bWwKK3N2Zy9jdXN0b20vaG92ZXItZGVmYXVsdC1m
aWxsLnN2Zworc3ZnL2N1c3RvbS9pbWFnZS1jbGlwcGVkLWhpdC5zdmcKK3N2Zy9jdXN0b20vaW5u
ZXItc3ZnLWhpdC10ZXN0LnN2Zworc3ZnL2N1c3RvbS9qcy11cGRhdGUtY29udGFpbmVyLnN2Zwor
c3ZnL2N1c3RvbS9qcy11cGRhdGUtY29udGFpbmVyMi5zdmcKK3N2Zy9jdXN0b20vanMtdXBkYXRl
LWdyYWRpZW50LnN2Zworc3ZnL2N1c3RvbS9qcy11cGRhdGUtcGF0aC1jaGFuZ2VzLnN2Zworc3Zn
L2N1c3RvbS9qcy11cGRhdGUtcGF0aC1yZW1vdmFsLnN2Zworc3ZnL2N1c3RvbS9qcy11cGRhdGUt
cGF0dGVybi1jaGlsZC5zdmcKK3N2Zy9jdXN0b20vanMtdXBkYXRlLXBhdHRlcm4uc3ZnCitzdmcv
Y3VzdG9tL2pzLXVwZGF0ZS1wb2x5Z29uLWNoYW5nZXMuc3ZnCitzdmcvY3VzdG9tL2pzLXVwZGF0
ZS1wb2x5Z29uLXJlbW92YWwuc3ZnCitzdmcvY3VzdG9tL2pzLXVwZGF0ZS1zdG9wLWxpbmtlZC1n
cmFkaWVudC5zdmcKK3N2Zy9jdXN0b20vanMtdXBkYXRlLXN0b3Auc3ZnCitzdmcvY3VzdG9tL2pz
LXVwZGF0ZS1zdHlsZS5zdmcKK3N2Zy9jdXN0b20vbGlua2luZy1hLTAzLWItYWxsLnN2Zworc3Zn
L2N1c3RvbS9saW5raW5nLWEtMDMtYi1wcmVzZXJ2ZUFzcGVjdFJhdGlvLnN2Zworc3ZnL2N1c3Rv
bS9saW5raW5nLWEtMDMtYi10cmFuc2Zvcm0uc3ZnCitzdmcvY3VzdG9tL2xpbmtpbmctYS0wMy1i
LXZpZXdCb3gtdHJhbnNmb3JtLnN2Zworc3ZnL2N1c3RvbS9saW5raW5nLWEtMDMtYi12aWV3Qm94
LnN2Zworc3ZnL2N1c3RvbS9saW5raW5nLWEtMDMtYi12aWV3VGFyZ2V0LnN2Zworc3ZnL2N1c3Rv
bS9saW5raW5nLWEtMDMtYi16b29tQW5kUGFuLnN2Zworc3ZnL2N1c3RvbS9tYXJrZXItY2hhbmdl
cy5zdmcKK3N2Zy9jdXN0b20vbWFya2VyLWNoaWxkLWNoYW5nZXMtY3NzLnN2Zworc3ZnL2N1c3Rv
bS9tYXJrZXItY2hpbGQtY2hhbmdlcy5zdmcKK3N2Zy9jdXN0b20vbWFya2VyLXN0cm9rZVdpZHRo
LWNoYW5nZXMuc3ZnCitzdmcvY3VzdG9tL21hcmtlci12aWV3Qm94LWNoYW5nZXMuc3ZnCitzdmcv
Y3VzdG9tL21hc2stY2hhbmdlcy5zdmcKK3N2Zy9jdXN0b20vbWFzay1jaGlsZC1jaGFuZ2VzLnN2
Zworc3ZnL2N1c3RvbS9tb3VzZS1tb3ZlLW9uLXN2Zy1jb250YWluZXItc3RhbmRhbG9uZS5zdmcK
K3N2Zy9jdXN0b20vbW91c2UtbW92ZS1vbi1zdmctY29udGFpbmVyLnhodG1sCitzdmcvY3VzdG9t
L21vdXNlLW1vdmUtb24tc3ZnLXJvb3Qtc3RhbmRhbG9uZS5zdmcKK3N2Zy9jdXN0b20vbW91c2Ut
bW92ZS1vbi1zdmctcm9vdC54aHRtbAorc3ZnL2N1c3RvbS9wb2ludGVyLWV2ZW50cy1pbWFnZS5z
dmcKK3N2Zy9jdXN0b20vcG9pbnRlci1ldmVudHMtcGF0aC5zdmcKK3N2Zy9jdXN0b20vcG9pbnRl
ci1ldmVudHMtdGV4dC5zdmcKK3N2Zy9jdXN0b20vcG9seWxpbmUtaGl0dGVzdC5zdmcKK3N2Zy9j
dXN0b20vcHJldmVudC1kZWZhdWx0LnN2Zworc3ZnL2N1c3RvbS9yZWxhdGl2ZS1zaXplZC1jb250
ZW50LXdpdGgtcmVzb3VyY2VzLnhodG1sCitzdmcvY3VzdG9tL3JlcGFpbnQtb24tY29uc3RhbnQt
c2l6ZS1jaGFuZ2Uuc3ZnCitzdmcvY3VzdG9tL3JlcGFpbnQtc3Ryb2tlLXdpZHRoLWNoYW5nZXMu
c3ZnCitzdmcvY3VzdG9tL3Jlc291cmNlLWludmFsaWRhdGUtb24tdGFyZ2V0LXVwZGF0ZS5zdmcK
K3N2Zy9jdXN0b20vc2Nyb2xsLWhpdC10ZXN0LnhodG1sCitzdmcvY3VzdG9tL3N0cm9rZS13aWR0
aC1jbGljay5zdmcKK3N2Zy9jdXN0b20vdGV4dC1oaXQtdGVzdC5zdmcKK3N2Zy9jdXN0b20vdXNl
LWNsaXBwZWQtaGl0LnN2Zworc3ZnL2N1c3RvbS91c2UtY3NzLWV2ZW50cy5zdmcKK3N2Zy9jdXN0
b20vdXNlLWVsZW1lbnRJbnN0YW5jZS1ldmVudC10YXJnZXQuc3ZnCitzdmcvY3VzdG9tL3VzZS1l
bGVtZW50SW5zdGFuY2UtbWV0aG9kcy5zdmcKK3N2Zy9jdXN0b20vdXNlLWV2ZW50LWhhbmRsZXIt
b24tcmVmZXJlbmNlZC1lbGVtZW50LnN2Zworc3ZnL2N1c3RvbS91c2UtZXZlbnQtaGFuZGxlci1v
bi11c2UtZWxlbWVudC5zdmcKK3N2Zy9jdXN0b20vdXNlLWV2ZW50cy1jcmFzaC5zdmcKK3N2Zy9j
dXN0b20vdXNlLWluc3RhbmNlUm9vdC1hcy1ldmVudC10YXJnZXQueGh0bWwKK3N2Zy9jdXN0b20v
dXNlLWluc3RhbmNlUm9vdC1ldmVudC1idWJibGluZy54aHRtbAorc3ZnL2N1c3RvbS91c2UtaW5z
dGFuY2VSb290LWV2ZW50LWxpc3RlbmVycy54aHRtbAorc3ZnL2N1c3RvbS91c2Utc2V0QXR0cmli
dXRlLWNyYXNoLnN2Zworc3ZnL2N1c3RvbS92aWV3Qm94LWhpdC5zdmcKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHQUVsZW1lbnQtZG9tLWhyZWYtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0FFbGVtZW50LWRvbS10YXJnZXQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0FFbGVtZW50LXN2Z2RvbS1ocmVmLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdB
RWxlbWVudC1zdmdkb20tdGFyZ2V0LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdD
aXJjbGVFbGVtZW50LWRvbS1jeC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2ly
Y2xlRWxlbWVudC1kb20tY3ktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNs
ZUVsZW1lbnQtZG9tLXItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVs
ZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdD
aXJjbGVFbGVtZW50LXN2Z2RvbS1jeC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
Q2lyY2xlRWxlbWVudC1zdmdkb20tY3ktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0NpcmNsZUVsZW1lbnQtc3ZnZG9tLXItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0NpcmNsZUVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdDbGlwUGF0aC1pbmZsdWVuY2VzLWhpdFRlc3RpbmcuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdDbGlwUGF0aEVsZW1lbnQtZG9tLWNsaXBQYXRoVW5pdHMtYXR0ci5odG1s
CitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0NsaXBQYXRoRWxlbWVudC1zdmdkb20tY2xpcFBhdGhV
bml0cy1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1kb20t
eC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1kb20teS1h
dHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1zdmdkb20teC1w
cm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1zdmdkb20teS1w
cm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtZG9tLWN4LWF0
dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1kb20tY3ktYXR0
ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LWRvbS1yZXF1aXJl
ZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtZG9t
LXJ4LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1kb20t
cnktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LXN2Z2Rv
bS1jeC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtc3Zn
ZG9tLWN5LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1z
dmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0VsbGlw
c2VFbGVtZW50LXN2Z2RvbS1yeC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxs
aXBzZUVsZW1lbnQtc3ZnZG9tLXJ5LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RUJsZW5kRWxlbWVudC1kb20taW4tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
QmxlbmRFbGVtZW50LWRvbS1pbjItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
QmxlbmRFbGVtZW50LWRvbS1tb2RlLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RUJsZW5kRWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFQmxlbmRFbGVtZW50LXN2Z2RvbS1pbjItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFQmxlbmRFbGVtZW50LXN2Z2RvbS1tb2RlLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRUNvbG9yTWF0cml4RWxlbWVudC1kb20taW4tYXR0ci5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LWRvbS10eXBlLWF0dHIuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbG9yTWF0cml4RWxlbWVudC1kb20tdmFsdWVzLWF0dHIu
aHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbG9yTWF0cml4RWxlbWVudC1zdmdkb20t
aW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50
LXN2Z2RvbS10eXBlLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbG9yTWF0
cml4RWxlbWVudC1zdmdkb20tdmFsdWVzLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRUNvbXBvc2l0ZUVsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQtZG9tLWluMi1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LWRvbS1rMS1hdHRyLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LWRvbS1rMi1hdHRyLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LWRvbS1rMy1hdHRyLmh0bWwKK3N2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LWRvbS1rNC1hdHRyLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LWRvbS1vcGVyYXRvci1hdHRy
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LXN2Z2RvbS1p
bi1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LXN2
Z2RvbS1pbjItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxl
bWVudC1zdmdkb20tazEtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9z
aXRlRWxlbWVudC1zdmdkb20tazItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
Q29tcG9zaXRlRWxlbWVudC1zdmdkb20tazMtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1zdmdkb20tazQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1zdmdkb20tb3BlcmF0b3ItcHJvcC5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1iaWFzLWF0
dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1k
b20tZGl2aXNvci1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1h
dHJpeEVsZW1lbnQtZG9tLWVkZ2VNb2RlLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1kb20taW4tYXR0ci5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1rZXJuZWxNYXRyaXgtYXR0ci5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1r
ZXJuZWxVbml0TGVuZ3RoLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZv
bHZlTWF0cml4RWxlbWVudC1kb20tb3JkZXItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1wcmVzZXJ2ZUFscGhhLWF0dHIuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1kb20tdGFyZ2V0
WC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1l
bnQtZG9tLXRhcmdldFktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9s
dmVNYXRyaXhFbGVtZW50LXN2Z2RvbS1iaWFzLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20tZGl2aXNvci1wcm9wLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLWVkZ2VN
b2RlLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxl
bWVudC1zdmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9s
dmVNYXRyaXhFbGVtZW50LXN2Z2RvbS1rZXJuZWxNYXRyaXgtcHJvcC5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LXN2Z2RvbS1rZXJuZWxVbml0TGVu
Z3RoLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxl
bWVudC1zdmdkb20tb3JkZXItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29u
dm9sdmVNYXRyaXhFbGVtZW50LXN2Z2RvbS1wcmVzZXJ2ZUFscGhhLXByb3AuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20tdGFyZ2V0WC1w
cm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQt
c3ZnZG9tLXRhcmdldFktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVz
ZUxpZ2h0aW5nRWxlbWVudC1kb20tZGlmZnVzZUNvbnN0YW50LWF0dHIuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtZG9tLWxpZ2h0
aW5nLWNvbG9yLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdo
dGluZ0VsZW1lbnQtZG9tLXN1cmZhY2VTY2FsZS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LWxpZ2h0aW5nLWNvbG9yLWNzcy1wcm9wLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LXN2Z2Rv
bS1kaWZmdXNlQ29uc3RhbnQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlm
ZnVzZUxpZ2h0aW5nRWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC1zdmdkb20tc3VyZmFjZVNjYWxlLXByb3Au
aHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtZG9t
LWluLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVs
ZW1lbnQtZG9tLWluMi1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXNwbGFj
ZW1lbnRNYXBFbGVtZW50LWRvbS1zY2FsZS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LWRvbS14Q2hhbm5lbFNlbGVjdG9yLWF0dHIuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtZG9tLXlD
aGFubmVsU2VsZWN0b3ItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxh
Y2VtZW50TWFwRWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1zdmdkb20taW4yLXByb3AuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtc3ZnZG9tLXNjYWxlLXBy
b3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQt
c3ZnZG9tLXhDaGFubmVsU2VsZWN0b3ItcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1zdmdkb20teUNoYW5uZWxTZWxlY3Rvci1wcm9wLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LWRvbS1hemlt
dXRoLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3RhbnRMaWdodEVsZW1l
bnQtZG9tLWVsZXZhdGlvbi1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXN0
YW50TGlnaHRFbGVtZW50LXN2Z2RvbS1hemltdXRoLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRURpc3RhbnRMaWdodEVsZW1lbnQtc3ZnZG9tLWVsZXZhdGlvbi1wcm9wLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVGbG9vZEVsZW1lbnQtZG9tLWZsb29kLWNvbG9yLWF0
dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUZsb29kRWxlbWVudC1kb20tZmxvb2Qt
b3BhY2l0eS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVGbG9vZEVsZW1lbnQt
c3ZnZG9tLWZsb29kLWNvbG9yLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUZs
b29kRWxlbWVudC1zdmdkb20tZmxvb2Qtb3BhY2l0eS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHRkVHYXVzc2lhbkJsdXJFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVHYXVzc2lhbkJsdXJFbGVtZW50LWRvbS1zdGREZXZpYXRpb24tYXR0
ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFR2F1c3NpYW5CbHVyRWxlbWVudC1kb20t
c3RkRGV2aWF0aW9uLWNhbGwuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUdhdXNzaWFu
Qmx1ckVsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RUltYWdlRWxlbWVudC1kb20tcHJlc2VydmVBc3BlY3RSYXRpby1hdHRyLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVJbWFnZUVsZW1lbnQtc3ZnZG9tLXByZXNlcnZlQXNwZWN0UmF0aW8t
cHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTWVyZ2VOb2RlRWxlbWVudC1kb20t
aW4tYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTWVyZ2VOb2RlRWxlbWVudC1z
dmdkb20taW4tcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTW9ycGhvbG9neUVs
ZW1lbnQtZG9tLWluLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU1vcnBob2xv
Z3lFbGVtZW50LWRvbS1vcGVyYXRvci1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVNb3JwaG9sb2d5RWxlbWVudC1kb20tcmFkaXVzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRU1vcnBob2xvZ3lFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVNb3JwaG9sb2d5RWxlbWVudC1zdmdkb20tb3BlcmF0b3ItcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTW9ycGhvbG9neUVsZW1lbnQtc3ZnZG9tLXJh
ZGl1cy1jYWxsLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LWRv
bS1keC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LWRv
bS1keS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LWRv
bS1pbi1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LXN2
Z2RvbS1keC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50
LXN2Z2RvbS1keS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVt
ZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2ludExp
Z2h0RWxlbWVudC1kb20teC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2lu
dExpZ2h0RWxlbWVudC1kb20teS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQ
b2ludExpZ2h0RWxlbWVudC1kb20tei1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVQb2ludExpZ2h0RWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVQb2ludExpZ2h0RWxlbWVudC1zdmdkb20teS1wcm9wLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVQb2ludExpZ2h0RWxlbWVudC1zdmdkb20tei1wcm9wLmh0bWwKK3N2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC1kb20taW4tYXR0ci5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQtZG9t
LXNwZWN1bGFyQ29uc3RhbnQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3Bl
Y3VsYXJMaWdodGluZ0VsZW1lbnQtZG9tLXNwZWN1bGFyRXhwb25lbnQtYXR0ci5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQtZG9tLXN1cmFjZVNj
YWxlLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdF
bGVtZW50LXJlbW92ZS1saWdodFNvdXJjZS5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
U3BlY3VsYXJMaWdodGluZ0VsZW1lbnQtc3ZnZG9tLWluLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1zcGVjdWxhckNvbnN0
YW50LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdF
bGVtZW50LXN2Z2RvbS1zcGVjdWxhckV4cG9uZW50LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1zdXJhY2VTY2FsZS1wcm9w
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS1saW1p
dGluZ0NvbmVBbmdsZS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGln
aHRFbGVtZW50LWRvbS1wb2ludHNBdFgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFU3BvdExpZ2h0RWxlbWVudC1kb20tcG9pbnRzQXRZLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtZG9tLXBvaW50c0F0Wi1hdHRyLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS1zcGVjdWxhckV4cG9u
ZW50LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQt
ZG9tLXgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVu
dC1kb20teS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVt
ZW50LWRvbS16LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVs
ZW1lbnQtc3ZnZG9tLWxpbWl0aW5nQ29uZUFuZ2xlLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLXBvaW50c0F0WC1wcm9wLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LXN2Z2RvbS1wb2ludHNBdFkt
cHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1zdmdk
b20tcG9pbnRzQXRaLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdo
dEVsZW1lbnQtc3ZnZG9tLXNwZWN1bGFyRXhwb25lbnQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LXN2Z2RvbS15LXByb3AuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLXotcHJvcC5odG1s
CitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVGlsZUVsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVRpbGVFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVudC1kb20tYmFzZUZyZXF1
ZW5jeS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVu
dC1kb20tbnVtT2N0YXZlcy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJi
dWxlbmNlRWxlbWVudC1kb20tc2VlZC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVUdXJidWxlbmNlRWxlbWVudC1kb20tc3RpdGNoVGlsZXMtYXR0ci5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtZG9tLXR5cGUtYXR0ci5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtc3ZnZG9tLWJhc2VGcmVxdWVu
Y3ktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQt
c3ZnZG9tLW51bU9jdGF2ZXMtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVy
YnVsZW5jZUVsZW1lbnQtc3ZnZG9tLXNlZWQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtc3ZnZG9tLXN0aXRjaFRpbGVzLXByb3AuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVtZW50LXN2Z2RvbS10eXBlLXByb3Au
aHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LWRvbS1maWx0ZXJSZXMt
YXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtZG9tLWZpbHRl
clVuaXRzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LWRv
bS1oZWlnaHQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQt
ZG9tLXByaW1pdGl2ZVVuaXRzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0
ZXJFbGVtZW50LWRvbS13aWR0aC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmls
dGVyRWxlbWVudC1kb20teC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVy
RWxlbWVudC1kb20teS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxl
bWVudC1zdmdkb20tZmlsdGVyUmVzLWNhbGwuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
aWx0ZXJFbGVtZW50LXN2Z2RvbS1maWx0ZXJSZXNYLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS1maWx0ZXJSZXNZLXByb3AuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS1maWx0ZXJVbml0cy1wcm9wLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1zdmdkb20taGVpZ2h0LXBy
b3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS1wcmlt
aXRpdmVVbml0cy1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVu
dC1zdmdkb20td2lkdGgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVs
ZW1lbnQtc3ZnZG9tLXgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVs
ZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlclBy
aW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1kb20taGVpZ2h0LWF0dHIuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtZG9tLXJlc3Vs
dC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRh
cmRBdHRyaWJ1dGVzLWRvbS13aWR0aC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLWRvbS14LWF0dHIuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtZG9tLXkt
YXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJk
QXR0cmlidXRlcy1zdmdkb20taGVpZ2h0LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtc3ZnZG9tLXJlc3VsdC1wcm9wLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1
dGVzLXN2Z2RvbS13aWR0aC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVy
UHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLXN2Z2RvbS14LXByb3AuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtc3ZnZG9tLXkt
cHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LWRv
bS1oZWlnaHQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RF
bGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
Rm9yZWlnbk9iamVjdEVsZW1lbnQtZG9tLXdpZHRoLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC1kb20teC1hdHRyLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQtZG9tLXktYXR0ci5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LXN2Z2RvbS1oZWlnaHQtcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LXN2Z2RvbS1y
ZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVj
dEVsZW1lbnQtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
b3JlaWduT2JqZWN0RWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0dFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHR0VsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9tLWhlaWdodC1hdHRyLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LWRvbS1wcmVzZXJ2ZUFzcGVjdFJhdGlv
LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9tLXJlcXVp
cmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9t
LXdpZHRoLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9t
LXgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1kb20teS1h
dHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2Z2RvbS1oZWln
aHQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1zdmdkb20t
cHJlc2VydmVBc3BlY3RSYXRpby1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1h
Z2VFbGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2Z2RvbS13aWR0aC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2Z2RvbS14LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdJbWFnZUVsZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR0xpbmVFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHTGluZUVsZW1lbnQtZG9tLXgxLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdMaW5lRWxlbWVudC1kb20teDItYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0xpbmVFbGVtZW50LWRvbS15MS1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
TGluZUVsZW1lbnQtZG9tLXkyLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5l
RWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR0xpbmVFbGVtZW50LXN2Z2RvbS14MS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHTGluZUVsZW1lbnQtc3ZnZG9tLXgyLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdMaW5lRWxlbWVudC1zdmdkb20teTEtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0xpbmVFbGVtZW50LXN2Z2RvbS15Mi1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
TGluZWFyR3JhZGllbnRFbGVtZW50LWRvbS1ncmFkaWVudFRyYW5zZm9ybS1hdHRyLmh0bWwKK3N2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LWRvbS1ncmFkaWVudFVu
aXRzLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1l
bnQtZG9tLXgxLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVu
dEVsZW1lbnQtZG9tLXgyLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJH
cmFkaWVudEVsZW1lbnQtZG9tLXkxLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdM
aW5lYXJHcmFkaWVudEVsZW1lbnQtZG9tLXkyLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLWdyYWRpZW50VHJhbnNmb3JtLXByb3Au
aHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtc3ZnZG9t
LWdyYWRpZW50VW5pdHMtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdy
YWRpZW50RWxlbWVudC1zdmdkb20teDEtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R0xpbmVhckdyYWRpZW50RWxlbWVudC1zdmdkb20teDItcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC1zdmdkb20teTEtcHJvcC5odG1sCitzdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC1zdmdkb20teTItcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtZG9tLW1hcmtlckhlaWdo
dC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1kb20tbWFy
a2VyVW5pdHMtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQt
ZG9tLW1hcmtlcldpZHRoLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJF
bGVtZW50LWRvbS1vcmllbnQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtl
ckVsZW1lbnQtZG9tLXJlZlgtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtl
ckVsZW1lbnQtZG9tLXJlZlktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtl
ckVsZW1lbnQtc3ZnZG9tLW1hcmtlckhlaWdodC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20tbWFya2VyVW5pdHMtcHJvcC5odG1sCitzdmcvZHlu
YW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLW1hcmtlcldpZHRoLXByb3AuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LXN2Z2RvbS1vcmllbnRBbmds
ZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20t
b3JpZW50VHlwZS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVu
dC1zdmdkb20tcmVmWC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxl
bWVudC1zdmdkb20tcmVmWS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2Vy
RWxlbWVudC1zdmdkb20tc2V0T3JpZW50VG9BbmdsZS1jYWxsLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20tc2V0T3JpZW50VG9BdXRvLWNhbGwuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1kb20taGVpZ2h0LWF0dHIuaHRtbAor
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1kb20tbWFza0NvbnRlbnRVbml0cy1h
dHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtZG9tLW1hc2tVbml0
cy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtZG9tLXdpZHRo
LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1kb20teC1hdHRy
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtZG9tLXktYXR0ci5odG1s
CitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVtZW50LXN2Z2RvbS1oZWlnaHQtcHJvcC5o
dG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVtZW50LXN2Z2RvbS1tYXNrQ29udGVu
dFVuaXRzLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1zdmdk
b20tbWFza1VuaXRzLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVu
dC1zdmdkb20td2lkdGgtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVt
ZW50LXN2Z2RvbS14LXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVu
dC1zdmdkb20teS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0aEVsZW1lbnQt
ZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXRoRWxl
bWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NW
R1BhdHRlcm5FbGVtZW50LWRvbS1oZWlnaHQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR1BhdHRlcm5FbGVtZW50LWRvbS1wYXR0ZXJuQ29udGVudFVuaXRzLWF0dHIuaHRtbAorc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1kb20tcGF0dGVyblRyYW5zZm9ybS1h
dHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtZG9tLXBhdHRl
cm5Vbml0cy1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQt
ZG9tLXdpZHRoLWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVu
dC1kb20teC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQt
ZG9tLXktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50LXN2
Z2RvbS1oZWlnaHQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVt
ZW50LXN2Z2RvbS1wYXR0ZXJuQ29udGVudFVuaXRzLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1zdmdkb20tcGF0dGVyblRyYW5zZm9ybS1wcm9wLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtc3ZnZG9tLXBhdHRlcm5Vbml0
cy1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtc3ZnZG9t
LXdpZHRoLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1z
dmdkb20teC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQt
c3ZnZG9tLXktcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1BvbHlnb25FbGVtZW50
LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUG9seWdv
bkVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdQb2x5bGluZUVsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdQb2x5bGluZUVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRt
bAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9tLWN4LWF0
dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9t
LWN5LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1l
bnQtZG9tLWZ4LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVu
dEVsZW1lbnQtZG9tLWZ5LWF0dHIuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxH
cmFkaWVudEVsZW1lbnQtZG9tLWdyYWRpZW50VHJhbnNmb3JtLWF0dHIuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9tLWdyYWRpZW50VW5pdHMtYXR0
ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1kb20t
ci1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50
LXN2Z2RvbS1jeC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGll
bnRFbGVtZW50LXN2Z2RvbS1jeS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFk
aWFsR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1meC1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1meS1wcm9wLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1ncmFkaWVudFRyYW5z
Zm9ybS1wcm9wLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVt
ZW50LXN2Z2RvbS1ncmFkaWVudFVuaXRzLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLXItcHJvcC5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR1JlY3RFbGVtZW50LWRvbS1oZWlnaHQtYXR0ci5odG1sCitzdmcvZHluYW1pYy11
cGRhdGVzL1NWR1JlY3RFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtZG9tLXdpZHRoLWF0dHIuaHRtbAorc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1kb20teC1hdHRyLmh0bWwKK3N2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtZG9tLXktYXR0ci5odG1sCitzdmcvZHluYW1pYy11cGRhdGVz
L1NWR1JlY3RFbGVtZW50LXN2Z2RvbS1oZWlnaHQtcHJvcC5odG1sCitzdmcvZHluYW1pYy11cGRh
dGVzL1NWR1JlY3RFbGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKK3N2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCitzdmcvZHluYW1p
Yy11cGRhdGVzL1NWR1NWR0VsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAorc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdTVkdFbGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwK
K3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHVFJlZkVsZW1lbnQtZG9tLWhyZWYtYXR0ci5odG1sCitz
dmcvZHluYW1pYy11cGRhdGVzL1NWR1RleHRFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0
bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHVGV4dEVsZW1lbnQtZG9tLXRyYW5zZm9ybS1hdHRy
Lmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHVGV4dEVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVk
RmVhdHVyZXMuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUZXh0RWxlbWVudC1zdmdkb20t
cm90YXRlLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdUZXh0RWxlbWVudC1zdmdk
b20tdHJhbnNmb3JtLXByb3AuaHRtbAorc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdVc2VFbGVtZW50
LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKK3N2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHVXNlRWxl
bWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJlcy5odG1sCitzdmcvZmlsdGVycy9maWx0ZXItd2lk
dGgtdXBkYXRlLnN2Zworc3ZnL3RleHQvZm9yZWlnbk9iamVjdC1yZXBhaW50LnhtbAorc3ZnL3Rl
eHQvc2VsZWN0aW9uLXRyaXBsZWNsaWNrLnN2Zworc3ZnL3pvb20vcGFnZS96b29tLWNvb3Jkcy12
aWV3YXR0ci0wMS1iLnN2Zworc3ZnL3pvb20vdGV4dC96b29tLWNvb3Jkcy12aWV3YXR0ci0wMS1i
LnN2ZworCiAjIFdlYktpdFRlc3RSdW5uZWQgbmVlZHMgdG8gaW1wbGVtZW50IHVuZG8gY2xpZW50
LiAKICMgPHJkYXI6Ly9wcm9ibGVtLzkyNTQwNjE+IAogIyA8aHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTU4MTAzPgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2sy
L1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1NraXBwZWQJ
KHJldmlzaW9uIDk1MDI1KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1NraXBwZWQJKHdv
cmtpbmcgY29weSkKQEAgLTcxLDM1MSArNzEsNiBAQCBmYXN0L2ZyYW1lcy9mbGF0dGVuaW5nL2Zy
YW1lc2V0LWZsYXR0ZW5pCiBodHRwL3Rlc3RzL2luc3BlY3Rvci9leHRlbnNpb25zLWhlYWRlcnMu
aHRtbAogaHR0cC90ZXN0cy9pbnNwZWN0b3IvZXh0ZW5zaW9ucy1uZXR3b3JrLXJlZGlyZWN0Lmh0
bWwKIAotIyBXZWJLaXRUZXN0UnVubmVyIG5lZWRzIGFuIGltcGxlbWVudGF0aW9uIG9mIGV2ZW50
U2VuZGVyCi0jIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDIxOTQ+
Ci1lZGl0aW5nL2RlbGV0aW5nLzU3Mjk2ODAuaHRtbAotZWRpdGluZy9kZWxldGluZy9kZWxldGUt
Ynktd29yZC0wMDEuaHRtbAotZWRpdGluZy9kZWxldGluZy9kZWxldGUtYnktd29yZC0wMDIuaHRt
bAotZWRpdGluZy9kZWxldGluZy9kZWxldGUtbGlnYXR1cmUtMDAxLmh0bWwKLWVkaXRpbmcvZGVs
ZXRpbmcvZGVsZXRlLWxpZ2F0dXJlLTAwMi5odG1sCi1lZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1s
aWdhdHVyZS0wMDMuaHRtbAotZWRpdGluZy9kZWxldGluZy9mb3J3YXJkLWRlbGV0ZS1rZXkuaHRt
bAotZWRpdGluZy9kZWxldGluZy9za2lwLXZpcmFtYS0wMDEuaHRtbAotZWRpdGluZy9kZWxldGlu
Zy9zbWFydC1kZWxldGUtMDAxLmh0bWwKLWVkaXRpbmcvZGVsZXRpbmcvc21hcnQtZGVsZXRlLTAw
Mi5odG1sCi1lZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWRlbGV0ZS0wMDMuaHRtbAotZWRpdGluZy9k
ZWxldGluZy9zbWFydC1kZWxldGUtMDA0Lmh0bWwKLWVkaXRpbmcvZXhlY0NvbW1hbmQvZmluZFN0
cmluZy0yLmh0bWwKLWVkaXRpbmcvaW5wdXQvZW1hY3MtY3RybC1vLmh0bWwKLWVkaXRpbmcvaW5w
dXQvb3B0aW9uLXBhZ2UtdXAtZG93bi5odG1sCi1lZGl0aW5nL2lucHV0L3BhZ2UtdXAtZG93bi1z
Y3JvbGxzLmh0bWwKLWVkaXRpbmcvaW5wdXQvc2Nyb2xsLXZpZXdwb3J0LXBhZ2UtdXAtZG93bi5o
dG1sCi1lZGl0aW5nL2lucHV0L3N0eWxlLWNoYW5nZS1kdXJpbmctaW5wdXQuaHRtbAotZWRpdGlu
Zy9pbnNlcnRpbmcvdHlwaW5nLXRhYi1kZXNpZ25tb2RlLWZvcm1zLmh0bWwKLWVkaXRpbmcvaW5z
ZXJ0aW5nL3R5cGluZy10YWItZGVzaWdubW9kZS5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvNDk0
NDc3MC0yLmh0bWwKLWVkaXRpbmcvcGFzdGVib2FyZC80OTQ3MTMwLmh0bWwKLWVkaXRpbmcvcGFz
dGVib2FyZC9jb3B5LXN0YW5kYWxvbmUtaW1hZ2UtY3Jhc2guaHRtbAotZWRpdGluZy9wYXN0ZWJv
YXJkL2RyYWctYW5kLWRyb3AtaW1hZ2UtY29udGVudGVkaXRhYmxlLmh0bWwKLWVkaXRpbmcvcGFz
dGVib2FyZC9kcmFnLWFuZC1kcm9wLWlucHV0aW1hZ2UtY29udGVudGVkaXRhYmxlLmh0bWwKLWVk
aXRpbmcvcGFzdGVib2FyZC9kcmFnLWFuZC1kcm9wLW9iamVjdGltYWdlLWNvbnRlbnRlZGl0YWJs
ZS5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1kcm9wLWRlYWQtZnJhbWUuaHRtbAotZWRp
dGluZy9wYXN0ZWJvYXJkL2RyYWctZHJvcC1pbnB1dC10ZXh0YXJlYS5odG1sCi1lZGl0aW5nL3Bh
c3RlYm9hcmQvZHJhZy1kcm9wLWxpc3QuaHRtbAotZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctZHJv
cC1tb2RpZmllcy1wYWdlLmh0bWwKLWVkaXRpbmcvcGFzdGVib2FyZC9kcmFnLWRyb3AtdXJsLXRl
eHQuaHRtbAotZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctaW1hZ2UtaW4tYWJvdXQtYmxhbmstZnJh
bWUuaHRtbAotZWRpdGluZy9wYXN0ZWJvYXJkL2RyYWctaW1hZ2UtdG8tY29udGVudGVkaXRhYmxl
LWluLWlmcmFtZS5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1zZWxlY3RlZC1pbWFnZS10
by1jb250ZW50ZWRpdGFibGUuaHRtbAotZWRpdGluZy9wYXN0ZWJvYXJkL2Ryb3AtZmlsZS1zdmcu
aHRtbAotZWRpdGluZy9wYXN0ZWJvYXJkL2Ryb3AtaW5wdXR0ZXh0LWFjcXVpcmVzLXN0eWxlLmh0
bWwKLWVkaXRpbmcvcGFzdGVib2FyZC9kcm9wLWxpbmsuaHRtbAotZWRpdGluZy9wYXN0ZWJvYXJk
L2Ryb3AtdGV4dC1ldmVudHMuaHRtbAotZWRpdGluZy9wYXN0ZWJvYXJkL2Ryb3AtdGV4dC13aXRo
b3V0LXNlbGVjdGlvbi5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvZW1hY3MtY250bC15LTAwMS5o
dG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvZW1hY3MtY3RybC1hLWsteS5odG1sCi1lZGl0aW5nL3Bh
c3RlYm9hcmQvZW1hY3MtY3RybC1rLXktMDAxLmh0bWwKLWVkaXRpbmcvcGFzdGVib2FyZC9maWxl
LWlucHV0LWZpbGVzLWFjY2Vzcy5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvZmlsZXMtZHVyaW5n
LXBhZ2UtZHJhZ3MuaHRtbAotZWRpdGluZy9wYXN0ZWJvYXJkL2dldC1kYXRhLXRleHQtcGxhaW4t
ZHJvcC5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtYmVmb3JlLXRhYi1zcGFuLmh0bWwK
LWVkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1kcmFnLWRyb3AuaHRtbAotZWRpdGluZy9wYXN0ZWJv
YXJkL3NtYXJ0LXBhc3RlLTAwMS5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUt
MDAyLmh0bWwKLWVkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDMuaHRtbAotZWRpdGlu
Zy9wYXN0ZWJvYXJkL3NtYXJ0LXBhc3RlLTAwNC5odG1sCi1lZGl0aW5nL3Bhc3RlYm9hcmQvc21h
cnQtcGFzdGUtMDA1Lmh0bWwKLWVkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0wMDcuaHRt
bAotZWRpdGluZy9wYXN0ZWJvYXJkL3NtYXJ0LXBhc3RlLTAwOC5odG1sCi1lZGl0aW5nL3Bhc3Rl
Ym9hcmQvc3ViZnJhbWUtZHJhZ25kcm9wLTEuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vMTQ5NzEu
aHRtbAotZWRpdGluZy9zZWxlY3Rpb24vNDg5NTQyOC0xLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9u
LzQ4OTU0MjgtNC5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi81MDU3NTA2Lmh0bWwKLWVkaXRpbmcv
c2VsZWN0aW9uLzUyMzIxNTkuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vNTMzMzcyNS5odG1sCi1l
ZGl0aW5nL3NlbGVjdGlvbi81MzU0NDU1LTEuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vNTM1NDQ1
NS0yLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2FuY2hvci1mb2N1czIuaHRtbAotZWRpdGluZy9z
ZWxlY3Rpb24vYW5jaG9yLWZvY3VzMy5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9idXR0b24tcmln
aHQtY2xpY2suaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vY2xpY2staW4tZm9jdXNhYmxlLWxpbmst
c2hvdWxkLW5vdC1jbGVhci1zZWxlY3Rpb24uaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vY2xpY2st
aW4tbWFyZ2lucy1pbnNpZGUtZWRpdGFibGUtZGl2Lmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2Ns
aWNrLWluLXBhZGRpbmctd2l0aC1tdWx0aXBsZS1saW5lLWJveGVzLmh0bWwKLWVkaXRpbmcvc2Vs
ZWN0aW9uL2NvbnRhaW5zLWJvdW5kYXJpZXMuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vY29udGV4
dC1tZW51LW9uLXRleHQuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVzaWRl
LWNyLXNwYW4uaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stY3Jhc2guaHRtbAot
ZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1jcmFzaC5odG1sCi1lZGl0
aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sCi1lZGl0
aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLmh0bWwKLWVkaXRpbmcvc2VsZWN0
aW9uL2RyYWctc2VsZWN0LTEuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZHJhZy1zZWxlY3QtcmFw
aWRseS5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9kcmFnLXN0YXJ0LWV2ZW50LWNsaWVudC14LXku
aHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZHJhZy10by1jb250ZW50ZWRpdGFibGUtaWZyYW1lLmh0
bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2VkaXRhYmxlLWxpbmtzLmh0bWwKLWVkaXRpbmcvc2VsZWN0
aW9uL2VtcHR5LWNlbGwtcmlnaHQtY2xpY2suaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZXhwYW5k
aW5nLXNlbGVjdGlvbnMuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZXhwYW5kaW5nLXNlbGVjdGlv
bnMyLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1hZnRlci1tb3VzZS1zZWxlY3Rpb24u
aHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZXh0ZW5kLXNlbGVjdGlvbi1hZnRlci1kb3VibGUtY2xp
Y2suaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZmFrZS1kb3VibGVjbGljay5odG1sCi1lZGl0aW5n
L3NlbGVjdGlvbi9mYWtlLWRyYWcuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vaW5saW5lLWNsb3Nl
c3QtbGVhZi1jaGlsZC5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9sYXN0LWVtcHR5LWlubGluZS5o
dG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9taXhlZC1lZGl0YWJpbGl0eS0xMC5odG1sCi1lZGl0aW5n
L3NlbGVjdGlvbi9tb3ZlLWJlZ2luLWVuZC5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9wYXJhZ3Jh
cGgtZ3JhbnVsYXJpdHkuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0LWZyb20tdGV4dGZp
ZWxkLW91dHdhcmRzLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdC1vdXQtb2YtZWRpdGFi
bGUuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0LW91dC1vZi1mbG9hdGVkLWNvbnRlbnRl
ZGl0YWJsZS5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9zZWxlY3Qtb3V0LW9mLWZsb2F0ZWQtaW5w
dXQuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vc2VsZWN0LW91dC1vZi1mbG9hdGVkLXRleHRhcmVh
Lmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL3NlbGVjdGlvbi1hY3Rpb25zLmh0bWwKLWVkaXRpbmcv
c2VsZWN0aW9uL3NoaWZ0LWNsaWNrLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL3Nocmluay1zZWxl
Y3Rpb24tYWZ0ZXItc2hpZnQtcGFnZWRvd24uaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vdXNlci1k
cmFnLWVsZW1lbnQtYW5kLXVzZXItc2VsZWN0LW5vbmUuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24v
d29yZC1ncmFudWxhcml0eS5odG1sCi1lZGl0aW5nL3NwZWxsaW5nL2NvbnRleHQtbWVudS1zdWdn
ZXN0aW9ucy5odG1sCi1lZGl0aW5nL3NwZWxsaW5nL3NwZWxsY2hlY2stcGFzdGUuaHRtbAotZWRp
dGluZy91bmRvL3VuZG8tZGVsZXRlV29yZC5odG1sCi1lZGl0aW5nL3VuZG8vdW5kby1zbWFydC1k
ZWxldGUtcmV2ZXJzZWQtc2VsZWN0aW9uLmh0bWwKLWVkaXRpbmcvdW5kby91bmRvLXNtYXJ0LWRl
bGV0ZS13b3JkLmh0bWwKLWZhc3QvYmxvY2svcG9zaXRpb25pbmcvaGl0dGVzdC1vbi1yZWxhdGl2
ZS1wb3NpdGlvbmVkLWNoaWxkcmVuLmh0bWwKLWZhc3QvY3NzL3VzZXItZHJhZy1ub25lLmh0bWwK
LWZhc3QvZG9tL0hUTUxTZWxlY3RFbGVtZW50L2NsaWNrLXNpemUtemVyby1uby1jcmFzaC5odG1s
Ci1mYXN0L2RvbS9XaW5kb3cvd2luZG93LXBvc3RtZXNzYWdlLWNsb25lLWZyYW1lcy5odG1sCi1m
YXN0L2RvbS9XaW5kb3cvd2luZG93LXBvc3RtZXNzYWdlLWNsb25lLmh0bWwKLWZhc3QvZG9tL2hp
ZGRlbi1pZnJhbWUtbm8tZm9jdXMuaHRtbAotZmFzdC9kb20vaG9yaXpvbnRhbC1zY3JvbGxiYXIt
aW4tcnRsLmh0bWwKLWZhc3QvZG9tL3ZlcnRpY2FsLXNjcm9sbGJhci1pbi1ydGwuaHRtbAotZmFz
dC9keW5hbWljL2xheWVyLWhpdC10ZXN0LWNyYXNoLmh0bWwKLWZhc3QvZW5jb2RpbmcvbWFpbHRv
LWFsd2F5cy11dGYtOC5odG1sCi1mYXN0L2V2ZW50cy81MDU2NjE5Lmh0bWwKLWZhc3QvZXZlbnRz
L2FjY2Vzcy1rZXktc2VsZi1kZXN0cnVjdC5odG1sCi1mYXN0L2V2ZW50cy9hbmNob3ItZW1wdHkt
Zm9jdXMuaHRtbAotZmFzdC9ldmVudHMvYXJyb3cta2V5cy1vbi1ib2R5Lmh0bWwKLWZhc3QvZXZl
bnRzL2Fycm93LW5hdmlnYXRpb24uaHRtbAotZmFzdC9ldmVudHMvYXR0ZW1wdC1zZWxlY3QtYWxs
LXdpdGgtd3JvbmctbW9kaWZpZXIuaHRtbAotZmFzdC9ldmVudHMvYXV0b3Njcm9sbC1pbi10ZXh0
ZmllbGQuaHRtbAotZmFzdC9ldmVudHMvYXV0b3Njcm9sbC1ub25zY3JvbGxhYmxlLWlmcmFtZS1p
bi1zY3JvbGxhYmxlLWRpdi5odG1sCi1mYXN0L2V2ZW50cy9hdXRvc2Nyb2xsLXdpdGgtbm9uLXNj
cm9sbGFibGUtcGFyZW50Lmh0bWwKLWZhc3QvZXZlbnRzL2F1dG9zY3JvbGwuaHRtbAotZmFzdC9l
dmVudHMvYm9ndXMtZHJvcEVmZmVjdC1lZmZlY3RBbGxvd2VkLmh0bWwKLWZhc3QvZXZlbnRzL2No
ZWNrLWRlZm9jdXMtZXZlbnQtb3JkZXItd2hlbi10cmlnZ2VyZWQtYnktbW91c2UtY2xpY2suaHRt
bAotZmFzdC9ldmVudHMvY2hlY2stZGVmb2N1cy1ldmVudC1vcmRlci13aGVuLXRyaWdnZXJlZC1i
eS10YWIuaHRtbAotZmFzdC9ldmVudHMvY2xpY2stY291bnQuaHRtbAotZmFzdC9ldmVudHMvY29u
dGVudC1jaGFuZ2VkLWR1cmluZy1kcm9wLmh0bWwKLWZhc3QvZXZlbnRzL2NvbnRleHQtbm8tZGVz
ZWxlY3QuaHRtbAotZmFzdC9ldmVudHMvY29udGV4dC1vbm1vdXNlZG93bi1ldmVudC5odG1sCi1m
YXN0L2V2ZW50cy9jb250ZXh0bWVudS1zY3JvbGxlZC1wYWdlLXdpdGgtZnJhbWUuaHRtbAotZmFz
dC9ldmVudHMvY29udGludW91cy1wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYu
aHRtbAotZmFzdC9ldmVudHMvY3Jhc2gtb24tbXV0YXRlLWR1cmluZy1kcm9wLmh0bWwKLWZhc3Qv
ZXZlbnRzL2RibGNsaWNrLWFkZEV2ZW50TGlzdGVuZXIuaHRtbAotZmFzdC9ldmVudHMvZHJhZy1h
bmQtZHJvcC1kYXRhVHJhbnNmZXItdHlwZXMtbm9jcmFzaC5odG1sCi1mYXN0L2V2ZW50cy9kcmFn
LWFuZC1kcm9wLWZpcmUtZHJhZy1kcmFnb3Zlci5odG1sCi1mYXN0L2V2ZW50cy9kcmFnLWFuZC1k
cm9wLmh0bWwKLWZhc3QvZXZlbnRzL2RyYWctZmlsZS1jcmFzaC5odG1sCi1mYXN0L2V2ZW50cy9k
cmFnLWluLWZyYW1lcy5odG1sCi1mYXN0L2V2ZW50cy9kcmFnLXBhcmVudC1ub2RlLmh0bWwKLWZh
c3QvZXZlbnRzL2RyYWctdG8tbmF2aWdhdGUuaHRtbAotZmFzdC9ldmVudHMvZHJvcHpvbmUtMDAx
Lmh0bWwKLWZhc3QvZXZlbnRzL2Ryb3B6b25lLTAwMi5odG1sCi1mYXN0L2V2ZW50cy9kcm9wem9u
ZS0wMDMuaHRtbAotZmFzdC9ldmVudHMvZHJvcHpvbmUtMDA0Lmh0bWwKLWZhc3QvZXZlbnRzL2V2
ZW50LWlucHV0LWNvbnRlbnRFZGl0YWJsZS5odG1sCi1mYXN0L2V2ZW50cy9mb2N1cy1jaGFuZ2Ut
Y3Jhc2guaHRtbAotZmFzdC9ldmVudHMvZm9jdXMtY2hhbmdlLWNyYXNoMi5odG1sCi1mYXN0L2V2
ZW50cy9mb2N1c2luZ1VubG9hZGVkRnJhbWUuaHRtbAotZmFzdC9ldmVudHMvaW1hZ2VtYXAtbm9y
ZW5kZXItY3Jhc2guaHRtbAotZmFzdC9ldmVudHMvaW5wdXQtdGFiLWZvY3VzLW5vLWR1cGxpY2F0
ZS1ldmVudHMuaHRtbAotZmFzdC9ldmVudHMvaW5wdXRUZXh0LW5ldmVyLWZpcmVkLW9uLWtleWRv
d24tY2FuY2VsLmh0bWwKLWZhc3QvZXZlbnRzL2pzLWtleWJvYXJkLWV2ZW50LWNyZWF0aW9uLmh0
bWwKLWZhc3QvZXZlbnRzL2tleS1ldmVudHMtaW4taW5wdXQtYnV0dG9uLmh0bWwKLWZhc3QvZXZl
bnRzL2tleS1ldmVudHMtaW4taW5wdXQtdGV4dC5odG1sCi1mYXN0L2V2ZW50cy9rZXlkb3duLTEu
aHRtbAotZmFzdC9ldmVudHMva2V5ZG93bi1mdW5jdGlvbi1rZXlzLmh0bWwKLWZhc3QvZXZlbnRz
L2tleWRvd24ta2V5cHJlc3MtZm9jdXMtY2hhbmdlLmh0bWwKLWZhc3QvZXZlbnRzL2tleWRvd24t
a2V5cHJlc3MtcHJldmVudERlZmF1bHQuaHRtbAotZmFzdC9ldmVudHMva2V5ZG93bi1udW1wYWQt
a2V5cy5odG1sCi1mYXN0L2V2ZW50cy9rZXlkb3duLXJlbW92ZS1mcmFtZS5odG1sCi1mYXN0L2V2
ZW50cy9rZXlwcmVzcy1mb2N1cy1jaGFuZ2UuaHRtbAotZmFzdC9ldmVudHMva2V5cHJlc3MtcmVt
b3ZlZC1ub2RlLmh0bWwKLWZhc3QvZXZlbnRzL21lbnUta2V5ZG93bi1vbi1oaWRkZW4tZWxlbWVu
dC5odG1sCi1mYXN0L2V2ZW50cy9tb3VzZS1jbGljay1ldmVudHMuaHRtbAotZmFzdC9ldmVudHMv
bW91c2V1cC1mcm9tLWJ1dHRvbjIuaHRtbAotZmFzdC9ldmVudHMvbXVsdGlsaW5lLWxpbmstYXJy
b3ctbmF2aWdhdGlvbi5odG1sCi1mYXN0L2V2ZW50cy9ub2RlLWV2ZW50LWFuY2hvci1sb2NrLmh0
bWwKLWZhc3QvZXZlbnRzL29uY2hhbmdlLXBhc3N3b3JkZmllbGQuaHRtbAotZmFzdC9ldmVudHMv
b25jaGFuZ2Utc2VhcmNoZmllbGQuaHRtbAotZmFzdC9ldmVudHMvb25jaGFuZ2Utc2VsZWN0LXBv
cHVwLmh0bWwKLWZhc3QvZXZlbnRzL29uY2hhbmdlLXRleHQtZm9ybS1maWVsZC5odG1sCi1mYXN0
L2V2ZW50cy9vbmNoYW5nZS10ZXh0ZmllbGQuaHRtbAotZmFzdC9ldmVudHMvb25kcmFnZW50ZXIu
aHRtbAotZmFzdC9ldmVudHMvb25kcm9wLXRleHQtaHRtbC5odG1sCi1mYXN0L2V2ZW50cy9vbnNl
YXJjaC1lbnRlci5odG1sCi1mYXN0L2V2ZW50cy9vcGVuLXdpbmRvdy1mcm9tLWFub3RoZXItZnJh
bWUuaHRtbAotZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2
Lmh0bWwKLWZhc3QvZXZlbnRzL3BvcHVwLWJsb2NraW5nLWNsaWNrLWluLWlmcmFtZS5odG1sCi1m
YXN0L2V2ZW50cy9wb3B1cC13aGVuLXNlbGVjdC1jaGFuZ2UuaHRtbAotZmFzdC9ldmVudHMvcHJl
dmVudC1kcmFnLXRvLW5hdmlnYXRlLmh0bWwKLWZhc3QvZXZlbnRzL3JlY29yZGVkLWtleWRvd24t
ZXZlbnQuaHRtbAotZmFzdC9ldmVudHMvcmVtb3ZlLWNoaWxkLW9uc2Nyb2xsLmh0bWwKLWZhc3Qv
ZXZlbnRzL3JpZ2h0LWNsaWNrLWZvY3VzLmh0bWwKLWZhc3QvZXZlbnRzL3Njcm9sbC1hZnRlci1j
bGljay1vbi10YWItaW5kZXguaHRtbAotZmFzdC9ldmVudHMvc2Nyb2xsLWluLXNjYWxlZC1wYWdl
LXdpdGgtb3ZlcmZsb3ctaGlkZGVuLmh0bWwKLWZhc3QvZXZlbnRzL3Njcm9sbGJhci1kb3VibGUt
Y2xpY2suaHRtbAotZmFzdC9ldmVudHMvc2VsZWN0LWVsZW1lbnQuaHRtbAotZmFzdC9ldmVudHMv
c2VsZWN0LW9uY2hhbmdlLWNyYXNoLmh0bWwKLWZhc3QvZXZlbnRzL3NlbGVjdGlvbmNoYW5nZS11
c2VyLWluaXRpYXRlZC5odG1sCi1mYXN0L2V2ZW50cy9zZWxlY3RzdGFydC1ieS1kb3VibGUtdHJp
cGxlLWNsaWNrcy5odG1sCi1mYXN0L2V2ZW50cy9zZWxlY3RzdGFydC1ieS1kcmFnLmh0bWwKLWZh
c3QvZXZlbnRzL3NlbGVjdHN0YXJ0LWR1cmluZy1hdXRvc2Nyb2xsLmh0bWwKLWZhc3QvZXZlbnRz
L3NlbGVjdHN0YXJ0LXByZXZlbnQtc2VsZWN0aW9uLW9uLXJpZ2h0LWNsaWNrLmh0bWwKLWZhc3Qv
ZXZlbnRzL3NwYWNlLXNjcm9sbC1ldmVudC5odG1sCi1mYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1l
dmVudHMtaW4taW5wdXQtdGV4dC5odG1sCi1mYXN0L2V2ZW50cy9zdGFuZGFsb25lLWltYWdlLWRy
YWctdG8tZWRpdGFibGUuaHRtbAotZmFzdC9ldmVudHMvdGFiLWZvY3VzLWhpZGRlbi5odG1sCi1m
YXN0L2V2ZW50cy90YWItaW1hZ2VtYXAuaHRtbAotZmFzdC9ldmVudHMvdGFiLWlzLWZvY3VzYWJs
ZS1hc3NlcnQuaHRtbAotZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9jdXMtY2hhaW4uaHRtbAotZmFz
dC9ldmVudHMvd2hlZWxldmVudC1pbi1ob3Jpem9udGFsLXNjcm9sbGJhci1pbi1ydGwuaHRtbAot
ZmFzdC9ldmVudHMvd2hlZWxldmVudC1pbi12ZXJ0aWNhbC1zY3JvbGxiYXItaW4tcnRsLmh0bWwK
LWZhc3QvZXZlbnRzL3pvb20tZGJsY2xpY2suaHRtbAotZmFzdC9maWxlcy9hcHBseS1ibG9iLXVy
bC10by1pbWcuaHRtbAotZmFzdC9maWxlcy9hcHBseS1ibG9iLXVybC10by14aHIuaHRtbAotZmFz
dC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLmh0bWwKLWZhc3Qv
ZmlsZXMvZmlsZS1yZWFkZXItYWJvcnQuaHRtbAotZmFzdC9maWxlcy9yZWFkLWJsb2ItYXN5bmMu
aHRtbAotZmFzdC9maWxlcy9yZWFkLWZpbGUtYXN5bmMuaHRtbAotZmFzdC9mb3Jtcy9hY2Nlc3Mt
a2V5Lmh0bWwKLWZhc3QvZm9ybXMvYnV0dG9uLWVudGVyLWNsaWNrLmh0bWwKLWZhc3QvZm9ybXMv
YnV0dG9uLXNwYWNlYmFyLWNsaWNrLmh0bWwKLWZhc3QvZm9ybXMvZGlzYWJsZWQtc2VhcmNoLWlu
cHV0Lmh0bWwKLWZhc3QvZm9ybXMvZGlzcGxheS1ub25lLWluLW9uY2hhbmdlLWtleWJvYXJkLmh0
bWwKLWZhc3QvZm9ybXMvZHJhZy1pbnRvLXRleHRhcmVhLmh0bWwKLWZhc3QvZm9ybXMvZHJhZy1v
dXQtb2YtdGV4dGFyZWEuaHRtbAotZmFzdC9mb3Jtcy9lbXB0eS10ZXh0YXJlYS10b2dnbGUtZGlz
YWJsZWQuaHRtbAotZmFzdC9mb3Jtcy9lbnRlci1jbGlja3MtYnV0dG9ucy5odG1sCi1mYXN0L2Zv
cm1zL2ZvY3VzLWNoYW5nZS1vbi1rZXlwcmVzcy5odG1sCi1mYXN0L2Zvcm1zL2ZvY3VzLWNvbnRy
b2wtdG8tcGFnZS5odG1sCi1mYXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi1pbnB1dC5odG1sCi1m
YXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi10ZXh0YXJlYS5odG1sCi1mYXN0L2Zvcm1zL2dldC1m
aWxlLXVwbG9hZC5odG1sCi1mYXN0L2Zvcm1zL2ltcGxpY2l0LXN1Ym1pc3Npb24uaHRtbAotZmFz
dC9mb3Jtcy9pbnB1dC1maWxlLXJlLXJlbmRlci5odG1sCi1mYXN0L2Zvcm1zL2lucHV0LWxpdmUt
cHNldWRvLXNlbGVjdG9ycy5odG1sCi1mYXN0L2Zvcm1zL2lucHV0LW51bWJlci1rZXlvcGVyYXRp
b24uaHRtbAotZmFzdC9mb3Jtcy9pbnB1dC1yYWRpby1jaGVja2VkLXRhYi5odG1sCi1mYXN0L2Zv
cm1zL2lucHV0LXJlYWRvbmx5LWF1dG9zY3JvbGwuaHRtbAotZmFzdC9mb3Jtcy9pbnB1dC10ZXh0
LWRvdWJsZS1jbGljay5odG1sCi1mYXN0L2Zvcm1zL2lucHV0LXRleHQtZHJhZy1kb3duLmh0bWwK
LWZhc3QvZm9ybXMvaW5wdXQtdGV4dC1lbnRlci5odG1sCi1mYXN0L2Zvcm1zL2lucHV0LXRleHQt
b3B0aW9uLWRlbGV0ZS5odG1sCi1mYXN0L2Zvcm1zL2lucHV0LXRleHQtc2Nyb2xsLWxlZnQtb24t
Ymx1ci5odG1sCi1mYXN0L2Zvcm1zL2lucHV0LXR5cGUtY2hhbmdlLWluLW9uZm9jdXMta2V5Ym9h
cmQuaHRtbAotZmFzdC9mb3Jtcy9sZWdlbmQtYWNjZXNzLWtleS5odG1sCi1mYXN0L2Zvcm1zL2xp
c3Rib3gtZGVzZWxlY3Qtc2Nyb2xsLmh0bWwKLWZhc3QvZm9ybXMvbGlzdGJveC1vbmNoYW5nZS5o
dG1sCi1mYXN0L2Zvcm1zL2xpc3Rib3gtc2VsZWN0aW9uLmh0bWwKLWZhc3QvZm9ybXMvbGlzdGJv
eC10eXBlYWhlYWQtY3lyaWxsaWMuaHRtbAotZmFzdC9mb3Jtcy9saXN0Ym94LXR5cGVhaGVhZC1l
bXB0eS5odG1sCi1mYXN0L2Zvcm1zL2xpc3Rib3gtdHlwZWFoZWFkLWdyZWVrLmh0bWwKLWZhc3Qv
Zm9ybXMvbGlzdGJveC10eXBlYWhlYWQtc2Nyb2xsLmh0bWwKLWZhc3QvZm9ybXMvb25jaGFuZ2Ut
ZW50ZXItc3VibWl0Lmh0bWwKLWZhc3QvZm9ybXMvb25zZWxlY3QtdGV4dGFyZWEuaHRtbAotZmFz
dC9mb3Jtcy9vbnNlbGVjdC10ZXh0ZmllbGQuaHRtbAotZmFzdC9mb3Jtcy9vcHRpb24tbW91c2Vl
dmVudHMuaHRtbAotZmFzdC9mb3Jtcy9yYWRpb19jaGVja2VkX25hbWUuaHRtbAotZmFzdC9mb3Jt
cy9yYW5nZS9zbGlkZXItZGVsZXRlLXdoaWxlLWRyYWdnaW5nLXRodW1iLmh0bWwKLWZhc3QvZm9y
bXMvcmFuZ2Uvc2xpZGVyLW1vdXNlLWV2ZW50cy5odG1sCi1mYXN0L2Zvcm1zL3JhbmdlL3NsaWRl
ci1vbmNoYW5nZS1ldmVudC5odG1sCi1mYXN0L2Zvcm1zL3JlbmRlci10ZXh0LWNyYXNoLmh0bWwK
LWZhc3QvZm9ybXMvcmVzdG9yZS1zZWxlY3Rpb24tYWZ0ZXItbGF5b3V0Lmh0bWwKLWZhc3QvZm9y
bXMvc2VhcmNoLWV2ZW50LWRlbGF5Lmh0bWwKLWZhc3QvZm9ybXMvc2VsZWN0LWFjY2Vzc2tleS5o
dG1sCi1mYXN0L2Zvcm1zL3NlbGVjdC1jYWNoZS1kZXN5bmNocm9uaXphdGlvbi5odG1sCi1mYXN0
L2Zvcm1zL3NlbGVjdC1kb3VibGUtb25jaGFuZ2UuaHRtbAotZmFzdC9mb3Jtcy9zZWxlY3QtZW1w
dHktbGlzdC5odG1sCi1mYXN0L2Zvcm1zL3NlbGVjdC1saXN0Ym94LWZvY3VzLWRpc3BsYXlub25l
Lmh0bWwKLWZhc3QvZm9ybXMvc2VsZWN0LWxpc3Rib3gtbXVsdGlwbGUtbm8tZm9jdXNyaW5nLmh0
bWwKLWZhc3QvZm9ybXMvc2VsZWN0LW9wdGlvbi1hY2Nlc3NrZXktY3Jhc2guaHRtbAotZmFzdC9m
b3Jtcy9zZWxlY3QtcG9wdXAtcGFnZWtleXMuaHRtbAotZmFzdC9mb3Jtcy9zZWxlY3Qtc2NyaXB0
LW9uY2hhbmdlLmh0bWwKLWZhc3QvZm9ybXMvc2VsZWN0LXR5cGUtYWhlYWQtbGlzdC1ib3gtbm8t
c2VsZWN0aW9uLmh0bWwKLWZhc3QvZm9ybXMvc2VsZWN0LXR5cGUtYWhlYWQtbm9uLWxhdGluLmh0
bWwKLWZhc3QvZm9ybXMvdGFiYmluZy1pbnB1dC1pZnJhbWUuaHRtbAotZmFzdC9mb3Jtcy90ZXh0
LWlucHV0LWV2ZW50Lmh0bWwKLWZhc3QvZm9ybXMvdGV4dGFyZWEtYXJyb3ctbmF2aWdhdGlvbi5o
dG1sCi1mYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2ZW50Lmh0bWwKLWZhc3QvZm9ybXMvdGV4
dGFyZWEtbGl2ZS1wc2V1ZG8tc2VsZWN0b3JzLmh0bWwKLWZhc3QvZm9ybXMvdGV4dGFyZWEtc2Ny
b2xsZWQtZW5kbGluZS1jYXJldC5odG1sCi1mYXN0L2Zvcm1zL3RleHRhcmVhLXRleHRsZW5ndGgu
aHRtbAotZmFzdC9mb3Jtcy90ZXh0YXJlYS10eXBlLXNwYWNlcy5odG1sCi1mYXN0L2Zvcm1zL3Rl
eHRmaWVsZC1kcmFnLWludG8tZGlzYWJsZWQuaHRtbAotZmFzdC9mb3Jtcy90ZXh0ZmllbGQtaW5z
aWRlLWFuY2hvci5odG1sCi1mYXN0L2Zvcm1zL3RleHRmaWVsZC1vbmNoYW5nZS1kZWxldGlvbi5o
dG1sCi1mYXN0L2Zvcm1zL3RleHRmaWVsZC1vdXRsaW5lLmh0bWwKLWZhc3QvZm9ybXMvdGV4dGZp
ZWxkLXRvLXBhc3N3b3JkLW9uLWZvY3VzLmh0bWwKLWZhc3QvZm9ybXMvdGV4dGlucHV0LW5vdC1m
aXJlZC1vbi1lbnRlci1pbi1pbnB1dC5odG1sCi1mYXN0L2ZyYW1lcy9pZnJhbWUtd2luZG93LWZv
Y3VzLmh0bWwKLWZhc3QvZnJhbWVzL3Rha2UtZm9jdXMtZnJvbS1pZnJhbWUuaHRtbAotZmFzdC9o
aXN0b3J5L2hpc3RvcnlfcmVsb2FkLmh0bWwKLWZhc3QvaGlzdG9yeS93aW5kb3ctb3Blbi5odG1s
Ci1mYXN0L2xpc3RzL2RyYWctaW50by1tYXJrZXIuaHRtbAotZmFzdC9sb2FkZXIvcG9saWN5LWRl
bGVnYXRlLWFjdGlvbi1oaXQtdGVzdC16b29tZWQuaHRtbAotZmFzdC9yZXBhaW50L2ZpeGVkLW1v
dmUtYWZ0ZXIta2V5Ym9hcmQtc2Nyb2xsLmh0bWwKLWZhc3QvcmVwYWludC9qYXBhbmVzZS1ybC1z
ZWxlY3Rpb24tcmVwYWludC5odG1sCi1mYXN0L3JlcGFpbnQvcmVwYWludC1hY3Jvc3Mtd3JpdGlu
Zy1tb2RlLWJvdW5kYXJ5Lmh0bWwKLWZhc3QvcmVwYWludC9zZWxlY3Rpb24tcmwuaHRtbAotZmFz
dC90ZXh0L2F0c3VpLXJ0bC1vdmVycmlkZS1zZWxlY3Rpb24uaHRtbAotZmFzdC90ZXh0L2ludGVy
bmF0aW9uYWwva2htZXItc2VsZWN0aW9uLmh0bWwKLWZhc3QvdGV4dC9vZmZzZXRGb3JQb3NpdGlv
bi1jb21wbGV4LWZhbGxiYWNrLmh0bWwKLWZhc3QvdGV4dC9yZXNldC1kcmFnLW9uLW1vdXNlLWRv
d24uaHRtbAotZmFzdC93cml0aW5nLW1vZGUvaG9yaXpvbnRhbC1idC1yZXBsYWNlZC1zZWxlY3Rp
b24uaHRtbAotZmFzdC93cml0aW5nLW1vZGUvamFwYW5lc2UtbHItc2VsZWN0aW9uLmh0bWwKLWZh
c3Qvd3JpdGluZy1tb2RlL2phcGFuZXNlLXJsLXNlbGVjdGlvbi5odG1sCi1mYXN0L3dyaXRpbmct
bW9kZS92ZXJ0aWNhbC1sci1yZXBsYWNlZC1zZWxlY3Rpb24uaHRtbAotZmFzdC93cml0aW5nLW1v
ZGUvdmVydGljYWwtcmwtcmVwbGFjZWQtc2VsZWN0aW9uLmh0bWwKLWh0dHAvdGVzdHMvbG9jYWwv
YmxvYi9zZW5kLWh5YnJpZC1ibG9iLmh0bWwKLWh0dHAvdGVzdHMvbG9jYWwvZHJhZy1vdmVyLXJl
bW90ZS1jb250ZW50Lmh0bWwKLWh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9maWxlLWxhc3QtbW9k
aWZpZWQuaHRtbAotaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3NlbmQtZHJhZ2dlZC1maWxlLmh0
bWwKLWh0dHAvdGVzdHMvbG9jYWwvZmlsZWFwaS9zZW5kLXNsaWNlZC1kcmFnZ2VkLWZpbGUuaHRt
bAotaHR0cC90ZXN0cy9sb2NhbC9mb3JtZGF0YS9mb3JtLWRhdGEtd2l0aC11bmtub3duLWZpbGUt
ZXh0ZW5zaW9uLmh0bWwKLWh0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvc2VuZC1mb3JtLWRhdGEt
Y29uc3RydWN0ZWQtZnJvbS1mb3JtLmh0bWwKLWh0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvc2Vu
ZC1mb3JtLWRhdGEtd2l0aC1zbGljZWQtZmlsZS5odG1sCi1odHRwL3Rlc3RzL2xvY2FsL2Zvcm1k
YXRhL3NlbmQtZm9ybS1kYXRhLmh0bWwKLWh0dHAvdGVzdHMvbG9jYWwvZm9ybWRhdGEvdXBsb2Fk
LWV2ZW50cy5odG1sCi1odHRwL3Rlc3RzL21pc2MvYnViYmxlLWRyYWctZXZlbnRzLmh0bWwKLWh0
dHAvdGVzdHMvbWlzYy9pc2luZGV4LXdpdGgtbm8tZm9ybS1iYXNlLWhyZWYuaHRtbAotaHR0cC90
ZXN0cy9taXNjL2lzaW5kZXgtd2l0aC1uby1mb3JtLmh0bWwKLWh0dHAvdGVzdHMvbmF2aWdhdGlv
bi9uby1yZWZlcnJlci1yZXNldC5odG1sCi1odHRwL3Rlc3RzL25hdmlnYXRpb24vbm8tcmVmZXJy
ZXItdGFyZ2V0LWJsYW5rLmh0bWwKLWh0dHAvdGVzdHMvc2VjdXJpdHkvY2xpcGJvYXJkL2NsaXBi
b2FyZC1maWxlLWFjY2Vzcy5odG1sCi1odHRwL3Rlc3RzL3NlY3VyaXR5L2RhdGFUcmFuc2Zlci1z
ZXQtZGF0YS1maWxlLXVybC5odG1sCi1odHRwL3Rlc3RzL3NlY3VyaXR5L2RyYWctZHJvcC1zYW1l
LXVuaXF1ZS1vcmlnaW4uaHRtbAotaHR0cC90ZXN0cy9zZWN1cml0eS9kcmFnLW92ZXItcmVtb3Rl
LWNvbnRlbnQtaWZyYW1lLmh0bWwKLWh0dHAvdGVzdHMvc2VjdXJpdHkvaXNvbGF0ZWRXb3JsZC91
c2VyR2VzdHVyZUV2ZW50cy5odG1sCi1tZWRpYS9jb250cm9scy1kcmFnLXRpbWViYXIuaHRtbAot
bWVkaWEvY29udHJvbHMtcmlnaHQtY2xpY2stb24tdGltZWJhci5odG1sCi1tZWRpYS9tZWRpYS1m
dWxsc2NyZWVuLWlubGluZS5odG1sCi1tZWRpYS92aWRlby1jb250cm9scy12aXNpYmxlLWF1ZGlv
LW9ubHkuaHRtbAotcGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvYmFja3dhcmQtZGVsZXRl
Lmh0bWwKLXBsYXRmb3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YVRyYW5zZmVyLXNldC1k
YXRhLWZpbGUtdXJsLmh0bWwKLXBsYXRmb3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1z
ZWxlY3Rpb25zLXRvLWNvbnRlbnRlZGl0YWJsZS5odG1sCi1wbGF0Zm9ybS9tYWMvZWRpdGluZy9z
ZWxlY3Rpb24vZG91YmxlY2xpY2stc2hvdWxkLW5vdC1leHBhbmQtYWNyb3NzLWxpbmVzLmh0bWwK
LXBsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi93b3JkLXRoYWkuaHRtbAotcGxhdGZvcm0v
bWFjL2Zhc3QvZm9ybXMvbGlzdGJveC1zY3JvbGxiYXItaGl0LXRlc3QuaHRtbAotcGxhdGZvcm0v
bWFjL2Zhc3Qvb3ZlcmZsb3cvb3ZlcmZsb3ctc2Nyb2xsYmFyLWhpdC10ZXN0Lmh0bWwKLXBsdWdp
bnMvY2xpY2tpbmctbWlzc2luZy1wbHVnaW4tZmlyZXMtZGVsZWdhdGUuaHRtbAotcGx1Z2lucy9r
ZXlib2FyZC1ldmVudHMuaHRtbAotcGx1Z2lucy9tb3VzZS1ldmVudHMuaHRtbAotcGx1Z2lucy9t
b3VzZS1jbGljay1pZnJhbWUtdG8tcGx1Z2luLmh0bWwKLXNjcm9sbGJhcnMvc2Nyb2xsYmFyLWlm
cmFtZS1jbGljay1kb2VzLW5vdC1ibHVyLWNvbnRlbnQuaHRtbAotc2Nyb2xsYmFycy9zY3JvbGxi
YXItbWlzcy1tb3VzZW1vdmUtZGlzYWJsZWQuaHRtbAotc2Nyb2xsYmFycy9zY3JvbGxldmVudC1p
ZnJhbWUtbm8tc2Nyb2xsaW5nLXdoZWVsLmh0bWwKLQogIyBDT05TT0xFIE1FU1NBR0U6IGxpbmUg
MDogU1ZHIGFuaW1hdGlvbiBwYXVzZSBBUEkgbWlzc2luZyEKICMgW1dLMl0gU1ZHIGFuaW1hdGlv
biBwYXVzZSBBUEkgbWlzc2luZwogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjMzOTYKQEAgLTUwMCwzOTggKzE1NSw2IEBAIHN2Zy9hbmltYXRpb25zL3N2Z3JlY3Qt
YW5pbWF0aW9uLTIuaHRtbAogc3ZnL2FuaW1hdGlvbnMvc3ZndHJhbnNmb3JtLWFuaW1hdGlvbi0x
Lmh0bWwKIHN2Zy9hbmltYXRpb25zL3N2Z3RyYW5zZm9ybS1hbmltYXRpb24tZGlzY3JldGUuaHRt
bAogc3ZnL2FuaW1hdGlvbnMvc3Znc3RyaW5nLWFuaW1hdGlvbi1mYWxsYmFjay10by1kaXNjcmV0
ZS5odG1sCi1zdmcvY3VzdG9tL2Fic29sdXRlLXNpemVkLWNvbnRlbnQtd2l0aC1yZXNvdXJjZXMu
eGh0bWwKLXN2Zy9jdXN0b20vY2lyY2xlLW1vdmUtaW52YWxpZGF0aW9uLnN2Zwotc3ZnL2N1c3Rv
bS9jbGlwLXBhdGgtY2hpbGQtY2hhbmdlcy5zdmcKLXN2Zy9jdXN0b20vY2xpcC1wYXRoLWhyZWYt
Y2hhbmdlcy5zdmcKLXN2Zy9jdXN0b20vY2xpcC1wYXRoLWlkLWNoYW5nZXMuc3ZnCi1zdmcvY3Vz
dG9tL2NsaXAtcGF0aC11bml0cy1jaGFuZ2VzLnN2Zwotc3ZnL2N1c3RvbS9kZWVwLWR5bmFtaWMt
dXBkYXRlcy5zdmcKLXN2Zy9jdXN0b20vZm9yZWlnbk9iamVjdC1jcmFzaC1vbi1ob3Zlci54bWwK
LXN2Zy9jdXN0b20vZ2V0c2NyZWVuY3RtLWluLXNjcm9sbGFibGUtZGl2LWFyZWEtbmVzdGVkLnho
dG1sCi1zdmcvY3VzdG9tL2dldHNjcmVlbmN0bS1pbi1zY3JvbGxhYmxlLWRpdi1hcmVhLnhodG1s
Ci1zdmcvY3VzdG9tL2dldHNjcmVlbmN0bS1pbi1zY3JvbGxhYmxlLXN2Zy1hcmVhLnhodG1sCi1z
dmcvY3VzdG9tL2dyYWRpZW50LWF0dHItdXBkYXRlLnN2Zwotc3ZnL2N1c3RvbS9oaXQtdGVzdC1w
YXRoLXN0cm9rZS5zdmcKLXN2Zy9jdXN0b20vaGl0LXRlc3QtcGF0aC5zdmcKLXN2Zy9jdXN0b20v
aGl0LXRlc3QtdW5jbG9zZWQtc3VicGF0aHMuc3ZnCi1zdmcvY3VzdG9tL2hpdC10ZXN0LXdpdGgt
YnIueGh0bWwKLXN2Zy9jdXN0b20vaG92ZXItZGVmYXVsdC1maWxsLnN2Zwotc3ZnL2N1c3RvbS9p
bWFnZS1jbGlwcGVkLWhpdC5zdmcKLXN2Zy9jdXN0b20vaW5uZXItc3ZnLWhpdC10ZXN0LnN2Zwot
c3ZnL2N1c3RvbS9qcy11cGRhdGUtY29udGFpbmVyLnN2Zwotc3ZnL2N1c3RvbS9qcy11cGRhdGUt
Y29udGFpbmVyMi5zdmcKLXN2Zy9jdXN0b20vanMtdXBkYXRlLWdyYWRpZW50LnN2Zwotc3ZnL2N1
c3RvbS9qcy11cGRhdGUtcGF0aC1jaGFuZ2VzLnN2Zwotc3ZnL2N1c3RvbS9qcy11cGRhdGUtcGF0
aC1yZW1vdmFsLnN2Zwotc3ZnL2N1c3RvbS9qcy11cGRhdGUtcGF0dGVybi1jaGlsZC5zdmcKLXN2
Zy9jdXN0b20vanMtdXBkYXRlLXBhdHRlcm4uc3ZnCi1zdmcvY3VzdG9tL2pzLXVwZGF0ZS1wb2x5
Z29uLWNoYW5nZXMuc3ZnCi1zdmcvY3VzdG9tL2pzLXVwZGF0ZS1wb2x5Z29uLXJlbW92YWwuc3Zn
Ci1zdmcvY3VzdG9tL2pzLXVwZGF0ZS1zdG9wLWxpbmtlZC1ncmFkaWVudC5zdmcKLXN2Zy9jdXN0
b20vanMtdXBkYXRlLXN0b3Auc3ZnCi1zdmcvY3VzdG9tL2pzLXVwZGF0ZS1zdHlsZS5zdmcKLXN2
Zy9jdXN0b20vbGlua2luZy1hLTAzLWItYWxsLnN2Zwotc3ZnL2N1c3RvbS9saW5raW5nLWEtMDMt
Yi1wcmVzZXJ2ZUFzcGVjdFJhdGlvLnN2Zwotc3ZnL2N1c3RvbS9saW5raW5nLWEtMDMtYi10cmFu
c2Zvcm0uc3ZnCi1zdmcvY3VzdG9tL2xpbmtpbmctYS0wMy1iLXZpZXdCb3gtdHJhbnNmb3JtLnN2
Zwotc3ZnL2N1c3RvbS9saW5raW5nLWEtMDMtYi12aWV3Qm94LnN2Zwotc3ZnL2N1c3RvbS9saW5r
aW5nLWEtMDMtYi12aWV3VGFyZ2V0LnN2Zwotc3ZnL2N1c3RvbS9saW5raW5nLWEtMDMtYi16b29t
QW5kUGFuLnN2Zwotc3ZnL2N1c3RvbS9tYXJrZXItY2hhbmdlcy5zdmcKLXN2Zy9jdXN0b20vbWFy
a2VyLWNoaWxkLWNoYW5nZXMtY3NzLnN2Zwotc3ZnL2N1c3RvbS9tYXJrZXItY2hpbGQtY2hhbmdl
cy5zdmcKLXN2Zy9jdXN0b20vbWFya2VyLXN0cm9rZVdpZHRoLWNoYW5nZXMuc3ZnCi1zdmcvY3Vz
dG9tL21hcmtlci12aWV3Qm94LWNoYW5nZXMuc3ZnCi1zdmcvY3VzdG9tL21hc2stY2hhbmdlcy5z
dmcKLXN2Zy9jdXN0b20vbWFzay1jaGlsZC1jaGFuZ2VzLnN2Zwotc3ZnL2N1c3RvbS9tb3VzZS1t
b3ZlLW9uLXN2Zy1jb250YWluZXItc3RhbmRhbG9uZS5zdmcKLXN2Zy9jdXN0b20vbW91c2UtbW92
ZS1vbi1zdmctY29udGFpbmVyLnhodG1sCi1zdmcvY3VzdG9tL21vdXNlLW1vdmUtb24tc3ZnLXJv
b3Qtc3RhbmRhbG9uZS5zdmcKLXN2Zy9jdXN0b20vbW91c2UtbW92ZS1vbi1zdmctcm9vdC54aHRt
bAotc3ZnL2N1c3RvbS9wb2ludGVyLWV2ZW50cy1pbWFnZS5zdmcKLXN2Zy9jdXN0b20vcG9pbnRl
ci1ldmVudHMtcGF0aC5zdmcKLXN2Zy9jdXN0b20vcG9pbnRlci1ldmVudHMtdGV4dC5zdmcKLXN2
Zy9jdXN0b20vcG9seWxpbmUtaGl0dGVzdC5zdmcKLXN2Zy9jdXN0b20vcHJldmVudC1kZWZhdWx0
LnN2Zwotc3ZnL2N1c3RvbS9yZWxhdGl2ZS1zaXplZC1jb250ZW50LXdpdGgtcmVzb3VyY2VzLnho
dG1sCi1zdmcvY3VzdG9tL3JlcGFpbnQtb24tY29uc3RhbnQtc2l6ZS1jaGFuZ2Uuc3ZnCi1zdmcv
Y3VzdG9tL3JlcGFpbnQtc3Ryb2tlLXdpZHRoLWNoYW5nZXMuc3ZnCi1zdmcvY3VzdG9tL3Jlc291
cmNlLWludmFsaWRhdGUtb24tdGFyZ2V0LXVwZGF0ZS5zdmcKLXN2Zy9jdXN0b20vc2Nyb2xsLWhp
dC10ZXN0LnhodG1sCi1zdmcvY3VzdG9tL3N0cm9rZS13aWR0aC1jbGljay5zdmcKLXN2Zy9jdXN0
b20vdGV4dC1oaXQtdGVzdC5zdmcKLXN2Zy9jdXN0b20vdXNlLWNsaXBwZWQtaGl0LnN2Zwotc3Zn
L2N1c3RvbS91c2UtY3NzLWV2ZW50cy5zdmcKLXN2Zy9jdXN0b20vdXNlLWVsZW1lbnRJbnN0YW5j
ZS1ldmVudC10YXJnZXQuc3ZnCi1zdmcvY3VzdG9tL3VzZS1lbGVtZW50SW5zdGFuY2UtbWV0aG9k
cy5zdmcKLXN2Zy9jdXN0b20vdXNlLWV2ZW50LWhhbmRsZXItb24tcmVmZXJlbmNlZC1lbGVtZW50
LnN2Zwotc3ZnL2N1c3RvbS91c2UtZXZlbnQtaGFuZGxlci1vbi11c2UtZWxlbWVudC5zdmcKLXN2
Zy9jdXN0b20vdXNlLWV2ZW50cy1jcmFzaC5zdmcKLXN2Zy9jdXN0b20vdXNlLWluc3RhbmNlUm9v
dC1hcy1ldmVudC10YXJnZXQueGh0bWwKLXN2Zy9jdXN0b20vdXNlLWluc3RhbmNlUm9vdC1ldmVu
dC1idWJibGluZy54aHRtbAotc3ZnL2N1c3RvbS91c2UtaW5zdGFuY2VSb290LWV2ZW50LWxpc3Rl
bmVycy54aHRtbAotc3ZnL2N1c3RvbS91c2Utc2V0QXR0cmlidXRlLWNyYXNoLnN2Zwotc3ZnL2N1
c3RvbS92aWV3Qm94LWhpdC5zdmcKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQUVsZW1lbnQtZG9t
LWhyZWYtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0FFbGVtZW50LWRvbS10YXJn
ZXQtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0FFbGVtZW50LXN2Z2RvbS1ocmVm
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdBRWxlbWVudC1zdmdkb20tdGFyZ2V0
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDaXJjbGVFbGVtZW50LWRvbS1jeC1h
dHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2lyY2xlRWxlbWVudC1kb20tY3ktYXR0
ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVsZW1lbnQtZG9tLXItYXR0ci5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVsZW1lbnQtZG9tLXJlcXVpcmVkRmVh
dHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDaXJjbGVFbGVtZW50LXN2Z2RvbS1j
eC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHQ2lyY2xlRWxlbWVudC1zdmdkb20t
Y3ktcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVsZW1lbnQtc3ZnZG9t
LXItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVsZW1lbnQtc3ZnZG9t
LXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDbGlwUGF0aC1p
bmZsdWVuY2VzLWhpdFRlc3RpbmcuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdDbGlwUGF0
aEVsZW1lbnQtZG9tLWNsaXBQYXRoVW5pdHMtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR0NsaXBQYXRoRWxlbWVudC1zdmdkb20tY2xpcFBhdGhVbml0cy1wcm9wLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1kb20teC1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1kb20teS1hdHRyLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHQ3Vyc29yRWxlbWVudC1zdmdkb20teS1wcm9wLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtZG9tLWN4LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1kb20tY3ktYXR0ci5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtZG9tLXJ4LWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1kb20tcnktYXR0ci5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LXN2Z2RvbS1jeC1wcm9wLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtc3ZnZG9tLWN5LXByb3AuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdFbGxpcHNlRWxlbWVudC1zdmdkb20tcmVxdWlyZWRGZWF0dXJl
cy5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0VsbGlwc2VFbGVtZW50LXN2Z2RvbS1yeC1w
cm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRWxsaXBzZUVsZW1lbnQtc3ZnZG9tLXJ5
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUJsZW5kRWxlbWVudC1kb20taW4t
YXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQmxlbmRFbGVtZW50LWRvbS1pbjIt
YXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQmxlbmRFbGVtZW50LWRvbS1tb2Rl
LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUJsZW5kRWxlbWVudC1zdmdkb20t
aW4tcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQmxlbmRFbGVtZW50LXN2Z2Rv
bS1pbjItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQmxlbmRFbGVtZW50LXN2
Z2RvbS1tb2RlLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbG9yTWF0cml4
RWxlbWVudC1kb20taW4tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29sb3JN
YXRyaXhFbGVtZW50LWRvbS10eXBlLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RUNvbG9yTWF0cml4RWxlbWVudC1kb20tdmFsdWVzLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRUNvbG9yTWF0cml4RWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LXN2Z2RvbS10eXBlLXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbG9yTWF0cml4RWxlbWVudC1zdmdkb20tdmFs
dWVzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1lbnQt
ZG9tLWluLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbXBvc2l0ZUVsZW1l
bnQtZG9tLWluMi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVF
bGVtZW50LWRvbS1rMS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21wb3Np
dGVFbGVtZW50LWRvbS1rMi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb21w
b3NpdGVFbGVtZW50LWRvbS1rMy1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVD
b21wb3NpdGVFbGVtZW50LWRvbS1rNC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVDb21wb3NpdGVFbGVtZW50LWRvbS1vcGVyYXRvci1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVDb21wb3NpdGVFbGVtZW50LXN2Z2RvbS1pbjItcHJvcC5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1zdmdkb20tazEtcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1zdmdkb20tazIt
cHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVudC1zdmdk
b20tazMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRlRWxlbWVu
dC1zdmdkb20tazQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29tcG9zaXRl
RWxlbWVudC1zdmdkb20tb3BlcmF0b3ItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1iaWFzLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1kb20tZGl2aXNvci1hdHRyLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLWVkZ2VN
b2RlLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxl
bWVudC1kb20taW4tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVN
YXRyaXhFbGVtZW50LWRvbS1rZXJuZWxNYXRyaXgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LWRvbS1rZXJuZWxVbml0TGVuZ3RoLWF0dHIu
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1kb20t
b3JkZXItYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhF
bGVtZW50LWRvbS1wcmVzZXJ2ZUFscGhhLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1kb20tdGFyZ2V0WC1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtZG9tLXRhcmdldFktYXR0ci5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LXN2Z2Rv
bS1iaWFzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4
RWxlbWVudC1zdmdkb20tZGl2aXNvci1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLWVkZ2VNb2RlLXByb3AuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20taW4tcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LXN2Z2Rv
bS1rZXJuZWxNYXRyaXgtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9s
dmVNYXRyaXhFbGVtZW50LXN2Z2RvbS1rZXJuZWxVbml0TGVuZ3RoLXByb3AuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20tb3JkZXItcHJv
cC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LXN2
Z2RvbS1wcmVzZXJ2ZUFscGhhLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUNv
bnZvbHZlTWF0cml4RWxlbWVudC1zdmdkb20tdGFyZ2V0WC1wcm9wLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQtc3ZnZG9tLXRhcmdldFktcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC1kb20t
ZGlmZnVzZUNvbnN0YW50LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpZmZ1
c2VMaWdodGluZ0VsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtZG9tLWxpZ2h0aW5nLWNvbG9yLWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQtZG9tLXN1cmZh
Y2VTY2FsZS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaWZmdXNlTGlnaHRp
bmdFbGVtZW50LWxpZ2h0aW5nLWNvbG9yLWNzcy1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1kaWZmdXNlQ29uc3RhbnQtcHJv
cC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC1z
dmdkb20taW4tcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlmZnVzZUxpZ2h0
aW5nRWxlbWVudC1zdmdkb20tc3VyZmFjZVNjYWxlLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtZG9tLWluMi1hdHRyLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LWRvbS1z
Y2FsZS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXNwbGFjZW1lbnRNYXBF
bGVtZW50LWRvbS14Q2hhbm5lbFNlbGVjdG9yLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtZG9tLXlDaGFubmVsU2VsZWN0b3ItYXR0ci5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC1zdmdk
b20taW4tcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFw
RWxlbWVudC1zdmdkb20taW4yLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURp
c3BsYWNlbWVudE1hcEVsZW1lbnQtc3ZnZG9tLXNjYWxlLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQtc3ZnZG9tLXhDaGFubmVsU2VsZWN0
b3ItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxl
bWVudC1zdmdkb20teUNoYW5uZWxTZWxlY3Rvci1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LWRvbS1hemltdXRoLWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRURpc3RhbnRMaWdodEVsZW1lbnQtZG9tLWVsZXZhdGlvbi1hdHRy
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LXN2Z2Rv
bS1hemltdXRoLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURpc3RhbnRMaWdo
dEVsZW1lbnQtc3ZnZG9tLWVsZXZhdGlvbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVGbG9vZEVsZW1lbnQtZG9tLWZsb29kLWNvbG9yLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGRUZsb29kRWxlbWVudC1kb20tZmxvb2Qtb3BhY2l0eS1hdHRyLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVGbG9vZEVsZW1lbnQtc3ZnZG9tLWZsb29kLWNvbG9yLXBy
b3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUZsb29kRWxlbWVudC1zdmdkb20tZmxv
b2Qtb3BhY2l0eS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVHYXVzc2lhbkJs
dXJFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVHYXVz
c2lhbkJsdXJFbGVtZW50LWRvbS1zdGREZXZpYXRpb24tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR0ZFR2F1c3NpYW5CbHVyRWxlbWVudC1kb20tc3RkRGV2aWF0aW9uLWNhbGwuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQtc3ZnZG9tLWlu
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRUltYWdlRWxlbWVudC1kb20tcHJl
c2VydmVBc3BlY3RSYXRpby1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVJbWFn
ZUVsZW1lbnQtc3ZnZG9tLXByZXNlcnZlQXNwZWN0UmF0aW8tcHJvcC5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFTWVyZ2VOb2RlRWxlbWVudC1kb20taW4tYXR0ci5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZFTWVyZ2VOb2RlRWxlbWVudC1zdmdkb20taW4tcHJvcC5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFTW9ycGhvbG9neUVsZW1lbnQtZG9tLWluLWF0dHIuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU1vcnBob2xvZ3lFbGVtZW50LWRvbS1vcGVyYXRv
ci1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVNb3JwaG9sb2d5RWxlbWVudC1k
b20tcmFkaXVzLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRU1vcnBob2xvZ3lF
bGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVNb3Jw
aG9sb2d5RWxlbWVudC1zdmdkb20tb3BlcmF0b3ItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFTW9ycGhvbG9neUVsZW1lbnQtc3ZnZG9tLXJhZGl1cy1jYWxsLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LWRvbS1keC1hdHRyLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LWRvbS1keS1hdHRyLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LWRvbS1pbi1hdHRyLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LXN2Z2RvbS1keC1wcm9wLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LXN2Z2RvbS1keS1wcm9wLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVPZmZzZXRFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2ludExpZ2h0RWxlbWVudC1kb20teC1hdHRy
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2ludExpZ2h0RWxlbWVudC1kb20teS1h
dHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2ludExpZ2h0RWxlbWVudC1kb20t
ei1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2ludExpZ2h0RWxlbWVudC1z
dmdkb20teC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2ludExpZ2h0RWxl
bWVudC1zdmdkb20teS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVQb2ludExp
Z2h0RWxlbWVudC1zdmdkb20tei1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVT
cGVjdWxhckxpZ2h0aW5nRWxlbWVudC1kb20taW4tYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQtZG9tLXNwZWN1bGFyQ29uc3RhbnQtYXR0
ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQt
ZG9tLXNwZWN1bGFyRXhwb25lbnQtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
U3BlY3VsYXJMaWdodGluZ0VsZW1lbnQtZG9tLXN1cmFjZVNjYWxlLWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LXJlbW92ZS1saWdodFNv
dXJjZS5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1l
bnQtc3ZnZG9tLWluLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFy
TGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1zcGVjdWxhckNvbnN0YW50LXByb3AuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LXN2Z2RvbS1zcGVjdWxh
ckV4cG9uZW50LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwZWN1bGFyTGln
aHRpbmdFbGVtZW50LXN2Z2RvbS1zdXJhY2VTY2FsZS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS1saW1pdGluZ0NvbmVBbmdsZS1hdHRyLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS1wb2ludHNB
dFgtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1k
b20tcG9pbnRzQXRZLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdo
dEVsZW1lbnQtZG9tLXBvaW50c0F0Wi1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVTcG90TGlnaHRFbGVtZW50LWRvbS1zcGVjdWxhckV4cG9uZW50LWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtZG9tLXgtYXR0ci5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1kb20teS1hdHRyLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90TGlnaHRFbGVtZW50LWRvbS16LWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLWxpbWl0aW5n
Q29uZUFuZ2xlLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVs
ZW1lbnQtc3ZnZG9tLXBvaW50c0F0WC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
RkVTcG90TGlnaHRFbGVtZW50LXN2Z2RvbS1wb2ludHNBdFktcHJvcC5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0RWxlbWVudC1zdmdkb20tcG9pbnRzQXRaLXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLXNwZWN1
bGFyRXhwb25lbnQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFU3BvdExpZ2h0
RWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVTcG90
TGlnaHRFbGVtZW50LXN2Z2RvbS15LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RVNwb3RMaWdodEVsZW1lbnQtc3ZnZG9tLXotcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR0ZFVGlsZUVsZW1lbnQtZG9tLWluLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdGRVRpbGVFbGVtZW50LXN2Z2RvbS1pbi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHRkVUdXJidWxlbmNlRWxlbWVudC1kb20tYmFzZUZyZXF1ZW5jeS1hdHRyLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVudC1kb20tbnVtT2N0YXZlcy1hdHRy
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVudC1kb20tc2Vl
ZC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRkVUdXJidWxlbmNlRWxlbWVudC1k
b20tc3RpdGNoVGlsZXMtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVs
ZW5jZUVsZW1lbnQtZG9tLXR5cGUtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZF
VHVyYnVsZW5jZUVsZW1lbnQtc3ZnZG9tLWJhc2VGcmVxdWVuY3ktcHJvcC5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtc3ZnZG9tLW51bU9jdGF2ZXMtcHJv
cC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtc3ZnZG9t
LXNlZWQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1l
bnQtc3ZnZG9tLXN0aXRjaFRpbGVzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdG
RVR1cmJ1bGVuY2VFbGVtZW50LXN2Z2RvbS10eXBlLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdGaWx0ZXJFbGVtZW50LWRvbS1maWx0ZXJSZXMtYXR0ci5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtZG9tLWZpbHRlclVuaXRzLWF0dHIuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LWRvbS1oZWlnaHQtYXR0ci5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtZG9tLXByaW1pdGl2ZVVuaXRzLWF0
dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LWRvbS13aWR0aC1h
dHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1kb20teC1hdHRy
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1kb20teS1hdHRyLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1zdmdkb20tZmlsdGVyUmVz
LWNhbGwuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS1m
aWx0ZXJSZXNYLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50
LXN2Z2RvbS1maWx0ZXJSZXNZLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0
ZXJFbGVtZW50LXN2Z2RvbS1maWx0ZXJVbml0cy1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRmlsdGVyRWxlbWVudC1zdmdkb20taGVpZ2h0LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdGaWx0ZXJFbGVtZW50LXN2Z2RvbS1wcmltaXRpdmVVbml0cy1wcm9wLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyRWxlbWVudC1zdmdkb20td2lkdGgtcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtc3ZnZG9tLXgtcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlckVsZW1lbnQtc3ZnZG9tLXktcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmli
dXRlcy1kb20taGVpZ2h0LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJQ
cmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtZG9tLXJlc3VsdC1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLWRvbS13aWR0
aC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRh
cmRBdHRyaWJ1dGVzLWRvbS14LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0
ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtZG9tLXktYXR0ci5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy1zdmdkb20taGVp
Z2h0LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFu
ZGFyZEF0dHJpYnV0ZXMtc3ZnZG9tLXJlc3VsdC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLXN2Z2RvbS13aWR0aC1wcm9w
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRy
aWJ1dGVzLXN2Z2RvbS14LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGaWx0ZXJQ
cmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMtc3ZnZG9tLXktcHJvcC5odG1sCi1zdmcvZHluYW1p
Yy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LWRvbS1oZWlnaHQtYXR0ci5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LWRvbS1yZXF1aXJlZEZl
YXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQt
ZG9tLXdpZHRoLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGb3JlaWduT2JqZWN0
RWxlbWVudC1kb20teC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9i
amVjdEVsZW1lbnQtZG9tLXktYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZvcmVp
Z25PYmplY3RFbGVtZW50LXN2Z2RvbS1oZWlnaHQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQtc3ZnZG9tLXdpZHRo
LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC1z
dmdkb20teC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHRm9yZWlnbk9iamVjdEVs
ZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0dFbGVtZW50
LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHR0VsZW1l
bnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJ
bWFnZUVsZW1lbnQtZG9tLWhlaWdodC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
SW1hZ2VFbGVtZW50LWRvbS1wcmVzZXJ2ZUFzcGVjdFJhdGlvLWF0dHIuaHRtbAotc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9tLXdpZHRoLWF0dHIuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQtZG9tLXgtYXR0ci5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1kb20teS1hdHRyLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2Z2RvbS1oZWlnaHQtcHJvcC5odG1sCi1zdmcvZHlu
YW1pYy11cGRhdGVzL1NWR0ltYWdlRWxlbWVudC1zdmdkb20tcHJlc2VydmVBc3BlY3RSYXRpby1w
cm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2Z2RvbS1yZXF1
aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50LXN2
Z2RvbS13aWR0aC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHSW1hZ2VFbGVtZW50
LXN2Z2RvbS14LXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdJbWFnZUVsZW1lbnQt
c3ZnZG9tLXktcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVFbGVtZW50LWRv
bS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZUVsZW1l
bnQtZG9tLXgxLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1k
b20teDItYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVFbGVtZW50LWRvbS15
MS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZUVsZW1lbnQtZG9tLXkyLWF0
dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1zdmdkb20tcmVxdWly
ZWRGZWF0dXJlcy5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVFbGVtZW50LXN2Z2Rv
bS14MS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZUVsZW1lbnQtc3ZnZG9t
LXgyLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lRWxlbWVudC1zdmdkb20t
eTEtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVFbGVtZW50LXN2Z2RvbS15
Mi1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50
LWRvbS1ncmFkaWVudFRyYW5zZm9ybS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZH
TGluZWFyR3JhZGllbnRFbGVtZW50LWRvbS1ncmFkaWVudFVuaXRzLWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtZG9tLXgxLWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtZG9tLXgyLWF0dHIu
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtZG9tLXkx
LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQt
ZG9tLXkyLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdMaW5lYXJHcmFkaWVudEVs
ZW1lbnQtc3ZnZG9tLWdyYWRpZW50VHJhbnNmb3JtLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBk
YXRlcy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQtc3ZnZG9tLWdyYWRpZW50VW5pdHMtcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC1zdmdkb20t
eDEtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRpZW50RWxlbWVu
dC1zdmdkb20teDItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xpbmVhckdyYWRp
ZW50RWxlbWVudC1zdmdkb20teTEtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR0xp
bmVhckdyYWRpZW50RWxlbWVudC1zdmdkb20teTItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR01hcmtlckVsZW1lbnQtZG9tLW1hcmtlckhlaWdodC1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1kb20tbWFya2VyVW5pdHMtYXR0ci5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtZG9tLW1hcmtlcldpZHRoLWF0dHIu
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXJrZXJFbGVtZW50LWRvbS1vcmllbnQtYXR0
ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtZG9tLXJlZlgtYXR0
ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtZG9tLXJlZlktYXR0
ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtlckVsZW1lbnQtc3ZnZG9tLW1hcmtl
ckhlaWdodC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1z
dmdkb20tbWFya2VyVW5pdHMtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hcmtl
ckVsZW1lbnQtc3ZnZG9tLW1hcmtlcldpZHRoLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdNYXJrZXJFbGVtZW50LXN2Z2RvbS1vcmllbnRBbmdsZS1wcm9wLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20tb3JpZW50VHlwZS1wcm9wLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20tcmVmWC1wcm9wLmh0
bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20tcmVmWS1wcm9w
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVudC1zdmdkb20tc2V0T3Jp
ZW50VG9BbmdsZS1jYWxsLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHTWFya2VyRWxlbWVu
dC1zdmdkb20tc2V0T3JpZW50VG9BdXRvLWNhbGwuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdNYXNrRWxlbWVudC1kb20taGVpZ2h0LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9T
VkdNYXNrRWxlbWVudC1kb20tbWFza0NvbnRlbnRVbml0cy1hdHRyLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtZG9tLW1hc2tVbml0cy1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHTWFza0VsZW1lbnQtZG9tLXdpZHRoLWF0dHIuaHRtbAotc3ZnL2R5bmFt
aWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1kb20teC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHTWFza0VsZW1lbnQtZG9tLXktYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVz
L1NWR01hc2tFbGVtZW50LXN2Z2RvbS1oZWlnaHQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRh
dGVzL1NWR01hc2tFbGVtZW50LXN2Z2RvbS1tYXNrQ29udGVudFVuaXRzLXByb3AuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1zdmdkb20tbWFza1VuaXRzLXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1zdmdkb20td2lkdGgtcHJvcC5o
dG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR01hc2tFbGVtZW50LXN2Z2RvbS14LXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdNYXNrRWxlbWVudC1zdmdkb20teS1wcm9wLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0aEVsZW1lbnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMu
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXRoRWxlbWVudC1zdmdkb20tcmVxdWlyZWRG
ZWF0dXJlcy5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50LWRvbS1o
ZWlnaHQtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50LWRv
bS1wYXR0ZXJuQ29udGVudFVuaXRzLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQ
YXR0ZXJuRWxlbWVudC1kb20tcGF0dGVyblRyYW5zZm9ybS1hdHRyLmh0bWwKLXN2Zy9keW5hbWlj
LXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtZG9tLXBhdHRlcm5Vbml0cy1hdHRyLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtZG9tLXdpZHRoLWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1kb20teC1hdHRyLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtZG9tLXktYXR0ci5odG1sCi1zdmcv
ZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50LXN2Z2RvbS1oZWlnaHQtcHJvcC5odG1s
Ci1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1BhdHRlcm5FbGVtZW50LXN2Z2RvbS1wYXR0ZXJuQ29u
dGVudFVuaXRzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVu
dC1zdmdkb20tcGF0dGVyblRyYW5zZm9ybS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHUGF0dGVybkVsZW1lbnQtc3ZnZG9tLXBhdHRlcm5Vbml0cy1wcm9wLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdQYXR0ZXJuRWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKLXN2
Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUGF0dGVybkVsZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCi1z
dmcvZHluYW1pYy11cGRhdGVzL1NWR1BvbHlnb25FbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVz
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUG9seWdvbkVsZW1lbnQtc3ZnZG9tLXJlcXVp
cmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQb2x5bGluZUVsZW1lbnQt
ZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdQb2x5bGlu
ZUVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRl
cy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9tLWN4LWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMt
dXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9tLWN5LWF0dHIuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9tLWZ4LWF0dHIuaHRtbAot
c3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9tLWZ5LWF0dHIu
aHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQtZG9tLWdy
YWRpZW50VHJhbnNmb3JtLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxH
cmFkaWVudEVsZW1lbnQtZG9tLWdyYWRpZW50VW5pdHMtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11
cGRhdGVzL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC1kb20tci1hdHRyLmh0bWwKLXN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1jeC1wcm9wLmh0bWwK
LXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1jeS1w
cm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LXN2
Z2RvbS1meC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRF
bGVtZW50LXN2Z2RvbS1meS1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFs
R3JhZGllbnRFbGVtZW50LXN2Z2RvbS1ncmFkaWVudFRyYW5zZm9ybS1wcm9wLmh0bWwKLXN2Zy9k
eW5hbWljLXVwZGF0ZXMvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LXN2Z2RvbS1ncmFkaWVudFVu
aXRzLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSYWRpYWxHcmFkaWVudEVsZW1l
bnQtc3ZnZG9tLXItcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50
LWRvbS1oZWlnaHQtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50
LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmVjdEVs
ZW1lbnQtZG9tLXdpZHRoLWF0dHIuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSZWN0RWxl
bWVudC1kb20teC1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmVjdEVsZW1lbnQt
ZG9tLXktYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LXN2Z2Rv
bS1oZWlnaHQtcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1JlY3RFbGVtZW50LXN2
Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmVjdEVs
ZW1lbnQtc3ZnZG9tLXdpZHRoLXByb3AuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdSZWN0
RWxlbWVudC1zdmdkb20teC1wcm9wLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHUmVjdEVs
ZW1lbnQtc3ZnZG9tLXktcHJvcC5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NWR1NWR0VsZW1l
bnQtZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdTVkdF
bGVtZW50LXN2Z2RvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMv
U1ZHVFJlZkVsZW1lbnQtZG9tLWhyZWYtYXR0ci5odG1sCi1zdmcvZHluYW1pYy11cGRhdGVzL1NW
R1RleHRFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVzLmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0
ZXMvU1ZHVGV4dEVsZW1lbnQtZG9tLXRyYW5zZm9ybS1hdHRyLmh0bWwKLXN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHVGV4dEVsZW1lbnQtc3ZnZG9tLXJlcXVpcmVkRmVhdHVyZXMuaHRtbAotc3ZnL2R5
bmFtaWMtdXBkYXRlcy9TVkdUZXh0RWxlbWVudC1zdmdkb20tcm90YXRlLXByb3AuaHRtbAotc3Zn
L2R5bmFtaWMtdXBkYXRlcy9TVkdUZXh0RWxlbWVudC1zdmdkb20tdHJhbnNmb3JtLXByb3AuaHRt
bAotc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdVc2VFbGVtZW50LWRvbS1yZXF1aXJlZEZlYXR1cmVz
Lmh0bWwKLXN2Zy9keW5hbWljLXVwZGF0ZXMvU1ZHVXNlRWxlbWVudC1zdmdkb20tcmVxdWlyZWRG
ZWF0dXJlcy5odG1sCi1zdmcvZmlsdGVycy9maWx0ZXItd2lkdGgtdXBkYXRlLnN2Zwotc3ZnL3Rl
eHQvZm9yZWlnbk9iamVjdC1yZXBhaW50LnhtbAogc3ZnL3RleHQvc2VsZWN0LXRleHQtc3ZnZm9u
dC5odG1sCiBzdmcvdGV4dC9zZWxlY3QtdGV4dExlbmd0aC1zcGFjaW5nLXNxdWVlemUtMS5zdmcK
IHN2Zy90ZXh0L3NlbGVjdC10ZXh0TGVuZ3RoLXNwYWNpbmctc3F1ZWV6ZS0yLnN2ZwpAQCAtOTE4
LDkgKzE4MSw2IEBAIHN2Zy90ZXh0L3NlbGVjdC14LWxpc3Qtd2l0aC10c3BhbnMtMi5zdmcKIHN2
Zy90ZXh0L3NlbGVjdC14LWxpc3Qtd2l0aC10c3BhbnMtMy5zdmcKIHN2Zy90ZXh0L3NlbGVjdC14
LWxpc3Qtd2l0aC10c3BhbnMtNC5zdmcKIHN2Zy90ZXh0L3NlbGVjdGlvbi1kb3VibGVjbGljay5z
dmcKLXN2Zy90ZXh0L3NlbGVjdGlvbi10cmlwbGVjbGljay5zdmcKLXN2Zy96b29tL3BhZ2Uvem9v
bS1jb29yZHMtdmlld2F0dHItMDEtYi5zdmcKLXN2Zy96b29tL3RleHQvem9vbS1jb29yZHMtdmll
d2F0dHItMDEtYi5zdmcKIAogIyBXZWJLaXQyIG5lZWRzIGxheW91dFRlc3RDb250cm9sbGVyLm92
ZXJyaWRlUHJlZmVyZW5jZQogIyA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQyMTk3Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>